九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

微型計算機輸入輸出和中斷課件.ppt

上傳人:w****2 文檔編號:15676163 上傳時間:2020-08-29 格式:PPT 頁數(shù):71 大小:1.50MB
收藏 版權(quán)申訴 舉報 下載
微型計算機輸入輸出和中斷課件.ppt_第1頁
第1頁 / 共71頁
微型計算機輸入輸出和中斷課件.ppt_第2頁
第2頁 / 共71頁
微型計算機輸入輸出和中斷課件.ppt_第3頁
第3頁 / 共71頁

下載文檔到電腦,查找使用更方便

14.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《微型計算機輸入輸出和中斷課件.ppt》由會員分享,可在線閱讀,更多相關(guān)《微型計算機輸入輸出和中斷課件.ppt(71頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、1,第7章 輸入/輸出和中斷,2,I/O接口: 將外設(shè)連接到總線上的一組邏輯電路的總稱。 用以實現(xiàn)外設(shè)與主機之間的信息交換 I/O端口: 接口中的寄存器,可以由CPU讀或?qū)?7.1 外設(shè)接口的一般結(jié)構(gòu),3,7,4,CPU同外設(shè)間交換的信息由三類: 1. 數(shù)據(jù)信息,2.狀態(tài)信息: 表示外設(shè)當前所處的工作狀態(tài)。,3.控制信息: 由CPU發(fā)出的,用于控制I/O接口的工作方式以及外設(shè)的啟動和停止等。,5,7.2 CPU與外設(shè)交換數(shù)據(jù)的方式,7.2.1 程序控制傳遞方式,特點:(1)以CPU為中心,控制來自CPU,通過預(yù)先編寫好的I/O程序?qū)崿F(xiàn)數(shù)據(jù)的傳送。 (2)速度較低,傳送路徑經(jīng)過CPU內(nèi)部寄存器同

2、時數(shù)據(jù)I/O響應(yīng)也比較慢。,6,1.無條件傳送方式 (同步傳送方式) 外設(shè)的工作時間已知,必須在CPU限定的指令時間內(nèi)準備就緒,并完成數(shù)據(jù)的接收或發(fā)送。 方法:把I/O指令插入到程序中,當程序執(zhí)行到該指 令時,外設(shè)已作好準備,于是在此指令時間內(nèi)完成數(shù)據(jù)傳送任務(wù)。 優(yōu)點:軟件及接口硬件簡單 缺點:CPU效率低,只適用于簡單外設(shè),適應(yīng)范圍較窄,7,2. 查詢傳送方式(異步傳送方式) 當CPU同外設(shè)不同步且不知道外設(shè)工作速率時,可采用此方式傳送。傳送前,CPU必須先對外設(shè)進行狀態(tài)檢測。,適用場合: 外設(shè)并不總是準備好 對傳送速率和效率要求不高 對外設(shè)及接口的要求: 外設(shè)應(yīng)提供設(shè)備狀態(tài)信息 接口應(yīng)具備

3、狀態(tài)端口,8,完成一次傳送過程的步驟如下: (1) 通過執(zhí)行一條輸入指令,讀取所選外設(shè)的當前狀態(tài) (2) 根據(jù)該設(shè)備的狀態(tài)決定程序去向,外設(shè) “忙”或“未準備就緒” 重復(fù)檢測外設(shè)狀態(tài) 外設(shè) “空”或“準備就緒” 發(fā)出I/O指令,進行一次數(shù)據(jù)傳送。,9,優(yōu)點:軟件比較簡單 缺點:CPU效率低,數(shù)據(jù)傳送的實時性差,速 度較慢,10,3中斷傳送方式 無條件傳遞和查詢傳送的缺點是:CPU和外設(shè)只能串行工作。 為提高系統(tǒng)的工作效率,充分發(fā)揮CPU的高速運算能力,引入了“中斷”系統(tǒng),利用中斷來實現(xiàn)CPU與外設(shè)之間的數(shù)據(jù)傳送,這就是中斷傳送方式。,特點:外設(shè)在需要時向CPU提出請求,CPU再去為 它服務(wù)。服

