版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第6章
中斷系統(tǒng)本章重點中斷基本概念中斷過程8086CPU中斷系統(tǒng)8259A中斷控制器的功能及應(yīng)用
6.1中斷系統(tǒng)的基本概念中斷系統(tǒng)是完成中斷功能的軟件及硬件電路的總稱,它可以使計算機實現(xiàn)如下操作:(1)
故障檢測和自動處理。(2)
實時信息處理。(3)分時處理。(4)并行工作。什么是中斷?一、中斷及中斷源6.1中斷系統(tǒng)的基本概念正在看書電話鈴響接電話繼續(xù)看書執(zhí)行程序事件發(fā)生事件處理繼續(xù)執(zhí)行程序中斷處理中斷請求及響應(yīng)實際場景計算機中斷返回中斷:CPU執(zhí)行程序時,由于發(fā)生了某種隨機事件(外部或內(nèi)部),引起CPU暫時中斷正在運行的程序,轉(zhuǎn)去執(zhí)行一段特殊服務(wù)程序(稱中斷服務(wù)程序或中斷處理程序),以處理該事件,該事件處理完后又返回被中斷程序繼續(xù)執(zhí)行,這一過程稱為中斷。優(yōu)點:避免了CPU不斷檢測外設(shè)狀態(tài)的過程,提高了CPU的利用率;提高數(shù)據(jù)傳輸率;實現(xiàn)對特殊事件的實時響應(yīng)。中斷源及分類6.1中斷系統(tǒng)的基本概念中斷源:引起CPU中斷的事件,是發(fā)出中斷請求的來源。例如:外設(shè)——請求輸入輸出數(shù)據(jù),報告故障等;事件——掉電、硬件故障、軟件錯誤、非法操作、定時時間到等。內(nèi)部中斷(CPU內(nèi)部)外部中斷(外部設(shè)備)異常中斷軟件中斷可屏蔽中斷非屏蔽中斷異常事件引起中斷指令引起INTR中斷FR:IF=1,允許;IF=0,禁止NMI中斷二、外設(shè)中斷的一般過程6.1中斷系統(tǒng)的基本概念(1)中斷請求(2)中斷判優(yōu)及中斷源識別軟件查詢方式;硬件優(yōu)先級判優(yōu);可編程中斷控制器判優(yōu)。(3)中斷響應(yīng)(4)中斷處理(服務(wù))(5)中斷返回6.1中斷系統(tǒng)的基本概念中斷請求CPU響應(yīng)中斷后(中斷被處理),中斷請求信號應(yīng)及時撤銷。外設(shè)接口(中斷源)發(fā)出中斷請求信號,送到CPU的INTR或NMI引腳;中斷判優(yōu)及中斷源識別軟件查詢法:執(zhí)行優(yōu)先級判優(yōu)的查詢程序中斷請求信號:邊沿請求有效或電平請求有效;例如,NMI為邊沿請求有效,INTR為電平請求有效硬件電路法:由中斷源提供中斷類型號,CPU根據(jù)類型確定中斷源6.1中斷系統(tǒng)的基本概念中斷判優(yōu)——要解決的問題對同時產(chǎn)生的中斷:首先處理優(yōu)先級別較高的中斷;若優(yōu)先級別相同,則按先來先服務(wù)的原則。中斷嵌套中斷判優(yōu)——控制方法軟件查詢判優(yōu):順序查詢中斷請求,先查詢的先服務(wù)(即先查詢的優(yōu)先級別高)硬件判優(yōu):鏈?zhǔn)脚袃?yōu)、可編程中斷控制器判優(yōu)(中斷向量法)對非同時產(chǎn)生的中斷:低優(yōu)先級中斷程序允許被高優(yōu)先級中斷源所中斷。6.1中斷系統(tǒng)的基本概念軟件查詢判優(yōu)基本原理:當(dāng)CPU接收到中斷請求信號后,執(zhí)行優(yōu)先級判優(yōu)查詢程序,逐個檢測外設(shè)中斷請求標(biāo)志位狀態(tài),檢測順序按優(yōu)先級高低進(jìn)行。CPU首先響應(yīng)優(yōu)先級最高中斷請求,在處理完優(yōu)先級最高中斷請求后,再轉(zhuǎn)去響應(yīng)并處理優(yōu)先級較低中斷源請求。軟件查詢程序如下:INAL,n;n三態(tài)緩沖器;端口地址ROLAL,1;JCFWA;服務(wù)程序AROLAL,1JCFWBROLAL,1JCFWC……中斷響應(yīng)(1)對INTR,CPU應(yīng)處于開中斷狀態(tài),即IF=1;CPU響應(yīng)中斷時,要做下列三項工作:(1)向中斷源發(fā)出INTA中斷響應(yīng)信號,并關(guān)中斷;(2)斷點(返回地址)保護(hù),包括CS、IP和FR;(3)獲得中斷服務(wù)程序首地址(入口),執(zhí)行中斷處理程序。(固定入口法、中斷向量法)6.1中斷系統(tǒng)的基本概念每條指令最后一個時鐘周期,CPU檢測INTR和NMI信號。執(zhí)行完當(dāng)前指令并下列條件成立,則CPU響應(yīng)中斷:(2)當(dāng)前沒有復(fù)位(RESET)、保持(HOLD)、內(nèi)部中斷。(3)若NMI和
INTR
同時發(fā)生,則首先響應(yīng)NMI。中斷處理(中斷服務(wù))執(zhí)行中斷服務(wù)子程序,中斷服務(wù)子程序完成工作:保護(hù)現(xiàn)場(PUSH)6.1中斷系統(tǒng)的基本概念開中斷(STI)中斷處理關(guān)中斷(CLI)恢復(fù)現(xiàn)場(POP)中斷返回(IRET)執(zhí)行IRET指令,使IP、CS和FR從堆棧彈出,保證被中斷的程序從斷點處能夠繼續(xù)往下執(zhí)行。IPLIPHCSLCSHFRLFRHSPIPLIPHCSLCSHFRLFRHSPIPCSFR進(jìn)入中斷服務(wù)程序時中斷返回后中斷返回6.1中斷系統(tǒng)的基本概念堆棧變化情況3000H3000H6.28086/8088中斷系統(tǒng)一、8086/8088中斷分類NMIINTR中斷邏輯軟件中斷指令(用戶自定義)溢出中斷除法錯單步中斷非屏蔽中斷請求中斷控制器8259APIC8086/8088CPU內(nèi)部邏輯斷點中斷可屏蔽中斷請求n43012中斷類型碼內(nèi)部中斷外部中斷軟件中斷(INTn,n=0~255)溢出中斷(INT4)斷點中斷(INT3)除法錯中斷單步中斷非屏蔽中斷(NMI,不可軟件屏蔽)可屏蔽中斷(INTR,IF=1可響應(yīng),類型碼PIC提供)256個中斷源
IBM-PC機INTR中斷類型碼為08H~0FH,80286以后還包括70H~77H6.28086/8088中斷系統(tǒng)當(dāng)INTR信號有效(為高電平)時,如果IF=0,CPU屏蔽INTR中斷;如果IF=1,則允許INTR中斷。開中斷指令STI使IF置1,關(guān)中斷指令CLI使IF清零??善帘沃袛郔NTR
CPU響應(yīng)INTR中斷后:產(chǎn)生兩個連續(xù)中斷響應(yīng)總線周期。第一個中斷響應(yīng)周期,表明響應(yīng)中斷;第二個中斷響應(yīng)周期,中斷源將中斷類型碼送數(shù)據(jù)總線。CPU讀入中斷類型碼后,CPU內(nèi)部硬件電路進(jìn)行斷點保護(hù),并自動關(guān)中斷IF=0。根據(jù)中斷類型碼,獲得中斷服務(wù)程序入口地址,執(zhí)行中斷服務(wù)程序?qū)χ袛嘣催M(jìn)行服務(wù)。6.28086/8088中斷系統(tǒng)不受IF標(biāo)志的影響,常用于電源掉電、存儲器讀/寫出錯、總線奇偶位出錯等重要事件的中斷。不可屏蔽中斷NMI
NMI中斷請求能被CPU鎖存,因此可以采用邊沿觸發(fā)方式。CPU響應(yīng)NMI中斷,硬件電路自動產(chǎn)生中斷類型碼為2的中斷。(1)CPU內(nèi)部硬件電路進(jìn)行斷點保護(hù),關(guān)中斷;(2)由CPU硬件自動形成或由軟件指令提供中斷類型碼;(3)CPU根據(jù)中斷類型碼決定中斷服務(wù)程序入口地址,轉(zhuǎn)向相應(yīng)中斷服務(wù)程序去執(zhí)行。CPU響應(yīng)NMI中斷沒有中斷響應(yīng)周期,當(dāng)NMI中斷和內(nèi)部中斷產(chǎn)生時:總結(jié)INTR與NMI的區(qū)別中斷向量表存放各類中斷的中斷服務(wù)程序入口地址;每個入口占用4字節(jié),低2個字節(jié)為段內(nèi)偏移地址,高2個字節(jié)為段基址;表地址位于內(nèi)存00000H~003FFH(共1KB),可存放256個入口。根據(jù)中斷類型碼n獲得中斷服務(wù)程序入口地址在向量表中的地址,即中斷向量在表中存放的邏輯地址:
0000H:4×n將用戶自定義的中斷服務(wù)程序入口地址放入向量表。中斷類型碼?中斷向量?中斷服務(wù)程序入口地址?中斷向量表?中斷服務(wù)程序入口地址表?6.28086/8088中斷系統(tǒng)中斷向量表6.28086/8088中斷系統(tǒng)中斷向量表的初始化
CLI
;關(guān)中斷
MOVAX,0000HMOVDS,AX ;向量表段基址
MOVSI,48H*4 ;n=48H,向量表偏移地址
MOVAX,OFFSETint48h;服務(wù)程序int48h入口偏移地址
MOV[SI],AXMOVAX,SEGint48h ;服務(wù)程序int48h入口段基址
MOV[SI+2],AX
STI
;開中斷方法2:采用DOS系統(tǒng)功能調(diào)用25H號:AH←25H,AL←中斷向量碼,DS:DX←中斷向量段基地址:偏移地址方法1:直接編程填寫中斷向量表6.28086/8088中斷系統(tǒng)例:將中斷向量碼為48H的服務(wù)程序入口地址放入向量表6.28086/8088中斷系統(tǒng)8088/8086中斷系統(tǒng)的優(yōu)先級優(yōu)先級從高到低的順序為:內(nèi)部中斷NMI中斷INTR中斷單步中斷中斷響應(yīng)和處理流程p268圖6.76.28086/8088中斷系統(tǒng)中斷服務(wù)程序框圖與程序示例6.3
可編程中斷控制器8259A
④具有多種中斷優(yōu)先權(quán)管理方式。是Intel公司生產(chǎn)的可編程中斷控制器(PIC,ProgrammableInterruptController),主要功能:①單片可管理8級外部中斷,9片級聯(lián)方式下可管理64級外部中斷。②對任何一個優(yōu)先級別的中斷源都可單獨進(jìn)行屏蔽設(shè)置,即屏蔽和取消屏蔽。③能向CPU提供中斷類型碼??墒共荒芴峁┲袛囝愋痛a的可編程接口芯片8255A、8253、8251A等采用中斷方式。一、8259A內(nèi)部結(jié)構(gòu)和引腳功能6.3
可編程中斷控制器8259A
8259A內(nèi)部結(jié)構(gòu)
初始化命令寄存器組操作命令寄存器組組成部分?6.3
可編程中斷控制器8259A
8259A的引線圖6.3
可編程中斷控制器8259A
8259A與8086/8088系統(tǒng)連接如圖所示,其工作過程:二、工作過程AD0AD7INTAINTRD0IR0D7IR7INTAINT中斷輸入8086/80888259A(1)外設(shè)通過IR0~IR7請求中斷,高電平有效,使IRR相應(yīng)位置1并鎖存;(2)據(jù)IMR把IRR中非屏蔽中斷請求送判優(yōu)電路去排隊;6.3
可編程中斷控制器8259A
(3)判優(yōu)電路確定當(dāng)前非屏蔽的最高優(yōu)先級,通過控制邏輯把INT送CPU的INTR端;使IRR鎖存功能有效;中斷類型碼寄存器內(nèi)容送DB,供CPU讀,執(zhí)行中斷服務(wù)程序;(4)CPU若響應(yīng)該請求,則向8259A發(fā)兩個INTA信號,第一個INTA脈沖到來時,使IRR相應(yīng)位復(fù)位。第二個INTA脈沖到來,完成:8259A應(yīng)用專題專題內(nèi)容:主程序是在屏幕上循環(huán)顯示0123456789,中斷服務(wù)子程序為在屏幕上顯示自己姓名的第一個拼音字母組成的字符串,如:張三,則顯示字符串“ZS”。運行主程序后,由開關(guān)按下時,產(chǎn)生單次脈沖通過實驗箱上主片8259A的MIR7(IR7)給CPU發(fā)中斷請求。要求每按動一次開關(guān),產(chǎn)生一次外部中斷,使CPU執(zhí)行中斷服務(wù)程序,在顯示屏上輸出自己姓名的第一字母組成的字符串。8259A應(yīng)用專題要求:1、預(yù)習(xí)實驗指導(dǎo)書P31:4.1系統(tǒng)認(rèn)識實驗;4.38259A控制實驗;預(yù)習(xí)教材6.3節(jié)。
2、預(yù)習(xí)相關(guān)內(nèi)容,按專題報告模板完成其中的一至四項內(nèi)容。 3、進(jìn)入實驗室時,必須持有專題報告并已完成其中的一至四項內(nèi)容。根據(jù)調(diào)試情況添加實驗結(jié)果等內(nèi)容,下課離開實驗室時將報告交指導(dǎo)老師。 4、根據(jù)專題報告、調(diào)試過程、完成情況、討論情況評定成績并記入理論課程和實驗課程的期末總成績。
5、帶實驗指導(dǎo)書和教材。
8259A應(yīng)用專題輔導(dǎo):1、硬件接線圖如下圖所示;
2、先編寫循環(huán)顯示“0123456789”的程序并調(diào)試通過;
3、編寫顯示自己姓名拼音第一個字母字符串的程序并調(diào)試通過;
4、循環(huán)顯示“0123456789”的程序為主程序,顯示自己姓名拼音第一個字母字符串的程序為中斷服務(wù)程序,完成本專題要求的程序并調(diào)試通過;
5、完成專題報告的五、六部分內(nèi)容。8259A初始化編程
8259A的編程;ICW和OCW寄存器組;8259A的控制命令分為:(1)初始化命令字ICW有4個ICW(ICW1~I(xiàn)CW4);向8259A寫入ICW的過程稱為初始化編程。(2)操作命令字OCW
有3個OCW(OCW1~OCW3);向8259A寫入OCW的過程稱為操作方式編程。8259A內(nèi)部寄存器的尋址方法需要CS、A0、RD、WR和D4、D3的配合;內(nèi)部寄存器的訪問方法如下表:CSRDWRA0D4D3讀寫操作010000寫OCW2寫OCW3寫ICW1寫ICW2,ICW3,ICW4,OCW1(順序?qū)懭?00101x1xx00101xx讀出IRR、ISR讀出IMR在硬件系統(tǒng)中,8259A有兩個端口地址:
ICW1,OCW2,OCW3,ISR,IRR占一個;
ICW2,ICW3,ICW4,OCW1,IMR占另一個;同一端口靠標(biāo)志位和寫入順序加以區(qū)別。8259A初始化編程
D3、D4為對應(yīng)寄存器的標(biāo)志位8259A
初始化編程8259A的初始化順序8259的初始化流程如圖注意次序不可顛倒
8259A
初始化編程8259A控制命令字(1)初始化命令字
8259A開始工作前,系統(tǒng)中的每片8259A都須由2~4個初始化命令字(ICW)來設(shè)定其狀態(tài)和工作方式。
芯片控制ICW1
設(shè)中斷類型碼ICW2
標(biāo)志主片/從片ICW3
方式控制ICW48259A
初始化編程芯片控制初始化命令字ICW1,寫入偶地址端口8086/8088系統(tǒng)不用MOVAL,13H;ICW1上升沿觸發(fā),單片8259AOUT20H,AL;8086/8088CPU
需要ICW48259A
初始化編程設(shè)中斷類型碼初始化命令字ICW2,寫入奇地址端口用于規(guī)定IR0~IR7所對應(yīng)的中斷類型碼的高5位,低3位由8259A自動產(chǎn)生。MOVAL,08H;ICW2中斷類型號,起始中斷號為08HOUT21H,AL8259A初始化編程級聯(lián)命令字ICW3,寫入奇地址端口主片8259A從片8259A由D2~D0規(guī)定從片輸出線INT接主片哪個IRi上,i=0~7。表示主片輸入端IR0~IR7是否接從片8259A初始化編程中斷結(jié)束方式命令字ICW4,寫入奇地址端口ICW4標(biāo)志位MOVAL,01H;ICW4,普通全嵌套方式,一般EOI方式OUT21H,AL8259A初始化編程(2)操作命令字8259A初始化后,修改其工作方式需要寫入操作命令字OCW。中斷屏蔽操作命令字OCW1,寫入奇地址端口對應(yīng)中斷屏蔽寄存器IMR相應(yīng)位,1表示該位中斷請求被屏蔽,0表示該位中斷請求允許。如允許IRQ0和IRQ1中斷,可寫OCW1來設(shè)置中斷屏蔽寄存器IMR INAL,21H;A0=1,讀出的是IMR ANDAL,0FCH;只允許IRQ0和IRQ1,其它不變 OUT21H,AL;寫入OCW1,即IMR8259A
初始化編程優(yōu)先級循環(huán)方式和中斷結(jié)束方式操作命令字OCW2,寫入偶地址端口
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年新能源發(fā)電設(shè)備自動化裝置項目成效分析報告
- 2024年超鈾元素及其提取設(shè)備項目綜合評估報告
- 2024年裝在進(jìn)口飛機上的國產(chǎn)零備件和材料項目評價分析報告
- 質(zhì)量培訓(xùn)35環(huán)宇抽樣檢驗培訓(xùn)教材
- 2024屆河北省唐山市唐縣第一中學(xué)高三5月學(xué)生學(xué)業(yè)能力調(diào)研考試數(shù)學(xué)試題
- 構(gòu)建幼兒園大閱讀體系的實踐研究 研究計劃+實施階段+結(jié)題報告
- 采購合同中的處罰條款
- 編撰物流合同執(zhí)行統(tǒng)計表
- 山東省棗莊市臺兒莊區(qū)2024-2025學(xué)年七年級上學(xué)期期中考試語文試題
- 遼寧省丹東市七校協(xié)作體2024-2025學(xué)年高一上學(xué)期11月期中生物試題
- 2023-2024學(xué)年第一學(xué)期上海市奉賢區(qū)九年級八校聯(lián)考語文期中試卷
- 小班語言《冬天的小路》課件
- 2023年湖南高考物理第12題的說題稿
- 幕墻施工重難點分析及解決措施
- 國家開放大學(xué)《數(shù)據(jù)結(jié)構(gòu)》課程實驗報告(實驗5-圖的存儲方式和應(yīng)用)參考答案
- 肝穿刺病人術(shù)后的護(hù)理措施
- 初二(四)班感恩主題
- 幼兒園嘔吐培訓(xùn)課件
- 幼師生涯發(fā)展報告
- 新生兒院感知識培訓(xùn)
- 血小板減少的護(hù)理查房
評論
0/150
提交評論