第7章-中断系统和中断控制器8259A.详解.ppt_第1页
第7章-中断系统和中断控制器8259A.详解.ppt_第2页
第7章-中断系统和中断控制器8259A.详解.ppt_第3页
第7章-中断系统和中断控制器8259A.详解.ppt_第4页
第7章-中断系统和中断控制器8259A.详解.ppt_第5页
免费预览已结束,剩余35页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第7章 中断系统和中断控制器8259A,7.1 中断的基本概念 中断:是指CPU在正常运行程序时,由于内部或外部事件引起CPU暂时中止执行现行程序,转去执行请求CPU为其服务的那个外设或事件的服务程序,待该服务程序执行完后又返回到被中止的程序这样一个过程。 中断源:能发出中断申请的外设或引起中断的原因。,中断技术的优点: 并行操作:指CPU和多个外设并行操作。 分时操作:指CPU可分时执行多个用户程序和多道作业。 实现实时处理、 故障处理。 基本功能调用:通过软件中断可实现DOS功能调用和基本BIOS调用。 提高了CPU的利用效率。,中断处理过程,1.中断过程, 对于不同的微机系统,CPU中断

2、处理的具体过程不尽相同,但是一个完整的中断基本过程应包括五个基本过程:,7.1.2,(1) 软件查询方式 软件查询优先方式是最简单的中断优先处理方式。图6.5显示了采用软件查询方式的接口电路。,7.1.3 中断优先权,软件查询方式流程图,(2)硬件优先权排队电路, 简单硬件方式中断优先权编码链法或链式优先权排队电路。,中断优先权编码电路主要由硬件编码器和比较器组成。由编码器送出优先权最高的编码,由此编码获得相应的中断服务程序入口地址。由比较器判别只有比当前优先权高的中断请求才能送到CPU引脚。,链式优先权排队电路由硬件逻辑电路代替查询程序。各中断源通过一个特定的信号串行连接成链。无中断请求时,

3、该信号可串行通过;链中某个中断源由中断请求,CPU响应后,该信号在中断源出截止,只有该中断源前的中断源可以打断CPU的服务程序。即:排在最前面的中断源为优先权最高的,排在最后面的为优先权最低。, 专用硬件方式可编程的中断控制器。采用可编程中断控制器,是当前微型计算机系统中解决中断优先权管理的常用办法。,如8259A,它具有8个优先权控制,级联后可扩展至64级优先权控制,且每级中断都可设置为允许或屏蔽。,8086/8088的中断系统,1.中断分类 8086/8088CPU可以处理256种类型的中断源,这些中断源可分为外部(硬件)中断和内部(软件)中断两大类。 内部中断:由执行指令引起 外部中断:

4、由CPU得引脚线INTR、NMI引起。,2.中断向量表 在8086系统中,允许引入256种类型中断源(类型码为0255),相应有256个中断服务程序首址。存放中断地址的一段内存空间称中断向量表。,7.2,7.2.1 中断指令,1、中断指令格式:INT n 或 INT ;n=0255,为中断类型码分别为 ;双/单字节指令,指令的操作: (SP) (SP)-2,(SP+1),(SP) (FR) (IF) 0,(TF) 0 (SP) (SP)-2,(SP+1),(SP) (CS) (SP) (SP)-2,(SP+1),(SP) (IP) (IP) (n4) (CS) (n4+2),7.2.1 中断指

5、令,2、溢出中断指令格式:INTO ;单字节指令,操作同INT n,n=4. 用于代符号数加减后溢出产生的中断. 通常放在一条算术运算指令后面.,7.2.1 中断指令,3、中断返回指令格式:IRET,指令的操作: (IP) (SP+1),(SP) (SP) (SP)+2 (CS) (SP+1),(SP) (SP) (SP)+2 (FR) (SP+1),(SP) (SP) (SP)+2,注意入栈和出栈的顺序!,7.2.2 中断分类,8086/8088中的各种中断的响应和处理过程是不相同的。主要区别在于如何获取相应的中断类型码。,内部中断,除法错误:除数为0或商超过寄存器表达范围。,单步中断:TF

6、1,自动产生单步中断。一般用在调试程序中。,断点中断:与单步中断类似。用在调试程序中。,溢出中断:OF为1时,执行INTO进入。,溢出中断:OF为1时,执行INTO进入。,1.NMI CPU采样NMI引脚的中断请求时,自动提供中断类型号2,然后根据中断类型号,查找中断向量表指针,其后的处理与内部中断一样。NMI上的请求信号有效宽度要大于2个时钟周期., 8086/8088CPU为外部设备提供了两条硬件中断信号线,即NMI和INTR中断请求信号。,外部中断硬中断,2.INTR IF=1时,INTR引脚上由中断请求信号,CPU响应,从而进入中断响应周期。 STI,开中断,CLI,关中断.,8086

