(一)8086如何响应一个可屏蔽中断请求?

(1)8259A收到中断源请求时,中断请求寄存器IRR相应位置1。

(2)优先级分析器PR用于比较该中断申请的优先级是否高于正在执行的中断服务。若高,则通过INT将中断请求信号发送至8086的INTR引脚上。

(3)在8086CPU内,当IF=1,INTR=1,且指令执行完成,则则CPU向8259A发出两个INTA#中断响应信号。

(4)8259A收到第一个INTA#信号时,将ISR中断服务寄存器的对应为置1。

(5)8259A收到第二个INTA#信号时,将中断类型码发送给8086。

(6)8086收到中断类型码后,将标志位,CS,IP分别入栈。

(7)中断类型码*4开始的一个字的数据为中断服务函数的偏移地址IP,中断类型码*4+2开始的一个字的数据为中断服务函数的段地址CS。得到CS,IP后,转向中断服务函数,进行操作。

 

(二)主从8259A如何连线?

(1)主8259A,从8259A的数据引脚都接入CPU的数据总线相连。

(2)SP#/EN#,主片接高电平,从片接低电平。

(3)主片的INT接8086的INTR,从片的INT接主片的IRR寄存器的对应位(IRn)

(4)主片CAS0~CAS2与从片CAS0~CAS2同名相连。

(5)主从的8259A的INTA#信号与8086的INTA#相连。

【微机原理】中断

 

(三)什么是CAS0~CAS2?

CAS0~CAS2是3根级联控制信号。系统中最多可以把8级中断信号扩展成64级主从式中断请求。

当8259A作为主片时,CAS0~CAS2为输出信号。

当8259A作为从片时,CAS0~CAS2为输入信号。

在主从级联系统中,将根据主片8259A这三根引线上的输出来选择8259A的从片,作为从片的片选信号。

 

(四)主从系统下,CAS0~CAS2的使用过程。

(1)当从8259A发出中断申请时,通过INT输出给主8259A。如果优先级高于正在服务的中断源的级别,则主8259A通过INT向CPU发出申请。

(2)CPU通过INTA#发送到主片和从片的INTA#上。主片INTA#通过CAS0~CAS2发出从片片选信号,选择对应的从片,通过数据引线发出中断类型码给8086。

分类:

技术点:

相关文章: