微机系统原理及接口技术应用.ppt

上传人:小飞机 文档编号:6572863 上传时间:2023-11-13 格式:PPT 页数:50 大小:368KB
返回 下载 相关 举报
微机系统原理及接口技术应用.ppt_第1页
第1页 / 共50页
微机系统原理及接口技术应用.ppt_第2页
第2页 / 共50页
微机系统原理及接口技术应用.ppt_第3页
第3页 / 共50页
微机系统原理及接口技术应用.ppt_第4页
第4页 / 共50页
微机系统原理及接口技术应用.ppt_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《微机系统原理及接口技术应用.ppt》由会员分享,可在线阅读,更多相关《微机系统原理及接口技术应用.ppt(50页珍藏版)》请在三一办公上搜索。

1、第七章 中 断,6学时7.1 中断概述7.2 8086的中断系统7.3 80X86系列高档微处理器的中断系统(了解)7.4 80X86系列微机的硬中断控制逻辑,7.1中断概述,中断”,是指CPU在执行正常程序时,为处理一些紧急发生的情况,暂时中止当前程序,转而对该紧急事件进行处理,并在处理完后返回正常程序的过程。,CPU执行流程,中断系统,中断系统是微机中实现中断功能的各种软、硬件的总称。中断系统一般包括CPU内部相应的中断逻辑、接口中的中断控制电路及各类中断服务子程序,中断系统相关概念,可屏蔽中断(INTR)不可屏蔽中断(NMI),外部中断(硬件中断)内部中断(软件中断),(执行指令所引起的

2、),中断源:引起中断的原因,或能够发出中断请求信号的外设中断类型号:处理器对各类中断的中断源进行的统一编号N,N的取值范围是0255,、MOV AH,01INT 21HCMP AL,0Dh、PUSH AX、IRET,软件中断,中断系统相关概念,中断向量:中断向量即中断服务子程序的入口地址,也就是中断服务子程序的第一条指令在存储器中的存放地址。中断优先级:在系统中多个中断源可能同时提出中断请求时,需要按中断的轻重缓急给每个中断源指定一个优先级别,这就是中断优先级。,中断系统相关概念,断点:是指CPU执行的现行程序被中断时的下一条指令的地址,又称断点地址。,中断现场:是指CPU转去执行中断服务程序

3、前的运行状态,包括CPU内部各寄存器、断点地址等。,中断嵌套:当CPU正在进行某一级别中断源的中断处理时,若有更高级别的新中断源发出请求,且新中断源满足响应条件,则CPU应中止当前的中断服务程序,保护此程序的断点和现场,转而响应高级中断。这种多级(重)中断的处理方式称为“嵌套”。,、MOV AX,0ADD AX,DXMOV DI,AX、PUSH AX、IRET,地址1000:150H为断点,断点概念,中断系统相关概念,中断屏蔽:在某些情况下,CPU可能不对中断请求信号作出响应或处理,这就是中断屏蔽。中断屏蔽标志系统在处理优先级别较高的中断请求时,不会理睬后来的级别较低的中断请求。,中断处理过程

4、,中断检测 CPU内部硬件自动完成 中断响应CPU内部硬件自动完成 中断服务 中断服务是根据用户自行编制的指令顺序完成各项操作的。,程序中断与子程序调用的区别,子程序的执行是程序员事先安排好的(由调用子程序的指令转入);中断服务子程序的执行一般由随机的中断事件引发。子程序的执行受到主程序或上层子程序的控制;中断服务子程序一般与被中断的现行程序无关。不存在同时调用多个子程序的情况,因此子程序不需要进行优先级排队;而不同中断源则可能同时向CPU提出服务请求。,中断系统的功能,一、实现中断及返回中断源发出中断请求,CPU决定是否响应,若响应,则保护断点和现场,转入相应中断服务程序,中断服务结束后,恢

5、复现场和断点,继续执行原程序。,非预料事件是指事件发生的时间无法预知,即中断源何时产生中断不确定,是随机的。,中断源产生中断的随机性,使中断服务程序的执行也具有随机性,即何时执行中断服务程序不是在程序中安排好的。,中断系统的功能,二、能实现优先权排队按各中断请求的重要程度排列CPU响应的次序称为中断优先级。即同时有多个中断请求到来时,CPU会首先响应和处理优先级别最高的中断请求。中断优先级的实现可以用软件或硬件的办法。,中断系统的功能,三、高级中断源能中断低级的中断处理当CPU正在处理某个中断时,如果外部又有一个优先级别比本优先级别更高的中断请求,则可以实现中断嵌套。,中断嵌套过程示意图,中断

