中断控制器(中断控制器8259A)

频道:电子元器件 日期: 浏览:250

中断控制器

本文内容来自于互联网,分享中断控制器(中断控制器8259A)

各组成部分的功能如下:

§(1)中断请求寄存储器(IRR)8位。它寄存外部设备提出的中断请求。

§(2)优先权裁决器。对IRR中有请求的中断源以及正在服务的中断源进行判别,以裁决出当前优先级最高的中断请求。

§(3)中断在服务寄存器(ISR)8位。与IRR的各位相对应,记录了当前正在中断处理的中断请求。

§(4)中断屏蔽寄存器(IMR)。IMR为8位,对应位置1,即可屏蔽IRR中相应位的中断请求。

§(5)总线缓冲器。与系统的数据总线连接,是8位双向三态缓冲器。对8259A写入命令字,以及读取状态信息都是通过该缓冲器传送的。

§(6)读/写控制逻辑。该逻辑电路接收端口地址信号和CPU的读写控制信号IOW和IOR产生相应的控制信号,控制命令字的写入和状态字的读取。

§(7)级联缓冲器和比较器。用来存放和比较系统中从片8259A的标识码。

§(8)控制逻辑。控制逻辑中有一组寄存器,用来寄存8259A的命令字,实现对多种工作方式的控制。同时还包括有中断请求和响应的电路,在有中断请求时向CPU发出中断请求,同时接收CPU响应中断时发出的中断响应信号。

§2.8259A的外部引脚信号

§8259A为28脚双列直插封装。

D7~D0双向数据线。

§RD:输入,读命令信号。与控制总线相连。

§WR:输入,写命令信号。与控制总线相连。

§CS:输入,片选信号。与地址译码电路相连。

§A0:输入,地址线。8259A占用相邻两个端口

中断控制器(中断控制器8259A)

§地址,A0与CS配合,A0=1时选中奇地址,

§A0=0时选中偶地址,而且要求偶地址

§低,奇地址高。PC机中主片为20H和21H。

§CAS2~CAS0:级联线。在主从结构中,主、

§从片8259A的CAS2一CAS0。对应连接。

§SP/EN:双向信号线。有两个功能,作为输入时,主片8259A的此信号线接高电平,从片8259A的此信号线接低电平。做输出时,如果8259A采用缓冲方式工作,则SP/EN信号作为数据线驱动器的使能信号。§INT:中断请求信号。输出,与CPU的INTR引脚连接,向CPU发出中断请求。§INTA:中断响应信号。输入,与CPU的中断响应输出相连。

§5.2.28259A的工作方式

§1.优先级方式选择

§(1)全嵌套方式。亦称固定优先级方式。在8个中断请求IR0~IR7中,IR0为最高级,依次为IR1,IR2,…,IR7为最低。在中断服务过程中禁止同级和优先级低于本级的中断请求。

§(2)特殊全嵌套方式。它与全嵌套方式基本相同,只是在特殊全嵌套方式下,当某级正在处理中断时,同时可以响应本级的中断请求,实现对同级中断的嵌套。

§(3)优先级自动循环方式。初始化时,优先级次序为IR0、IR7,IR0最高。IR7最低。当某级中断响应后,则优先级降为最低。例如,IR4响应后的优先级次序变为IR5,IR6,IR7,IR0,IR1,IR2,IR3,IR4。

§(4)优先级特殊循环方式。开始时由编程指定最低优先级的中断请求,其他同优先级自动循环方式。例如,初始化时指定IR6为最低优先级,则优先级次序为:IR7,IR0…….IR6。

优先级自动循环方式有利于平衡各个中断源的响应几率:对于几个中断源地位几乎相等的情况,默认的优先级总是使得排在前面的中断源得到响应的几率较大。但是在自动循环方式中,先响应的中断源变为最低,则提升了后面的优先级,从而平衡了各个中断源的响应几率。§2.屏蔽中断方式选择

§(1)普通屏蔽方式。将操作命令字OCW1写入到片内屏蔽寄存器IMR中,例如IMR=00001100,则IR2,IR3的中断请求被禁止。

§(2)特殊屏蔽方式。在本分式下,当某个中断正在被响应时,允许较低级别的中断源的中断请求。暂时中断正在执行的中断服务程序。

§3.中断处理结束方式选择

§当中断存服务寄存器ISR中某位ISRn为1时,表示相应的中断请求IRn正在服务中;中断服务结束时,则应将ISRn清0。

§(1)白动中断结束方式。8259A在收到CPU的中断响应后,自动将ISR中的正在处理的ISRn位清0。仅适用单片8259A和中断无嵌套的情况。

