![微机原理第七章_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/b0a5e53b-6b53-478b-842b-def633880f4d/b0a5e53b-6b53-478b-842b-def633880f4d1.gif)
![微机原理第七章_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/b0a5e53b-6b53-478b-842b-def633880f4d/b0a5e53b-6b53-478b-842b-def633880f4d2.gif)
![微机原理第七章_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/b0a5e53b-6b53-478b-842b-def633880f4d/b0a5e53b-6b53-478b-842b-def633880f4d3.gif)
![微机原理第七章_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/b0a5e53b-6b53-478b-842b-def633880f4d/b0a5e53b-6b53-478b-842b-def633880f4d4.gif)
![微机原理第七章_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/b0a5e53b-6b53-478b-842b-def633880f4d/b0a5e53b-6b53-478b-842b-def633880f4d5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章第七章 中断系统中断系统 v7.1 7.1 中断的基本概念中断的基本概念v7.27.2中断系统及其处理过程中断系统及其处理过程v7.3 8086/80887.3 8086/8088的中断系统的中断系统v7.47.4可编程中断控制器可编程中断控制器8259A8259A7.1 中断的基本概念中断的基本概念中断与异常中断与异常 一、中断一、中断 在在CPUCPU正常运行程序时,由于内部或外部正常运行程序时,由于内部或外部某个某个非预料事件非预料事件的发生,使的发生,使CPUCPU暂停正在运行暂停正在运行的程序,而转去执行的程序,而转去执行处理引起中断事件的程处理引起中断事件的程序序,然后再返回
2、被中断了的程序,继续执行。然后再返回被中断了的程序,继续执行。这个过程就是中断。这个过程就是中断。 早期早期中断概念的引入,是为解决中断概念的引入,是为解决CPUCPU与外设与外设间的速度匹配问题,提高间的速度匹配问题,提高CPU CPU 的工作效率。的工作效率。中断中断源主要是由外部硬件产生。源主要是由外部硬件产生。当今的中断技术,不当今的中断技术,不再限于外部硬件产生中断再限于外部硬件产生中断( (称称硬件中断硬件中断或或外中外中断断 ) ),还可由,还可由CPUCPU内部产生。内部产生。二、异常(软件中断或内中断)二、异常(软件中断或内中断) 因内部意外条件而改变程序执行流程以报告因内部
3、意外条件而改变程序执行流程以报告出错情况和非正常状态的过程或者由程序预先安出错情况和非正常状态的过程或者由程序预先安排,即由指令排,即由指令INT nINT n调用中断服务程序产生的中调用中断服务程序产生的中断。断。7.1.17.1.1中断的用途中断的用途 CPUCPU的中断功能的实现带来了以下好处:的中断功能的实现带来了以下好处:1 1同步处理同步处理2 2实现了实时处理实现了实时处理3 3多道程序或多重任务的运行多道程序或多重任务的运行4 4突发事件处理突发事件处理7.1.27.1.2中断源中断源 凡是能引起中断的设备或事件统称为中断源。凡是能引起中断的设备或事件统称为中断源。中断源分为外
4、部中断源和中断源分为外部中断源和CPUCPU内部的中断源内部的中断源 7.1.37.1.3中断系统的功能中断系统的功能1 1中断的实现与返回中断的实现与返回2 2能实现优化级别排队能实现优化级别排队3 3能实现中断的嵌套能实现中断的嵌套7.27.2中断系统及其处理过程中断系统及其处理过程 中断系统中断系统处理中断请求的硬件电路:处理中断请求的硬件电路:接收接收请求、响应请求、保护现场、转请求、响应请求、保护现场、转向中断服务程序以及中断处理完向中断服务程序以及中断处理完返回返回中断控制器:中断控制器:管理多个中断源,管理多个中断源,进行优先级裁决及中断源屏蔽等进行优先级裁决及中断源屏蔽等功能功
5、能中断处理程序中断处理程序中断原理(外中断)中断原理(外中断)一、中断过程一、中断过程 1.中断请求中断请求 2.中断响应中断响应 条件:条件:无总线请求无总线请求 IF=1 CPU执行完现行指令执行完现行指令 当前中断级别最高当前中断级别最高响应时自动完成以下工作响应时自动完成以下工作: 关中断,即关中断,即IF=0 TF=0; 保护断点,依次将保护断点,依次将FLAG、 CS 、 IP入栈;入栈; 取得中断服务程序入口地址。取得中断服务程序入口地址。 3.中断处理中断处理 保护现场;保护现场; 开中断,可以允许嵌套,也可不开中断;开中断,可以允许嵌套,也可不开中断; 中断服务;中断服务;
6、关中断,保证无干扰恢复现场;关中断,保证无干扰恢复现场; 恢复现场。恢复现场。 4.4.中断返回中断返回 开中断;开中断; 返回。返回。二、中断源的识别二、中断源的识别 对于多个中断源公用一个中断请求线对于多个中断源公用一个中断请求线, ,需要识别是哪个中断源发出的中断请求。需要识别是哪个中断源发出的中断请求。 1.1.软件查询法软件查询法 2.2.硬件处理法硬件处理法7.3 8086/8088的中断系统的中断系统一、中断分类一、中断分类 8086/8088系统中,可以处理系统中,可以处理256个不同类型的个不同类型的中断,其编号从中断,其编号从00H0FFH,称为,称为中断类型号中断类型号。
7、 内中断:内中断: 除法出错除法出错 类型号类型号0 自动产生自动产生 单步中断单步中断 类型号类型号1 DEBUG执行执行T命令命令 断点中断断点中断 类型号类型号3 DEBUG执行执行G命令命令 溢出中断溢出中断 类型号类型号4 执行执行 INTO INT n 类型号类型号n(05H 0FFH) 外中断外中断:不可屏蔽中断不可屏蔽中断 类型号类型号2 自动产生自动产生可屏蔽中断可屏蔽中断 类型号类型号(32 255) 由由8259管理管理中断逻辑中断逻辑INTn指令指令INTO指令指令除法除法错误错误单步单步断点断点非屏蔽中断请求非屏蔽中断请求n401CPUINTRNMIIR0IR6IR5
8、IR4IR3IR2IR1IR7可编程可编程中中 断断控制器控制器(PIC)8259AINT23当有多个中断源同时产生中断申请时,当有多个中断源同时产生中断申请时,CPU先响应优先权最高的中断源,先响应优先权最高的中断源,再响应优先级较低的中断源。再响应优先级较低的中断源。二、二、8088/8086CPU的中断优先权的中断优先权优先级优先级 高高 低低n 内中断内中断 ( 除法出错除法出错,INT 指令指令,断点断点,INTO指令指令 ) n 非屏蔽中断非屏蔽中断 n 可屏蔽中断可屏蔽中断低低 内中断内中断( 单步单步 ) 三、三、 中断向量和中断向量表中断向量和中断向量表直接写入法直接写入法M
9、OVAX,00HMOVDS,AXMOVSI,60H*4;中断类型号;中断类型号4BXMOVAX,OFFSET A;中断服务程序偏移地址;中断服务程序偏移地址AXMOVSI,AXMOVAX,SEG A;中断服务程序段地址;中断服务程序段地址AXMOVSI+2,AX四、中断向量的装入四、中断向量的装入 五、五、8086/8088CPU响应中断的过程响应中断的过程n当中断源产生当中断源产生中断申请中断申请后,后,n不论是内中断、非屏蔽中断,还是可屏蔽中断不论是内中断、非屏蔽中断,还是可屏蔽中断,n只要满足响应条件,在执行完当前指令后,只要满足响应条件,在执行完当前指令后,nCPU内部硬件会自动完成下
10、列响应中断的过程:内部硬件会自动完成下列响应中断的过程: 取中断类型号取中断类型号N 当前当前PSW的内容入栈的内容入栈 清清IF、TF标志为标志为0 当前当前CS的内容入栈的内容入栈 当前当前IP的内容入栈的内容入栈 取内存单元取内存单元( 0 : N 4 )字内容送字内容送IP 取中断子程取中断子程 取内存单元取内存单元( 0 : N 4 + 2 )字内容送字内容送CS 入口地址入口地址 此时此时CS:IP指向中断程序的入口,开始执行中断程序。指向中断程序的入口,开始执行中断程序。保存现场保存现场内内 存存中断向量表中断向量表0:0 3FFH1000:150h3000:200h0: N40
11、: N4+20: 0000 、 、 0200h 3000h 、 、 、 MOV AX, 0 ADD AX, DX MOV DI, AX、 MOV BX,CX、 IRET、类型类型N中断子程中断子程 某中断源发申请中断,某中断源发申请中断,申请执行类型号为申请执行类型号为N的中断子程的中断子程响应中断前响应中断前 SS:SP 响应中断后响应中断后SS:SP 堆栈堆栈 (IP)原原 (CS)原原(PSW)(IP)=0200h(CS)=3000h0:3FFH0:001(PSW)500010从中断子程返回断点处,从中断子程返回断点处,靠的是执行中断子程最后的指令靠的是执行中断子程最后的指令IRET,从
12、堆栈中取出断点地址给从堆栈中取出断点地址给CS:IP,继续执行被中断的程序。继续执行被中断的程序。故中断子程最后应安排故中断子程最后应安排 IRET 指令。指令。1000:150h3000:200h0: N40: N4+20: 0000 、 、 0200h 3000h 、 、 、 MOV AX, 0 ADD AX, DX MOV DI, AX、 MOV BX,CX、 IRET、响应中断前响应中断前 SS:SP 响应中断后响应中断后SS:SP 堆栈堆栈执行执行IRET后后 (IP) (CS)(PSW)SS:SP (IP)=0200h(CS)=3000h01(PSW)5000107.4可编程中断控
13、制器可编程中断控制器8259A1.具有具有8级优先级控制,通过级联可扩充到级优先级控制,通过级联可扩充到64级;级;2.每一级中断可由程序单独屏蔽或允许;每一级中断可由程序单独屏蔽或允许;3.可提供中断类型号传送给可提供中断类型号传送给CPU;4.可通过编程选择多种不同的工作方式。可通过编程选择多种不同的工作方式。 D7D0 RD WR A0 CS CAS0 CAS1 CAS2 SP/EN数据缓数据缓冲器冲器读写逻读写逻辑辑级联级联比较比较/缓缓冲冲控制逻辑控制逻辑 中断屏蔽寄存器中断屏蔽寄存器IMRISR PRIRRINTINTAIR0IR7VccGND8259A的结构及引脚功能的结构及引脚
14、功能一、内部结构一、内部结构IRR 中断请求寄存器中断请求寄存器 用来存放由外部输入的中断请求信号用来存放由外部输入的中断请求信号IR0IR7,允许,允许多位置多位置1。ISR 中断服务寄存器中断服务寄存器 保存、记录正在处理中的中断请求,当任何一级中断保存、记录正在处理中的中断请求,当任何一级中断被响应,被响应,CPU正在执行它的中断服务程序时,正在执行它的中断服务程序时,ISR相应相应位置位置1。PR 优先级判别器优先级判别器 对保存在对保存在IRR中的中断请求进行优先级识别,送出最中的中断请求进行优先级识别,送出最高级别中断请求到高级别中断请求到ISR中;当出现多重中断时,中;当出现多重
15、中断时,PR判定判定是否允许所出现的中断去打断正在处理的中断。是否允许所出现的中断去打断正在处理的中断。IMR 中断屏蔽寄存器中断屏蔽寄存器 实现对各级中断的有选择的屏蔽,当某位为实现对各级中断的有选择的屏蔽,当某位为1,表示禁,表示禁止这一级中断请求进入系统止这一级中断请求进入系统级联比较级联比较/缓冲器缓冲器CAS0CAS2是级联信号是级联信号SP/EN主片主片 输出输出从片从片 输入输入工作在非缓冲方式时工作在非缓冲方式时工作在缓冲方式时工作在缓冲方式时 控制数据收发器控制数据收发器 输出输出单片结构单片结构 输入输入接接“1”少量级联结构少量级联结构 输入输入主片主片 接接“1”从片从
16、片 接地接地控制电路控制电路 是是8259A的内部控制器的内部控制器 根据根据IRR的置位情况和的置位情况和IMR的设置情况,通过的设置情况,通过PR判判定优先级,向定优先级,向8259A内部及其它部件发内部及其它部件发控制信号控制信号和和INT,接收接收INTA使使ISR相应位置相应位置1,并使,并使IRR相应位置相应位置0,同,同时送时送中断类型号中断类型号。数据缓冲器数据缓冲器 双向双向8位三态缓冲器与系统数据总线接口位三态缓冲器与系统数据总线接口 与与CPU交换的信息包括交换的信息包括注:通常连接低注:通常连接低8位数据总线位数据总线读写逻辑读写逻辑 控制数据传送方向及选择数据端口控制
17、数据传送方向及选择数据端口写入写入8259A的编程控制字的编程控制字8259A状态信息的读出状态信息的读出中断响应时送出的中断类型号中断响应时送出的中断类型号CS RD WR A0 读写操作读写操作 0 0 1 0 从低位地址读从低位地址读 0 0 1 1 从高位地址读从高位地址读 0 1 0 0 向低位地址写向低位地址写 0 1 0 1 向高位地址写向高位地址写 1 无操作无操作 二、二、8259A的编程结构的编程结构SP/ENCA0CA1CA2IORIOW总线总线D0D7数数 据据 线线D0D7INTAINTRA0片片选选译译码码A5A9CSA0RD INTAWRINT 1 I3 I4IC
18、W1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片连接关系主从片连接关系 ICW4 方式控制方式控制0111A01 0 0 1 0 1 0 0OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级设置、发优先级设置、发EOI 0 1 OCW3特殊屏蔽特殊屏蔽,查询方式设置查询方式设置处理部分处理部分控制部分控制部分000 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器PR优先级优先级裁决器裁决器VCCGND100A0IR0IR1IR2IR3IR4IR5IR6IR7IRR中断中断申请申请寄存器寄存器000 0 0 0 0 0 n4个初始化命
19、令寄存器个初始化命令寄存器 n ICW1、ICW2n ICW3、ICW4 n3个操作命令寄存器个操作命令寄存器 n OCW1(IMR)n OCW2、OCW3n当前中断服务寄存器当前中断服务寄存器 ISRn中断申请寄存器中断申请寄存器 IRR 8259A内部有内部有9个个 可读写的寄存器可读写的寄存器8259A的编程结构的编程结构 1 I3 I4ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制处理部分处理部分控制部分控制部分000 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器PR优先级优先级裁决器裁决器IRR
20、中断申请中断申请寄存器寄存器000 0 0 0 0 0 中断屏蔽寄存器中断屏蔽寄存器 IMROCW2 1 0 0 1 0 1 0 0 0 0 0 1 OCW3OCW18259A中断控制器中断控制器(1) 初始化命令字初始化命令字(ICW1- ICW4) 决定决定8259A的工作方式的工作方式n 通常是在计算机系统启动时在初始程序设置,通常是在计算机系统启动时在初始程序设置,n 一旦设定,一般在系统工作过程不再改变。一旦设定,一般在系统工作过程不再改变。例例 开机后,开机后,BIOS将将8259A初始化为:初始化为: IR0IR7中断申请信号为上升沿触发方式;中断申请信号为上升沿触发方式;n I
21、R0IR7对应的中断类型号分别为对应的中断类型号分别为08H0FH;n 优先级优先级IR0最高最高, IR7最低;最低;(2) 操作命令字操作命令字(OCW1,OCW2,OCW3)n 在应用程序中设定,动态地控制在应用程序中设定,动态地控制CPU处理中断的处理中断的过程过程(3) ISR和和IRR存放当前存放当前8259A的状态的状态 通过读取通过读取 ISR 和和 IRR 的内容,可了解当前的内容,可了解当前8259A工作情况工作情况三、引脚功能及与CPU连接8259AWRA1CSA0数数 据据 线线 RDRDWRIR0IR1IR2IR3IR4IR5IR6IR7A5A0A4A3A2D0D7D
22、0D7VccSP/ENCA0CA1CA2GND+ 5V用于多片用于多片8259A级连情况级连情况INTAINT INTA INTR8086最小模式最小模式+ 5VM/IOGG2AG2BCBAY2分两步分两步:n(1)处理外设中断申请,决定是否向处理外设中断申请,决定是否向CPU发中断申发中断申请信号。请信号。n(2)若发中断申请信号,且若发中断申请信号,且CPU响应,则在响应,则在CPU中断响应周期送出中断类型号。中断响应周期送出中断类型号。四四. 8259A 的工作过程的工作过程(1) 处理外设中断申请,决定是否向处理外设中断申请,决定是否向CPU发中断申请信号发中断申请信号 中断屏蔽寄存器
23、中断屏蔽寄存器 IMR 决定决定 IRR 中的中断申请中的中断申请 是否进入优先级裁决器是否进入优先级裁决器 PR。n IMR对应位为对应位为 0,允许中断申请进入优先级裁决器,允许中断申请进入优先级裁决器,n 为为 1,不允许进入,中断申请被,不允许进入,中断申请被IMR屏蔽。屏蔽。 中断申请寄存器中断申请寄存器IRR 锁存外部的中断申请。锁存外部的中断申请。n 若若 IR0IR7 引脚上有中断申请,则将引脚上有中断申请,则将 IRR 相应位置相应位置1 当前中断服务寄存器当前中断服务寄存器 ISR 记录记录CPU正在响应的中断。正在响应的中断。n ISR中的某位为中的某位为1,表示,表示C
24、PU正在响应此级中断,正在响应此级中断,n ISR中的某位为中的某位为 0,表示,表示CPU没有或已响应完此级中断,没有或已响应完此级中断,n 优先级裁决器优先级裁决器PR 据新进入的中断申请和据新进入的中断申请和 ISR的内容的内容, 决定是否发中断申请信号。决定是否发中断申请信号。n 如果进入的中断申请比如果进入的中断申请比 ISR 中记录的中断优先级高,中记录的中断优先级高,n 则通过则通过 8259A 的的 INT 引脚向引脚向 CPU发出中断请求信号;发出中断请求信号;n 如果进入的中断申请不比如果进入的中断申请不比 ISR 中记录的中断优先级高,中记录的中断优先级高,n 同级或低级
25、,则不向同级或低级,则不向 CPU 发中断请求信号。发中断请求信号。 中断申请寄存器中断申请寄存器IRR 锁存外部的中断申请。锁存外部的中断申请。n 若若 IR0IR7 引脚上有中断申请,则将引脚上有中断申请,则将 IRR 相应位置相应位置1IORIOW总线总线数数 据据 线线D0D7INTAA0片片选选译译码码A5A9CSA0RD INTAWRINTD0D7 ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制000 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器IR0IR1IR2IR3IR4IR5IR6IR7
26、OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级、发优先级、发EOI OCW3 特殊屏蔽设置特殊屏蔽设置PR优先级优先级裁决器裁决器IRR中断中断申请申请寄存器寄存器000 0 0 0 0 0 1 0 0 1 0 1 0 0INTR11 中断屏蔽寄存器中断屏蔽寄存器 IMR 决定决定 IRR 中的中断申请中的中断申请 是否进入优先级裁决器是否进入优先级裁决器 PR。n IMR对应位对应位为为 0,允许允许中断申请进入优先级裁决器,中断申请进入优先级裁决器,n 为为 1,不允许不允许进入,中断申请被进入,中断申请被IMR屏蔽。屏蔽。IORIOW总线总线数数 据据 线线D0
27、D7INTAA0片片选选译译码码A5A9CSA0RD INTAWRINTD0D7 ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制000 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级、发优先级、发EOI OCW3 特殊屏蔽设置特殊屏蔽设置PR优先级优先级裁决器裁决器IRR中断中断申请申请寄存器寄存器100 0 0 0 0 1 1 0 0 1 0 1 0 0INTR 当前中断服务寄存器当前中
28、断服务寄存器 ISR 记录记录CPU正在响应的中断。正在响应的中断。nISR中的某位中的某位为为1,表示,表示CPU正在响应正在响应此级中断,此级中断,n 即正在执行此中断源的中断子程;即正在执行此中断源的中断子程;nISR中的某位中的某位为为 0,表示,表示CPU没有或已响应完没有或已响应完此级中断,此级中断,n 即不在执行此中断源的中断子程即不在执行此中断源的中断子程IORIOW总线总线数数 据据 线线D0D7INTAA0片片选选译译码码A5A9CSA0RD INTAWRINTD0D7 ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方
29、式控制方式控制001 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级、发优先级、发EOI OCW3 特殊屏蔽设置特殊屏蔽设置PR优先级优先级裁决器裁决器IRR中断中断申请申请寄存器寄存器100 0 0 0 0 1 1 0 0 1 0 1 0 0INTR 优先级裁决器优先级裁决器PR据新进入的中断申请和据新进入的中断申请和 ISR的内容的内容, 决定是否发中断申请信号。决定是否发中断申请信号。n 如果进入的中断申请比如果进入的中断申请比 ISR 中记录的中记录的
30、中断优先级高中断优先级高,n 则通过则通过 8259A 的的 INT 引脚向引脚向 CPU发出中断请求信号;发出中断请求信号;n 如果进入的中断申请不比如果进入的中断申请不比 ISR 中记录的中断优先级高,中记录的中断优先级高,同级或低同级或低级级, 则不向则不向 CPU 发中断请求信号。发中断请求信号。IORIOW总线总线数数 据据 线线D0D7INTAA0片片选选译译码码A5A9CSA0RD INTAWRINTD0D7 ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制001 0 0 0 0 0 ISR当前当前中断中断服务
31、服务寄存器寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级、发优先级、发EOI OCW3 特殊屏蔽设置特殊屏蔽设置PR优先级优先级裁决器裁决器IRR中断中断申请申请寄存器寄存器100 0 0 0 0 1 1 0 0 1 0 1 0 0INTR(2) 若发中断申请信号,且若发中断申请信号,且CPU响应,则在响应,则在CPU中断中断响应周期送出中断类型号响应周期送出中断类型号 CPU接收到接收到 INTR上的中断申请信号后:上的中断申请信号后:l如果如果 IF 标志为标志为0,则,则CPU不响应此中断申请信号不响应此中断
32、申请信号,即即中断申请被中断申请被IF屏蔽。屏蔽。l如果如果 IF 标志为标志为1, 则处理完当前的指令后则处理完当前的指令后, 进入中断进入中断响应周期:响应周期: 通过通过 INTA 引脚发出两个负脉冲信号,引脚发出两个负脉冲信号, 从数据总线上获取中断类型号,从数据总线上获取中断类型号, 进入中断响应的过程。进入中断响应的过程。向量类型向量类型 INTACLKAD7AD0T1T2T3T4第第 一一 个个中断响应周期中断响应周期T1T2T3T4第第 二二 个个中断响应周期中断响应周期 8086CPU中断响应周期时序中断响应周期时序 将将 ISR 中相应位置中相应位置1,表示表示 CPU 响
33、应此级中断,执行此中断源的中断子程。响应此级中断,执行此中断源的中断子程。8259A在接收到第一个在接收到第一个INTA中断响应信号后:中断响应信号后:001 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器IR0IR1IR2IR3IR4IR5IR6IR7PR优先级优先级裁决器裁决器IRR中断中断申请申请寄存器寄存器100 0 0 0 0 1 ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级、发优先级、发EOI OCW3 特殊屏蔽设置特殊屏
34、蔽设置1 0 0 1 0 1 0 0IORIOW总线总线数数 据据 线线D0D7INTAA0片片选选译译码码A5A9CSA0RDWR INTAINTD0D7INTR01 把把 IRR中对应的位清中对应的位清0,清除,清除IRR中锁存的中断申请信号。中锁存的中断申请信号。 通过数据线,将被响应申请的中断类型号送给通过数据线,将被响应申请的中断类型号送给CPU。类型号由类型号由ICW2提供,在初始化提供,在初始化8259A时已设定好。时已设定好。8259A在接收到第二个在接收到第二个INTA中断响应信号后:中断响应信号后:001 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器IR0
35、IR1IR2IR3IR4IR5IR6IR7PR优先级优先级裁决器裁决器IRR中断中断申请申请寄存器寄存器100 0 0 0 0 1 ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级、发优先级、发EOI OCW3 特殊屏蔽设置特殊屏蔽设置1 0 0 1 0 1 0 0IORIOW总线总线数数 据据 线线D0D7INTAA0片片选选译译码码A5A9CSA0RDWR INTAINTD0D7INTR01 CPU获得中断类型号后,进入获得中断类型号后,进入CPU响
36、应中断的过程响应中断的过程, 执行中断子程,处理中断源申请的功能。执行中断子程,处理中断源申请的功能。 8259A的工作方式的工作方式一、中断优先级方式一、中断优先级方式全嵌套方式全嵌套方式 这是这是8259A的默认方式,也是最基本最常用的工作方的默认方式,也是最基本最常用的工作方式。该方式下式。该方式下8259A的中断优先级是从的中断优先级是从IR0IR7,优先级,优先级依次降低。依次降低。自动循环方式自动循环方式 该方式下中断的优先级队列随时发生变化,当某个外该方式下中断的优先级队列随时发生变化,当某个外设的中断请求得到设的中断请求得到CPU响应后,其中断的优先级自动降为响应后,其中断的优
37、先级自动降为最低。(初始的优先级队列规定为最低。(初始的优先级队列规定为IR0 IR7)特殊循环方式特殊循环方式 与自动循环方式不同之处是:特殊循环方式下的初始与自动循环方式不同之处是:特殊循环方式下的初始优先级队列可由编程决定。优先级队列可由编程决定。特殊全嵌套方式特殊全嵌套方式 中断正被处理时,允许同级或更高优先级的事件可以中断正被处理时,允许同级或更高优先级的事件可以打断当前的中断处理过程而被服务。打断当前的中断处理过程而被服务。注注: 特殊全嵌套仅用于多个特殊全嵌套仅用于多个8259A级连时的主级连时的主8259A,而,而不能用于从属不能用于从属8259A或单或单8259A系统。系统。
38、二、中断结束的管理方式(固定优先级的二、中断结束的管理方式(固定优先级的中断结束)中断结束) 中断结束的管理就是用不同的方式使中断结束的管理就是用不同的方式使ISR中相中相应位清零。应位清零。普通结束方式普通结束方式EOI 8259A每得到一次每得到一次EOI命令,就将命令,就将ISR中已置位的各位中已置位的各位中优先级最高的位复位。中优先级最高的位复位。特殊结束方式特殊结束方式SEOI 该方式的特殊性在于,除了普通该方式的特殊性在于,除了普通EOI方式的功能外,方式的功能外,将明确指明本次复位的将明确指明本次复位的ISR位。位。自动结束方式自动结束方式AEOI 自动自动EOI方式是利用响应中
39、断时最后一个响应脉冲方式是利用响应中断时最后一个响应脉冲的后沿执行一次普通的后沿执行一次普通EOI,而不需要,而不需要CPU发送发送EOI指令。指令。三、循环优先级的循环方法三、循环优先级的循环方法 在循环优先级方式中,与中断结束方式联合,有三在循环优先级方式中,与中断结束方式联合,有三种循环结束,结束时并确定下面的优先权排队。种循环结束,结束时并确定下面的优先权排队。普通普通EOI循环方式循环方式特殊特殊EOI循环方式循环方式自动自动EOI循环方式循环方式IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 ISR 内容内容 0 0 1 0 0 1 0 0 原始原始状状 态态 优先
40、级优先级 7 6 5 4 3 2 1 0 ISR 内容内容 0 0 1 0 0 0 0 0 处理完处理完IR2 优先级优先级 4 3 2 1 0 7 6 5 ISR 内容内容 0 0 0 0 0 0 0 0 处理完处理完IR5 优先级优先级 1 0 7 6 5 4 3 2 IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 ISR 内容内容 0 1 0 0 0 1 0 0 原始原始状状 态态 优先级优先级 7 6 5 4 3 2 1 0 ISR 内容内容 0 1 0 0 0 1 0 0 执行置位执行置位 优先权优先权 优先级优先级 3 2 1 0 7 6 5 4 ISR内容内容 0
41、 1 0 0 0 0 0 0 处理完处理完IR2 优先级优先级 4 3 2 1 0 7 6 5 普通普通EOI循环方式循环方式特殊特殊EOI循环方式(正在处理循环方式(正在处理IR2)四、中断源屏蔽方式四、中断源屏蔽方式五、中断请求引入方式五、中断请求引入方式六、连接系统总线方式六、连接系统总线方式1.缓冲方式缓冲方式 2.非缓冲方式非缓冲方式 。8259A的编程方法的编程方法v初始化命令字初始化命令字ICW,操作命令字,操作命令字OCW;v系统复位后,应初始化编程,系统复位后,应初始化编程,按次序只写一次;按次序只写一次; 设定触发方式、缓冲方式、类型号基值、优先级、设定触发方式、缓冲方式、
42、类型号基值、优先级、结束方式结束方式v初始化后,在任何位置可操作编程,没有严格顺初始化后,在任何位置可操作编程,没有严格顺序,允许重置,以动态改变序,允许重置,以动态改变8259A的操作与控制。的操作与控制。8259A初始化流程图初始化流程图写写ICW1写写ICW2级连?级连?写写ICW3需需ICW4?写写ICW4NNYYA0=0A0=1A0=1A0=1芯片控制芯片控制类型号基值类型号基值级连控制级连控制方式控制方式控制一、初始化编程一、初始化编程 ICW10:不需要:不需要ICW41:需要:需要ICW40:级连使用:级连使用1:单片使用:单片使用80X86不用不用A7 A6 A5 1 LTI
43、M ADI SNGL IC4 D7 D6 D5 D4 D3 D2 D1 D00A0ICW180X86不用不用0:边沿触发:边沿触发1:电平触发:电平触发 ICW2T7 T6 T5 T4 T3 0 0 0D7 D6 D5 D4 D3 D2 D1 D01A0ICW2中断类型码高中断类型码高5位位若若ICW2=60H,则,则IR0IR7的中断类型号分别为的中断类型号分别为60H、61H、62H、67H。S7 S6 S5 S4 S3 S2/ID2 S1/ID1 S0/ID01A0主主8259A的级联标志的级联标志1:相应的:相应的IR上有从上有从8259A0:相应的:相应的IR上无从上无从8259AI
44、D2ID0:从从8259A的的IR识别码识别码非缓冲方式非缓冲方式 0 缓冲方式从片缓冲方式从片 1 0 缓冲方式主片缓冲方式主片 1 1 0 0 0 SFNM BUF M/S AEOI PM1A00:一般的全嵌套方式:一般的全嵌套方式1:特殊的全嵌套方式:特殊的全嵌套方式0:808085方式方式1:80X860:非自动:非自动EOI1:自动:自动EOI ICW4 ICW3 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0二、操作命令编程二、操作命令编程OCWOCW1 1中断屏蔽命令字中断屏蔽命令字OCW1M7 M6 M5 M4 M3 M2 M1
45、M0 D7 D6 D5 D4 D3 D2 D1 D01A00:清中断屏蔽位:清中断屏蔽位1:置中断屏蔽位:置中断屏蔽位 OCW OCW2 2中断模式设置命令字中断模式设置命令字0A00 0 0 1 1 1对应对应IRi的编码的编码无操作无操作010设置特殊循环,由设置特殊循环,由L2L0设定最低优先级设定最低优先级011 特殊特殊EOI循环循环,由由L2L0指定结束指定结束IRi并置最低并置最低111取消自动循环取消自动循环(固定优先权固定优先权)000设置自动循环设置自动循环001普通普通EOI循环循环101特殊特殊EOI结束,由结束,由L2L0指定结束指定结束IRi110普通普通EOI结束
46、结束100R=1:循环优先权:循环优先权R=0:固定优先权:固定优先权SL=1:由:由L2 L1 L0指定指定IR位位SL=0:L2 L1 L0无效无效EOI=1:中断结束:中断结束OCW2 R SL EOI 0 0 L2 L1 L0 D7 D6 D5 D4 D3 D2 D1 D0OCW3 D7 D6 D5 D4 D3 D2 D1 D00A0 ESMM SMM 0 1 P RR RIS10清除特清除特殊屏蔽殊屏蔽方式方式01设定特殊设定特殊屏蔽方式屏蔽方式无意义无意义10100:非查询方式:非查询方式1:查询方式:查询方式10随后随后读读IRR01随后随后读读ISR无无意意义义1010 OCW
47、3特殊屏蔽和查询命令字特殊屏蔽和查询命令字 8259A的操作编程并没有固定顺序,各命令字之的操作编程并没有固定顺序,各命令字之间用地址信号间用地址信号A0及特征位加以区分。及特征位加以区分。OCW3命令字有三个功能:命令字有三个功能:设置或撤消特殊屏蔽方式;设置或撤消特殊屏蔽方式;设置中断查询方式;设置中断查询方式;设置读设置读8259A内部寄存器方式。内部寄存器方式。 当当A0=0时时:写入写入ICW1、OCW2、OCW3当当A0=1时时:写入写入ICW2、ICW3、ICW4、OCW1说说 明明一、查询方式一、查询方式 OCW3中中D2位位P=1,关闭中断,即可通过查,关闭中断,即可通过查询
48、方式响应外设的服务请求:从数据总线上读取询方式响应外设的服务请求:从数据总线上读取一个字节,内容为:一个字节,内容为: 其中其中IR=1表示该表示该8259A芯片有外设服务请求,芯片有外设服务请求,W2W0表明了请求服务的最高优先权编码。表明了请求服务的最高优先权编码。IR=0则表示无请求。则表示无请求。 二、读二、读8259A 读读IMR:地址信号:地址信号A0为为1时读时读8259A,可取得,可取得中断屏蔽寄存器中断屏蔽寄存器IMR的状态。的状态。 读读IRR:地址信号:地址信号A0为为0,且当,且当OCW3的的D1位位RR、D0位位RIS被置为被置为10时,可在下一个读脉冲时,可在下一个读脉冲期间读得中断请求寄存器期间读得中断请求寄存器IRR的状态。的状态。 读读ISR:地址信号:地址信号A0为为0,且当,且当OCW3的的RR、RIS位被置为位被置为11时,可在下一个读脉冲期间读得时,可在下一个读脉冲期间读得中断服务寄存器中断服务寄存器ISR的状态。的状态。 8259A的应用举例的应用举例例例1:8086最小模式与最小模式与8259A接口如下接口如下, 外设中断请求分别外设中断请求分别从从IR2 、IR4 、IR7引入引入, 中断类型号从中断类型号从0C0H0C7H,采用上升沿触发,写出采用上升沿触发,写出8259A初始化程序。初始化程序。 D0D7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 未来商业空间设计趋势与挑战应对
- 国庆节中秋快乐活动方案
- 16《朱德扁担》第二课时 说课稿-2024-2025学年语文二年级上册统编版
- Unit 2 Healthy Lifestyle Reading and Thinking 说课稿-2023-2024学年高二英语人教版(2019)选择性必修第三册
- Module4 Unit1 It's red!(说课稿)-2024-2025学年外研版(一起)英语一年级上册
- Unit 2 Different families Lesson 6(说课稿)-2024-2025学年人教PEP版(2024)英语三年级上册
- 1《天地人》说课稿-2024-2025学年语文一年级上册统编版
- 2024-2025学年高中信息技术 会考知识点说课稿
- 2024年六年级品社下册《站在国际舞台上》说课稿 辽师大版001
- 6 推动社会发展的印刷术(说课稿)-2024-2025学年六年级上册科学教科版(2017版)
- 信息技术课程标准2023版:义务教育小学阶段
- 2024年常德职业技术学院单招职业适应性测试题库完整
- 天津市河东区2023-2024学年九年级上学期期末数学试题
- 工程防渗漏培训课件
- 黑龙江省哈尔滨市2024年数学八年级下册期末经典试题含解析
- 牛津3000核心词汇表注释加音标1-4 完整版
- 高中英语以读促写教学策略与实践研究课件
- 金属表面处理中的冷喷涂技术
- 河北省石家庄市2023-2024学年高一上学期期末教学质量检测化学试题(解析版)
- 黑龙江省齐齐哈尔市2023-2024学年高一上学期1月期末英语试题(含答案解析)
- 综合素质能力提升培训
评论
0/150
提交评论