中断控制器模块(8259)
8259是一种可编程的中断控制器。每块芯片可管理8级向量中断,同时,可通过多片级连实现多达64级的中断管理。PC/AT中使用两片8259,对15级向量中断进行管理。
中断控制器支持8级中断请求,可通过编程设定优先级,8位的中断请求寄存器(IRR)将8个中断请求信号锁存其中(有请求相应位置“1”),IRR可以编程为边沿或电平触发。同时支持级连工作方式,允许把附加的控制器加到系统内,这样就可以扩充外部中断请求信号的数目,比如PC/AT系统就支持这种级连工作方式。
中断控制器8259有四种主要工作方式,即全嵌套、循环优先级、特定屏蔽和程序查询方式。同时,它还有一4种从属工作方式,即结束中断、读状态、中断请求触发和数据缓冲方式。此外它分单片系统和多片级连系统两大类,在多片级连系统中还允许主片选择特殊全嵌套方式。这些工作方式都可以通过编程选择。
中断方法是解决外部设备和系统连接的很好途径,它有效地实现了外部设备与CPU的并行工作。在实际应用中,除了要考虑如何对中断控制器编程进行的问题,还要对采用中断方式进行I/O控制的接口电路进行设计。