微機(jī)原理與接口實驗 47中斷控制器-8259 賴曉錚_第1頁
微機(jī)原理與接口實驗 47中斷控制器-8259 賴曉錚_第2頁
微機(jī)原理與接口實驗 47中斷控制器-8259 賴曉錚_第3頁
微機(jī)原理與接口實驗 47中斷控制器-8259 賴曉錚_第4頁
微機(jī)原理與接口實驗 47中斷控制器-8259 賴曉錚_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、QQ: 68046508理解可編程中斷控制器理解可編程中斷控制器8259A8259A的內(nèi)部結(jié)構(gòu)和工作原理。的內(nèi)部結(jié)構(gòu)和工作原理。掌握嵌套中斷結(jié)構(gòu)的掌握嵌套中斷結(jié)構(gòu)的CPUCPU通過通過8259A8259A管理多個中斷事件的方法。管理多個中斷事件的方法。注:跳出注:跳出“斷點斷點”后后,CPUCPU進(jìn)入進(jìn)入HLTHLT指令指令的的后續(xù)下一條指令的取指周期后續(xù)下一條指令的取指周期。INTAD7D0INT中斷請求寄存器中斷請求寄存器中斷屏蔽寄存器中斷屏蔽寄存器數(shù)據(jù)數(shù)據(jù)總線總線緩沖器緩沖器IR0IR7讀讀/寫寫控制控制邏輯邏輯級聯(lián)級聯(lián)緩沖器緩沖器比較器比較器RDWRA0CSCAS0CSA1CAS2SP

2、/EN優(yōu)先級分析器優(yōu)先級分析器中斷服務(wù)寄存器中斷服務(wù)寄存器控制邏輯控制邏輯8259A8259A主從式級聯(lián)中斷系統(tǒng)結(jié)構(gòu)主從式級聯(lián)中斷系統(tǒng)結(jié)構(gòu)圖圖匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R2, 86H選擇選擇8255,控制,控制端端A1A0=1100H:0011100001H:10000110OUTA R2, PORT002H:01011010SET R2, 99H控制字:控制字:PA輸入輸入/PB輸出輸出/PC輸入輸入03H:0011100004H:10011001OUT R2, PORT005H:01011000JMP, 30H跳轉(zhuǎn)到主程序跳轉(zhuǎn)到主程序06H:00

3、01000007H:00110000匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)10H8259A中斷矢量表中斷矢量表00001xxxVector008H:0001000000HVector109H:0000000000HVector20AH:0000000000HVector30BH:0000000000HVector40CH:0000000000HVector50DH:0000000000HVector60EH:0000000020HVector70FH:00100000匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R1, 80H; 中斷源中斷源0R

