第7章28259ppt课件.ppt

上传人:本田雅阁 文档编号:3130748 上传时间:2019-07-14 格式:PPT 页数:35 大小:1.28MB
返回 下载 相关 举报
第7章28259ppt课件.ppt_第1页
第1页 / 共35页
第7章28259ppt课件.ppt_第2页
第2页 / 共35页
第7章28259ppt课件.ppt_第3页
第3页 / 共35页
第7章28259ppt课件.ppt_第4页
第4页 / 共35页
第7章28259ppt课件.ppt_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《第7章28259ppt课件.ppt》由会员分享,可在线阅读,更多相关《第7章28259ppt课件.ppt(35页珍藏版)》请在三一文库上搜索。

1、7.5 可编程中断控制器 8259A,Intel 8259A是可编程中断控制器,配合80X86 CPU 管理可屏蔽中断。 一、功能 一片8259A可以管理8级中断,多片通过级连最多可扩展至64级 每一级中断都可由程序单独被屏蔽或允许 在中断响应周期,可提供中断向量号给CPU 8259A有多种工作方式,可通过编程进行设置。 中断优先权的管理 中断屏蔽的管理 中断结束的管理,D7D0,INTA,INT,中断 请求 寄存 器 (IRR),中断屏蔽寄存器 (IMR),数据 总线 缓冲器,IR0,IR7,读/写 控制 电路,级联 缓冲器 比较器,RD,WR,A0,CS,CAS0,CSA1,CAS2,SP

2、/EN,优先权判别器,中断 服务 寄存器 (ISR),控制电路,二、 8259的引脚与内部功能结构,8259A内部结构,1.中断请求寄存器IRR 保存8条外界中断请求信号IR0IR7的请求状态 Di位为1表示IRi引脚有中断请求;为0表示无请求 2.中断屏蔽寄存器IMR 保存对中断请求信号IRi的屏蔽状态 Di位为1表示IRi中断被屏蔽(禁止);为0表示允许 3. 优先权判别电路 用来识别和管理各中断请求信号的优先级别。 4.中断服务寄存器ISR 保存正在处理中的中断请求 Di位为1表示IRi中断正在服务中;为0表示没有被服务 5.控制电路 8259A的内部控制器,发出INT ,接受INTA响

3、应信号。还对片内的工作进行控制,使它按编程的规定进行工作。,6. 数据总线缓冲器 三态缓冲器。8259A与CPU的数据总线接口 7. 读/写控制逻辑 完成来自CPU的读写命令,及与片选信号CS与A0(0或1)决定访问片内某个Reg。 通过OUT指令WR有效,把命令字写入ICW和OCW. 通过IN指令RD有效,将IRR、ISR或IMR内容通过数据总线读入CPU。 8. 级联缓冲器/比较器(用于多片8259之间的连接) CAS2CAS0主从结构中,作为主片的8259A,是输出线,作为从片的8259A,CAS2CAS0是输入线,两者互连。 SP/EN从片编程/允许缓冲信号线,是个双功能引脚。 缓冲方

4、式,输出信号EN,控制缓冲器传送方向。 非缓冲器方式,它是输入信号,用于规定8259A是主 (SP=1) 还是从(SP=0)。在只有一片8259A的系统中, SP/EN接高电平。,8259A引脚,三、8259A的工作过程,1. 上电后,由CPU执行一段程序对8259初始化(通过输入初始化命令字实现)。完成初始化后,8259A处于就绪状态 。 2. 当外设发出中断请求后,其对外部中断请求的处理过程如下: 若有一条或多条IRi=1,则IRR中相应位置1。 若对应IMR中的相应位为0。可经过判优后,8259A向CPUINTR。 若IF=1,则CPU在执行完当前指令后, CPU发第一 个 INTA82

5、59A,使 ISR中对应当前最高优先权的位置 1,且IRR中相应位清0。 CPU发第二个INTA8259A,8259ADB上送目前ISR中当前最高优先权的位对应的中断源的8位的中断类型号(类型号在初始化8259A时已设定好)。 若8259A为AEOI(自动结束中断),则在第二个INTA尾,ISR中相应的当前最高优先权的位复位。 否则(非自动结束中断),至中断服务程序结束前,发出EOI命令使ISR中相应位复位。 然后,CPU 进入响应中断的过程,继而执行中断子程序。,以上过程为单片,非级联时,四、8259A的中断管理方式(工作方式),普通全嵌套方式 ,特殊全嵌套方式 ,自动循环方式,特殊循环方式