§(2)一般的中断结束方式。在中断服务程序返回前,执行一条一般中断结束命令,将ISR中当前最高的置1位清0。适用全嵌尝方式。

§(3)特殊中断结束方式。在中断结束前,向8259A发出一条特殊中断结束命令;根据命令字的编码。将ISR中的指定位清0,以结束中断。

§4.中断请求信号触发方式选择

§(1)边沿触发方式:正跳变信号,表示有中断请求。出现正跳变信号后,允许高电平保持。

§(2)电平触发方式:高电平信号表示有中断请求。该请求电平必须在中断服务程序中的中断结束命令执行前予以撤消。


§5.2.38259A的命令字

§命令字包括初始化命令字和操作命令字两部分。要按规定写入到8259A的两个端口(1个为偶地址,一个为奇地址)中寄存。

§1.初始化命令字

§初始化命令字共有ICW1~ICW4四个。

§(1)ICW1的格式和定义。

§ICW1必须写到8259A的偶地址端口。

§LTIM:1中断请求电平触发、0中断请求边沿触发

§SNGL:1单片、0多片(为了扩大中断源的数目8259A可以多片级连。)

§(2)ICW2的格式和定义。

§ICW2用来设置中断类型码,必须写到8259A的奇地址端口。ICW2用来指定8259A的8个中断请求IR0—IR7的中断类型码。

§其中T7—T3由程序写入,最低3位根据正在响应的中断请求IRn的n值自动填入。

§例如:ICW2为40H,则所对应的中断类型码为40H,41H,42H,43H,44H,45H,46H,47H。

§(3)ICW3的格式和定义。

§8259A作为主片和从片的ICW3格式和含义是不同的,ICW3必须写到8259A的奇地址端口。

§8259A作为主片的格式:


主片的IR0~IR7的某个引脚上连接从片8259A,则该位为l,反之为0。

8259A作为从片的格式:

§ID2、ID1、ID0的值取决于本从片的INT输出端连到主片哪个IR输入端。如连到IR7,则ID2,ID1,ID0=111。

§从片的CAS7~CAS0接收到主片8259A发来的编码,将该码与从片本身的ICW3中的ID2~ID0比较,若相等,则在中断响应过程中将自己的中断类型码发送到CPU。

(4)ICW4的格式和定义:ICW4必须写入到8259A的奇地址端口


SFNM=:1特殊全嵌套方式,0非特殊全嵌套方式

BUF,M/S=:0X非缓冲方式,10从片缓冲方式,11主片缓冲方式

§

AEOI=:1中断自动结束方式,0一般中断结束方式式

?PM=:18088/8086系统,08080/8085系统

§对初始化命令字编程时应注意到:

§(1)初始化命令字必须按规定的奇、偶地址端口写入。

§(2)ICW1~ICW4写入的顺序是固定的,不可颠倒。

§(3)ICW1、ICW2是必须设置的,但ICW3、ICW4根据工作方式的需要设置。

§2.8259A的操作命令字

§8259共有3个操作命令字OCW1—OCW3。

§(1)OCW1的格式和定义。这是一个中断屏蔽命令字,OCW1必须写入到8259A的奇地址端口。

§

§OCW1的格式如下:

OCW1中某位为l时,其对应的中断请求IRn被屏蔽,对应于各位为0的中断请求被允许参与优先权的裁决。

§(2)OCW2的格式和定义。OCW2必须写入到8259A的偶地址端口。

§OCW2的格式如下:

R=:1中断优先级循环,0中断优先级非循环

SL=:1L2~L0有效,0L2~L0无效

EOI=:1非自动结束中断,0自动结束中断

§(3)OCW3的格式和定义。OCW3的功能是设置或撤消特殊屏蔽方式,设置中断查询方式以及设置对8259A内部寄存器读出的命令。

OCW3必须写入到8259A的偶地址端口。

§OCW3的格式如下:

ESMMSMM方式RRRIS P 

11进入特殊屏蔽方式10在下条指令读取IRR1查询命令

10恢复到一般屏蔽方式11在下条指令读取ISR0不查询命令

§OCW3中的P位称为查询方式位,P=1时,使8259A设置为中断查询工作方式。当发出查询命令后,下一条输入指令,CPU就可读取8259A中ISR寄存器的值。OCW3的PR=l,RIS=0时,则OCW3发出后的下一条输入指令就可读取IRR寄存器的值。当RR=1,RIS=1时,则下一条输人指令就可读取ISR寄存器的值。

§OCW1~OCW3是在应用程序中设置的,写的次序没有严格规定


中断控制器(中断控制器8259A)


关键词:控制器中断8259A