北方民族大学微机原理与接口技术课件第六章 中断系统.pptVIP

  • 1
  • 0
  • 约2.2万字
  • 约 100页
  • 2019-05-06 发布于广东
  • 举报

北方民族大学微机原理与接口技术课件第六章 中断系统.ppt

第六章 中断系统 6.1 中断系统基本概念 什么是中断? 定义:中断就是指当CPU正在执行程序时,外设(或其它中断源)向CPU发出请求,CPU暂停当前程序的执行,转向该外设服务(或称中断服务)程序,当中断服务程序运行结束后,返回原程序继续执行的过程。 实现中断服务的两个条件:如何引起中断?如何处理中断的请求? 中断服务的实现一般需要经历下述过程: 中断请求→中断响应→断点保护→中断源识别→中断服务→断点恢复→中断返回 中断的作用就是完成或实现上述的过程! 6.1.1 中断控制系统的作用 1、分时处理(按规定的时间处理某个过程) 2、故障处理(对系统运行过程中出现的特殊情况及时给予处理,例如除数为0时) 3、实时处理(对系统有特殊要求的部分需要在整个运行过程中实时处理,了解系统的运行状态) 6.1.2 中断源 1.外部设备请求中断:系统外设所发出的中断(外部设备提出的实时处理请求)请求。 2.故障请求中断:同机器硬件错误有关的中断系统称谓硬件故障中断。 3.程序性中断:与用户程序有关的中断,统称为程序性中断(如DOS中断等)。 6.2 中断的处理过程(重点掌握内容) 处理一个中断的过程,就是如何处理以下一些基本问题的过程: 1)如何产生中断输入信号(请求中断)。 2)如何识别中断源。 3)如何把控制转给中断服务程序。 4)如何保护和恢复中断的现场。 5)如何识别优先级较高的中断。 6)如何开放和关闭中断。 也就是说如何实现图6-1所示的过程 6.2.1 中断请求与中断屏蔽 1.中断请求的定义:用某种信号通知CPU指明某个外设正在请求,需要CPU中断现行程序的执行(系统能识别出是那个设备或事件要求中断)。 2.中断请求的条件: (1)外设具有提出中断请求功能; (2)CPU允许该外设发中断请求。 3.中断屏蔽:当此触发器在程序控制下,使触发器输出端置“1”时,允许中断(EI),若触发器输出端置“0”时,则关闭中断(DI)。(通过软件可以实现是否容许中断,既:可以有中断,也可以没有中断) 6.2.2 中断优先级排队 问题的提出:如果有几个外设同时有中断请求时CPU如何处理? 1.中断排对:当系统有2个或2个以上的中断时,需按中断的紧急程度排队,最紧急的排序最高,依此排列,称中断优先排队。 2、中断优先级:当CPU正在处理一个中断时,能响应更高级别的中断请求,而暂时停止正在执行的中断服务,既中断可以嵌套(中断服务程序中还可以有中断,如图6.1中的中断服务子程序2就为中断嵌套)。 3.单级中断处理和多级中断处理(中断嵌套):单级中断处理不允许其他设备再中断CPU的程序;多级中断处理允许优先级高的中断打断优先级低的中断服务程序。 3.中断排队与中断源的识别 (1)程序查询识别(软件查询法) (2)单线串行顺序链识别(硬件查询法) (3)中断向量法识别 6.2.3 CPU对中断的响应(中断向量识别法) 1.中断向量识别法的响应的方法 1)CPU中断响应的条件 (1) 发出中断请求信号 (2)设置中断屏蔽触发器,当此触发器为“1”时,允许外设的中断请求送出至CPU。 (3)CPU处于开中断状态。 (4)CPU在一条现行指令结束之后响应中断。 2)CPU对中断响应的过程(重点掌握内容) (1)关中断---响应中断后,首先发出中断响应信号,内部自动完成关中断操作(本级中断源) 。 (2)保存断点---响应中断后,停止下一条指令的执行,把当前相关寄存器的内容压入堆栈(必须保存IP、CS,CPU自动完成此操作,为中断返回做好准备)。 (3)给出中断入口地址,转入相应的中断服务程序。 (4) 恢复现场---完成中断服务后,将原来保存的现场信息从堆栈弹出,恢复CPU内部相关寄存器的内容。 (5)开中断与返回---为使CPU能再次响应中断,在中断服务程序的最后执行开中断,同时紧跟一条返回指令,从堆栈弹出IP、CS(自动完成),恢复原程序的执行。 6.3 8086/8088中断系统结构 6.3.1 8086/8088CPU的中断结构体系 1、8086的中断源 8086系统的中断源分为外部中断(中断源来自CPU外部,即外部设备的中断)和内部中断(来自CPU内部的中断)两大类。 1)内部中断: (1)除法溢出中断――0号中断 (2)单步中断――1号中断 (3)INT指令中断 (4)溢出中断――4号中断 (5)软件中断 8086/8088的中断源 内部中断的作用: 除法错中断(中断类型号为0):在执行除法指令时,若发现除数为0,则产生一个类型号为0的内部中断,CPU转去执行除法错中断处理程序。 (2) 溢出中断INTO(中断类型号为4):进行带符号数的算术运算时,若发生了溢出,则标

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档