




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、輸入輸入/輸出接口概述輸出接口概述6.1CPU與外設(shè)之間的數(shù)據(jù)傳送方式與外設(shè)之間的數(shù)據(jù)傳送方式6.2中斷技術(shù)中斷技術(shù)6.3CPUCPU和外設(shè)之間必須要設(shè)置輸入和外設(shè)之間必須要設(shè)置輸入/ /輸出接口輸出接口(I/O(I/O接接口口) ),作為,作為CPUCPU與外設(shè)進行信息交換的橋梁。與外設(shè)進行信息交換的橋梁。 接口是一組電路,是接口是一組電路,是CPU與輸入輸出設(shè)備等外設(shè)之與輸入輸出設(shè)備等外設(shè)之間協(xié)調(diào)動作的控制電路。間協(xié)調(diào)動作的控制電路。I/O地址譯碼與設(shè)備選擇地址譯碼與設(shè)備選擇(1)信息的輸入信息的輸入/輸出輸出(2)命令、數(shù)據(jù)和狀態(tài)的緩沖與鎖存命令、數(shù)據(jù)和狀態(tài)的緩沖與鎖存(3)信息轉(zhuǎn)換信息
2、轉(zhuǎn)換(4) 所有外設(shè)都通過I/O接口掛接在系統(tǒng)總線上,在同一時刻,總線只允許一個外設(shè)與CPU進行數(shù)據(jù)傳送。通過I/O接口,CPU可以從外部設(shè)備輸入各種信息,也可將處理結(jié)果輸出到外設(shè);CPU可以通過向I/O接口寫入命令字來控制I/O接口的工作,還可以隨時監(jiān)測與管理I/O接口和外設(shè)的工作狀態(tài);I/O接口還可以通過接口向CPU發(fā)出中斷請求。因為CPU與外設(shè)之間的時序和速度差異很大,為了能夠確保計算機和外設(shè)之間可靠地進行信息傳送,要求接口電路應(yīng)具有信息緩沖能力。接口不僅應(yīng)緩存暫時存留CPU送給外設(shè)的信息,也要緩存暫時存留外設(shè)送給CPU的信息。以實現(xiàn)CPU與外設(shè)之間信息交換的同步。 I/O接口還要實現(xiàn)信
3、息格式變換、電平轉(zhuǎn)換、碼制轉(zhuǎn)換、傳送管理以及聯(lián)絡(luò)控制等功能。 CPU與與I/O設(shè)備之間傳輸?shù)男畔⒖煞譃橐韵氯N:設(shè)備之間傳輸?shù)男畔⒖煞譃橐韵氯N:(1 1數(shù)據(jù)信息數(shù)據(jù)信息 CPUCPU和外設(shè)交換的基本信息就是數(shù)據(jù),分為數(shù)字量、和外設(shè)交換的基本信息就是數(shù)據(jù),分為數(shù)字量、模擬量、開關(guān)量。模擬量、開關(guān)量。(2 2狀態(tài)信息狀態(tài)信息 狀態(tài)信息反映了當(dāng)前外設(shè)所處的工作狀態(tài),是外狀態(tài)信息反映了當(dāng)前外設(shè)所處的工作狀態(tài),是外設(shè)發(fā)給設(shè)發(fā)給CPUCPU的用來協(xié)調(diào)兩者之間的操作。如的用來協(xié)調(diào)兩者之間的操作。如READYREADY、BUSYBUSY。(3 3控制信息控制信息 控制信息是控制信息是CPUCPU發(fā)給外設(shè)的,
4、以控制外設(shè)的工作。發(fā)給外設(shè)的,以控制外設(shè)的工作。如外設(shè)的啟動信號和停止信號。如外設(shè)的啟動信號和停止信號。數(shù)據(jù)信息、狀態(tài)信息和控制信息是屬于不同性質(zhì)的數(shù)據(jù)信息、狀態(tài)信息和控制信息是屬于不同性質(zhì)的信息,需要分別傳送。信息,需要分別傳送。 一個簡單的一個簡單的I/OI/O接口內(nèi)部包含:數(shù)據(jù)端口、狀態(tài)和接口內(nèi)部包含:數(shù)據(jù)端口、狀態(tài)和控制端口??刂贫丝凇 CPU CPU通過數(shù)據(jù)端口從外設(shè)讀入數(shù)據(jù)或向外設(shè)輸通過數(shù)據(jù)端口從外設(shè)讀入數(shù)據(jù)或向外設(shè)輸出數(shù)據(jù)出數(shù)據(jù)n 從狀態(tài)端口讀入設(shè)備的當(dāng)前狀態(tài)從狀態(tài)端口讀入設(shè)備的當(dāng)前狀態(tài)n 通過控制端口向外設(shè)發(fā)出控制命令通過控制端口向外設(shè)發(fā)出控制命令n 一個一個I/OI/O接口
5、可能僅包含其中的一類或兩類端接口可能僅包含其中的一類或兩類端口,當(dāng)然也可能包含全部三類端口???,當(dāng)然也可能包含全部三類端口。 I/O I/O接口通常設(shè)置有若干個寄存器,用來暫存接口通常設(shè)置有若干個寄存器,用來暫存CPUCPU和外設(shè)和外設(shè)之間傳輸?shù)臄?shù)據(jù)、狀態(tài)和控制信息,這些接口內(nèi)部的寄存器之間傳輸?shù)臄?shù)據(jù)、狀態(tài)和控制信息,這些接口內(nèi)部的寄存器通常稱為端口,分別為數(shù)據(jù)端口、狀態(tài)端口、控制端口。每通常稱為端口,分別為數(shù)據(jù)端口、狀態(tài)端口、控制端口。每個端口有一個獨立的地址,個端口有一個獨立的地址,CPUCPU可通過端口地址來讀可通過端口地址來讀/ /寫它們。寫它們。 在微機系統(tǒng)中,在微機系統(tǒng)中,CPU對
6、外設(shè)的訪問實際上是對外設(shè)的訪問實際上是對外設(shè)接口電路中相應(yīng)的對外設(shè)接口電路中相應(yīng)的I/O端口進行訪問,端口進行訪問,CPU用相應(yīng)的讀寫指令來對端口進行讀或?qū)?。用相?yīng)的讀寫指令來對端口進行讀或?qū)憽R虼耍瑢@些端口必須指定相應(yīng)的地址碼,因此,對這些端口必須指定相應(yīng)的地址碼,這就是這就是I/O端口的編址。端口的編址。I/O端口的編址通常有兩種不同的方式:端口的編址通常有兩種不同的方式:統(tǒng)一編址統(tǒng)一編址1獨立編址獨立編址2又稱為存儲器映射編址方式,即把每又稱為存儲器映射編址方式,即把每個個I/O端口都當(dāng)作一個存儲單元看待,端口都當(dāng)作一個存儲單元看待,按照存儲單元的編址方式統(tǒng)一安排端按照存儲單元的編址方
7、式統(tǒng)一安排端口的地址??诘牡刂贰?yōu)點:可以用訪問內(nèi)存的方法來訪問優(yōu)點:可以用訪問內(nèi)存的方法來訪問I/O端口。由于訪問內(nèi)存的指令種類端口。由于訪問內(nèi)存的指令種類豐富、尋址方式多樣,因此這種編址豐富、尋址方式多樣,因此這種編址方式為訪問外設(shè)帶來了很大的靈活性。方式為訪問外設(shè)帶來了很大的靈活性。同時,同時,I/O控制信號也可與存儲器的控制信號也可與存儲器的控制信號共用,從而給應(yīng)用帶來了很控制信號共用,從而給應(yīng)用帶來了很大的方便。大的方便。缺陷:外設(shè)占用了一部分內(nèi)存地址空間,這就減少了內(nèi)存可用缺陷:外設(shè)占用了一部分內(nèi)存地址空間,這就減少了內(nèi)存可用的地址范圍。此外從指令上不易區(qū)分當(dāng)前是對內(nèi)存進行操作還的
8、地址范圍。此外從指令上不易區(qū)分當(dāng)前是對內(nèi)存進行操作還是對外設(shè)進行操作。是對外設(shè)進行操作。 Intel MCS-51等系列的單片微型計算機采用統(tǒng)一編址方式。等系列的單片微型計算機采用統(tǒng)一編址方式。內(nèi)存地址空間和外設(shè)地址空間是相互獨立的。內(nèi)存地址空間和外設(shè)地址空間是相互獨立的。8086/80888086/8088系統(tǒng)的內(nèi)存地址范圍為系統(tǒng)的內(nèi)存地址范圍為00000H0FFFFFH00000H0FFFFFH,共,共1M1M空空間,而外設(shè)端口的地址范圍為間,而外設(shè)端口的地址范圍為0000H0FFFFH0000H0FFFFH,共,共64K64K空間??臻g。這兩個地址空間相互獨立,互不影響。這兩個地址空間相
9、互獨立,互不影響。CPUCPU在尋址內(nèi)存和外設(shè)時,使用不同的控制信號來區(qū)分當(dāng)前在尋址內(nèi)存和外設(shè)時,使用不同的控制信號來區(qū)分當(dāng)前是對內(nèi)存操作還是對是對內(nèi)存操作還是對I/OI/O端口操作。例如端口操作。例如80868086的的M/IO#M/IO#。指令系統(tǒng)中單獨設(shè)置有專用的指令系統(tǒng)中單獨設(shè)置有專用的I/OI/O指令。指令。優(yōu)點:將輸入輸出指令和訪問存儲器的指令明顯區(qū)分開,使優(yōu)點:將輸入輸出指令和訪問存儲器的指令明顯區(qū)分開,使程序清晰,可讀性好,而且程序清晰,可讀性好,而且I/OI/O指令長度短,執(zhí)行的速度快,指令長度短,執(zhí)行的速度快,也不占用內(nèi)存空間;也不占用內(nèi)存空間;I/OI/O地址譯碼電路較簡
10、單,地址譯碼電路較簡單,缺陷:必須有專門的缺陷:必須有專門的ININ和和OUTOUT指令,這些指令的功能沒有訪指令,這些指令的功能沒有訪問存儲器指令強,也增加了指令系統(tǒng)的規(guī)模。另外,問存儲器指令強,也增加了指令系統(tǒng)的規(guī)模。另外,CPUCPU要要能提供區(qū)分存儲器和能提供區(qū)分存儲器和I/OI/O的控制信號。的控制信號。 無條件方式無條件方式6.2.1查詢方式查詢方式6.2.2中斷方式中斷方式6.2.3DMA方式方式.1 6.2.1 無條件傳送方式無條件傳送方式 無條件傳送方式主要用于外部控制過程的各種動作是固定的、且是已知的,控制的對象是一些簡單的、隨時“準備好的外設(shè)。也就是說,在
11、這些設(shè)備工作時,隨時都可以接收CPU輸出的數(shù)據(jù),或者它們的數(shù)據(jù)隨時都可以被CPU讀出。 它不需要查詢外設(shè)狀態(tài),直接使用IO指令與外設(shè)實現(xiàn)同步數(shù)據(jù)交換。采用這種控制方式的接口電路和控制程序都比較簡單。它一般應(yīng)用在工作速度慢,接口電路較簡單的外設(shè),如發(fā)光二極管、開關(guān)等,適合采用這種方式。6.2.2 6.2.2 條件傳輸方式條件傳輸方式程序查詢傳送方式程序查詢傳送方式 在執(zhí)行輸入輸出前,要先查詢接在執(zhí)行輸入輸出前,要先查詢接口中狀態(tài)寄存器的狀態(tài)??谥袪顟B(tài)寄存器的狀態(tài)。 輸入時,狀態(tài)寄存器的狀態(tài)指示要輸入輸入時,狀態(tài)寄存器的狀態(tài)指示要輸入的數(shù)據(jù)是否已經(jīng)準備就緒;的數(shù)據(jù)是否已經(jīng)準備就緒; 輸出時,狀態(tài)寄
12、存器的狀態(tài)指示輸出設(shè)輸出時,狀態(tài)寄存器的狀態(tài)指示輸出設(shè)備是否空閑。備是否空閑。查詢傳輸方式查詢傳輸方式(1)CPU(1)CPU從狀態(tài)端口中讀取從狀態(tài)端口中讀取狀態(tài)字;狀態(tài)字;(2)CPU(2)CPU檢測狀態(tài)字的相應(yīng)檢測狀態(tài)字的相應(yīng)位是否滿足位是否滿足“就緒就緒條條件,如果不滿足,則轉(zhuǎn)件,如果不滿足,則轉(zhuǎn)(1)(1),再讀取狀態(tài);,再讀取狀態(tài);(3)(3)如狀態(tài)位表明外設(shè)已如狀態(tài)位表明外設(shè)已處于處于“就緒就緒形狀,則形狀,則通過數(shù)據(jù)端口傳輸數(shù)據(jù)。通過數(shù)據(jù)端口傳輸數(shù)據(jù)。外設(shè)準備好?傳送數(shù)據(jù)讀取外設(shè)狀態(tài)YN特點:利用查詢方式進行數(shù)據(jù)輸入輸出的過程中,特點:利用查詢方式進行數(shù)據(jù)輸入輸出的過程中,CPU
13、將大量時間耗費在讀取和檢測外設(shè)狀態(tài)上,真將大量時間耗費在讀取和檢測外設(shè)狀態(tài)上,真正用于傳送數(shù)據(jù)的時間很少,這樣大大降低了正用于傳送數(shù)據(jù)的時間很少,這樣大大降低了CPU的效率。的效率。例題:例題: 某輸入接口的狀態(tài)端口地址為某輸入接口的狀態(tài)端口地址為86H,數(shù)據(jù),數(shù)據(jù)端口地址為端口地址為87H,外部輸入信息準備好狀態(tài)標,外部輸入信息準備好狀態(tài)標志為志為D71D7=0表示外設(shè)未準備好)用表示外設(shè)未準備好)用查詢方式寫出從外設(shè)讀入查詢方式寫出從外設(shè)讀入100字節(jié)數(shù)據(jù)并存于字節(jié)數(shù)據(jù)并存于內(nèi)存內(nèi)存BUFFER開始的單元中。開始的單元中。 LEA BX , BUFFER ;將BUFFER偏移地址送BX M
14、OV CX , 100 ; 字節(jié)數(shù)ABC: IN AL, 86H ; 讀狀態(tài)端口 (目的讀狀態(tài)位) TEXST AL, 80H ;測試D7位是否為1準備好) JZ ABC ;若D7=0未準備好,循環(huán)檢測 IN AL , 87H ;準備好,讀數(shù)據(jù)端口 MOV BX, AL ; 存到內(nèi)存BUFFER緩沖區(qū) INC BX ; 修改地址指針 LOOP ABC ; 未送完,繼續(xù)傳送格式:IN OPD,OPS功能:從端口(地址為n或在DX中)輸入位數(shù)據(jù)到AL或輸入16位數(shù)據(jù)到AX。IN AL,40H;從40H端口讀入一個字節(jié)送ALMOV DX,8F00H;將端口地址8F00H送DXIN AL,DX;從8F
15、00H端口讀入一個字節(jié)送AL 格式:OUT OPD,OPS功能:從AL輸出8位數(shù)據(jù)或從AX輸出16位數(shù)據(jù)到端口(地址為n或在DX中)。OUT 40H,AL;將AL內(nèi)容送40H端口MOV DX,8F00H;將端口地址8F00H送DXOUT DX,AL;將AL內(nèi)容送8F00H端口輸入輸入/輸出指令對標志寄存器沒有影響。輸出指令對標志寄存器沒有影響。端口地址大于端口地址大于255時,必須用時,必須用DX指定端口指定端口地址。地址。 在中斷傳輸方式下,當(dāng)輸入設(shè)備將數(shù)據(jù)準備好或者輸出設(shè)在中斷傳輸方式下,當(dāng)輸入設(shè)備將數(shù)據(jù)準備好或者輸出設(shè)備可以接收數(shù)據(jù)時,便可以向備可以接收數(shù)據(jù)時,便可以向CPUCPU發(fā)出中
16、斷請求,使發(fā)出中斷請求,使CPUCPU暫時停暫時停止執(zhí)行當(dāng)前程序,而去執(zhí)行一個數(shù)據(jù)輸入止執(zhí)行當(dāng)前程序,而去執(zhí)行一個數(shù)據(jù)輸入/ /輸出的中斷服務(wù)程輸出的中斷服務(wù)程序,與外設(shè)進行數(shù)據(jù)傳輸操作,中斷程序執(zhí)行完后,序,與外設(shè)進行數(shù)據(jù)傳輸操作,中斷程序執(zhí)行完后,CPUCPU又轉(zhuǎn)又轉(zhuǎn)回繼續(xù)執(zhí)行原來的程序?;乩^續(xù)執(zhí)行原來的程序。 中斷方式的數(shù)據(jù)傳輸仍在程序的控制下執(zhí)行,也可稱為程中斷方式的數(shù)據(jù)傳輸仍在程序的控制下執(zhí)行,也可稱為程序中斷方式,適用于中、慢速外設(shè)的數(shù)據(jù)傳輸。序中斷方式,適用于中、慢速外設(shè)的數(shù)據(jù)傳輸。 利用中斷控制方式,利用中斷控制方式,CPUCPU不必花費大量的時間去檢測不必花費大量的時間去檢測
17、外設(shè)的狀態(tài),提高了外設(shè)的狀態(tài),提高了CPUCPU的效率。的效率。 在高速的外設(shè)或成塊交換數(shù)據(jù)的情況,采用程序在高速的外設(shè)或成塊交換數(shù)據(jù)的情況,采用程序控制方式進行數(shù)據(jù)的傳輸,是無法滿足要求的。在這控制方式進行數(shù)據(jù)的傳輸,是無法滿足要求的。在這種情況下,采用種情況下,采用DMA方式。方式。 DMA方式是在外設(shè)與內(nèi)存間建立起直接的通道,方式是在外設(shè)與內(nèi)存間建立起直接的通道,CPU不再直接參加外設(shè)和內(nèi)存間的數(shù)據(jù)傳輸。但系統(tǒng)不再直接參加外設(shè)和內(nèi)存間的數(shù)據(jù)傳輸。但系統(tǒng)需要進行需要進行DMA傳輸時,將傳輸時,將CPU對地址和數(shù)據(jù)及控制對地址和數(shù)據(jù)及控制線的管理權(quán)交由線的管理權(quán)交由DMA控制器進行控制,當(dāng)完
18、成了一控制器進行控制,當(dāng)完成了一次次DMA數(shù)據(jù)傳輸后,再將這個控制權(quán)還給數(shù)據(jù)傳輸后,再將這個控制權(quán)還給CPU,這,這些工作都是由硬件自動實現(xiàn)的,并不需要程序進行控些工作都是由硬件自動實現(xiàn)的,并不需要程序進行控制。制。 中斷概述中斷概述6.3.1中斷的處理過程中斷的處理過程6.3.28086/8088的中斷的中斷6.3.3中斷源及其分類中斷源及其分類1中斷系統(tǒng)及其功能中斷系統(tǒng)及其功能2中斷優(yōu)先級的確定中斷優(yōu)先級的確定3 CPU正在執(zhí)行某一段程序的過程中,如果外正在執(zhí)行某一段程序的過程中,如果外界或內(nèi)部發(fā)生了緊急事件,要求界或內(nèi)部發(fā)生了緊急事件,要求CPU暫停正暫停正在運行的程序轉(zhuǎn)去執(zhí)行這個緊急事
19、件的處理在運行的程序轉(zhuǎn)去執(zhí)行這個緊急事件的處理程序,待處理完后再回到被停止執(zhí)行程序的程序,待處理完后再回到被停止執(zhí)行程序的間斷點,繼續(xù)執(zhí)行原來被打斷了的程序,這間斷點,繼續(xù)執(zhí)行原來被打斷了的程序,這一過程稱為中斷。一過程稱為中斷。引起中斷的事件就稱為中斷源。引起中斷的事件就稱為中斷源。分為兩大類:分為兩大類:內(nèi)部中斷源:來自內(nèi)部中斷源:來自CPU內(nèi)部,如:內(nèi)部,如:CPU執(zhí)行指令時執(zhí)行指令時產(chǎn)生的異常、特殊操作引起的異常以及由程序員安產(chǎn)生的異常、特殊操作引起的異常以及由程序員安排在程序中的排在程序中的INT n軟件中斷指令。中斷的控制完軟件中斷指令。中斷的控制完全是在全是在CPU內(nèi)部實現(xiàn)的。內(nèi)
20、部實現(xiàn)的。外部中斷源:來自外部中斷源:來自CPU外部,如:如鍵盤、打印機、外部,如:如鍵盤、打印機、定時器時間到、電源掉電、硬件出錯等。利用定時器時間到、電源掉電、硬件出錯等。利用CPU的兩條中斷輸入信號線的兩條中斷輸入信號線INTR和和NMI來告訴來告訴CPU已已發(fā)生了中斷事件。發(fā)生了中斷事件。實現(xiàn)中斷響應(yīng)及返回實現(xiàn)中斷響應(yīng)及返回實現(xiàn)優(yōu)先權(quán)排隊實現(xiàn)優(yōu)先權(quán)排隊高級中斷源能中斷低級的中斷處理高級中斷源能中斷低級的中斷處理中中斷斷請請求求執(zhí)執(zhí)行行中中斷斷服服務(wù)務(wù)程程序序中斷過程示意圖中斷過程示意圖斷點:主程序中被斷點:主程序中被暫停執(zhí)行的指令的暫停執(zhí)行的指令的地址稱為斷點。地址稱為斷點。執(zhí)行主程序
21、執(zhí)行主程序繼繼續(xù)續(xù)執(zhí)執(zhí)行行主主程程序序響應(yīng)中斷響應(yīng)中斷返返回回主主程程序序當(dāng)某個中斷源發(fā)出中斷請求時,CPU能根據(jù)條件決定是否響應(yīng)該中斷請求。若允許響應(yīng),則CPU必須在執(zhí)行完現(xiàn)行指令后:保護斷點和現(xiàn)場(即把斷點處的斷點地址和各寄存器的內(nèi)容與標志位的狀態(tài)推入堆棧);轉(zhuǎn)到需要處理的中斷服務(wù)程序的入口;清除中斷請求觸發(fā)器。當(dāng)處理完中斷服務(wù)程序后,再恢復(fù)現(xiàn)場和斷點地址,使CPU返回斷點,繼續(xù)執(zhí)行主程序。在實際系統(tǒng)中有多個中斷源時,有可能出現(xiàn)兩個或兩個以上中斷源同時提出中斷請求的情況,而CPU同一時刻只能接受一個中斷申請。這樣就必須要設(shè)計者事先根據(jù)輕重緩急,給每個中斷源一個中斷優(yōu)先權(quán)。當(dāng)多個中斷源同時發(fā)
22、出中斷申請時,CPU能找到優(yōu)先級別最高的中斷源,響應(yīng)它的中斷請求。在優(yōu)先權(quán)級別最高的中斷源處理了以后,再響應(yīng)級別較低的中斷源。 當(dāng)CPU響應(yīng)某一中斷源的請求,在進行中斷處理時,若有優(yōu)先級別更高的中斷源發(fā)出中斷申請,則CPU要能中斷正在進行中的中斷服務(wù)程序,保留這個程序的斷點和現(xiàn)場(類似于子程序嵌套),響應(yīng)高級中斷,在高級中斷處理完以后,再繼續(xù)執(zhí)行被中斷的中斷服務(wù)程序。這就形成了中斷嵌套,如圖6.12所示。兩個中斷形成的是兩重中斷(或兩級嵌套),還可以進行多重中斷(或多級嵌套)。 中斷請求中斷請求1中斷響應(yīng)中斷響應(yīng)2中斷處理中斷處理3外設(shè)需要CPU服務(wù)時,首先要發(fā)出一個有效的中斷請求信號送到CP
23、U的中斷輸入端。中斷請求信號分為邊沿觸發(fā)和電平觸發(fā)。一般來說,CPU能夠即時予以響應(yīng)的中斷可以采用邊沿觸發(fā),而不能即時響應(yīng)的中斷則應(yīng)采用電平觸發(fā),否則中斷請求信號就會丟失。8088/8086CPU的NMI為邊沿觸發(fā),而INTR為電平觸發(fā)。為了保證產(chǎn)生的中斷能被CPU處理,INTR中斷請求信號應(yīng)保持到該請求被CPU響應(yīng)為止。CPU響應(yīng)后,INTR信號還應(yīng)及時撤除,以免造成多次響應(yīng)。 響應(yīng)中斷請求的響應(yīng)中斷請求的3 3個條件:個條件:(1)(1)一條指令執(zhí)行結(jié)束。一條指令執(zhí)行結(jié)束。 (2)CPU(2)CPU處于開中斷狀態(tài)。處于開中斷狀態(tài)。(3)(3)沒有總線請求。在復(fù)位沒有總線請求。在復(fù)位(RES
24、ET)(RESET)、總線保持、總線保持(HOLD)(HOLD)等總線等總線請求時,請求時,CPUCPU不工作,當(dāng)然就不能響應(yīng)中斷。不工作,當(dāng)然就不能響應(yīng)中斷。中斷響應(yīng)時,中斷響應(yīng)時,CPUCPU除了要向中斷源發(fā)出中斷響應(yīng)信號外,還除了要向中斷源發(fā)出中斷響應(yīng)信號外,還要自動完成下述要自動完成下述3 3項工作:項工作:(1)(1)關(guān)閉中斷。關(guān)閉中斷。CPUCPU響應(yīng)中斷時,需立即關(guān)中斷響應(yīng)中斷時,需立即關(guān)中斷( (使使IF=0)IF=0),以,以保證保護現(xiàn)場、斷點和獲取中斷入口地址等工作不受影響。保證保護現(xiàn)場、斷點和獲取中斷入口地址等工作不受影響。(2)(2)保護現(xiàn)場和斷點。將標志寄存器保護現(xiàn)場
25、和斷點。將標志寄存器FRFR、斷點的段基址、斷點的段基址(CS(CS值值) )和偏移地址和偏移地址(IP(IP值值) )壓入堆棧,以保證中斷結(jié)束后能正常返回壓入堆棧,以保證中斷結(jié)束后能正常返回被中斷的程序。被中斷的程序。(3)(3)獲得中斷服務(wù)程序入口,轉(zhuǎn)入中斷服務(wù)程序。獲得中斷服務(wù)程序入口,轉(zhuǎn)入中斷服務(wù)程序。 保護現(xiàn)場。保護現(xiàn)場是指把中斷服務(wù)程序中要用到的寄存器保護現(xiàn)場。保護現(xiàn)場是指把中斷服務(wù)程序中要用到的寄存器的原內(nèi)容壓入堆棧保存起來。的原內(nèi)容壓入堆棧保存起來。開中斷。開中斷。CPU響應(yīng)中斷時會自動關(guān)閉中斷響應(yīng)中斷時會自動關(guān)閉中斷(使使IF=0)。若進入。若進入中斷服務(wù)程序后允許中斷嵌套,
26、則需用指令開中斷中斷服務(wù)程序后允許中斷嵌套,則需用指令開中斷(使使IF=1)。執(zhí)行中斷處理程序。完成具體的中斷處理。執(zhí)行中斷處理程序。完成具體的中斷處理。關(guān)中斷。確保有效地恢復(fù)被中斷程序的現(xiàn)場。關(guān)中斷。確保有效地恢復(fù)被中斷程序的現(xiàn)場?;謴?fù)現(xiàn)場。就是把先前保護的現(xiàn)場進行恢復(fù),也即把所保存恢復(fù)現(xiàn)場。就是把先前保護的現(xiàn)場進行恢復(fù),也即把所保存的有關(guān)寄存器內(nèi)容按入棧的相反順序從堆棧中彈出,使這些的有關(guān)寄存器內(nèi)容按入棧的相反順序從堆棧中彈出,使這些寄存器恢復(fù)到中斷前的狀態(tài)。寄存器恢復(fù)到中斷前的狀態(tài)。開中斷返回。其操作正好是開中斷返回。其操作正好是CPU硬件在中斷響應(yīng)時自動保護硬件在中斷響應(yīng)時自動保護硬件
27、現(xiàn)場和斷點的逆過程,即硬件現(xiàn)場和斷點的逆過程,即CPU會自動地將堆棧內(nèi)保存的會自動地將堆棧內(nèi)保存的斷點信息和標志信息彈出到斷點信息和標志信息彈出到IP、CS和和FR中,保證被中斷的中,保證被中斷的程序從斷點處繼續(xù)往下執(zhí)行。程序從斷點處繼續(xù)往下執(zhí)行。8086/8088系統(tǒng)中給每種中斷都賦予一個中斷類型碼(或稱中斷號),編號為0255。CPU可根據(jù)中斷類型碼的不同來識別不同的中斷源。 中斷類型中斷類型1中斷優(yōu)先級順序中斷優(yōu)先級順序2中斷向量表中斷向量表3中斷處理過程中斷處理過程48086/8088系統(tǒng)的中斷源:外部中斷:來自CPU外部內(nèi)部中斷:來自CPU內(nèi)部 也稱為硬件中斷,它是由外部硬件或外設(shè)接
28、口產(chǎn)生的。8086/8088CPU為外部設(shè)備提供了兩條中斷信號線NMI和INTR。非屏蔽中斷非屏蔽中斷可屏蔽中斷可屏蔽中斷由NMI引腳上出現(xiàn)的上升沿觸發(fā),它不受中斷允許標志IF的控制,其中斷類型碼固定為2。CPU接收到非屏蔽中斷請求信號后,會在執(zhí)行完當(dāng)前指令后立即響應(yīng)中斷請求而進入相應(yīng)的中斷處理。非屏蔽中斷通常用來處理系統(tǒng)中出現(xiàn)的重大故障或緊急情況。從CPU的INTR端引入,高電平有效??善帘沃袛嗍苤袛嘣试S標志位IF的控制,只有當(dāng)IF=1,CPU才會響應(yīng)INTR請求。如果IF=0,即使中斷源有中斷請求,CPU也不會響應(yīng)。在微型計算機中,外部設(shè)備的中斷請求是通過中斷控制器8259A來進行統(tǒng)一管理
29、的,由8259A決定是否允許一個外設(shè)向CPU發(fā)出中斷請求。內(nèi)部中斷是CPU執(zhí)行了某些指令或者軟件對標志寄存器中某個標志位進行設(shè)置而產(chǎn)生的,由于它與外部硬件電路完全無關(guān),故也稱為軟件中斷。在8086/8088 CPU中,內(nèi)部中斷可分為5種類型:除法出錯中斷單步中斷斷點中斷溢出中斷中斷指令I(lǐng)NT n以上所述內(nèi)部中斷的類型碼均是固定,除單步中斷外,其他的內(nèi)部中斷不受IF狀態(tài)標志影響。在執(zhí)行除法指令時,若發(fā)現(xiàn)除數(shù)為0或商超過了結(jié)果寄存器所能表示的最大范圍,則立即產(chǎn)生一個中斷類型碼為0的中斷。 8086/8088 CPU的標志寄存器中有一位陷阱標志TF。CPU每執(zhí)行完一條指令都會檢查TF的狀態(tài)。若發(fā)現(xiàn)T
30、F=1,則CPU就產(chǎn)生中斷類型碼為1的中斷,使CPU轉(zhuǎn)向單步中斷的處理程序。單步中斷廣泛地用于程序的調(diào)試。 8086/8088指令系統(tǒng)中有一條專用于設(shè)置斷點的指令I(lǐng)NT 3。CPU執(zhí)行該指令就會產(chǎn)生一個中斷類型碼為3的中斷。INT 3指令是單字節(jié)指令,因而它能很方便地插入程序的任何地方,專門用于在程序中設(shè)置斷點來調(diào)試程序,它也稱為斷點中斷,插入INT 3指令之處便是斷點。在斷點中斷服務(wù)程序中,可顯示有關(guān)的寄存器、存儲單元等內(nèi)容,以便程序員分析到斷點為止程序運行是否正確。 若算術(shù)指令的執(zhí)行結(jié)果發(fā)生溢出(OF=1),則執(zhí)行INTO指令后立即產(chǎn)生一個中斷類型碼為4的中斷。溢出中斷為程序員提供了處理運
31、算溢出的手段,INTO指令通常和算術(shù)運算指令配合起來使用。 INT n是用戶自定義的軟件中斷指令,CPU執(zhí)行中斷指令I(lǐng)NT n也會引起內(nèi)部中斷,其中斷類型碼由指令中的n指定。80 x8680 x86微機可處理微機可處理256256個不同的中斷請求。個不同的中斷請求。80 x8680 x86將將256256個中斷統(tǒng)一編號為個中斷統(tǒng)一編號為02550255,稱作中斷類,稱作中斷類型號,中斷類型號是中斷源的唯一標識。型號,中斷類型號是中斷源的唯一標識。在在80 x8680 x86中斷系統(tǒng)中,中斷響應(yīng)時自動獲得中斷中斷系統(tǒng)中,中斷響應(yīng)時自動獲得中斷類型號,并據(jù)此得到該中斷服務(wù)程序入口地址,類型號,并據(jù)
32、此得到該中斷服務(wù)程序入口地址,然后轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。然后轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。問題問題: :中斷類型號和中斷服務(wù)程序的入口地址中斷中斷類型號和中斷服務(wù)程序的入口地址中斷向量如何聯(lián)系?向量如何聯(lián)系?中斷服務(wù)程序的入口地址叫做中斷向量。中斷服務(wù)程序的入口地址叫做中斷向量。中斷類型號n40000:4n+00000:4n+10000:4n+20000:4n+30010002010002000IPCS內(nèi)存中斷類型號和中斷向量的對應(yīng)關(guān)系中斷類型號和中斷向量的對應(yīng)關(guān)系每個中斷源都有一個中斷類型碼。中斷類型碼長度為一個字節(jié),故8086/8088最多允許處理256種類型的中斷(中斷類型碼為0255)。中斷向
33、量表位于內(nèi)存的最低1K字節(jié)(即內(nèi)存中00000H003FFH區(qū)域),用以存放256個中斷向量,即256個中斷的服務(wù)程序入口地址。每個中斷向量占4個字節(jié),其中低位字(2個字節(jié))存放中斷服務(wù)程序入口地址的偏移量,高位字(2個字節(jié))存放中斷服務(wù)程序入口地址的段地址。中斷向量在表中的存放地址=4中斷類型碼n取連續(xù)的4n和4n+l字節(jié)單元的內(nèi)容裝入IP,取4n+2和4n+3單元的內(nèi)容裝入CS,即可轉(zhuǎn)入中斷服務(wù)程序。 中斷類型碼的獲取中斷類型碼的獲取中斷類型碼的獲取中斷類型碼的獲取中斷處理中斷處理有兩種方法獲取中斷類型碼:有兩種方法獲取中斷類型碼:對于軟件中斷:類型碼為對于軟件中斷:類型碼為0、1、3、4
34、的中斷類的中斷類型碼由系統(tǒng)自動形成;對于型碼由系統(tǒng)自動形成;對于INT n指令,類型指令,類型碼由指令指定。碼由指令指定。對于硬件中斷:若為對于硬件中斷:若為NMI中斷,則由系統(tǒng)自動中斷,則由系統(tǒng)自動產(chǎn)生中斷類型碼產(chǎn)生中斷類型碼2;若為;若為INTR中斷,則中斷,則CPU轉(zhuǎn)入轉(zhuǎn)入2個連續(xù)周期的中斷響應(yīng)周期,并在第個連續(xù)周期的中斷響應(yīng)周期,并在第2個中斷響應(yīng)周期采樣數(shù)據(jù)總線,獲取中斷類個中斷響應(yīng)周期采樣數(shù)據(jù)總線,獲取中斷類型碼。型碼。 將類型碼乘4,計算出中斷向量的地址。硬件現(xiàn)場保護。即將標志寄存器F壓入堆棧,以保護當(dāng)前指令執(zhí)行結(jié)果的特征。清除IF和TF標志,屏蔽新的INTR中斷和單步中斷。保存
35、斷點,即把斷點處的IP和CS值壓入堆棧,先壓入CS值,再壓入IP值。根據(jù)計算出來的地址從中斷向量表中取出中斷服務(wù)程序的入口地址(段和偏移),分別送至CS和IP中。轉(zhuǎn)入中斷服務(wù)程序執(zhí)行。進入中斷服務(wù)程序后,首先要保護在中斷服務(wù)程序中要使用的寄存器內(nèi)容,然后進行相應(yīng)的中斷處理,現(xiàn)場恢復(fù)與中斷返回。在中斷返回前恢復(fù)保護的寄存器內(nèi)容,最后執(zhí)行中斷返回指令I(lǐng)RET。IRET的執(zhí)行將使CPU按次序恢復(fù)斷點處的IP、CS和標志寄存器,從而使程序返回到斷點處繼續(xù)執(zhí)行。 6.4.1 8259A6.4.1 8259A的內(nèi)部結(jié)構(gòu)及引腳分配的內(nèi)部結(jié)構(gòu)及引腳分配IR0IR0IR1IR1IR2IR2IR7IR7中斷控制器
36、中斷控制器8259A功能:功能:(1) 一片一片8259A可管理可管理8個中斷請求,具有個中斷請求,具有8級優(yōu)先權(quán)級優(yōu)先權(quán)控制,并能把當(dāng)前優(yōu)先權(quán)最高的中斷請求送到控制,并能把當(dāng)前優(yōu)先權(quán)最高的中斷請求送到CPU的的INTR端;端;(2) 每一級都可以由編程進行屏蔽或開放每一級都可以由編程進行屏蔽或開放(3) 通過級連可以擴展至通過級連可以擴展至64級級(4) 在中斷響應(yīng)周期,在中斷響應(yīng)周期,8259A可以提供相應(yīng)的中斷類可以提供相應(yīng)的中斷類型號;型號;(5) 通過編程可選擇通過編程可選擇8259A的各種工作方式。的各種工作方式。(2)(2)中斷服務(wù)寄存器中斷服務(wù)寄存器ISRISR ISR ISR
37、是一個是一個8 8位寄存器,用于寄存所有正在被服務(wù)的中位寄存器,用于寄存所有正在被服務(wù)的中斷級。在中斷響應(yīng)的第一個斷級。在中斷響應(yīng)的第一個INTA#INTA#周期,使對應(yīng)的周期,使對應(yīng)的ISRISR位位置置1 1而而IRRIRR位清位清0 0。(1)(1)中斷請求寄存器中斷請求寄存器IRRIRR 保存從保存從IR0IR0IR7IR7來的中斷請求信號,某位來的中斷請求信號,某位=1=1表示對表示對 應(yīng)的應(yīng)的IRiIRi有中斷請求有中斷請求 。(4)(4)優(yōu)先權(quán)電路優(yōu)先權(quán)電路 用于識別和管理用于識別和管理IRRIRR中各位的優(yōu)先權(quán)級別。能進行優(yōu)先中各位的優(yōu)先權(quán)級別。能進行優(yōu)先級判別,把未被屏蔽的最
38、高優(yōu)先級的中斷請求送到級判別,把未被屏蔽的最高優(yōu)先級的中斷請求送到CPUCPU。(3)(3)中斷屏蔽寄存器中斷屏蔽寄存器IMRIMR IMR IMR是一個是一個8 8位寄存器,存放中斷屏蔽字,某位位寄存器,存放中斷屏蔽字,某位=1=1表示表示對應(yīng)的對應(yīng)的IRiIRi輸入被屏蔽,為輸入被屏蔽,為0 0開放該中斷請求??赏ㄟ^指令開放該中斷請求??赏ㄟ^指令設(shè)置。設(shè)置。1.1.內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)(5)(5)控制邏輯電路控制邏輯電路 控制邏輯電路根據(jù)控制邏輯電路根據(jù)CPUCPU對對8259A8259A編程設(shè)定的工作方編程設(shè)定的工作方式管理式管理8259A8259A,負責(zé)發(fā)出,負責(zé)發(fā)出INTRINTR和接收
39、和接收INTA#INTA#,并使,并使INTA#INTA#轉(zhuǎn)化為內(nèi)部所需的各種控制信號。轉(zhuǎn)化為內(nèi)部所需的各種控制信號。(6)(6)讀讀/ /寫電路寫電路 讀讀/ /寫電路可接收寫電路可接收CPUCPU對對8259A8259A的初始化命令字的初始化命令字ICWICW和操作命令字和操作命令字OCWOCW,并將其存入相應(yīng)的端口寄存器,并將其存入相應(yīng)的端口寄存器,來規(guī)定來規(guī)定8259A8259A的工作方式和控制模式;也可以向的工作方式和控制模式;也可以向CPUCPU提提供各端口寄存器的內(nèi)容。供各端口寄存器的內(nèi)容。(7)(7)數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器 連接系統(tǒng)總線和連接系統(tǒng)總線和8259A8259A
40、的內(nèi)部總線,用于傳輸?shù)膬?nèi)部總線,用于傳輸8259A8259A的控制字或狀態(tài)字,以及中斷類型號。的控制字或狀態(tài)字,以及中斷類型號。(8)(8)級連緩沖級連緩沖/ /比較器比較器 控制多片控制多片8259A8259A的級連,擴展中斷級。多片的級連,擴展中斷級。多片8259A8259A級連時,一片為主,其余為從。最多可級連時,一片為主,其余為從。最多可9 9片級連,擴片級連,擴展展6464級中斷。級中斷。8259A8259A是是2828腳雙列直插式芯片。腳雙列直插式芯片。D7D0:D7D0:雙向三態(tài)數(shù)據(jù)線,直接與系統(tǒng)數(shù)據(jù)總線低雙向三態(tài)數(shù)據(jù)線,直接與系統(tǒng)數(shù)據(jù)總線低8 8位位相連;相連;IRQ0IRQ7
41、:IRQ0IRQ7:中斷請求輸入線,與外設(shè)相連,優(yōu)先權(quán)中斷請求輸入線,與外設(shè)相連,優(yōu)先權(quán)0 0至至7 7遞減;遞減;INT:INT:中斷請求輸出線,與中斷請求輸出線,與CPUCPU的的INTRINTR相連;相連;INTA:INTA:中斷允許線,接收來自中斷允許線,接收來自CPUCPU的中斷響應(yīng)信號的中斷響應(yīng)信號INTAINTA,與與CPUCPU的的INTAINTA相連。相連。CS, :CS, :片選信號端。片選信號端。WRWR:寫信號控制端。:寫信號控制端。RDRD:讀信號控制端。:讀信號控制端。CAS2CAS0:CAS2CAS0:級連信號線,主片為輸出,從片為輸入;級連信號線,主片為輸出,從
42、片為輸入;SP/EN:SP/EN:主從主從/ /允許緩沖線,具有雙向功能;允許緩沖線,具有雙向功能;VCCVCC,GND:GND:分別接分別接+5v+5v電源和接地電源和接地A0:A0:端口地址選擇信號,輸入,由端口地址選擇信號,輸入,由8259A8259A片內(nèi)譯碼,片內(nèi)譯碼,選擇內(nèi)部寄存器。選擇內(nèi)部寄存器。 一片一片8259A8259A有有2 2個端口地址,個端口地址,一個為偶地址,另一個為奇地址。一個為偶地址,另一個為奇地址。A0=0A0=0選擇偶地選擇偶地址端口,址端口,A0=1A0=1選擇奇地址端口。選擇奇地址端口。 8259A對外部中斷請求的響應(yīng)和處理過程如下:對外部中斷請求的響應(yīng)和
43、處理過程如下: (1) 當(dāng)中斷請求輸入線當(dāng)中斷請求輸入線IRQ0IRQ7中有一條或多條變高時,中有一條或多條變高時,則中斷請求寄存器則中斷請求寄存器IRR的相應(yīng)位置的相應(yīng)位置“1”。(2) 未被屏蔽的中斷請求信號進入優(yōu)先權(quán)判別器,優(yōu)先級判定未被屏蔽的中斷請求信號進入優(yōu)先權(quán)判別器,優(yōu)先級判定電路選出優(yōu)先級最高的中斷請求,控制電路由電路選出優(yōu)先級最高的中斷請求,控制電路由INT引腳向引腳向CPU發(fā)出中斷請求信號。發(fā)出中斷請求信號。(3) 如如CPU是處于開中斷狀態(tài),則在當(dāng)前指令執(zhí)行完后,用是處于開中斷狀態(tài),則在當(dāng)前指令執(zhí)行完后,用INTA#信號作為響應(yīng)。信號作為響應(yīng)。(4) 8259A在接收到在接
44、收到CPU的的INTA#信號后,使最高優(yōu)先級的信號后,使最高優(yōu)先級的ISR位置位置“1”,而相應(yīng)的,而相應(yīng)的IRR位清位清“0”。但在該中斷響應(yīng)周期。但在該中斷響應(yīng)周期中,中,8259A并不向系統(tǒng)總線送任何信息。并不向系統(tǒng)總線送任何信息。(5) CPU(8086/8088和和80X86)輸出第二個輸出第二個INTA#信號,信號,啟動第二個中斷響應(yīng)周期。在此周期中,啟動第二個中斷響應(yīng)周期。在此周期中,8259A向數(shù)向數(shù)據(jù)總線輸送一個據(jù)總線輸送一個8位的中斷類型號;位的中斷類型號;CPU讀取此類型讀取此類型號后將它乘以號后將它乘以4(左移左移2位位),即可從中斷服務(wù)程序向量,即可從中斷服務(wù)程序向量
45、表表(即入口地址表即入口地址表)中取出中斷服務(wù)程序的入口地址,中取出中斷服務(wù)程序的入口地址,包括段地址和段內(nèi)偏移地址。據(jù)此包括段地址和段內(nèi)偏移地址。據(jù)此CPU便可轉(zhuǎn)入中便可轉(zhuǎn)入中斷服務(wù)程序。斷服務(wù)程序。1.1.中斷嵌套方式中斷嵌套方式 8259A 8259A有兩種中斷嵌套方式:有兩種中斷嵌套方式:(1)(1)一般全嵌套方式一般全嵌套方式 一般全嵌套方式是一般全嵌套方式是8259A8259A最常用的工作方式,最常用的工作方式,初始化后的默認工作方式。此時中斷優(yōu)先權(quán)的級別初始化后的默認工作方式。此時中斷優(yōu)先權(quán)的級別是固定的,是固定的,IR0IR7IR0IR7遞減。遞減。CPUCPU響應(yīng)中斷時,屏蔽
46、掉響應(yīng)中斷時,屏蔽掉與它同級或低級的中斷請求。與它同級或低級的中斷請求。 在中斷處理過程中允許被更高優(yōu)先級的事件所中在中斷處理過程中允許被更高優(yōu)先級的事件所中斷稱為中斷嵌套。斷稱為中斷嵌套。8259A有兩種中斷嵌套方式:有兩種中斷嵌套方式: 8259A 8259A的中斷管理功能很強,單片可以管理的中斷管理功能很強,單片可以管理8 8級外級外部中斷,在多片級聯(lián)方式下最多可以管理部中斷,在多片級聯(lián)方式下最多可以管理6464級外部中級外部中斷,并且具有中斷嵌套、中斷優(yōu)先權(quán)判優(yōu)、中斷結(jié)束斷,并且具有中斷嵌套、中斷優(yōu)先權(quán)判優(yōu)、中斷結(jié)束和中斷觸發(fā)等多種中斷管理方式。和中斷觸發(fā)等多種中斷管理方式。 (2)(
47、2)特殊全嵌套方式特殊全嵌套方式和一般全嵌套方式基本相同,區(qū)別在于:和一般全嵌套方式基本相同,區(qū)別在于:在特殊全嵌套方式下,處理某一中斷時,在特殊全嵌套方式下,處理某一中斷時,可實現(xiàn)對同級中斷請求的響應(yīng)??蓪崿F(xiàn)對同級中斷請求的響應(yīng)。系統(tǒng)中只有單片系統(tǒng)中只有單片8259A8259A時,通常用全嵌時,通常用全嵌套方式;而當(dāng)套方式;而當(dāng)8259A8259A多片級連時,主片多片級連時,主片必須采用特殊全嵌套方式,從片可采用必須采用特殊全嵌套方式,從片可采用一般全嵌套方式。一般全嵌套方式。1.1.中斷嵌套方式中斷嵌套方式D.主主8259AIR0IR1IR2IR3IR4IR5IR6IR7一般全嵌套方式:一
48、般全嵌套方式:從片的從片的INTINT被主片封被主片封鎖,故更高級別的鎖,故更高級別的IR0-IR2IR0-IR2中斷也無法中斷也無法得到響應(yīng)得到響應(yīng)特殊全嵌套方式:特殊全嵌套方式:因主片不封鎖從片的因主片不封鎖從片的INTINT,故級別高的,故級別高的IR0-IR0-IR2IR2中斷可以得到響應(yīng)。中斷可以得到響應(yīng)。( (但但IR3-IR7IR3-IR7仍被本從仍被本從片封鎖片封鎖) )C.假定從片假定從片IR3發(fā)發(fā)生中斷生中斷,并獲得并獲得服務(wù)服務(wù)一般全嵌套方式:一般全嵌套方式:主片的主片的IR4IR4的中斷的中斷被服務(wù)時,這些被服務(wù)時,這些中斷將被封鎖。中斷將被封鎖。B.特殊全嵌套方式:特
49、殊全嵌套方式:IR4IR4的中斷被服的中斷被服務(wù) 時 , 只 封 鎖務(wù) 時 , 只 封 鎖IR5-IR7IR5-IR7。A.INTE.從從8259AINTIR0IR1IR2IR3IR4IR5IR6IR7n一般全嵌套方式與特殊全嵌套方式的區(qū)別一般全嵌套方式與特殊全嵌套方式的區(qū)別 去去CPU8259A8259A中斷優(yōu)先權(quán)的管理方式有固定優(yōu)先權(quán)方式和自中斷優(yōu)先權(quán)的管理方式有固定優(yōu)先權(quán)方式和自動循環(huán)優(yōu)先權(quán)方式兩種。動循環(huán)優(yōu)先權(quán)方式兩種。 (1 1固定優(yōu)先權(quán)方式固定優(yōu)先權(quán)方式在固定優(yōu)先權(quán)方式中,在固定優(yōu)先權(quán)方式中,IR7IR7IR0IR0的中斷優(yōu)先權(quán)的中斷優(yōu)先權(quán)的級別是由系統(tǒng)確定的。的級別是由系統(tǒng)確定的
50、。它們由高到低的優(yōu)先級順序是:它們由高到低的優(yōu)先級順序是:IR0, IR1, IR0, IR1, IR2, , IR7, IR2, , IR7, 其中,其中,IR0IR0的優(yōu)先級最高,的優(yōu)先級最高,IR7IR7的優(yōu)的優(yōu)先級最低。當(dāng)有多個先級最低。當(dāng)有多個IRiIRi請求時,優(yōu)先權(quán)判決器請求時,優(yōu)先權(quán)判決器PRPR將它們與當(dāng)前正在處理的中斷源的優(yōu)先權(quán)進行比較,將它們與當(dāng)前正在處理的中斷源的優(yōu)先權(quán)進行比較,選出當(dāng)前優(yōu)先權(quán)最高的選出當(dāng)前優(yōu)先權(quán)最高的IRiIRi,向,向CPUCPU發(fā)出中斷請求發(fā)出中斷請求INTINT,請求為其服務(wù)。請求為其服務(wù)。注注: 特殊全嵌套僅用于多個特殊全嵌套僅用于多個8259
51、A級連時的級連時的主主8259A,而不能用于從屬,而不能用于從屬8259A或單或單8259A系統(tǒng)。系統(tǒng)。(2 2自動循環(huán)優(yōu)先權(quán)方式自動循環(huán)優(yōu)先權(quán)方式 在自動循環(huán)優(yōu)先權(quán)方式中,在自動循環(huán)優(yōu)先權(quán)方式中,IR7IR7IR0IR0優(yōu)先權(quán)級別是可以改變的。優(yōu)先權(quán)級別是可以改變的。 其變化規(guī)律是:當(dāng)某一個中斷請求其變化規(guī)律是:當(dāng)某一個中斷請求IRiIRi服務(wù)結(jié)束后,該中斷的服務(wù)結(jié)束后,該中斷的優(yōu)先權(quán)自動降為最低,而緊跟其后的中斷請求優(yōu)先權(quán)自動降為最低,而緊跟其后的中斷請求IR(iIR(i1)1)的優(yōu)先權(quán)的優(yōu)先權(quán)自動升為最高,自動升為最高,IR7IR7IR0IR0優(yōu)先權(quán)級別按如下所示的右循環(huán)方式改優(yōu)先權(quán)級別
52、按如下所示的右循環(huán)方式改變。變。 假設(shè)在初始狀態(tài)假設(shè)在初始狀態(tài)IR0IR0有請求,有請求,CPUCPU為其服務(wù)完畢,為其服務(wù)完畢,IR0IR0優(yōu)先權(quán)優(yōu)先權(quán)自動降為最低,排在自動降為最低,排在IR7IR7之后,而其后的之后,而其后的IR1IR1的優(yōu)先權(quán)升為最高,的優(yōu)先權(quán)升為最高,其余依次類推。這種優(yōu)先權(quán)管理方式,可以使其余依次類推。這種優(yōu)先權(quán)管理方式,可以使8 8個中斷請求都擁個中斷請求都擁有享受同等優(yōu)先服務(wù)的權(quán)利。有享受同等優(yōu)先服務(wù)的權(quán)利。 在自動循環(huán)優(yōu)先權(quán)方式中,按確定循環(huán)時的最在自動循環(huán)優(yōu)先權(quán)方式中,按確定循環(huán)時的最低優(yōu)先權(quán)的方式不同,又分為普通自動循環(huán)方低優(yōu)先權(quán)的方式不同,又分為普通自動循環(huán)方式和特殊自動循環(huán)方式兩種。式和特殊自動循環(huán)方式兩種。普通自動循環(huán)方式的特點是:普通自動循環(huán)方式的特點是:IR7IR0中的初中的初始最高優(yōu)先級由系統(tǒng)指定,即指定始最高優(yōu)先級由系統(tǒng)指定,即指定IR0的優(yōu)先的優(yōu)先級最高,以后按右循環(huán)規(guī)則進行循環(huán)排隊。級最高,以后按右循環(huán)規(guī)則進行循環(huán)排隊。特殊自動循環(huán)方式的特點是:特殊自動
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《Unit 5 Welcome》(教學(xué)設(shè)計)-2024-2025學(xué)年北師大版(一起)英語二年級上冊
- 河北工業(yè)職業(yè)技術(shù)大學(xué)《數(shù)據(jù)結(jié)構(gòu)實驗》2023-2024學(xué)年第二學(xué)期期末試卷
- Unit 7 Outdoor fun Pronunciation 教學(xué)設(shè)計-2024-2025學(xué)年譯林版英語七年級下冊
- 廣東水利電力職業(yè)技術(shù)學(xué)院《建筑力學(xué)與結(jié)構(gòu)選型》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖北財稅職業(yè)學(xué)院《智慧物流技術(shù)與裝備》2023-2024學(xué)年第二學(xué)期期末試卷
- 黔南民族幼兒師范高等專科學(xué)校《電路實驗》2023-2024學(xué)年第二學(xué)期期末試卷
- 內(nèi)蒙古民族幼兒師范高等??茖W(xué)校《水利水電工程施工》2023-2024學(xué)年第二學(xué)期期末試卷
- 濟南2025年山東濟南市歷城區(qū)所屬事業(yè)單位招聘初級綜合類崗位50人筆試歷年參考題庫附帶答案詳解-1
- 焦作工貿(mào)職業(yè)學(xué)院《無人機行業(yè)應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 海南經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院《化學(xué)教學(xué)設(shè)計研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 白城2025年吉林大安市事業(yè)單位面向上半年應(yīng)征入伍高校畢業(yè)生招聘5人筆試歷年參考題庫附帶答案詳解
- 2025年市婦聯(lián)執(zhí)委會議上的工作報告
- 安全生產(chǎn)事故調(diào)查與案例分析(第3版)課件 呂淑然 第5、6章 事故案例評析、相關(guān)法律法規(guī)
- 2024-2025學(xué)年人教版數(shù)學(xué)六年級下冊第二單元百分數(shù)(二)(含答案)
- 2024年湖南鐵路科技職業(yè)技術(shù)學(xué)院高職單招語文歷年參考題庫含答案解析
- 祖沖之的平生與貢獻
- 2025年版護理法律法規(guī)
- 房屋市政工程生產(chǎn)安全重大事故隱患排查表(2024版)
- 統(tǒng)編版(2024新版)七年級下冊道德與法治期末復(fù)習(xí)背誦知識點提綱
- 口服降糖藥物分類詳解
- 健康體檢報告解讀頁課件
評論
0/150
提交評論