版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章微机的中断系统,7.1中断系统的基本概念,7.1.1中断的基本概念所谓中断是指当中央处理器执行一个程序时,某个外部或内部事件突然发生,并要求中央处理器进行处理。中央处理器暂停当前正在执行的程序,并转而执行处理该事件的服务程序。服务完成后,中央处理器返回原程序被中断的地方继续执行。这个过程叫做中断。1.基本概念,中断源:导致中断的内部或外部事件中断类型号:每个中断源都有一个唯一编号的断点:即将在程序中执行但由于中断而未执行的指令的地址简称为中断断点。包括段地址和偏移地址。中断服务程序:处理中断事件的程序段;2.中断系统是指实现中断功能的一套软件和硬件。它具有以下功能:可以实现中断响应、中断
2、服务和中断返回。可以实现中断优先级排队。可以实现中断嵌套。3、计算机系统的性能,并行处理能力,实现中央处理器和多个外设的同时操作,提高中央处理器的效率。实时处理能力当计算机应用于实时控制时,它能够及时响应外部事件并及时处理故障,而不影响其他程序的运行。多任务在操作系统的调度下运行,多个任务交替运行。(1)中断请求:中断源发出中断请求信号。(2)中断仲裁:优先处理申请中断的中断源的过程称为中断仲裁。(3)中断响应:是从请求有效的时间到传输中断服务程序的入口地址的时间。实现程序的切换。(4)中断服务(处理):中断程序的主体。(5)中断返回:使得中断响应过程中的断点地址和标志寄存器的内容从堆栈中弹出
3、,以便继续执行原始程序。4、中断处理,(1)中断请求,这可能是由内部标志或指令引起的;它也可能由外部电路引起。(2)中断仲裁。当多个中断源同时请求中断时,中央处理器应该根据中断源的优先级顺序响应中断。首先响应高优先级的请求,然后响应低优先级的请求。软件查询优先级排队方法的执行程序按照顺序逐位查询中断请求寄存器的状态,查询顺序决定优先级。硬件优先级区分的菊花链方法串联每个接口,靠近中央处理器的高优先级“矢量”优先级排队电路的优先级由一个特殊的中断控制器管理。(3)中断响应,从中央处理器接收到中断请求到切换执行中断服务程序的过程是中断响应。中央处理器从当前执行的程序切换到中断服务程序,硬件完成一系
4、列中断响应操作,如关闭中断、保存断点、获取中断服务程序的入口地址。(4)中断服务(处理),1保护场景,保护场景的本质:将重要信息推入堆栈。2打开中断目的:打开所有可屏蔽中断以允许高级中断嵌套3执行中断服务例程中断服务例程主体-中断目的。4.中断目的:中断以确保可靠有效的站点恢复。5.恢复现场。还原场景的本质:弹出原来压入堆栈的内容。7.2 8086CPU中断系统,指令中断INTn,异常中断包括:故障异常陷阱,异常终止异常,微处理器中的逻辑中断,irq0irq1irq2: irq15,未屏蔽中断,屏蔽中断外部中断控制器,7.2.1 8086中断分类,1。外部中断,非屏蔽中断常见的非屏蔽中断包括:
5、(1)电源故障;(2)内存检查错误;(3)总线奇偶校验错误等。可屏蔽中断(INTR):含义:软件可以用来控制是否允许外部中断的中断。也就是说,科技创新使中频=1,允许中断;命令行界面使中频=0,中断禁用。常见的INTR中断有:所有外部设备中断,如键盘、内部中断是由8086内部执行程序异常引起的程序中断。通过内部中断,微处理器为用户提供了发现、调试和解决程序执行过程中异常情况的有效途径。例如,只读存储器和操作系统通过使用内部中断为程序员提供各种函数调用,内部中断的中断类型号已经确定,划分错误。如果除数为0或商超出寄存器所表示的范围,则会产生一个矢量数为0的内部中断,称为除法错误中断,例如:mov
6、bl,0 idivbl划分BL0,生成划分错误中断,movax,200h movbl,1 div bl;商200H,不能用AL表示;产生除法错误中断,指令中断,一种在执行中断调用指令INT n时产生的向量数为n(0 255)的内部中断,称为指令中断,其中向量数为3的指令中断是特殊的(产生一个字节的指令代码:11001100),它经常用于程序调试,称为断点中断,例如,运行DEBUG.EXE调试程序的命令g设置的断点。它是通过使用INT 3指令,溢出中断来实现的。当执行溢出中断指令INTO时,如果溢出标志OF为1,则产生一个矢量数为4的内部中断,称为溢出中断,例如:movax,2000h adda
7、x,7000h2000H7000H9000H,溢出:1进;溢出中断和单步中断是由OF1产生的。如果单步中断TF为1,则在执行每条指令后会产生一个矢量编号为1的内部中断,这称为单步中断。例如,DEBUG.EXE调试程序的单步命令T使用单步中断来实现程序的单步调试。3.中断优先级从高到低为:内部中断(单步中断除外)NMI中断INTR中断单步中断。除单步中断外,任何内部中断优先于外部中断。7.2.2中断向量表,含义:中断服务程序入口地址(CS:IP)的组成和格式:共4字节,段地址和偏移地址。段地址,偏移地址,返回,1。中断向量,2。中断向量表,意思是:存储256个中断向量的存储区。也就是说,存储中断
8、服务程序入口地址的存储区称为中断向量表。中断向量表大小:1KB中断向量表地址范围:00000H003FFH。中断向量地址、中断类型号n及其对应的中断向量存储起始地址之间的关系是:起始地址=4n最后一个地址=4n 3意味着中断向量在由4n 4n 3指示的存储单元中。例,在实模式下查找中断服务程序入口地址的方法(例),例假设在实地址模式下存储在存储器00140H至00147H中的数据如右图所示,并为中断51H查找中断服务程序入口地址。解决方案:(1)找到中断向量的第一个地址和最后一个地址。从中断类型号51H,我们可以知道中断向量的第一个地址是51H4=144H(向左移动两位的方法),最后一个地址是
9、51H4 3=147h。(2)从对应于第一个和最后一个地址的四个单元中找出中断向量。也就是说,从00144H到00147H的内容是中断号51h的中断向量可以与中断向量组成和格式进行比较,所以中断服务程序的入口地址是段地址16偏移地址=45400H 3430H=48830H,解决方案,中断向量组成和格式,返回,3,中断向量设置方法一个DOS函数调用(21H)保存中断向量AH=35H AL=中断类型号INT 21H并发送3360BX=中断向量获取原始中断向量,并保存原始中断向量。DOS函数调用(21H)设置中断向量AH=25H AL=中断类型号ds3360dx=中断向量int 21h mov ax
10、,segintr proc mov ds,ax mov dx。中断向量设置方法(1):通过发送类指令直接设置中断向量movax,0moves,axmobx,n * 4movex,offset intr procmovax :bx,ax;偏移地址(n * 4) movax,segintr proc movaes:bx2,ax;段地址(N * 4 2)国际号码: IRET,3。中断向量设置方法(2),7.2.3 8086响应中断,中央处理器响应中断必须满足以下条件:(1)中央处理器接收到中断请求;(2)没有直接存储器存取请求;(3)当前指令的执行结束,(4)如果是INTR中断请求,中央处理器还必须
11、打开一个中断,即中断标志IF=1。满足响应条件后,进入中断响应周期,中断响应操作由硬件自动完成。8086中央处理器对不同类型中断的响应过程略有不同,主要是获取中断类型号的过程不同。它可以屏蔽中断的响应过程。(1)当处理器收到中断申请时,将在处理当前指令后进入响应周期。(2)第二阶段是中断响应周期,在此期间,中央处理器向外部中断控制器发送两个响应脉冲信号INTA。第一个响应脉冲通知中断控制器它已经响应了外部中断请求,并要求中断控制器提供中断类型号。在第二个响应脉冲中,中央处理器获取中断类型号。(3)将标志寄存器的内容压入堆栈保护,然后清除中频和中频标志,以禁止INTR引脚、陷阱和单步中断。(4)
12、按堆栈上的断点地址。断点地址:指中断期间中央处理器要执行的下一条指令对应的逻辑地址。顺序:先按断点地址CS,然后按偏移地址EIP(或IP)。(5)在获得中断类型号n后,中央处理器通过中断类型号和中断服务程序入口地址之间的关系找出与该类型对应的段基址和偏移地址,然后转移到中断服务程序入口地址。完成中断响应任务。7.3中断控制器8259A,I. 8259A主要功能:(1)8位可编程中断控制器,也称为优先级控制器(2)处理8级矢量优先级中断(3)提供中断类型号(4)8259A芯片级联形成一个强大的中断管理系统(多达64级外部中断)。(5)可编程优先级模式(6)多级中断管理、7 . 3 . 1 825
13、9 a的引脚信号、连接到中央处理器的引脚D7D0为8位双向数据线A0:端口选择信号CS:芯片选择信号RD和WR:读/写控制信号INTA:中断响应输入信号INT:中断请求输出信号Pin IRi:8连接到中断源:8中断源中断请求终端级联扩展引脚CAS0 CAS2级联信号SP/EN:从芯片/缓冲区许可控制(1)无缓冲作为输入:sp: 1=主芯片, 0=从芯片(2)缓冲为输出:en: 1中央处理器写入,0中央处理器读取、7.3.2 8259A内部结构,中断请求寄存器IRR,功能:记录外部中断源的中断请求状态。 状态:1。相应的引脚有中断请求,但尚未响应。0.相应的引脚有中断请求或已被响应。寄存器位引脚
14、、中断优先级鉴别器PR和优先级鉴别器PR用于确定存储在与中断so相对应的IRR中的每个中断请求信号的优先级中断服务寄存器ISR,功能:记录外部中断源中断应用的服务状态。状态:1相应引脚的中断请求已被响应(服务),服务尚未结束。0对应引脚的中断请求没有响应。寄存器位引脚,中断屏蔽寄存器IMR,功能:设置外部中断源的中断屏蔽状态。在状态:1,相应引脚的中断被屏蔽。0对应引脚的中断未被屏蔽。请注意,在:中,只有当IMRi的相应位为0且中频=1时,中央处理器才有可能响应可屏蔽中断。寄存器位引脚,数据总线缓冲器,这是一个三态双向8位缓冲器,是8259A和中央处理器系统数据总线之间的接口。数据总线缓冲器的
15、主要功能如下:(1)中央处理器通过数据总线缓冲器向8259A发送命令。(2)中央处理器接收8259A状态信息。(3)在中断响应周期中,中央处理器获得中断类型号。读/写逻辑接收中央处理器发送的读/写控制信号、芯片选择信号和地址选择信号,并读写内部寄存器。级联缓冲器/比较器,用于存储和比较级联主从结构(由两个以上8259A组成的系统)中每个8259A的从设备标识。控制逻辑,控制逻辑是控制8259A所有内部组件的主要逻辑电路。主要功能包括:(1)根据中央处理器为8259A编程的工作模式产生内部控制信号。(2)如果中断请求寄存器IRR有未屏蔽的位,控制逻辑发送一个中断请求信号int给对应于当时最高优先
16、级中断源的中央处理器。(3)接收中央处理器发送的中断响应信号,并允许设置中断服务寄存器ISR的相应位(ISRi)。(4)控制发出相应的中断类型号供中央处理器读取。8259A工作过程,(2)如果发送了中断应用信号,并且中央处理器作出响应,则在中央处理器中断响应周期内发送中断类型号。在中央处理器接收到INTR上的中断应用信号后,如果中频标志为0,则中央处理器不响应中断应用信号,即中断应用被中频屏蔽。如果中频标志为1,处理当前指令后,进入中断响应周期:通过INTA引脚发出两个负脉冲信号,从数据总线获得中断类型号,进入中断响应过程。8259A中断响应周期、Cas0cas2、D0D7、SP/EN,在第二个周期中,T1 T2 T3 T4、8259A、LOCK、2。在什么情况下ISR=FFH?3.FFH,计算机系统会发生什么?4.内部收益率=0ah和内部收益率=0ah可能吗?参考答案:1。所有八个中断源都有请求,但没有一个得到中央处理器的响应。2.从最低优先级到最高优先级进入中断服务程序,但没有一个程序完成中断处理。(8级中断嵌套)3。系统将瘫痪(禁止所有硬件中断)。4.ISR=0AH可能表示对应于IR1和IR3的中断请求已被响应,但尚未完成。此时,IR1和IR3已重新应用,但尚未响应。7.3.3工作模式、优先模式、中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 彩灯广告屏plc控制课程设计
- 2026年堂吉诃德名著测试题及答案
- 《数学实验答题规范指南|踩分点全梳理》
- 五年级语文上册借物喻人课|托物言志
- (新)文言实词试题含答案
- 《化学实验答题规范指南|踩分点全梳理》
- 野生植物救护工岗前安全演练考核试卷含答案
- 碳二饱和气体回收装置操作工操作技能竞赛考核试卷含答案
- 金属材涂层机组操作工岗前风险评估与管理考核试卷含答案
- 压缩机装配调试工操作规程模拟考核试卷含答案
- 2026年产品经理考试题库含答案详解
- 中国航天科技集团校招面笔试题及答案
- 2025年杭州市西湖区社区工作人员(网格员)考试题库真题及答案
- 审计人员轮岗制度
- 2026年消防员职业技能鉴定题库灭火战术与操作规程
- 2026年国开电大古代诗歌散文专题形考题库200道附答案(夺分金卷)
- 物业管理服务操作手册
- 2026年燃气供应公司客户信息保密管理制度
- 交通安全教育培训课件模板
- 头疗销售实战话术
- 加油站安全隐患排查奖惩制度
评论
0/150
提交评论