4、務(wù)結(jié)束后或在外設(shè)不需要時,CPU可執(zhí)行自己的程序。 中斷使CPU和外設(shè)以及外設(shè)之間能并行工作。,11,工作過程: 在中斷傳送方式中,通常在程序中安排好某一時刻啟動某一臺外設(shè),然后CPU繼續(xù)執(zhí)行其主程序,當外設(shè)完成數(shù)據(jù)傳送的準備后,向CPU發(fā)出中斷請求信號,在CPU可以響應(yīng)中斷的條件下,現(xiàn)行主程序被“中斷”,轉(zhuǎn)去執(zhí)行“中斷服務(wù)程序”,在“中斷服務(wù)程序”中完成一次CPU與外設(shè)之間的數(shù)據(jù)傳送,傳送完成后仍返回被中斷的主程序,從斷點處繼續(xù)執(zhí)行。,優(yōu)點:CPU效率高,實時性好,速度快 缺點:程序編制較為復(fù)雜,12,以上三種I/O方式的共性,均需CPU作為中介: 軟件: 外設(shè)與內(nèi)存之間的數(shù)據(jù)傳送是通過CP

5、U執(zhí)行 程序來完成的 硬件: I/O接口和存儲器的讀寫控制信號、地址信號 都是由CPU發(fā)出的 缺點:程序的執(zhí)行速度限定了傳送的最大速度,13,7.2.2 DMA(直接存儲器存?。﹤鬟f方式 外設(shè)和內(nèi)存之間直接傳送數(shù)據(jù)的方式,即DMA傳送方式。在DMA傳送方式中,對這一數(shù)據(jù)傳送過程進行控制的硬件稱為DMA控制器(DMAC)。 特點: 外設(shè)直接與存儲器進行數(shù)據(jù)交換 ,不需要CPU干預(yù)也不需軟件介入。 總線由DMA控制器(DMAC)進行控制(CPU要放棄總線控制權(quán)),內(nèi)存/外設(shè)的地址和讀寫控制信號均由DMAC提供。,14,1. DMA操作的基本方法 (1)周期挪用(Cycle Stealing) (2

6、)周期擴散 (3)CPU停機方式 最常用,最簡單的傳送方式,15,2. DMA的傳送方式 (1)單字節(jié)傳送方式 每次DMA傳送只傳送一個字節(jié)就立即釋放總線。 (2)成組傳送方式 DMAC在申請到總線后,將一組數(shù)據(jù)傳送完后才釋放總線,而不管中間DREQ是否有效。 (3)請求傳送方式(查詢傳送方式) 成組傳送,但每傳送一個字節(jié)后,DMAC查DREQ,有效傳,無效掛起。,16,.DMAC(DMA控制器)的基本功能 (1)能接收外設(shè)的請求,向CPU發(fā)出DMA請求信號。 (2)當接到CPU發(fā)出DMA響應(yīng)信號后,DMAC接管對總線的控制,進入DMA方式。 (3)能尋址存儲器,即能輸出地址信息和修改地址。

7、(4)能向存儲器和外設(shè)發(fā)相應(yīng)的讀/寫控制信號。 (5)能控制傳送的字節(jié)數(shù),判斷DMA是否結(jié)束。 (6)在DMA傳送結(jié)束后,能結(jié)束DMA請求信號,釋放總線,使CPU恢復(fù)正常工作。,17,7.3 中斷技術(shù) 7.3.1 概述 中斷外設(shè)隨機地(指主程序運行到任何一條指令時)或程序預(yù)先安排產(chǎn)生中斷請求信號,暫停CPU正在運行的程序,轉(zhuǎn)入執(zhí)行稱為中斷服務(wù)的子程序,中斷服務(wù)完畢后,返回到主程序被中斷處繼續(xù)執(zhí)行的過程。 中斷源引起中斷的事件,18,通常中斷源有以下幾種: (1) 輸入、輸出設(shè)備: 如鍵盤、顯示器和打印機等; (2) 數(shù)據(jù)通道; (3) 實時控制過程中的各種參數(shù); (4) 故障源: 如掉電保護等

8、; (5) 控制系統(tǒng)的現(xiàn)場測試信號以及軟件中斷。 中斷系統(tǒng)應(yīng)具有以下功能: 1. 能實現(xiàn)中斷響應(yīng)、中斷服務(wù)和中斷返回 2. 能實現(xiàn)中斷優(yōu)先級排隊 3. 能實現(xiàn)中斷嵌套 ,19,7.3.2 中斷過程 1.中斷過程 一個完整的中斷基本過程包括:中斷請求、中斷判優(yōu)、中斷響應(yīng)、中斷處理及中斷返回等五個基本過程。 (1)中斷請求 當某一外部中斷源要求CPU中斷時,首先要向CPU發(fā)出中斷請求,該請求信號被存放在中斷源接口電路的中斷請求觸發(fā)器中暫存,并通過INTR或NMI信號線引入CPU 。,20,(2)中斷判優(yōu) 由于中斷請求是隨機的,在某一瞬間有可能出現(xiàn)兩個或兩個以上中斷源同時提出請求的情況。這時必須根據(jù)

9、中斷源的輕重緩急,給每個中斷源確定一個中斷級別 中斷優(yōu)先權(quán) 。,另一個作用能實現(xiàn)中斷嵌套 。,21,(3)中斷響應(yīng) CPU每執(zhí)行完一條指令后,查詢是否有中斷請求。當查詢到有中斷請求且此時CPU允許中斷(即IF=1,開中斷),CPU響應(yīng)中斷。 響應(yīng)中斷后系統(tǒng)做的工作: 自動關(guān)中斷;通過使IF清零來實現(xiàn) 保存FR和斷點; 形成中斷入口地址。通過中斷矢量,查詢中斷地址表實現(xiàn)。,22,(4)中斷處理 執(zhí)行中斷服務(wù)程序 中斷服務(wù)開始要用壓棧指令(PUSH)將要用到的寄存器內(nèi)容壓入堆棧,以便返回到主程序時能正確運行。保護現(xiàn)場 中斷服務(wù)程序結(jié)束后,用POP指令把所保存的有關(guān)寄存器的內(nèi)容從堆棧彈出,以便恢復(fù)到

10、中斷前的狀態(tài)。恢復(fù)現(xiàn)場,23,(5)中斷返回 通常在中斷返回前,要用指令開中斷,以便再次響應(yīng)中斷,然后執(zhí)行中斷返回指令,24,2. 中斷優(yōu)先權(quán) (1)軟件查詢方式,7,7,25,(2)硬件優(yōu)先權(quán)排隊電路。 簡單硬件方式菊花鏈法或鏈式優(yōu)先權(quán)排隊電路。 專用硬件方式可編程的中斷控制器,7,26,7.4 8086/8088的中斷系統(tǒng) 7.4.1 中斷結(jié)構(gòu) 1.中斷分類,27,硬件中斷由外部硬件產(chǎn)生的,也稱外部中斷。,軟件中斷CPU根據(jù)軟件的某些指令或者軟件對標志寄存器某個標志位的設(shè)置而產(chǎn)生的,由于它與外部中斷電路完全無關(guān),故稱為內(nèi)部中斷。 ,28,2中斷向量表 存放中斷地址的一段內(nèi)存空間稱中斷向量表

11、。,存放各類中斷的中斷服務(wù)程序的入口地址 位于內(nèi)存的00000000000003FFH(即00000003FFH)大小為1KB,共256個入口地址 每個入口地址占用4個單元,依次為IP:CS, 低字為段內(nèi)偏移,高字為段基址,29,中斷向量表,00000H,003FFH,1KB,30,IP,CS,中斷類型碼與中斷向量所在位置(中斷向量地址指針)之間的對應(yīng)關(guān)系為: 中斷向量地址指針=4*中斷類型碼,C,3,31,例:中斷類型碼為20H(32)的中斷源所對應(yīng)的中斷服務(wù)程序首址存放在00000080H(4*20H=80H)開始的4 個單元中。若在0080H至0083H這4個單元中存放的值分別為10H、

12、20H、30H、40H,則該系統(tǒng)中20H號中斷所對應(yīng)的中斷處理(服務(wù))程序入口地址為40302010H,32,7.4.2 內(nèi)部中斷軟中斷 在8086/8088系統(tǒng)中,通過執(zhí)行中斷指令或由CPU 本身啟動的中斷稱為內(nèi)部中斷(也稱軟件中斷)。 除單步中斷外,內(nèi)部中斷無法用軟件禁止,即不受IF的影響。 1、內(nèi)部中斷的類型 (1)0型中斷除法出錯中斷 (2)1型中斷單步中斷 (3)3型中斷斷點中斷 (4)4型中斷溢出中斷 (5)INT n指令中斷,33,2內(nèi)部中斷的處理過程 如何獲取相應(yīng)的中斷類型碼 專用中斷:中斷類型碼是自動形成的。 幾種類型碼為:類型0、1、3、4。 對于INT n指令,其類型碼為

13、指令中給定的n。,34,取得了類型碼后的處理過程: 類型碼*4 向量表指針。 標志寄存器FR入棧,保護各個標志。 清除IF和TF標志,屏蔽新的INTR中斷和單步中斷。 保存斷點(斷點處IP和CS壓棧,先壓CS后壓IP)。 從中斷向量表中取出中斷服務(wù)程序入口地址分別送入IP和CS中。 按新的地址執(zhí)行中斷服務(wù)程序。,35,7.4.3 外部中斷硬中斷 非屏蔽中斷NMI引腳產(chǎn)生的中斷,不受IF控制,類型號為2。 可屏蔽中斷由CPU的INTR端接收可屏蔽中斷。受IF控制,只有當IF=1, 在一條指令執(zhí)行結(jié)束后,CPU才能響應(yīng)可屏蔽中斷的請求。,36,1. 外部中斷的響應(yīng) CPU采樣到非屏蔽中斷請求時,自

14、動提供中斷類型號2,然后根據(jù)中斷類型號,查找中斷向量表指針,其后的處理與內(nèi)部中斷一樣。 當INTR信號有效,如IF=1,則CPU執(zhí)行完一條指令后,進入可屏蔽中斷響應(yīng)周期。在中斷響應(yīng)周期中CPU從數(shù)據(jù)線中獲取外部設(shè)備的中斷類型碼。,37,2.外部中斷處理過程 在外部中斷響應(yīng)周期中,CPU獲取了外部中斷類型 碼之后的中斷處理過程,與前述的軟中斷過程順序是一樣的,不再贅述。 如果把CPU中斷響應(yīng)周期的動作和前面講到的中斷響應(yīng)過程結(jié)合起來,當一個可屏蔽中斷被響應(yīng)時,CPU實際執(zhí)行了7個總線周期,即:,38, 執(zhí)行第一個INTA周期。 執(zhí)行第二個INTA周期,被響應(yīng)的外設(shè)通過D0D7的8位數(shù)據(jù)線提供中斷

15、類型碼n(由8259A提供),CPU接到類型碼后,將它左移兩位,形成向量表指針存入暫存器。 執(zhí)行一個總線寫周期,把FR壓棧。同時IF和TF為0,以禁止中斷響應(yīng)過程中其他可屏蔽中斷的進入,同時也禁止了中斷過程中出現(xiàn)單步中斷。,39, 執(zhí)行一個總線寫周期,CS壓棧。 執(zhí)行一個總線寫周期,IP壓棧。 執(zhí)行一個總線讀周期,從中斷向量表中取出中斷服務(wù)程序入口地址的偏移量送IP中。 執(zhí)行一個總線周期,從中斷向量表中取出中斷服務(wù)程序入口地址的段值送CS。 對于非屏蔽與軟中斷跳過第、步,從第步開始執(zhí)行到第步。,40,7.4.4 各類中斷的優(yōu)先權(quán)及中斷響應(yīng) 8086/8088系統(tǒng)中,中斷優(yōu)先權(quán)次序從高到低為:除

16、法出錯、INTn、INTO、NMI、INTR、單步中斷。 除單步之外的內(nèi)部優(yōu)先權(quán)最高,其次是非屏蔽中斷,再次是可屏蔽中斷,而單步最低。,41,7.5 8259A可編程中斷控制器 7.5.1 8259A的功能 1.功能 Intel 8259A 是與8086系列CPU兼容的可編程中斷控制器,它的主要功能為: (1)具有8級優(yōu)先權(quán)控制,級連可擴展至64級。 (2)每一級中斷都可以屏蔽或允許。 (3)在中斷響應(yīng)周期,8259A可提供相應(yīng)的中斷向量號(中斷類型號)。 (4)8259A的工作方式,可通過編程來進行選擇。,7.5.2 8259A的結(jié)構(gòu)及工作原理,7,42,(1)8259A的內(nèi)部結(jié)構(gòu),8位寄存

17、器,是8259A與外設(shè)中斷源的接口。通過IR7IR0與8個中斷源相接。當有某個中斷源申請中斷時,使IRR的相應(yīng)位置1。最多可同時接收8個中斷源的中斷申請。,8位寄存器,用于設(shè)置中斷請求的屏蔽信號。第i位被置1時,與之對應(yīng)的IRi被屏蔽,不能向CPU發(fā)INT信號??赏ㄟ^軟件設(shè)置其內(nèi)容,確定每個中斷請求的屏蔽狀態(tài)。設(shè)置IMR也可起到改變中斷請求優(yōu)先級的效果。,8位寄存器,寄存所有正在被服務(wù)的中斷級。第i位置1表示CPU正為IRi中斷源服務(wù),該信號一直保持到CPU處理完該中斷服務(wù)程序為止。該中斷處理結(jié)束前,要使用指令清除這一位。ISR可被CPU讀出。當有多位置1時,表示發(fā)生了中斷嵌套。,對在IRR中

18、的中斷請求,經(jīng)判斷確定最高的優(yōu)先權(quán),并在中斷響應(yīng)用周期把它選通送至ISR,8位雙向三態(tài)緩沖器,是8259A與系統(tǒng)數(shù)據(jù)總線的接口。8259A通過它接收CPU發(fā)來的控制字,也通過它向CPU發(fā)送中斷類型代碼和狀態(tài)信息。,接收CPU的讀/寫命令。CS和地址線A0決定訪問8259A的哪個寄存器。,用于多塊8259A的連接,使中斷可由8級擴展到64級,7,43, 8259A的引腳,雙功能信號。當8259A工作于緩沖器方式時,它作為控制緩沖器傳送方式的輸出信號;當工作于非緩沖方式時,用于規(guī)定其是主8259A還是從8259A,44,8259A的工作原理 當系統(tǒng)通電后,首先應(yīng)對8259A初始化。(由CPU執(zhí)行一

19、段程序,向可編程芯片寫入若干命令字,規(guī)定其工作狀態(tài),使其處于準備就緒的狀態(tài)。) 8259A對外部中斷請求處理過程如下: (1) 當有IR0IR7變 高,則IRR的相應(yīng)位置1。 (2) 若中斷請求線中至少有一條是中斷允許的,則 由 INT 引腳向CPU發(fā)出中斷請求。 (3) 若CPU處于開中斷狀態(tài),則在當前指令執(zhí)行完后,用INTA信號作為響應(yīng)。,45,(4) 8259A接到INTA后,使最高優(yōu)先權(quán)的ISR位置1,而相應(yīng)的IRR位復(fù)位。在此周期中,8259A不向系統(tǒng)數(shù)據(jù)總線送任何內(nèi)容。 (5) 在中斷響應(yīng)周期的第二個信號期間8259A向數(shù)據(jù)總線輸送一個8位指針(向量號或類型號),CPU讀取此類型號

20、,類型號*4作為地址就可從中斷向量表中取出中斷服務(wù)程序入口地址。 (6) 若8259A工作在自動結(jié)束中斷AEOI方式(Automatic End Of Interrupt),在第二個INTA結(jié)束時,使中斷源在ISR的相應(yīng)位復(fù)位。否則,直至中斷服務(wù)程序執(zhí)行到EOI命令,才使ISR的相應(yīng)位復(fù)位。,46,7.5.3 8259A的編程 8259A的編程分兩部分: (1)初始化編程 由CPU向8259A送24字節(jié)的初始化命令字ICW (2)工作方式編程 由CPU向8259A送三個字節(jié)的工作命令字OCW,以規(guī)定8259A的工作方式。該命令字可在8259A初始化命令字ICW后的任何時間寫入。,47,1. 8

21、259A的初始化編程 8259A的初始化命令字共4個(ICW1ICW4) 設(shè)置過程如圖:,7,48,0,49,(2)寫初始化命令字ICW2中斷類型控制字 ( 中斷類型碼 ) 用來定義中斷類型碼的高5位,74,50,(3) 寫初始化指令字ICW3主/從片初始化 (級連控制字),51,(4) 寫初始化命令字ICW4方式控制字 對于8086/8088系統(tǒng)是必須設(shè)置的初始化命令字,74,1,52,2. 8259A的操作命令字 三個操作命令字OCW1OCW3。 在設(shè)置操作命令字時,順序上沒有嚴格的要求,但端口地址上有嚴格的規(guī)定。 OCW1必須寫入奇地址端口(A0=1) OCW2和OCW3必須寫入偶地址端

22、口(A0=0),53, 操作命令字OCW1 屏蔽操作命令字 用來設(shè)置或清除對中斷的屏蔽(設(shè)置IMR的值),75,54,(2) 操作命令字OCW2中斷方式命令字 設(shè)置優(yōu)先級循環(huán)和中斷結(jié)束方式,64,75,若ICW4設(shè)置正常結(jié)束訪問,則在IRET前寫OCW2, 使EOI=1,ISR復(fù)位,1. 若OCW2中設(shè)置特殊優(yōu)先級循環(huán)方式時,最低優(yōu)先級編碼。 2. OCW2中設(shè)置特殊中斷命令結(jié)束,指具體清除哪一位。,55,(3) 操作命令字OCW3狀態(tài)操作命令字 設(shè)置和撤銷特殊屏蔽方式、設(shè)置中斷查詢方式、 設(shè)置對8259A內(nèi)部寄存器的讀出命令,7,56,注意: 1. 如何區(qū)分OCW2,OCW3? 用D3位,即

23、兩個操作命令字的標識位,2. 如何區(qū)分ICW1,OCW2,OCW3?,57,7.5.4 8259A的工作方式 1中斷嵌套方式 (1)全嵌套方式 當工作在全嵌套方式時,8259A寫入初始化命令字后,中斷優(yōu)先權(quán)是固定的,即IR0優(yōu)先權(quán)最高,IR7優(yōu)先權(quán)最低。當CPU響應(yīng)中斷時,申請中斷的優(yōu)先權(quán)最高的中斷源在ISR中相應(yīng)位置位,而且把它的中斷向量號(類型碼)送到數(shù)據(jù)總線,在此中斷源的中斷服務(wù)程序完成前,與它同級或優(yōu)先權(quán)更低的中斷源申請被屏蔽,只有優(yōu)先權(quán)比它高的中斷源的申請才允許。,58,(2)特殊全嵌套方式級連情況 與全嵌套方式不同之處: 當某一從片中斷請求被響應(yīng)后,主片不封鎖從片的INT輸入端,使

24、該從片優(yōu)先級更高的中斷源的請求能得到響應(yīng)。 當從片中斷處理快要結(jié)束時,用軟件檢查從片中斷服務(wù)寄存器ISR的內(nèi)容是否為0,若為0,則這個從片的中斷請求是唯一的,此時連發(fā)兩個中斷結(jié)束命令EOI,使主片、從片都結(jié)束中斷。若只發(fā)一個EOI命令則只結(jié)束從片,不結(jié)束主片中斷。,59,2中斷優(yōu)先級循環(huán)方式 8259A中有兩種改變優(yōu)先權(quán)的辦法 自動循環(huán)方式 當某一個中斷源服務(wù) 完以后,它的優(yōu)先級 變成最低的 。,7,60,(2) 特殊循環(huán)方式 如果中斷源的優(yōu)先權(quán)需要任意改變,就必須工作 在特殊循環(huán)方式下。此時,可用程序通過寫OCW2 來改變優(yōu)先權(quán)。 例如: 設(shè)置IR5為最低優(yōu)先權(quán),則IR6的優(yōu)先權(quán)就變 為最高

25、。這時OCW2最高三位為110,而最低三位 L2L0應(yīng)為101(最低優(yōu)先權(quán)編碼)。,OCW2: 1 1 0 0 0 1 0 1,61,3. 中斷屏蔽 8259A的8條中斷請求線的每一條都可根據(jù)需要單獨屏蔽,可通過寫入OCW1的命令字來實現(xiàn)。 8259A有兩種屏蔽方式:,(1) 普通屏蔽方式 特點:當執(zhí)行某一級中斷服務(wù)程序時,只允許比該級優(yōu)先級高的中斷源申請中斷,不允許同級或低級的中斷源申請中斷。 方法:用OCW1將IMR寄存器某一位或幾位置1,即可將相應(yīng)的中斷請求屏蔽掉。 使用情況:當CPU執(zhí)行主程序時,可將不希望響應(yīng)的中斷源屏蔽;當CPU執(zhí)行某中斷服務(wù)程序時,可將不希望響應(yīng)的比此優(yōu)先級高的中

26、斷源屏蔽。,62,(2) 特殊屏蔽方式 特點:CPU正在處理某一級中斷時,只可對本級中斷進行屏蔽,允許級別比它高的或比它低的中斷源申請中斷。 方法:在某級中斷服務(wù)程序中首先用OCW3設(shè)置該方式(即D6D5=11),然后設(shè)置OCW1使該級的中斷申請被屏蔽,只有寫入這兩個控制字之后,才能使中斷屏蔽寄存器IMR中該級中斷位被屏蔽(=1),不允許發(fā)生同級中斷,同時使中斷服務(wù)寄存器ISR相應(yīng)位置0,允許比該級低級別的中斷源申請中斷。 若想退出此方式,通過設(shè)置OCW3的D6D5=10,再執(zhí)行輸出指令即可。 使用情況:在中斷處理過程中,需要動態(tài)改變系統(tǒng)的優(yōu)先級結(jié)構(gòu)時。,63,4. 程序查詢方式 CPU利用查

27、詢命令(OCW3中D2=1)獲得當前請求服務(wù)的優(yōu)先級。此時8259A內(nèi)部仍進行8級中斷請求的判優(yōu)和屏蔽管理。查詢命令發(fā)出后,執(zhí)行一條輸入指令,可得到查詢字。,D7=1 有中斷請求 D7=0 無中斷請求,當前發(fā)出中斷請求級別最高的中斷信號,64,5. 中斷結(jié)束命令 根據(jù)不同的工作方式8259A可以有幾種不同的結(jié) 束方法。 (1)自動中斷結(jié)束方式(AEOI) 特點:中斷服務(wù)寄存器ISR的相應(yīng)位清零是由硬件自動完成的。當某一級中斷被CPU響應(yīng)后,CPU送回第一個INTA中斷響應(yīng)信號,使ISR的相應(yīng)位置1,當?shù)诙€INTA負脈沖結(jié)束時,自動將ISR的相應(yīng)位置0。 實現(xiàn)方法:通過將ICW4的D1位設(shè)置為

