版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、計算機組成原理任課教師:石磊鄭州大學(xué)信息工程學(xué)院計算機系Email: Tel:一章第一章 計算機系統(tǒng)概論計算機系統(tǒng)概論第二章第二章 運算方法和運算器運算方法和運算器第三章第三章 存儲系統(tǒng)存儲系統(tǒng)第四章第四章 指令系統(tǒng)指令系統(tǒng) 第五章第五章 中央處理器中央處理器 第六章第六章 總線系統(tǒng)總線系統(tǒng) 第七章第七章 外圍設(shè)備外圍設(shè)備 第八章第八章 輸入輸出系統(tǒng)輸入輸出系統(tǒng)第九章第九章 并行組織并行組織目錄n教材n白中英,計算機組成原理白中英,計算機組成原理網(wǎng)絡(luò)版,科學(xué)出版網(wǎng)絡(luò)版,科學(xué)出版社,社,20022002n參考書n石磊,計算機組成原理石磊,計算機組成原理第第2 2版版,
2、, 清華大學(xué)出版清華大學(xué)出版社,社,20062006n錢曉捷,微型計算機原理及應(yīng)用錢曉捷,微型計算機原理及應(yīng)用, , 清華大學(xué)出清華大學(xué)出版社,版社,20062006n王愛英王愛英, ,計算機組成與結(jié)構(gòu)計算機組成與結(jié)構(gòu)第第3 3版版, , 清華大學(xué)清華大學(xué)出版社,出版社,20012001n白中英白中英 鄺堅,計算機組織與結(jié)構(gòu)鄺堅,計算機組織與結(jié)構(gòu)網(wǎng)絡(luò)版,科網(wǎng)絡(luò)版,科學(xué)出版社,學(xué)出版社,20032003nI/OI/O接口概述接口概述n8.1 CPU8.1 CPU對外圍設(shè)備的管理方式對外圍設(shè)備的管理方式n程序查詢方式程序查詢方式n8.2 8.2 程序中斷方式程序中斷方式n8.3 DMA8.3 DM
3、A方式方式n8.4 8.4 通道方式通道方式第8章 輸入輸出系統(tǒng)I/O系統(tǒng)包括系統(tǒng)包括I/O接口接口硬件硬件電路電路和和I/O管理軟件管理軟件計算機組成原理計算機組成原理I/O接口(電路)6.2.2l計算機的外圍計算機的外圍( (外部外部) )設(shè)備設(shè)備多種多樣多種多樣l工作原理、驅(qū)動方式、信息格式、以及工作速工作原理、驅(qū)動方式、信息格式、以及工作速度方面彼此差別很大度方面彼此差別很大l外設(shè)不能與外設(shè)不能與CPUCPU直接相連,必須經(jīng)過中間電路直接相連,必須經(jīng)過中間電路(I/OI/O接口電路)再與系統(tǒng)相連接口電路)再與系統(tǒng)相連lI/O接口電路是位于系統(tǒng)與外設(shè)間、用來協(xié)助接口電路是位于系統(tǒng)與外設(shè)間
4、、用來協(xié)助完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路多種多樣的外設(shè)n工作原理不同工作原理不同機械、電子、機電、電磁機械、電子、機電、電磁n傳送信息類型多樣傳送信息類型多樣數(shù)字量、模擬量、開關(guān)量數(shù)字量、模擬量、開關(guān)量n傳送速度差別極大傳送速度差別極大n傳送方式不盡相同傳送方式不盡相同串行、并行串行、并行n編碼方式不同編碼方式不同二進制、二進制、BCD碼、碼、ASCII碼碼返回計算機組成原理計算機組成原理I/O接口的典型結(jié)構(gòu)l內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu) 數(shù)據(jù)寄存器數(shù)據(jù)寄存器:保存微處理器與外設(shè)之間交換的數(shù):保存微處理器與外設(shè)之間交換的數(shù)據(jù)據(jù)狀態(tài)寄存器狀態(tài)寄存器:保存外設(shè)當(dāng)前的工作狀態(tài)信
5、息:保存外設(shè)當(dāng)前的工作狀態(tài)信息控制寄存器控制寄存器:保存微處理器控制接口電路和外設(shè):保存微處理器控制接口電路和外設(shè)操作的有關(guān)信息操作的有關(guān)信息l外部特性外部特性面向微處理器一側(cè)的信號:與微處理器總線類似面向微處理器一側(cè)的信號:與微處理器總線類似面向外設(shè)一側(cè)的信號:與外設(shè)有關(guān)面向外設(shè)一側(cè)的信號:與外設(shè)有關(guān)計算機組成原理計算機組成原理I/O接口的軟件編程l接口電路具有可編程性(接口電路具有可編程性(ProgrammableProgrammable)根據(jù)具體要求,通過編程選定根據(jù)具體要求,通過編程選定I/OI/O接口電路的多種接口電路的多種功能或工作方式之一功能或工作方式之一l初始化程序初始化程序選
6、擇選擇I/OI/O接口工作方式、設(shè)置原始工作狀態(tài)等接口工作方式、設(shè)置原始工作狀態(tài)等l驅(qū)動程序驅(qū)動程序操縱操縱I/OI/O接口完成具體工作接口完成具體工作計算機組成原理計算機組成原理I/O端口的編址lI/OI/O端口(端口(PortPort)泛指)泛指I/OI/O地址,對應(yīng)地址,對應(yīng)I/OI/O接口寄存器接口寄存器l一個接口電路可以具有多個一個接口電路可以具有多個I/OI/O端口,每個端口用來端口,每個端口用來保存和交換不同的信息保存和交換不同的信息l數(shù)據(jù)寄存器、狀態(tài)寄存器和控制寄存器占有的數(shù)據(jù)寄存器、狀態(tài)寄存器和控制寄存器占有的I/OI/O地地址常依次被稱為數(shù)據(jù)端口、狀態(tài)端口和控制端口,用址常
7、依次被稱為數(shù)據(jù)端口、狀態(tài)端口和控制端口,用于保存數(shù)據(jù)、狀態(tài)和控制信息于保存數(shù)據(jù)、狀態(tài)和控制信息l輸入、輸出端口可以是同一個輸入、輸出端口可以是同一個I/OI/O地址地址l接口電路占用的接口電路占用的I/OI/O端口有兩類編排形式端口有兩類編排形式I/OI/O端口單獨編址端口單獨編址I/OI/O端口與存儲器統(tǒng)一編址端口與存儲器統(tǒng)一編址計算機組成原理計算機組成原理I/O端口與存儲器獨立編址l將將I/OI/O端口單獨編排地址,獨立于存儲器地址端口單獨編排地址,獨立于存儲器地址l優(yōu)點:優(yōu)點:I/OI/O端口的地址空間獨立端口的地址空間獨立控制和地址譯碼電路相對簡單控制和地址譯碼電路相對簡單專門的專門的
8、I/OI/O指令使程序清晰易讀指令使程序清晰易讀l缺點:缺點:I/OI/O指令沒有存儲器指令豐富指令沒有存儲器指令豐富主存主存空間空間I/O空間空間FFFFF0FFFF80 x86采用采用I/O端口獨立編址端口獨立編址計算機組成原理計算機組成原理I/O端口與存儲器統(tǒng)一編址l將將I/OI/O端口與存儲器地址統(tǒng)一編排,共享一個端口與存儲器地址統(tǒng)一編排,共享一個地址空間地址空間l優(yōu)點:優(yōu)點:不需要專門的不需要專門的I/O指令指令I(lǐng)/O數(shù)據(jù)存取靈活數(shù)據(jù)存取靈活l缺點:缺點:占去部分存儲器空間占去部分存儲器空間程序不易閱讀(在匯編語言級程序不易閱讀(在匯編語言級不容易區(qū)別訪問存儲器和訪問外設(shè))不容易區(qū)別
9、訪問存儲器和訪問外設(shè))主存主存部分部分I/O部分部分存儲器空間存儲器空間00000FFFFF計算機組成原理計算機組成原理8.1 CPU對外圍設(shè)備的管理方式I/O控制方式控制方式主要由程序?qū)崿F(xiàn)主要由程序?qū)崿F(xiàn)主要由附加硬件實現(xiàn)主要由附加硬件實現(xiàn)計算機組成原理計算機組成原理CPU和外設(shè)之間信息交換的方式l程序控制下的數(shù)據(jù)傳送程序控制下的數(shù)據(jù)傳送通過通過CPU執(zhí)行程序中的執(zhí)行程序中的I/O指令來完成傳送指令來完成傳送程序查詢方式程序查詢方式程序中斷方式程序中斷方式l直接存儲器存取直接存儲器存取DMA方式方式外設(shè)外設(shè)經(jīng)經(jīng)DMA控制器向控制器向CPU申請總線,申請總線,由由DMA控制控制器利用系統(tǒng)總線完成
10、外設(shè)和存儲器間的數(shù)據(jù)傳送器利用系統(tǒng)總線完成外設(shè)和存儲器間的數(shù)據(jù)傳送l通道方式通道方式通道通道(I/O處理處理器器)管理外設(shè),完成傳送和數(shù)據(jù)處理管理外設(shè),完成傳送和數(shù)據(jù)處理l外圍外圍處理機處理機方式方式通道方式的進一步發(fā)展,基本獨立于主機工作通道方式的進一步發(fā)展,基本獨立于主機工作計算機組成原理計算機組成原理程序查詢方式lCPU需要先了解(需要先了解(查詢查詢)外設(shè)的工作狀態(tài),然)外設(shè)的工作狀態(tài),然后在外設(shè)可以交換信息的情況下(后在外設(shè)可以交換信息的情況下(就緒就緒)實現(xiàn))實現(xiàn)數(shù)據(jù)輸入或輸出數(shù)據(jù)輸入或輸出l對多個外設(shè)的情況,對多個外設(shè)的情況,按順序依次查詢(輪詢)按順序依次查詢(輪詢)l有有查詢
11、查詢和和傳送傳送兩個環(huán)節(jié)兩個環(huán)節(jié)l實際中常引入超時判斷實際中常引入超時判斷l(xiāng)查詢需大量時間,效率較低查詢需大量時間,效率較低計算機組成原理計算機組成原理查詢輸入接口l讀取狀態(tài)端口查詢外設(shè)狀態(tài),若已就緒,讀取讀取狀態(tài)端口查詢外設(shè)狀態(tài),若已就緒,讀取數(shù)據(jù)端口得到外設(shè)提供的數(shù)據(jù)數(shù)據(jù)端口得到外設(shè)提供的數(shù)據(jù)計算機組成原理計算機組成原理查詢輸出接口l讀取狀態(tài)端口查詢外設(shè)狀態(tài),若已就緒,將數(shù)讀取狀態(tài)端口查詢外設(shè)狀態(tài),若已就緒,將數(shù)據(jù)寫入數(shù)據(jù)端口輸出給外設(shè)據(jù)寫入數(shù)據(jù)端口輸出給外設(shè)計算機組成原理計算機組成原理8.2 程序中斷方式l處理器在執(zhí)行程序過程中,被內(nèi)部或外部的事件所打處理器在執(zhí)行程序過程中,被內(nèi)部或外部
12、的事件所打斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序;服務(wù)斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序;服務(wù)結(jié)束后,又返回原來的斷點,繼續(xù)執(zhí)行原來的程序結(jié)束后,又返回原來的斷點,繼續(xù)執(zhí)行原來的程序l中斷源:中斷源:引起中斷的事件或原因引起中斷的事件或原因l例如:例如:外設(shè)的數(shù)據(jù)傳送請求外設(shè)的數(shù)據(jù)傳送請求系統(tǒng)定時請求系統(tǒng)定時請求電源掉電等故障電源掉電等故障運算出錯等錯誤運算出錯等錯誤程序異常或調(diào)試請求程序異?;蛘{(diào)試請求計算機組成原理計算機組成原理中斷的基本概念 (1/3)1 1、概念:當(dāng)計算機執(zhí)行正常程序時,系統(tǒng)中出、概念:當(dāng)計算機執(zhí)行正常程序時,系統(tǒng)中出現(xiàn)某些異常情況或特殊請求,這些情況和請求現(xiàn)某些
13、異常情況或特殊請求,這些情況和請求可能來自計算機內(nèi)部,也可能來自計算機外部;可能來自計算機內(nèi)部,也可能來自計算機外部;一旦有上述事件發(fā)生,計算機執(zhí)行正常程序的一旦有上述事件發(fā)生,計算機執(zhí)行正常程序的狀態(tài)被中斷,就是說,狀態(tài)被中斷,就是說,CPUCPU要暫停它正在執(zhí)行要暫停它正在執(zhí)行的程序,而轉(zhuǎn)去處理所發(fā)生的事件(通常就是的程序,而轉(zhuǎn)去處理所發(fā)生的事件(通常就是執(zhí)行一段特殊程序,被稱為中斷服務(wù)程序);執(zhí)行一段特殊程序,被稱為中斷服務(wù)程序);CPUCPU處理完畢后,自動返回到原來被中斷了的處理完畢后,自動返回到原來被中斷了的程序繼續(xù)運行。程序繼續(xù)運行。計算機組成原理計算機組成原理中斷的基本概念 (
14、2/3)2 2、與子程序調(diào)用的比較、與子程序調(diào)用的比較 (1 1)相同點:正常程序:主程序)相同點:正常程序:主程序 中斷服務(wù)程序:子程序中斷服務(wù)程序:子程序 (2 2)區(qū)別:)區(qū)別: (A A)子程序的執(zhí)行是程序員事先安排好的;子程序的執(zhí)行是程序員事先安排好的; 中斷服務(wù)程序的執(zhí)行則是由隨機的中斷事件引起的,比如電中斷服務(wù)程序的執(zhí)行則是由隨機的中斷事件引起的,比如電源掉電、請求源掉電、請求I/OI/O數(shù)據(jù)傳送、現(xiàn)場報警等。數(shù)據(jù)傳送、現(xiàn)場報警等。 (B B)子程序的執(zhí)行往往與主程序有關(guān);子程序的執(zhí)行往往與主程序有關(guān); 中斷服務(wù)程序可能與被中斷的程序毫無關(guān)系。中斷服務(wù)程序可能與被中斷的程序毫無關(guān)
15、系。 (C C)有可能出現(xiàn)多個中斷事件同時請求的情況,此時,有可能出現(xiàn)多個中斷事件同時請求的情況,此時,主機就需要進行判優(yōu),進而決定為哪一個請求服務(wù)。主機就需要進行判優(yōu),進而決定為哪一個請求服務(wù)。子程序不存在此種情況。子程序不存在此種情況。計算機組成原理計算機組成原理中斷的基本概念 (3/3)3 3、中斷的作用、中斷的作用 (1) (1) 主機與外部設(shè)備并行工作主機與外部設(shè)備并行工作 (2) (2) 實現(xiàn)實時處理實現(xiàn)實時處理 (3) (3) 硬件故障處理硬件故障處理 (4) (4) 實現(xiàn)多道程序和分時操作實現(xiàn)多道程序和分時操作計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (1/11)一、中
16、斷源一、中斷源 (1 1)概念:能夠引起)概念:能夠引起CPUCPU中斷的原因就是中斷源。中斷源是指形成這個原中斷的原因就是中斷源。中斷源是指形成這個原因的設(shè)備、部件或條件。因的設(shè)備、部件或條件。 (2 2)種類:)種類: 輸入輸出設(shè)備輸入輸出設(shè)備。系統(tǒng)中的外部設(shè)備都可以設(shè)計成為以中斷方式與主機。系統(tǒng)中的外部設(shè)備都可以設(shè)計成為以中斷方式與主機進行數(shù)據(jù)的交換,從而作為系統(tǒng)的中斷源。進行數(shù)據(jù)的交換,從而作為系統(tǒng)的中斷源。 故障與錯誤。系統(tǒng)運行中會出現(xiàn)諸如電源掉電、運算出錯、非法指令故障與錯誤。系統(tǒng)運行中會出現(xiàn)諸如電源掉電、運算出錯、非法指令等問題,它們也常采用中斷方式請求等問題,它們也常采用中斷方
17、式請求CPUCPU立即處理。立即處理。 實時時鐘實時時鐘。系統(tǒng)中的時鐘定時電路是必不可少的,若定時時間到,時。系統(tǒng)中的時鐘定時電路是必不可少的,若定時時間到,時鐘電路就可以通過中斷告知主機。鐘電路就可以通過中斷告知主機。 程序調(diào)試和軟件中斷程序調(diào)試和軟件中斷。程序調(diào)試中常常采用設(shè)置中斷斷點的方法來觀。程序調(diào)試中常常采用設(shè)置中斷斷點的方法來觀察程序運行是否正確;有些機器的指令系統(tǒng)設(shè)計有軟件中斷指令,利用中察程序運行是否正確;有些機器的指令系統(tǒng)設(shè)計有軟件中斷指令,利用中斷機制實現(xiàn)操作系統(tǒng)的功能調(diào)用以及調(diào)試程序。需要說明一點,這類中斷斷機制實現(xiàn)操作系統(tǒng)的功能調(diào)用以及調(diào)試程序。需要說明一點,這類中斷是
18、由程序員事先安排好的,和調(diào)用子程序的作用一樣,與上述由外部硬件是由程序員事先安排好的,和調(diào)用子程序的作用一樣,與上述由外部硬件產(chǎn)生的中斷有些不同。產(chǎn)生的中斷有些不同。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (2/11)二、中斷的分類:二、中斷的分類: (1 1)按中斷源是在主機之內(nèi)還是外分:)按中斷源是在主機之內(nèi)還是外分: (A A)內(nèi)部中斷內(nèi)部中斷 內(nèi)部中斷是指中斷源來自主機內(nèi)部,如運算出錯、程內(nèi)部中斷是指中斷源來自主機內(nèi)部,如運算出錯、程序調(diào)試和軟件中斷等;序調(diào)試和軟件中斷等; (B B)外部中斷外部中斷 外部中斷來自主機之外,如外部設(shè)備、實時時鐘和硬外部中斷來自主機之外,如外部
19、設(shè)備、實時時鐘和硬件故障產(chǎn)生的中斷等。件故障產(chǎn)生的中斷等。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (3/11)二、中斷的分類:二、中斷的分類:(2 2) 按中斷對按中斷對CPUCPU的打擾情況分:的打擾情況分: (A A)程序中斷程序中斷 CPUCPU要用專門的中斷服務(wù)程序為中斷源服務(wù),并且要用專門的中斷服務(wù)程序為中斷源服務(wù),并且在服務(wù)前要進行斷點和現(xiàn)場的保護,在服務(wù)后要進行現(xiàn)場在服務(wù)前要進行斷點和現(xiàn)場的保護,在服務(wù)后要進行現(xiàn)場和斷點恢復(fù)的中斷。這種中斷就是一般所說的中斷,是大和斷點恢復(fù)的中斷。這種中斷就是一般所說的中斷,是大多數(shù)中低速外設(shè)以及內(nèi)中斷常用的中斷方式。多數(shù)中低速外設(shè)以及
20、內(nèi)中斷常用的中斷方式。 (B B)簡單中斷簡單中斷 當(dāng)這種中斷發(fā)生時,相應(yīng)的請求源只是請求當(dāng)這種中斷發(fā)生時,相應(yīng)的請求源只是請求CPUCPU的的正常程序暫停一下,通常稱為總線請求或正常程序暫停一下,通常稱為總線請求或DMADMA請求。暫停請求。暫停的目的是把主存和接口的數(shù)據(jù)通路讓給請求源使用(即總的目的是把主存和接口的數(shù)據(jù)通路讓給請求源使用(即總線使用權(quán)),使得能在主存和請求源之間直接進行一次數(shù)線使用權(quán)),使得能在主存和請求源之間直接進行一次數(shù)據(jù)傳送,當(dāng)這次傳送結(jié)束后,請求源立即把這個使用權(quán)歸據(jù)傳送,當(dāng)這次傳送結(jié)束后,請求源立即把這個使用權(quán)歸還給還給CPUCPU。接著運行剛才暫停的程序,這個暫
21、停時間通常接著運行剛才暫停的程序,這個暫停時間通常一次一個存取周期。一次一個存取周期。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (4/11)二、中斷的分類:二、中斷的分類:(3 3) 按尋找中斷服務(wù)程序入口的實現(xiàn)方法區(qū)分:按尋找中斷服務(wù)程序入口的實現(xiàn)方法區(qū)分: (A A)向量中斷(矢量中斷):中斷服務(wù)程序入口由中斷向量中斷(矢量中斷):中斷服務(wù)程序入口由中斷源自己提供。源自己提供。 (B B) 非向量中斷:入口由非向量中斷:入口由CPUCPU查詢得到。查詢得到。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (5/11)三、中斷工作過程三、中斷工作過程:1、中斷請求(1 1)中斷請求
22、是中斷源向)中斷請求是中斷源向CPUCPU發(fā)出中斷請求信號,要求發(fā)出中斷請求信號,要求CPUCPU為它服務(wù)的過為它服務(wù)的過程。程。(2 2)何時?)何時? 基本條件兩個:基本條件兩個: (A A) 外設(shè)本身工作已經(jīng)完成外設(shè)本身工作已經(jīng)完成 (B B) 外設(shè)被允許中斷外設(shè)被允許中斷(3 3)硬件支持:)硬件支持: 中斷請求電路,基本組成是兩個觸發(fā)器:中斷請求電路,基本組成是兩個觸發(fā)器: (A A) 一個反映外設(shè)工作是否完成,其形成與程序查詢的一個反映外設(shè)工作是否完成,其形成與程序查詢的準(zhǔn)備就緒狀態(tài)標(biāo)志一樣;準(zhǔn)備就緒狀態(tài)標(biāo)志一樣; (B B) 另一個反映外設(shè)是否允許采用中斷方式,即中斷另一個反映外
23、設(shè)是否允許采用中斷方式,即中斷屏蔽功能。只有當(dāng)外設(shè)工作完成而且被允許中斷時,相應(yīng)中斷源才可屏蔽功能。只有當(dāng)外設(shè)工作完成而且被允許中斷時,相應(yīng)中斷源才可以通過這個請求電路形成中斷請求信號。以通過這個請求電路形成中斷請求信號。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (6/11)三、中斷工作過程:三、中斷工作過程:2、中斷判優(yōu) (1 1) 中斷優(yōu)先級有兩個方面的含義:中斷優(yōu)先級有兩個方面的含義: (A A) 一是中斷請求與一是中斷請求與CPUCPU現(xiàn)行程序優(yōu)先級的問題;現(xiàn)行程序優(yōu)先級的問題; (B B) 另一含義是各中斷源之間,誰更迫切的問題。另一含義是各中斷源之間,誰更迫切的問題。 (2
24、 2) 方法:方法: (A A) 軟件軟件 (B B) 硬件:為了得到較高的效率,一般采用硬件判優(yōu)方法。判硬件:為了得到較高的效率,一般采用硬件判優(yōu)方法。判優(yōu)邏輯隨著判優(yōu)方案的不同可有不同的結(jié)構(gòu),其組成部分既可能在設(shè)優(yōu)邏輯隨著判優(yōu)方案的不同可有不同的結(jié)構(gòu),其組成部分既可能在設(shè)備接口之中,也可能在備接口之中,也可能在CPUCPU內(nèi)部,也可能這兩部分都有。其作用是決內(nèi)部,也可能這兩部分都有。其作用是決定定CPUCPU的響應(yīng)并且找出最高優(yōu)先請求者,如果確定接收這個請求的話,的響應(yīng)并且找出最高優(yōu)先請求者,如果確定接收這個請求的話,就由就由CPUCPU發(fā)出中斷響應(yīng)信號發(fā)出中斷響應(yīng)信號INTAINTA (
25、C C) 軟硬件結(jié)合。軟硬件結(jié)合。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (7/11)三、中斷工作過程:三、中斷工作過程:3、中斷響應(yīng)(1 1)CPUCPU響應(yīng)最高優(yōu)先級的中斷請求,并且在適當(dāng)時會向中斷源提供一響應(yīng)最高優(yōu)先級的中斷請求,并且在適當(dāng)時會向中斷源提供一個應(yīng)答的響應(yīng)信號,表明主機承認了它的請求,這就是中斷響應(yīng)。在采個應(yīng)答的響應(yīng)信號,表明主機承認了它的請求,這就是中斷響應(yīng)。在采用硬件向量中斷的方式中,通常,用硬件向量中斷的方式中,通常,CPUCPU還要利用它告知中斷接口電路向還要利用它告知中斷接口電路向CPUCPU提供一個中斷向量。提供一個中斷向量。(2 2)響應(yīng)條件:)響應(yīng)
26、條件: (A A) 一條指令執(zhí)行結(jié)束時刻一條指令執(zhí)行結(jié)束時刻 (B B) 中斷允許:中斷允許: ( (a)a) 可屏蔽中斷(可屏蔽中斷(Maskable InterruptMaskable Interrupt):):計算機中斷計算機中斷系統(tǒng)對一般外設(shè)的中斷請求就采用受中斷標(biāo)志位控制;系統(tǒng)對一般外設(shè)的中斷請求就采用受中斷標(biāo)志位控制; ( (b)b) 非屏蔽中斷(非屏蔽中斷(Non-Maskable InterruptNon-Maskable Interrupt):):而對必而對必須立刻響應(yīng)的中斷請求,如電源掉電、機器故障等,則采用不受中斷標(biāo)須立刻響應(yīng)的中斷請求,如電源掉電、機器故障等,則采用不受
27、中斷標(biāo)志位控制。志位控制。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (8/11)l中斷屏蔽中斷屏蔽 (A A) 概念:對中斷的允許或禁止的控制概念:對中斷的允許或禁止的控制 (B B) 必要性:必要性: eg1eg1:中斷服務(wù)程序與正常程序共享數(shù)據(jù)區(qū)中斷服務(wù)程序與正常程序共享數(shù)據(jù)區(qū) eg2eg2:CPUCPU正在用軟件查詢中斷源時正在用軟件查詢中斷源時 eg3eg3:正在執(zhí)行中斷服務(wù)程序而不允許嵌套時正在執(zhí)行中斷服務(wù)程序而不允許嵌套時 eg4eg4:進行現(xiàn)場保護和恢復(fù)現(xiàn)場時進行現(xiàn)場保護和恢復(fù)現(xiàn)場時 (C C)方法:方法:軟硬結(jié)合和內(nèi)外結(jié)合的方法。不同的計算機可能在具體措施上有差異,軟硬
28、結(jié)合和內(nèi)外結(jié)合的方法。不同的計算機可能在具體措施上有差異,但基本的思想是相同的。外部中斷請求電路設(shè)置中斷屏蔽觸發(fā)器控制某一但基本的思想是相同的。外部中斷請求電路設(shè)置中斷屏蔽觸發(fā)器控制某一個中斷源能否產(chǎn)生中斷請求信號,個中斷源能否產(chǎn)生中斷請求信號,CPUCPU內(nèi)部設(shè)置中斷標(biāo)志位用于控制全部內(nèi)部設(shè)置中斷標(biāo)志位用于控制全部可屏蔽中斷的響應(yīng)。一般計算機中都有實現(xiàn)中斷屏蔽的指令和相應(yīng)的硬件可屏蔽中斷的響應(yīng)。一般計算機中都有實現(xiàn)中斷屏蔽的指令和相應(yīng)的硬件電路。電路。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (9/11)l中斷屏蔽中斷屏蔽(D D)實現(xiàn):實現(xiàn): ( (a)a) 在大多數(shù)計算機在大多數(shù)
29、計算機CPUCPU內(nèi),都設(shè)置一個中斷觸發(fā)器,由這個觸發(fā)器的內(nèi),都設(shè)置一個中斷觸發(fā)器,由這個觸發(fā)器的狀態(tài)來決定狀態(tài)來決定CPUCPU對中斷請求是否響應(yīng)。對中斷請求是否響應(yīng)。能使中斷觸發(fā)器置能使中斷觸發(fā)器置“1”“1”的指令,一般稱為開中斷指令,表示系統(tǒng)允的指令,一般稱為開中斷指令,表示系統(tǒng)允許中斷;能使中斷觸發(fā)器置許中斷;能使中斷觸發(fā)器置“0”“0”的指令,一般稱為關(guān)中斷指令,表示系的指令,一般稱為關(guān)中斷指令,表示系統(tǒng)禁止中斷。用戶在適當(dāng)時可以用這些指令來對中斷的能與否進行選擇和統(tǒng)禁止中斷。用戶在適當(dāng)時可以用這些指令來對中斷的能與否進行選擇和控制。控制。例如例如8088/8086 8088/80
30、86 CPUCPU中,其程序狀態(tài)字中,其程序狀態(tài)字PSWPSW寄存器中就有寄存器中就有IFIF位(第位(第1010位),開中斷指令位),開中斷指令STISTI可以使可以使IFIF位置為位置為“1”“1”,達到允許中斷的目的,關(guān)中,達到允許中斷的目的,關(guān)中斷指令斷指令CLICLI可以使可以使IFIF位清位清“0”“0”,達到禁止中斷的目的。,達到禁止中斷的目的。再如:再如:PDP11PDP11,PSWPSW的的7 7,6 6,5 5位改變會達到對某些中斷的允許或禁止。位改變會達到對某些中斷的允許或禁止。計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (10/11)l 中斷屏蔽中斷屏蔽(D D)
31、實現(xiàn):實現(xiàn): ( (b) b) 在外部中斷源的接口,一般都設(shè)立中斷屏蔽觸發(fā)器,通常這個觸發(fā)在外部中斷源的接口,一般都設(shè)立中斷屏蔽觸發(fā)器,通常這個觸發(fā)器的狀態(tài)可由器的狀態(tài)可由CPUCPU用指令改變。例如當(dāng)這個觸發(fā)器為用指令改變。例如當(dāng)這個觸發(fā)器為1 1時,表示不允許時,表示不允許該中斷源發(fā)出中斷請求,否則為允許。該中斷源發(fā)出中斷請求,否則為允許。PDP-11PDP-11機中,外設(shè)接口電路中的設(shè)備狀態(tài)寄存器第機中,外設(shè)接口電路中的設(shè)備狀態(tài)寄存器第6 6位就是用于這個目的。位就是用于這個目的。當(dāng)?shù)诋?dāng)?shù)? 6位(允許中斷),第位(允許中斷),第7 7位(完成位)都成立時,才允許發(fā)中斷請求。位(完成位)
32、都成立時,才允許發(fā)中斷請求。IBMPCIBMPC,82598259可編程中斷控制器,有中斷屏蔽可編程中斷控制器,有中斷屏蔽R R,82598259可接收來自外設(shè)的可接收來自外設(shè)的8 8個各自獨立的中斷請求,信號分別為個各自獨立的中斷請求,信號分別為IRQ0IRQ7IRQ0IRQ7,IRQ0IRQ0優(yōu)先級最高,中優(yōu)先級最高,中斷源斷源0707對應(yīng)于中斷類型號對應(yīng)于中斷類型號0808H0FHH0FH,(,(其中其中IRQ3IRQ3和和IRQ5IRQ5未用)。例如未用)。例如IRQ1IRQ1對應(yīng)對應(yīng)0909H H中斷,對應(yīng)設(shè)備鍵盤。中斷,對應(yīng)設(shè)備鍵盤。 8259 8259中斷屏蔽寄存器(中斷屏蔽寄存
33、器(IMRIMR),),I/OI/O端口地址端口地址2121H H,它的位它的位0707位對應(yīng)于位對應(yīng)于IRQ0IRQ7IRQ0IRQ7,可通過設(shè)置任一位控制任一中斷源的允許或禁止(可通過設(shè)置任一位控制任一中斷源的允許或禁止(0 0代表允代表允許,許,1 1代表禁止)代表禁止)例如,只允許鍵盤中斷,可設(shè)置例如,只允許鍵盤中斷,可設(shè)置MOV AL,0FDHMOV AL,0FDHOUT 21H,ALOUT 21H,AL計算機組成原理計算機組成原理CPU響應(yīng)中斷的條件 (11/11)斷點中斷服務(wù)程序中斷返回中斷響應(yīng)外設(shè)中斷請求外設(shè)并行工作CPU繼續(xù)工作CPU繼續(xù)工作CPU正常程序程序中斷的工作過程預(yù)
34、置參數(shù)中斷服務(wù)啟動外設(shè)計算機組成原理計算機組成原理中斷處理 (1/5)1、中斷識別 (1 1)中斷源的識別)中斷源的識別 (A A)識別的主體:識別的主體:WHOWHO:CPUCPU識別識別 (B B)與中斷優(yōu)先級的判定密切相關(guān):中斷優(yōu)先與中斷優(yōu)先級的判定密切相關(guān):中斷優(yōu)先級的判定是解決這一問題的前提和基礎(chǔ)。級的判定是解決這一問題的前提和基礎(chǔ)。 (C C)目的:使目的:使CPUCPU轉(zhuǎn)入相應(yīng)的服務(wù)程序。轉(zhuǎn)入相應(yīng)的服務(wù)程序。計算機組成原理計算機組成原理中斷處理 (2/5)1、中斷識別(2 2)方法:)方法: (A A) 軟件查詢法:采用與程序查詢傳送方式一樣的方法,用軟件查詢程序段檢測中斷軟件查
35、詢法:采用與程序查詢傳送方式一樣的方法,用軟件查詢程序段檢測中斷請求的標(biāo)志,同時還可以實現(xiàn)中斷判優(yōu)(詳見請求的標(biāo)志,同時還可以實現(xiàn)中斷判優(yōu)(詳見7.3.57.3.5節(jié)軟件查詢判優(yōu)法)。節(jié)軟件查詢判優(yōu)法)。 (B B) 硬件向量法:硬件向量法: ( (a)a) 中斷向量是中斷源向中斷向量是中斷源向CPUCPU提供的唯一識別碼;提供的唯一識別碼; ( (b)b) 識別碼是有方向的;識別碼是有方向的; ( (c)c) 識別碼實際是主存的一個地址碼;識別碼實際是主存的一個地址碼; ( (d)d) 硬件支持:硬件支持: 接口電路中:向量地址產(chǎn)生器接口電路中:向量地址產(chǎn)生器 主機之內(nèi):保存向量的主機之內(nèi):
36、保存向量的R R (e) (e) 向量地址的存在情況:向量地址的存在情況: ( (i)i)服務(wù)程序入口服務(wù)程序入口 ( (ii)ii)服務(wù)程序入口地址服務(wù)程序入口地址計算機組成原理計算機組成原理中斷處理 (3/5)2、中斷服務(wù)(1 1)中斷現(xiàn)場:中斷現(xiàn)場是指在發(fā)生中斷時,)中斷現(xiàn)場:中斷現(xiàn)場是指在發(fā)生中斷時,CPUCPU及其現(xiàn)行程序的當(dāng)前主要狀態(tài)。這其中最及其現(xiàn)行程序的當(dāng)前主要狀態(tài)。這其中最為關(guān)鍵的狀態(tài)是程序計數(shù)器為關(guān)鍵的狀態(tài)是程序計數(shù)器PCPC的值,也就是的值,也就是CPUCPU現(xiàn)行程序被中斷時的下條指令的存儲地址,現(xiàn)行程序被中斷時的下條指令的存儲地址,即斷點地址,簡稱斷點。除斷點外,中斷現(xiàn)
37、場即斷點地址,簡稱斷點。除斷點外,中斷現(xiàn)場應(yīng)包含應(yīng)包含CPUCPU程序運行情況的狀態(tài),這些狀態(tài)有程序運行情況的狀態(tài),這些狀態(tài)有程序狀態(tài)字程序狀態(tài)字PSWPSW以及程序執(zhí)行的當(dāng)前結(jié)果等。以及程序執(zhí)行的當(dāng)前結(jié)果等。計算機組成原理計算機組成原理中斷處理 (4/5)2、中斷服務(wù)(2 2)中斷服務(wù)程序:)中斷服務(wù)程序:3 3個部分個部分 (A A) 起始部分:起始部分:起始部分的主要功能是保護起始部分的主要功能是保護CPUCPU原來程序的一些現(xiàn)場,另一個功能是原來程序的一些現(xiàn)場,另一個功能是控制系統(tǒng)在執(zhí)行中斷服務(wù)程序過程中是否允許再被中斷??刂葡到y(tǒng)在執(zhí)行中斷服務(wù)程序過程中是否允許再被中斷。 (B B)
38、主體部分:主體部分:主體部分的主要功能應(yīng)該是完成中斷源的請求任務(wù)。對一般輸入輸出主體部分的主要功能應(yīng)該是完成中斷源的請求任務(wù)。對一般輸入輸出外部設(shè)備來說,就是進行數(shù)據(jù)的輸入輸出操作,并且修改相應(yīng)的傳送參數(shù)。外部設(shè)備來說,就是進行數(shù)據(jù)的輸入輸出操作,并且修改相應(yīng)的傳送參數(shù)。這部分是中斷服務(wù)程序中核心的,也就是實質(zhì)性的部分。這部分是中斷服務(wù)程序中核心的,也就是實質(zhì)性的部分。 (C C) 結(jié)尾部分:結(jié)尾部分:結(jié)尾部分的主要功能是恢復(fù)起始部分所保護的現(xiàn)場內(nèi)容,然后準(zhǔn)備返結(jié)尾部分的主要功能是恢復(fù)起始部分所保護的現(xiàn)場內(nèi)容,然后準(zhǔn)備返回。通常是用一條返回指令作為整個中斷服務(wù)程序的最后一條指令?;?。通常是用一
39、條返回指令作為整個中斷服務(wù)程序的最后一條指令。計算機組成原理計算機組成原理中斷處理 (5/5)3、中斷返回中斷服務(wù)程序的結(jié)束是一條中斷返回指令,由它中斷服務(wù)程序的結(jié)束是一條中斷返回指令,由它實現(xiàn)從中斷處理過程返回被中斷的程序斷點位置處繼實現(xiàn)從中斷處理過程返回被中斷的程序斷點位置處繼續(xù)執(zhí)行,從而完成了一次中斷過程。續(xù)執(zhí)行,從而完成了一次中斷過程。以上所述的以上所述的6 6個階段是外部設(shè)備作為中斷源引起中個階段是外部設(shè)備作為中斷源引起中斷的全過程。顯然,斷的全過程。顯然, 整個過程只有中斷服務(wù)這個階整個過程只有中斷服務(wù)這個階段才是實際有效的部分,其中的關(guān)鍵是執(zhí)行段才是實際有效的部分,其中的關(guān)鍵是執(zhí)
40、行I/OI/O指令指令實現(xiàn)數(shù)據(jù)交換。其余幾個階段可認為是中斷服務(wù)的前實現(xiàn)數(shù)據(jù)交換。其余幾個階段可認為是中斷服務(wù)的前后處理,是一種輔助性的但不可缺少的操作。當(dāng)中斷后處理,是一種輔助性的但不可缺少的操作。當(dāng)中斷頻繁發(fā)生時,這個輔助性操作是降低頻繁發(fā)生時,這個輔助性操作是降低CPUCPU利用率和限利用率和限制外設(shè)速度的原因所在。制外設(shè)速度的原因所在。計算機組成原理計算機組成原理中斷類型之內(nèi)部中斷l(xiāng)由于處理器由于處理器內(nèi)部執(zhí)行程序出現(xiàn)異常內(nèi)部執(zhí)行程序出現(xiàn)異常引起的程序引起的程序中斷,也中斷,也常被稱為常被稱為異常異常(Exception)l利用內(nèi)部中斷,處理器為用戶提供了發(fā)現(xiàn)、調(diào)利用內(nèi)部中斷,處理器為
41、用戶提供了發(fā)現(xiàn)、調(diào)試并解決程序執(zhí)行時異常情況的有效途徑試并解決程序執(zhí)行時異常情況的有效途徑除法錯中斷:除法指令出錯的內(nèi)部中斷除法錯中斷:除法指令出錯的內(nèi)部中斷斷點中斷:支持?jǐn)帱c調(diào)試程序的內(nèi)部中斷斷點中斷:支持?jǐn)帱c調(diào)試程序的內(nèi)部中斷單步中斷:支持單步調(diào)試程序的內(nèi)部中斷單步中斷:支持單步調(diào)試程序的內(nèi)部中斷溢出中斷:處理運算溢出錯誤的內(nèi)部中斷溢出中斷:處理運算溢出錯誤的內(nèi)部中斷無效指令代碼異常、無效指令代碼異常、段超界異常、通用保護異常段超界異常、通用保護異常計算機組成原理計算機組成原理中斷類型之外部中斷l(xiāng)外部中斷是由于處理器外部中斷是由于處理器外部提出中斷請求外部提出中斷請求引起引起的程序中斷,外
42、部中斷請求是處理器外部隨機的程序中斷,外部中斷請求是處理器外部隨機產(chǎn)生的,所以是真正的產(chǎn)生的,所以是真正的中斷中斷(Interrupt)l利用外部中斷,微機系統(tǒng)可以實時響應(yīng)外部設(shè)利用外部中斷,微機系統(tǒng)可以實時響應(yīng)外部設(shè)備的數(shù)據(jù)傳送請求,能夠及時處理外部意外或備的數(shù)據(jù)傳送請求,能夠及時處理外部意外或緊急事件緊急事件l非屏蔽中斷非屏蔽中斷處理器無法禁止、必須響應(yīng)的中斷處理器無法禁止、必須響應(yīng)的中斷l(xiāng)可屏蔽中斷可屏蔽中斷由中斷屏蔽觸發(fā)器由中斷屏蔽觸發(fā)器( (標(biāo)志標(biāo)志) )控制是否響應(yīng)的中斷控制是否響應(yīng)的中斷計算機組成原理計算機組成原理外部中斷之非屏蔽中斷l(xiāng)非屏蔽中斷非屏蔽中斷NMINMI(NonMa
43、skable Interrupt)(NonMaskable Interrupt)外部通過非屏蔽中斷請求信號外部通過非屏蔽中斷請求信號NMI向處理器提出向處理器提出中斷請求中斷請求處理器無法禁止,將在當(dāng)前指令執(zhí)行結(jié)束予以響處理器無法禁止,將在當(dāng)前指令執(zhí)行結(jié)束予以響應(yīng)應(yīng)l非屏蔽中斷主要用于處理系統(tǒng)的意外或故障非屏蔽中斷主要用于處理系統(tǒng)的意外或故障電源掉電前的數(shù)據(jù)保護電源掉電前的數(shù)據(jù)保護存儲器讀寫錯誤的處理存儲器讀寫錯誤的處理lPCPC微機的微機的NMINMI中斷請求中斷請求存儲器產(chǎn)生奇偶校驗錯存儲器產(chǎn)生奇偶校驗錯數(shù)值協(xié)處理器產(chǎn)生異常數(shù)值協(xié)處理器產(chǎn)生異常計算機組成原理計算機組成原理外部中斷之可屏蔽中
44、斷l(xiāng)可屏蔽中斷可屏蔽中斷INTRINTR(Maskable Interrupt)(Maskable Interrupt)外部通過可屏蔽中斷請求信號外部通過可屏蔽中斷請求信號INTRINTR向處理器提出中斷向處理器提出中斷請求請求如果允許可屏蔽中斷,則在當(dāng)前指令執(zhí)行結(jié)束予以響應(yīng)如果允許可屏蔽中斷,則在當(dāng)前指令執(zhí)行結(jié)束予以響應(yīng)同時輸出可屏蔽中斷響應(yīng)信號同時輸出可屏蔽中斷響應(yīng)信號INTAINTAl設(shè)置中斷屏蔽觸發(fā)器,控制可屏蔽中斷設(shè)置中斷屏蔽觸發(fā)器,控制可屏蔽中斷關(guān)閉中斷關(guān)中斷禁止中斷:中斷被屏蔽、不能響應(yīng)關(guān)閉中斷關(guān)中斷禁止中斷:中斷被屏蔽、不能響應(yīng)開放中斷開中斷允許中斷:中斷可以獲得響應(yīng)開放中斷開
45、中斷允許中斷:中斷可以獲得響應(yīng)l可屏蔽中斷主要用于主機與外設(shè)交換數(shù)據(jù)可屏蔽中斷主要用于主機與外設(shè)交換數(shù)據(jù)用戶按鍵后請求處理輸入的鍵盤數(shù)據(jù)用戶按鍵后請求處理輸入的鍵盤數(shù)據(jù)打印機請求發(fā)送打印數(shù)據(jù)打印機請求發(fā)送打印數(shù)據(jù)時鐘中斷請求進行計時處理時鐘中斷請求進行計時處理計算機組成原理計算機組成原理可屏蔽中斷處理過程l中斷請求中斷請求l中斷響應(yīng)中斷響應(yīng)l 關(guān)閉中斷關(guān)閉中斷l(xiāng) 斷點保護斷點保護l 中斷源識別中斷源識別l 現(xiàn)場保護現(xiàn)場保護l中斷服務(wù)中斷服務(wù)l 恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場l 開放中斷開放中斷l(xiāng)中斷返回中斷返回外界隨機產(chǎn)生外界隨機產(chǎn)生數(shù)據(jù)交換的實質(zhì)性環(huán)節(jié)數(shù)據(jù)交換的實質(zhì)性環(huán)節(jié)指令結(jié)束進行指令結(jié)束進行中斷處理過
46、程流程圖中斷處理過程流程圖取指令取指令執(zhí)行指令執(zhí)行指令中斷?中斷?響應(yīng)中斷響應(yīng)中斷找出中斷源,并保存找出中斷源,并保存PC轉(zhuǎn)移到中斷轉(zhuǎn)移到中斷服務(wù)子程序服務(wù)子程序保存保存CPU現(xiàn)場現(xiàn)場設(shè)備服務(wù)設(shè)備服務(wù)開中斷開中斷否否是是關(guān)中斷關(guān)中斷恢復(fù)恢復(fù)CPU現(xiàn)場現(xiàn)場中斷周期中斷周期(硬件實現(xiàn))(硬件實現(xiàn))中斷服務(wù)子程序中斷服務(wù)子程序(軟件實現(xiàn))(軟件實現(xiàn))8.2.2 程序中斷方式基本接口控制控制IMIR公用寄存器公用寄存器0 1BSEIRD數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器中斷向量邏輯中斷向量邏輯設(shè)備選擇設(shè)備選擇PCIR動作開始動作開始數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器傳送數(shù)據(jù)傳送數(shù)據(jù)12345動作結(jié)束動作結(jié)束67P
47、CIR8公用寄存器公用寄存器10901SS中斷服務(wù)程序入口中斷服務(wù)程序入口中斷請求中斷請求CPU接口接口外設(shè)外設(shè)INTA計算機組成原理計算機組成原理8.2.3 單級中斷l(xiāng)在執(zhí)行中斷的過程中,如在執(zhí)行中斷的過程中,如果只能為本次中斷服務(wù),果只能為本次中斷服務(wù),不允許打斷服務(wù)程序,只不允許打斷服務(wù)程序,只有在服務(wù)程序完成后,才有在服務(wù)程序完成后,才能響應(yīng)新的中斷請求能響應(yīng)新的中斷請求l所有中斷源都屬于同一級所有中斷源都屬于同一級計算機組成原理計算機組成原理8.2.4 多級中斷l(xiāng)如在一次服務(wù)程序執(zhí)行中,允許優(yōu)先級高的如在一次服務(wù)程序執(zhí)行中,允許優(yōu)先級高的中斷級別低的中斷服務(wù)程序,在保存斷點和中斷級別
48、低的中斷服務(wù)程序,在保存斷點和現(xiàn)場后,轉(zhuǎn)去響應(yīng)優(yōu)先級別更高的中斷程序,現(xiàn)場后,轉(zhuǎn)去響應(yīng)優(yōu)先級別更高的中斷程序,并執(zhí)行新的中斷服務(wù)程序并執(zhí)行新的中斷服務(wù)程序主程序主程序1 1級中斷級中斷服務(wù)程序服務(wù)程序2 2級中斷級中斷服務(wù)程序服務(wù)程序3 3級中斷級中斷服務(wù)程序服務(wù)程序計算機組成原理計算機組成原理一維、二維多級中斷l(xiāng)一維多級中斷:每級中斷里只有一個中斷源一維多級中斷:每級中斷里只有一個中斷源l二維多級中斷:每級中斷里又有多個中斷源二維多級中斷:每級中斷里又有多個中斷源中斷源識別之向量中斷l(xiāng)中斷響應(yīng)時產(chǎn)生向量地址,指出中斷服務(wù)程序入口中斷響應(yīng)時產(chǎn)生向量地址,指出中斷服務(wù)程序入口INTO001010
49、001011001000數(shù)據(jù)總線數(shù)據(jù)總線編編碼碼器器INTAINTIIR1IS1IR2IS2IR3IS3123456IR1IR2IR3計算機組成原理計算機組成原理向量地址l由硬件直接產(chǎn)生一個固定地址(向量地址)由硬件直接產(chǎn)生一個固定地址(向量地址)l向量地址只是一個向量地址只是一個“位移量位移量”:將這個位移量:將這個位移量加上加上CPUCPU中某寄存器里存放的基地址,最后得中某寄存器里存放的基地址,最后得到中斷處理程序的入口地址到中斷處理程序的入口地址l向量地址對應(yīng)的地址單元存放的是轉(zhuǎn)移指令,向量地址對應(yīng)的地址單元存放的是轉(zhuǎn)移指令,通過該指令轉(zhuǎn)入各自的中斷服務(wù)程序入口通過該指令轉(zhuǎn)入各自的中斷
50、服務(wù)程序入口l向量地址是一個中斷向量號:所有中斷服務(wù)程向量地址是一個中斷向量號:所有中斷服務(wù)程序的入口地址安排在一個特定主存區(qū)域(地址序的入口地址安排在一個特定主存區(qū)域(地址表),通過該向量號在地址表中查找到對應(yīng)的表),通過該向量號在地址表中查找到對應(yīng)的中斷服務(wù)程序地址中斷服務(wù)程序地址計算機組成原理計算機組成原理中斷源識別之中斷查詢l中斷請求保存在中斷狀態(tài)寄存器,處理器依次查詢中斷請求保存在中斷狀態(tài)寄存器,處理器依次查詢l檢測某個中斷請求有效,轉(zhuǎn)向?qū)?yīng)的中斷服務(wù)程序檢測某個中斷請求有效,轉(zhuǎn)向?qū)?yīng)的中斷服務(wù)程序計算機組成原理計算機組成原理中斷優(yōu)先權(quán)排隊l中斷優(yōu)先權(quán)中斷優(yōu)先權(quán)每個中斷源被處理的級別
51、每個中斷源被處理的級別l中斷優(yōu)先權(quán)排隊中斷優(yōu)先權(quán)排隊事先為每個中斷源所確定的優(yōu)先處理順序事先為每個中斷源所確定的優(yōu)先處理順序l查詢中斷時查詢中斷時依次查詢,先查詢的中斷具有較高的優(yōu)先權(quán)依次查詢,先查詢的中斷具有較高的優(yōu)先權(quán)l(xiāng)硬件電路實現(xiàn)時硬件電路實現(xiàn)時分布方式的菊花鏈排隊電路分布方式的菊花鏈排隊電路集中方式的編碼電路和比較電路集中方式的編碼電路和比較電路多個中斷多個中斷同時請求同時請求計算機組成原理計算機組成原理中斷嵌套l高于當(dāng)前正在服務(wù)的中斷:高于當(dāng)前正在服務(wù)的中斷:暫停當(dāng)前工作暫停當(dāng)前工作先行服務(wù)于級別更高的中斷先行服務(wù)于級別更高的中斷接著處理被打斷的中斷接著處理被打斷的中斷l(xiāng)低于或等于當(dāng)
52、前正在服務(wù)的中斷:低于或等于當(dāng)前正在服務(wù)的中斷:不予理會,待完成當(dāng)前中斷服務(wù)后再處理不予理會,待完成當(dāng)前中斷服務(wù)后再處理中斷處理中斷處理又有請求又有請求中斷嵌套:中斷處理中又響應(yīng)中斷中斷嵌套:中斷處理中又響應(yīng)中斷計算機組成原理計算機組成原理8.2.5 中斷控制器l中斷控制器:管理外設(shè)的多個中斷請求并進行中斷控制器:管理外設(shè)的多個中斷請求并進行優(yōu)先權(quán)排隊等工作優(yōu)先權(quán)排隊等工作lIntel 8259是可編程中斷控制器是可編程中斷控制器PICl可用于管理可用于管理Intel 8080/8085、8086/8088以及以及80286/80386的可屏蔽中斷的可屏蔽中斷l(xiāng)8259的基本功能的基本功能一片
53、一片8259可以管理可以管理8級中斷,可擴展至級中斷,可擴展至64級級每一級中斷都可單獨被屏蔽或允許每一級中斷都可單獨被屏蔽或允許在中斷響應(yīng)周期,可提供相應(yīng)的中斷向量號在中斷響應(yīng)周期,可提供相應(yīng)的中斷向量號8259設(shè)計有多種工作方式,可通過編程選擇設(shè)計有多種工作方式,可通過編程選擇計算機組成原理計算機組成原理8259中斷控制器內(nèi)部結(jié)構(gòu)D7D0INTAINT中斷請求寄存器中斷請求寄存器中斷屏蔽寄存器中斷屏蔽寄存器數(shù)據(jù)數(shù)據(jù)總線總線緩沖器緩沖器IR0IR7讀讀/寫寫控制控制邏輯邏輯級聯(lián)級聯(lián)緩沖器緩沖器比較器比較器RDWRA0CSCAS0CSA1CAS2SP/EN優(yōu)先權(quán)判斷器優(yōu)先權(quán)判斷器中斷服務(wù)寄存器
54、中斷服務(wù)寄存器控制邏輯控制邏輯計算機組成原理計算機組成原理8259中斷控制器的寄存器l中斷請求寄存器中斷請求寄存器IRR保存保存8條外界中斷請求信號條外界中斷請求信號IR0IR7的請求狀態(tài)的請求狀態(tài)l中斷服務(wù)寄存器中斷服務(wù)寄存器ISR保存正在被保存正在被8259服務(wù)著的中斷狀態(tài)服務(wù)著的中斷狀態(tài)l中斷屏蔽寄存器中斷屏蔽寄存器IMR保存對中斷請求信號保存對中斷請求信號IR的屏蔽狀態(tài)的屏蔽狀態(tài)中斷請求寄存器的各位送入優(yōu)先權(quán)判斷器,根據(jù)中中斷請求寄存器的各位送入優(yōu)先權(quán)判斷器,根據(jù)中斷屏蔽寄存器各位的狀態(tài)決定最高優(yōu)先級的中斷請斷屏蔽寄存器各位的狀態(tài)決定最高優(yōu)先級的中斷請求,并將各位的狀態(tài)送入中斷服務(wù)寄存
55、器求,并將各位的狀態(tài)送入中斷服務(wù)寄存器計算機組成原理計算機組成原理設(shè)置優(yōu)先權(quán)方式l普通全嵌套方式普通全嵌套方式8259的中斷的中斷優(yōu)先權(quán)順序固定不變優(yōu)先權(quán)順序固定不變,從高到低依次,從高到低依次為為IR0、IR1、IR2、IR7中斷請求后,中斷請求后,8259對對當(dāng)前請求中斷中優(yōu)先權(quán)最高當(dāng)前請求中斷中優(yōu)先權(quán)最高的中斷的中斷IRi予以予以響應(yīng)響應(yīng),將其向量號送上數(shù)據(jù)總線,將其向量號送上數(shù)據(jù)總線,對應(yīng)對應(yīng)ISR的的Di位置位,至到中斷結(jié)束(位置位,至到中斷結(jié)束(ISR的的Di位位復(fù)位)復(fù)位)在在ISR的的Di位置位期間,位置位期間,禁止再發(fā)生同級和低級優(yōu)禁止再發(fā)生同級和低級優(yōu)先權(quán)的中斷先權(quán)的中斷,
56、但,但允許高級優(yōu)先權(quán)中斷的嵌套允許高級優(yōu)先權(quán)中斷的嵌套l特殊全嵌套方式特殊全嵌套方式l優(yōu)先權(quán)自動循環(huán)方式優(yōu)先權(quán)自動循環(huán)方式l優(yōu)先權(quán)特殊循環(huán)方式優(yōu)先權(quán)特殊循環(huán)方式計算機組成原理計算機組成原理屏蔽中斷源方式n普通屏蔽方式普通屏蔽方式n將將IMR的的Di位置位置1,則對應(yīng)的中斷,則對應(yīng)的中斷IRi被屏蔽被屏蔽,該中,該中斷請求不能從斷請求不能從8259送到送到CPUn如果如果IMR的的Di位置位置0,則允許,則允許IRi中斷產(chǎn)生中斷產(chǎn)生n特殊屏蔽方式特殊屏蔽方式n將將IMR的的Di位置位置1,對應(yīng)的中斷,對應(yīng)的中斷IRi被屏蔽的同時,被屏蔽的同時,使使ISR的的Di位置位置0計算機組成原理計算機組成
57、原理中斷控制器的編程l指定其工作方式和控制中斷處理過程指定其工作方式和控制中斷處理過程l開始工作前,必須進行開始工作前,必須進行初始化編程初始化編程寫入初始化命令寫入初始化命令I(lǐng)CWICW:選擇工作方式:選擇工作方式l工作期間,需要工作期間,需要中斷操作編程中斷操作編程寫入操作命令字寫入操作命令字OCWOCW:按新要求工作,讀取信息等:按新要求工作,讀取信息等OCW1OCW1:寫入:寫入IMRIMR,控制中斷屏蔽,控制中斷屏蔽OCW2OCW2:產(chǎn)生:產(chǎn)生EOIEOI命令,改變優(yōu)先權(quán)順序命令,改變優(yōu)先權(quán)順序OCW3OCW3:控制讀取:控制讀取IRRIRR、ISRISR、IMRIMR和查詢字和查詢
58、字計算機組成原理計算機組成原理8.2.6 Pentium中斷機制l兩類中斷源:(外部)中斷和(內(nèi)部)異常兩類中斷源:(外部)中斷和(內(nèi)部)異常l采用向量中斷機制,能夠處理采用向量中斷機制,能夠處理256256個中斷個中斷l(xiāng)用中斷向量號用中斷向量號0 0255255區(qū)別區(qū)別l可屏蔽中斷需要中斷控制器實現(xiàn)優(yōu)先權(quán)管理可屏蔽中斷需要中斷控制器實現(xiàn)優(yōu)先權(quán)管理l中斷向量號的獲?。褐袛嘞蛄刻柕墨@?。褐噶罱o出指令給出外部提供外部提供CPUCPU自動指定自動指定計算機組成原理計算機組成原理中斷標(biāo)志lIFIF1 1,微處理器,微處理器開中斷開中斷可以響應(yīng)可屏蔽中斷可以響應(yīng)可屏蔽中斷l(xiāng)IFIF0 0,微處理器,微處
59、理器關(guān)中斷關(guān)中斷不能響應(yīng)可屏蔽中斷不能響應(yīng)可屏蔽中斷l(xiāng)關(guān)中斷的情況關(guān)中斷的情況系統(tǒng)復(fù)位后系統(tǒng)復(fù)位后任何一個中斷被響應(yīng)后任何一個中斷被響應(yīng)后執(zhí)行關(guān)中斷指令執(zhí)行關(guān)中斷指令CLICLI后后l開中斷的方法開中斷的方法執(zhí)行開中斷指令執(zhí)行開中斷指令STISTIl執(zhí)行中斷返回指令執(zhí)行中斷返回指令I(lǐng)RETIRET恢復(fù)中斷前恢復(fù)中斷前IFIF狀態(tài)狀態(tài)計算機組成原理計算機組成原理中斷向量表結(jié)構(gòu)l物理地址物理地址00000H00000H,對應(yīng)向量號從,對應(yīng)向量號從0 0開始開始l依次每依次每4 4個字節(jié)安排一個中斷向量個字節(jié)安排一個中斷向量中斷向量中斷服務(wù)程序入口地址(首地址)中斷向量中斷服務(wù)程序入口地址(首地址)
60、含有含有1616位段地址和位段地址和1616位偏移地址的邏輯地址位偏移地址的邏輯地址按照按照“低對低、高對高低對低、高對高”的小端方式存儲的小端方式存儲低字部分是偏移地址、高字部分是段地址低字部分是偏移地址、高字部分是段地址l256256個中斷占用個中斷占用1KB1KB區(qū)域,形成中斷向量表區(qū)域,形成中斷向量表中斷向量的物理地址中斷向量的物理地址N4中斷向量的物理地址中斷向量的物理地址N4計算機組成原理計算機組成原理中斷處理過程l如果特權(quán)改變,則保護堆棧指針如果特權(quán)改變,則保護堆棧指針l將標(biāo)志寄存器壓入堆棧,保護標(biāo)志位將標(biāo)志寄存器壓入堆棧,保護標(biāo)志位l禁止可屏蔽中斷和單步中斷禁止可屏蔽中斷和單步
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度高端建筑用無縫鋼管采購協(xié)議2篇
- 2025版大型養(yǎng)殖場專用鴨苗采購合同模板3篇
- 2025版智能交通信號系統(tǒng)建設(shè)與運營服務(wù)合同3篇
- 2025版情侶戀愛情感培養(yǎng)合同模板9篇
- 2025年度鋼管行業(yè)產(chǎn)業(yè)鏈整合與升級合同2篇
- 2025-2030全球防篡改技術(shù)行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球全自動電池包裝機行業(yè)調(diào)研及趨勢分析報告
- 2024年全國現(xiàn)場流行病學(xué)調(diào)查職業(yè)技能競賽考試題庫-上部分(600題)
- 2025-2030全球真空度測試儀行業(yè)調(diào)研及趨勢分析報告
- 2024年禁毒知識競賽試題庫(多選題)
- 2024年九省聯(lián)考新高考 數(shù)學(xué)試卷(含答案解析)
- 紅色歷史研學(xué)旅行課程設(shè)計
- 下運動神經(jīng)元損害綜合征疾病演示課件
- 北師大版三年級數(shù)學(xué)(上冊)看圖列式計算(完整版)
- 2024年云南省中考英語題庫【歷年真題+章節(jié)題庫+模擬試題】
- 2023中考地理真題(含解析)
- 麻醉藥品、精神藥品月檢查記錄表
- 浙江省寧波市海曙區(qū)2022學(xué)年第一學(xué)期九年級期末測試科學(xué)試題卷(含答案和答題卡)
- 高考英語詞匯3500電子版
- 建院新聞社成立策劃書
- JJF 1101-2019環(huán)境試驗設(shè)備溫度、濕度參數(shù)校準(zhǔn)規(guī)范
評論
0/150
提交評論