微機(jī)原理與接口技術(shù) 漆強(qiáng)版 第10章 中斷與中斷管理_第1頁
微機(jī)原理與接口技術(shù) 漆強(qiáng)版 第10章 中斷與中斷管理_第2頁
微機(jī)原理與接口技術(shù) 漆強(qiáng)版 第10章 中斷與中斷管理_第3頁
微機(jī)原理與接口技術(shù) 漆強(qiáng)版 第10章 中斷與中斷管理_第4頁
微機(jī)原理與接口技術(shù) 漆強(qiáng)版 第10章 中斷與中斷管理_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第第1010章章第第1010章章 中斷與中斷管理中斷與中斷管理第第1010章章 中斷與中斷管理中斷與中斷管理 本章主要內(nèi)容本章主要內(nèi)容8086的中斷系統(tǒng)的中斷系統(tǒng) 21中斷概念中斷概念 13第第1010章章 中斷與中斷管理中斷與中斷管理 10.1 10.1 中斷概念中斷概念 1 1、中斷中斷v 在在CPUCPU正常執(zhí)行程序的過程中,如果發(fā)生內(nèi)正常執(zhí)行程序的過程中,如果發(fā)生內(nèi)部部/ /外部事件或是程序預(yù)先安排的事件急需外部事件或是程序預(yù)先安排的事件急需CPUCPU處理時,處理時,CPUCPU會暫時中斷正在執(zhí)行的程會暫時中斷正在執(zhí)行的程序,轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序。待事序,轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理

2、程序。待事件處理完畢后,件處理完畢后,CPUCPU再返回到被暫時中斷的再返回到被暫時中斷的程序繼續(xù)執(zhí)行。這個過程就稱為程序繼續(xù)執(zhí)行。這個過程就稱為中斷中斷。v 中斷中斷是微處理器是微處理器CPUCPU與外部設(shè)備交換信息的與外部設(shè)備交換信息的一種方式,是一種方式,是CPUCPU處理隨機(jī)事件和外部請求處理隨機(jī)事件和外部請求的主要手段。的主要手段。 10.1.1 10.1.1 中斷與中斷源中斷與中斷源第第1010章章 中斷與中斷管理中斷與中斷管理 1 1、中斷、中斷 v 最初,中斷技術(shù)引入計算機(jī)系統(tǒng),只是為了解決最初,中斷技術(shù)引入計算機(jī)系統(tǒng),只是為了解決快速的快速的CPUCPU與慢速的外部設(shè)備之間傳

3、送數(shù)據(jù)的矛與慢速的外部設(shè)備之間傳送數(shù)據(jù)的矛盾。盾。v 例如:打印輸出時,例如:打印輸出時,CPUCPU傳送數(shù)據(jù)的速度高,而傳送數(shù)據(jù)的速度高,而打印機(jī)打印的速度低。如果不采用中斷技術(shù),打印機(jī)打印的速度低。如果不采用中斷技術(shù),CPUCPU將經(jīng)常處于等待狀態(tài),效率極低。采用中斷將經(jīng)常處于等待狀態(tài),效率極低。采用中斷技術(shù)后,技術(shù)后,CPUCPU可以正常進(jìn)行其它的工作,只在打可以正常進(jìn)行其它的工作,只在打印機(jī)緩沖區(qū)中的當(dāng)前內(nèi)容打印完畢發(fā)出中斷請求印機(jī)緩沖區(qū)中的當(dāng)前內(nèi)容打印完畢發(fā)出中斷請求之后,才予以響應(yīng)。這時,之后,才予以響應(yīng)。這時,CPUCPU暫時停止執(zhí)行當(dāng)暫時停止執(zhí)行當(dāng)前程序而轉(zhuǎn)去執(zhí)行向緩沖區(qū)傳送數(shù)

4、據(jù)的程序,傳前程序而轉(zhuǎn)去執(zhí)行向緩沖區(qū)傳送數(shù)據(jù)的程序,傳送完成后又返回原來的程序執(zhí)行。這樣就大大地送完成后又返回原來的程序執(zhí)行。這樣就大大地提高了提高了CPUCPU的效率。的效率。第第1010章章 中斷與中斷管理中斷與中斷管理 1 1、中斷、中斷 v 隨著計算機(jī)技術(shù)的發(fā)展,中斷技術(shù)不斷被隨著計算機(jī)技術(shù)的發(fā)展,中斷技術(shù)不斷被賦予新的功能,它可以使計算機(jī)系統(tǒng)完成賦予新的功能,它可以使計算機(jī)系統(tǒng)完成如下功能:如下功能:CPUCPU與外部設(shè)備并行工作與外部設(shè)備并行工作實時信息處理實時信息處理故障檢測和自動處理故障檢測和自動處理分時處理分時處理第第1010章章 中斷與中斷管理中斷與中斷管理 2 2、中斷源

5、、中斷源 v 產(chǎn)生中斷請求的設(shè)備或事件產(chǎn)生中斷請求的設(shè)備或事件稱為稱為“中斷源中斷源”。v 根據(jù)中斷源不同,中斷可分為三類:根據(jù)中斷源不同,中斷可分為三類:由計算機(jī)硬件異常或故障引起的中斷,也稱由計算機(jī)硬件異常或故障引起的中斷,也稱為為內(nèi)部異常中斷內(nèi)部異常中斷;程序中執(zhí)行了中斷指令引起的中斷,也稱為程序中執(zhí)行了中斷指令引起的中斷,也稱為軟件中斷或軟中斷軟件中斷或軟中斷;外部設(shè)備(如輸入、輸出設(shè)備)請求引起的外部設(shè)備(如輸入、輸出設(shè)備)請求引起的中斷,也稱為中斷,也稱為硬件中斷或外部中斷硬件中斷或外部中斷。第第1010章章 中斷與中斷管理中斷與中斷管理 10.1.2 10.1.2 中斷系統(tǒng)的功能

