微机原理中断技术.pptx
《微机原理中断技术.pptx》由会员分享,可在线阅读,更多相关《微机原理中断技术.pptx(47页珍藏版)》请在咨信网上搜索。
1、第7章 输入/输出与中断 7.3 中中 断断 技技 术术 7.3.1 中断的基本概念中断的基本概念 1中断的定义 在CPU执行程序的过程中,出现了某种紧急或异常的事件(中断请求),CPU需暂停正在执行的程序,转去处理该事件(执行中断服务程序),并在处理完毕后返回断点处继续执行被暂停的程序,这一过程称为中断。断点处是指返回主程序时执行的第一条指令的地址。中断过程如图7.10所示。为实现中断功能而设置的硬件电路和与之相应的软件,称为中断系统。第7章 输入/输出与中断 图7.10 中断过程示意图第7章 输入/输出与中断 2中中断源断源 任何能够引发中断的事件都称为中断源,可分为硬件中断源和软件中断源
2、两类。硬件中断源主要包括外设(如键盘、打印机等)、数据通道(如磁盘机、磁带机等)、时钟电路(如定时计数器8253)和故障源(如电源掉电)等;软件中断源主要包括为调试程序设置的中断(如断点、单步执行等)、中断指令(如INT 21H等)以及指令执行过程出错(如除法运算时除数为零)等。第7章 输入/输出与中断 3中断处理过程中断处理过程 对于一个中断源的中断处理过程应包括以下几个步骤,即中断请求、中断响应、保护断点、中断处理和中断返回。1)中断请求 中断请求是中断源向CPU发出的请求中断的要求。软件中断源是在CPU内部由中断指令或程序出错直接引发中断;而硬件中断源必须通过专门的电路将中断请求信号传送
3、给CPU,CPU也有专门的引脚接收中断请求信号。例如,8086/8088 CPU用INTR引脚(可屏蔽中断请求)和NMI引脚(非屏蔽中断请求)接收硬件中断请求信号。一般外设发出的都是可屏蔽中断请求。第7章 输入/输出与中断 图7.11 中断请求与屏蔽接口电路 第7章 输入/输出与中断 当外设准备好一个数据时,便发出选通信号,该信号一方面把数据存入接口的锁存器中,另一方面使中断请求触发器置1。此时,如果中断屏蔽触发器Q端的状态为1,则产生了一个发往CPU的中断请求信号INT。中断屏蔽触发器的状态决定了系统是否允许该接口发出中断请求。可见,要想产生一个中断请求信号,需满足两个条件:一是要由外设将接
4、口中的中断请求触发器置1,二是要由CPU将接口中的中断屏蔽触发器Q端置1。第7章 输入/输出与中断 2)中断响应 CPU在每条指令执行的最后一个时钟周期检测其中断请求输入端,判断有无中断请求,若CPU接收到了中断请求信号,且此时CPU内部的中断允许触发器的状态为1,则CPU在现行指令执行完后,发出INTA信号响应中断。从图7.11中可以看到,一旦进入中断处理,立即清除中断请求信号。这样可以避免一个中断请求被CPU多次响应。图7.12给出了CPU内部产生中断响应信号的逻辑电路。对于8086/8088 CPU可以用开中断(STI)或关中断(CLI)指令来改变中断允许触发器(即IF标志位)的状态。第
5、7章 输入/输出与中断 图7.12 CPU内部设置中断允许触发器 第7章 输入/输出与中断 3)保护断点 CPU一旦响应中断,需要对其正在执行程序的断点信息进行保护,以便在中断处理结束后仍能回到该断点处继续执行。对于8086/8088 CPU,保护断点的过程由硬件自动完成,主要工作是关中断、将标志寄存器内容入栈保存以及将CS和IP内容入栈保存。第7章 输入/输出与中断 4)中断处理 中断处理的过程实际就是CPU执行中断服务程序的过程。用户编写的用于CPU为中断源进行中断处理的程序称为中断服务程序。由于不同中断源在系统中的作用不同,所要完成的功能不同,因此,不同中断源的中断服务程序内容也各不相同
6、。例如,对于图7.11所示的输入设备,其中断服务程序的主要任务是用输入指令(IN)从接口中的数据端口向CPU输入数据。第7章 输入/输出与中断 另外,主程序中有些寄存器的内容在中断前后需保持一致,不能因中断而发生变化,但在中断服务程序中又用到了这些寄存器,为了保证在返回主程序后仍能从断点处继续正确执行,还需要在中断服务程序的开头对这些寄存器内容进行保护(即保护现场),在中断服务程序的末尾恢复这些寄存器的内容(即恢复现场)。保护现场和恢复现场一般用PUSH和POP指令实现,所以要特别注意寄存器内容入栈和出栈的次序。第7章 输入/输出与中断 5)中断返回 执行完中断服务程序,返回到原先被中断的程序
7、,此过程称为中断返回。为了能正确返回到原来程序的断点处,在中断服务程序的最后应专门放置一条中断返回指令(如8086/8088的IRET指令)。中断返回指令的作用实际上是恢复断点,也就是保护断点的逆过程。第7章 输入/输出与中断 7.3.2 中断优先级和中断的嵌套中断优先级和中断的嵌套 1中断优先级 中断请求是随机发生的,当系统具有多个中断源时,有时会同时出现多个中断请求,CPU只能按一定的次序予以响应和处理,这个响应的次序称为中断优先级。对于不同级别的中断请求,一般的处理原则是:(1)不同优先级的多个中断源同时发出中断请求,按优先级由高到低依次处理。第7章 输入/输出与中断 (2)低优先级中断
8、正在处理,出现高优先级请求,应转去处理高优先级请求,服务结束后再返回原优先级较低的中断服务程序继续执行。(3)高优先级中断正在处理,出现低优先级请求,可暂不响应。(4)中断处理时,出现同级别请求,应在当前中断处理结束以后再处理新的请求。第7章 输入/输出与中断 2中断优先级的确定 在微机系统中通常用三种方法来确定中断源的优先级别,即软件查询法、硬件排队电路法和专用中断控制芯片法。本节简要介绍前两种方法,第三种方法将在本章的最后一节作详细介绍。1)软件查询法 软件查询法需要简单的硬件电路支持。以8个中断源为例,其硬件电路如图7.13所示,将8个外设的中断请求组合起来作为一个端口(中断寄存器),并
9、将各个外设的中断请求信号相或,产生一个总的INT信号。第7章 输入/输出与中断 任一个外设有中断请求,该电路都可向CPU发中断请求信号(INT),CPU响应后进入中断处理程序,在中断处理程序的开始先把中断寄存器的内容读入CPU,再对寄存器内容进行逐位查询,查到某位状态为1,表示与该位相连的外设有中断请求,于是转到与其相应的中断服务程序,同时该外设撤消其中断请求信号。软件查询方式的流程图如图7.14所示。第7章 输入/输出与中断 图7.13 软件查询法的硬件电路 第7章 输入/输出与中断 图7.14 软件查询方式的流程图 第7章 输入/输出与中断 对于图7.13所示电路,设中断寄存器端口号为n,
10、则软件查询的程序段如下:IN AL,n TEST AL,80H ;1号外设有请求?JNZ II1;有,转1号中断服务程序 TEST AL,40H ;2号外设有请求?JNZ II2 ;有,转2号中断服务程序第7章 输入/输出与中断 可以看出,采用软件查询方式,各中断源的优先级是由查询顺序决定的,最先查询的设备,其优先级最高,最后查询的设备,其优先级最低。采用软件查询方式的优点是节省硬件。但是,由于CPU每次响应中断时都要对各中断源进行逐一查询,所以其响应速度较慢。对于优先级较低的中断源来说,该缺点更为明显。第7章 输入/输出与中断 2)硬件排队电路硬件排队电路 采用硬件排队电路法,各个外设的优先
11、级与其接口在排队电路中的位置有关。常用的硬件优先权排队电路有链式优先权排队电路、硬件优先级编码加比较器的排队电路等。图7.15给出了一个链式优先级排队电路。第7章 输入/输出与中断 图7.15中,当响应信号沿链式电路进行传递时,最靠近CPU并发出中断请求的接口将首先拦截住响应信号,CPU进入相应外设的中断处理程序,在服务完成后,该外设撤消其中断请求,解除对下一级外设的封锁。例如,当CPU收到中断请求信号并响应中断时,若1号外设有中断请求(高电平),则立即向1号外设接口发出应答信号,同时封锁2号、3号等外设的中断请求,转去对1号外设服务;若1号外设没有中断请求,而2号外设有中断请求时,响应信号便
12、传递给2号外设,向2号外设接口发出应答信号,同时封锁3号外设的中断请求;若CPU在为2号外设进行中断服务时1号外设发出了中断请求,CPU会挂起对2号外设的服务转去对1号外设服务,1号外设处理结束后,再继续为2号外设服务。第7章 输入/输出与中断 图7.15 链式中断优先级电路 第7章 输入/输出与中断 上述两种方法虽然可以解决中断优先级控制问题,但实现起来在硬件和软件上都要做大量的工作,十分麻烦。目前,最方便的办法就是利用厂家提供的可编程中断控制器,这样的器件在各种微机中得到普遍应用。本章后面将介绍广泛应用于80 x86微机系统中的专用可编程中断控制芯片8259A。第7章 输入/输出与中断 3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 中断 技术
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【胜****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【胜****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。