6、,优先权固定方式,优先权循环方式,优先权设置方式,普通EOI结束方式 ,特殊EOI结束方式,自动AEOI结束方式,非自动中断结束方式,中断结束方式,中断屏蔽方式,普通屏蔽方式 ,特殊屏蔽方式,中断触发方式,边沿触发方式,电平触发方式,数据线连接方式,缓冲方式,非缓冲方式,与CPU配合方式,与8080/8085 CPU配合,与8086/8088 CPU配合,级连方式,级连,不级连,中断优先权的管理 中断屏蔽的管理 中断结束的管理,主片: INTA CAS0CAS2输出线 IR0 SP/EN接高电平,利用 INTR IR1 CAS0 CAS2寻址从 . 控制器。 从片: IR7 CAS0CAS2输

7、入线 +5V IR0 SP/EN接地,从CAS0 IR1 CAS2接收主片发的从片 . 识别码。 过程: IR7 (1) 主片从CAS0CAS2送出该 次中断响应所属的从控制器编码。 (2)各从控制器将接收到的编码与自身的编码比较,相同说明本控制器的请求被响应,将中断类型码送DB,若不相同的从控制器不动作。,INTA CAS0 CAS1 CAS2 从1 INTR SP/EN,INTA CAS0 CAS1 CAS2 主 IR4 IR6 SP/EN,INTA CAS0 CAS1 CAS2 从2 INTR SP/EN,多片8259级联,非缓冲方式SP/EN为输入端 SP=1 8259为主片SP=0

8、8259为从片,8259缓冲方式连接,中断管理方式,中断优先级管理,中断结束管理,完全嵌套:,自动循环:,特殊全嵌套:,中断屏蔽,固定级别排序 IR0 IR7 高 低,普通EOI方式 自动EOI方式,普通EOI方式 自动EOI方式,IRO IR7轮流最高优先级,处理完一次,下一级为最高优先级级,特殊循环,派 生,软件指定初始最低优先级,其余同上,特殊EOI,用于级联的主片,能响应同级中断请求。从片用上述两种方式。,特殊EOI(设置成非EOI,AEOI=0),普通屏蔽: 特殊屏蔽:,IMR对应位置 1,屏蔽本级中断,以允许其他高级中断,中断优先级,普通EOI方式: 特殊EOI方式: 自动EOI方

9、式:,发EOI命令,8259收到即自动清零ISR中最高级对应位(原设置为 1)。,CPU向8259发特殊EOI命令,指定清除中断级别,第二个INTA即清除 ISR 对应位,服务中可被各种级别中断打断,引起重复嵌套,深度无法控制,此方式不常用。,中断结束方式,五、8259A的编程结构,1、8259A的编程结构 由8259A编程结构中可以看到,中断管理方式是通过8259A初始化时写入初始化命令字和操作命令字来设置的。 初始化命令字写入寄存器ICW1ICW4,由初始化程序设置,初始化命令字一经设定,在系统工作过程中就不再改变。 操作命令字写入寄存器OCW1OCW3,由应用程序设定,用来对中断处理过程

10、进行控制,在系统运行过程中,操作命令字可以重新设置。,2、初始化命令字 ICW,见下页,8259A芯片的初始化流程,IR0 IR1,IR6 IR7,INT,INT,INT,INT,IR0 IR1,IR0 IR1,IR0 IR1,多片8259级联,IC1,IC2,IC3,IC4,1 0 0 0 0 0 1 1,ICW3,ICW3,ICW3,ICW3,0 0 0 0 0 0 0 1,0 0 0 0 0 0 0 0,0 0 0 0 0 0 1 1,第一个INTA主片向从片发 ID编码,从片经过比较自己的ID确认,则在第二个INTA时将类型号发至数据总线。,3、操作命令字OCW,在写入ICW1ICW4

11、后,8259A就绪,可接收中断请求信号,若不再写入OCW,则处于全嵌套中断工作方式。且IMR,ISR清0。 若需改变上述8259A的中断控制方式,或为了屏蔽某些中断,为了结束中断,以及读出8259A的一些状态信息(如IRR、ISR、IMR的内容),则必须写入操作命令字OCW。 8259A工作期间,可以随时接受操作命令字OCW OCW共有3个:OCW1OCW3 写入时没有顺序要求,需要哪个OCW就写入那个OCW,但端口地址有严格规定。 通过在服务程序中向8259送操作命令字确定中断屏蔽、中断优先级次序和发中断结束命令。,查询字: 写的OCW3的D2位P为1,则其后的读指令(IN) 读到的是查询字

12、。读的地址为偶地址。,中断位I位为1, 有外设请求中断,W2W0的编码 当前中断请求的最高优先级,CPU内部禁止中断时(IF=0),或不想用INT 引脚向CPU 申请中断时,可通过查询字获得外设中断请求情况。,读取状态字:,CPU可随时读出IRR、ISR、IMR和查询字 A0为0(偶地址)时 由OCW3中P=0 ,RR和RIS位编码决定读取的是IRR或ISR。 由OCW3中位P=1决定下面读取的是查询字。 A0为1(奇地址)时,读取的是IMR,总结:8259A的端口的读写功能,见教材P280 表7.2,OUT IN,命令字和状态字的区别方法, 利用读写信号区别写入的控制寄存器和读出的状态寄存器