6、中斷系統(tǒng)的功能 中斷請求中斷請求中斷判優(yōu)中斷判優(yōu)中斷響應(yīng)中斷響應(yīng)中斷返回中斷返回中斷服務(wù)中斷服務(wù)第第1010章章 中斷與中斷管理中斷與中斷管理 v 中斷過程需要由計算機(jī)的軟、硬件共同完成,中斷過程需要由計算機(jī)的軟、硬件共同完成,能完成中斷過程的所有硬件和軟件構(gòu)成能完成中斷過程的所有硬件和軟件構(gòu)成中斷系中斷系統(tǒng)統(tǒng)。v 中斷系統(tǒng)應(yīng)具備如下功能:中斷系統(tǒng)應(yīng)具備如下功能:接收中斷請求接收中斷請求中斷源識別中斷源識別中斷源判優(yōu)中斷源判優(yōu)中斷嵌套中斷嵌套 中斷處理與返回中斷處理與返回10.1.2 10.1.2 中斷系統(tǒng)的功能中斷系統(tǒng)的功能 第第1010章章 中斷與中斷管理中斷與中斷管理 v 對于不同的微機(jī)

7、系統(tǒng)和不同的中斷方式對于不同的微機(jī)系統(tǒng)和不同的中斷方式(如軟件、硬件中斷),(如軟件、硬件中斷),CPUCPU進(jìn)行中斷處進(jìn)行中斷處理的具體過程不完全一樣。理的具體過程不完全一樣。 v 但都要經(jīng)過:請求中斷、中斷判優(yōu)、中但都要經(jīng)過:請求中斷、中斷判優(yōu)、中斷響應(yīng)、中斷處理和中斷返回等階段。斷響應(yīng)、中斷處理和中斷返回等階段。 10.1.3 10.1.3 簡單的中斷處理過程簡單的中斷處理過程 第第1010章章 中斷與中斷管理中斷與中斷管理 (1 1)中斷請求觸發(fā)器置位)中斷請求觸發(fā)器置位vCPUCPU只有在只有在當(dāng)前指令執(zhí)行結(jié)束當(dāng)前指令執(zhí)行結(jié)束后才會檢測有無中斷后才會檢測有無中斷請求發(fā)生,因此對于外部

8、中斷,中斷源要向請求發(fā)生,因此對于外部中斷,中斷源要向CPUCPU發(fā)發(fā)出中斷請求,就必須把自己的中斷請求信號保持到出中斷請求,就必須把自己的中斷請求信號保持到CPUCPU響應(yīng),才可以清除。響應(yīng),才可以清除。v故要求每一個中斷源都有一個中斷請求觸發(fā)器,用故要求每一個中斷源都有一個中斷請求觸發(fā)器,用于記錄中斷請求標(biāo)志。當(dāng)提出中斷請求時,該觸發(fā)于記錄中斷請求標(biāo)志。當(dāng)提出中斷請求時,該觸發(fā)器被置位,如下圖所示。器被置位,如下圖所示。1 1、CPUCPU響應(yīng)中斷的條件響應(yīng)中斷的條件第第1010章章 中斷與中斷管理中斷與中斷管理 (2 2)中斷屏蔽觸發(fā)器置位)中斷屏蔽觸發(fā)器置位v在通常情況下,往往有多個中

9、斷源。在通常情況下,往往有多個中斷源。v在外設(shè)接口中,為每一個中斷源設(shè)置了一個中斷屏蔽在外設(shè)接口中,為每一個中斷源設(shè)置了一個中斷屏蔽觸發(fā)器,用來開放或關(guān)閉中斷源的請求。觸發(fā)器,用來開放或關(guān)閉中斷源的請求。v只有中斷屏蔽觸發(fā)器設(shè)置為只有中斷屏蔽觸發(fā)器設(shè)置為“1”1”時,外設(shè)的中斷請求時,外設(shè)的中斷請求信號才能被送到信號才能被送到CPUCPU,如下圖所示。,如下圖所示。1 1、CPUCPU響應(yīng)中斷的條件響應(yīng)中斷的條件第第1010章章 中斷與中斷管理中斷與中斷管理 (3 3)中斷是開放的)中斷是開放的v外部中斷外部中斷是否響應(yīng),還取決于是否響應(yīng),還取決于CPUCPU是允許中斷還是是允許中斷還是禁止中

10、斷。禁止中斷。CPUCPU通過內(nèi)部設(shè)置的一個中斷允許觸發(fā)通過內(nèi)部設(shè)置的一個中斷允許觸發(fā)器(器(標(biāo)志寄存器標(biāo)志寄存器FRFR的的IFIF位位),來開放或關(guān)閉可屏蔽),來開放或關(guān)閉可屏蔽中斷中斷INTRINTR。執(zhí)行執(zhí)行STISTI指令后,指令后,IFIF置置“1”1”,稱為開中斷,允,稱為開中斷,允許許CPUCPU響應(yīng)響應(yīng)INTRINTR請求;請求;執(zhí)行執(zhí)行CLICLI指令后,指令后,IFIF清清“0”0”時,稱為關(guān)中斷,時,稱為關(guān)中斷,禁止禁止CPUCPU響應(yīng)響應(yīng)INTRINTR請求。請求。1 1、CPUCPU響應(yīng)中斷的條件響應(yīng)中斷的條件第第1010章章 中斷與中斷管理中斷與中斷管理 (4 4

11、)CPUCPU在執(zhí)行當(dāng)前指令的最后一個時鐘周期在執(zhí)行當(dāng)前指令的最后一個時鐘周期vCPUCPU在執(zhí)行在執(zhí)行當(dāng)前指令當(dāng)前指令的最后一個時鐘周期才去查詢的最后一個時鐘周期才去查詢INTRINTR引腳。引腳。v若查詢到該引腳信號為高電平,則表示收到有效中若查詢到該引腳信號為高電平,則表示收到有效中斷請求信號。斷請求信號。v在開中斷(即在開中斷(即IFIF1 1)的情況下,)的情況下,CPUCPU在下一個總線在下一個總線周期不進(jìn)入取指周期,而是進(jìn)入中斷響應(yīng)周期處理周期不進(jìn)入取指周期,而是進(jìn)入中斷響應(yīng)周期處理中斷。中斷。1 1、CPUCPU響應(yīng)中斷的條件響應(yīng)中斷的條件第第1010章章 中斷與中斷管理中斷與

