第六章 输入输出和中断技术2

上传人:飞*** 文档编号:4080295 上传时间:2017-08-06 格式:PPT 页数:63 大小:654KB
返回 下载 相关 举报
第六章 输入输出和中断技术2_第1页
第1页 / 共63页
第六章 输入输出和中断技术2_第2页
第2页 / 共63页
第六章 输入输出和中断技术2_第3页
第3页 / 共63页
第六章 输入输出和中断技术2_第4页
第4页 / 共63页
第六章 输入输出和中断技术2_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《第六章 输入输出和中断技术2》由会员分享,可在线阅读,更多相关《第六章 输入输出和中断技术2(63页珍藏版)》请在金锄头文库上搜索。

1、8259A的功能,1. 向CPU的引脚INTR发中断申请信号当有多个外设同时发出中断请求时,能按照一定的优先级顺序,向CPU发出中断申请,使CPU能优先响应优先级最高的外部设备的中断申请。2. 送中断类型号 在CPU中断响应周期,针对不同外设的中断请求, 向CPU传送不同的中断类型号,使CPU执行相应的中断子程。,中断申请管理接口的主要功能:,在IBM PC机由8259A可编程中断控制器(PIC)来完成。,8259A的功能,8259A可编程中断控制器可用于管理Intel 8080/8085、8086/8088、80286/80386的可屏蔽中断8259A的基本功能一片8259A可以管理8级中断

2、,可扩展至64级每一级中断都可单独被屏蔽或允许在中断响应周期,可提供相应的中断向量号8259A设计有多种工作方式,可通过编程选择,8259A的内部结构,8259A的内部结构1.中断请求寄存器IRR保存从IR0IR7来的中断请求信号,某位=1表示对应的IRi有中断请求 2.中断服务寄存器ISR 保存所有正在服务的中断源,某位=1表示对应的IRi中断正在被服务 3.中断屏蔽寄存器IMR存放中断屏蔽字,某位=1表示对应的IRi输入被屏蔽 4.中断优先权判别电路 确定是否向CPU发出中断请求,中断响应时确定ISR的哪位应置位及把相应中断的类型码放到数据总线上,8259A的内部结构5. 读/写控制电路用

3、于控制对8259A的读、写操作。6. 数据总线缓冲器双向8位3态缓冲器,由它构成8259A与CPU之间的数据接口。7. 级联缓冲/比较器多片8259A可级联使用,最多可以组成64级中断优先级控制,此时一片8259A做主片,另外8片做从片,主从片的CAS0CAS2并接在一起,作为级联总线8. 控制逻辑向CPU发INT信号,接收CPU发来的INTA信号,控制8259A进入中断服务状态。,定时器,8259A的工作过程,返回,8259A的时序,8259A的工作方式,中断触发方式,优先级控制方式,两类优先级控制方式:固定优先级和循环优先级固定优先级方式(普通全嵌套方式和特殊全嵌套方式)所有中断请求IRi

4、的中断优先级固定不变优先级排列顺序可编程改变加电后8259A的默认方式,默认优先级顺序从高到低为IR0IR7,IR7,IR6,IR5,IR4,IR3,IR2,IR1,IR0,7,6,5,4,3,2,1,0,3,2,1,0,7,6,5,4,最低级,最高级,最高级,最低级,优先级,IR7,IR6,IR5,IR4,IR3,IR2,IR1,IR0,默认优先级,优先级可编程改变,固定优先级下的中断嵌套在中断处理过程中允许被更高优先级的事件所中断称为中断嵌套。8259A有两种中断嵌套方式:普通全嵌套方式(默认方式) 一中断正被处理时,只有更高优先级的事件可以打断当前的中断处理过程而被服务。特殊全嵌套方式

5、一中断正被处理时,允许同级或更高优先级的事件可以打断当前的中断处理过程而被服务。注: 特殊全嵌套仅用于多个8259A级连时的8259A,而不能用于从属8259A或单8259A系统。,D.,主8259A,IR0IR1IR2IR3IR4IR5IR6IR7,一般嵌套方式:从片的INT被主片封锁,故更高级别的IR0-IR2中断也无法得到响应,特殊嵌套方式:因主片不封锁从片的INT,故级别高的IR0-IR2中断可以得到响应。(但IR3-IR7仍被本从片封锁),C.,假定IR3发生中断,并获得服务,一般嵌套方式:IR4的中断被服务时,这些中断将被封锁。,B.,特殊嵌套方式:IR4的中断被服务时,只封锁IR

6、5-IR7。,A.,INT,E.,从8259A,INT,IR0IR1IR2IR3IR4IR5IR6IR7,一般全嵌套方式与特殊全嵌套方式的区别,去CPU,循环优先级方式(自动循环方式和特殊循环方式) 中断源轮流处于最高优先级,即自动中断优先级循环某中断请求IRi被处理后,其优先级别自动降为最低,原来比它低一级的中断上升为最高级 初始优先级顺序可用编程改变(特殊循环方式),IR7,IR6,IR5,IR4,IR3,IR2,IR1,IR0,7,6,5,4,3,2,1,0,2,1,0,7,6,5,4,3,最低级,最高级,最高级,最低级,ISR内容,IR7,IR6,IR5,IR4,IR3,IR2,IR1

