版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第八章 中斷系統(tǒng)和DMA8.1 中斷系統(tǒng)概述8.2 中斷控制器8259A8.1 中斷系統(tǒng)概述中斷、中斷源中斷處理過程中斷優(yōu)先級8.1.1 中斷及中斷源中斷的概念中斷:CPU收到外部請求時(shí)停止當(dāng)前任務(wù),轉(zhuǎn)而執(zhí)行外設(shè)任務(wù),完成后繼續(xù)執(zhí)行被打斷的任務(wù)中斷及中斷源中斷源:引起中斷的事件斷點(diǎn):主程序被打斷的位置中斷服務(wù)程序 :中斷源的響應(yīng)和處理函數(shù)斷點(diǎn)中斷源中斷服務(wù)程序中斷源中斷的用途響應(yīng)外部事件:掉電,除零,報(bào)警等實(shí)時(shí)多任務(wù)調(diào)度:加快響應(yīng)速度CPU與外設(shè)并行處理:提高CPU利用率分時(shí)系統(tǒng)基礎(chǔ):時(shí)鐘中斷驅(qū)動的操作系統(tǒng)8.1.2 中斷處理過程中斷請求優(yōu)先級判別中斷響應(yīng)保存現(xiàn)場 中斷服務(wù)恢復(fù)現(xiàn)場中斷返回1.
2、中斷請求概念:外部設(shè)備需要CPU資源時(shí),產(chǎn)生一個中斷信號發(fā)送到CPU的中斷輸入引腳。原理:每個中斷源對應(yīng)一個中斷請求標(biāo)志位,由中斷請求寄存器鎖存。中斷請求信號需要保持到CPU對其進(jìn)行中斷響應(yīng)后才能撤銷。 2. 優(yōu)先級判別多個中斷源同時(shí)發(fā)起中斷請求時(shí),CPU需要對多個中斷源的優(yōu)先級進(jìn)行判斷,響應(yīng)最緊急的中斷請求。中斷源的優(yōu)先級需要根據(jù)中斷源的緊迫性、重要性以及外設(shè)處理速度等進(jìn)行綜合考慮不可屏蔽中斷發(fā)生,優(yōu)先響應(yīng)不可屏蔽中斷。 3. 中斷響應(yīng)對于內(nèi)部中斷,CPU通過判斷中斷源自動跳轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序入口地址,執(zhí)行中斷服務(wù)子程序。對于外部中斷,CPU判斷標(biāo)志位IF,若CPU允許響應(yīng)外部中斷(IF
3、=1),向發(fā)出中斷請求的外設(shè)返回一個中斷應(yīng)答信號,否則CPU不響應(yīng)該中斷請求。 4. 保存現(xiàn)場CPU響應(yīng)中斷,首先需要禁止CPU響應(yīng)中斷信號,并保存中斷返回地址以及其它可能被破壞的寄存器8086/8088 CPU的基本中斷現(xiàn)場保護(hù)需要將CS寄存器和IP寄存器壓入堆棧5. 執(zhí)行中斷CPU通過中斷號確定進(jìn)入哪個中斷處理進(jìn)入中斷處理程序,可以允許CPU響應(yīng)其它中斷8086/8088處理器通過裝入CS和IP寄存器實(shí)現(xiàn)中斷服務(wù)程序跳轉(zhuǎn)6. 恢復(fù)現(xiàn)場CPU關(guān)閉中斷響應(yīng) 將保存在堆棧中的所有寄存器內(nèi)容彈出,恢復(fù)到中斷前的寄存器原值7.返回8086/8088處理器通過IRET指令從中斷狀態(tài)返回。IRET指令將
4、自動恢復(fù)先前保存的IP和CS值以及標(biāo)志寄存器FR或EFR的值,從而跳轉(zhuǎn)到主程序斷點(diǎn)地址。返回之后,CPU自動打開中斷允許響應(yīng)其它中斷請求。 8.1.3 中斷的優(yōu)先級原因:中斷處理的重要程度和時(shí)延要求不同含義:按照中斷源的重要程度為每個中斷源分配不同的優(yōu)先級,并以優(yōu)先級大小進(jìn)行排序,確定多個中斷源請求時(shí)對不同中斷源的服務(wù)次序,稱之為中斷優(yōu)先級。工作原理:多個中斷源同時(shí)向CPU請求中斷時(shí),選擇當(dāng)前優(yōu)先級最高的中斷進(jìn)行處理。規(guī)則:優(yōu)先級可以是固定的,也可以動態(tài)調(diào)整8.2 中斷控制器8259A 8259A的主要功能 8259A的結(jié)構(gòu)及引腳功能 8259A的工作方式 8259A的初始化命令字 8259A
5、的初始化編程1. 8259A的主要功能中斷控制器的功能:在多個中端源的系統(tǒng)中,接收外部中斷請求并判斷,選擇優(yōu)先級最高的外部中斷請求,向CPU發(fā)起中斷請求信號。使用中斷控制器的原因:CPU的中斷管腳太少(8086/8088兩根中斷管腳:INTR和NMI);中斷控制方式比較單一(屏蔽、優(yōu)先級管理、嵌套等)1. 8259A的主要功能每片8259A可管理8級優(yōu)先權(quán)中斷源,通過級聯(lián),最多可管理64級優(yōu)先權(quán)的中斷源。對任何一級中斷源都可單獨(dú)進(jìn)行屏蔽。向CPU提供可編程的標(biāo)識碼(中斷號),為不能提供中斷號的外設(shè)提供中斷管理。具有五種中斷優(yōu)先權(quán)管理方式:完全嵌套方式、自動循環(huán)方式、特殊循環(huán)方式、特殊屏蔽方式和
6、查詢方式可編程,提高中斷優(yōu)先管理的靈活性。 2. 8259A外部結(jié)構(gòu)8259A的內(nèi)部結(jié)構(gòu) 8259A的內(nèi)部結(jié)構(gòu)框圖 其內(nèi)部各組成模塊有如下功能: (1) 中斷請求寄存器IRR 8259A有8條外部中斷請求輸入信號線IR0-IR7,每一條請求線上有一個相應(yīng)的觸發(fā)器來保存請求信號,當(dāng)?shù)趇個IR端有中斷請求時(shí),IRR中的相應(yīng)位置“1”;當(dāng)中斷請求響應(yīng)時(shí),IRR中的相應(yīng)位置“0”。(2)中斷屏蔽寄存器IMR IMR(Interrupt Mask Register)用來存放屏蔽位信息,IMR的每一位可以禁止IRR中對應(yīng)位的中斷請求輸入信號進(jìn)入。如果屏蔽優(yōu)先權(quán)級別較高的中斷請求輸入時(shí),不會影響到優(yōu)先級較低
7、的中斷請求輸入。 (3)優(yōu)先權(quán)判決電路 它在中斷響應(yīng)期間,根據(jù)控制邏輯規(guī)定的優(yōu)先權(quán)級別和中斷屏蔽寄存器IMR的內(nèi)容,把中斷請求寄存器IRR中允許中斷的優(yōu)先權(quán)最高的中斷請求位送入中斷服務(wù)寄存器ISR。(4)中斷服務(wù)寄存器ISR ISR存放當(dāng)前正在進(jìn)行服務(wù)的所有中斷。ISR中相應(yīng)位的置位是由優(yōu)先權(quán)判決電路根據(jù)IRR中各請求位的優(yōu)先權(quán)級別和IMR中屏蔽位的狀態(tài),將中斷的最高優(yōu)先級請求位選通到ISR中。 (5) 控制邏輯 當(dāng)有未被屏蔽的高級別的中斷請求時(shí),通過控制邏輯輸出高電平的INT信號,向CPU申請中斷。 當(dāng)CPU允許中斷時(shí),發(fā)出中斷響應(yīng)信號INTA。在中斷響應(yīng)期間,它允許ISR的相應(yīng)位置位,并發(fā)
8、送相應(yīng)的中斷向量,通過數(shù)據(jù)總線緩沖器輸出到總線上。 (6) 數(shù)據(jù)總線緩沖器 這是8位雙向三態(tài)緩沖器,用作8259A與數(shù)據(jù)總線的接口,傳輸命令控制字、狀態(tài)字和中斷向量。 (7)讀/寫控制電路 該部件接收來自CPU的讀/寫命令,實(shí)現(xiàn)對8259A的讀/寫操作。 (8)級聯(lián)緩沖器/比較器 它們實(shí)現(xiàn)8259A芯片之間的級聯(lián),使得中斷源可以由8級擴(kuò)展至64級。3. 8259A的主要工作方式(1)中斷觸發(fā)方式 按照引入中斷請求的方式,8259A有下列幾種工作方式: 1邊沿觸發(fā)方式8259A將中斷請求輸入端出現(xiàn)的上升沿,作為中斷請求信號,上升沿后 相應(yīng)引腳,可以一直保持高電平。 2電平觸發(fā)方式8259A將中斷
9、請求輸入端出現(xiàn)的高電平作為中斷請求信號,在這種方式下,必須注意:中斷響應(yīng)之后,高電平必須及時(shí)撤除,否則,在CPU響應(yīng)中斷,開中斷之后,會引起第二次不應(yīng)該有的中斷。(2)系統(tǒng)總線的連接方式當(dāng)8259A以級聯(lián)方式用在一個大的系統(tǒng)下時(shí),就要求對數(shù)據(jù)總線進(jìn)行驅(qū)動緩沖。系統(tǒng)總線的連接方式就是用來設(shè)定系統(tǒng)總線與8259A數(shù)據(jù)總線之間是否需要進(jìn)行緩沖。 1非緩沖方式 2緩沖方式(3)中斷源的屏蔽方式1普通屏蔽方式8259A的每個中斷請求輸入,都要受到屏蔽寄存器中相應(yīng)位的控制。若相應(yīng)位為“1”,則中斷請求不能送CPU。屏蔽是通過對屏蔽寄存器IMR的編程,來加以設(shè)置和改變的。2特殊屏蔽方式有些場合下,臨時(shí)改變中
10、斷優(yōu)先級順序,允許級別低的事件中斷級別高的事件,引入了對中斷的特殊屏蔽方式。需要編程設(shè)置特殊屏蔽方式 (4)優(yōu)先權(quán)的管理方式1 普通全嵌套方式這是8259A默認(rèn)的優(yōu)先權(quán)設(shè)置方式,在全嵌套方式下,8259A所管理的8級中斷優(yōu)先權(quán)是固定不變的,其中IR0的中斷優(yōu)先級最高,IR7的中斷優(yōu)先級最低。2特殊全嵌套方式特殊全嵌套方式與全嵌套方式基本相同,所不同的是,當(dāng)CPU處理某一級中斷時(shí),如果有同級中斷請求,那么CPU也會作出響應(yīng),從而形成了對同一級中斷的特殊嵌套。特殊全嵌套方式通常應(yīng)用在有8259A級連的系統(tǒng)中。3優(yōu)先級自動循環(huán)方式即一個中斷源的中斷請求被響應(yīng)之后,其優(yōu)先級自動降為最低。系統(tǒng)啟動時(shí),8
11、級中斷優(yōu)先級默認(rèn)為IR0IR7,這時(shí),剛好IR4發(fā)出了中斷請求,CPU響應(yīng)之后,若8259A工作在優(yōu)先級自動循環(huán)方式下,則中斷優(yōu)先級自動變?yōu)镮R5、IR6、IR7、IR0、IR1、IR2、IR3、IR4。4優(yōu)先級特殊循環(huán)方式優(yōu)先級特殊循環(huán)方式與自動循環(huán)方式相比,只有一點(diǎn)不同,即初始化的優(yōu)先級是由程序控制的,而不是默認(rèn)的IR0IR7。(5)結(jié)束中斷處理的方式分為自動結(jié)束方式(AEOI)和非自動結(jié)束方式(EOI)。非自動結(jié)束方式又可進(jìn)一步分為一般的中斷結(jié)束方式和特殊的中斷結(jié)束方式。 1中斷自動結(jié)束方式(AEOI)這種方式僅適用于只有單片8259A的場合,在這種方式下,系統(tǒng)一旦響應(yīng)中斷,那么CPU在
12、發(fā)第二個INTA脈沖時(shí),就會使中斷響應(yīng)寄存器ISR中相應(yīng)位復(fù)位,CPU可以再次響應(yīng)任何級別的中斷請求。2一般的中斷結(jié)束方式一般的中斷結(jié)束方式適用在全嵌套的情況下,當(dāng)CPU用輸出指令向8259A發(fā)一般中斷中斷結(jié)束命令時(shí),8259A才會使中斷響應(yīng)寄存器ISR中優(yōu)先級別最高的位復(fù)位。 3特殊的中斷結(jié)束方式在循環(huán)優(yōu)先級模式下,系統(tǒng)無法確定哪一級中斷為最后響應(yīng)和處理的中斷,也就是說,CPU無法確定當(dāng)前所處理的是哪級中斷,這時(shí)就要采用特殊的中斷結(jié)束方式。特殊的中斷結(jié)束方式是指在CPU結(jié)束中斷處理之后,向8259A發(fā)送一個特殊的中斷結(jié)束命令,這個特殊的中斷結(jié)束命令,明確指出了中斷響應(yīng)寄存器ISR中需要復(fù)位的
13、位。若中斷控制器8259A工作在優(yōu)先級自動循環(huán)方式下,引腳IR3、IR4、IR6、IR7同時(shí)發(fā)出了中斷請求,請寫出在整個執(zhí)行過程中優(yōu)先級隊(duì)列的變化情況。時(shí)刻0:初始化優(yōu)先級隊(duì)列為IR0、IR1、IR2、IR3、IR4、IR5、IR6、IR7時(shí)刻1:IR3被響應(yīng)執(zhí)行后優(yōu)先級隊(duì)列變?yōu)椋?時(shí)刻2:IR4被響應(yīng)執(zhí)行后優(yōu)先級隊(duì)列變?yōu)椋?時(shí)刻3:IR6被響應(yīng)執(zhí)行后優(yōu)先級隊(duì)列變?yōu)椋簳r(shí)刻4:IR7被響應(yīng)執(zhí)行后優(yōu)先級隊(duì)列變?yōu)椋?.8259A的初始化命令字初始化編程:指系統(tǒng)在上電或復(fù)位后對可編程器件進(jìn)行控制字設(shè)定的一段程序。初始化命令字:一般在系統(tǒng)復(fù)位后的初始化編程中設(shè)置,用于確定8259A的基本工作方式,設(shè)置以
14、后一般保持不變。初始化命令寄存器組包括4個寄存器:ICW1-ICW4由于8259A只有一條地址線A0,所以它只能有兩個端口地址,而8259A有7個命令字,每個命令字要寫入相應(yīng)的寄存器。 為此,采取以下幾點(diǎn)措施: 1)以端口地址區(qū)分 2)把命令字中的某些位作為特征碼來區(qū)分 3)以命令字的寫入順序來區(qū)分在PC/XT中,兩個端口地址分別是:奇地址(A0=1,大地址)和偶地址(A0=0,小地址)。(1)8259A的初始化控制字 初始化控制字ICW(Initialization Control Word)是在計(jì)算機(jī)啟動的過程中設(shè)定完成的,計(jì)算機(jī)啟動起來后,8259A就按初始設(shè)定的狀態(tài)工作。 8259A有
15、四個初始化控制字ICWl、ICW2、ICW3和ICW4,由于8259A只有一根地址線,因此對各個控制字的操作是按照一定的順序并結(jié)合某些數(shù)據(jù)位來進(jìn)行尋址設(shè)置的。(2) 各初始化控制字的功能1ICW1的控制字格式如下圖所示。ICW1的格式A0=0、D4=1:是ICW1的標(biāo)志。只要CPU向8259A發(fā)送一條A0=0和D4=1的命令時(shí),這條命令就被譯碼為對ICW1進(jìn)行操作。它啟動8259A的初始化過程,產(chǎn)生下列動作:清除IMR,把最低優(yōu)先級分配給IR7,把最高優(yōu)先級分配給IR0,將從設(shè)備標(biāo)志置成7,清除特殊屏蔽方式,設(shè)置讀IRR方式。D7-D5:在8080(85)系統(tǒng)中為中斷向量地址位,在8086/8
16、088系統(tǒng)中不用。 LTIM(D3):中斷輸入寄存器的觸發(fā)方式。0為邊沿觸發(fā),中斷輸入信號上升沿時(shí)被識別并送入IRR。1為電平觸發(fā),中斷輸入信號為高電平即可進(jìn)入IRR。這兩種觸發(fā)方式都要求高電平的請求信號在置位IRR相應(yīng)位后一直保持,直到中斷被響應(yīng)為止。ADI(D2):設(shè)定8080(85)方式下中斷向量地址間隔字節(jié)數(shù),1為4字節(jié),0為8字節(jié)。在8086/8088方式下此位不用SNGL(D1):單個器件/級聯(lián)方式指示。1表示系統(tǒng)中只有一個8259A,0表示級聯(lián)方式。IC4(D0):該位用于設(shè)定有無ICW4。1表示使用ICW4,在8086/8088方式下,必須使用ICW4。0表示不用ICW4,此時(shí)
17、ICW4所選擇的全部功能位都置成0。 2ICW2在8086/8088方式下,用于提供8個中斷源的中斷向量碼。ICW2的高5位T7-T3在初始化編程時(shí)設(shè)置,初始化低3位由8259A用中斷源的編號填寫。ICW2的命令字格式如下圖所示。 ICW2的格式 ICW2利用A0=1和初始化的次序來尋址。在8086/8088系統(tǒng)中,初始化控制字ICW2是比較重要的,它確定了8259A外接中斷源的起始中斷向量碼,并實(shí)現(xiàn)了每個中斷源中斷向量碼的自動生成。下面舉例說明中斷向量碼的形成情況。 在初始化編程時(shí)要保持ICW2的低三位為“0”,如設(shè)定ICW2為“11111000”(F8H)。如果某一中斷源IRn有中斷請求,
18、將n填入ICW2的低3位,與高5位共同組成該中斷源的中斷向量碼,如下表所示。中斷向量碼的形成情況表ICW2D7D6D5D4D3D2D1D0中斷向量碼中斷源11111000F8H11111000F8HIR011111001F9HIR111111010FAHIR211111011FBHIR311111100FCHIR411111101FDHIR511111110FEHIR611111111FFHIR7 3ICW3的功能:確定主片和從片的級連狀態(tài),即確定主片的級連位和從片的編碼 ICW3用于8259A的級聯(lián),若系統(tǒng)中只有一片8259A,則不用ICW3;若8259A工作于級聯(lián)方式,則需要用ICW3設(shè)置8259A的狀態(tài)。ICW3的格式用兩片8259A管理中斷,從片INT與主片的IR2連接,主從片的ICW3分別為( )。 A02H和04H B04H和02H C02H和02H D04H和04H答案:B4ICW
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)四年級下班主任工作計(jì)劃范文
- 教師教學(xué)工作計(jì)劃范文五篇
- 三年級上學(xué)期語文教學(xué)計(jì)劃合集5篇
- 心理工作計(jì)劃
- 2022年高中德育工作計(jì)劃
- 高中數(shù)學(xué)教學(xué)工作計(jì)劃模板匯編五篇
- 2022高考滿分作文寫酒
- 銀行主任競聘演講稿三篇
- 下學(xué)期工作計(jì)劃
- 2022國慶節(jié)創(chuàng)意活動方案流程策劃
- 英語演講技巧與實(shí)訓(xùn)學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 智慧水產(chǎn)養(yǎng)殖解決方案10.9
- 《預(yù)防未成年人犯罪》課件(圖文)
- 2024-2030年全球及中國環(huán)境健康與安全(EHS)行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報(bào)告
- 2024年浙江省能源集團(tuán)應(yīng)屆生招聘高頻難、易錯點(diǎn)500題模擬試題附帶答案詳解
- 材料工程管理人員個人年終工作總結(jié)范文
- 黑龍江金融服務(wù)支持中俄貿(mào)易的現(xiàn)狀、不足和展望
- 福建省公路水運(yùn)工程試驗(yàn)檢測費(fèi)用參考指標(biāo)
- (小學(xué)組)全國版圖知識競賽考試題含答案
- 四種“類碰撞”典型模型研究(講義)(解析版)-2025年高考物理一輪復(fù)習(xí)(新教材新高考)
- 2024年新人教版七年級上冊數(shù)學(xué)教學(xué)課件 第六章 幾何圖形初步 綜合與實(shí)踐 設(shè)計(jì)學(xué)校田徑運(yùn)動會比賽場地
評論
0/150
提交評論