12、中斷管理 1 1、CPUCPU響應(yīng)中斷的條件響應(yīng)中斷的條件中斷響應(yīng)、服務(wù)中斷響應(yīng)、服務(wù)及返回流程圖及返回流程圖 第第1010章章 中斷與中斷管理中斷與中斷管理 vCPUCPU進(jìn)入中斷響應(yīng)周期后,自動完成如下操作:進(jìn)入中斷響應(yīng)周期后,自動完成如下操作:(1 1)關(guān)閉中斷關(guān)閉中斷 vFRFR中的中斷標(biāo)志位中的中斷標(biāo)志位IFIF清零;清零;(2 2)保護(hù)斷點保護(hù)斷點v將當(dāng)前將當(dāng)前CSCS和和IPIP的內(nèi)容壓入堆棧保存,以便中斷處理的內(nèi)容壓入堆棧保存,以便中斷處理完畢后能返回被中斷的原程序繼續(xù)執(zhí)行;完畢后能返回被中斷的原程序繼續(xù)執(zhí)行;(3 3)送中斷類型號送中斷類型號v在中斷響應(yīng)周期的第二個總線周期中

13、,由中斷控制在中斷響應(yīng)周期的第二個總線周期中,由中斷控制器給出器給出中斷類型號中斷類型號,CPUCPU根據(jù)根據(jù)中斷類型號中斷類型號獲取中斷獲取中斷服務(wù)子程序的入口地址,并裝入服務(wù)子程序的入口地址,并裝入CSCS與與IPIP;v一旦裝入完畢,中斷服務(wù)程序就開始執(zhí)行。一旦裝入完畢,中斷服務(wù)程序就開始執(zhí)行。 2 2、CPUCPU對中斷的響應(yīng)對中斷的響應(yīng)第第1010章章 中斷與中斷管理中斷與中斷管理 v中斷服務(wù)程序中斷服務(wù)程序,就是為實現(xiàn)中斷源所期望達(dá)到的功能,就是為實現(xiàn)中斷源所期望達(dá)到的功能而編寫的程序。而編寫的程序。v步驟:步驟:(1 1)保護(hù)現(xiàn)場保護(hù)現(xiàn)場 為使中斷處理程序不破壞主程序中寄存器的內(nèi)

14、容,應(yīng)先將斷為使中斷處理程序不破壞主程序中寄存器的內(nèi)容,應(yīng)先將斷點處各寄存器的內(nèi)容壓入堆棧保護(hù)起來;點處各寄存器的內(nèi)容壓入堆棧保護(hù)起來;(2 2)中斷服務(wù)中斷服務(wù)不同的中斷請求,有各自不同的中斷服務(wù)內(nèi)容;不同的中斷請求,有各自不同的中斷服務(wù)內(nèi)容;需要根據(jù)中斷源所要完成的功能,事先編寫相應(yīng)的中斷服務(wù)需要根據(jù)中斷源所要完成的功能,事先編寫相應(yīng)的中斷服務(wù)程序存入內(nèi)存;程序存入內(nèi)存;(3 3)恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場中斷處理完后,恢復(fù)主程序斷點處各寄存器的內(nèi)容。中斷處理完后,恢復(fù)主程序斷點處各寄存器的內(nèi)容。 3 3、CPUCPU對中斷的處理對中斷的處理第第1010章章 中斷與中斷管理中斷與中斷管理 v在中斷服

15、務(wù)子程序的最后,要開中斷(在中斷服務(wù)子程序的最后,要開中斷(CPUCPU能能響應(yīng)新的中斷請求)并安排一條中斷返回指令響應(yīng)新的中斷請求)并安排一條中斷返回指令I(lǐng)RETIRET。v執(zhí)行指令執(zhí)行指令I(lǐng)RETIRET后,之前壓入堆棧的斷點值及程后,之前壓入堆棧的斷點值及程序狀態(tài)字彈回到序狀態(tài)字彈回到CSCS、IPIP及及FLAGSFLAGS中,中,CPUCPU繼續(xù)執(zhí)繼續(xù)執(zhí)行主程序。行主程序。 4 4、中斷的返回、中斷的返回第第1010章章 中斷與中斷管理中斷與中斷管理 10.1.4 10.1.4 中斷源識別及優(yōu)先權(quán)判斷中斷源識別及優(yōu)先權(quán)判斷1 1、中斷源識別中斷源識別v原因:原因: 當(dāng)系統(tǒng)中有多個中斷

