1、第 11 章 中断技术本章学习目标: 中断的基本原理及过程2. 8086 中断机制3. 8259A11.1. 中断的基本概念1. 中断与中断源 什么是中断?什么是中断源?什么是中断系统? 中断的分类:硬件中断、软件中断、异常中断。 中断源:发出中断请求的来源(设备、请求者)。有外部事件(硬件中断)、内部软件。如:I/O 设备、数据通道、实时时钟、硬件故障、软件故障等。2. 中断的应用(1) 实现主机与 I/O 设备并行工作(2) 实时处理(3) 人机对话(4) 故障处理(5) 多机系统中各处理机之间的协调工作11.2. 中断接口电路1. 最简单的中断接口电路有三个输入设备 A,B,C 中断源,
2、一个电源掉电中断源;CPU 有三个可屏蔽请求输入端 INTR0、INTR1、INTR2 和一个非屏蔽中断请求输入端 NMI。(1) 中断请求触发器(D 触发器)(2) 中断允许触发器(CPU 内部)(3) 可屏蔽中断 INTR0、INTR1、INTR2(4) 非屏蔽中断 NMI(5) 中断请求输入线图中是以三个中断请求输入线来区分中哪个中断源产生的中断。而实际的CPU 并没有这么多的中断请求输入线。如何处理?3. 中断优先级有多个中断请求时,先处理谁?多个中断源同时有请求时,CPU 要确定为个中断源服务。多个中断源有优先级。确定优先级的方法:软件查询、硬件排队。(1) 软件查询确定优先级有中断
3、时,在中断服务程序中读入状态,区分是哪个中断源,以确定为其服务。先判断的中断优先级最高。(2) 硬件优先级排队电路确定优先级(3) 具有中断屏蔽的接口电路中断源的中断请求能送到 CPU 吗?通过中断屏蔽 R,可以在接口中屏蔽某个中断源。有多个中断源时,对应每个中断源有一个中断屏蔽位,写入 1 时,该中断被屏蔽。(4) CPU 内部对可屏蔽中断的控制 CPU 什么时候会响应中断?CPU 内部有一个中断允许触发器,可以由程序控制开中断(EI)或关中断(DI) 。11.3. 8086CPU响应中断及处理过程1. 单重中断处理过程2.多重中断处理过程*中断服务程序入口地址是如何形成的?11.4. 80
4、86中断机制(实模式中的中断处理过程)1.中断类型最多可处理 256 个中断源。每个中断源有一个中断类型码 n。2.中断向量表(中断服务程序入口地址表) 表中保存着中断服务程序的入口地址。 (n*4)(n*4+1)中保存着中断服务程序入口地址的偏移量 IP; (n*4+2)(n*4+3) 中保存着中断服务程序入口地址的段地址 CS;2. 可屏蔽中断 INTR INTR -中断请求 /INTA-中断应答CPU 开中断(STI)时,才会产生/INTA。 中断应答的时序:第 1 个中断响应周期与第 2 个中断响应周期之间插入 4 个空闲周期 TI。 图示可屏蔽中断过程3. 非屏蔽中断 NMI有能用指令屏蔽,当 NMI 脚有请求时,总是会响应。中断类型码 n=2。4. 内部中断(软件中断)(1) 除法中断(n=0)(2) 溢出中断(n=4) INTO(3) 单步中断(n=1)(4) 断点中断(n=3)(5) 用户定义软中断(n=)实模式中断处理过程(包括 NMI,INTR,内部中断),NMI 只进入一次,单步中断可能进入两次。