微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统

上传人:E**** 文档编号:89184263 上传时间:2019-05-20 格式:PPT 页数:113 大小:2.70MB
返回 下载 相关 举报
微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统_第1页
第1页 / 共113页
微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统_第2页
第2页 / 共113页
微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统_第3页
第3页 / 共113页
微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统_第4页
第4页 / 共113页
微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统_第5页
第5页 / 共113页
点击查看更多>>
资源描述

《微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统》由会员分享,可在线阅读,更多相关《微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编6,7章 十一五教材讲稿第7章中断系统(113页珍藏版)》请在金锄头文库上搜索。

1、第7章 微型计算机的中断系统,【本章提要】 首先介绍中断与异常的基本概念,然后讨论实地址和保护地址方式下的中断,进而详细介绍8259中断控制器及其编程应用,最后介绍中断调用及中断程序设计的一般方法。 【学习目标】 熟悉中断与异常的概念 熟练掌握实地址方式和保护方式下的中断服务程序入口地址的求法 理解可屏蔽中断的中断响应过程 掌握可编程控制器8259A工作原理 理解8259A的工作方式,并熟练掌握8259A的编程方法及应用 了解常用中断调用方法,掌握中断程序设计方法,第7章 微型计算机的中断系统,本章主要内容(四部分):,7.1 中断的基本知识,三、外部中断源的管理,1. 中断 2. 异常 3.

2、 中断与异常区别 4. 异常种类、主要异常举例 5. 中断分类 6. 中断类型号,一、中断与异常,二、中断过程,1. 请求 2. 判优 3. 响应 4. 处理 5. 返回,1. 中断优先级 2. 中断源的识别 3. 中断的多级嵌套,什么是中断,中断是指处理器在执行正常程序过程中, 当某个外部设备请求时,处理器暂时中止正在执行的程序,转而去执行其特定的服务程序,并在执行完服务程序后返回原来被中止的程序处继续执行的过程。,什么是异常?,异常是指把因内部意外条件而改变程序执行流程以报告出错情况和非正常状态的过程,又称为异常中断(简称异常)。 异常实质是传统意义上的内部中断。,中断和异常有什么区别?,

3、(1)中断处理异步发生的外部事件。 (2)异常处理同步发生的内部事件。 (3)硬件中断是作为外部事件的结果而发生的。 (4)中断是在当前指令执行完后才去执行服务程序的,在中断处理程序完成中断服务后,程序继续执行被中断指令之后的指令。,异常有哪几种类型?,故障(Faults)又称为失效:是在引起异常的指令之前被检测和处理的一种异常。在执行完失效对应的服务程序后,会返回到该失效指令,重新执行该指令。 陷井(Traps)是在引起异常的指令执行之后才被报告的一种异常,且服务程序完成后,返回到原程序引起异常指令的下一条指令处继续向下执行。 陷井与中断处理方法一样,但与失效不同 夭折(Abort)是一种不

4、能确定引起异常指令确切位置的异常(有时称为中止或失败)。,主要异常举例,主要故障异常:除法出错、调试异常、界限检查、无效操作码、协处理器不存在、无效TSS、段不存在、堆栈段溢出、一般性保护错、页面出错、协处理器错(仅80286)、机器检查(Pentium-Pentium 4)等。 主要陷井异常:单步陷井、断点异常、溢出以及中断指令INT n等。 主要夭折异常:双重故障(在执行一个异常处理程序中又出现另一个异常)、协处理器段溢出等。 说明:广义中断包括异常,后面所涉及的中断均为广义上的中断。,中断分类,指令中断INTn,异常中断 包括: 故障异常 陷井异常 夭折异常,微 处 理 器 中 断 逻