16、源時,一旦發(fā)生中斷,當(dāng)系統(tǒng)中有多個中斷源時,一旦發(fā)生中斷,CPUCPU需確定是哪一個中斷源提出了中斷請求。需確定是哪一個中斷源提出了中斷請求。 v任務(wù):任務(wù): 確定該響應(yīng)的是哪個中斷源;確定該響應(yīng)的是哪個中斷源; 找到該中斷服務(wù)程序的入口地址。找到該中斷服務(wù)程序的入口地址。 第第1010章章 中斷與中斷管理中斷與中斷管理 1 1、中斷源識別的方法、中斷源識別的方法(1 1)軟件查詢法軟件查詢法 v 任一中斷請求,都可向任一中斷請求,都可向CPUCPU發(fā)出發(fā)出INTRINTR信號;信號;v 將中斷請求信號相將中斷請求信號相“或或”后,作為后,作為INTRINTR信號。信號。第第1010章章 中斷

17、與中斷管理中斷與中斷管理 (1 1)軟件查詢法軟件查詢法v優(yōu)點優(yōu)點 硬件電路簡單,無需優(yōu)先權(quán)的硬件排隊電硬件電路簡單,無需優(yōu)先權(quán)的硬件排隊電路,可隨時修改優(yōu)先級(改變查詢的先后路,可隨時修改優(yōu)先級(改變查詢的先后順序);順序);v缺點缺點 軟件查詢由詢問轉(zhuǎn)至相應(yīng)中斷服務(wù)程序入軟件查詢由詢問轉(zhuǎn)至相應(yīng)中斷服務(wù)程序入口時間長,尤其在中斷源較多的情況下,口時間長,尤其在中斷源較多的情況下,中斷響應(yīng)的實時性受到影響。中斷響應(yīng)的實時性受到影響。1 1、中斷源識別的方法、中斷源識別的方法第第1010章章 中斷與中斷管理中斷與中斷管理 1 1、中斷源識別、中斷源識別(2 2)中斷向量法中斷向量法v通過硬件控制

18、電路形成一個供通過硬件控制電路形成一個供CPUCPU識別中斷識別中斷源的中斷向量號,并由此中斷向量號實現(xiàn)中源的中斷向量號,并由此中斷向量號實現(xiàn)中斷響應(yīng)。斷響應(yīng)。第第1010章章 中斷與中斷管理中斷與中斷管理 (2 2)中斷向量法中斷向量法v優(yōu)點優(yōu)點 CPUCPU可直接通過中斷向量表轉(zhuǎn)向相應(yīng)的處理程可直接通過中斷向量表轉(zhuǎn)向相應(yīng)的處理程序,不需要序,不需要CPUCPU去逐個檢測和確定中斷源,因去逐個檢測和確定中斷源,因此大大加快了中斷響應(yīng)的速度。此大大加快了中斷響應(yīng)的速度。 1 1、中斷源識別的方法、中斷源識別的方法第第1010章章 中斷與中斷管理中斷與中斷管理 v 系統(tǒng)按任務(wù)的輕重緩急,為每個中

19、斷源進(jìn)行排系統(tǒng)按任務(wù)的輕重緩急,為每個中斷源進(jìn)行排隊,并給出順序編號,稱為隊,并給出順序編號,稱為中斷優(yōu)先級中斷優(yōu)先級。v 可事先給各中斷源安排一個中斷優(yōu)先級次序,可事先給各中斷源安排一個中斷優(yōu)先級次序,當(dāng)多個中斷源同時申請時,按優(yōu)先級從高到低當(dāng)多個中斷源同時申請時,按優(yōu)先級從高到低的次序來處理,選中當(dāng)前優(yōu)先級最高的中斷進(jìn)的次序來處理,選中當(dāng)前優(yōu)先級最高的中斷進(jìn)行處理,這個過程稱為行處理,這個過程稱為中斷優(yōu)先級判優(yōu)中斷優(yōu)先級判優(yōu)。v 在一般情況下,系統(tǒng)的內(nèi)部中斷優(yōu)先于外部中在一般情況下,系統(tǒng)的內(nèi)部中斷優(yōu)先于外部中斷,不可屏蔽中斷優(yōu)先于可屏蔽中斷。斷,不可屏蔽中斷優(yōu)先于可屏蔽中斷。v 中斷源的優(yōu)

20、先級判優(yōu)可以通過中斷源的優(yōu)先級判優(yōu)可以通過軟件查詢軟件查詢方式和方式和硬件排隊電路硬件排隊電路兩種方法實現(xiàn)。兩種方法實現(xiàn)。2 2、 中斷優(yōu)先權(quán)中斷優(yōu)先權(quán)第第1010章章 中斷與中斷管理中斷與中斷管理 (1 1) 軟件查詢方式軟件查詢方式v基本原理基本原理 當(dāng)當(dāng)CPUCPU接收到中斷請求信接收到中斷請求信號后,執(zhí)行優(yōu)先級判優(yōu)的號后,執(zhí)行優(yōu)先級判優(yōu)的查詢程序,逐個檢測外設(shè)查詢程序,逐個檢測外設(shè)中斷請求標(biāo)志位的狀態(tài);中斷請求標(biāo)志位的狀態(tài); 檢測的順序:優(yōu)先級的高檢測的順序:優(yōu)先級的高低;低; 最先檢測到的中斷源具有最先檢測到的中斷源具有最高的優(yōu)先級;最高的優(yōu)先級; 最后檢測到的中斷源具有最后檢測到的