28、1實現(xiàn)。 使用環(huán)境:適用不要求中斷嵌套的情況。,65,(2)非自動中斷結(jié)束方式(EOI) 特點:中斷返回前,必須用指令向8259A發(fā)中斷結(jié)束命令,即使ICW4的D1=0。若級連,發(fā)2個。 方法:首先將ICW4的D1=0,定為正常中斷結(jié)束方式,然后用OUT向8259A的偶地址端口輸出OCW2操作控制字(OCW2的D7D6D5=001),實現(xiàn)自動結(jié)束命令。 使用環(huán)境:一般的中斷結(jié)束方式只能應(yīng)用于全嵌套方式下,不能用于優(yōu)先級自動循環(huán)方式和優(yōu)先級特殊循環(huán)方式。因為一般中斷結(jié)束方式結(jié)束的中斷是尚未處理完的級別最高的中斷。若中斷級別改變,會使整個中斷過程混亂。,66,(3)特殊中斷結(jié)束方式 特點:通過用指

29、令發(fā)一中斷結(jié)束命令,同時給出結(jié)束中斷的中斷源是哪一級,使該中斷源的中斷服務(wù)寄存器ISR的相應(yīng)位置0。 使用環(huán)境:可應(yīng)用在任何情況下,但要在中斷處理中給出中斷結(jié)束命令。 使用方法:首先將ICW4的D1=0,定為正常中斷結(jié)束方式,然后通過將OCW2的D7D6D5=011或111,D2D1D0位指出結(jié)束中斷處理的中斷源號,使該中斷源在中斷服務(wù)寄存器ISR中的相應(yīng)位清零。,67,6. 讀8259A 的狀態(tài) 8259A的IRR、ISR、IMR的狀態(tài),可通過讀命令讀入CPU,供用戶了解8259A的工作情況。 (1) 在讀命令之前,輸出一個OCW3,令其RR=1,RIS=0(D1D0=10),可利用讀命令讀

