版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第7章中斷和中斷控制器、主要內(nèi)容、7.1中斷的基本概念中斷、中斷源中斷處理過(guò)程中斷優(yōu)先級(jí)7.2 8086/8088中斷系統(tǒng)中斷命令中斷分類中斷分類中斷分類中斷分類指標(biāo)中斷處理過(guò)程7.3中斷控制器8259A主要功能任務(wù)進(jìn)程/操作方法寄存器功能8259A編程、7.1中斷的基本概念、中斷、中斷源中斷中斷的概念輪詢方法:CPU查詢中斷方法:CPU收到外部請(qǐng)求后,停止當(dāng)前操作,改為運(yùn)行外圍操作,完成后繼續(xù)執(zhí)行中斷的操作,中斷和源中斷,中斷源:中斷引起的事件斷點(diǎn):主程序中斷位置中斷服務(wù)程序:中斷源的響應(yīng)和處理函數(shù)(程序),中斷的用途,中斷的用途時(shí)鐘中斷驅(qū)動(dòng)的操作系統(tǒng)(如Linux)、中斷源、硬件中斷和軟件
2、中斷、硬件中斷:硬件設(shè)備引起的中斷重置、鍵盤輸入、串行輸入輸出、傳感器信號(hào)、計(jì)時(shí)器等軟件中斷:由于執(zhí)行特殊命令而引起的請(qǐng)求信號(hào)單步調(diào)試、DOS屏幕輸入、輸出等相似之處和區(qū)別硬件中斷發(fā)生在硬件上軟件中斷不需要硬件中斷的中斷號(hào)通常由中斷控制器管理,可以屏蔽除非屏蔽中斷之外的所有其他東西。 軟件中斷的中斷號(hào)無(wú)法在不中斷控制器管理的情況下進(jìn)行掩碼、內(nèi)部中斷和外部中斷、內(nèi)部中斷:由CPU硬件本身或計(jì)算錯(cuò)誤引起的零、溢出、斷電等外部中斷:由CPU中的外圍設(shè)備引起的重置、鍵盤輸入、打印機(jī)等的異同內(nèi)部中斷通常是未屏蔽的外部中斷,是中斷和不可屏蔽的中斷??善帘沃袛啵篊PU是否通過(guò)狀態(tài)位響應(yīng)時(shí)鐘中斷;鍵盤中斷不可
3、屏蔽中斷:CPU是否必須響應(yīng)重置;除0 8086/8088外的兩條中斷輸入信號(hào)線:NMI和INTR NMI是不可屏蔽中斷輸入;INTR是屏蔽中斷輸入;中斷源及其分類摘要;軟件中斷硬件中斷可以是屏蔽中斷,也可以是非屏蔽中斷,屬于外部中斷。內(nèi)部中斷包括軟件中斷和硬件中斷。外部中斷只包括硬件中斷。7.1.2中斷處理進(jìn)程,確定中斷請(qǐng)求優(yōu)先級(jí)存儲(chǔ)中斷響應(yīng)現(xiàn)場(chǎng)中斷服務(wù)恢復(fù)現(xiàn)場(chǎng)中斷返回,中斷請(qǐng)求,中斷請(qǐng)求概念:當(dāng)外部設(shè)備需要CPU資源時(shí),將中斷信號(hào)發(fā)送到CPU的中斷輸入針中斷請(qǐng)求信號(hào)分類:觸發(fā)器(上升、下降、雙重)和級(jí)別觸發(fā)器(高、低)8086/8088 CPU在當(dāng)前命令執(zhí)行結(jié)束后才檢查中斷請(qǐng)求,因此,要取
4、消中斷請(qǐng)求信號(hào),必須保留到CPU作出中斷響應(yīng)為止。確定優(yōu)先級(jí),確定優(yōu)先級(jí)(中斷隊(duì)列)當(dāng)多個(gè)中斷源同時(shí)運(yùn)行中斷請(qǐng)求時(shí),CPU必須確定多個(gè)中斷源的優(yōu)先級(jí)以響應(yīng)最緊急的中斷請(qǐng)求。中斷源的優(yōu)先級(jí)應(yīng)根據(jù)中斷源的緊急性、重要性和外圍設(shè)備處理速度等綜合考慮不可屏蔽中斷的發(fā)生,并優(yōu)先應(yīng)對(duì)不可屏蔽中斷。對(duì)于中斷響應(yīng),中斷響應(yīng)內(nèi)部中斷,CPU確定中斷源,自動(dòng)跳轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序門戶地址以運(yùn)行中斷服務(wù)子例程。對(duì)于外部中斷,CPU確定標(biāo)志位IF,如果CPU允許響應(yīng)外部中斷(IF=1),則將中斷響應(yīng)信號(hào)返回到發(fā)出中斷請(qǐng)求的外圍設(shè)備。否則,CPU不應(yīng)發(fā)出中斷請(qǐng)求。,現(xiàn)場(chǎng)保存,運(yùn)行中斷,存儲(chǔ)站點(diǎn)CPU響應(yīng)中斷首先阻止C
5、PU響應(yīng)中斷信號(hào),并允許CS寄存器和IP寄存器通過(guò)中斷編號(hào)進(jìn)入中斷處理程序的中斷處理,以便為中斷返回地址和其他潛在破壞的寄存器8086/8088 CPU提供默認(rèn)中斷站點(diǎn)保護(hù),允許CPU響應(yīng)其他中斷8086/8088處理器CS和斷點(diǎn)站點(diǎn)恢復(fù)CPU終止中斷響應(yīng)彈出堆棧中存儲(chǔ)的所有寄存器內(nèi)容,恢復(fù)中斷之前的寄存器原始值中斷8086/8088處理器通過(guò)IRET命令從中斷狀態(tài)返回。 IRET指令自動(dòng)還原以前存儲(chǔ)的IP和CS值以及標(biāo)志寄存器FR或EFR的值,從而轉(zhuǎn)到主程序斷點(diǎn)地址。如果CPU自動(dòng)打開(kāi)封鎖,則可以響應(yīng)其他封鎖請(qǐng)求。7.1.3中斷優(yōu)先級(jí)管理,設(shè)置中斷優(yōu)先級(jí)的原因:中斷處理的重要性和延遲要求不同
6、根據(jù)中斷源的重要性為每個(gè)中斷源指定不同的優(yōu)先級(jí),多個(gè)中斷源請(qǐng)求為不同的中斷源指定服務(wù)順序(稱為中斷優(yōu)先級(jí))。當(dāng)多個(gè)中斷源同時(shí)請(qǐng)求CPU中斷時(shí),選擇當(dāng)前優(yōu)先級(jí)最高的中斷進(jìn)行處理。優(yōu)先級(jí)可以固定或動(dòng)態(tài)調(diào)整,如果優(yōu)先級(jí)確定方法(1)、軟件查詢方法CPU接受多個(gè)中斷請(qǐng)求,則使用軟件查詢方法確定首先查詢的中斷源。首先查詢的第一個(gè)響應(yīng);查詢中斷的順序是優(yōu)先級(jí)的高低順序。順序程序員在編輯查詢程序時(shí)設(shè)置規(guī)則、確定優(yōu)先級(jí)的方法(2)、硬連接串行排隊(duì)鏈:硬件實(shí)現(xiàn)軟件查詢不需要中斷矢量方法查詢、硬件直接跳轉(zhuǎn)、中斷掩碼(1)、中斷掩碼通常分為兩個(gè)級(jí)別。一個(gè)在CPU內(nèi)部完成,另一個(gè)在中斷控制器上完成。CPU中的中斷掩碼
7、處理器通常包含內(nèi)部中斷掩碼位(IF標(biāo)志),允許軟件確定外部屏蔽中斷請(qǐng)求INTR是否可以進(jìn)入系統(tǒng)。如果中斷允許觸發(fā)器設(shè)置1,則打開(kāi)中斷,并允許CPU響應(yīng)INTR請(qǐng)求。中斷在觸發(fā)程式為零時(shí)允許中斷,并防止CPU回應(yīng)外部中斷的INTR要求。中斷掩碼(2),中斷控制器中斷掩碼中斷控制器包含中斷掩碼寄存器,并為每個(gè)中斷源設(shè)置中斷掩碼位,以用于打開(kāi)或關(guān)閉外部中斷源請(qǐng)求。在中斷掩碼(3)、一個(gè)外部中斷的情況下,中斷控制器首先通過(guò)中斷請(qǐng)求信號(hào)和中斷掩碼寄存器啟動(dòng)和運(yùn)行,以確定中斷控制是否允許所有中斷請(qǐng)求信號(hào)或操作,并確定是否向CPU發(fā)送中斷請(qǐng)求信號(hào)。中斷控制器發(fā)送的中斷請(qǐng)求還與CPU的IF標(biāo)志位配合工作,以確
8、定CPU是否需要運(yùn)行中斷請(qǐng)求。中斷嵌套(1),概念:中斷嵌套是在系統(tǒng)響應(yīng)一個(gè)中斷服務(wù)時(shí),更高優(yōu)先級(jí)的另一個(gè)中斷發(fā)出中斷請(qǐng)求的情況下,系統(tǒng)完成更高級(jí)別的中斷服務(wù)處理(例如,掛起當(dāng)前運(yùn)行的中斷服務(wù)程序,響應(yīng)更高響應(yīng)級(jí)別的中斷請(qǐng)求),然后返回中斷的中斷服務(wù)程序并繼續(xù)運(yùn)行的過(guò)程。此過(guò)程是中斷。目的:確保CPU及時(shí)響應(yīng)較高級(jí)別的封鎖請(qǐng)求,嵌套封鎖(2),一般規(guī)則:當(dāng)CPU同時(shí)接收多個(gè)封鎖請(qǐng)求時(shí),首先響應(yīng)優(yōu)先級(jí)最高的封鎖請(qǐng)求。正在進(jìn)行的低優(yōu)先級(jí)中斷服務(wù)可能被高優(yōu)先級(jí)中斷請(qǐng)求中斷。正在響應(yīng)的中斷服務(wù)過(guò)程不能被新的同級(jí)或低優(yōu)先級(jí)中斷請(qǐng)求中斷。在特殊情況下,某些機(jī)制可能會(huì)導(dǎo)致兄弟中斷重疊或低優(yōu)先級(jí)中斷干擾高優(yōu)先
9、級(jí)中斷服務(wù)。,摘要,中斷的概念中斷源,中斷點(diǎn),中斷服務(wù)程序中斷處理的常規(guī)進(jìn)程中斷請(qǐng)求-確定中斷優(yōu)先級(jí)-確定中斷響應(yīng)-中斷點(diǎn)現(xiàn)場(chǎng)保護(hù)-中斷點(diǎn)現(xiàn)場(chǎng)恢復(fù)-中斷返回中斷優(yōu)先級(jí)確定方法,中斷掩碼,中斷嵌套,7.2 8086/8088中斷系統(tǒng),本節(jié)的主要內(nèi)容為CLI:關(guān)閉CPU中斷(標(biāo)志寄存器FLAGS的IF位置0);STI:打開(kāi)CPU中斷(標(biāo)志寄存器FLAGS的IF位置1);INT n:調(diào)用n類型的中斷服務(wù)程序,n是中斷號(hào),n=0-255;INTO:運(yùn)行溢出中斷服務(wù)程序以確定標(biāo)志寄存器FLAGS的OF位是否為1,例如,直接調(diào)用類型為4的中斷子例程以處理溢出中斷。IRET:中斷服務(wù)程序?qū)⒍褩m敳康?個(gè)字節(jié)
10、分別取出到IP、CS和FLAGS寄存器中,并返回返回返回中斷站點(diǎn)的命令。其中CLI、STI和IRET可用于硬件中斷控制,INT n,INTO為8086/8088的軟件中斷調(diào)用命令。8086/8088中斷命令(2),1。CPU全局中斷控制命令CLI,stististi命令允許CPU響應(yīng)外部中斷請(qǐng)求,其中標(biāo)志寄存器的IF位置1。CLI命令防止CPU對(duì)標(biāo)志寄存器中IF位置0的外部中斷請(qǐng)求做出響應(yīng)。2.中斷命令I(lǐng)NT n INT命令表示執(zhí)行類型n的中斷服務(wù)程序。其中n=0-255,INT命令的操作步驟如下:按下標(biāo)志寄存器FLAGS作為堆棧。INT命令使用以下命令堆棧CS和IP的寄存器內(nèi)容:計(jì)算中斷服務(wù)
11、門戶地址,將其傳遞給寄存器CS和IP,并運(yùn)行中斷服務(wù)程序,以便使用中斷命令I(lǐng)NT n時(shí)需要注意。 INT命令僅影響IF和TF,而不影響其他標(biāo)志位。 INT命令在適當(dāng)?shù)臅r(shí)候由用戶調(diào)用,可用于在DOS系統(tǒng)功能調(diào)用中調(diào)用INT 21H等系統(tǒng)服務(wù)程序。8086/8088中斷命令(3),3。溢出中斷INTO INTO命令檢查溢出標(biāo)志OF,如果OF=1,則啟動(dòng)中斷號(hào)為4的中斷進(jìn)程,如果OF=0,則不執(zhí)行任何操作。INTO命令通常放置在有符號(hào)算術(shù)操作命令之后,用于檢查溢出。IMUL DX乘法命令I(lǐng)NTO發(fā)生溢出時(shí)啟動(dòng)INT 4中斷服務(wù)mov result,ax mov result 2,dx4。中斷返回命令
12、IRET IRET iret命令用于從中斷服務(wù)程序返回中斷的程序。調(diào)用IRET時(shí),CPU將CS和IP寄存器的內(nèi)容從堆棧中彈出,并恢復(fù)標(biāo)志寄存器的內(nèi)容。所有中斷服務(wù)程序必須通過(guò)IRET返回到中斷點(diǎn)。8086/8088中斷分類,8086/8088中的中斷源外部中斷內(nèi)部中斷不可屏蔽中斷(連接到8086/8066 CPU的NMI針)屏蔽可中斷(連接到INTR針)外部中斷主要通過(guò)可編程中斷控制器8259A進(jìn)行管理。內(nèi)部中斷分為三個(gè)段:軟中斷CPU內(nèi)部硬件中斷、8086/8088中斷分類、8086/8088 CPU可以管理256個(gè)中斷。其中,中斷號(hào)0-4是系統(tǒng)專用中斷,5-31保留系統(tǒng)專用中斷,32-25
13、5是用戶定義的中斷。系統(tǒng)的中斷優(yōu)先順序?yàn)槌ㄥe(cuò)誤、INT n、INTO、NMI、INTR、單步。8086/8088外部屏蔽中斷,8086/8088系統(tǒng)的屏蔽中斷請(qǐng)求行INTR通常連接到中斷控制器8259A。8086/8088 CPU中斷是高電平觸發(fā)器,即INTR信號(hào)高電平有效。INTR為高級(jí)別時(shí),CPU根據(jù)全局中斷標(biāo)志位IF確定是否響應(yīng)中斷。IF為0時(shí),CPU禁止響應(yīng)INTR中斷,不響應(yīng)INTR的信號(hào),繼續(xù)運(yùn)行主程序。IF為1表示CPU完成當(dāng)前指令后,CPU識(shí)別相應(yīng)的中斷請(qǐng)求,并允許響應(yīng)執(zhí)行中斷處理的INTR中斷請(qǐng)求。CPU不鎖定INTR信號(hào),INTR信號(hào)必須保持不變,直到收到響應(yīng)信號(hào)intr
14、a或收到中斷源自身取消請(qǐng)求。8088外部中斷響應(yīng)進(jìn)程,8088中斷響應(yīng)后需要2個(gè)總線周期,即8個(gè)時(shí)鐘周期,因此INTR信號(hào)必須保持8個(gè)時(shí)鐘周期。如果CPU允許中斷,兩個(gè)低級(jí)響應(yīng)信號(hào)INTA將連續(xù)發(fā)送到外圍設(shè)備。第一個(gè)INTA信號(hào)通知8259A CPU準(zhǔn)備響應(yīng)中斷。當(dāng)8259A接收到第二個(gè)INTA信號(hào)后,在數(shù)據(jù)總線的低8位下發(fā)送請(qǐng)求服務(wù)外圍設(shè)備的中斷號(hào)時(shí),CPU用于通知CPU,在第二個(gè)總線周期中讀取數(shù)據(jù)總線,獲取外圍設(shè)備的中斷號(hào),并調(diào)用響應(yīng)的中斷服務(wù)程序,8086/8088外部不可屏蔽中斷,不可屏蔽中斷請(qǐng)求信號(hào)NMI,發(fā)生了CPU必須立即處理的中斷。非屏蔽中斷號(hào)固定為2,不需要CPU和外圍設(shè)備之
15、間的信號(hào)響應(yīng)。不能禁止NMI中斷請(qǐng)求,并立即被CPU鎖定。8086/8088 CPU需要終止當(dāng)前命令執(zhí)行才能響應(yīng)中斷。封鎖的等待時(shí)間取決于當(dāng)前指令執(zhí)行的執(zhí)行周期,通常在執(zhí)行乘法、除法、移位或循環(huán)指令時(shí)達(dá)到等待時(shí)間最長(zhǎng)的封鎖請(qǐng)求。8086/8088內(nèi)部中斷,內(nèi)部中斷是非屏蔽中斷,包括以下5種:除法錯(cuò)誤中斷。運(yùn)行DIV或IDIV除法命令后,如果業(yè)務(wù)大于指定的目標(biāo)操作數(shù)(即目標(biāo)寄存器可以表示的范圍),CPU會(huì)立即用中斷類型代碼0生成中斷。一步一步地妨礙。如果TF標(biāo)志為1,8086/8088將單步運(yùn)行,此時(shí)每次運(yùn)行命令時(shí),CPU都會(huì)自動(dòng)生成中斷號(hào)為1的中斷。CPU自動(dòng)將標(biāo)志寄存器按到堆棧上,清除TF和
16、IF。INT n命令中止。8086/8088 CPU通過(guò)發(fā)出INT命令生成軟中斷。指令中的中斷號(hào)n通知CPU n號(hào)軟件調(diào)用中斷的服務(wù)程序。斷點(diǎn)中斷。斷點(diǎn)中斷的中斷編號(hào)為3。斷點(diǎn)通常位于程序中的任何位置,中斷正常執(zhí)行進(jìn)程,以便用戶可以在斷點(diǎn)處確認(rèn)執(zhí)行。溢出中斷。如果上一個(gè)命令的執(zhí)行結(jié)果是溢出標(biāo)志OF為1,則溢出中斷命令I(lǐng)NTO在執(zhí)行時(shí)生成具有中斷編號(hào)4的中斷。8086/8088中斷比例,中斷方向指標(biāo)與保留中斷服務(wù)程序門戶地址的特定內(nèi)存區(qū)域8086/8088 CPU的256個(gè)中斷編號(hào)對(duì)應(yīng)于中斷服務(wù)程序的門戶地址。每個(gè)中斷服務(wù)程序的入口地址為4個(gè)存儲(chǔ)單元N號(hào)中斷矢量門戶地址=4*n地址4*n開(kāi)始2字節(jié)中斷服務(wù)子程序的偏移地址IP 4* N 2開(kāi)始的2字節(jié)包含中斷服務(wù)子程序的段地址CS,8086/8088中斷方向表,0,單級(jí)中斷,不可掩碼中斷,中斷點(diǎn)中斷和溢出中斷;27個(gè)系統(tǒng)預(yù)定中斷(中斷5-31)用于系統(tǒng)目的,不能由用戶定義。224個(gè)用戶定義的中斷(中斷32-255)可用于軟中斷INT n
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年甘肅省嘉峪關(guān)市民政局招聘公益性崗位人員參考考試試題附答案解析
- 區(qū)隊(duì)安全生產(chǎn)例會(huì)制度
- 綠色基地生產(chǎn)管理制度
- 安全生產(chǎn)宣傳報(bào)道制度
- 寫(xiě)字樓安全生產(chǎn)十項(xiàng)制度
- 工廠生產(chǎn)金屬管理制度
- 生產(chǎn)運(yùn)行記錄管理制度
- 2026廣西柳州事業(yè)單位招聘1111人參考考試題庫(kù)附答案解析
- 農(nóng)業(yè)安全生產(chǎn)制度范本
- 生產(chǎn)區(qū)域照明管理制度
- GB/T 30104.104-2025數(shù)字可尋址照明接口第104部分:一般要求無(wú)線和其他有線系統(tǒng)組件
- 2025年工業(yè)和信息化局公務(wù)員面試技巧與模擬題解析
- 三年級(jí)上冊(cè)數(shù)學(xué)第三單元題型專項(xiàng)訓(xùn)練-判斷題(解題策略專項(xiàng)秀場(chǎng))人教版(含答案)
- 湖南省婁底市新化縣2024-2025學(xué)年高一上學(xué)期期末考試生物試題(解析版)
- GB/T 45629.1-2025信息技術(shù)數(shù)據(jù)中心設(shè)備和基礎(chǔ)設(shè)施第1部分:通用概念
- 2025年中考?xì)v史開(kāi)卷考查范圍重大考點(diǎn)全突破(完整版)
- 學(xué)術(shù)誠(chéng)信與學(xué)術(shù)規(guī)范研究-深度研究
- 《ETF相關(guān)知識(shí)培訓(xùn)》課件
- 2025年云南省普洱市事業(yè)單位招聘考試(833人)高頻重點(diǎn)提升(共500題)附帶答案詳解
- DB15-T 3677-2024 大興安嶺林區(qū)白樺樹(shù)汁采集技術(shù)規(guī)程
- 2024年《13464電腦動(dòng)畫(huà)》自考復(fù)習(xí)題庫(kù)(含答案)
評(píng)論
0/150
提交評(píng)論