第7章中断 。 中断:指当CPU检测到某种服务请求后,暂时中止现行 程序而转去执行一个特定的中断服务程序,当中断服务 程序执行完毕后,返回到原来程序的中断处继续执行 中断处理的隐操作:程序状态及程序断点地址的进栈及 出栈。 中断请求 中断响应中断服务 中断结束 中断处理 Ji Lin University China COMPUTER SCIENCE山DY厘CHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 第7章 中断 • 中断:指当CPU检测到某种服务请求后,暂时中止现行 程序而转去执行一个特定的中断服务程序,当中断服务 程序执行完毕后,返回到原来程序的中断处继续执行 • 中断处理的隐操作:程序状态及程序断点地址的进栈及 出栈。 中断请求 中断响应中断服务 中断结束 中断处理
7.1 概述 中断过程一般包括五个方面,即中断申请、中断排队、中 断响应、中断服务和中断返回 中断系统其他功能: 支持多中断源和多种中断源。 支持中断屏蔽处理。 支持中断嵌套处理。 支持中断优先级修改。 支持中断结束方式选择。 中断源:能够发出中断请求信号的来源 中断源通常有如下几种: 1.一般的I/0设备,如键盘、打印机等。 2.实时时钟及过程多数,如时钟电路、A/D转换等。 3.故障源,包括硬件故障及软件故障,如电源掉电、存储 器故障、运算溢出等。 4.软件设置中断源,如在程序中用中断指令而产生的中断。 Ji Lin University China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 7.1 概述 • 中断过程一般包括五个方面,即中断申请、中断排队、中 断响应、中断服务和中断返回 • 中断系统其他功能: 支持多中断源和多种中断源。 支持中断屏蔽处理。 支持中断嵌套处理。 支持中断优先级修改。 支持中断结束方式选择。 • 中断源:能够发出中断请求信号的来源 • 中断源通常有如下几种: 1.一般的I/O设备,如键盘、打印机等。 2.实时时钟及过程多数,如时钟电路、A/D转换等。 3.故障源,包括硬件故障及软件故障,如电源掉电、存储 器故障、运算溢出等。 4.软件设置中断源,如在程序中用中断指令而产生的中断
7.2 最简单的中断情况 中断申请是由中断源发出的请求服务的信号 中断源能够产生中断申请信号有两个条件: 1.中断源自身工作已经“准备就绪” 2.CPU允许该中断源申请中断 中断响应条件: 1.外部设备有中断请求 2.CPU自身允许中断 3.没有更高级的中断正在被服务 4.CPU在每条指令结束后响应中断 在中断响应周期,硬件自动完成一些必要的操作: 1.关中断 2.保护断点:通过堆栈及相关硬件实现EFLAGS、CS、 EP的保护。并清除F和TF。 3将中断服务程序的入口地址送入程序计数器,从而实 现转入相应的中断服务程序 Ji Lin University China COMPUTEP SCIRNCE AND T里CHO是OGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 7.2 最简单的中断情况 • 中断申请是由中断源发出的请求服务的信号 • 中断源能够产生中断申请信号有两个条件: 1.中断源自身工作已经“准备就绪” 2.CPU允许该中断源申请中断 • 中断响应条件: 1.外部设备有中断请求 2.CPU自身允许中断 3.没有更高级的中断正在被服务 4.CPU在每条指令结束后响应中断 • 在中断响应周期,硬件自动完成一些必要的操作: 1.关中断 2.保护断点:通过堆栈及相关硬件实现EFLAGS、CS、 EIP的保护。并清除IF和TF。 3.将中断服务程序的入口地址送入程序计数器,从而实 现转入相应的中断服务程序
设置中断请求的情况 地址总线 A/B7-0 数据 数据 CPU 端口 数据总 外设 I/O RD R READY INTR Ji Lin University China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 设置中断请求的情况
具有中断屏蔽的接口电路 AB7-0 地垃 译码 AB15-0 数据 C 数锯总线 DB7-0 数据端口 AB7-0 地址 外设 RD 译码器 WR 器 READY INTR 中断 中断 屏 请求 Ji Lin University China COMPUTER SCIENCE山DY里CHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 具有中断屏蔽的接口电路
中断时序流程 执行一条指令 机器周期的 N 最后一个T状态? 腹下 指令结束 条指令 有中断请求了> 指令结束? 取下一条指令 禁止中断 有TNTR? 保留现场 处理中断 开中断 (中断服务 Y 微消中断请求 置TNTR F/F 恢复现场 处理中断 返回 Ji Lin University China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 中断时序流程
7.3 中断优先权 在中断系统中,根据中断源的轻重缓急, 为每一个中断源 规定了一个服务优先级别,这就是所谓的中断优先级,或 叫中断优先权 中断识别 只有外部硬件中断需要进行识别,其余不需要识别。中 断识别由中断控制器完成。 中断优先级 原则:按机器故障、DMA、外围硬件、软件递减。 结果:CPU专用>DMA>外围硬件>BIOS>D0S>自由。即基本 按中断向量表排序。外围硬件一般可由用户修改其优先权。 中断优先权排队一般有两种方法,即软件查询法和硬件排 队法 软件查询法:用软件查询中断源,根据查询的顺序先后来 确定中断源的优先级。先查询的优先级就高,后查询的优 先级就低,只要改变查询次序,就可以改变中断源的中断 优先级 硬件排队法:用硬件判优逻辑电路来确定申请中断中的最 高优先级,系统中各中断源的优先级别是由它们在判优电 路中的位置决定的chim COMPUTEP CIRNCE AND里COGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 7.3 中断优先权 • 在中断系统中,根据中断源的轻重缓急,为每一个中断源 规定了一个服务优先级别,这就是所谓的中断优先级,或 叫中断优先权 • 中断识别 只有外部硬件中断需要进行识别,其余不需要识别。中 断识别由中断控制器完成。 • 中断优先级 原则:按机器故障、DMA、外围硬件、软件递减。 结果:CPU专用>DMA>外围硬件>BIOS>DOS>自由。即基本 按中断向量表排序。外围硬件一般可由用户修改其优先权。 • 中断优先权排队一般有两种方法,即软件查询法和硬件排 队法 • 软件查询法:用软件查询中断源,根据查询的顺序先后来 确定中断源的优先级。先查询的优先级就高,后查询的优 先级就低,只要改变查询次序,就可以改变中断源的中断 优先级 • 硬件排队法:用硬件判优逻辑电路来确定申请中断中的最 高优先级,系统中各中断源的优先级别是由它们在判优电 路中的位置决定的
优先权软件查询硬件电路 上 CPU IRQo 并行输入接口 中断 求 寄存器 IRQc INTR ≥1 Ji Lin University China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 优先权软件查询硬件电路 D0 ~ D7 CPU INTR ≥1 并 行 输 入 接 口 中断 请求 寄存器 IRQ0 IRQ1 IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7