5、辑,IRQ0 IRQ1 IRQ2 : IRQ15,不可屏蔽中断,可屏蔽 中断 外部中断 控制器,外部中断,不可屏蔽中断(NMI): 含义:不能用软件来控制是否允许中断的一种外部中断。 常见NMI中断有: (1)电源掉电 (2)存储器检验出错 (3)总线奇偶错等。 可屏蔽中断(INTR): 含义:可用软件控制是否允许中断的外部中断。即STI使IF=1,允许中断;CLI使IF=0,禁止中断。 常见INTR中断有: 所有外部设备中断如键盘、鼠标、打印机、显示器、声卡、CD-ROM等。,中断类型号,含义:中断类型的唯一编号。 数量:256个。 编号:0255。 适用范围:8086Cure2(各种工作方

6、式) 中断功能表(见P.271表7.1),1,2,3,4,5,中断过程,1.中断请求:中断源发出中断请求信号 2.中断判优:对申请中断的中断源进行优先级判别的过程称为中断判优。 3.中断响应:从请求有效到转中断服务程序入口地址这一段时间。 4.中断服务(处理):中断程序的主体。 5.中断返回:使原来在中断响应过程中的断点地址和标志寄存器中的内容,依次从堆栈中弹出,以便继续执行原来的程序。,可屏蔽中断的响应过程,(1) 处理器接到中断申请,处理完当前指令即进入响应周期。 (2) 第二阶段即中断响应周期,在其间CPU向外部中断控制器发送两个响应脉冲信号INTA。 第一个响应脉冲通知中断控制器,已经

7、响应外部中断请求,让中断控制器提供中断类型号。第二个响应脉冲,CPU取走中断类型号。 (3) 将标志寄存器中的内容压入堆栈保护,然后清IF和TF标志,以禁止INTR引脚以及陷井和单步中断。 (4) 将断点地址压入堆栈(CS:EIP或CS:IP)。 断点地址:指中断时CPU待执行的下一条指令对应的逻辑地址。 顺序:先压入断点地址CS,后压入偏移地址EIP(或IP)。 (5) CPU得到中断类型号码n后,通过中断类型号与中断服务程序入口地址的关系找出该类型对应的段基地址和偏移地址,从而转入中断服务程序入口地址。完成中断响应任务。,中断服务(处理),1保护现场 保护现场实质:将重要信息压入堆栈。 2

8、开中断 目的:开放所有可屏蔽中断,以允许高级中断嵌套。 3执行中断服务程序 中断服务程序主体-中断的目的。 4关中断 目的:关中断以确保可靠有效地恢复现场。 5恢复现场 恢复现场实质:将原来压入堆栈中的内容弹出来。,中断返回,中断服务程序的最后一条指令都无一例外地使用中断返回指令(如IRET或IRETD)。 中断返回的目的:使原来在中断响应过程中压入堆栈中的断点地址和标志寄存器中的内容,依次从堆栈中弹出,以便继续执行原来的程序。,外部中断源的管理,问题的引出:多个外部中断源同时请求中断,而CPU仅一个INTR引脚,如何处理? 解决方法:对中断控制器硬件编程实现中断管理。 中断源管理的任务:区别

9、中断源、识别中断源优先级以及处理多级中断嵌套问题。,中断优先级判别,中断优先级排队:把多个中断源按轻重缓急优先处理权由高到低的顺序排列起来。 排队方法:软件排队和硬件排队。 在8086Pentium 4系统中,中断优先级从高到低依次为: 内部异常中断(除单步)INT n NMI INTR 单步中断,中断的多级嵌套,含义:在低级中断正在处理时高一级中断有请求,则进入高级中断处理程序,处理完高级中断再返回低级中断处理程序。,7.2 实方式与保护方式下的中断,一、实地址方式下的中断 二、保护地址方式下的中断 三、实方式与保护方式下的区别,7.2.1 实地址方式下的中断,1. 中断向量 2. 中断向量

10、表 3. 实方式下 中断服务程序入口地址求法,中断向量,含义: 中断服务程序的入口地址(CS:IP) 组成及格式: 共4个字节,段地址及偏移地址。,段地址,偏移地址,中断向量表,含义: 存放256个中断向量的内存区域。即存放中断服务程序入口地址的内存区域称为中断向量表。 中断向量表大小:1KB 中断向量表地址范围:00000H003FFH。 适用范围:实地址方式。,实方式下中断服务程序入口地址,中断类型号n与其对应的中断向量存放起始地址之间的关系是: 起始地址=4n;末地址=4n+3 即中断向量在4n 4n+3指示的内存单元中。 示例,实方式下的中断服务程序入口地址求法(例子),【例1】假设在

