- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机专接本之微机原理-8中断控制器
1
第8章 中断控制器8259A
2
本章 主要外语词汇
ICW:Interrupt Control Word,中断控制字
IOW:Interrupt Operation Word,中断操作字
ISR:Interrupt Service Register,中断服务寄存器
IMR:Interrupt Mask Register,中断屏蔽寄存器
IRR:Interrupt Request Register,中断请求寄存器
3
8.1 可编程中断控制器8259A简介
中断系统可解决当前高速运算CPU与低速外部设备信息交换之间的矛盾。
8259A的基本功能:
一片8259A可以管理8级中断,可扩展至64级。
每一级中断都可单独被屏蔽或允许。
在中断响应周期,可提供相应的中断向量(类型)号。
8259A设计有多种工作方式,可通过编程选择。
Intel 8259A是可编程中断控制器PIC
可用于管理Intel 8080/8085、8086/8088、80286/80386的可屏蔽中断
4
8259A的用途(演示)
5
8.1.1 8259A芯片结构
(1)8259A的内部结构
中断请求寄存器IRR(Interrupt Request Register)
优先权电路
中断服务寄存器ISR(Interrupt Service Register)
中断屏蔽寄存器IMR(Interrupt Mask Register)
数据总线缓冲器
读写电路
控制逻辑和级连缓冲/比较器
6
(1)数据总线驱动器
8位双向三态缓冲器,是8259与系统总线的接口,连CPU的D0~D7,传送控制字、状态字和中断类型码等。
(2)读写控制电路
通过RD*、WR*、CS*、A0,接收CPU的初始化命令字、操作命令字、或发出8259的状态。
7
(3)级联缓冲/比较器
1)缓冲方式:在多片8259A级联的系统中,8259A通过总线驱动器和数据总线相联。在缓冲方式下,SP*/ EN*与总线驱动器的允许端OE相连,控制总线驱动器的启动,当EN*=0,8259A控制数据送到CPU,当EN*=1,控制数据从CPU送到8259
2)非缓冲方式:此时8259A直接与数据总线相连。 SP* / EN*为输入端,当SP*=1,该片为主片,当SP*=0,该片为从片。主片与从片通过CAS0~CAS2级连。主片的INT与CPU的INTR连接;从片的INT作为主片的IR0~IR7输入。
级联
8
(4)中断请求寄存器IRR
保存8条外界中断请求信号IR0~IR7的请求状态
Di位为1表示IRi引脚有中断请求;为0表示无请求
(5)中断服务寄存器ISR
保存正在被8259A处理的中断请求信号。
Di位为1表示IRi中断正在服务中;为0表示没有被服务
第一个INTA*信号就能使相应位置1,一直保持到中断处理结束。
(6)中断屏蔽寄存器IMR
保存对中断请求信号IRi的屏蔽信息。
Di位为1表示IRi中断被屏蔽(禁止);为0表示允许。
9
(7)优先级判别器PR(priority register)
判别保存在IRR寄存器中的中断请求的优先级,并送最高优先级的中断请求到中断服务寄存器ISR中。
当出现多重中断时,判定新中断是否能打断正在执行的中断服务程序。
(8)控制电路
向CPU发出INT中断请求,接收CPU的中断响应信号INTA*。
10
(2)8259A的外部引脚
11
(2)8259A的外部引脚
D0~D7:双向数据线,用于和系统的数据线相连
IR7~IR0:中断请求输入端,中断请求信号可为电平触发和边沿触发方式。其中IR0优先权最高,IR7最低。级联时,连从片的INT端。
WR*:写控制信号线,当为低电平时,CPU向8259A写入控制信号。
RD*:读控制信号线,当为低时,可将8259A内部寄存器的信息读至数据总线。
CS*:片选信号线
A0:选择8259的两个端口,通常与地址总线A0相连接。INT:中断请求输出,接CPU的中断请求线INTR。
INTA*:CPU回送的中断响应信号,连CPU的同名端。
CAS0~CAS2:级连信号,对于主8259A,它们是输出线,而对于从8259A,它们是输入线。
SP*/EN*:做输入线时,用来决定本片8259是主片还是从片。1为主片,0为从片。做输出线时,启动8259到CPU之间的数据驱动器。
级联
12
8259A的结构图
13
8.1.2 8259A的中断过程
当某IRi有效时,IRR相应位置1
若有效的IRi未被屏蔽,则向CPU发出中断请求
检测到第1个INTA#信号后,置ISRi=1,IRRi=0
检测到第2个INTA#信号后,把ISRi=1中最高优先级的中断类型码放到DB上
若工作在AEOI方式,
文档评论(0)