6、嵌套必须具备的几个条件,1)第一级中断(已处于响应状态的原中断)的服务程序中,应在保护现场执行完毕后加上开放总中断(IF位置1)的指令;2)新到来的中断应具有比原中断高的优先级,同级或低级均不能嵌套;3)为保护各级中断服务程序的数据不被破坏,所有服务程序中均应有保护现场、恢复现场的指令;4)每个中断服务程序末尾必须有IRET指令以示结束,从而返回被中断的程序地址处,CPU响应外中断的条件,1具备中断请求触发器2具备中断屏蔽触发器3开放总中断4在现行指令结束后响应中断,7.2 8086的中断系统,8086的中断源(8086微型机有两类中断):1、可屏蔽硬件中断INTR、不可屏蔽硬件中断NMI、2

7、、软件中断(包括自动产生中断)。各类中断源如图所示。,根据8086内部的中断逻辑电路,各种中断源的优先权顺序为:被0除中断软件中断INTO NMI INTR 单步中断。,CPU内的中断逻辑,中断类型码,一、中断类型码:8086可以处理256个中断请求。每个中断请求均对应于唯一固定的类型码。被0除类型码是0,单步为1;NMI为2;断点中断为3,溢出中断为4;等。,IBM-PC/XT中断类型号的功能分配,中断向量和中断向量表,二、中断向量:中断服务程序的入口地址,包括段地址(存放于高字单元)和偏移地址(存放于低字单元)。三、中断向量表:存放中断向量的表格。位于内存空间的最低地址(000H-3FFH

8、),长度1KB,可容纳256类中断向量(25641024)。,中断向量和中断向量表,中断响应与处理,中断类型码的获取NMI、断点中断、溢出中断、被0除、单步中断等类型码固定。INT N软中断类型码由立即数N给出。外部中断读取中断类型码。获得中断类型码后,如何进入中断服务程序?1、中断类型码乘以4,得中断向量表的向量首址指针。2、取中断向量:把向量表指针所指的4个连续字节的内容作为中断服务程序的入口地址,分别送给IP和CS。3、按新的CS:IP指针执行中断服务程序。,(FLAG),0150,1000,中断响应过程,中断响应周期时序,CPU从引脚/INTA 发中断响应信号,接口芯片接收此信号,把中

9、断类型号准备好;同时ISRi=1,IRRi=0。CPU再从引脚/INTA 发中断响应信号,接口芯片接此信号后,将中断类型号送至数据总线上;CPU从数据总线获取中断类型号。,8086的中断过程,8086系统中有关INTR中断的处理(外部中断源的管理),多个外部硬件中断源共用一条INTR线时,要在程序中采取一定措施或用外部硬件解决中断源的优先权排列和多级中断的嵌套等。中断优先权(优先级):中断优先权就是为每个中断源所确定的响应级别。软件排序:CPU响应中断后,在程序中用查询的方法判定外设的中断请求。,外部中断源的管理,INTR中断接口电路1、中断请求触发器2、中断屏蔽触发器 3、数据缓冲器 4、端

10、口地址译码电路,外部中断源的管理,软件查询排序的特点是:查询次序即优先权排序,最先被询问的故障具有最高优先级;节省硬件;修改方便,只要改变程序中的查询次序即可;由询问转至真正的服务程序入口时间长,在中断源较多的情况下执行速度较慢。硬件排序:采用优先权的编码电路,对各种外部硬中断进行排队。还有菊花链式硬件排序电路,以及中断控制集成芯片8259A,软件法排序的接口电路示意图,软件查询程序流程图,软件法排序程序,IN AL,20H;读中断触发器的状态TEST AL,80H;有电源故障请求?JZ B1;没有,继续查询JMP PWF;转至电源故障程序入口B1:TEST AL,40H;有磁盘请求吗?JZ

11、B2;无,继续查询JMP DISS;转至磁盘服务程序B2:TEST AL,20H;有磁带请求吗?JZ B3;无,继续查询JMP MT;转至磁带服务程序B3:TEST AL,10H;有CRT请求?JZ B4;无,继续查询,软件法排序程序,JMP CRT;转至CRT显示服务程序B4:TEST AL,08H;有纸带请求?JZ B5;无,继续查询JMP PIN;转至纸带输入服务程序B5:TEST AL,04H;有纸带穿孔请求吗?JZ B6;无,继续查询JMP PH;转至纸带穿孔服务程序B6:TEST AL,02H;是键盘输入中断请求吗?JZ POUT;否,转打印中断服务程序JMP KEYIN;转至键盘

