版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
8.8中斷優(yōu)先級管理器8259APIC
一、引言二、8259A的引腳、編程結(jié)構(gòu)和工作過程三、8259A的編程1.設(shè)置中斷屏蔽字2.發(fā)中斷結(jié)束命令EOI四、8259A在微機(jī)系統(tǒng)中的應(yīng)用一、引言中斷申請管理接口INT中斷申請接口1網(wǎng)絡(luò)接口2硬盤接口3軟盤接口4打印機(jī)8088CPUINTRIF1.向CPU的引腳INTR發(fā)中斷申請信號當(dāng)有多個外設(shè)同時發(fā)出中斷請求時,能按照一定的優(yōu)先級順序,向CPU發(fā)出中斷申請,使CPU能優(yōu)先響應(yīng)優(yōu)先級最高的外部設(shè)備的中斷申請。2.送中斷類型號在CPU中斷響應(yīng)周期,針對不同外設(shè)的中斷請求,向CPU傳送不同的中斷類型號,使CPU執(zhí)行相應(yīng)的中斷子程。中斷申請管理接口的主要功能:在IBMPC機(jī)由8259A可編程中斷控制器(PIC)來完成。二、8259A的引腳、編程結(jié)構(gòu)和工作過程1.
8259A的引腳
2.
8259A的編程結(jié)構(gòu)
3.
8259A的工作過程1.
8259A的引腳
雙列直插式芯片,28個引腳
方波鍵盤保留串口2
硬盤軟盤打印機(jī)IOW18.2HzA0CS8259A總線A0數(shù)據(jù)線
IORRDWR片選譯碼IR0IR1IR2IR3IR4IR5IR6IR7A5~A9D0~D7D0~D7VccSP/ENCAS0CAS1CAS2GND+5V20~3FH用于多片8259A級連情況INTAINT
INTA
INTR串口1
定時器2.8259A的編程結(jié)構(gòu)SP/ENCAS0CAS1CAS2IORIOW總線D0~D7數(shù)據(jù)線D0~D7INTAINTRA0片選譯碼A5~A9CSA0RD
INTAWRINT×
××
1×I3I4ICW1芯片控制
ICW2中斷類型號
ICW3主從片連接關(guān)系
ICW4方式控制0111A010010100OCW1中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級設(shè)置、發(fā)EOI
01
OCW3特殊屏蔽,查詢方式設(shè)置處理部分控制部分00000000
ISR當(dāng)前中斷服務(wù)寄存器PR優(yōu)先級裁決器VCCGND100A0IR0IR1IR2IR3IR4IR5IR6IR7IRR中斷申請寄存器00000000
2.8259A的編程4個初始化命令寄存器ICW1、ICW2ICW3、ICW43個操作命令寄存器OCW1(IMR)OCW2、OCW3當(dāng)前中斷服務(wù)寄存器ISR中斷申請寄存器IRR
8259A內(nèi)部有9個可讀寫的寄存器8259A的編程結(jié)構(gòu)×
×
×1L×
I3I4ICW1
芯片控制
000ICW2
中斷類型號
ICW3
主從片關(guān)系000
ICW4
方式控制處理部分控制部分00000000ISR當(dāng)前中斷服務(wù)寄存器PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
中斷屏蔽寄存器IMROCW2
10010100
00
01
OCW3OCW18259A中斷控制器初始化命令字(ICW1-ICW4)決定8259A的工作方式通常是在計算機(jī)系統(tǒng)啟動時在初始程序設(shè)置,一旦設(shè)定,一般在系統(tǒng)工作過程不再改變。操作命令字(OCW1,OCW2,OCW3)在應(yīng)用程序中設(shè)定,動態(tài)地控制CPU處理中斷的過程ISR和IRR存放當(dāng)前8259A的狀態(tài)
通過讀取ISR和IRR的內(nèi)容,可了解當(dāng)前8259A工作情況分兩步:
(1)處理外設(shè)中斷申請,決定是否向CPU發(fā)中斷申請信號。(2)若發(fā)中斷申請信號,且CPU響應(yīng),則在CPU中斷響應(yīng)周期送出中斷類型號。3.8259A的工作過程中斷屏蔽寄存器IMR決定IRR中的中斷申請是否進(jìn)入優(yōu)先級裁決器PR。IMR對應(yīng)位為0,允許中斷申請進(jìn)入優(yōu)先級裁決器, 為1,不允許進(jìn)入,中斷申請被IMR屏蔽。中斷申請寄存器IRR鎖存外部的中斷申請。若IR0~IR7引腳上有中斷申請,則將IRR相應(yīng)位置1當(dāng)前中斷服務(wù)寄存器ISR記錄CPU正在響應(yīng)的中斷。
ISR中的某位為1,表示CPU正在響應(yīng)此級中斷,
ISR中的某位為0,表示CPU沒有或已響應(yīng)完此級中斷,優(yōu)先級裁決器PR據(jù)新進(jìn)入的中斷申請和ISR的內(nèi)容,
決定是否發(fā)中斷申請信號。
如果進(jìn)入的中斷申請比ISR中記錄的中斷優(yōu)先級高,則通過8259A的INT引腳向CPU發(fā)出中斷請求信號;如果進(jìn)入的中斷申請不比ISR中記錄的中斷優(yōu)先級高,同級或低級,則不向CPU發(fā)中斷請求信號。(1)處理外設(shè)中斷申請,決定是否向CPU發(fā)中斷申請信號①
中斷申請寄存器IRR鎖存外部的中斷申請。若IR0~IR7引腳上有中斷申請,則將IRR相應(yīng)位置1IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制00000000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
10010100INTR11②中斷屏蔽寄存器IMR決定IRR中的中斷申請是否進(jìn)入優(yōu)先級裁決器PR。IMR對應(yīng)位為
0,允許中斷申請進(jìn)入優(yōu)先級裁決器,為1,不允許進(jìn)入,中斷申請被IMR屏蔽。IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制00000000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
10010100INTR11③
當(dāng)前中斷服務(wù)寄存器ISR記錄CPU正在響應(yīng)的中斷。ISR中的某位為1,表示CPU正在響應(yīng)此級中斷,即正在執(zhí)行此中斷源的中斷子程;ISR中的某位為0,表示CPU沒有或已響應(yīng)完此級中斷,即不在執(zhí)行此中斷源的中斷子程IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制001
00000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
10010100INTR11④優(yōu)先級裁決器PR據(jù)新進(jìn)入的中斷申請和ISR的內(nèi)容,決定是否發(fā)中斷申請信號。
如果進(jìn)入的中斷申請比ISR中記錄的中斷優(yōu)先級高,則通過8259A的INT引腳向CPU發(fā)出中斷請求信號;如果進(jìn)入的中斷申請不比ISR中記錄的中斷優(yōu)先級高,同級或低級,則不向CPU發(fā)中斷請求信號。IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制001
00000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
10010100INTR11(2)若發(fā)中斷申請信號,且CPU響應(yīng),則在CPU中斷響應(yīng)周期送出中斷類型號
CPU接收到INTR上的中斷申請信號后:如果IF標(biāo)志為0,則CPU不響應(yīng)此中斷申請信號,
即中斷申請被IF屏蔽。如果IF標(biāo)志為1,則處理完當(dāng)前的指令后,進(jìn)入中斷響應(yīng)周期通過INTA引腳發(fā)出兩個負(fù)脈沖信號,從數(shù)據(jù)總線上獲取中斷類型號,進(jìn)入中斷響應(yīng)的過程。向量類型
INTACLKAD7~AD0T1T2T3T4第一個中斷響應(yīng)周期T1T2T3T4第二個中斷響應(yīng)周期
8088CPU中斷響應(yīng)周期時序①將ISR中相應(yīng)位置1,表示CPU響應(yīng)此級中斷,執(zhí)行此中斷源的中斷子程。8259A在接收到第一個INTA中斷響應(yīng)信號后:001
00000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7PR優(yōu)先級裁決器IRR中斷申請寄存器10000001
ICW1芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置10010100IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RDWR
INTAINTD0~D7INTR01②把IRR中對應(yīng)的位清0,清除IRR中鎖存的中斷申請信號。①通過數(shù)據(jù)線,將被響應(yīng)申請的中斷類型號送給CPU。類型號由ICW2提供,在初始化8259A時已設(shè)定好。8259A在接收到第二個INTA中斷響應(yīng)信號后:001
00000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7PR優(yōu)先級裁決器IRR中斷申請寄存器10000001
ICW1
芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置10010100IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RDWR
INTAINTD0~D7INTR01②CPU獲得中斷類型號后,進(jìn)入CPU響應(yīng)中斷的過程,執(zhí)行中斷子程,處理中斷源申請的功能。①取中斷類型號N②當(dāng)前PSW的內(nèi)容入棧③清IF、TF標(biāo)志為0④當(dāng)前CS的內(nèi)容入棧⑤當(dāng)前IP的內(nèi)容入棧⑥取內(nèi)存單元(0:N×4)字內(nèi)容送IP取中斷子程⑦取內(nèi)存單元(0:N×4+2)字內(nèi)容送CS入口地址此時CS:IP指向中斷程序的入口,開始執(zhí)行中斷程序。保存現(xiàn)場CPU響應(yīng)中斷過程:執(zhí)行完中斷子程中最后一條指令I(lǐng)RET后,返回被中斷處,繼續(xù)執(zhí)行被中斷的程序。三、8259A的編程1.8259A的編程2.8259A的編程方法
(1)設(shè)置中斷屏蔽字(2)發(fā)中斷結(jié)束命令EOI4個初始化命令寄存器ICW1、ICW2ICW3、ICW43個操作命令寄存器OCW1(IMR)OCW2、OCW3當(dāng)前中斷服務(wù)寄存器ISR中斷申請寄存器IRR
8259A內(nèi)部有9個可讀寫的寄存器1.8259A的編程
1
I3I4ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關(guān)系
ICW4
方式控制處理部分控制部分00000000
ISR當(dāng)前中斷服務(wù)寄存器PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
中斷屏蔽寄存器IMROCW2
10010100
00
01
OCW3OCW18259A中斷控制器8259A有兩個I/O端口地址A0=0偶地址端口A0=1奇地址端口
對9個寄存器的讀寫均通過這兩個端口實現(xiàn)寫入數(shù)據(jù)的特征位寫入的先后順序區(qū)分是對哪個寄存器進(jìn)行操作根據(jù)
1
I3I4ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關(guān)系
ICW4
方式控制處理部分控制部分00000000
ISR當(dāng)前中斷服務(wù)寄存器PR優(yōu)先級裁決器IRR中斷申請寄存器00000000
中斷屏蔽寄存器OCW2
10010100
00
01
OCW3OCW18259A中斷控制器D0~D7A0CSRDWR80111A0100A0(1)通過中斷屏蔽寄存器IMR的讀寫,設(shè)置中斷屏蔽字(2)通過OCW2操作命令寄存器,發(fā)中斷結(jié)束EOI命令2.8259A的編程方法8259A有多種工作方式,這些工作方式均可編程選擇,使用相當(dāng)靈活。通過往寄地址端口寫入IMR內(nèi)容實現(xiàn)對應(yīng)位為0,允許該級中斷申請進(jìn)入對應(yīng)位為1,禁止該級中斷申請進(jìn)入(1)設(shè)置中斷屏蔽字IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制00000000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器10000001
10010100INTR新增允許IR2的中斷申請INAL,21H;讀入原IMR的內(nèi)容ANDAL,11111011B;D2=0,允許IR2的中斷申請OUT21H,AL;寫入IMR禁止IR4的中斷申請INAL,21H;讀入原IMR的內(nèi)容ORAL,00010000B;D4=1,禁止IR4的中斷申請OUT21H,AL;寫入IMR例已知IBMPC/XT系統(tǒng)中8259A的奇地址端口地址為21H設(shè)置完成后的結(jié)果:IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制00000000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器10000001
10010000INTR(2)發(fā)中斷結(jié)束命令EOI由8259A的工作過程可知:ISR中的內(nèi)容是優(yōu)先級裁決器進(jìn)行裁決的重要依據(jù)CPU響應(yīng)某級中斷后,8259A自動將ISR的對應(yīng)位置1,如果CPU已執(zhí)行完中斷子程,而ISR中的對應(yīng)位仍為1,8259A的優(yōu)先級裁決器仍會據(jù)ISR的內(nèi)容做裁決,從而會屏蔽同級或低級的中斷申請。在中斷響應(yīng)后,對ISR中相應(yīng)位的清0很重要,它是8259A認(rèn)為中斷結(jié)束的標(biāo)志。IORIOW總線數(shù)據(jù)線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2中斷類型號
ICW3
主從片關(guān)系
ICW4方式控制101
00000
ISR當(dāng)前中斷服務(wù)寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優(yōu)先級、發(fā)EOI
OCW3特殊屏蔽設(shè)置PR優(yōu)先級裁決器IRR中斷申請寄存器10000001
10010100INTR一、初始化8259A時,設(shè)置8259A工作方式為自動清0方式,則在CPU響應(yīng)中斷后,硬件自動將ISR的對應(yīng)位清0。清ISR內(nèi)容的方法有兩種:二、初始化8259A時,設(shè)置8259A工作方式為非自動清0方式,需在中斷子程中,通過軟件方式清0。方法是:通過往OCW2寫入20H實現(xiàn),即由偶地址端口寫入:
EOI00100000特征位,表示對OCW2操作20H編程在中斷子程IRET返回前,發(fā)中斷結(jié)束命令EOI例
已知IBMPC系統(tǒng)中,8259A的偶地址端口地址為20H;
BIOS初始化8259A時,設(shè)置8259A工作方式為非自動清0方式。intsubPROC、、、、、、、、、
MOVAL,20H;將中斷結(jié)束命令字20H送AL
OUT20H,AL;寫入OCW2中
IRET;中斷返回intsubENDP四、8259A在IBMPC/XT系統(tǒng)中的應(yīng)用1.8259A與系統(tǒng)的連線。2.BIOS初始化程序?qū)?259A的設(shè)置。1.與系統(tǒng)的連線+5V
CLKRESETREADYMN/MXVCCRDQS0QS1LOCKTESTHIGHNMIGNDGND地址鎖存器8282(兩片)STB
數(shù)據(jù)收發(fā)器OE8286T
MRDC8288MWTC總線IORC控制器IOWCINTA8259A及有關(guān)電路DT/RDENALE地址總線數(shù)據(jù)總線控制總線PC總線A15~A8S6~S3/A19~A16AD7~AD08088CPUS
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025民間借款合同協(xié)議書模板
- 2025深圳市全日制用工勞動合同范本
- 2025汽車駕駛員雇傭合同
- 2025股份有限公司分立合同
- 二零二五年度辦公室租賃合同(含企業(yè)國際化運營支持)3篇
- 2025年度年度監(jiān)護(hù)權(quán)爭議解決合同3篇
- 2025住宅小區(qū)物業(yè)管理合同范本
- 二零二五年度人工智能與自動駕駛公司戰(zhàn)略合作協(xié)議書3篇
- 2025年度網(wǎng)絡(luò)安全公司銷售人員二零二五年度勞動合同3篇
- 2025年度養(yǎng)殖企業(yè)產(chǎn)業(yè)鏈優(yōu)化合作協(xié)議3篇
- GB/T 231.2-2012金屬材料布氏硬度試驗第2部分:硬度計的檢驗與校準(zhǔn)
- GA/T 975-2019警用裝備名詞術(shù)語
- 《天津市安全生產(chǎn)條例》試習(xí)題 -參考答案
- 傳統(tǒng)運動養(yǎng)生法課件
- iatf16949培訓(xùn)教材課件
- DB64-T 1671.1-2019兒童福利機(jī)構(gòu)兒童養(yǎng)教康一體化服務(wù)規(guī)范 第1部分:唇腭裂-(高清可復(fù)制)
- 牛津滬教版六上英語Unit 2 My summer holiday課件
- 2021年中國保險保障基金有限責(zé)任公司校園招聘筆試試題及答案解析
- 汽車維修人員培訓(xùn)管理制度
- 消化內(nèi)科診療指南和技術(shù)操作規(guī)范
- 作文稿紙A4打印模板-
評論
0/150
提交評論