- 1、本文档共86页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 中断系统 中断的基本概念 8086/8088的中断系统 可编程中断控制器8259A 8259A在微机系统中的应用 第一节 中断的基本概念 一 CPU与外设之间的数据传送控制方式(即I/O控制方式),通常有以下三种: 程序控制方式 中断方式 DMA方式(Direct Memory Access) 程序控制方式:是在CPU的控制下,通过执行程序指令进行的数据传送方式。又分为“无条件传送”和“程序查询传送”两种方式。 程序控制方式 无条件传送方式:是在假定外围设备(Peripheral Device)已经准备好的情况下,直接利用输入/输出指令(IN指令,OUT指令)与外围设备传送数据,而不去检测外设的工作状态。 优点:控制程序简单 缺点:数据传送不可靠 程序查询方式(也称“条件传送”方式) 主要特点:CPU通过执行程序不断读取并检测外设的状态,只有在外设确实已准备就绪的情况下,才进行数据传送;否则,还要继续不断地查询外设的状态。 程序控制方式 查询式输入、输出程序流程图 程序控制方式 程序查询传送方式比无条件传送方式要准确可靠,但在此种方式下,CPU要不断查询外设的状态,占用了大量CPU时间,而真正用于数据传送的时间却很少,即CPU的工作效率很低;另外,采用这种方式,也很难满足实时系统对I/O处理的要求。因此,出现了中断控制方式。 二 中断方式 中断定义:在程序运行中,出现了某种紧急事件,CPU必须中止现行程序,转去处理此紧急事件(执行中断服务程序),并在处理完毕后再返回运行程序的过程。 中断的全过程及有关概念: 一个完整的中断过程包括: 中断请求; 中断判优; 中断响应; 中断处理; 中断返回. 二 中断方式 中断请求是指中断源(引起中断的事件或设备)向CPU发出的请求中断的要求; 中断判优当有多个中断源发出中断请求时,需要通过适当的办法(软件的;硬件的;软、硬件结合的)决定究竟先处理哪个中断请求,这就是“中断判优”; 中断响应是指CPU中止现行程序转至中断服务程序的过程; 中断处理就是指CPU执行中断服务程序; 执行完中断服务程序后,返回到原先被中断的程序称为“中断返回”。 为了能正确返回到原来程序被中断的地方(也称断点-即主程序中当前指令下面一条指令的地址),在中断服务程序的最后应专门放置一条中断返回指令。 另外,为了使主程序在返回后仍能从断点处继续执行,还需要在中断服务程序的开头-保护现场(通过PUSH指令实现),在中断服务程序的末尾-恢复现场(通过POP指令实现)。 三 中断响应和处理过程 对于不同的中断类型(如可屏蔽中断、不可屏蔽中断;外部中断、内部中断…),处理器(CPU)进行响应和处理的具体过程并不完全相同;另外,就是对同一种中断类型(如可屏蔽中断),不同的处理器(如Z80,80X86)进行响应和处理的过程也不尽相同。 三 中断响应和处理过程 中断一般由硬件(处理器内部)和软件(由程序设计者编写的中断服务程序)共同完成,即整个中断响应和处理过程是由CPU内部的有关硬件和中断处理软件密切配合完成的。 针对一个具体的系统(机型),中断服务程序设计者应该清楚在中断响应时,“硬件”完成了哪些操作(如FR是否已被压入堆栈),还需要“软件”(中断服务程序)完成哪些操作。 四 中断优先级和中断嵌套 1.中断优先级(Priority)的解决方法 系统中多个中断请求可能同时出现,CPU只能按一定的次序(优先级策略)予以响应和处理,这个响应的次序称为中断优先级。一般的方法有: 软件查询法(需要少量硬件) 菊花链(daisy chain)优先级排队电路 可编程中断控制器(如8259) (1)软件查询法 把各个外设的中断请求信号“相或”,产生一个总的INT信号 当CPU响应中断后,进入中断处理程序,在中断处理程序的开始部分安排一段带有优先级的查询程序。 优点:省硬件 缺点:中断响应慢 (2)菊花链优先级排队电路 * (2)菊花链优先级排队电路 五 中断嵌套 通常,正在执行较低级的中断服务程序时,可以响应较高级的中断请求,而将正在处理的中断暂时挂起,称为中断嵌套。 第二节 8086/8088的中断系统 一.中断的分类:在8086/8088系统中,可将中断分为两大类(如表5.1表5.2所示): 第一类:硬件中断:是由外部的中断请求信号启动的中断,也称为外部中断。又可分为: 非屏蔽中断NMI:整个系统只有一个,不受IF屏蔽 可屏蔽中断INTR:受IF屏蔽,在中断控制器8259的统一管理下,可屏蔽中断有几个至几十个。 中断的分类 (注意,这里的IF是CPU内部的标志寄存器的IF位,IF=0,则对所有从INTR引脚进入的中断请求均不予响应(“总开关”);另外,也可以在CPU外部的中断控制器(8259)中以及各个I/O接口电路(如
文档评论(0)