首页 百科知识 硬件中断优先权

硬件中断优先权

时间:2023-10-17 百科知识 版权反馈
【摘要】:硬件中断也就是可屏蔽中断,主要用于实现计算机系统对外部设备的管理。在8088CPU的计算机系统中,用一片中断控制器8259A来管理8级硬件中断,各级硬件中断IRQn所对应的外部设备如图6.2所示,其中IRQ0的优先权最高,IRQ7的优先权最低。

6.1.2 硬件中断优先权

硬件中断也就是可屏蔽中断,主要用于实现计算机系统对外部设备的管理。在IBM PC系列的计算机系统中硬件中断通过中断控制器Intel 8259A的INT来向处理器(CPU)的INTR线提出中断请求,外部设备则连接到8259A中断控制器的中断请求线IRQn上。在8088CPU的计算机(PC/XT)系统中,用一片中断控制器8259A来管理8级硬件中断,各级硬件中断IRQn所对应的外部设备如图6.2所示,其中IRQ0的优先权最高,IRQ7的优先权最低。

img376

图6.2 IBM PC/XT机的硬件中断

在IBM PC系列的计算机系统中,所有的外部设备都是通过8259A来进行管理的。当外部设备需要传送数据或需要接收数据时,首先通过硬件连接到IRQn的信号线(高电平),向8259A中断控制器提出中断请求,8259A接收到中断请求信号后,把该中断请求的中断优先权与内部在服务寄存器ISR的当前中断优先权进行比较,若当前请求的中断优先权大于CPU在服务的中断优先权,8259A则通过INT线向CPU的INTR提出中断请求(高电平)。如果CPU的中断标志位IF=1,则在当前指令执行完后进入中断响应周期,在中断响应周期中,向8259A发出INTA中断应答信号,同时从8259A读取该中断类型号,转入相应的中断服务程序,即响应当前外部设备的中断请求。

在以80286以上为中央处理器的计算机系统中,整个系统的硬件中断由两片8259A中断控制器构成,可管理16级硬件中断(IRQ15~IRQ0),各硬件设备的中断定义也作了适当的修改,如图6.3所示。

img377

图6.3 80X86计算机的硬件中断

它们的优先权顺序为(从高到低):IRQ0→IRQ1→IRQ2→IRQ8…→IRQ15→IRQ3…→IRQ7。如图6.3所示,IRQ2是扩展从8259A的中断请求线,因此,使系统的硬件中断变为15级。在计算机系统中为保持16级硬件中断,在BIOS中采用软件重定向的方法(IRQ2),保留其中断请求,保证系统的16级硬件中断。需要说明的是IRQ0系统时钟和IRQ8实时钟二者是有区别的。系统时钟是指由定时/计数器8253的0号通道产生的18.2次/s的时钟源,主要用于计算机系统的时间基准校正,而实时钟是由CMOS内部的计时电路产生的时间基准。

在PC机中,主8259A占用20H~21H两个端口地址,其IRQ0~IRQ7对应的中断类型为08H~0FH,从8259A占用端口地址A0H~A1H,IRQ8~IRQ15对应的中断类型为70H~77H。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