4、1賦值賦值80H(減(減1則最高位變則最高位變0)10H:0011010011H:10000000HLT12H:00000001SET R2, 82H選選PB口,口,A1A0=0113H:0011100014H:10000010OUTA R2, PORT015H:01011010OUT R0, PORT0PB口輸出口輸出16H:01010000MOV R0, R1R0 賦值賦值80H(減(減1則最高位變則最高位變0)17H:01100001SET R2, C0H選擇選擇8259/偶地址偶地址18H:0011100019H:11000000OUTA R2, PORT01AH:01011010匯編

5、助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R2, 60HEOI命令(命令(OCW2命令字)命令字)固定優(yōu)先級固定優(yōu)先級/中斷結(jié)束中斷結(jié)束/L2L1L0=0001BH:001110001CH:01100000OUT R2, PORT01DH:01011000OUTA R2, PORT0去掉去掉8259片選,避免誤修改配置片選,避免誤修改配置1EH:01011010IRET1FH:01110000匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R2, 80H; 中斷源中斷源7選選PA口,口,A1A0=0020H:0011100021H:10000000

6、OUTA R2, PORT022H:01011010IN R1, PORT0PA口輸入,賦值口輸入,賦值R123H:01000100SUBI R1, 01R1遞減遞減“-1”24H:1100010025H:00000001JS 24HR1最高位為最高位為1,則循環(huán)遞減,則循環(huán)遞減26H:0001110027H:00100100SET R2, C0H選擇選擇8259/8259/偶地址偶地址28H:0011100029H:11000000OUTA R2, PORT02AH:01011010匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R2, 60HEOI命令(命令(OCW2

7、命令字)命令字)固定優(yōu)先級固定優(yōu)先級/中斷結(jié)束中斷結(jié)束/L2L1L0=0002BH:001110002CH:01100000OUT R2, PORT02DH:01011000OUTA R2, PORT0去掉去掉8259片選,避免誤修改配置片選,避免誤修改配置2EH:01011010IRET2FH:01110000匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R2, C0H配置配置8259/偶地址偶地址30H:0011100031H:11000000OUTA R2, PORT032H:01011010SET R2, 13H設(shè)置初始化命令字設(shè)置初始化命令字ICW1:上升沿觸

8、發(fā)上升沿觸發(fā)/單片工作單片工作/需要設(shè)置需要設(shè)置ICW433H:0011100034H:00010011OUT R2, PORT035H:01011000SET R2, C2H配置配置8259/奇地址奇地址36H:0011100037H:11000010OUTA R2, PORT038H:01011010SET R2, 08H設(shè)置初始化命令字設(shè)置初始化命令字ICW2:中斷類型號:中斷類型號(中斷向量表入口地址(中斷向量表入口地址00001xxx)39H:001110003AH:00001000OUT R2, PORT03BH:01011000匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:

9、機(jī)器指令)SET R2, 05H設(shè)置初始化命令字設(shè)置初始化命令字ICW4:全嵌套全嵌套/非緩沖非緩沖/主片主片/非自動中斷結(jié)束非自動中斷結(jié)束3CH:001110003DH:00000101OUT R2, PORT03EH:01011000SET R2, 7EH寫入操作命令字寫入操作命令字OCW1屏蔽所有未用到的中斷屏蔽所有未用到的中斷IR3FH:0011100040H:01111110OUT R2, PORT041H:01011000匯編助記符匯編助記符注釋注釋(M地址:機(jī)器指令地址:機(jī)器指令)SET R2, 80H; main選選PA口,口,A1A0=0042H:0011100043H:10

10、000000OUTA R2, PORT044H:01011010IN R0, PORT0PA口輸入,口輸入,R0賦值賦值45H:01000000SUBI R0, 01R0遞減遞減“-1”46H:1100000047H:00000001JS 46HR0最高位為最高位為1,則循環(huán)遞減,則循環(huán)遞減48H:0001110049H:01000110HLT4AH:00000001請把本實驗的微程序版請把本實驗的微程序版“嵌套中斷嵌套中斷CPU+8259”CPU+8259”電路改成硬電路改成硬布線版和流水線版布線版和流水線版“嵌套中斷嵌套中斷CPU+8259”CPU+8259”電路,并且運(yùn)行電路,并且運(yùn)行本

11、實驗步驟所示的本實驗步驟所示的8259A8259A測試程序。流水線版本的測試程序。流水線版本的“嵌套中嵌套中斷斷CPU+8259”CPU+8259”電路電路的的設(shè)計有哪些需要注意地方?上述程序設(shè)計有哪些需要注意地方?上述程序在硬布線或流水線版本中需要修改么在硬布線或流水線版本中需要修改么? ? 若需要,請修改并若需要,請修改并測試。測試。 提示: 首先,參考“3.4 嵌套中斷CPU”實驗,設(shè)計具有四級PC/PSW“斷點”堆棧的流水線版嵌套中斷CPU; 其次, 8259端口D7,D0連接IO總線與CPU交互的同時,還要連接PC總線以便于把中斷類型碼打入程序計數(shù)器PC; 最后,如何設(shè)計使中斷響應(yīng)信

12、號出現(xiàn)兩個下降沿,滿足8259A中斷處理流程,是流水線版“嵌套中斷CPU+8259”設(shè)計的關(guān)鍵。OP碼碼( I7 I6 I5 I4 )指令助記符指令助記符OP碼碼( I7 I6 I5 I4 )指令助記符指令助記符0111IRET1111OR/ORI0110MOV1110AND/ANDI0101OUT/OUTA1101ADD/ADDI0100IN1100SUB/SUBI0011SET1011XOR/XORI0010SOP (INC/DEC/NOT/THR)1010SHT (RLC/ LLC/ RRC/ LRC)0001JMP/JMPR/Jx/JxR1001STO/PUSH0000NOP/HLT1

13、000LAD/POP一、系統(tǒng)指令:一、系統(tǒng)指令:匯編語言匯編語言功能功能I7 I6 I5 I4 I3 I2I1 I0NOP;無操作(延時無操作(延時4個個T)00000/0 x/0HLT;停機(jī)(斷點)停機(jī)(斷點)00000/0 x/1IRET;中斷返回中斷返回BP_PCPC;BP_PSWPSW01110/0 x/x匯編語言匯編語言注釋注釋I7 I6 I5 I4 I3 I2I1 I0MOV RA, RB;(RB)RA0110RARBSET RA, IMM;IMMRA0011RAx/xIMM二、二、寄存器及寄存器及I/O操作操作指令:指令:匯編語言匯編語言功能功能I7 I6 I5 I4 I3 I2

14、I1 I0IN RA, PORTx;(PORTx)RA0100RAPORTxOUT RA, PORTx;(RA)PORTx0101RA0/PORTxOUTA RA, PORTx;(RA)PORTx0101RA1/PORTx匯編語言匯編語言功能功能I7 I6 I5 I4I3 I2I1 I0LAD RA, ADDR;ADDRRA1000RA0/0ADDRPOP RA, RB;RBRA1000RARBSTO RA, ADDR;(RA)ADDR1001RA0/0ADDRPUSH RA, RB;(RA)RB1001RARB三、三、存儲器及堆棧操作指令存儲器及堆棧操作指令:匯編語言匯編語言功能功能I7 I

15、6 I5 I4I3 I2I1 I0JMP ADDR;ADDRPC00010/00/0ADDRJMPR RB;(RB)PC00010/0RBJC ADDR;IF CF=1, ADDRPC00010/10/0ADDRJCR RB;IF CF=1, (RB)PC00010/1RBJZ ADDR;IF ZF=1, ADDRPC00011/00/0ADDRJZR RB;IF ZF=1, (RB)PC00011/0RBJS ADDR;IF SF=1, ADDRPC00011/10/0ADDRJSR RB;IF SF=1, (RB)PC00011/1RB四、四、跳轉(zhuǎn)系列指跳轉(zhuǎn)系列指令:令:五、五、算術(shù)邏輯運(yùn)

16、算指令算術(shù)邏輯運(yùn)算指令:匯編語言匯編語言功能功能I7 I6 I5 I4I3 I2 I1 I0RLC RA;(RA)右邏輯移位右邏輯移位1010RA0/0LLC RA;(RA)左邏輯移位左邏輯移位1010RA1/0RRC RA;(RA)右循環(huán)移位右循環(huán)移位1010RA0/1LRC RA;(RA)左循環(huán)移位左循環(huán)移位1010RA1/1匯編語言匯編語言功能功能I7 I6 I5 I4I3 I2I1 I0INC RA;(RA)1RA0010RA0/0DEC RA;(RA)1RA0010RA0/1NOT RA;#(RA)RA0010RA1/0THR RA;(RA)RA0010RA1/1五、五、算術(shù)邏輯運(yùn)算指令算術(shù)邏輯運(yùn)算指令:匯編語言格式匯編語言格式功能功能I7 I6 I5 I4I3 I2I1 I0ADD RA, RB;(RA) (RB)RA1101RARBADDI RA, IMM; (RA) IMMRA 1101RA

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論