12、输入中断服务程序POUT:,硬件优先权排序电路,用户中断服务子程序的装载,将用户中断服务子程序的入口地址放入中断向量表的相应位置的过程称为用户中断服务子程序的装载。常用的装载方法有三种,用户中断服务子程序的装载,1、定义数据段与向量表重合DATA SEGMENT AT 0000H;定义数据段(DS)=0000H ORG n*4;n为中断类型号 SUB DW noffset;中断服务程序的入口IP DW nseg;中断服务程序的入口CS DATA ENDS,用户中断服务子程序的装载,2、程序初始化部分用数据传送指令DATA SEGMENT AT 0000H ORG n*4SUB DW 2DUP(

13、?)DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA MOV AX,DATA MOV DS,AX MOV SUB,noffset;中断服务程序的入口IP MOV SUB+2,nseg;中断服务程序的入口CS,用户中断服务子程序的装载,3、DOS中断功能调用INT 21H置中断向量功能 功能号 25H AH 中断号 n AL 入口参数 中断服务程的入口地址CS:IP DS:DX INT 21H注:中断服务程的入口地址CS:IP值将放入 中断向量表的n*4处连续4个存储单元中,用户中断服务子程序的装载,INT 21H读中断向量功能 功能号 35H AH 中断

14、号 n AL INT 21H 出口参数 ES:BX 注:ES:BX中为中断号n的中断服务程 的入口地址CS:IP值,用户中断服务子程序的装载,3、DOS中断功能调用;-保存原向量-MOV AL,N;AL中预置中断类型号MOV AH,35H;AH中预置功能号35HINT 21H;调用DOS中断将取中断向量到ES:BX中PUSHES;保存原中断向量的段基址部分PUSH BX;保存原中断向量的段内偏移量部分,用户中断服务子程序的装载,;-设置新向量-PUSHDSMOVAX,SEG INTSUBMOV DS,AX;DS中预置段基址MOV DX,OFFSET INTSUB;DX中预置偏移量MOV AL,

15、N;AL中预置中断类型号MOV AH,25H;AH中预置功能号25HINT 21H;调用DOS中断将用户中断向量置入中断向量表POPDS,置中断向量例,某中断服务程序的中断号为40H,中断务程序的入口地址CS:IP=3500H:4830H用INT 21H功能置中断向量到中断向量表中,MOV AH,25H MOV AL,40HPUSH DS 40H*4 MOV AX,3500HMOV DS,AX MOV DX,4830H INT 21HPOP DS,中断服务程序,保护现场:保存CPU内部各寄存器的内容,以便在服务程序中可以使用这些寄存器而不致破坏原信息。开总中断:将IF置1,使得在该中断服务期间

16、CPU仍然能够响应更高级的中断请求。具体处理:进行用户的中断服务。关总中断:将IF位清0。恢复现场:将入栈保护的各寄存器内容依次弹出,恢复进入中断服务程序前的状态。开总中断:再次将IF位置1,使返回之后能够再响应。中断返回:执行一句IRET指令,CPU将自动将堆栈中的断点弹出给IP和CS,然后弹出标志寄存器FLAGS,完成恢复断点的操作。这样,程序就可以接着执行被中断的原程序了。,系统的中断分配情况,我的电脑/控制面板/系统/计算机管理/计算机/属性/中断请求,7.4 X86系列微机的硬中断控制逻辑,INTRNMI,PC机INTR中断的应用,PC机中大部分INTR中断已被系统用作自身接口功能的

17、一部分(如键盘中断IRQ1),系统初始化时这些中断对应的服务子程序会被自动装载。扩展外设只能使用系统专门提供的用户中断,如高档PC机中的IRQ10、IRQ11、IRQ12和IRQ15。用户在实模式下设计开发INTR中断接口时需从硬、软件两个方 面。,PC机INTR中断的应用,硬件接口 高档PC机的INTR中断请求引脚IRQ是通过主板上的总线插槽(如EISA、PCI)提供给用户的。因此用户只需设计基本的中断请求电路将外设发出的中断请求接至总线上的IRQ中断引脚,而不需要考虑8259与CPU之间的接口电路。,PC机INTR中断的应用,软件接口 用户除根据实际情况对8259A写入操作命令字(如中断屏蔽字)以确定其具体工作状态 由于PC机已对8259进行了初始化,用户不必再发送8259的初始化命令字。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号