微型计算机原理及其应用七章节微型计算机中断系统学习资料

上传人:yulij****0329 文档编号:139333739 上传时间:2020-07-21 格式:PPT 页数:54 大小:1.06MB
返回 下载 相关 举报
微型计算机原理及其应用七章节微型计算机中断系统学习资料_第1页
第1页 / 共54页
微型计算机原理及其应用七章节微型计算机中断系统学习资料_第2页
第2页 / 共54页
微型计算机原理及其应用七章节微型计算机中断系统学习资料_第3页
第3页 / 共54页
微型计算机原理及其应用七章节微型计算机中断系统学习资料_第4页
第4页 / 共54页
微型计算机原理及其应用七章节微型计算机中断系统学习资料_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《微型计算机原理及其应用七章节微型计算机中断系统学习资料》由会员分享,可在线阅读,更多相关《微型计算机原理及其应用七章节微型计算机中断系统学习资料(54页珍藏版)》请在金锄头文库上搜索。

1、1,微型计算机原理及其应用第七章:微型计算机的中断系统,合肥工业大学计算机与信息学院,2,第七章:微型计算机的中断系统,中断的概念及处理过程 8086中断系统 中断控制器8259A,3,第七章:微型计算机的中断系统,中断的概念及处理过程 8086中断系统 中断控制器8259A,4,第七章:微型计算机的中断系统概念及处理过程,什么是中断? 在CPU执行程序的过程中,由于某种突发事件的发生,强迫CPU暂时停止正在执行的程序,转向对该突发事件进行处理,对这个事件处理结束后又能回到原中止的程序,接着中止前的状态继续执行原来的程序,这一个过程就称为中断。把引起中断的原因或触发中断请求的来源称为中断源。,

2、6,第七章:微型计算机的中断系统概念及处理过程,中断优先级 中断优先级 (1)如果有多个不同优先级的中断源同时提出中断请求时,CPU应当先响应最高优先级的中断源。 (2)如果CPU正在对某一中断源服务时,比它优先级更高的中断源提出中断请求时,CPU能够暂停正在执行的中断服务程序转向对优先级高的中断源进行服务,当服务结束后再返回原优先级较低的中断服务程序继续执行。 中断嵌套 正在运行的中断处理程序,被优先级高的中断源中断,从而转入新的中断处理程序,当新的中断处理程序执行完再回到原来的中断处理程序,这一现象称为中断嵌套。,7,第七章:微型计算机的中断系统概念及处理过程,中断优先级 当系统中有多个设

3、备提出中断请求时,就有一个该响应谁的问题,也就是一个优先级的问题,解决优先级的问题一般可有三种方法:软件查询法、简单硬件方法及专用硬件方法。 软件查询方法 只需有简单的硬件电路,如将A、B、C三台设备的中断请求信号“或”后作为系统INTR,这时,A、B、C三台设备中只要至少有一台设备提出中断请求,都可以向CPU发中断请求。进入中断服务子程序后,再用软件查询的方式分别对不同的设备的服务,查询程序的设计思想同查询式,查询的前后顺序就给出了设备的优先级。,8,第七章:微型计算机的中断系统概念及处理过程,中断优先级简单硬件方法 将所有的设备连成一条链,靠近CPU的设备优先级最高,越远的设备优先级别越低

4、,则发出中断响应信号,若级别高的设备发出了中断请求,在它接到中断响应信号的同时,封锁其后的较低级设备使得它们的中断请求不能响应,只有等它的中断服务结束以后才开放,允许为低级的设备服务。,9,第七章:微型计算机的中断系统概念及处理过程,中断优先级专用硬件方法 采用可编程的中断控制器芯片,如Intel8259A。,10,第七章:微型计算机的中断系统概念及处理过程,中断过程 是指中断请求、中断响应、中断处理、中断返回这四个过程。中段请求、中断响应由硬件完成,中断处理、中断返回由软件完成。 中断请求 1)外部设备发中断请求的条件:当外设准备就绪或本身工作已经完成时,才向CPU提出中断请求。 2)外部设

5、备中断请求的标志:当外设要求和CPU进行数据交换时,将中断请求信号送往中断请求触发器或中断控制器,经它们处理后,向CPU发出中断请求。 中断响应 如果CPU处于开中断状态,经判优后响应其中最高优先级的中断请求,关中断,将断点压入堆栈中(有的微机还将程序状态字和相关寄存器的内容压入堆栈)保存,以备返回原程序,紧接着将相应的中断处理程序入口地址或中断向量送CPU,转入中断服务程序。,11,第七章:微型计算机的中断系统概念及处理过程,中断过程 中断处理 保护现场。将在中断处理程序中使用的有关寄存器的内容压入堆栈保护起来。在现场保护的过程中,绝对不允许被中断(应禁止中断),否则现场将被破坏。当现场保护

