微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术

上传人:E**** 文档编号:89497328 上传时间:2019-05-25 格式:PPT 页数:102 大小:1.70MB
返回 下载 相关 举报
微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术_第1页
第1页 / 共102页
微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术_第2页
第2页 / 共102页
微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术_第3页
第3页 / 共102页
微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术_第4页
第4页 / 共102页
微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术_第5页
第5页 / 共102页
点击查看更多>>
资源描述

《微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术》由会员分享,可在线阅读,更多相关《微型计算机接口及控制技术 教学课件 ppt 作者 古辉 第5章 中断技术(102页珍藏版)》请在金锄头文库上搜索。

1、1,第五章 中断技术,微机接口技术,浙江工业大学信息学院 古辉 ,2,第五章 中断技术,第五章 中断技术 5.1 中断的基本概念 5.2 IBM-PC微机中断系统 5.3 可编程中断控制器8259A 5.4 8259A在 微机系统中的应用,3,5.1 中断的基本概念,一、中断 中断是微处理器与外部设备进行信息交换的一种方式。 CPU在执行正常程序过程中,当出现某些异常情况或某种外部设备请求时,处理器暂时停止正在执行的程序,转而去执行某一个特定的程序,并在执行后返回原来被中止的程序处继续向下执行的过程。,4,中断处理过程示意图,中 断 源,中断 请求,当 前,程 序,中断 服务 程序,程序断点,

2、中断返回,中断响应,5.1 中断的基本概念,5,5.1 中断的基本概念,二、中断源 发出中断请求的外部设备或引起中断的内部原因称为中断源。中断源主要有: 外设中断 指令中断 程序性中断 硬件故障中断,6,5.1 中断的基本概念,三、中断识别 CPU弄清是哪一个中断源发出中断请求的过程称为中断识别。 识别的目的是形成该中断源的中断服务程序的入口地址,实现程序的转移。有两种识别方法: 向量中断:由中断向量指示中断服务程序的入口地址。 查询中断:采用软件或硬件查询技术来确定发出中断请求的中断源。,7,5.1 中断的基本概念,四、中断向量与中断向量表 中断向量是中断服务程序的入口地址。它包括中断服务程

3、序的段基址CS和偏移地址IP(共占4个字节地址)。 每个中断服务程序都有一个确定的入口地址,把系统中所有的中断向量集中起来放到存储器的某个区域,这个存放中断向量的存储区就叫中断向量表。 PC系列微机的存储器的000003FFH共1024个地址单元作为中断向量存储区,每个中断向量需占用4个字节的地址空间,可容纳256个中断向量,即可处理256个中断服务程序。,8,5.1 中断的基本概念,五、中断类型号与中断向量指针 中断类型号是系统分配给每个中断源的代号。 统一编号,共有256个中断类型号。其中有一部分中断号还空着,待分配。 不同中断源,获取其中断号的方法不同。 中断号与中断向量指针的关系为:

4、中断号(n)4中断向量最低字节的指针 例如,软磁盘INT 13H的中断向量为0070H:0FC9H,中断向量的第一个字节的指针是 13H4=004CH,9,5.1 中断的基本概念,中断类型号固定不变,中断号所对应的中断向量则有可能变化。也就是说,有些中断向量是可以修改的,但对系统的一些专用中断是不允许修改的。,10,表5.1 系统中断号表,5.1 中断的基本概念,11,表5.1 系统中断号表(续),5.1 中断的基本概念,12,表5.1 系统中断号表(续),5.1 中断的基本概念,13,表5.1 系统中断号表(续),5.1 中断的基本概念,14,在386以上CPU保护模式下,仍然是通过中断向量

5、去完成中断服务程序调用的,但其索引过程是由一个称作中断描述符表IDT中的描述符完成的。中断描述符由8个字节组成,如图所示。 段选择符和偏移量确定了对应中断服务程序的入口地址,而中断属性表示该中断的优先级别、中断类型是否为异常中断或不同任务下的中断等。,5.1 中断的基本概念,中断描述符表IDT,15,5.1 中断的基本概念,在保护模式下,CPU通过INT指令或内外部中断获得中断向量以后,自动把中断向量乘以8,其乘积与中断描述符表寄存器IDTR中的基地址相加,所得之和为IDT中断门描述符的地址,从该地址开始连续八个字节中保存着一个IDT中断门描述符,CPU通过其中段选择符查到对应段描述符确定中断

