版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第九章中斷
■概述
■中斷原理
■中斷系統(tǒng)組成及其功能
■中斷響應(yīng)過程
■8086中斷系統(tǒng)
■8086CPU的中斷管理
■可編程中斷管理芯片8259A
概述
當(dāng)CPU用查詢的方式與外設(shè)交換信息時(shí),
CPU就要浪費(fèi)很多時(shí)間去等待外設(shè)。這樣
就引出一個(gè)快速的CPU與慢速的外設(shè)之間
數(shù)據(jù)傳送的矛盾,這也是計(jì)算機(jī)在發(fā)展
過程中遇到的嚴(yán)重問題之一。為解決這
個(gè)問題,一方面要提高外設(shè)的工作速度,
另一方面發(fā)展了中斷慨念。中斷系統(tǒng)是
計(jì)算機(jī)的重要指標(biāo)之一。
9.1中斷原理
一、從無條件傳送、條件傳送到中斷傳送
條件傳送最大的缺點(diǎn)就是為了CPU和外設(shè)在
時(shí)間上配合正確,CPU花大量的時(shí)間用無條件
方式對狀態(tài)線進(jìn)行查詢,從而降低了整個(gè)系統(tǒng)
的工作效率。
具有中斷功能的CPU中,有一個(gè)硬件部件專
門用于檢測外設(shè)的狀態(tài)線。
二、中斷概念
在中斷傳送方式下,外設(shè)應(yīng)有請求CPU
服務(wù)的權(quán)利,當(dāng)外部設(shè)備準(zhǔn)備好向CPU傳送
數(shù)據(jù),或者外設(shè)已準(zhǔn)備就緒接收CPU的數(shù)據(jù),
或者有某些緊急情況要求處理,或者是定時(shí)
時(shí)間到等等。這時(shí),外設(shè)向CPU發(fā)出中斷請
求,CPU接收到請求并在一定條件下,暫時(shí)
停止執(zhí)行原來的程序而轉(zhuǎn)去中斷處理,處理
好中斷服務(wù)再返回來執(zhí)行原來程序,這就是
一個(gè)中斷概念。
I?'.-.!■
iniiin
!由ii
處理文檔執(zhí)行主程序(日常事務(wù)程序)
電話鈴響中斷申請信號有效(中斷請求)
暫停文檔暫停執(zhí)行主程序響應(yīng)中斷
文檔中作暫停記號當(dāng)前PC及寄存器入棧(保護(hù)現(xiàn)場)
電話交談處理外設(shè)要求(中斷服務(wù))
找出暫停記號位置寄存器及PC出棧(恢復(fù)現(xiàn)場及中斷返回)
繼續(xù)處理文檔繼續(xù)執(zhí)行主程序
三、中斷應(yīng)用
1、實(shí)時(shí)故障處理
存儲器出錯(cuò)檢測電路
奇偶
存儲器位
奇偶檢測電路
2、分時(shí)操作,同時(shí)處理
有了中斷功能,CPU可命令多個(gè)外
設(shè)同時(shí)工作。雖然CPU在不同的時(shí)間
點(diǎn)上為不同的任務(wù)工作,但宏觀上
看CPU幾乎同時(shí)為不同的任務(wù)工作,
極大地發(fā)揮了CPU高速性的特點(diǎn)。
9.2中斷系統(tǒng)組成及其功能
一、三個(gè)與中斷有關(guān)的觸發(fā)器
1、中斷請求觸發(fā)器
有兩個(gè)特點(diǎn):
(1)它的輸出可以作為中斷請求信號,在滿足一
定條件的情況下把信號發(fā)送給CPU,并在CPU未響
應(yīng)時(shí)一直保存下去;
(2)、當(dāng)CPU滿足一定條件下響應(yīng)了該中斷請求
信號,執(zhí)行了相關(guān)的操作后,該中斷請求信號可
以被撤除。
中斷請求
+5V—DQ
狀態(tài)線CLK
-
R
外設(shè)讀、寫操作
2、中斷屏蔽觸發(fā)器
中斷屏蔽觸發(fā)器的功能就是決定
中斷請求觸發(fā)器的輸出信號是否可
以作為中斷請求信號發(fā)送給CPU,這
樣CPU通過對中斷屏蔽觸發(fā)器的設(shè)置
就可以達(dá)到對中斷源的控制。
求佶號
3、CPU內(nèi)部的中斷允許觸發(fā)器。
CPU通過對它進(jìn)行設(shè)置來決定是否對發(fā)給它的中
斷請求信號進(jìn)行響應(yīng)。
有些CPU,比如8086CPU,設(shè)置了兩種中斷類型
可屏蔽中斷和不可屏蔽中斷??善帘沃袛嗍苤袛?/p>
允許觸發(fā)器控制,只有當(dāng)IF為1時(shí),CPU才能響應(yīng)
中斷請求信號。而不可屏蔽中斷不受中斷允許觸
發(fā)器的控制,只要中斷請求信號有效,不管IF是
否為1,CPU就必須響應(yīng)。因此不可屏蔽中斷的中
斷優(yōu)先級要大于可屏蔽中斷的中斷優(yōu)先級。
—再談中斷條件
外設(shè)的中斷請求信號要想發(fā)給CPU并能最
終得到CPU的響應(yīng),必須要滿足如下兩個(gè)條
件:一個(gè)是中斷屏蔽觸發(fā)器處于非屏蔽狀態(tài)。
在這種情況下,中斷請求信號才能發(fā)給CPU。
但CPU是否相應(yīng)這個(gè)中斷,還要看中斷允許
觸發(fā)器是否處于開中斷狀態(tài)。只有CPU是開
中斷的條件下,CPU才能進(jìn)入中斷響應(yīng)過程,
處理中斷事務(wù)。這就是第二個(gè)條件。
9.3中斷響應(yīng)過程
中斷過程主要包括三個(gè)方面:
?外設(shè)發(fā)中斷請求信號給CPU即中斷請求;
?CPU對中斷請求信號所作出反應(yīng)即中斷響應(yīng)
?CPU執(zhí)行對外設(shè)操作的子程序即中斷處理。
匚一、中斷申請
當(dāng)中斷屏蔽觸發(fā)器狀態(tài)為1,則中斷請
求觸發(fā)器輸出的中斷請求信號發(fā)給CPU。
二、中斷響應(yīng)
CPU響應(yīng)可屏蔽中斷申請必須滿足3個(gè)條件:
①無總線請求;
q②CPU被允許中斷;
?③CPU執(zhí)行完現(xiàn)行指令.
三、中斷處理
CPU響應(yīng)中斷后要自動(dòng)完成三項(xiàng)任務(wù)
1、關(guān)閉中斷;
2、CS、IP以及FR的內(nèi)容推入堆棧
3、中斷服務(wù)程序段地址送入CS中,
偏移地址送入IP中。
一旦CPU響應(yīng)中斷,就可轉(zhuǎn)入中斷服務(wù)程
序之中。中斷服務(wù)程序的結(jié)構(gòu)如下:
四、中斷源識別及中斷優(yōu)先權(quán)
在中斷系統(tǒng)中一個(gè)非常關(guān)鍵的問題是
CPU如何知道是哪一個(gè)中斷源發(fā)出的中斷
申請信號。只有正確地確定中斷源,CPU
才能轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序?yàn)橹?wù)。
這里,確定中斷源的方法被稱為中斷源
識別或中斷方式。
1、中斷源識別
包括兩個(gè)方面:
其一,確定中斷源,
其二,找到該中斷服務(wù)程序的首地址。
下面我們給出解決問題的兩種方案。
piEIMHl
miRin.
i酬布
(1)查詢中斷
0.
2?
INAL.IPORT;從輸入接口取中斷信息
TESTAL,80H;是0號設(shè)備請求嗎?
JNZSEVO;是,轉(zhuǎn)0號設(shè)備服務(wù)程序
TESTAL.40H;否,是1號設(shè)備請求嗎?
JNZSEV1;是,轉(zhuǎn)1號設(shè)備服務(wù)程序
TESTAL.20H;否,是2號設(shè)備請求嗎?
JNZSEV2;是,轉(zhuǎn)2號設(shè)備服務(wù)程序
TESTAL.10H;否,是3號設(shè)備請求嗎?
JNZSEV3;是,轉(zhuǎn)3號設(shè)備服務(wù)程序
(2)矢量中斷
中斷申請信號和中斷
響應(yīng)信號是一對握手信號。
在驅(qū)動(dòng)一個(gè)中斷事件過程
中,中斷請求信號是外設(shè)
發(fā)給CPU的,當(dāng)其有效時(shí),
表示外設(shè)請求CPU為之服務(wù)。
而中斷響應(yīng)信號是CPU發(fā)給
外設(shè)的,當(dāng)其有效時(shí),表
明CPU可以為這個(gè)外設(shè)服務(wù),
同時(shí)要求外設(shè)提供中斷類
型號。
矢量中斷
2、中斷優(yōu)先權(quán)
(1)軟件方案
軟件查詢確定優(yōu)先權(quán)的缺點(diǎn)是,響應(yīng)中斷慢。
(2)、硬件方案
?鏈形電路
這種方法是利用外設(shè)在系統(tǒng)中的
物理位置來決定其中斷優(yōu)先權(quán)的
1
IE1'IEOIEI2*IEOIEI3‘1EQ
接收3,—<3IEO
?編碼電路
74LS148是一個(gè)8到3線的優(yōu)先權(quán)
編碼器,它是一個(gè)16個(gè)管腳雙列直
插式TTL器件.
輸入「
I.一116—Vcc輸出
】5—Ei01234567AzA]AoGsEo
215-Eo
1xxxxxxxx11111
k一3141Gs
01111111111110
I?—4£13一130XXXXXXx000001
E】—5g12—I20XXXXXx0100101
0XXXXX01101001
As—611—Il
0XXXX011101101
A]一710-Io0XXX0111110001
GND-89一Ao0XX01111110101
0X011111L11001
00111111111101
圖7.474L5148編碼器管腳圖及真值表
+5VDQ
INTR
TCLK
CS
A77RD
B7
A64
I7B6
INT7T7A5LINTA
fNn-d
I6B5
4A4S
I5B4
LA32接CPU的D??D.
B3
INT4--->I4A24
INT?ISA2
3B2
1AiAl5
叫YBl
I24AoAO
INTi<jIiBO
8
INToClo
pirn
l"T9.48086中斷系統(tǒng)
一、8086的中斷源
8086中斷系統(tǒng)有兩大類型的中斷源,一類
是由外部設(shè)備產(chǎn)生的中斷,我們稱之為硬件中
斷,硬件中斷有時(shí)又稱外中斷。另一類是由指
令在某種運(yùn)行結(jié)果時(shí)產(chǎn)生的中斷,我們稱之為
軟件中斷。另外對于硬件中斷,又分為不可屏
蔽中斷和可屏蔽中斷,硬件中斷是通過CPU芯
片的INTR管腳或NMI管腳從外部引入的。
中斷類型號和中斷服務(wù)子程序的入口地址之
間的關(guān)系:
內(nèi)存
IP
/0000:4n+000
中斷類0000:4n+l10
型號n0000:4n+200
0000:4n+320
八不可屏蔽中斷
所謂不可屏蔽中斷就是用戶不能通過
CPU內(nèi)的中斷允許觸發(fā)器IF控制的中斷,
由8086CPU的NMI管腳引入。NMI中斷請求
采用上升沿觸發(fā)方式,這種中斷一旦產(chǎn)
生,在CPU內(nèi)部直接生成中斷類型號02。
IF=O內(nèi)存
IP,CS,FR進(jìn)棧
IP=[2*4+0]
CS=[2*4+2]
M三、可屏蔽中斷
■可屏蔽中斷就是用戶可以控制的中斷,
其途徑是通過對CPU內(nèi)的中斷允許觸發(fā)器
IF的設(shè)置來禁止和允許CPU響應(yīng)中斷???/p>
屏蔽中斷由8086CPU的INTR管腳引入。這
種中斷請求需要設(shè)備提供中斷類型號,
CPU響應(yīng)中斷后,取中斷類型號的4倍作
為中斷服務(wù)入口地址表的地址,通過查
表得到相應(yīng)的中斷服務(wù)程序首地址,轉(zhuǎn)
S去執(zhí)行相應(yīng)的中斷服務(wù)程序。
IF=O內(nèi)存
0000:4*n+0
IP,CS,FR進(jìn)棧0000:4*n+l
0000:4*n+2
0000:4*n+3
取中斷類型號n
IP=[2*n+0]
CS=[2*n+2]
口、8086中斷系統(tǒng)
1、軟件中斷
軟件中斷是由中斷指令引起的。中
斷指令的指令格式為INTn,操作數(shù)n
就是中斷類型號。當(dāng)CPU執(zhí)行完畢中斷
指令I(lǐng)NTn后,就會立即產(chǎn)生一個(gè)中斷
類型號為n的中斷。
(1)除法中斷
當(dāng)進(jìn)行除法運(yùn)算時(shí),若除數(shù)為0或
除數(shù)太小,使得商數(shù)大于相應(yīng)寄存器
所能表示的最大值,被稱作除法出錯(cuò)。
這時(shí)除法指令就相當(dāng)于一個(gè)中斷源,
它向CPU發(fā)出類型0中斷。
(2)溢出中斷
當(dāng)算術(shù)運(yùn)算產(chǎn)生溢出時(shí),將在INTO指令控制下向
CPU發(fā)出類型4的中斷,即溢出中斷。
(3)單步中斷和斷點(diǎn)中斷
?單步中斷
當(dāng)8086CPU的標(biāo)志寄存器中的TF標(biāo)志為1時(shí),
8086CPU處于單步工作方式,這時(shí)CPU在每條指令
執(zhí)行后自動(dòng)產(chǎn)生類型1的中斷。
?斷點(diǎn)中斷
INT3指令是1字節(jié)指令,可將這條指令的目
的代碼嵌入任意條指令的操作碼處,從而實(shí)現(xiàn)斷
點(diǎn)中斷。
五、中斷概念的再討論
1、中斷與調(diào)子程序之間的關(guān)系
(1)中斷過程實(shí)際上是CPU從執(zhí)行當(dāng)前主程序轉(zhuǎn)到執(zhí)行為外設(shè)
服務(wù)的子程序,因此從這個(gè)角度來看,中斷過程是一個(gè)調(diào)
用子程序的過程。
(2)中斷過程與子程序調(diào)用還是有很大差別的,首先調(diào)用子
程序的過程是一個(gè)無條件過程,但中斷過程的中斷服務(wù)程
序的調(diào)用一般是有條件的。其次,子程序調(diào)用在整個(gè)程序
執(zhí)行中的位置是固定的。但對于硬件中斷過程,只要條件
滿足,在整個(gè)程序執(zhí)行的任意一時(shí)間點(diǎn)都有可能發(fā)生從主
程序向中斷服務(wù)子程序的轉(zhuǎn)移事件,也就是說硬件中斷產(chǎn)
生的調(diào)用過程是隨機(jī)的,不可預(yù)測的。
2、外部中斷和INTn之間的關(guān)系
結(jié)合中斷指令I(lǐng)NTn,我們可以這樣理
解外部中斷:當(dāng)外部中斷源發(fā)中斷給CPU時(shí),
如果CPU滿足一定的條件,處于開中斷狀態(tài),
CPU就可以響應(yīng)中斷,這時(shí)外設(shè)在CPU正在執(zhí)
行指令與其下一個(gè)指令之間,等效“插入”
了一個(gè)INTn指令,這里的n就是外設(shè)提供的
中斷類型號。注意這里用“等效”兩字表示
實(shí)際過程中是不存在插入INTn指令的操作,
但CPU確實(shí)完成了類似INTn指令的功能,實(shí)
現(xiàn)了主程序向中斷程序的轉(zhuǎn)移。
9.58086CPU的中斷管理
一、8086CPU的中斷處理順序
8086CPU的中斷優(yōu)先權(quán)排列從高到低為:
?1、除法出錯(cuò)中斷,溢出中斷,INTn;
?2、NM1;
?3、INTR;
?4、單步中斷。
O00H-除法中斷入口IP
fcs
0o4H
二、8086CPU的中5一單步中斷入口■,1
用0Q8H
中—NMI中斷入口一
斷服務(wù)入口地c
斷
八C
址表-斷點(diǎn)中斷入口一
—溢出中斷入口-
O4H
類型5中斷入口一
07FH類型31中斷入口一
080H
一類型32中斷入口-
3FCH
類型255中斷入口
、中斷入口地址設(shè)置
1、用串指令
CLI;關(guān)中斷
MOVAX,0
MOVES,AX;置附件段基地址為0
MOVDI,n*4;置附件段偏移地址到DI
MOVAX,OFFSETINT_VCE;置中斷程序首地址的偏移量到AX
CLD
STOSW;填偏移量到中斷地址表
MOVAX,SEGINT_VCE;置中斷程序的段基地址到AX
STOSW;填段基地址到中斷地址表
STI;開中斷
2、用偽指令
INT-TBLSEGMENTAT0;定義INT—TBL段,段基地址為0
ORGn*4;指定偏移地址
DDINT—VCE;存中斷程序入口地址
INT-TBLENDS
;其他處理
MCODESEGMENT;主程序
;其他處理
INT—VCEPROCFAR;中斷服務(wù)程序
IRET
INT—VCEENDP
3、用系統(tǒng)調(diào)用
使用DOS功能調(diào)用的25H功能
要求:
AL=中斷類型號
DS:DX=中斷服務(wù)程序首地址的段、偏移地
址
PUSHDS
MOVDX,SEGINT60H;段基地址送DS
MOVDS,DX
MOVDX,OFFSETINT60H;偏移地址送DX
MOVAL,60H;中斷類型號送AL
MOVAH,25H
INT21H;25H功能調(diào)用
POPDS
4、直接裝入法
若外設(shè)的中斷類型號為6BH,則此中斷類型
號對應(yīng)的中斷矢量表地址為從001ACH開始的
四個(gè)存儲單元.設(shè)中斷服務(wù)程序段地址是
1000H,偏移地址為2000H。
MOVAX,,0
MOVDS,AX;置數(shù)據(jù)段段基地址為0
MOVAX,2000H
MOVWORDPTR[01ACH],AX
;對偏移地址為01AC的單元
MOVAX.1000H;送雙字
MOVWORDPTR[01ACH+21,AX
9.6可編程中斷管理芯片8259A
一、8259A的內(nèi)部結(jié)構(gòu)
SP/EN
中斷檢測
中
斷
寄
存
器
二、8259A的中斷管理方式
1、中斷優(yōu)先權(quán)管理
(1)完全嵌套方式
8259A的中斷請求輸入端引入的中斷具
有固定的優(yōu)先權(quán)排隊(duì)順序,IR。為最高優(yōu)
先級,IRi為次高優(yōu)先級,依次類推,IR7
為最低優(yōu)先級。
S(2)自動(dòng)循環(huán)方式
從IR°—IR7引入的中斷輪流具有最高優(yōu)
先權(quán)。
(3)中斷屏蔽方式
有兩種方法:第一、普通屏蔽方式。
第二,采用特殊屏蔽方式。
(4)特殊完全嵌套方式
用在8259A有級聯(lián)的情況
2、8259A中斷結(jié)束的管理方式
(1)完全嵌套情況
可采用三種中斷結(jié)束方式:一般EOI方
式、特殊EOI方式、自動(dòng)EOI方式。最常
用的為一般EOI方式。
(2)自動(dòng)循環(huán)情況
也可采用三種中斷結(jié)束方式:一般EOI
方式、特殊EOI方式、自動(dòng)EOI方式。
三、IBM-PC機(jī)硬件中斷
1、中斷
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度教育設(shè)備租賃服務(wù)協(xié)議書3篇
- 2025年度智慧城市基礎(chǔ)設(shè)施場承包建設(shè)合同4篇
- 2025年度旅游度假區(qū)租賃合作協(xié)議4篇
- 二零二五年度草花產(chǎn)業(yè)鏈上下游合作協(xié)議及供應(yīng)鏈管理合同3篇
- 二零二五年度知識產(chǎn)權(quán)行業(yè)勞動(dòng)合同范本3篇
- 二零二五年度航空航天設(shè)備制造承包協(xié)議6篇
- 2025年度農(nóng)產(chǎn)品質(zhì)量安全檢測技術(shù)服務(wù)合同4篇
- 個(gè)人建房承攬協(xié)議實(shí)例版B版
- 2025年度產(chǎn)教融合校企深度合作協(xié)議4篇
- 2025年度企業(yè)培訓(xùn)場地租賃保證金及押金使用合同4篇
- 橫格紙A4打印模板
- CT設(shè)備維保服務(wù)售后服務(wù)方案
- 重癥血液凈化血管通路的建立與應(yīng)用中國專家共識(2023版)
- 兒科課件:急性細(xì)菌性腦膜炎
- 柜類家具結(jié)構(gòu)設(shè)計(jì)課件
- 陶瓷瓷磚企業(yè)(陶瓷廠)全套安全生產(chǎn)操作規(guī)程
- 煤炭運(yùn)輸安全保障措施提升運(yùn)輸安全保障措施
- JTGT-3833-2018-公路工程機(jī)械臺班費(fèi)用定額
- 保安巡邏線路圖
- (完整版)聚乙烯課件
- 建筑垃圾資源化綜合利用項(xiàng)目可行性實(shí)施方案
評論
0/150
提交評論