7、系统内存地址的一些专用区域, 0000003FFH 1KB 空间用于存放中断向量表,可存放256个中断服务程序的入口地址,每个地址占4字节。 B0000B0FFFH 4KB 为单色显示器显示缓冲区 ,存放屏幕当前显示字符的ASCII码。 B8000BBFFFH 16KB 为彩色显示器显示缓冲区,存放屏幕当前像素代码。 FFFF0H 启动地址。一般用来存放一条无条件转移指令,转到系统初始化程序。,7.2.3 中断向量表,中断服务程序的入口地址,用两个字节表示.低字为入口的偏移地址,高字为入口的断基址.,已知中断向量表如下: _ 0004CH 59H _ 0004DH ECH _ 0004EH 0

8、0H _ 0004FH F0H _ A.中断类型号是多少? B.中断服务程序的入口地址是多少?,- 4c /4 = 13h 13h - f000:ec59,例:,思考:,某中断源的中断类型码为2AH,该中断源的中断服务入口地址为2000H:FF23H,试画出中断向量表图,7.3 中断控制器8259A,Intel8259A是一种可编程的中断控制器(PIC),有如下功能: 可为CPU管理和处理8个中断源电路的中断,并对它们进行优先级管理。 可与其它8个8259A芯片组成主从式中断系统,实现64级中断源控制。 优先级方式在执行程序时可动态改变,有多种中断管理方式。 每一中断源中断都可以屏蔽或允许,可

9、通过编程选择。 能自动送出中断类型号,使CPU方便的找到中断服务程序的入口地址。 允许中断嵌套。,7.3.1 8259A的主要功能,7.3.2 8259A的结构及引脚,一、8259A的引脚 芯片采用 双列直插式 28引脚封装, 各引脚的 信号功能 如图所示,二、8259A内部功能结构,1、中断请求寄存器IRR,用于锁存所有IRi引脚输入的中断请求信号。,2、优先权判别器PR,进行优先权管理。 中断嵌套原则:高优先权中断可以打断低优先权中断;同级不能互相打断;低优先权不能打断高优先权中断。,3、中断服务寄存器ISR,用于记录已被中断响应的中断。,4、中断屏蔽寄存器IMR,用于存放中断的屏蔽信息,

10、当IMR某位被置位,对应位的中断请求就被屏蔽。,5、数据总线缓冲器,8259A与CPU之间的数据传输通道。,6、读/写控制逻辑,接受CPU的控制信号,完成规定的写入操作,读IRR、ISR和IMR。,7、级联缓冲/比较器,实现8259A级联。,8、控制逻辑,控制片内工作,根据IRR、IMR的内容和PR判断结果。向CPU发中断请求,接受CPU的中断相应信号。,8259A是28个引脚的双列直插芯片,其引脚如图 所示。 D7D0双向三态数据线,它可直接与数据总线连接。 IR0IR7中断请求输入线,其中IR优先权最高,IR7最低。 INT中断请求输出,接CPU的中断请求线INTR。 INTA 中断响应输

11、入,接受CPU发来的中断响应信号。,8259A的引线,(2 ), CS片选信号线,当该脚为低电平时,8259A被选中。 WR写控制信号线,当为低电平时,CPU向8259A写入控制信号。 RD读控制信号线,当为低时,可将8259A内部寄存器的信息读至数据总线。 A0用以选择8259A内部不同寄存器。通常与地址总线A0相连接。 CAS0CAS2级连信号,对于主8259A,它们是输出线,而对于从8259A,它们是输入线。 SP/EN从程序/缓冲器允许信号,是一个双功能信号。,7.3.3、8259A的工作过程,若允许嵌套,PR依据ISR的状态,判断新的中断请求优先权是否高于正在服务的中断,是则送出IN

12、T1。 服务结束,8259A清除ISR响应位。,7.3.4 8259A的工作方式,1、中断请求触发方式,当IR3得到 中断服务后,(1)电平触发 性质:IR7IR0的中断申请端出现高电平,触发中断服务。 特点:响应后,必须撤除申请,否则发生二次中断申请。,(2)边沿触发 性质:IR7IR0的中断申请端出现低电平向高电平跳变时,触发中断服务 特点:申请端一直保持高电平,不会误判。,7.3.4 8259A的工作方式,2、屏蔽中断源方式: 由8259A的内部屏蔽寄存器IMR决定。有一般屏蔽方式和特殊屏蔽方式两种。,当IR3得到 中断服务后,(1)一般屏蔽方式 性质:通过编程置操作命令字OCW1的相应