30、入中斷請求寄存器IRR的狀態(tài)。若RR=1,RIS=1(D1D0=11),可利用讀命令讀入中斷服務(wù)寄存器ISR的狀態(tài)。 (2) 對奇地址端口(A0=1)進行讀操作,可讀得中斷屏蔽寄存器IMR的值。,68,7. 5.5 由多片8259A組成的主從式中斷系統(tǒng) 在一個系統(tǒng)中若中斷源多于8個,必須采用多片8259A進行級連。其中有一片主8259A,若干片從8259A,可把中斷源擴展到64個。,7,69,7.5.6 8259A的編程實例 1.初始化編程 例7-1:對IBM PC/XT機中使用的8259A初始化編程。硬件連 接如圖。,7,70,設(shè)置ICW1為邊沿觸發(fā),單片8259A需要ICW4。 方式字:

31、00010011B,MOV AL,13H ; OUT 20H,AL,設(shè)置ICW2 類型碼為 00001000B(IR0),MOV AL,08H ; OUT 21H,AL,設(shè)置ICW4,全嵌套方式,緩沖方式,正常EOI 。 方式字: 00001101B,MOV AL,0DH ; OUT 21H,AL,根據(jù)系統(tǒng)要求初始化編程如下:,在IBM PC機中,只有一片8259A,可接外部8級中斷,8259A的端口地址為20H和21H。對8259A的初始化規(guī)定:邊沿觸發(fā)方式,緩沖方式,中斷結(jié)束為EOI命令方式,中斷優(yōu)先權(quán)管理采用全嵌套方式。8級中斷源類型碼為08H-0FH。,71,初始化完成后,8259A處于全嵌套工作方式,可以響應(yīng)外部中斷。根據(jù)要求設(shè)置8259A的操作命令字OCW1OCW2 (1)如允許時鐘,鍵盤,異步通信卡(COM1)中斷,設(shè)置OCW1為0ECH(屏蔽字)。11101100B MOV AL,0ECH OUT 21H,AL,(2)由于正常EOI,因此在中斷服務(wù)程序結(jié)束后,返回斷點前必須對OCW2寫入00100000B即20H作結(jié)束中斷操作命令。 MOV AL,20H ;設(shè)置OCW2的值為20H OUT 20H,AL IRET ;中斷返回,

展開閱讀全文
溫馨提示:
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)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!