21、中斷源具有最低的優(yōu)先級。最低的優(yōu)先級。第第1010章章 中斷與中斷管理中斷與中斷管理 v 優(yōu)點優(yōu)點硬件電路簡單,無需優(yōu)先權(quán)硬件排隊硬件電路簡單,無需優(yōu)先權(quán)硬件排隊電路,可以通過修改程序的方法隨時電路,可以通過修改程序的方法隨時修改優(yōu)先級;修改優(yōu)先級;v 缺點缺點軟件查詢影響中斷響應(yīng)的實時性。軟件查詢影響中斷響應(yīng)的實時性。 (1 1) 軟件查詢方式軟件查詢方式第第1010章章 中斷與中斷管理中斷與中斷管理 v 硬件優(yōu)先權(quán)排隊電路是專門的硬件電路;硬件優(yōu)先權(quán)排隊電路是專門的硬件電路;v 優(yōu)點優(yōu)點節(jié)省節(jié)省CPUCPU的時間,而且中斷響應(yīng)較快;的時間,而且中斷響應(yīng)較快;v 缺點缺點成本比較高。成本比較

22、高。v 菊花鏈菊花鏈(或稱鏈?zhǔn)剑﹥?yōu)先權(quán)排隊電路(或稱鏈?zhǔn)剑﹥?yōu)先權(quán)排隊電路在每個中斷源的電路中設(shè)置一個菊花鏈邏輯電路在每個中斷源的電路中設(shè)置一個菊花鏈邏輯電路當(dāng)某設(shè)備有中斷請求時,會向當(dāng)某設(shè)備有中斷請求時,會向CPUCPU發(fā)送中斷請求發(fā)送中斷請求信號信號若若CPUCPU允許中斷,則允許中斷,則CPUCPU發(fā)出中斷響應(yīng)信號信號在發(fā)出中斷響應(yīng)信號信號在菊花鏈中傳遞菊花鏈中傳遞如果某設(shè)備沒有中斷請求,則信號通過菊花鏈邏如果某設(shè)備沒有中斷請求,則信號通過菊花鏈邏輯電路繼續(xù)往下一級傳遞。輯電路繼續(xù)往下一級傳遞。 (2 2) 硬件優(yōu)先權(quán)排隊電路硬件優(yōu)先權(quán)排隊電路第第1010章章 中斷與中斷管理中斷與中斷管理

23、 vIntel 80X86Intel 80X86系列微機(jī)有一個靈活的中斷系統(tǒng),可系列微機(jī)有一個靈活的中斷系統(tǒng),可以處理以處理256256種中斷源,每個中斷源都有對應(yīng)的中斷種中斷源,每個中斷源都有對應(yīng)的中斷類型號(類型號(0 0255D255D)供)供CPUCPU識別。識別。10.2 808610.2 8086的中斷系統(tǒng)的中斷系統(tǒng)第第1010章章 中斷與中斷管理中斷與中斷管理 1 1、外部中斷外部中斷v 外部中斷是指由外部設(shè)備通過硬件請求外部中斷是指由外部設(shè)備通過硬件請求的方式產(chǎn)生的中斷;的方式產(chǎn)生的中斷;v 外部中斷也稱為外部中斷也稱為硬件中斷硬件中斷。v 外部中斷可分為:外部中斷可分為:非屏

24、蔽中斷非屏蔽中斷可屏蔽中斷可屏蔽中斷10.2.1 808610.2.1 8086的中斷類型的中斷類型第第1010章章 中斷與中斷管理中斷與中斷管理 (1 1)非屏蔽中斷)非屏蔽中斷NMINMIv當(dāng)外設(shè)向當(dāng)外設(shè)向CPUCPU提出中斷請求時,提出中斷請求時,CPUCPU在當(dāng)前指令執(zhí)行在當(dāng)前指令執(zhí)行結(jié)束后,就立即無條件的予以響應(yīng),這樣的中斷就結(jié)束后,就立即無條件的予以響應(yīng),這樣的中斷就是是非屏蔽中斷非屏蔽中斷。v由由CPUCPU的的NMINMI引腳引入,引腳引入,NMINMI上升沿時觸發(fā),維持上升沿時觸發(fā),維持2 2個個T T高電平。高電平。v不受中斷允許標(biāo)志不受中斷允許標(biāo)志IFIF的影響;的影響;

25、v中斷類型號固定為中斷類型號固定為2 2;v在外部中斷源中優(yōu)先級最高;在外部中斷源中優(yōu)先級最高;v主要用于處理系統(tǒng)的意外或故障,如:電源掉電、主要用于處理系統(tǒng)的意外或故障,如:電源掉電、存儲器讀存儲器讀/ /寫錯誤等。寫錯誤等。 第第1010章章 中斷與中斷管理中斷與中斷管理 (2 2)可屏蔽中斷)可屏蔽中斷INTRINTRv 受受CPUCPU中斷允許標(biāo)志位中斷允許標(biāo)志位IFIF的控制:的控制:IFIF=1=1時,時,CPUCPU響應(yīng)中斷請求;響應(yīng)中斷請求;IFIF=0=0時,時,CPUCPU屏蔽中斷請求,不予響應(yīng);屏蔽中斷請求,不予響應(yīng);v 由由CPUCPU的的INTRINTR引腳引入,高電

26、平有效。引腳引入,高電平有效。v 中斷類型號由中斷請求的設(shè)備提供。中斷類型號由中斷請求的設(shè)備提供。第第1010章章 中斷與中斷管理中斷與中斷管理 2 2、內(nèi)部中斷、內(nèi)部中斷v 內(nèi)部中斷內(nèi)部中斷是由是由CPUCPU運(yùn)行程序異?;驁?zhí)行內(nèi)部運(yùn)行程序異常或執(zhí)行內(nèi)部程序調(diào)用引起的一種中斷;程序調(diào)用引起的一種中斷;v 內(nèi)部中斷內(nèi)部中斷也稱為也稱為軟件中斷。軟件中斷。v 不受不受IFIF影響。影響。v 中斷類型號由指令提供。中斷類型號由指令提供。第第1010章章 中斷與中斷管理中斷與中斷管理 2 2、內(nèi)部中斷、內(nèi)部中斷 內(nèi)部中斷有:內(nèi)部中斷有:v除法錯中斷除法錯中斷 執(zhí)行除法指令時,若除數(shù)為執(zhí)行除法指令時,