13、位为1,则使对应中断源被屏蔽。为0,则使对应中断源不被屏蔽。用输出命令将OCW2写入IMR中实现。 特点:使某些中断源可以申请服务,某些被屏蔽不能申请中断服务。,(2)特殊屏蔽方式 性质:通过编程置操作命令字OCW3的D6D5=11,进入工作方式。通过编程置操作命令字OCW3的D6D5=10,退出工作方式。 特点:使某些优先权低的中断源可以申请服务,某些优先权低的中断源被屏蔽不能申请中断服务。,7.3.4 8259A的工作方式,当IR3得到 中断服务后,3、中断优先权设置方式:,(1)普通全嵌套方式(固定优先级方式): 默认方式,IR0最高,IR7最低,(2)特殊全嵌套方式: 基本同普通全嵌套

14、方式, 但可以进行同级嵌套。,(3)优先级自动循环方式: 初始优先级顺序IR0最高,IR7最低。 当其中一个中断源受到服务, 则它为最低优先权。 同时置比它低一级中断源为最高级, 其它自动循环排列。,(4)优先级指定(特殊)循环方式: 当一中断源指定为最低优先权, 则比它低一级中断源为最高级,其它顺序排列。 如:指定IR3为最低,则优先级顺序为IR4, IR5,IR6,IR7,IR0,IR1, IR2 , IR3 。,7.3.4 8259A的工作方式,4、中断结束(EOI)方式 结束中断处理是将中断服务寄存器中对应的位置0。结束中断处理方式有三类: (1)一般中断结束方式(EOI):通过编程置

15、初始化命令字ICW4的D1=0,设置。通过编程置操作命令字OCW2的D7D6D5=001,执行输出命令,实现自动结束。 特点:使当前中断服务寄存器(ISR)中优先权级别最高的对应位清0,即结束。 (2)特殊中断结束方式(SEOI):通过编程置ICW4的D1=0,设置。然后通过编程置操作命令字OCW2的D7D6D5=X11,D2D1D0给出想结束的中断源号。使结束。 特点:使指定中断服务寄存器(ISR)中的中断源对应位清0,即结束。 (3)自动中断结束方式(AEOI):通过编程置ICW4的D1=1实现。 特点:只适用于一片8259A,且各中断不发生嵌套。中断服务寄存器(ISR)中的中断源对应位清

16、0由硬件自动完成,但正在处理的中断服务程序并没有结束。,当IR3得到 中断服务后,7.3.4 8259A的工作方式,当IR3得到 中断服务后,5、连接总线方式,(1)缓冲方式 性质:通过编程置初始化命令字ICW4的D3=1,进入工作方式。8259A的SP/EN :输出低电平作为启动信号。 特点:应用于多片级连的大系统中,通过总线驱动器和数据总线相连。,(2)非缓冲方式 性质:通过编程置初始化命令字ICW1的D3=0,进入工作方式。 特点:申请端一直保持高电平,不会误判。8259A直接和数据总线相连,8259A工作之前需要用两类控制字对它进行工作方式的设定和启动它进行规定的操作。 第一类是初始化

17、命令字ICW1ICW4,它通常是计算机系统启动时由初始化程序设置的,一旦设定一般在系统各种过程不在改变。 第二类是操作命令字OCW1OCW3,它是由应用程序设定,用来对中断处理过程进行动态控制。, 初始化命令字,ICW1的格式芯片控制字,1 = 需要ICW4 0 = 不需要ICW4,偶地址,A0 D7 D6 D5 D4 D3 D2 D1 D0,ICW1识 别 位,1 = 单片 0 = 级连,1 = 电平触发 0 = 边沿触发,ICW2的格式定义中断类型码,奇地址,A0 D7 D6 D5 D4 D3 D2 D1 D0,中断类型码的高5位,中断类型码的低3位,自动填入,IR0:000

18、, IR1:001 IR2:010, IR3:011 IR4:100, IR5:101 IR6:110, IR7:111,ICW3的格式主/从片初始化,ICW4的格式方式控制字,8259A初始化流程, 8259A的操作命令字,(1) 操作命令字OCW1屏蔽操作命令字,该命令字用来设置或清除对中断的屏蔽称中断屏蔽命令字。其格式如图所示。,OCW1的格式,中断屏蔽 1 = 置屏蔽 0 = 复位屏蔽,奇地址,A0 D7 D6 D5 D4 D3 D2 D1 D0,该命令字用来设置优先级循环和中断结束方式。 其格式如图所示。,(2) 操作命令字OCW2中断方式命令字,OCW2的格式,中断级编码 IR0 0 0 0 IR1 0 0 1 IR2 0 1 0 IR3 0 1 1 IR4 1 0 0 IR5 1 0 1 IR6 1 1 0 IR7 1 1 1,偶地址,A0 D7 D6 D5 D4 D3 D2 D1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论