微机原理与接口技术_08中断系统与可编程中断控制器8259A

上传人:我** 文档编号:116417995 上传时间:2019-11-16 格式:PPTX 页数:77 大小:710.54KB
返回 下载 相关 举报
微机原理与接口技术_08中断系统与可编程中断控制器8259A_第1页
第1页 / 共77页
微机原理与接口技术_08中断系统与可编程中断控制器8259A_第2页
第2页 / 共77页
微机原理与接口技术_08中断系统与可编程中断控制器8259A_第3页
第3页 / 共77页
微机原理与接口技术_08中断系统与可编程中断控制器8259A_第4页
第4页 / 共77页
微机原理与接口技术_08中断系统与可编程中断控制器8259A_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《微机原理与接口技术_08中断系统与可编程中断控制器8259A》由会员分享,可在线阅读,更多相关《微机原理与接口技术_08中断系统与可编程中断控制器8259A(77页珍藏版)》请在金锄头文库上搜索。

1、 中断的基本概念 8086的中断系统 可编程中断控制器8259A及其应用 第8章 中断系统与可编程中断控制器 8259A 一、中断系统中的名词概念一、中断系统中的名词概念 中断是指CPU暂停正在执行的程序,转去 执行处理中断事件的中断服务程序,待执行完 中断服务程序再返回到原被中断的程序继续执 行。 1、中断 8.1 中断的基本概念 2、中断源及分类 内部中断源:中断源位于微处理器内部,如程 序异常、陷阱中断、软件中断等 外部中断源:中断源在微处理器的外部,如外 部故障、外部事件、I/O事件等 通常称引起中断的事件为中断源。 8.1 中断的基本概念 3、中断类型号 为了能使CPU识别中断源,从

2、而能正确地转 向该中断源对应的中断服务程序入口,通常用若 干位二进制编码来给中断源编号,该编号称为中 断类型号。 4、中断断点 由于中断的发生,某个程序被暂停执行。该 程序中即将执行,但由于中断而没有被执行的那 条指令(即中断发生时CPU正在执行指令的下一 条指令)的地址称为中断断点,简称断点。 8.1 中断的基本概念 5、中断服务程序 中断服务程序:处理中断事件的程序段。如除法 错中断服务程序、输入输出中断服务程序等。 中断服务程序与一般的子程序对比:子程序的调 用是由程序设定,因此是确定的而中断服务程序 由某个事件引发,它的发生往往是随机的、不确 定的。 6、中断系统 为实现计算机的中断功

3、能而配置的相关硬 件、软件的集合称为中断系统。 二、中断工作方式的特点二、中断工作方式的特点 并行处理能力 实时处理能力 故障处理能力 多道程序或多重任务的运行 8.1 中断的基本概念 三、中断管理三、中断管理 1、对中断全过程的控制 中断源发出中断请求时,微处理器能决 定是否响应这一中断。若允许响应这个中断 请求,微处理器能在保护断点后,将控制转 移到相应的中断服务程序去,中断处理完后 ,微处理器又能返回到断点处继续执行被中 断的程序。 8.1 中断的基本概念 2、中断源的识别 在多个中断源共存的系统中,当有中断发生 时,CPU需要识别是那个中断源发出的请求。 软件方法:软件查询中断源的状态

4、来识别。 硬件方法:需硬件提供中断类型号来识别。 8.1 中断的基本概念 3、中断的优先权 对于系统中的所有中断源,必须根据中断 的性质及处理的轻重缓急对中断源进行排队, 并给予优先权。所谓优先权,是指有多个中断 源同时提出中断请求时,微处理器响应中断的 优先次序。 8.1 中断的基本概念 4、中断嵌套 微处理器在处理级别低的中断过程中,如果出现 了级别高的中断请求,微处理器停止执行低级中断的 处理程序而去处理高优先级中断,等高级中断处理完 毕后,再接着执行低级的未处理完的程序,这种中断 处理方式为中断嵌套。 四、中断过程四、中断过程 对于不同类型的中断源,微处理器的响应及 处理过程不完全一样

5、,大致过程为: 中断源请求中断 中断响应 中断服务 8.1 中断的基本概念 1、中断源请求中断 外部中断源。由外部硬件产生可屏蔽或 不可屏蔽中断的请求信号。 内部中断源。在程序运行过程中发生了 指令异常或其他情况。 8.1 中断的基本概念 2、中断响应 (1)响应可屏蔽中断条件: 微处理器处于中断允许状态(IF=1)。 没有不可屏蔽中断请求和总线请求。 当前指令执行结束。 (2)响应不可屏蔽中断条件: 没有总线请求。 当前指令执行结束。 (3)响应内部中断条件: 当前指令执行结束 识别中断源 FLAGS, CS , IP 进栈 清 TF , IF 标志 读中断向量, 转入中断 服务程序 开中断