7、,IR0,IR4的服务结束以前,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,0,IR4的服务结束以后,ISRi,结束中断处理方式,当某一IRi中断被服务时,ISR中的相应位ISRi=1。当服务结束后,则必须清零该ISRi位。使ISRi=0是通过向8259A发出中断结束命令(EOI命令)实现的。三种EOI命令自动EOI(AEOI)(自动EOI方式)非指定EOI(NSEOI)(普通EOI方式)指定EOI(SEOI)(特殊EOI方式),AEOI:在第2个INTA#结束时,由8259A使ISRi自动复位;因不保留当前正在服务的中断的状态,故AEOI不能用于中断嵌套方式NSEOI:由CP

8、U发出正常EOI命令,该EOI命令使ISRi=1的位中优先级最高的那一位复位。用于普通全嵌套方式SEOI:由CPU发出一条SEOI命令,该EOI命令中指出了所要复位的ISR的位号。 用于非全嵌套方式,中断服务程序,向从PIC发EOI命令,读从PIC的ISR,全0?,向主PIC发EOI命令,Y,IRET,恢复现场,N,特殊全嵌套方式下的EOI处理只有当从PIC的中断全部处理完后,才能向主PIC发EOI命令,屏蔽中断源的方式,普通屏蔽方式:IMR屏蔽字决定了允许或禁止某位IRi所对应的中断:IMi=1 禁止, IMi=0 允许。特殊屏蔽方式:提供了允许较低优先级的中断能够得到响应的特殊手段。原理:

9、假定当前正在处理IR6,先进入特殊屏蔽方式,然后设置IM6=1。这时,除IR6外的所有中断请求均能得到响应。特殊屏蔽方式中只能用SEOI命令结束中断。,特殊屏蔽例: ;IR4中断处理程序CLIMOV AL,68H ;OCW3:0 1 1 0 1 0 0 0OUT 0C0H,AL ;设置特殊屏蔽方式IN AL,0C2H OR AL,10H ;屏蔽IR4OUT 0C2H,AL STI ;IR7请求,响应,返回CLI ;为设命令字IN AL,0C2H ;读出屏蔽字AND AL,0EFH ;清除IMR4OUT 0C2H,ALMOV AL,48H ;OCW3:0 1 0 0 1 0 0 0OUT 0C0

10、H,AL ;取消特殊屏蔽STI ;继续IR4中断服务MOV AL,20H ;OCW2:0 0 1 0 0 0 0 0 (EOI)OUT 0C0,ALIRET,中断触发方式,边沿触发IRi出现上升沿表示有中断请求 电平触发IRi出现高电平表示有中断请求在第1个INTA#结束前,IRi必须保持高电平,中断的级连,一个系统中,8259A可以级连,有一个主8259A,若干个(最多8个)从8259A级连时,主8259A的三条级连线CAS0CAS2作为输出线,连至每个从8259A的CAS0CAS2每个从8259A的中断请求信号INT,连至主8259A的一个中断请求输入端IR主8259A的INT线连至CPU

11、的中断请求输入端SP*/EN*在非缓冲方式下,规定该8259A是主片(SP*1)还是从片(SP*0),CAS0 IR0CAS1 IR1CAS2 IR2 IR3INTA IR4 IR5INT IR6 IR7SP/EN,CAS0INTA CAS1 CAS2INT IR0 IR1SP/EN IR7,CAS0 IR0CAS1 IR1CAS2 IR2 IR3INTA IR4 IR5INT IR6 IR7SP/EN,INTA,INTR,+5V,8259级连工作示意图,返回,CPU,8259A,8259A,8259A,8259级联工作示意图,返回,8259A的编程,8259A的控制命令分为初始化命令字ICW

12、ICW1ICW4向8259A写入ICW的过程称为初始化编程操作命令字OCW OCW1OCW3向8259A写入OCW的过程称为操作方式编程,8259A的编程,8259A内部寄存器的寻址方法,需要CS#、A0、RD#、WR#和D4、D3的配合内部寄存器的访问方法如下表:,8259A的初始化顺序,8259的初始化流程如图注意次序不可颠倒,写ICW1,写ICW2,级连?,写ICW3,需ICW4?,写ICW4,N,N,Y,Y,8259A的控制命令字,初始化8259A必须从ICW1开始写ICW1意味着重新初始化8259A写入ICW1后,8259A的状态如下:清除ISR和IMR(全0);将中断优先级设成初始

13、状态:IR0最高,IR7最低;设定为一般屏蔽方式;采用非自动中断结束方式;状态读出逻辑预置为读IRR。准备顺序接收其他ICW,ICW1初始化字,表示可以任意为1为0都可以(建议为0),1只能为1,作为标志,中断触发方式:LTIM1,电平触发方式LTIM0,边沿触发方式,规定单片或级连方式:SNGL1,单片方式SNGL0,级连方式,是否写入ICW4IC41,要写入ICW4IC40,不写入ICW4,即ICW4规定的位全为0,A0 = 0,ICW2中断向量码,A0 = 1,设置中断向量号T7T3为中断向量号的高5位低3位由8259A自动确定:IR0为000、IR1为001、IR7为111,ICW3级连控制字,级连命令字主片8259A:Si1对应IRi接有从片;否则IRi没有连接从片从片8259A:ID0ID2编码说明从片INT引脚接到主片哪个IR引脚,A0 = 1,ICW3级连控制字(续),ICW3必须与主从片的连接关系一致:例如,主片的IR4与从片的INT线连接,则主片的ICW3=10H,从片的ICW3=04H。中断响应时,主片通过级连线CAS2-CAS0送出被允许中断的从片标识码,各从片用自己的ICW3与CAS2-CAS0比较,二者一致的从片才可发送中断向量码。,ICW4中断结束方式字,嵌套方式:特殊全嵌套方式(SFNM1)普通全嵌套方式(SFNM0),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号