6、服务程序的基地址,然后与IDT描述符中的偏移一起指向对应的中断服务程序。 在保护模式下,由中断向量到中断子程序的索引过程如图所示。,16,5.1 中断的基本概念,17,5.1 中断的基本概念,六、中断向量的装入与修改 1. 中断向量的装入 中断向量是在开机加电时,由程序装入内存指定的中断向量表中。 系统配置和使用的中断所对应的中断向量由系统软件负责装入。 若系统中(如单板机)未配置系统软件,就要自己设计程序自行装入中断向量。 下面介绍几种填写中断向量表的方法。,18,例1:用MOV指令装入中断向量:设中断号60H, 中断服务程序的段基址SEG_INTR,偏移地址OFFSET_INTR(006D

7、H)。, CLI ;关中断 CLD ;内存地址加1 MOV AX,0 MOV ES,AX ;给ES赋值为0 MOV DI,4*60H ;中断向量指针DI MOV AX,OFFSET_INTR ;中断服务程序偏移值AX STOSW ;AXDIDI+1 ,DI+2 MOV AX,SEG_INTR ;中断服务程序的段基址AX STOSW ;AXDI+2DI+3 STI ;开中断 ,5.1 中断的基本概念,19,例2:将中断服务程序的入口地址直接写入中断向量表, MOV AX,00H MOV ES,AX MOV BX,4*60H ;中断号4BX MOV AX,006DH ;中断服务程序偏移值AX MO

8、V ES:BX,AX ;装入偏移地址 PUSH CS POP AX ;获取中断服务程序段基址 MOV ES:BX+2,AX ;装入段基址 ,5.1 中断的基本概念,20,5.1 中断的基本概念,2. 中断向量的修改 在PC微机中不采用由用户直接装入中断向量,而是采用中断向量修改的办法来使用系统的中断资源。 利用DOS功能调用INT 21H中的35H号和25H号功能修改中断向量。修改步骤有步: 用35H号功能,获取原中断向量,并保存。 用25H号功能,设置新中断向量。 新中断服务程序完毕后,利用25H号功能恢复原中断向量。,21,例3:假设原中断程序的中断号为n,新中断程 序的入口地址的段基址为

9、SEC_INTR,偏移地址为 OFFSET_INTR。中断向量修改的程序段为:,MOV AH,35H ;取原中断向量 MOV AL,nH INT 21H MOV OLD_OFF,BX ;保存原中断向量偏移值 MOV BX,ES MOV OLD_SEG,BX ;保存原中断向量段基址 ,后续,5.1 中断的基本概念,22,MOV AH,25H ;设置新中断向量 MOV AL,nH ;中断号 MOV DX,SEG_INTR MOV DS,DX ;DS指向新中断程序段址 MOV DX,OFFSET_INTR ;DX指向新中断程序偏移值 INT 21H MOV AH,25H ;恢复原中断向量 MOV A

10、L,nH MOV DX,OLD_SEG MOV DS,DX MOV DX,OLD_OFF INT 21H,5.1 中断的基本概念,23,5.1 中断的基本概念,七、中断优先级排队方式 当系统有多个中断源时,可能会出现同时有几个中断源申请中断,而CPU在一个时刻只能响应并处理一个中断请求。 排队的方式主要有:按优先级排队(使用最多)和循环轮流排队(不分级别,所有中断源一律平等)。 当同时有多个中断请求信号,先响应优先级别高的中断请求。 高优先级中断请求信号可中断低优先级中断服务。,24,5.1 中断的基本概念,软件查询法 一个简单的接口电路如图所示。,图a 软件查询接口 图b 软件查询的流程图,