6、 中断处理 关中断 恢复现场 中断返回 主程序 保护现场 断点 中断响应周期中断服务程序 中断响应过程如下: 8.1 中断的基本概念 3、中断服务 (1)保护现场 保护中断服务时要使用的寄存器的内容。 (2)开中断 (3)中断处理 执行输入输出或非常事件的处理。 (4)关中断 保证在恢复现场时不被新的中断打扰。 (5)恢复现场 (6)返回 在中断服务程序的最后,需要安排一条中 断返回指令,使程序回到被中断的地址。 一、一、80868086微处理器的中断类型微处理器的中断类型 外部中断 中断 内部中断 8.2 8086的中断系统 8086用8位二进制码表示一个中断类型,共 有256个中断,可分为

7、两大类: 可屏蔽中断 非可屏蔽中断 除法错中断 单步中断 断点中断 溢出中断 软中断 8086中断结构 除法出错中断、INT n和INTO指令的优先级 最高,其次为不可屏蔽中断NMI,再者为可屏蔽 中断INTR,单步中断的优先级最低。 8.2 8086的中断系统 1、外部可屏蔽中断 可屏蔽中断由INTR引入,受标志寄存器中的 中断允许标志位IF的控制。IF=0时,微处理器不 响应INTR的中断请求,IF=1时,微处理器响应 INTR的中断请求。 8086的可屏蔽中断源由中断控制器8259A统 一管理,INTR中断的类型码可以是8255 。 8.2 8086的中断系统 2、外部不可屏蔽中断 不可

8、屏蔽中断由NMI引脚引入,微处理器对 NMI中断请求的响应,不受中断允许标志位IF控 制。不管IF的状态如何,只要NMI信号有效, 8086现行指令执行结束,没有DMA请求,都会立 即响应NMI中断请求。NMI中断类型码固定为2 。 8.2 8086的中断系统 (1)除法错中断 在执行DIV(无符号数除法)或IDIV(有符号 数除法)指令时,若发现除数为零或商超过寄存 器所能表达的范围(商溢出),8086微处理器立 即执行中断类型码为0的内部中断。 3、内部中断 8.2 8086的中断系统 (2)单步中断 8086标志寄存器中有一个陷阱标志位TF,若 TF=1,则微处理器每执行完一条指令就引起

9、一个 中断类型码为1的内部中断。它用于实现单步操作 ,是一种强有力的调试手段。 (3)断点中断 INT 3 指令产生一个中断码为3的内部中断, 称为断点中断。在程序调试过程中,需要跟踪程 序走向、了解程序执行过程的中间结果时,可以 用INT 3指令临时替换原有的指令,称为设置断 点。 4、溢出中断 8086标志寄存器中有一个溢出标志位OF,若 上一条指令的执行结果使OF=1,则INTO指令引起 中断类型码为4的内部中断;否则此指令不起作用 ,程序顺序执行下一条指令。 5、软中断 用户可以用INT n指令产生一个中断,n为中 断类型码。如DOS系统功能调用INT 21H指令的中 断类型码为21H

10、。 8.2 8086的中断系统 二、二、80868086微处理器的中断向量表微处理器的中断向量表 中断向量:也称为中断指针,就是中断服务程序 的入口地址 中断向量表:它是中断类型号与它对应的中断服 务程序入口地址之间的换算表。8086的中断向量 表占用存储器从00000H开始的最低地址区的1024 个单元,每个中断向量占用4B,故可存256个中断 向量。 8.2 8086的中断系统 中断向量表的结构 三、三、80868086微处理器的中断响应及返回微处理器的中断响应及返回 1、可屏蔽中断的响应操作 等待当前指令结束,然后进入中断响应周期; 从微处理器外部的中断控制逻辑获得中断 类型号; 当前的

