




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
微型計(jì)算機(jī)原理第9章中斷技術(shù)與中斷控制器第一頁(yè),共75頁(yè)?!?.1.1什么是中斷
(概念)在程序運(yùn)行中,系統(tǒng)出現(xiàn)了某種緊急事件,CPU必須中止現(xiàn)行程序,轉(zhuǎn)去處理此緊急事件(執(zhí)行中斷服務(wù)程序),并在處理完畢后再返回被打斷的程序。一個(gè)完整的中斷過程包括:中斷請(qǐng)求;中斷判優(yōu);中斷響應(yīng);中斷處理;中斷返回。§9.1中斷技術(shù)概述第9章中斷技術(shù)與中斷控制器第二頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器“中斷請(qǐng)求”是指中斷源(引起中斷的事件或設(shè)備)向CPU發(fā)出的請(qǐng)求中斷的要求;“中斷判優(yōu)”當(dāng)有多個(gè)中斷源發(fā)出中斷請(qǐng)求時(shí),需要通過適當(dāng)?shù)霓k法(軟件的;硬件的;軟、硬件結(jié)合的)決定究竟先處理哪個(gè)中斷請(qǐng)求;“中斷響應(yīng)”是指CPU中止現(xiàn)行程序轉(zhuǎn)至中斷服務(wù)程序的過程;“中斷處理”是指CPU執(zhí)行中斷服務(wù)程序,完成中斷請(qǐng)求所要求的操作;“中斷返回”執(zhí)行完中斷服務(wù)程序后,返回到原先被中斷的程序。第三頁(yè),共75頁(yè)。
1.中斷源:發(fā)出中斷請(qǐng)求的外部設(shè)備或內(nèi)部原因。2.中斷優(yōu)先級(jí):按照任務(wù)的輕重緩急給中斷源排隊(duì)。排隊(duì)方法有:軟件查詢法(需要少量硬件)簡(jiǎn)單排隊(duì)電路:如菊花鏈?zhǔn)?daisychain)優(yōu)先級(jí)電路硬件排隊(duì)電路:可編程中斷控制器(如8259)第9章中斷技術(shù)與中斷控制器第四頁(yè),共75頁(yè)。(1)軟件查詢法把各個(gè)外設(shè)的中斷請(qǐng)求信號(hào)“相或”,產(chǎn)生一個(gè)總的INT信號(hào)當(dāng)CPU響應(yīng)中斷后,進(jìn)入中斷處理程序,在中斷處理程序的開始部分安排一段查詢程序,對(duì)中斷源逐個(gè)查詢。優(yōu)點(diǎn):省硬件缺點(diǎn):中斷響應(yīng)慢第9章中斷技術(shù)與中斷控制器第五頁(yè),共75頁(yè)。(2)菊花鏈優(yōu)先級(jí)排隊(duì)電路第9章中斷技術(shù)與中斷控制器第六頁(yè),共75頁(yè)。INTR=INT1+INT2+INT3當(dāng)INTA信號(hào)沿菊花鏈行進(jìn)時(shí),最靠近CPU并發(fā)出INT請(qǐng)求的接口將首先攔截住INTA信號(hào),并送出中斷類型碼,進(jìn)入相應(yīng)的中斷處理程序;在服務(wù)完成后撤銷其請(qǐng)求(解除對(duì)下一級(jí)的阻塞和封鎖)。第9章中斷技術(shù)與中斷控制器第七頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器2.中斷屏蔽內(nèi)部屏蔽:CPU不響應(yīng)中斷(關(guān)中斷)中斷屏蔽:外部屏蔽:中斷請(qǐng)求信號(hào)不能送到CPU可屏蔽中斷:受IF控制(IF為“1”時(shí)中斷允許,IF為“0”時(shí)中斷屏蔽)非屏蔽中斷:不受IF控制(無論IF為“1”或?yàn)椤?”都允許中斷)(但可設(shè)計(jì)外部屏蔽電路進(jìn)行屏蔽)1.中斷請(qǐng)求
中斷源向CPU發(fā)出的請(qǐng)求中斷的信號(hào)叫中斷請(qǐng)求。CPU在執(zhí)行完每條指令后,自動(dòng)檢測(cè)中斷請(qǐng)求輸入線,以確定是否有外部發(fā)來的中斷請(qǐng)求信號(hào)。
指內(nèi)部屏蔽§9.1.3中斷請(qǐng)求與中斷屏蔽
第八頁(yè),共75頁(yè)。1.中斷服務(wù)程序:為完成中斷源所期望的功能而編寫的程序。2.
中斷服務(wù)程序的主要內(nèi)容:
保護(hù)現(xiàn)場(chǎng)
開中斷
具體中斷處理
關(guān)中斷
恢復(fù)現(xiàn)場(chǎng)
開中斷
中斷返回
§9.1.4中斷服務(wù)程序
第9章中斷技術(shù)與中斷控制器第九頁(yè),共75頁(yè)。1.中斷隱操作CPU響應(yīng)中斷時(shí),由內(nèi)部硬件執(zhí)行的一系列處理過程。隱操作把CPU引向中斷服務(wù)程序2.中斷類型、中斷向量、中斷向量表:中斷類型:中斷源的編號(hào)中斷向量:中斷服務(wù)程序的入口地址中斷向量表:內(nèi)存中集中存放中斷向量的區(qū)域以上三者關(guān)系:中斷向量在中斷向量表中第一個(gè)單元的地址=中斷類型×4第1條可執(zhí)行指令的第1個(gè)字節(jié)的地址§9.1.5中斷隱操作和中斷向量
第9章中斷技術(shù)與中斷控制器第十頁(yè),共75頁(yè)。對(duì)于可屏蔽中斷,當(dāng)CPU檢測(cè)到有中斷請(qǐng)求時(shí),如果滿足響應(yīng)條件就要予以響應(yīng)。具體過程如下:
關(guān)中斷保護(hù)斷點(diǎn)
保護(hù)現(xiàn)場(chǎng)
開中斷
具體中斷處理
關(guān)中斷
恢復(fù)現(xiàn)場(chǎng)
開中斷中斷返回
屬于隱操作屬于中斷服務(wù)程序可選擇與開中斷對(duì)應(yīng)主體§9.1.6中斷響應(yīng)過程
第9章中斷技術(shù)與中斷控制器第十一頁(yè),共75頁(yè)。§9.28086/8088中斷系統(tǒng)
中斷系統(tǒng):實(shí)現(xiàn)中斷的軟件和硬件的總和。§9.2.1中斷系統(tǒng)的基本功能
要求能判斷中斷源的優(yōu)先級(jí),并按優(yōu)先權(quán)的高低決定中斷響應(yīng)的順序。要求中斷系統(tǒng)能實(shí)現(xiàn)中斷和返回。要求中斷系統(tǒng)能實(shí)現(xiàn)中斷嵌套,即高優(yōu)先級(jí)中斷源的中斷請(qǐng)求能中斷低優(yōu)先級(jí)中斷源的中斷服務(wù)。
第9章中斷技術(shù)與中斷控制器第十二頁(yè),共75頁(yè)?!?.2.28086/8088的中斷系統(tǒng)
非屏蔽中斷(NMI)(2號(hào))
外部中斷(硬件中斷)可屏蔽中斷(INTR)(編號(hào)由程序設(shè)置)
除法出錯(cuò)(0號(hào))
內(nèi)部硬件中斷
單步跟蹤(1號(hào))
斷點(diǎn)中斷(3號(hào))
內(nèi)部中斷
溢出中斷(4號(hào))
內(nèi)部軟件中斷:INTn(編號(hào)n由程序確定)8086/8088的中斷源分類:
第9章中斷技術(shù)與中斷控制器第十三頁(yè),共75頁(yè)。1.8086/8088的中斷系統(tǒng)結(jié)構(gòu)
第9章中斷技術(shù)與中斷控制器第十四頁(yè),共75頁(yè)。
2.中斷類型碼、中斷向量與中斷向量表
中斷類型碼—8086/8088為每個(gè)中斷源指定的一個(gè)編號(hào)。
中斷向量—中斷服務(wù)程序的入口地址。
中斷向量表—把系統(tǒng)中所有的中斷向量按中斷類型碼從小到大的順序放到存儲(chǔ)器的某一個(gè)區(qū)域所形成的表。每個(gè)中斷向量占用4個(gè)存儲(chǔ)單元,8086/8088CPU的中斷系統(tǒng)最多能處理256個(gè)中斷源。
8086/8088以內(nèi)存00000H---003FFH共1024個(gè)單元作為中斷向量表。第9章中斷技術(shù)與中斷控制器第十五頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器中斷向量在中斷向量表中的存放次序:
按中斷類型號(hào)順序存放。每個(gè)中斷向量存放的首地址=中斷類型號(hào)×4。
CPU響應(yīng)中斷時(shí),需把中斷類型號(hào)N乘以4,得到中斷向量的對(duì)應(yīng)地址4N(該中斷向量所占4個(gè)字節(jié)單元的第一個(gè)字節(jié)單元的地址)。中斷向量的裝入:
兩個(gè)低字節(jié)單元的內(nèi)容裝入IP寄存器:IP=(4N,4N+1),兩個(gè)高字節(jié)單元的內(nèi)容裝入CS寄存器:CS=(4N+2,4N+3)。外部(NMI、INTR):由接口提供中斷類型號(hào)N的來源:硬件中斷:由內(nèi)部硬件提供內(nèi)部軟件中斷:由中斷指令提供第十六頁(yè),共75頁(yè)。例1:若中斷類型號(hào)為3,則由中斷類型號(hào)取得中斷服務(wù)程序入口地址的過程如下圖所示:00000H00001H0000CH(0000:000CH)1EA00H(1E00:0A00H)FFFFFH低地址內(nèi)存高地址1E000H+0A00H1EA00H中斷類型號(hào)3×4=000CH…….00(IPL)0A(IPH)00(CSL)1E(CSH)........中斷服務(wù)程序第9章中斷技術(shù)與中斷控制器第十七頁(yè),共75頁(yè)。例2.中斷類型號(hào)為20H,中斷服務(wù)程序的入口地址存放在0000:0080H開始的4個(gè)單元中。若:(0080H)=10H(0081H)=20H(0082H)=30H(0083H)=40H則:中斷服務(wù)程序的入口地址為第9章中斷技術(shù)與中斷控制器第十八頁(yè),共75頁(yè)。圖9.2
IBMPC/XT的硬件中斷控制邏輯
第十九頁(yè),共75頁(yè)。
3.外部中斷
協(xié)處理器運(yùn)算錯(cuò)RAM奇偶校驗(yàn)錯(cuò)I/O校驗(yàn)錯(cuò)NMI外部屏蔽電路第二十頁(yè),共75頁(yè)??善帘沃袛郔NTR
當(dāng)8086/8088的INTR引腳上有一個(gè)正跳變信號(hào)時(shí),便產(chǎn)生硬件可屏蔽中斷請(qǐng)求,該中斷請(qǐng)求可以用指令進(jìn)行屏蔽或允許。當(dāng)INTR的請(qǐng)求被允許時(shí),如果現(xiàn)行指令執(zhí)行完,其它中斷響應(yīng)條件也滿足,
CPU就會(huì)從引腳發(fā)出中斷響應(yīng)信號(hào)。這時(shí),中斷源要向CPU提供中斷類型碼,CPU得到類型碼后自動(dòng)從中斷向量表中取得相應(yīng)的中斷向量,從而轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。非屏蔽中斷NMI
當(dāng)8086/8088的NMI引腳來一個(gè)高電平時(shí),CPU自動(dòng)產(chǎn)生類型碼為2的中斷,并由此轉(zhuǎn)入相應(yīng)的服務(wù)程序。由于NMI引腳上的請(qǐng)求不能被CPU屏蔽,故常用于緊急情況的故障處理。
第9章中斷技術(shù)與中斷控制器第二十一頁(yè),共75頁(yè)。圖9.38086/8088可屏蔽中斷的響應(yīng)過程
第二十二頁(yè),共75頁(yè)。
4.內(nèi)部中斷
內(nèi)部中斷都是非屏蔽型:除法出錯(cuò)中斷是類型0單步中斷為類型1斷點(diǎn)中斷是類型3溢出中斷是類型4指令中斷INTn第9章中斷技術(shù)與中斷控制器8086/8088中斷源的優(yōu)先權(quán)優(yōu)先權(quán)按從高到低的順序排列為: 除法出錯(cuò)中斷→INTn→溢出中斷→NMI→INTR→斷點(diǎn)中斷→單步。
第二十三頁(yè),共75頁(yè)?!?.3.182C59A的主要特性
82C59A內(nèi)部結(jié)構(gòu)和外部引腳與8259A完全兼容。單一正5V電源,全靜態(tài)工作(無需外加時(shí)鐘)。該芯片集中斷源識(shí)別、判優(yōu)、提供中斷類型號(hào)于一體。每片82C59A能管理8級(jí)中斷。每片82C59A可送出8個(gè)8位的中斷類型號(hào)(自動(dòng)中斷向量轉(zhuǎn)移功能)。能用軟件屏蔽中斷請(qǐng)求輸入,通過編程可選擇多種不同的工作方式,以適應(yīng)各種系統(tǒng)的要求。通過82C59A級(jí)聯(lián),在不增加外部電路的情況下,最多可用9片82C59A級(jí)連管理64級(jí)中斷。
屬于中斷源的外部屏蔽§9.3可編程中斷控制器82C59A
第9章中斷技術(shù)與中斷控制器第二十四頁(yè),共75頁(yè)。§9.3.282C59A的內(nèi)部結(jié)構(gòu)
第9章中斷技術(shù)與中斷控制器第二十五頁(yè),共75頁(yè)。1.數(shù)據(jù)總線緩沖器
:8位雙向三態(tài)緩沖器。
CPU向82C59A寫入的命令字傳送的信息:CPU從82C59A讀取的狀態(tài)字82C59A向CPU提供的中斷類型碼2.讀/寫控制邏輯:內(nèi)部地址譯碼和讀寫操作控制。接收來自CPU的讀/寫命令,完成規(guī)定的操作。操作過程由、A0、和輸入信號(hào)共同控制。
第9章中斷技術(shù)與中斷控制器第二十六頁(yè),共75頁(yè)。3.級(jí)聯(lián)緩沖/比較器:用于82C59A的級(jí)聯(lián)和緩沖方式級(jí)連方式:傳送從82C59A的編號(hào)。第1個(gè)期間,識(shí)別ID標(biāo)志;第2個(gè)期間,該從片向CPU提供中斷類型碼。緩沖方式:輸出局部數(shù)據(jù)總線允許信號(hào)。第9章中斷技術(shù)與中斷控制器第二十七頁(yè),共75頁(yè)。4.中斷請(qǐng)求寄存器(IRR):連接中斷源,接收并寄存中斷請(qǐng)求信號(hào)。(有請(qǐng)求時(shí),IRR中相應(yīng)位置“1”)。5.中斷屏蔽寄存器(IMR):屏蔽中斷源可以對(duì)82C59A的8級(jí)中斷請(qǐng)求獨(dú)立地加以禁止或允許(當(dāng)某位被置“1”時(shí),與之對(duì)應(yīng)的中斷請(qǐng)求被屏蔽)。
6.優(yōu)先級(jí)分析器(PR):判斷優(yōu)先級(jí)。檢查中斷服務(wù)寄存器(ISR)的狀態(tài),判別有無優(yōu)先權(quán)更高的中斷正在接受服務(wù),若無,則把(IRR)中優(yōu)先權(quán)最高的中斷請(qǐng)求送入中斷服務(wù)寄存器。
第9章中斷技術(shù)與中斷控制器第二十八頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器7.中斷服務(wù)寄存器(ISR):寄存正在被響應(yīng)的中斷。
正在被服務(wù)的所有中斷級(jí),包括尚未服務(wù)完而中途被更高級(jí)的中斷打斷了的中斷級(jí),他們?cè)贗SR中的對(duì)應(yīng)位被置“1”,響應(yīng)完后立即清“0”。8.控制邏輯:按設(shè)置的工作方式控制82C59A的全部工作。
有中斷請(qǐng)求IRR相應(yīng)位置“1”
若中斷未屏蔽送PR判優(yōu)送ISR(相應(yīng)位置“1”)向CPU發(fā)出INTR信號(hào)若滿足響應(yīng)條件CPU發(fā)回INTA信號(hào)82C59A向CPU傳送中斷類型碼中斷處理中斷響應(yīng)完成ISR相應(yīng)位清“0”。第二十九頁(yè),共75頁(yè)?!?.3.382C59A引腳功能
82C59A的外部引腳引腳可分為三個(gè)部分:與CPU的接口引線與外設(shè)的接口引線用于級(jí)聯(lián)的接口引線
第9章中斷技術(shù)與中斷控制器第三十頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器1.82C59A與CPU的接口引腳
D7~D0:數(shù)據(jù)線,雙向,三態(tài)。
傳送的信息:控制字、狀態(tài)字、中斷類型碼。A0:地址線,輸入。偶地址端口:3個(gè)控制字,3個(gè)狀態(tài)字尋址82C59A內(nèi)部的端口:奇地址端口:4個(gè)控制字,1個(gè)狀態(tài)字:寫信號(hào),輸出,低高電平有效。 :讀信號(hào),輸出,低高電平有效。:片選信號(hào),輸出,低高電平有效。INT:中斷請(qǐng)求信號(hào),輸出,高電平有效。
用于由82C59A向CPU發(fā)出中斷請(qǐng)求,連接CPU的可屏蔽中斷請(qǐng)求輸入端INTR。
OCW1,ICW2,ICW3,ICW4ICW1,OCW2,OCW3IRR,ISR,中斷查詢字IMR第三十一頁(yè),共75頁(yè)。8259的讀寫功能第9章中斷技術(shù)與中斷控制器
:中斷響應(yīng)信號(hào),輸出,低電平有效。接收CPU送回的中斷響應(yīng)負(fù)脈沖。連接CPU控制總線的。
第三十二頁(yè),共75頁(yè)。
3.82C59A級(jí)聯(lián)時(shí)的接口引線
CAS2~CAS0:級(jí)連引腳,雙向。用來構(gòu)成82C59A的主從式級(jí)聯(lián)控制結(jié)構(gòu),傳送從片標(biāo)志。:從片編程/緩沖器允許信號(hào),雙向,低電平有效。
主片SP=“1”當(dāng)82C59A工作在非緩沖方式時(shí):輸入SP信號(hào)功能:從片SP=“0”=“0”允許
當(dāng)82C59A工作在緩沖方式時(shí):輸出緩沖器允許信號(hào)=“1”禁止2.82C59A與外設(shè)的接口引線
IR0~IR7:中斷請(qǐng)求,輸入,高電平或上升沿有效。
用于接收從外設(shè)來的中斷請(qǐng)求信號(hào)。每個(gè)引腳分別連接一個(gè)中斷源的中斷請(qǐng)求輸出端或連接一個(gè)82C59A從片的INT端(級(jí)聯(lián)方式時(shí))。第三十三頁(yè),共75頁(yè)?!?.3.482C59A的控制字
82C59A共有7個(gè)控制字4個(gè)初始化命令字(ICW1---ICW4)3個(gè)操作命令字(OCW1---OCW3)82C59A共有4個(gè)狀態(tài)字
IRR寄存器內(nèi)容、ISR寄存器內(nèi)容、
IMR寄存器內(nèi)容、中斷查詢字第9章中斷技術(shù)與中斷控制器第三十四頁(yè),共75頁(yè)。1.初始化命令字
初始化命令字通常是系統(tǒng)開機(jī)時(shí),由初始化程序填寫的,而且在整個(gè)系統(tǒng)工作過程中保持不變。初始化命令字有四個(gè)ICW1、ICW2、ICW3、ICW4。寫入順序?yàn)镮CW1、ICW2、ICW3、ICW4其中:是否寫入ICW3和ICW4,由ICW1決定。第9章中斷技術(shù)與中斷控制器第三十五頁(yè),共75頁(yè)。ICW1的格式和含義
ICW1:芯片控制初始化命令字。寫入82C59A的偶地址端口。初始化命令字ICW1寫入后,8259內(nèi)部完成初始化過程:(1)清除ISR和IMR寄存器;(2)指定中斷優(yōu)先級(jí)R0R7;(3)從片的地址置成7;(4)特殊屏蔽方式復(fù)位;(5)自動(dòng)EOI循環(huán)方式復(fù)位;(6)邊沿觸發(fā)器復(fù)位。第9章中斷技術(shù)與中斷控制器第三十六頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器ICW1IC4SNGLADI0*1LTIM**A0D7D6D5D4D3D2D1D001不寫ICW4寫ICW401級(jí)聯(lián),寫ICW3單片,不寫ICW3=0(不用)8088/8086不用標(biāo)志位0=邊沿觸發(fā)方式1=電平觸發(fā)方式ICW1的格式和各位的定義如下:當(dāng)ICW4=00H時(shí),不寫第三十七頁(yè),共75頁(yè)。ICW2的格式和含義
ICW2:是設(shè)置中斷類型碼的初始化命令字寫到8259A的奇地址端口,其格式和各位定義如下:
ICW2
D7D6D5D4D3D2D1D0A11/T31A0A10A15/T7A14/T6A13/T5A12/T4A9A8自動(dòng)填入中斷類型碼高5位第9章中斷技術(shù)與中斷控制器第三十八頁(yè),共75頁(yè)。
D7D6D5D4D3D2D1D0IR7T7T6T5T4T3111IR6T7T6T5T4T3110IR5T7T6T5T4T3101IR4T7T6T5T4T3100IR3T7T6T5T4T3011IR2T7T6T5T4T3010IR1T7T6T5T4T3001IR0T7T6T5T4T3000寫入82C59A的中斷向量不需設(shè)置,由硬件自動(dòng)生成第9章中斷技術(shù)與中斷控制器第三十九頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器①主片ICW3:規(guī)定哪一個(gè)IR引腳接有從片
IRi接有從片:其對(duì)應(yīng)位設(shè)置為“1”未接從片:對(duì)應(yīng)位設(shè)置為“0”
例如:主82C59A的IR0、IR3上分別接有從片,則主片的ICW3=00001001。
ICW31A0D7D6D5D4D3D2D1D0IR2IR5IR4IR3IR7IR6IR1IR0
ICW3的格式和含義
ICW3:標(biāo)志主片/從片的初始化命令字寫到82C59A的奇地址端口
只有在一個(gè)系統(tǒng)中使用了兩片以上82C59A并級(jí)聯(lián)時(shí),才需要寫入ICW3第四十頁(yè),共75頁(yè)。②從片ICW3:
表明從片接在主片的哪一根IR線上。ICW31A0D7D6D5D4D3D2D1D0ID200000ID1ID0ID2ID1ID0從片所接的引腳000IR0001IR1……………………111IR7第9章中斷技術(shù)與中斷控制器第四十一頁(yè),共75頁(yè)。ICW4:方式控制初始化命令字寫入奇地址端口ICW4PMAEOIM/S10SFNMBUF00A0D7D6D5D4D3D2D1D00=一般全嵌套方式1=特殊全嵌套方式=非緩沖方式,此時(shí)若用級(jí)聯(lián),由SP/EN確定主從片。=緩沖方式,本片為從片=緩沖方式,本片為主片0101101選用80858086/808801正常EOI方式自動(dòng)EOI方式ICW4的格式和含義第9章中斷技術(shù)與中斷控制器第四十二頁(yè),共75頁(yè)。2.操作命令字
操作命令字在82C59A應(yīng)用程序中使用,可在初始化后根據(jù)需要隨時(shí)寫入,并且在寫入次序上沒有嚴(yán)格的要求。操作命令字有3個(gè),OCW1~OCW3第9章中斷技術(shù)與中斷控制器第四十三頁(yè),共75頁(yè)。OCW1—中斷屏蔽字OCW1:中斷屏蔽操作命令字寫入82C59A的奇地址端口,其格式和各位定義如下:
OCW1M01A0D7D6D5D4D3D2D1D0M7M6M5M4M3M2M1中斷屏蔽字:Mi=1屏蔽中斷IRi Mi=0允許中斷IRi第9章中斷技術(shù)與中斷控制器第四十四頁(yè),共75頁(yè)。OCW2—控制中斷結(jié)束和優(yōu)先級(jí)循環(huán)方式的命令
設(shè)置優(yōu)先級(jí)循環(huán)方式和發(fā)中斷結(jié)束命令
寫入偶地址端口其格式和各位定義如下:
L00A0D7D6D5D4D3D2D1D0RSLEOI00L2L1OCW2標(biāo)志位指定IRi0不發(fā)中斷結(jié)束命令1發(fā)中斷結(jié)束命令L2~L0無效0L2~L0有效1固定優(yōu)先級(jí)0旋轉(zhuǎn)優(yōu)先級(jí)1IR0至IR7優(yōu)先級(jí)動(dòng)態(tài)變化優(yōu)先級(jí)從高到低為IR0↓IR7第四十五頁(yè),共75頁(yè)。RSLEOI操作000固定優(yōu)先級(jí),不發(fā)中斷結(jié)束命令001固定優(yōu)先級(jí),發(fā)一般中斷結(jié)束命令010固定優(yōu)先級(jí),不發(fā)中斷結(jié)束命令011固定優(yōu)先級(jí),發(fā)特殊中斷結(jié)束命令100普通旋轉(zhuǎn)優(yōu)先級(jí),不發(fā)中斷結(jié)束命令101普通旋轉(zhuǎn)優(yōu)先級(jí),發(fā)一般中斷結(jié)束命令10特殊旋轉(zhuǎn)優(yōu)先級(jí),不發(fā)中斷結(jié)束命令111特殊旋轉(zhuǎn)優(yōu)先級(jí),發(fā)特殊中斷結(jié)束命令R、SL、EOI編碼表L2L1L0IR000IR0001IR1010IR2011IR3100IR4101IR5110IR6111IR7L2、L1、L0編碼表第9章中斷技術(shù)與中斷控制器第四十六頁(yè),共75頁(yè)。(1)中斷結(jié)束命令 普通EOI結(jié)束方式:8259A收到EOI結(jié)束命令后,自動(dòng)將ISR中級(jí)別最高的被置“1”的位清“0”。特殊EOI結(jié)束方式:正常EOI是自動(dòng)清除級(jí)別最高的ISR中對(duì)應(yīng)位,而特殊EOI則清除由L0—L2指定的ISR對(duì)應(yīng)位。自動(dòng)AEOI結(jié)束方式:某中斷被響應(yīng)后,ISR對(duì)應(yīng)位被置1,但CPU在中斷響應(yīng)的第二個(gè)負(fù)脈沖將ISR的對(duì)應(yīng)位清0。此時(shí),盡管CPU對(duì)某個(gè)外設(shè)正在進(jìn)行中斷服務(wù),但在8259A中無指示,低級(jí)別的中斷請(qǐng)求可打斷高級(jí)別的中斷服務(wù),可能產(chǎn)生重復(fù)嵌套,嵌套深度無法控制。(硬件自動(dòng)結(jié)束中斷)在級(jí)聯(lián)方式下,一般用非自動(dòng)結(jié)束方式,中斷結(jié)束時(shí),要發(fā)兩次中斷結(jié)束命令,一次是對(duì)主片,另一次是對(duì)從片。第9章中斷技術(shù)與中斷控制器第四十七頁(yè),共75頁(yè)。IR77IR66IR55IR44IR33IR22IR11IR00默認(rèn)優(yōu)先級(jí)IR74IR63IR52IR41IR30IR27IR16IR05循環(huán)優(yōu)先級(jí)(2)優(yōu)先級(jí)設(shè)定命令特殊循環(huán):循環(huán)初態(tài)為:由L2~L0編碼設(shè)定最低優(yōu)先級(jí)。例:若設(shè)定IR2對(duì)應(yīng)的設(shè)備優(yōu)先級(jí)最低,則IR3對(duì)應(yīng)的設(shè)備優(yōu)先級(jí)最高。(3)優(yōu)先級(jí)循環(huán)普通循環(huán):循環(huán)初態(tài)為:IR0最高IR7最低。第9章中斷技術(shù)與中斷控制器第四十八頁(yè),共75頁(yè)。OCW3—特殊屏蔽方式和查詢方式命令字OCW3的功能有三個(gè):設(shè)置和撤消特殊屏蔽方式;設(shè)置中斷查詢方式;設(shè)置對(duì)82C59A內(nèi)部寄存器的讀出命令寫入偶地址端口,其格式和各位定義如下:
RIS0A0D7D6D5D4D3D2D1D00ESMMSMM01PRROCW30×
:無效10下個(gè)讀命令為讀IRR11下個(gè)讀命令為讀ISR1:發(fā)中斷查詢命令0:不發(fā)中斷查詢命令標(biāo)志位:不允許特殊屏蔽10:不設(shè)置特殊屏蔽方式11:設(shè)置特殊屏蔽方式0X第四十九頁(yè),共75頁(yè)。1.中斷查詢字:查詢有無中斷請(qǐng)求查詢字的格式及其各位含義:查詢字W00A0D7D6D5D4D3D2D1D0I????W2W1無請(qǐng)求0有請(qǐng)求1哪個(gè)引腳有請(qǐng)求000IR0001IR1011IR2011IR3100IR4101IR5110IR6111IR7第9章中斷技術(shù)與中斷控制器§9.3.582C59A的狀態(tài)字
第五十頁(yè),共75頁(yè)。4.狀態(tài)字IMR:其內(nèi)容表明哪個(gè)中斷請(qǐng)求被屏蔽IMR1A0D7D6D5D4D3D2D1D0第9章中斷技術(shù)與中斷控制器ISR0A0D7D6D5D4D3D2D1D03.狀態(tài)字ISR:其內(nèi)容表明哪個(gè)中斷正在被服務(wù)IRR0A0D7D6D5D4D3D2D1D02.狀態(tài)字IRR:其內(nèi)容表明哪個(gè)輸入引腳有中斷請(qǐng)求第五十一頁(yè),共75頁(yè)。1.中斷屏蔽方式
普通的中斷屏蔽方式(高級(jí)服務(wù)能屏蔽低級(jí)請(qǐng)求)優(yōu)先權(quán)低的中斷請(qǐng)求不能打斷優(yōu)先權(quán)高的中斷服務(wù)。OCW3中的ESMM=0
特殊的中斷屏蔽方式
(高級(jí)服務(wù)不能屏蔽低級(jí)請(qǐng)求)無論CPU是否正在處理較高級(jí)的中斷,只要未被屏蔽的中斷請(qǐng)求到來(可能是較低級(jí)的),CPU都會(huì)響應(yīng),就像優(yōu)先權(quán)不起作用一樣。ESMM=1且SMM=1
§9.3.682C59A的工作方式
第9章中斷技術(shù)與中斷控制器第五十二頁(yè),共75頁(yè)。2.中斷嵌套方式
普通全嵌套方式低級(jí)或同級(jí)中斷請(qǐng)求,不能打斷高級(jí)的中斷服務(wù)。ICW4的SFNM=0
特殊全嵌套方式
在級(jí)聯(lián)情況下,主片能實(shí)現(xiàn)同級(jí)中斷嵌套。ICW4的SFNM=1
第9章中斷技術(shù)與中斷控制器第五十三頁(yè),共75頁(yè)。3.設(shè)置優(yōu)先級(jí)的方式
固定優(yōu)先級(jí)
82C59A的8個(gè)中斷源的優(yōu)先級(jí)固定為IR0IR1……IR7。OCW2的R=0
旋轉(zhuǎn)優(yōu)先級(jí)
82C59A的8個(gè)中斷源的優(yōu)先級(jí)別隨著中斷響應(yīng)的結(jié)束動(dòng)態(tài)變化。OCW2的R=1優(yōu)先權(quán)旋轉(zhuǎn)分為兩種形式:優(yōu)先級(jí)自動(dòng)旋轉(zhuǎn)方式:初態(tài)為IR0IR1……IR7。優(yōu)先級(jí)特殊旋轉(zhuǎn)方式:初態(tài)由OCW2的L2~L0指定最低級(jí)。第9章中斷技術(shù)與中斷控制器第五十四頁(yè),共75頁(yè)。4.中斷結(jié)束方式
當(dāng)一個(gè)中斷服務(wù)程序完成時(shí),必須給82C59A發(fā)一個(gè)命令,復(fù)位ISR中的對(duì)應(yīng)位,用以表示中斷服務(wù)已經(jīng)完成。82C59A可工作在不同的中斷結(jié)束方式:
第9章中斷技術(shù)與中斷控制器非自動(dòng)中斷結(jié)束
普通中斷結(jié)束特殊中斷結(jié)束ICW4中的AEOI=0且OCW2中的EOI=1ICW4中的AEOI=0OCW2中的SL=1且EOI=1自動(dòng)中斷結(jié)束
ICW4中的AEOI=1結(jié)束的中斷由OCW2的L2~L0指定第五十五頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器5.查詢中斷方式
查詢方法:向82C59A寫入OCW3,并使P=1從偶地址端口讀入查詢字查詢字W00A0D7D6D5D4D3D2D1D0I????W2W1無請(qǐng)求0有請(qǐng)求1000IR0001IR1011IR2011IR3100IR4101IR5110IR6111IR7第五十六頁(yè),共75頁(yè)。6.讀取狀態(tài)方式
讀取方法:
當(dāng)RIS=1時(shí),讀ISR的內(nèi)容當(dāng)OCW3的P=0,RR=1時(shí):
當(dāng)RIS=0時(shí),讀IRR的內(nèi)容注意:從偶地址端口讀出
屏蔽寄存器IMR的內(nèi)容隨時(shí)可以從奇地址端口讀出,而不用發(fā)讀命令。第9章中斷技術(shù)與中斷控制器第五十七頁(yè),共75頁(yè)。7.級(jí)聯(lián)方式
在較大的微機(jī)應(yīng)用系統(tǒng)中,可用多片82C59A級(jí)聯(lián)來擴(kuò)展中斷源。一個(gè)主82C59A最多可級(jí)聯(lián)8個(gè)從82C59A,從而把中斷源擴(kuò)展到64個(gè)。
若ICW1中的SNGL位為0,表示為級(jí)聯(lián)方式。在這種方式下,典型的硬件連接如圖9.7所示。第9章中斷技術(shù)與中斷控制器第五十八頁(yè),共75頁(yè)。圖9.7級(jí)聯(lián)方式的連接電路
CSA0D7-D0INTAINTCAS0CAS1CAS2SP/ENIR7IR6---IR0從82591#CSA0D7-D0INTAINTCAS0CAS1CAS2SP/ENIR7IR6---IR0從82592#CSA0D7-D0INTAINTCAS0CAS1CAS2SP/ENIR7IR6---IR0主8259GNDGNDVcc地址總線(16)控制總線數(shù)據(jù)總線第五十九頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器8.連接系統(tǒng)總線的方式
緩沖方式
ICW4的BUF=1
當(dāng)82C59A在一個(gè)大系統(tǒng)中使用時(shí),82C59A通過總線驅(qū)動(dòng)器和數(shù)據(jù)總線相連,這就是緩沖方式。在緩沖方式下,存在對(duì)總線驅(qū)動(dòng)器的選通問題。為此,將82C59A的引腳與總線驅(qū)動(dòng)器的允許端相連。此時(shí)為輸出。
非緩沖方式
ICW4的BUF=0非緩沖方式是相對(duì)于緩沖方式而言的。當(dāng)系統(tǒng)中只有單片使用或有少數(shù)幾片級(jí)聯(lián)而系統(tǒng)又不大時(shí),82C59A的數(shù)據(jù)線可直接與CPU系統(tǒng)的數(shù)據(jù)總線相連,而不用接驅(qū)動(dòng)器。這時(shí)為輸入。
主機(jī)8259A總線驅(qū)動(dòng)器第六十頁(yè),共75頁(yè)。第9章中斷技術(shù)與中斷控制器82C59A的編程分為:初始化編程:復(fù)位后寫入工作方式編程:需要時(shí)寫入讀取狀態(tài)編程:需要時(shí)讀出表9.282C59A的讀/寫操作
§9.3.782C59A的編程
第六十一頁(yè),共75頁(yè)。1.初始化編程
初始化編程是由CPU向82C59A寫入2~4個(gè)字節(jié)的初始化命令字ICW。目的是讓82C59A開始正常工作之前處于起始點(diǎn)。82C59A的初始化順序是嚴(yán)格的。第9章中斷技術(shù)與中斷控制器第六十二頁(yè),共75頁(yè)。Y
當(dāng)CPU向82C59A的偶地址端口寫入一個(gè)命令字,且D4=1時(shí),則被82C59A內(nèi)部邏輯解釋為初始化命令字ICW1,啟動(dòng)82C59A中的初始化順序;
緊接著向奇地址端口寫入的一個(gè)命令字則被認(rèn)為是ICW2。這兩個(gè)命令字是必須寫的;而ICW3和ICW4是否要寫入,則視情況而定。若是級(jí)聯(lián)使用(即SNGL=0),那么下一個(gè)向奇地址寫入的命令自動(dòng)辯認(rèn)為ICW3,否則不必寫入;如果根據(jù)系統(tǒng)要求所確定的ICW4不等于00H,那么繼ICW3之后,向奇地址端口寫入的必定是ICW4。N第9章中斷技術(shù)與中斷控制器第六十三頁(yè),共75頁(yè)。解:按要求確定初始化命令字:ICW1:00011011BICW2:01100000B(只有前5位有效)ICW4:00000001B例9.1:設(shè)某8088系統(tǒng)中使用一片82C59A,其端口地址為210H、211H,若按系統(tǒng)要求,中斷請(qǐng)求為電平觸發(fā),其8個(gè)中斷源的類型號(hào)為60H~67H,試編寫初始化程序段。初始化程序段:MOVDX,210H;DX指向偶地址端口MOVAL,1BH;寫ICW1OUTDX,ALMOVDX,211H;DX指向奇地址端口MOVAL,60H;寫ICW2OUTDX,ALMOVAL,01H;寫ICW4OUTDX,AL第9章中斷技術(shù)與中斷控制器第六十四頁(yè),共75頁(yè)。2.工作方式編程
工作方式編程是CPU向82C59A寫入操作命令字OCW1、OCW2和OCW3,它們的作用是規(guī)定82C59A的工作方式。工作方式命令字是在82C59A已經(jīng)初始化以后的任何時(shí)間寫入的,并且寫入順序沒有任何限制。
第9章中斷技術(shù)與中斷控制器第六十五頁(yè),共75頁(yè)。例9.2:某個(gè)以8088為CPU的數(shù)據(jù)采集系統(tǒng)中,使用兩片82C59A接成主從控制器,主片的端口地址為20H和21H,中斷類型碼為60H~67H,從片的端口地址為408H和409H,中斷類型號(hào)為68H~6FH。按系統(tǒng)要求,所有中斷請(qǐng)求采用邊沿觸發(fā),普通屏蔽,主片用特殊全嵌套,從片用非特殊全嵌套方式,一般結(jié)束,優(yōu)先權(quán)自動(dòng)旋轉(zhuǎn)方式。硬件接線如圖9.9所示。試對(duì)這兩片82C59A進(jìn)行初始化,并設(shè)置它們的工作方式。
第9章中斷技術(shù)與中斷控制器第六十六頁(yè),共75頁(yè)。圖9.9
例9.2硬件接線圖
第六十七頁(yè),共75頁(yè)。例9.2:解:確定初始化命令字和操作命令字:ICW1:00010001B(主、從片相同)ICW2:01100000B—主片,B—從片ICW3:10000000B—主片,B—從片ICW4:00010001B—主片,B—從片OCW1:寫入ICW后,82C59A自動(dòng)將IMR清零,因此,如開放所有中斷請(qǐng)求,則不必再寫入OCW1。在使用中要改變這種情況時(shí)可隨時(shí)寫入。OCW2:10000000B(主、從片相同)OCW3:00001000B(主、從片相同)
第9章中斷技術(shù)與中斷控制器第六十八頁(yè),共75頁(yè)。編程:MOVAL,11H;寫主片ICW1OUT20H,ALMOVDX,408H;寫從片ICW1OUTDX,ALMOVAL,60H;寫主片ICW2OUT21H,ALMOVDX,409H;寫從片ICW2MOVAL,68HOUTDX,ALMOVAL,80H;寫主片ICW3OUT21H,ALMOVAL,07H;寫從片ICW3OUTDX,ALMOVAL,11H;寫主片ICW4OUT21H,ALMOVAL,01H;寫從片ICW4OUTDX,ALNOVAL,80H;寫主片OCW2OUT20H,ALMOVDX,408H;寫從片OCW2OUTDX,ALMOVAL,08H;寫主片OCW3OUT20H,ALOUTDX,AL;寫從片OCW3第9章中斷技術(shù)與中斷控制器第六十九頁(yè),共75頁(yè)。1.IBMPC/XT中以82C59A為核心的中斷邏輯第9章中斷技術(shù)與中斷控制器§9.3.882C59A應(yīng)用舉例第七十頁(yè),共75頁(yè)。已知:IBMPC/XT內(nèi)82C59A的端口地址是20H和21H,并已初始化成邊沿觸發(fā)、普通屏蔽(初始化屏蔽字為FEH)、非特殊全嵌套、一般中斷結(jié)束、固定優(yōu)先級(jí)、以及非緩沖方式。求解:試編寫匯編語(yǔ)言程序?qū)崿F(xiàn)題目要求。解:由IBMPC/XT中82C59A所管理的8個(gè)中斷源(中斷類型號(hào)為08H~0FH)可知,IRQ2的中斷類型號(hào)就是0AH。源程序清單如下:
2.應(yīng)用舉例
例9.3:
在IBMPC/XT的62芯總線的IRQ2端輸入一中斷請(qǐng)求信號(hào),該信號(hào)可由8253
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小班團(tuán)隊(duì)合作游戲的設(shè)計(jì)與實(shí)施計(jì)劃
- 酒文化社團(tuán)的實(shí)習(xí)與交流計(jì)劃
- 班級(jí)運(yùn)動(dòng)會(huì)的組織與實(shí)施計(jì)劃
- 科技教育與實(shí)踐教學(xué)計(jì)劃
- 品牌年鑒的價(jià)值與編制方法計(jì)劃
- 完善醫(yī)院應(yīng)急處置機(jī)制計(jì)劃
- 職場(chǎng)技能提升月度計(jì)劃
- 零售連鎖店財(cái)務(wù)分析報(bào)告門店運(yùn)營(yíng)效率評(píng)估
- 名著閱讀《儒林外史》(考題猜想)(原卷版)
- 提高患者滿意度的全面計(jì)劃
- 2025年安徽職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)學(xué)生專用
- 2025年黑龍江農(nóng)墾職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)附答案
- 2025年黑龍江農(nóng)業(yè)工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)完整版
- 小學(xué)科學(xué)點(diǎn)亮我的小燈泡省公開課一等獎(jiǎng)全國(guó)示范課微課金獎(jiǎng)?wù)n件
- 2023-2024學(xué)年高中信息技術(shù)必修一滬科版(2019)第三單元項(xiàng)目六《 解決溫標(biāo)轉(zhuǎn)換問題-認(rèn)識(shí)程序和程序設(shè)計(jì)語(yǔ)言》教學(xué)設(shè)計(jì)
- 2024年中國(guó)農(nóng)業(yè)大學(xué)招聘筆試真題
- 浙江新陣地教育聯(lián)盟2025屆高三第二次聯(lián)考化學(xué)試題及答案
- 課件:以《哪吒2》為鏡借哪吒精神燃開學(xué)斗志
- 新生兒胃腸減壓護(hù)理
- 七年級(jí)數(shù)學(xué)下冊(cè) 第8章 單元測(cè)試卷(蘇科版 2025年春)
- 2024預(yù)防流感課件完整版
評(píng)論
0/150
提交評(píng)論