课件:微机原理与接口技术第08章X.ppt_第1页
课件:微机原理与接口技术第08章X.ppt_第2页
课件:微机原理与接口技术第08章X.ppt_第3页
课件:微机原理与接口技术第08章X.ppt_第4页
课件:微机原理与接口技术第08章X.ppt_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

第 8 章,第8章:教学重点,教学重点 80X86 CPU的中断系统 中断控制器8259A的作用 8259A的编程,第8章:8.1 8088中断系统,8088的中断系统采用向量中断机制 能够处理256个中断 用中断向量号0 255区别 可屏蔽中断还需要借助专用中断控制器Intel 8259A实现优先权管理,第8章:8.1.1 8088的中断类型,内部中断: 除法错中断 指令中断 溢出中断 单步中断,外部中断 非屏蔽中断 可屏蔽中断,外部中断 非屏蔽中断 可屏蔽中断,第8章:1. 内部中断,内部中断是由于8088内部执行程序出现异常引起的程序中断 利用内部中断,微处理器为用户提供了发现、调试并解决程序执行时异常情况的有效途径 例如,ROM-BIOS和DOS系统利用内部中断为程序员提供了各种功能调用,第8章:2. 外部中断,外部中断是由于8088外部提出中断请求引起的程序中断 利用外部中断,微机系统可以实时响应外部设备的数据传送请求,能够及时处理外部意外或紧急事件 外部中断的原因是处理器外部随机产生的,所以是真正的中断(Interrupt) 内部中断的原因是处理器执行程序出现异常,所以经常被称为异常(Exception),第8章:中断标志IF的状态,IF0:可屏蔽中断不会被响应 关中断、禁止中断、中断屏蔽 系统复位,使IF0 任何一个中断被响应,使IF0 执行指令CLI,使IF0 IF1:可屏蔽中断会被响应 开中断、允许中断、中断开放 执行指令STI,使IF1 执行指令IRET恢复原IF状态,明 确 IF 标 志 的 状 态 是 关 键,第8章:8.1.2 8088的中断响应过程,第8章:8.1.2 8088的中断响应过程(续),N,指令结束,有中断请求,恢复现场,执行下一条指令,禁止中断,保留现场,处理中断(中断服务),撤消中断请求,Y,Y,N,开中断,返回,示例,第8章:8.1.3 8088的中断向量表,中断向量:中断服务程序的入口地址(首地址) 逻辑地址含有段地址CS和偏移地址IP(32位) 每个中断向量的低字是偏移地址、高字是段地址,需占用4个字节 8088微处理器从物理地址000H开始,依次安排各个中断向量,向量号也从0开始 256个中断占用1KB区域,就形成中断向量表,向量号为N的中断向量的 物理地址N4,第8章:8.3 中断优先权,在系统中,中断源有多个,但CPU响应中断的引脚有限。因此,当有多个中断请求时,CPU就应有能力识别出这些中断,然后根据其优先级先响应级别最高的中断申请。 通常,识别中断可以采用软件方法和硬件方法; 软件方法主要采用查询技术,而硬件方法有: 中断优先权编码电路 链式优先权排队电路,(1)用软件查询方式确定中断,(2)中断优先权编码电路(图8-7),正在处理的中断的编码,比较器失效信号: 即CPU无中断处理时,该线为高电平,(3)链式中断优先权排队电路(图8-8),优先级: ABCD,第8章:8.3 8259A中断控制器,Intel 8259A是可编程中断控制器PIC 用于管理Intel 80X86/8085的可屏蔽中断 8259A的基本功能 一片8259A可以管理8级中断,可扩展至64级 每一级中断都可单独被屏蔽或允许 在中断响应周期,可提供相应的中断向量号 8259A设计有多种工作方式,可通过编程选择,第8章:8.3 8259A引脚图,8259A的主要引脚有: IR0IR7:从外设来的中断请求由这些引脚输入到8259A。 A0:地址线,用于寻址8259A的两个端口 INT:当8259A接到外设的中断请求,对CPU提出中断请求线,该引脚连接到CPU的INTR上。 INTA*:CPU接到中断请求后送回的中断应答信号。 CAS0CAS2:主8259A与从8259A的级连线,对于主8259A该引脚为输出,从8259A为输入。,第8章: 8.3.1 8259A的内部结构,IMR:保存对中断请求信号IR的屏蔽状态 Di位为1表示IRi中断被屏蔽(禁止);为0表示允许,ISR:保存正在被8259A服务着的中断状态 Di位为1表示IRi中断正在服务中;为0表示没有被服务,IRR: 保存8条外界中断请求信号IR0IR7的请求状态; Di位为1表示IRi引脚有中断请求;为0表示无请求,8259响应多个中断的过程,动画,2. 与处理器接口,3. 中断级连,一个系统中,8259A可以级连,有一个主8259A,若干个从8259A (最多8个) 级连时,每个从8259A的中断请求信号INT,连至主8259A的一个中断请求输入端IR,主8259A的INT线连至CPU的中断请求输入端 主8259A的三条级连线CAS0CAS2作为输出线,连至每个从8259A的CAS0CAS2 SP*/EN*在非缓冲方式下,规定该8259A是主片(SP*1)还是从片(SP*0),动画,示例,8.3.2 8259A的中断过程,8.5.6 8259A的工作方式,1. 设置优先权方式,普通全嵌套方式 8259A的中断优先权顺序固定不变,从高到低依次为IR0、IR1、IR2、IR7 中断请求后,8259A对当前请求中断中优先权最高的中断IRi予以响应,将其向量号送上数据总线,对应ISR的Di位置位,直到中断结束(ISR的Di位复位) 在ISR的Di位置位期间,禁止再发生同级和低级优先权的中断,但允许高级优先权中断的嵌套 特殊全嵌套方式 与普通全嵌套方式基本相同,二者区别是:在特殊全嵌套方式下,当处理某一级中断时,如果有同级的中断请求,则8259A也可以响应。 特殊全嵌套方式一般用在8259A级联的系统中。在这种情况下,主片的8259A设置为特殊全嵌套方式,这样,当从片的某一中断请求正被处理时,可以响应来自从片的更高优先级的中断。,1. 设置优先权方式,优先权自动循环方式 在此方式下,优先级队列是在变化的。初始化时优先级顺序为IR0、IR1、IR2、IR7,IR0的中断优先权最高。 当一个中断被响应之后,它的优先级自动降为最低,而原来比它低一级的中断则升至最高级。例:当IR4中断被响应后,则中断优先级顺序为:IR5、IR6、IR7、IR0、IR1、IR2、IR3、IR4 优先权特殊循环方式 与优先权自动循环方式相比,只有一点不同:在优先权特殊循环方式中,初始化时的最低优先级是由编程确定的。,2. 结束中断处理方式,什么是8259A的中断结束?,8259A利用中断服务寄存器ISR判断: 某位为1,表示正在进行中断服务; 该位为0,就是该中断结束服务。 只有当将ISR中的相应位复位之后,8259才能响应同级或更低级的中断;,2. 结束中断处理方式,中断结束方式可分为: 普通中断结束方式(EOI) 配合全嵌套优先权方式使用 当CPU用输出指令往8259A发出普通中断结束EOI命令时,8259A就会把所有正在服务的中断中优先权最高的ISR位复位 自动中断结束方式(Auto End of Interrupt) 在这种方式下,系统一进入中断过程,8259A就自动将ISR中的相应位复位。,3. 屏蔽中断源方式,普通屏蔽方式 将IMR的Di位置1,则对应的中断IRi被屏蔽,该中断请求不能从8259A送到CPU 如果IMR的Di位置0,则允许IRi中断产生 特殊屏蔽方式 将IMR的Di位置1,对应的中断IRi被屏蔽的同时,使ISR的Di位置0 这样做是为了在处理中断服务程序期间,开放其它优先级别较低中断的目的。,4. 中断触发方式,边沿触发方式 8259A将中断请求输入端出现的上升沿作为中断请求信号 电平触发方式 中断请求端出现的高电平是有效的中断请求信号,5. 数据线连接方式,缓冲方式 8259A的数据线需加缓冲器予以驱动 8259A把SP*/EN*引脚作为输出端,输出允许信号,用以锁存或开启缓冲器 非缓冲方式 SP*/EN*引脚为输入端 若8259A级连,由其确定是主片或从片,8.5.4 8259A的编程,对8259的编程可分为初始化编程(ICW-初始化命令字)和操作命令编程(OCW-操作命令字)两种: 初始化编程 8259A开始工作前,必须进行初始化编程,以确定其工作方式; 初始化编程为向8259A写入24个字节的ICW1ICW4; 其中ICW1、ICW2是必须的,而ICW3、ICW4可选; 中断操作编程 操作编程共3条命令(OCW1OCW3) 在8259A工作期间写入OCW,将选定的操作传送给8259A,使之按新的要求工作;还可以读取8259A的信息,以便了解他的工作状态,1. 初始化命令字ICW,8259A在开始工作前必须写入初始化命令字ICW,最多有4个,最少两个 必须按照ICW1ICW4顺序写入 ICW1和ICW2是必须送的 ICW3和ICW4由工作方式决定,流程,当向8259A写入的命令字的D4=1,而引脚A0=0时(即在PC机中操作的口地址为20H时),8259A将之理解为ICW1,并自动复位成初始状态,准备接收其它的ICW。ICW1命令字的格式为:,(1)ICW1,表示送入低位端口,例:若对8259A初始化成采用电平方式,单片使用,需用ICW4,则送出的ICW1应为: mov al,00011011b out 20h,al,必须,(2)ICW2(中断向量命令字),设置中断向量号 命令字中,T7T3为中断向量号的高5位,低3位设为0 根据此命令, 8259A自动确定低3位:IR0为000、IR1为001、IR7为111,向8259A写入ICW1命令字后,应立即向8259A送ICW2。 ICW2用于确定8259A每根IR线上的中断向量号;(其实确定的是IR0线上的中断向量号),例:在PC机中,对应的ICW2为: OUT 21H,08H 因此,对于IR0线上的中断类型号为08H,IR1线上的中断类型号为09H、。,(3)ICW3(级联控制字),级连命令字 主片8259A:Si1对应IRi接有从片;否则IRi没有连接从片 从片8259A:高5位未用;低3 位ID0ID2编码说明从片INT引脚接到主片哪个IR引脚,必须,当若干片8259A级联时,需向主片8259和从片的8259A写入不同的ICW3:,在上图中,对于主片8259,写入的ICW3应为000000011B(03H) 对于从片A,写入的ICW3应为00H 对于从片B,写入的ICW3应为01H,(4)ICW4(中断方式字 ),当ICW1的D0=1时,才需要写ICW4。它用于设置8259A的中断结束方式、缓冲方式、嵌套方式。它的格式为:,;初始化主片8259A MOV AL,11H 00010001 OUT 20H,AL ;ICW1 NOP MOV AL,08H OUT 21H,AL ;ICW2 NOP MOV AL,04H 00000100 OUT 21H,AL ;ICW3 NOP MOV AL,11H 00010001 OUT 21H,AL ;ICW4,例:AT机中对8259A的设置(两片8259级联),;初始化从片8259A MOV AL,11H OUT 0A0H,AL NOP MOV AL,70H OUT 0A1H,AL NOP MOV AL,02H OUT 0A1H,AL NOP MOV AL,01H OUT 0A1H,AL,2. 操作命令字OCW,8259A工作期间,可以随时接受操作命令字OCW OCW共有3个:OCW1OCW3 写入时没有顺序要求,需要哪个OCW就写入哪个OCW,(1)OCW1(中断屏蔽命令字),屏蔽命令字 内容写入中断屏蔽寄存器IMR DiMi对应IRi,为1禁止IRi中断; 为0允许IRi中断。各位互相独立。,(2)OCW2(中断结束命令),送中断结束命令(复位ISR中的相应位)或设置循环优先级或二者之和。该命令各位意义如下:,OCW2的功能:,用于设定特殊屏蔽方式及读取IRR、ISR寄存器的内容。各位意义如下:,(3)OCW3,注:若要读IMR中的内容,可直接对21H端口执行读操作。,例:BIOS中读取ISR寄存器的程序段, MOV AL,0BH ;写OCW3,00001011 OUT 20H,AL ;20H为OCW3的口地址 NOP ;空操作 IN AL,20H ;读ISR中的内容 MOV AH,AL ;保持到AH中 OR AL,AH ;是否全为0 JNZ AWINT ;不是则转 ,3. 写入8259两个端口的命令的区别方法,8.4 8259A在IBM PC系列机上的应用,第8章:教学要求,熟悉8088的中断类型、中断响应过程、中断向量表 理解8259A的内部结构、寄存器作用、中断过程 掌握8259A的普通全嵌套优先权、普通中断结束、边沿触发方式 了解的8259A的ICW和OCW,注意命令字和状态字的区别方法 了解8259A在IBM PC系列机上的应用情况,8088的中断向量表,返回,中断传送流程,返回,返回,8259级联工作示意图,返回,8259响应多个中断的过程,返回,8259A芯片的初始化流程,返回,8087中断请求 RAM奇偶错 I/O通道检查错,NMI屏蔽寄存器屏蔽位,8253定时器 键盘 未用 异步通信卡(辅) 异步通信卡(主) 硬盘 软盘 并行打印机,NMI,INTR,0 1 2 3 4 5 6 7,优 先 级,8088 CPU,8259A,I/O 通 道,返回,后

温馨提示

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

评论

0/150

提交评论