11、PSW、CS和IP的内容依次压入堆栈; 清除PSW中的IF位和TF位; 把中断服务程序的入口地址置入IP和CS, 即把地址为4n和4n+1两个单元的16位数 作为中断服务程序入口的偏移地址置入IP, 把地址为4n+2和4n+3两个单元的16位数 作为服务程序的段地址置入CS。 2、非可屏蔽中断的响应操作 CPU对它的响应不受IF位的控制,也要等待当 前指令执行结束。若非可屏蔽中断请求和可屏蔽 中断请求同时出现,CPU将优先响应非可屏蔽中 断。非可屏蔽中断的中断类型号固定为2,无需从 外部取回一个字节的中断类型号操作。非可屏蔽 中断响应的其它操作和可屏蔽中断相同。 8.2 8086的中断系统 3

12、、内部中断的响应过程 内部中断响应操作有以下共同点: 中断类型号要么是指令码给定的,要么是处 理器硬件决定的,都不需要从外部逻辑输入。 没有INTA信号的响应周期。 不受IF位的控制,但单步中断受TF位控制。 除单步中断之外,其它内部中断都比外部中 断优先响应。 除上述特点外,内部中断响应也要执行可 屏蔽中断响应的、和项操作。 8.2 8086的中断系统 作作 业业 P264P264- -265265: 8.18.1、8.48.4 中断控制器的功能: 接收外部中断请求,向微处理器发送中断 请求;进行优先权级别的判断,把当前优先权 最高的中断源的中断类型号送往微处理器;处 理器响应中断,进入中断

13、服务后,当优先权更 高的外部中断请求产生时,中断控制器能够实 现中断的嵌套;对于优先权较低的中断请求则 予以屏蔽。 8.3 可编程中断控制器8259A及其应用 一、一、8259A8259A的引脚功能的引脚功能 CAS2CAS0:级联线 IR7IR0:外设向8259A发 出的中断请求信号。 SP/EN:主从设备设定/缓 冲器读写控制。 A0:用于选择内部端口。 8.3 可编程中断控制器8259A及其应用 二、二、8259A8259A的内部结构及功能模块的内部结构及功能模块 8259A内部结构图 8.3 可编程中断控制器8259A及其应用 1、中断请求寄存器(IRR) IRR是一个8位的锁存器,用

14、来锁存外部设 备送来的IR7 IR0中断请求信号。当外部中断请 求线IRi有中断请求时,IRR中与之对应的第i位 被置1。这个寄存器的内容可以被微处理器读 出。 8.3 可编程中断控制器8259A及其应用 2、中断屏蔽寄存器(IMR) IMR是一个8位的寄存器,用于设置中断请 求的屏蔽信号。此寄存器的第i位被置1时,与 之对应的外部中断请求线IRi被屏蔽,不能向微 处理器发出INT信号。可通过软件设置IMR内容 ,确定每一个中断请求的屏蔽状态。设置IMR也 可以起到改变中断请求的优先级的效果。 8.3 可编程中断控制器8259A及其应用 3、中断服务状态寄存器(ISR) ISR是一个8位的寄存

15、器,用于记录当前正 在被服务的所有中断级,包括尚未服务完而中 途被更高优先级打断的中断级。若微处理器响 应了IRi中断请求,则ISR中与之对应的第i位置1 。该中断处理结束前,要使用指令清除这一 位。此寄存器的内容可以被微处理器读出。 8.3 可编程中断控制器8259A及其应用 4、优先权处理器 优先权处理器用于识别和管理各中断请求 信号的优先级别。当几个中断请求信号同时出 现时,微处理器响应中断请求时,把优先权最 高的IRR中的“1”送入ISR。当8259A正在为某一 级中断服务时,若又出现新的中断请求,由优 先权处理器判断新出现的中断请求的优先级别 并决定是否进入多重中断处理。 8.3 可

16、编程中断控制器8259A及其应用 5、控制逻辑 在8259A的控制逻辑电路中,有一组初始化 命令字寄存器ICW1ICW4和一组操作命令字寄存 器OCW1OCW3。初始化命令字在系统初始化时置 入,工作过程中一般保持不变。操作命令字在 工作过程中根据需要设定。控制逻辑电路按照 编程设定的工作方式管理8259A的全部工作。 8.3 可编程中断控制器8259A及其应用 6、数据总线缓冲器 这是一个8位的双向三态缓冲器,是8259A 与系统数据总线的接口。8259A通过数据总线缓 冲器接收微处理器发来的控制字,也通过数据 总线缓冲器向微处理器发送中断类型码和状态 信息。 8.3 可编程中断控制器8259A及其应用 7、读写控制逻辑 D D4 4 D D3 3 读写操作读写操作 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 x x 0 0 1 1 x x x x 数据总线数据

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

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

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