27、若除數(shù)為0 0或商超過寄存器所能或商超過寄存器所能表達(dá)的范圍,則表達(dá)的范圍,則CPUCPU立即產(chǎn)生一個立即產(chǎn)生一個0 0型中斷。型中斷。 v溢出中斷溢出中斷 如果上一條指令使溢出標(biāo)志位如果上一條指令使溢出標(biāo)志位OFOF為為1 1,則執(zhí)行,則執(zhí)行INTOINTO指令產(chǎn)生指令產(chǎn)生4 4型中斷。型中斷。 vINT nINT n指令中斷指令中斷 80868086的指令系統(tǒng)中有一條的指令系統(tǒng)中有一條INT nINT n指令,執(zhí)行這條指指令,執(zhí)行這條指令就會立即產(chǎn)生中斷。令就會立即產(chǎn)生中斷。第第1010章章 中斷與中斷管理中斷與中斷管理 2 2、內(nèi)部中斷、內(nèi)部中斷 v單步中斷單步中斷 當(dāng)單步標(biāo)志(陷阱標(biāo)志

28、)當(dāng)單步標(biāo)志(陷阱標(biāo)志)TFTF置置“1”1”時,時,80 x8680 x86處處于單步工作方式。在單步工作時,每執(zhí)行完一條于單步工作方式。在單步工作時,每執(zhí)行完一條指令,指令,CPUCPU自動產(chǎn)生中斷類型號為自動產(chǎn)生中斷類型號為1 1的中斷。的中斷。v斷點中斷斷點中斷 斷點中斷是斷點中斷是80 x8680 x86提供的一種調(diào)試程序的手段。用提供的一種調(diào)試程序的手段。用于設(shè)置程序中的斷點,中斷類型號為于設(shè)置程序中的斷點,中斷類型號為3 3。第第1010章章 中斷與中斷管理中斷與中斷管理 中斷優(yōu)先級中斷優(yōu)先級由高到低分別為:由高到低分別為:v 除法錯、除法錯、INT nINT n指令、溢出、斷點

29、中斷指令、溢出、斷點中斷v 非屏蔽中斷非屏蔽中斷NMINMIv 可屏蔽中斷可屏蔽中斷INTRINTRv 單步中斷單步中斷第第1010章章 中斷與中斷管理中斷與中斷管理 1 1、中斷向量表的概念、中斷向量表的概念(1 1)中斷類型號)中斷類型號在在80868086系統(tǒng)中,共設(shè)有系統(tǒng)中,共設(shè)有256256類中斷,每類中斷,每類中斷分配到一個類中斷分配到一個8 8位的編號,這個編位的編號,這個編號就叫做中斷類型號。號就叫做中斷類型號。中斷類型號的范圍:中斷類型號的范圍: 0000FFHFFH(0 0255D255D)10.2.2 10.2.2 中斷向量和中斷向量表中斷向量和中斷向量表第第1010章章

30、 中斷與中斷管理中斷與中斷管理 v 需要響應(yīng)的每一類中斷都編寫有相應(yīng)的中需要響應(yīng)的每一類中斷都編寫有相應(yīng)的中斷服務(wù)程序,并預(yù)先裝入內(nèi)存,斷服務(wù)程序,并預(yù)先裝入內(nèi)存,中斷服務(wù)中斷服務(wù)程序在內(nèi)存中的入口地址程序在內(nèi)存中的入口地址叫中斷向量。叫中斷向量。v 每個中斷類型對應(yīng)一個中斷向量。每個中斷類型對應(yīng)一個中斷向量。v 中斷向量的字長是中斷向量的字長是4 4個字節(jié)個字節(jié)2 2個字節(jié)的段地址個字節(jié)的段地址2 2個字節(jié)的偏移地址個字節(jié)的偏移地址(2 2)中斷向量)中斷向量第第1010章章 中斷與中斷管理中斷與中斷管理 v 把系統(tǒng)中所有的中斷向量集中起來放到存儲器把系統(tǒng)中所有的中斷向量集中起來放到存儲器的

31、某一區(qū)域內(nèi),的某一區(qū)域內(nèi),這個存放中斷向量的存儲區(qū)這個存放中斷向量的存儲區(qū)就就叫中斷向量表或中斷服務(wù)程序入口地址表。叫中斷向量表或中斷服務(wù)程序入口地址表。v 80868086系統(tǒng)把中斷向量表安排在內(nèi)存地址系統(tǒng)把中斷向量表安排在內(nèi)存地址00000H00000H003FFH003FFH區(qū)域(區(qū)域(1K1K)。)。v 每四個連續(xù)字節(jié)每四個連續(xù)字節(jié)存放一個中斷向量,存放一個中斷向量,高地址高地址2 2個字節(jié)單元放段地址(個字節(jié)單元放段地址(CSCS)低地址低地址2 2個字節(jié)單元中放偏移地址個字節(jié)單元中放偏移地址(IP)(IP)。(3 3)中斷向量表)中斷向量表第第1010章章 中斷與中斷管理中斷與中斷