11、25,5.1 中断的基本概念,设有3个外设A,B,C,它们的中断请求信号接到端口地址为20H的中断请求寄存器上,寄存器的输出端相或后接CPU的INTR端。 当A,B,C有中断请求时,相应的触发器置, 进而使INTR=1,向CPU发出中断请求。若CPU响应后,转入中断服务程序,其流程如图。,26,5.1 中断的基本概念,查询程序的编程有两种方法:屏蔽法,移位法。 屏蔽法 IN AL,20H ;输入中断请求触发器的状态 TEST AL,80H JNE AISP ;外设A有请求,则转至外设A服务程序 TEST AL,40H JNE BISP ;外设B有请求,则转至外设B服务程序 TEST AL,20

12、H JNE CISP ;外设C有请求,则转至外设C服务程序 ,27,5.1 中断的基本概念,移位法 IN AL,20H SHL AL,1 JC AISP ;外设A有请求,则转至外设A服务程序 SHL AL,1 JC BISP ;外设B有请求,则转至外设B服务程序 SHL AL,1 JC CISP ;外设C有请求,则转至外设C服务程序 显然,先被查询的,优先权最高。即,外设A的优先权最高,B次之,C最低。这种方法节省硬件,不需要判断与确定优先权的硬件排队电路。但中断源较多时,查询程序段较长,由询问转入相应的服务程序入口的时间长。,28,5.1 中断的基本概念,菊花莲法 是一种简单获得中断优先级的

13、方法。通过在每个外设对应的接口上接一个逻辑电路,这些逻辑电路构成一个链来实现中断应答信号的控制,称为菊花链,如图所示。,(a) 菊花链 (b) 菊花链逻辑电路,29,5.1 中断的基本概念,菊花莲电路的工作过程 中断请求:设备A,B,C通过接口发出中断请求,1表示请求,0表示无请求。只要有一个设备发出请求,INTR=1。 中断响应:若CPU开中断,发中断响应信号INTA。该信号先送给设备A的菊花链电路,若设备A没有请求,则它输出的INTA仍为0,往下传送;若设备A有请求,经过或门后作为接口的中断应答信号,而由于其中断请求为1,则输出的INTA =1,使后级的中断得不到响应。 显然,越靠近CPU

14、的接口(外设),优先级越高。图中,设备A的优先权最高,设备B次之,设备C最低。,30,5.1 中断的基本概念,可编程中断控制器专用芯片管理方式 当前微机IBM PC采用专门的可编程中断优先级管理芯片来完成中断优先级的管理。 早期计算机采用软件查询或菊花链方法,而目前计算机均采用专用芯片管理法,例如8259芯片。,31,八、中断嵌套 当CPU正在执行某个中断服务程序时,会出现优先级更高的中断源申请中断。为了使优先级别高的中断源及时得到服务,需要暂时中断当前正在执行的级别较低的中断服务程序,去处理级别更高的中断源,待处理完以后,再返回到被中断了的中断服务程序继续执行。,5.1 中断的基本概念,32

15、,5.1 中断的基本概念,A中断请求,响应,返回,A中断 服务程序,B中断请求,响应,返回,B中断 服务程序,C中断请求,响应,返回,C中断 服务程序,原主程序,中断嵌套示意图(中断优先级CBA),33,5.2 IBM-PC微机中断系统,PC微机的中断源大致可分为两大类: 硬中断外部中断 软中断内部中断 下面分别讨论它们产生的条件、特点及其应用。,34,5.2 IBM-PC微机中断系统,一、硬中断 硬中断是由外部设备提出中断申请而产生的。 硬中断的产生具有随机性,CPU预先并不知道。 硬中断有两种:可屏蔽中断和不可屏蔽中断。 可屏蔽中断号由中断控制器提供,对可屏蔽中断CPU要发中断响应信号; 不可屏蔽中断号为02H,对不可屏蔽中断CPU不需要发中断响应信号。,35,高 优先级顺序 低,5.2 IBM-PC微机中断系统,硬中断的中断源及中断号表,36,两类硬中断源逻辑示意图,5.2 IBM-PC微机中断系统,37,5.2 IBM-PC微机中断系统,1.不可屏蔽中断NMI 当CPU的NMI引脚上有一个由低到高的上跳边信号时,触发产生NMI中断。 CPU不需发中断响应信号而立即进入预定的2号中断服务程序执行。 NMI中断不能被CPU用指令CLI禁止。 NMI中断优先级别在硬中断中最高。常由

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号