13、 利用地址信号区别不同I/O地址的寄存器 由控制字中的标志位说明是哪个寄存器 由芯片内顺序控制逻辑按一定顺序识别不同的寄存器 由前面的控制字(引导字)决定后续操作的寄存器,接口电路中常用的方法,例: 在IBM PC/XT 系统中,ROM BIOS 中的8259A初始化程序为:(地址20H ,21H),MOV AL, 13H ; 单片,上升沿触发 OUT 20H, AL MOV AL , 08H ;中断类型号基值为08H OUT 21H ,AL MOV AL,09H ; 缓冲,非自动结束 OUT 21H, AL,24,8087协处理器中断请求 RAM奇偶错 I/O通道检查错,NMI屏蔽寄存器屏蔽

14、控制,定时器(主板上) 键盘(主板上),NMI,INTR,0 1 2 3 4 5 6 7,优 先 级,8088 CPU,8259A,I/O 通 道,IBM PC/XT机中的外部中断管理,未用 异步通信卡(辅) 异步通信卡(主) 硬盘 软盘 并行打印机,在8086系统中,CPU和8259A的所有数据传送都在数据总线的低8位上进行。地址总线的A1与8259A的A0相连,以保证数传都在总线的低8位中进行。,六、8259A的中断级联,中断请求源多于8个: 将多片8259A级联使用 图7-14给出了两级级联的例子。 第一级为8259A主片,第二级为8259A从片,主片可接18片8259A从片,这样最多可

15、管理64级中断源。 级联系统中主片和从片要分别初始化。 通常主片设为特殊全嵌套工作方式,从片可为全嵌套方式。 全嵌套方式下,级联系统中断的响应过程。 中断的结束方法。,见教材P295,见教材P296,图7-14 8259A级联方式连接图,27,8259A在IBM PC/AT上的应用,CAS02,CAS02,+5V,主8259A,80286 CPU,INTR D0D7,SP/EN INT D0D7,日时钟 键盘 串行口2 串行口1 并行口2 软盘 并行口1 A0 -INTR1 CS, IRQ0 IRQ1 IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7 A0 CS,从8259A,D0D

16、7 INT SP/EN,实时钟 改向0AH中断 保留 保留 保留 协处理器 硬盘 保留 A0 -INTR2 CS, IRQ8 IRQ9 IRQ10 IRQ11 IRQ12 IRQ13 IRQ14 IRQ15 A0 CS,系统总线 B25 B24 B23 B22 B21,系统总线 B4 D3 D4 D5 D6 D7,INTA,RD,WR,INTA,IOR,IOW,INTA,RD,WR,-S0 -S2,82288,利用上升沿做为中断请求IRQ的有效信号 IRQ0IRQ7中断向量号依次为08H0FH IRQ8IRQ15中断向量号依次为70H77H( PC/AT机) 采用普通全嵌套优先权方式,中断优先

17、权从高到低顺序为IRQ0IRQ2、IRQ8IRQ15(级连从片)、IRQ3IRQ7,且不能改变 采用普通中断结束EOI方式,需在中断服务程序最后发送普通EOI命令 一般采用普通屏蔽方式,通过写IMR相应位为0允许中断,应注意不要破坏原屏蔽状态。,例 7-21: 某系统中两片8259A采用中断级联方式组成中断系统,从片的INT端连8259A主片的IR3端。若当前8259A主片从IR1、IR5端引入两个中断请求,中断类型号为31H、35H。中断服务程序的段基址为1000H,偏移地址分别为2000H及3000H。8259A从片由IR4、IR5端引入两个中断请求,中断类型号为44H和45H,中断服务程

18、序段基址为2000H,偏移地址为3600H及4500H,图716给出了级联连接图,图717为此例中断入口地址表内容。,8259A级联使用例子,图7-16 8259A级联使用实例,图7-17 中断入口地址表内容,在主程序中设置,;LTIM=0,SNGL=0,SFMN=1,OCW1=11010101,在中断服务子程序中发中断结束命令,在主程序中初始化,;OCW2的EOI=1,在中断服务子程序中发中断结束命令,在主程序中初始化,7.5 保护模式下中断 (略),第7章教学要求 1. 掌握中断的基本概念。(中断、中断优先权)。 2 .掌握8088/8086的中断类型、中断响应过程、中断向量表。 3. 重点掌握: CPU响应可屏蔽中断的条件 CPU响应可屏蔽中断的过程 4. 掌握8259的功能。理解8259A的内部结构、中断过程、命令字。 理解8259A的普通全嵌套优先权、普通中断结束、边沿触发方式 5、了解中断编程的基本原理(主程序,中断服务子程序的编写)。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1