中断与中断管理修改.ppt
《中断与中断管理修改.ppt》由会员分享,可在线阅读,更多相关《中断与中断管理修改.ppt(79页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机原理及应用第第9 9章章 中断与中断管理中断与中断管理刘璐玲刘璐玲第第9 9章章 中断与中断管理中断与中断管理v中断原理中断原理v中断系统组成及其功能中断系统组成及其功能v中断源识别及中断优先权中断源识别及中断优先权v80868086中断系统中断系统v8086CPU8086CPU的中断管理的中断管理v可编程中断管理芯片可编程中断管理芯片8259A8259AvIBM PCIBM PC硬件中断硬件中断1.熟熟悉悉8088/8086的的中中断断类类型型、中中断断响响应应过过程程、中中断向量表断向量表2.掌握内部中断服务程序的编写掌握内部中断服务程序的编写3.理解理解8259A的内部结构、寄存器作
2、用、中断过程的内部结构、寄存器作用、中断过程4.掌掌握握8259A的的普普通通全全嵌嵌套套优优先先权权、普普通通中中断断结结束束、边沿触发方式边沿触发方式5.了了解解的的8259A的的ICW和和OCW,注注意意命命令令字字和和状状态态字的区别方法字的区别方法6.了解了解8259A在在IBM PC系列机上的应用情况系列机上的应用情况7.掌握外部中断服务程序的编写掌握外部中断服务程序的编写【学习目的】【学习目的】v 8088 CPU的中断系统的中断系统v 中断服务程序的编写中断服务程序的编写v 中断控制器中断控制器8259A的作用的作用【学习重点】【学习重点】【难点】【难点】v1.中断向量表的填写
3、 v2.8259A的ICW和OCW的使用v3.初始化编程概述 当当CPUCPU用查询的方式与外设交换信息时,用查询的方式与外设交换信息时,CPUCPU就要浪费很多时间去等待外设。这样就引就要浪费很多时间去等待外设。这样就引出一个出一个快速的快速的CPUCPU与与慢速的外设慢速的外设之间数据传送之间数据传送的矛盾,这也是计算机在发展过程中遇到的的矛盾,这也是计算机在发展过程中遇到的严重问题之一。为解决这个问题,一方面要严重问题之一。为解决这个问题,一方面要提高外设的工作速度,另一方面发展了中断提高外设的工作速度,另一方面发展了中断概念。中断系统是计算机的重要指标之一。概念。中断系统是计算机的重要
4、指标之一。9 91 1 中断原理中断原理 一、从无条件传送、条件传送到中断传送一、从无条件传送、条件传送到中断传送条件传送最大的缺点就是为了条件传送最大的缺点就是为了CPUCPU和外设在时间和外设在时间上配合正确,上配合正确,CPUCPU花大量的时间用无条件方式对状态花大量的时间用无条件方式对状态线进行查询,从而降低了整个系统的工作效率。线进行查询,从而降低了整个系统的工作效率。具有中断功能的具有中断功能的CPUCPU中,有一个中,有一个硬件部件硬件部件专门用专门用于检测外设的状态线。于检测外设的状态线。检测状态信号检测状态信号状态信号有效?状态信号有效?外设处理外设处理外设处理外设处理检测状
5、态信号检测状态信号主主程程序序条件条件传输(程序检测状态传输(程序检测状态信号)信号)中断中断传输(传输(CPU硬件检测状态硬件检测状态信号)信号)二、中断概念二、中断概念 在中断传送方式下,外设应有请求在中断传送方式下,外设应有请求CPUCPU服务的权服务的权利,当外部设备准备好向利,当外部设备准备好向CPUCPU传送数据,或者外设传送数据,或者外设已准备就绪接收已准备就绪接收CPUCPU的数据,或者有某些紧急情况的数据,或者有某些紧急情况要求处理,或者是定时时间到等等。这时,外设要求处理,或者是定时时间到等等。这时,外设向向CPUCPU发出发出中断请求中断请求,CPUCPU接收到请求并在一
6、定条接收到请求并在一定条件下,件下,暂时停止执行原来的程序暂时停止执行原来的程序而转去中断处理,而转去中断处理,处理好中断服务再返回来执行原来程序,这就是处理好中断服务再返回来执行原来程序,这就是一个中断概念。一个中断概念。处理文档处理文档电话铃响电话铃响暂停文档暂停文档文档中作暂停记号文档中作暂停记号电话交谈电话交谈找出暂停记号位置找出暂停记号位置继续处理文档继续处理文档执行主程序执行主程序(日常事务程序日常事务程序)中断申请信号有效中断申请信号有效(中断请求中断请求)暂停执行主程序暂停执行主程序响应中断响应中断当前当前PC及寄存器入栈(及寄存器入栈(保护现场保护现场)处理外设要求处理外设要
7、求(中断服务中断服务)寄存器及寄存器及PC出栈出栈(恢复现场及中断返回恢复现场及中断返回)继续执行主程序继续执行主程序中断举例中断举例中断过程中断过程三、中断应用三、中断应用1 1、实时故障处理实时故障处理存储器出错检测电路存储器出错检测电路 存储器存储器奇偶检测电路奇偶检测电路奇偶奇偶位位中断请求信号中断请求信号存储器出错检测电路存储器出错检测电路2 2、分时操作,同时处理分时操作,同时处理 有了中断功能,有了中断功能,CPUCPU可命令多个外设同时工作。可命令多个外设同时工作。虽然虽然CPUCPU在不同的时间点上为不同的任务工作,在不同的时间点上为不同的任务工作,但宏观上看但宏观上看CPU
8、CPU几乎同时为不同的任务工作,极几乎同时为不同的任务工作,极大地发挥了大地发挥了CPUCPU高速性的特点。高速性的特点。9 92 2 中断系统组成及其功能中断系统组成及其功能 一、一、三个与中断有关的触发器三个与中断有关的触发器 1 1、中断请求中断请求触发器触发器 有两个特点:有两个特点:(1 1)它的输出可以作为中断请求信号,)它的输出可以作为中断请求信号,在满足一定条件的情况下把信号发送给在满足一定条件的情况下把信号发送给CPUCPU,并在,并在CPUCPU未响应时一直保存下去;未响应时一直保存下去;(2 2)当)当CPUCPU满足一定条件下响应了该中断满足一定条件下响应了该中断请求信
9、号,执行了相关的操作后,该中请求信号,执行了相关的操作后,该中断请求信号可以被撤除。断请求信号可以被撤除。D QD QR RD D状态线状态线中断请求中断请求外设读、写操作外设读、写操作 CLK CLK+5V+5V中断源:中断源:引起中断的原因或能发出中断申请的来源。引起中断的原因或能发出中断申请的来源。(1 1)一般的输入输出设备)一般的输入输出设备键盘,打印机,鼠标等。键盘,打印机,鼠标等。(2 2)数据通道中断源)数据通道中断源软盘,硬盘等。软盘,硬盘等。(3 3)实时时钟)实时时钟用外部时钟定时发出中断信号,由用外部时钟定时发出中断信号,由CPUCPU进行进行处理。处理。(4 4)故障
10、源)故障源(a)外设故障)外设故障电源掉电,运行超限等。电源掉电,运行超限等。(b)计算机故障)计算机故障内存出错,输入输出出错等。内存出错,输入输出出错等。(5 5)测试程序时设置的中断源)测试程序时设置的中断源硬件断点:硬件调试器硬件断点:硬件调试器软件断点:软件断点:INT 03HINT 03H调试程序应支持单步运行和断点运行调试程序应支持单步运行和断点运行2 2、中断屏蔽中断屏蔽触发器触发器 中断屏蔽触发器的功能就是决定中断请求触发器的输出中断屏蔽触发器的功能就是决定中断请求触发器的输出信号是否可以作为中断请求信号发送给信号是否可以作为中断请求信号发送给CPUCPU,这样,这样CPUC
11、PU通过通过对中断屏蔽触发器的设置就可以达到对中断源的控制。对中断屏蔽触发器的设置就可以达到对中断源的控制。中断屏蔽触发器的作用中断屏蔽触发器的作用中断屏蔽触发器的作用中断屏蔽触发器的作用3 3、CPU内部的内部的中断允许中断允许触发器触发器CPU通过对它进行设置来决定是否对发给它的中断请通过对它进行设置来决定是否对发给它的中断请求信号进行响应。求信号进行响应。有些有些CPU,比如,比如8086CPU,设置了两种中断类型,设置了两种中断类型可屏可屏蔽中断和不可屏蔽中断蔽中断和不可屏蔽中断。可屏蔽中断受中断允许触发器控。可屏蔽中断受中断允许触发器控制,只有当制,只有当IF为为1时,时,CPU才能
12、响应中断请求信号。而不才能响应中断请求信号。而不可屏蔽中断不受中断允许触发器的控制,只要中断请求信可屏蔽中断不受中断允许触发器的控制,只要中断请求信号有效,不管号有效,不管IF是否为是否为1,CPU就必须响应。因此不可屏就必须响应。因此不可屏蔽中断的中断优先级要大于可屏蔽中断的中断优先级。蔽中断的中断优先级要大于可屏蔽中断的中断优先级。二、二、再谈中断条件再谈中断条件 外设的中断请求信号要想发给外设的中断请求信号要想发给CPU并能最终得到并能最终得到CPU的响应,必须要满足如下两个条件:的响应,必须要满足如下两个条件:一个是中断屏蔽触发器处于一个是中断屏蔽触发器处于非屏蔽状态非屏蔽状态。在这种
13、。在这种情况下,中断请求信号才能发给情况下,中断请求信号才能发给CPU。但。但CPU是否是否响应这个中断,还要看中断允许触发器是否处于响应这个中断,还要看中断允许触发器是否处于开开中断状态中断状态。只有。只有CPU是开中断的条件下,是开中断的条件下,CPU才能才能进入中断响应过程,处理中断事务。这就是第二个进入中断响应过程,处理中断事务。这就是第二个条件。条件。9 93 3 中断响应过程中断响应过程中断过程主要包括三个方面:中断过程主要包括三个方面:外设发中断请求信号给外设发中断请求信号给CPU即即中断请求中断请求;CPU对中断请求信号所作出反应即对中断请求信号所作出反应即中断响应中断响应;C
14、PU执行对外设操作的子程序即执行对外设操作的子程序即中断处理中断处理。一、中断申请一、中断申请 设置中断请求触发器有效,当中断屏蔽触发器设置中断请求触发器有效,当中断屏蔽触发器状态为状态为1,则中断请求触发器输出的中断请求信号,则中断请求触发器输出的中断请求信号发给发给CPU。二、中断响应二、中断响应CPU响应响应可屏蔽中断可屏蔽中断申请必须满足申请必须满足3个条件个条件:无总线请求;无总线请求;CPU被允许中断;被允许中断;CPU执行完现行指令。执行完现行指令。三、中断处理三、中断处理 CPU响应中断后要自动完成三项任务:响应中断后要自动完成三项任务:1、关闭中断关闭中断;2、CS、IP以及
15、以及FR的内容推入堆栈;的内容推入堆栈;3、中断服务程序段地址送入、中断服务程序段地址送入CS中,偏移地址送中,偏移地址送入入IP中。中。一旦一旦CPU响应中断,就可转入中断服务程序之响应中断,就可转入中断服务程序之中。中。中断服务程序的结构如下:中断服务程序的结构如下:push ax;保护现场;保护现场push bxsti;开中断;开中断;中断处理;中断处理cli;关中断;关中断pop bx;恢复现场;恢复现场pop axsti;开中断;开中断reti;中断返回;中断返回 四、中断源识别及中断优先权四、中断源识别及中断优先权 在在中中断断系系统统中中一一个个非非常常关关键键的的问问题题是是C
16、PU如如何何知知道道是是哪哪一一个个中中断断源源发发出出的的中中断断申申请请信信号号。只只有有正正确确地地确确定定中中断断源源,CPU才才能能转转到到相应的中断服务程序为之服务。相应的中断服务程序为之服务。这这里里,确确定定中中断断源源的的方方法法被被称称为为中中断断源源识识别或中断方式别或中断方式。1 1、中断源识别中断源识别 包括两个方面:包括两个方面:其一,确定中断源;其一,确定中断源;其二,找到该中断服务程序的首地址。其二,找到该中断服务程序的首地址。下面我们给出解决问题的两种方案。下面我们给出解决问题的两种方案。(1)查询中断)查询中断IN AL,IPORT;从输入接口取中断信息;从
17、输入接口取中断信息TEST AL,80H;是;是0号设备请求吗号设备请求吗?JNZ SEVO ;是,转是,转0号设备服务程序号设备服务程序TEST AL,40H;否,是;否,是1号设备请求吗号设备请求吗?JNZ SEVl;是,转是,转1号设备服务程序号设备服务程序TEST AL,20H;否,是;否,是2号设备请求吗号设备请求吗?JNZ SEV2;是,转是,转2号设备服务程序号设备服务程序TEST AL,10H;否,是;否,是3号设备请求吗号设备请求吗?JNZ SEV3;是,转是,转3号设备服务程序号设备服务程序(2 2)矢量中断)矢量中断 中断申请信号和中断响应信中断申请信号和中断响应信号是一
18、对握手信号。在驱动一个号是一对握手信号。在驱动一个中断事件过程中,中断请求信号中断事件过程中,中断请求信号是外设发给是外设发给CPU的,当其有效的,当其有效时,表示外设请求时,表示外设请求CPU为之服务。为之服务。而中断响应信号是而中断响应信号是CPU发给外设发给外设的,当其有效时,表明的,当其有效时,表明CPU可以可以为这个外设服务,同时要求外设为这个外设服务,同时要求外设提供中断类型号。提供中断类型号。2 2、中断优先权中断优先权(1 1)软件方案)软件方案 查询方法优点查询方法优点:1、查询次序即是、查询次序即是优先权次序。优先权次序。2 2、省硬件,不需、省硬件,不需要硬件排队电路。要
19、硬件排队电路。缺点缺点:转至服务程序转至服务程序入口时间长。入口时间长。软件查询确定优先权的软件查询确定优先权的软件查询确定优先权的软件查询确定优先权的缺点缺点缺点缺点响应中断慢。响应中断慢。响应中断慢。响应中断慢。(2 2)硬件方案)硬件方案v链形电路链形电路这种方法是利用外设在系统中的物理位置来决定其这种方法是利用外设在系统中的物理位置来决定其中断优先权的。中断优先权的。链式优先权排队电路(如图所示)链式优先权排队电路(如图所示)v编码电路编码电路 74LSl48 74LSl48是一个是一个8 8到到3 3线的优先权编码器,线的优先权编码器,它是一个它是一个1616个管脚双列直插式个管脚双
20、列直插式TTLTTL器件。器件。9 94 80864 8086中断系统中断系统 一、一、80868086的中断源的中断源 80868086中断系统有两大类型的中断源,一类是由外部设备产中断系统有两大类型的中断源,一类是由外部设备产生的中断,我们称之为生的中断,我们称之为硬件中断硬件中断,硬件中断有时又称外中断。,硬件中断有时又称外中断。另一类是由指令在某种运行结果时产生的中断,我们称之为另一类是由指令在某种运行结果时产生的中断,我们称之为软软件中断件中断。另外对于硬件中断,又分为。另外对于硬件中断,又分为不可屏蔽中断和可屏蔽中不可屏蔽中断和可屏蔽中断断,硬件中断是通过,硬件中断是通过CPUCP
21、U芯片的芯片的INTRINTR管脚或管脚或NMINMI管脚从外部引入管脚从外部引入的。的。INT 3INT 3指令指令INTOINTO指令指令INT 4INT 4断点断点单步单步中断中断INT 1INT 1除数除数为为0 0INT 0INT 0INT n INT n 指令指令中中 断断 逻逻 辑辑NMINMIINTRINTR非屏蔽中断非屏蔽中断可屏蔽中断可屏蔽中断外设提供外设提供中断号中断号INT 2INT 2中断服务子程序的调用通过中断类型号来完成。中断服务子程序的调用通过中断类型号来完成。中断服务子程序的调用通过中断类型号来完成。中断服务子程序的调用通过中断类型号来完成。中断类型号和中断服
22、务子程序的入口地址之间的关系:中断类型号和中断服务子程序的入口地址之间的关系:中断类型号和中断服务子程序的入口地址之间的关系:中断类型号和中断服务子程序的入口地址之间的关系:二、不可屏蔽中断二、不可屏蔽中断所谓不可屏蔽中断就是用户不能通过所谓不可屏蔽中断就是用户不能通过CPU内的中内的中断允许触发器断允许触发器IF控制的中断,由控制的中断,由8086CPU的的NMI管脚管脚引入。引入。NMI中断请求采用中断请求采用上升沿触发上升沿触发方式,这种中断方式,这种中断一旦产生,在一旦产生,在CPU内部直接生成内部直接生成中断类型号中断类型号02。不可屏蔽中断一般用于非常事件。不可屏蔽中断一般用于非常
23、事件。例如:例如:q电源掉电前的数据保护电源掉电前的数据保护q存储器读写错误的处理存储器读写错误的处理三、三、可屏蔽中断可屏蔽中断 可可屏屏蔽蔽中中断断就就是是用用户户可可以以控控制制的的中中断断,其其途途径径是是通通过过对对CPU内内的的中中断断允允许许触触发发器器IF的的设设置置来来禁禁止止和和允允许许CPU响响应应中中断断。可可屏屏蔽蔽中中断断由由8086CPU的的INTR管管脚脚引引入入。这这种种中中断断请请求求需需要要设设备备提提供供中中断断类类型型号号,CPU响响应应中中断断后后,取取中中断断类类型型号号的的4倍倍作作为为中中断断服服务务入入口口地地址址表表的的地地址址,通通过过查
24、查表表得得到到相相应应的的中中断断服服务务程序首地址,转去执行相应的中断服务程序。程序首地址,转去执行相应的中断服务程序。四、四、80868086中断系统中断系统1 1、软件中断、软件中断 软软件件中中断断是是由由中中断断指指令令引引起起的的。中中断断指指令令的的指指令令格格式式为为 INT INT n n,操操作作数数n n就就是是中中断断类类型型号号。当当CPUCPU执执行行完完毕毕中中断断指指令令INT INT n n后后,就就会会立立即即产产生生一一个中断类型号为个中断类型号为n的中断。的中断。(1)(1)除法中断除法中断 当进行除法运算时,若除数为当进行除法运算时,若除数为0 0或除
25、数太小,或除数太小,使得商数大于相应寄存器所能表示的最大值,被使得商数大于相应寄存器所能表示的最大值,被称作除法出错。这时除法指令就相当于一个中断称作除法出错。这时除法指令就相当于一个中断源,它向源,它向CPUCPU发出类型发出类型0 0中断。中断。(2)(2)溢出中断溢出中断 当算术运算产生溢出时,将在当算术运算产生溢出时,将在INTOINTO指令控制下向指令控制下向CPUCPU发出类型发出类型4 4的中断,即溢出中断。的中断,即溢出中断。(3)(3)单步中断和断点中断单步中断和断点中断v单步中断单步中断 当当8086CPU8086CPU的标志寄存器中的的标志寄存器中的TFTF标志为标志为1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 管理 修改
限制150内