文档之家
首页
教学研究
幼儿教育
高等教育
外语考试
建筑/土木
经管营销
自然科学
当前位置:
文档之家
›
微机原理第八章中断
微机原理第八章中断
格式:ppt
大小:983.00 KB
文档页数:85
下载文档原格式
下载原文件
/ 85
下载本文档
合集下载
下载提示
文本预览
1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2. 可以实现外设工作请求的实时处理。
3.可以完成对一些故障的自行处理。如电源跳变 以及运算溢出等。
二、中断源及其种类
中断源——引起中断的原因,或能发出中 断请求的来源。 种类: 1.一般的输入输出设备,如键盘、打印机 2.数据通道中断源,如磁盘 3.实时时钟,如定时时间到 4.故障源,如电源掉电时需要保护现场及 数据 5.人为设置,如调试程序用的单步和断点
8.3 中断优先权
当出现多个中断源同时提出中断请求时, CPU既要识别有哪些中断源提出请求,还要辨 别和比较它们的优先权,先响应优先权最高的 中断请求。如果CPU正在处理中断,也要能够 响应优先权更高级的中断请求,而屏蔽掉同级 或低级的中断请求。 中断优先权的确定有两种方法:软件的方 法和硬件优先权排队电路。
2. 非屏蔽中断 出现在NMI线上的中断请求,不受标志位I的 影响,在当前指令执行完以后,CPU就响应。 在NMI线上的请求信号是边沿触发的,它的出 现是异步的,由内部把它锁存。8086要求NMI上 的请求脉冲的有效宽度(高电平的持续时间)要大 于两个时钟周期。 通常非屏蔽中断用于电源故障。非屏蔽中断 的优先权高于屏蔽中断。 CPU采样到有非屏蔽中断请求时,自动给出 中断向量号2,而不经过上述的可屏蔽中断那样的 中断响应周期。
8.4.1 外部中断
8086有两条外部中断请求线: 非屏蔽中断NMI(Non Maskable Interrupt)和可屏蔽中断INTR。 1. 可屏蔽中断 出现在INTR线上的请求信号是电平触发的,它的出现是 异步的,在CPU内部是由CLK的上升沿来同步的。在INTR线 上的中断请求信号(即有效的Байду номын сангаас电平)必须保持到当前指令的结 束。
8.4 8086微处理器的中断方式
8086有两类中断:硬件中断和软件中断
硬中断是由来自CPU外部的事件产生,即由外部设备提出中 断请求而产生的。硬中断的产生具有随机性,何时产生中断, CPU预先并不知道。 80X86系列的CPU只有两个引脚(INTR和NMI)可以接收外部 的中断请求脉冲。相应地,硬中断可以分为两种类型:不可 屏蔽中断(来自CPU的NMI引脚)和可屏蔽中断(来自CPU的 INTR引脚)。
第八章
中
断
8.1 引言
中断的定义
所谓中断就是指CPU在正常运行程序时,由于内部/ 外部事件(或程序中的预先安排的事件)引起CPU 中止当前正在运行的程序,转而执行为这一事件服 务的程序,执行完毕,再返回被暂时中止的程序断 点处继续执行,这一过程就称为中断。
一、中断的优点 1.可以实现CPU与外设同步工作,以及实现多个 外设同时工作。
三、中断系统的功能
1. 实现中断及返回
当某一中断源发出中断请求时,CPU能决定是否响应 这个中断请求。若允许响应这个中断请求,CPU必须在现行 的指令执行完后,保护断点和现场。然后转到需要处理的中 断源的服务程序的入口,同时清除中断请求触发器。当中断 处理完后,再恢复被保留下来的各个寄存器和标志位的状态 (称为恢复现场),恢复IP和CS值(称为恢复断点),使CPU返回 断点,继续执行主程序。
软中断是指CPU执行在用户程序中安排的有定义的INT n指 令而引发的中断。之所以要强调是有定义的,是因为软件中 断定义的中断类型码范围内有的中断号系统没有定义与之配 套的中断服务程序。软中断不是由硬件产生,而是由用户在 程序中安排中断指令INT n时产生的。 显然,软中断的中断类型号是在中断指令中直接给出的。所 以,在软中断处理过程中CPU不会象硬件中断那样发中断响 应信号,也不要求中断控制器提供中断类型号。另一点需要 注意的是,产生软中断的时机是由用户程序特意安排而不是 随机的,因此,是可以预料的。这个特点与用户子程序调用 类似,而与硬件中断是不相同的。
一、软件确定中断优先权
软件采用查询技术。当CPU响应中断后,就用软件查 询以确定是哪些外设申请中断,并判断它们的优先权。 把各个外设的中断请求信号相“或” 后,作为INTR信号,故任一个外设 有中断请求,都可以向CPU送出 INTR信号。当CPU响应中断后,把 中断寄存器的状态,作为一个外设 读入CPU,逐位检测它们的状态, 若有中断请求就转到相应的服务程 序的入口
8.4.3 中断向量表
对应于每种中断源存在一个相应的中断服务程序,每一 中断服务程序都有一个确定的入口地址即中断向量, 把系统中所有中断源的中断向量集中起来放到存储器 的某一片连续区域内,这个存放中断向量的存储区就 叫中断向量表或中断服务程序入口地址表。 CPU把所有的256个中断向量集中起来,按中断类型号 从小到大的顺序放到主存储器的RAM中从最低地址 (物理地址为0)开始,长度为1024个字节(4个字节 ×256个向量=1024个字节=1KB),物理地址范围介于 00000H~003FFH的中断向量表中。每个中断向量占用 4个字节。在这4个字节中,包含着这个中断向量(或这 种中断类型)的服务程序的入口地址——前两个字节为 服务程序的IP,后两个字节为服务程序的CS。
1. 关中断 8086在CPU响应中断后,发出中断响应信号INTA的同时,内 部自动地实现关中断。 2. 保留断点 CPU响应中断,封锁IP+1,并且把IP和CS推入堆栈保留,以 备中断处理完毕后,能返回主程序。 3. 保护现场 为了使中断处理程序不影响主程序的运行,故要把断点处的有 关的各个寄存器的内容和标志位的状态,推入堆栈保护起来。 4. 给出中断入口,转入相应的中断服务程序 8086是由中断源提供的中断矢量形成中断入口地址(即中断服务 程序的起始地址)
8.2
最简单的中断情况
一、CPU响应中断的条件
1. 设置中断请求触发器——每个中断源有一个中断请 求触发器,中断源通过该触发器向CPU发请求信号, 直到CPU响应这个中断请求,才清除该请求信号。
2.设置中断屏蔽触发器——对于多个中断源的情
况,需要对中断请求进行控制,通过设置中断 屏蔽触发器来实现。
8.4.2 内部中断
8086可以有几种产生内部中断的情况: (1) DIV或IDIV指令 在执行除法指令时,若发现除数为0或商超过了 寄存器所能表达的范围,则立即产生一个类型为0 的内部中断。 (2) INT指令 如前所述,在8086的指令系统中有一条中断指 令——即INT n指令。这种指令的执行引起中断, 而且中断的类型可由指令中的n加以指定。
(2) 移位法 XOR IN RCL JC RCL JC ┇
AL,AL AL,[20H] AL,1 PWF AL,1 DISS
查询方法的优点是: (1)询问的次序即是优先权的次序。显然,最先询 问的,优先权的级别最高。 (2)省硬件。不需要有判断与确定优先权的硬件排 队电路。 ’ 但随之而来的缺点是: 由询问转至相应的服务程序入口的时间长,尤其 是在中断源较多的情况下。
(3) INTO指令 若上一条指令执行的结果,使溢出标志位O=1, 则INTO指令引起类型为4的内部中断。否则,此 指令不起作用,程序执行下一条指令。 (4) 单步执行 若标志位T=1,则CPU在每一条指令执行完以 后,引起一个类型为1的中断,这可以做到单步执 行,是一种强有力的调试手段。 8086规定这些中断的优先权次序为: 内部中 断、NMI、INTR,优先权最低的是单步执行。
在这条线上出现的中断请求,CPU是否响应 要取决于标志位I的状态,若I=1,则CPU就响应; 若I=0,则CPU就不响应。 注意: 在系统复位以后,标志位I=0;另外任一种 中断(内部中断、NMI、INTR)被响应后,I=0。所 以必须在一定的时候用STI指令来开放中断。 CPU是在当前指令周期的最后一个T状态采样 中断请求线,若发现有可屏蔽中断请求,且中断 是开放的(I标志为“1”),则CPU转入中断响应周 期。
1. 将类型码乘以4,作为中断向量表的指针。 2. CPU的标志寄存器入栈保护 3. 复制跟踪标志TF状态,接着清零TF和IF标志。 4. 把主程序断点处的IP和CS推入堆栈保护 5. 从中断向量表中取服务程序入口地址,分别送 给CS和IP。 6.CPU按新地址执行中断服务程序。
3. 中断必须是开放的—— 即CPU内部的中断允许 触发器必须置“1”。该触 发器对应的就是中断允许 标志位IF,所以可以用 STI和CLI指令来改变。 4. 现行指令执行结束—— CPU必须在现行指令执行 到最后一个机器周期的最 后一个T状态才去采用 INTR线。响应流程如右 图。
二、CPU对中断的响应 大体上可以分成六步:
二、 硬件优先权排队电路
1.中断优先权编码电路:由硬件编码器和比较器构成。
工作原理: ①若CPU不在处理中断,则“优 先权失效”信号为高电平,则出现任 一中断源请求,都能通过与门2发出 INTR信号。若同时有多个源请求中 断,则优先权编码组只对最高优先权 的编码,保证中断响应进入对应的中 断处理程序。 ②若CPU正在处理中断,则“优 先权失效”信号为低电平,与门2被 封锁。正在处理的外设优先权编码通 过数据总线送到优先权寄存器,对应 的编码B2B1B0送至比较器。新申请 中断的外设编码A2A1A0也送至比较 器。若A≤B,则 “A>B”端输出低 电平,与门1被封锁。只有当优先权 更高的中断源有请求时,A>B端才 输出高电平,从而打开与门1,向 CPU送出INTR信号。
2.实现优先权的排队
在计算机系统中通常有多个中断源。会出现两个或更 多个中断源同时提出中断请求的情况,这样就必须要设计 者事先根据轻重缓急,给每个中断源确定 一个中断级别— —优先权。 3. 高级中断源能中断低级中断源的中断处理 即实现中断嵌套;当CPU正在执行优先级较低的服务时, 如果有较高优先级的中断请求出现,则应暂时中断当前的处 理过程,转而去处理较高优先级的中断请求,完毕后再回来 处理较低优先级的中断。 。
2. 链式优先权排队电路
工作原理: 多个中断输入相或,产生INTR 信号送CPU。CPU执行完现行指 令,则响应中断,发出中断响应信 号。接下来则由链式排队电路决定 CPU进入哪个中断服务程序。 若上一级中断源有请求,对应 的F/F触发器输出为“1”,则其中 断输出亦为高电平,控制CPU转 至相应的服务程序入口,同时屏蔽 了本级和所有的低级中断。 若上一级没有中断请求,则对 应的F/F触发器输出为“0”,其中 断输出亦为低电平,当本级有中断 请求时,可转去执行本级的处理程 序,同时又屏蔽了所有低级中断请 求。
软件查询程序流程:
查询程序有两种方式: (1) 屏蔽法 IN AL,20H];输入中断请求触发器的 状态 TEST AL,80H;检查最高位(电源故障)是否 有请求 JNE PWF;有,则转至电源故障处理程序 TEST AL 40H;否,检查磁盘是否有请求 JNE DISS;有,转至磁盘服务程序 TEST AL 20H;否,检查磁带是否有请求 JNE MT;有,转至磁带服务程序
5. 恢复现场 把所保存的各个内部寄存器 的内容和标志位的状态从堆 栈弹出,送回CPU中的原来 位置。这个操作在8086中也 是由服务程序中用POP指令 来完成的。 6. 开中断与返回 在中断服务程序的最后,要 开中断(以便CPU能响应新的 中断请求)和安排一条返回指 令,将堆栈内保存的IP和CS 值弹出,运行就恢复到主程 序。
8.4.4
8086中断响应和处理过程
不同的中断,CPU获取中断类型码的方式不一样。 对于硬件(外部)中断,CPU是在当前指令周期的T状态采样 中断请求输入信号,如果有可屏蔽中断请求,且CPU处在 开中断状态(I标志为1),则CPU转入两个连续的中断响应周 期,在第二个中断响应周期的T4状态前沿,采样数据线获 取由外设输入的中断类型码; 非屏蔽中断则由内部自动产生中断类型码2; 对于软件中断,中断类型码也是自动形成的。被零除为0、 单步为1、断点为2和溢出为4 对于INT n指令,则类型码即为指令中给定的n。 8086获得中断类型码之后的处理过程一样,可分成6 步:
相关主题
微机原理中断小结
微机原理中断处理过程
微机原理中断
第八章微机原理
微机原理中断技术
微机原理第八章
文档推荐
1632位微机原理汇编语言及接口技术第八章课后习题答案
页数:2
微机原理与接口技术第八章课后答案
页数:4
微机原理第八章--8251
页数:34
微机原理与接口技术第八章作业
页数:3
微机原理第8章习题与答案
页数:4
(完整版)微机原理与接口技术(楼顺天编着)课后第八章习题答案
页数:11
微机原理第8章习题与答案
页数:5
微机原理第八章
页数:39
微机原理与接口技术 第八章 课后答案
页数:4
微机原理第八章作业
页数:4
最新文档
中华医学会第一届重症心脏全国学术大会暨第二届西湖重症医学论坛2013年浙江省重症医学学术年会在杭州召开
超声医师必备5胰腺系统疾病超声诊断
2016考研英语长难句语法解析之独立主格结构
赌石”赌出“七彩树玉”
论战略管理的核心
9(上) Unit2 welcome to the unit
高考综合复习——电场复习专题一
10营业线施工安全管理制度
针织用纱标准简介 070809
一个教育函数式的解读