32、管理 v 為了便于在中斷向量表中找到中斷向量,通為了便于在中斷向量表中找到中斷向量,通常設(shè)置一種指針,來指出中斷向量存放在中常設(shè)置一種指針,來指出中斷向量存放在中斷向量表的具體位置;斷向量表的具體位置;v 存放中斷向量的存放中斷向量的4 4個存儲單元的個存儲單元的最低地址最低地址稱稱為向量表地址指針。為向量表地址指針。v 計算方法:計算方法: 中斷類型號中斷類型號4 4(4 4)中斷向量表地址指針)中斷向量表地址指針第第1010章章 中斷與中斷管理中斷與中斷管理 v 如果已知一個中斷類型號,則通過兩次地址轉(zhuǎn)如果已知一個中斷類型號,則通過兩次地址轉(zhuǎn)換(換(中斷類型號到中斷向量表地址;中斷向量中斷

33、類型號到中斷向量表地址;中斷向量表地址到中斷處理程序入口地址表地址到中斷處理程序入口地址)后,可到達(dá))后,可到達(dá)中斷服務(wù)程序。中斷服務(wù)程序。 (4 4)中斷向量表地址指針)中斷向量表地址指針第第1010章章 中斷與中斷管理中斷與中斷管理 v在在80868086系統(tǒng)中各種中斷的響應(yīng)和處理過程是不完全相系統(tǒng)中各種中斷的響應(yīng)和處理過程是不完全相同的,主要區(qū)別還在于同的,主要區(qū)別還在于如何獲取相應(yīng)的中斷類型號如何獲取相應(yīng)的中斷類型號。1 1、順序查詢、順序查詢(1 1)中斷源識別)中斷源識別vCPUCPU在當(dāng)前指令執(zhí)行完后,按內(nèi)部中斷(除法出錯、在當(dāng)前指令執(zhí)行完后,按內(nèi)部中斷(除法出錯、INT nIN

34、T n、斷點中斷、溢出中斷)、斷點中斷、溢出中斷)、NMINMI、INTRINTR、單步中、單步中斷的順序來逐個查詢是否有中斷請求,對于斷的順序來逐個查詢是否有中斷請求,對于INTRINTR還要還要判斷判斷CPUCPU是否允許中斷(是否允許中斷(IF=1IF=1)。)。(2 2)80868086的中斷優(yōu)先級的中斷優(yōu)先級vCPUCPU檢測的順序是按優(yōu)先級的高低來進(jìn)行的,最先檢測檢測的順序是按優(yōu)先級的高低來進(jìn)行的,最先檢測到的中斷源具有最高的優(yōu)先級,最后檢測到的中斷源到的中斷源具有最高的優(yōu)先級,最后檢測到的中斷源具有最低的優(yōu)先級。具有最低的優(yōu)先級。10.2.3 808610.2.3 8086中的中

35、斷響應(yīng)和處理過程中的中斷響應(yīng)和處理過程第第1010章章 中斷與中斷管理中斷與中斷管理 v當(dāng)當(dāng)內(nèi)部中斷內(nèi)部中斷發(fā)生時,是按預(yù)定方式得到中斷類型號(發(fā)生時,是按預(yù)定方式得到中斷類型號(專用中斷:專用中斷:0 0、1 1、3 3、4 4)v在用在用軟件中斷指令軟件中斷指令I(lǐng)NT nINT n時,中斷指令本身就為時,中斷指令本身就為CPUCPU提提供了中斷類型號供了中斷類型號n n。v非屏蔽中斷非屏蔽中斷類型號固定是類型號固定是2 2。v可屏蔽的中斷可屏蔽的中斷由請求中斷的設(shè)備提供中斷類型號。由請求中斷的設(shè)備提供中斷類型號。2 2、形成中斷類型號、形成中斷類型號第第1010章章 中斷與中斷管理中斷與中

36、斷管理 v斷點保護(hù)斷點保護(hù)。將標(biāo)志寄存器(。將標(biāo)志寄存器(PSWPSW)、當(dāng)前段寄存器()、當(dāng)前段寄存器(CSCS)及指令指針()及指令指針(IPIP)內(nèi)容壓入堆棧。)內(nèi)容壓入堆棧。 v關(guān)閉中斷,并清除關(guān)閉中斷,并清除IFIF及及TFTF位(位(IF0IF0,TF0TF0),),以便以便禁止響應(yīng)可屏蔽中斷或單步中斷。禁止響應(yīng)可屏蔽中斷或單步中斷。v將取得的將取得的中斷類型號乘中斷類型號乘4 4,到中斷向量表中取中斷向量,到中斷向量表中取中斷向量(中斷處理程序的入口地址),其中高(中斷處理程序的入口地址),其中高2 2字節(jié)段地址送字節(jié)段地址送到到CSCS中,低中,低2 2字節(jié)偏移地址送入字節(jié)偏移

37、地址送入IPIP中。一旦中斷處理程中。一旦中斷處理程序的入口地址置入序的入口地址置入IPIP及及CSCS中,程序就被轉(zhuǎn)入并開始執(zhí)中,程序就被轉(zhuǎn)入并開始執(zhí)行中斷處理程序。行中斷處理程序。v中斷服務(wù)程序一般包括:保護(hù)現(xiàn)場、中斷服務(wù)、恢復(fù)中斷服務(wù)程序一般包括:保護(hù)現(xiàn)場、中斷服務(wù)、恢復(fù)現(xiàn)場等部分。同時,為了能夠處理多重中斷,還可在現(xiàn)場等部分。同時,為了能夠處理多重中斷,還可在中斷處理程序的適當(dāng)?shù)胤郊尤腴_中斷指令(中斷處理程序的適當(dāng)?shù)胤郊尤腴_中斷指令(STISTI)。)。3 3、中斷處理、中斷處理第第1010章章 中斷與中斷管理中斷與中斷管理 v中斷服務(wù)程序執(zhí)行完畢,最后執(zhí)行一條中斷返回指中斷服務(wù)程序執(zhí)