11、实地址方式下,内存00140H到00147H中存放的数据如右图所示,求51H号中断的中断服务程序入口地址。 解:,例1求解,(1)求中断向量存放的首地址和末地址 由中断类型号51H可知中断向量存放的 首地址51H4=144H(左移两位方法) 末地址51H4+3=147H (2)从首末地址对应的4个单元找出中断向量,即 00144H到00147H中内容就是51H号中断的中断向量 对照中断向量组成及格式可知 段地址=4540H,偏移地址=3430H, 所以中断服务程序入口地址为 段地址16+偏移地址=45400H+3430H=48830H,中断向量组成及格式,7.2.2 保护地址方式下的中断,1.

12、 中断描述符 2. 中断描述符表 3. 保护方式下 中断服务程序入口地址求法,中断描述符,含义: 描述某中断对应服务程序入口地址信息及其属性,包括偏移地址和对应段的选择子等。 2. 组成及格式:8个字节,中断描述符表,含义: 存放256个中断描述符的内存区域。 中断描述符表容量:2KB。 适用范围:保护地址和V86方式。,保护方式下 中断服务程序入口地址,(1)通过中断类型号n从中断描述符表IDT中找出中断描述符。目的是求偏移地址和段选择子。 中断描述符首地址=中断类型号码n8+IDT基地 从该地址开始取出8字节内容就是中断描述符。 (2)通过中断描述符中的选择子从GDT或LDT中找出或求出段

13、描述符。 (3)据段描述符提供的段基地址与中断描述符提供的偏移地址合成物理地址。 示例,保护方式下的 中断服务程序入口地址求法(例子),【例2】已知保护方式下,内存单元中有关单元存放的内容如右图所示,IDT的首地址为00280000H,GDT的首地址为00500000H,求20H号中断服务程序入口地址。 解:,例2求解,(1)求偏移地址 先找中断描述符,然后从中找出中断服务程序偏移地址 由n=20H知,中断描述符存放在00280000H+20H8=00280100H开始 的8个单元,所以中断描述符为: 00 42 EE 00 00 13 20 12 H (2)求中断服务程序所在段的段基地址 段

14、选择子为 :0013H=0000 0000 0001 0 0 11 B TI=0,段描述符在GDT中,RPL=11为普通用户程序请求, 索引值 =0000 0000 0001 0 B 所以中断描述符描述的中断服务程序所在段描述符在GDT中的位置 为: 索引值8+GDT首地址= 0000 0000 0001 0000B+00500000H=00500010H 因此,段描述符为:39 18 40 42 34 00 00 96 H 段基地址=39423400H (3)合成物理地址 服务程序入口地址=对应段的段基地址+偏移地址 =39423400H+00422012H=39845412H(例解完),段

15、选择子与段描述符,段选择子,段描述符,表指示器 0:GDT 1:LDT,保护方式与实方式中断主要区别,(1)表的大小不同 中断描述符表2KB;中断向量表1KB (2)表的位置不同 保护方式下的中断描述符表可位于内存的任何位置,由中断描述符寄存器(IDTR)决定;实地址方式下的中断向量表只能固定在00000H003FFH的最低内存1KB的区域。 (3)中断服务程序存放位置不同 保护方式下的中断服务程序可以放到内存的任何区域,而实地址方式下的中断服务程序只能在存放的1MB以下的内存区域。,7.3 可编程中断控制器8259,一、8259简介: (1)8位可编程中断控制器,又称优先级控制器 (2)处理

16、8级向量优先级中断 (3)具有单一+5V供电 (4)8259A芯片级联组成强大的中断管理系统(多至64级外部中断)。 (5)优先级方式可编程 (6)多级中断管理 二、主要内容 7.3.1 内部结构及工作原理 7.3.2 引脚信号 7.3.3 工作方式,7.3.4 编程方法 7.3.5 高级中断控制器APIC,7.3.1内部结构及工作原理,数据总线缓冲器,数据总线缓冲器是一个三态、双向的8位缓冲器,是8259A与CPU系统数据总线的接口。 数据总线缓冲器的主要功能有: (1) 通过数据总线缓冲器,CPU向8259A内部发送 命令。 (2) CPU接收8259A状态信息。 (3) 在中断响应周期,CPU从中获得中断类型号。,读/写逻辑,接收CPU送来的

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

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

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