6、好后应开中断。 中断服务。即该中断所要执行的具体指令内容。 恢复现场。当中断服务结束后,应用中断结束命令清除中断标志,立即关中断,以保证恢复现场的过程不受干扰。恢复现场就是把原来压入堆栈的有关寄存器的内容弹出。现场恢复后应开中断,以便CPU响应更高级的中断请求。 中断返回 将压入的断点地址弹出,保证被中断的程序按原来状态执行下去。,12,第七章:微型计算机的中断系统概念及处理过程,中断过程 中断处理和中断返回中的所有内容,也叫做中断服务程序。即:,13,第七章:微型计算机的中断系统,中断的概念及处理过程 8086中断系统 中断控制器8259A,14,第七章:微型计算机的中断系统8086的中断系

7、统,中断分类及中断类型码 中断源可以分为两大类,即外部(硬件)中断和内部(软件)中断。 硬件中断:即通过外部的硬件产生的中断,如打印机、键盘等。硬件中断又可分为:可屏蔽中断和不可屏蔽中断。 不可屏蔽中断:由NMI引脚引入,它不受中断允许标志的影响,每个系统中仅允许有一个,都是用来处理紧急情况的,如掉电处理。这种中断一旦发生,系统会立即响应。 可屏蔽中断:由INTR引脚引入,它受中断允许标志的影响,也就是说,只有当IF1时,可屏蔽中断才能进入,反之则不允许进入,可屏蔽中断可有多个,一般是通过优先级排队,从多个中断源中选出一个进行处理。 软件中断:即根据某条指令或者对标志寄存器中某个标志的设置而产

8、生,它与硬件电路无关,常见的如除数为0,或用INT n指令产生。,15,第七章:微型计算机的中断系统8086的中断系统,中断分类及中断类型码 8086/8088系统最多可处理256级不同类型的中断。,16,第七章:微型计算机的中断系统8086的中断系统,中断分类及中断类型码,17,第七章:微型计算机的中断系统8086的中断系统,中断分类及中断类型码 中断类型码:8086为每个中断源分配了一个中断类型码,其取值范围为0255,即可处理256种中断。其中包括软件中断,系统占用的中断以及开放给用户使用的中断。 中断类型码或者包含在指令中,或者预先规定; 所有内部中断和NMI中断都不执行INTA总线周

9、期; 除单步中断外,任何内部中断都无法禁止且都比外部中断优先级高;,18,第七章:微型计算机的中断系统8086的中断系统,中断向量和中断向量表 中断向量:把各个中断服务子程序的入口都称为一个中断向量; 中断向量表:将这些中断向量按一定的规律排列成一个表,就是所谓的中断向量表,当中断源发出中断请求时,即可查找该表,找出其中断向量,就可转入相应的中断服务子程序。 向量表地址:中断向量在中断向量表中的位置。 8086中断系统中的中断向量表是位于0段的03FFFH的存贮区内,每个中断向量占四个单元,其中前两个单元存放中断处理子程序的入口地址的偏移量(IP),低位在前,高位在后;后两个单元存放中断处理子

10、程序入口地址的段地址(CS),也是低位在前,高位在后,整个中断向量的排列是按中断类型号进行的。,19,第七章:微型计算机的中断系统8086的中断系统,中断向量和中断向量表,20,第七章:微型计算机的中断系统8086的中断系统,中断向量和中断向量表 00H04H-系统专用 10H1FH-BIOS用 40HFFH-用户用 08H0FH-硬件中断 20H3FH-DOS用,21,第七章:微型计算机的中断系统8086的中断系统,中断响应过程与时序,22,第七章:微型计算机的中断系统8086的中断系统,中断响应过程与时序,23,第七章:微型计算机的中断系统,中断的概念及处理过程 8086中断系统 中断控制

11、器8259A,24,第七章:微型计算机的中断系统中断控制器8059A,8259A性能概述 1. 具有8级中断优先控制,通过级连可以扩展至64级优先权控制; 2. 每一级中断都可以通过初始设置为允许或屏蔽状态; 3. 8259A的工作方式,可以通过编程进行设置,因此,使用非常灵活; 4. 8259A采用NMOS制造工艺,只需要单一的+5V电源。,25,第七章:微型计算机的中断系统中断控制器8059A,8259A的内部结构和工作原理,26,第七章:微型计算机的中断系统中断控制器8059A,8259A的内部结构和工作原理 数据总线缓冲器:它是8259A与系统数据总线的接口,是8位双向三态缓冲器。CP