38、行完畢,最后執(zhí)行一條中斷返回指令令I(lǐng)RETIRET,將壓入堆棧的原標(biāo)志寄存器內(nèi)容及斷點地,將壓入堆棧的原標(biāo)志寄存器內(nèi)容及斷點地址彈出,繼續(xù)執(zhí)行原程序。址彈出,繼續(xù)執(zhí)行原程序。 4 4、中斷返回、中斷返回第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 1 1、ADC0808/0809ADC0808/0809的內(nèi)部結(jié)構(gòu)及引腳的內(nèi)部結(jié)構(gòu)及引腳 v ADC0809ADC0809是是CMOSCMOS工藝制作的工藝制作的8 8位位A/DA/D轉(zhuǎn)換器;轉(zhuǎn)換器;v 包含有一個包含有一個8 8通道的多路模擬開關(guān)和尋址邏輯,通道的多路模擬開關(guān)和尋址邏輯,可接入可接入8 8個模擬輸入電壓并對

39、其進(jìn)行分時轉(zhuǎn)換;個模擬輸入電壓并對其進(jìn)行分時轉(zhuǎn)換;v 其數(shù)字輸出部分,分辨率為其數(shù)字輸出部分,分辨率為8 8位。位。v 具有三態(tài)鎖存和緩沖能力,可直接與微處理器具有三態(tài)鎖存和緩沖能力,可直接與微處理器的總線相連。的總線相連。v 轉(zhuǎn)換時間為轉(zhuǎn)換時間為200s200s,工作溫度范圍為,工作溫度范圍為40 40 +85+85,功耗為,功耗為15mw15mw,輸入模擬電壓范圍為,輸入模擬電壓范圍為0 05V5V,采用,采用5V5V電源供電。電源供電。第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 1 1、ADC0808/0809ADC0808/0809的內(nèi)部結(jié)構(gòu)及引腳的內(nèi)部結(jié)構(gòu)

40、及引腳 (1 1) ADC0808/0809ADC0808/0809的內(nèi)部結(jié)構(gòu):的內(nèi)部結(jié)構(gòu): 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明IN0IN78路模擬路模擬電壓輸入電壓輸入 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明ADD3個引腳分別為:個引腳分別為:ADDA/ADDB/ADDC8路模擬電壓輸入路模擬電壓輸入的選擇的選擇譯碼后選擇譯碼后選擇8路模路模擬電壓輸入中的一路擬電壓輸入中的一路進(jìn)行轉(zhuǎn)換進(jìn)行轉(zhuǎn)換第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (

41、2)(2)引腳說明引腳說明ADDCADDBADDA模擬輸入通道模擬輸入通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明ALE地址鎖存允許信號地址鎖存允許信號控制通道選擇開關(guān)控制通道選擇開關(guān)的打開與閉合的打開與閉合ALE=1時接通時接通某一路的模擬某一路的模擬信號信號ALE=0時,鎖時,鎖存該路的模擬存該路的模擬信號信號 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明D0D78位數(shù)字量輸出位數(shù)

42、字量輸出 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明START轉(zhuǎn)換啟動信號轉(zhuǎn)換啟動信號寬度大于寬度大于200ns上升沿清除逐次逼上升沿清除逐次逼近寄存器近寄存器SAR下降沿啟動下降沿啟動ADC轉(zhuǎn)換轉(zhuǎn)換 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明CLOCK時鐘脈沖輸入時鐘脈沖輸入頻率范圍為頻率范圍為10KHz1MHz典型值為典型值為640KHZ第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明EOC轉(zhuǎn)換結(jié)束信號轉(zhuǎn)換結(jié)束信號輸出輸出上

43、升沿有效上升沿有效第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明OECPU允許輸出信號允許輸出信號打開三態(tài)輸出鎖存打開三態(tài)輸出鎖存器的門,把轉(zhuǎn)換結(jié)果器的門,把轉(zhuǎn)換結(jié)果送到數(shù)據(jù)總線上送到數(shù)據(jù)總線上 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 (2)(2)引腳說明引腳說明VREF(+) 參考電壓輸入?yún)⒖茧妷狠斎隩形電阻網(wǎng)絡(luò)用形電阻網(wǎng)絡(luò)用通常接通常接Vcc VREF(-) 參考電壓輸入?yún)⒖茧妷狠斎隩形電阻網(wǎng)絡(luò)用形電阻網(wǎng)絡(luò)用通常接地通常接地 第第1111章章 數(shù)數(shù)/ /模與模模與模/ /數(shù)轉(zhuǎn)換及應(yīng)用數(shù)轉(zhuǎn)換及應(yīng)用 2 2、ADC0809ADC0809的工作過程和時序分析的工作過程和時序分析 v 工作過程:工作過程: 由由ADDADDA A、ADDADDB B、ADDADDC C三位決定選擇哪一路模擬信號;三位決定選擇哪一路模擬信號; ALEALE=1=1,該路模擬信號經(jīng)選擇開關(guān)到達(dá)比較器的輸入端。,該路模擬信號經(jīng)選擇開關(guān)到達(dá)比較器的輸入端。 轉(zhuǎn)換啟動信號轉(zhuǎn)換啟動信號STARTSTART緊隨緊隨ALEALE之后(或與之后(或與ALEALE同時)出現(xiàn),同時)出現(xiàn),STARTSTART的上升沿將逐次逼近寄存器復(fù)位,下降沿啟動的上升沿將逐次

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論