12、U与8259A之间的控制命令信息、状态信息以及中断类型信息,都是通过该缓冲器传送的。 读/写控制逻辑:CPU通过它实现对8259A的读/写操作。 级连缓冲器:用以实现8259A芯片之间的级连,使得中断源可以由8级扩展至64级。 控制逻辑电路:对整个芯片内部各部件的工作进行协调和控制。 中断请求寄存器IRR:8位,用以分别保存8个中断请求信号,当相应的中断请求输入引脚有中断请求时,该寄存器的相应位置1。 中断屏蔽寄存器IMR:8位,相应位用以对8个中断源的中断请求信号进行屏蔽控制。当其中某位置”0”时,则相应的中断请求可以向CPU提出;否则,相应的中断请求被屏蔽,即不允许向CPU提出中断请求。该

13、寄存器的内容为8259A的操作命令字OCW1,可以由程序设置或改变。 中断服务寄存器ISR: 8位,当CPU正在处理某个中断源的中断请求时,ISR寄存器中的相应位置1。 优先级比较器PR:用以比较正在处理的中断和刚刚进入的中断请求之间的优先级别,以决定是否产生多重中断或中断嵌套。,27,第七章:微型计算机的中断系统中断控制器8059A,8259A的外部引脚,28,第七章:微型计算机的中断系统中断控制器8059A,8259A的外部引脚 D7-D0:双向数据输入/输出引脚,用以与CPU进行信息交换。 IR7-IR0:8级中断请求信号输入引脚。 INT:中断请求信号输出引脚,高电平有效,用以向CPU

14、发中断请求,应接在CPU的INTR输入端。 INTA#:中断响应应答信号输入引脚,低电平有效,接在CPU的中断应答信号输出端。 RD#、WR#:读/写控制信号输入引脚,低电平有效,实现对8259A内部有关寄存器内容的读操作。 CS#:片选信号输入引脚,低电平有效,决定了8259A的端口地址范围。 A0:8259A两组内部寄存器的选择信号输入引脚,决定8259A的端口地址。 CAS2-CAS0:级连信号引脚,当8259A为主片时,为输出;否则为输入,与信号配合,实现芯片的级连,这三个引脚信号的不同组合000111,刚好对应于8个从片。 SP#/EN#:为级连管理信号输入引脚,在非缓冲方式下,若8

15、259A在系统中作从片使用,则SP=1;否则SP=0;在缓冲方式下,用作8259A外部数据总线缓冲器的启动信号。 +5V、GND:电源和接地引脚。,29,第七章:微型计算机的中断系统中断控制器8059A,8259A的工作过程 当有一条或若干条中断请求输入(IR7-IR0)有效时,则使中断请求寄存器的IRR的相应位置位。 若CPU处于开中断状态,则在当前指令执行完之后,响应中断,并且发应答信号(两个连续的INTA#负脉冲)。 第一个INTA#负脉冲到达时,IRR的锁存功能失效,对于IR7-IR0上发来的中断请求信号不予理睬。 使中断服务寄存器ISR的相应位置1,以便为中断优先级比较器的工作做好准

16、备。 使中断请求寄存器的相应位复位,即清除中断请求。 第二个INTA#负脉冲到达时,将中断类型寄存器中的内容ICW2,送到数据总线的D7-D0上,CPU以此作为相应中断的类型码。 若ICW4中的中断结束位为1,那么,第二个INTA#负脉冲结束时,8259A将ISR寄存器的相应位清零。否则,直至中断服务程序执行完毕,才能通过输出操作命令字EOI,使该位复位。,30,第七章:微型计算机的中断系统中断控制器8059A,8259A的工作方式 优先权的管理方式 中断源的屏蔽方式 结束中断处理的方式 系统总线的连接方式 引入中断的请求方式,31,第七章:微型计算机的中断系统中断控制器8059A,8259A的工作方式 优先权的管理方式 中断源的屏蔽方式 结束中断处理的方式 系统总线的连接方式 引入中断的请求方式,32,第七章:微型计算机的中断系统中断控制器8059A,8259A的工作方式优先权的管理方式 1. 全嵌套方式 这是8259

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

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