微型计算机中断系统

上传人:平*** 文档编号:47588342 上传时间:2018-07-03 格式:PPT 页数:63 大小:683.65KB
返回 下载 相关 举报
微型计算机中断系统_第1页
第1页 / 共63页
微型计算机中断系统_第2页
第2页 / 共63页
微型计算机中断系统_第3页
第3页 / 共63页
微型计算机中断系统_第4页
第4页 / 共63页
微型计算机中断系统_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《微型计算机中断系统》由会员分享,可在线阅读,更多相关《微型计算机中断系统(63页珍藏版)》请在金锄头文库上搜索。

1、第七章 微型计算机中断系统7.1 概 述(P263) 一、中断的概念正在看书电话铃响接电话继续看书执行程序事件发生事件处理继续执行程序中断处理中断请求及 响应实际场景计算机中断返回微机原理与接口所谓中断,就是 CPU执行程序时,由于发生了某种随机的事件(外部或内部),引起CPU暂时中断正在运行的程序,转去执行一段特殊的服务程序(称为中断服务程序或中断处理程序),以处理该事件,该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。中断源 引起CPU中断的事件中断源。例如: 外设请求输入输出数据,报告故障等 事件掉电、硬件故障、软件错误、非法操作、定 时时间到等 中断源分为:外部中断、内部中

2、断 内部中断:CPU内部执行程序时自身产生的中断 外部中断:CPU以外的设备、部件产生的中断8086/8088的外部中断信号:INTR、NMI INTR可屏蔽中断请求,高电平有效,受IF标志的 控制。IF=1时,执行完当前指令后CPU对它作出响应。 NMI非屏蔽中断请求,上升沿有效,任何时候CPU 都要响应此中断请求信号。微机原理与接口 中断过程 五个步骤: 中断请求 中断判优(有时还要进行中断源识别) 中断响应 中断服务 中断返回以下以外部中断为主介绍这五个步骤。微机原理与接口 1)中断请求 外设接口(中断源)发出中断请求信号,送到 CPU的INTR或NMI引脚; 中断请求信号:边沿请求,电

3、平请求 例如,NMI为边沿请求,INTR为电平请求 中断请求信号应保持到中断被处理为止; CPU响应中断后,中断请求信号应及时撤销。 在8086/8088系统中,外设的中断要经过8259A 可编程中断控制器(PIC)的排队判优后向CPU发 出:(I/O接口) PIC CPU微机原理与接口 2.1)中断源识别 计算机中的中断源有很多,CPU必须识别 是哪一个设备产生中断。识别中断源有两 个方法: 软件查询。将中断信号从数据总线读入,用 程序进行判别。 中断矢量法。由中断源提供中断类型号, CPU根据类型确定中断源。(8086/8088即采 用此种方法)微机原理与接口 2.2)中断判优 多个中断源

4、产生中断,CPU首先为谁服务? 中断优先级排队问题。 中断优先级控制要处理两种情况: 对同时产生的中断:应首先处理优先级别较高的中断;若优 先级别相同,则按先来先服务的原则处理; 对非同时产生的中断:低优先级别的中断处理程序允许被高 优先级别的中断源所中断即允许中断嵌套。 中断优先级的控制方法 硬件判优链式判优、并行判优(中断向量法) 软件判优顺序查询中断请求,先查询的先服务(即先查 询的优先级别高) 通常将中断判优与中断源识别合并在一起进行处理。 x86系统中,这项任务由PIC和CPU共同完成。微机原理与接口 3)中断响应 在每条指令的最后一个时钟周期,CPU检 测INTR或NMI信号。若以

5、下条件成立,则 CPU响应中断: 当前指令执行完。对INTR,CPU处于开中断状 态,即IF=1; 当前没有复位(RESET)和保持(HOLD)信号。 若NMI和 INTR 同时发生,则首先响应NMI。微机原理与接口 3)中断响应(续) CPU响应中断时,要做下述三项工作: 向中断源发出INTA中断响应信号; 断点保护,包括CS、IP和PSW(FLAGS) 。这主要是保证中断结束后能返回被中断的 程序。 获得中断服务程序首地址(入口)。微机原理与接口 4)中断处理(中断服务) 中断服务子程序要做的工作 保护现场(PUSH regs) 开中断(STI) 进行中断处理 恢复现场(POP regs)

6、 中断返回(IRET) 微机原理与接口 5)中断返回 执行中断返回指令IRET IRET指令将使CPU把堆栈内保存的断点信息弹 出到IP、CS和FLAG中,保证被中断的程序从 断点处能够继续往下执行。IPL IPH CSL CSH FLAGL FLAGHSPIPL IPH CSL CSH FLAGL FLAGH SPIPCSFLAG进入中断服 务程序时中断返回后概述8086/8088中断系统具有强大的的功能,可以处理 256种不同的中断类型,256种中断可划分为两大类: 外部中断和内部中断。二、中断的分类(P264)外部中断:可屏蔽中断(NMI管脚) 不可屏蔽中断(INTR管脚)内部中断(软件

7、中断):除法错误异常 单步调试中断 断点中断 软件中断(INT)微机原理与接口 8088系统的中断源 内部中断 除法溢出:类型号0,商大于目的操作数所能表 达的范围时产生。 单步中断:类型号1,TF=1时产生(当前指令需 执行完) 断点中断:类型号3,这是一个软件中断,即INT 3指令。 溢出中断:类型号4,这是一个软件中断,即 INTO指令。 软件中断:即INT n指令,类型号n(0-255)。 外部中断 非屏蔽中断NMI:类型号2可屏蔽中断INTR:类 型号由PIC提供。IF=1时CPU才能响应。 与中断有关的控制线为:NMI、INTR、INTA#概述三、中断的向量表(IVT)表的地址位于

8、内存的00000H003FFH,大小为1KB, 共256个中断向量 每个中断向量占用4 Bytes,低字为段内偏移,高字 为段基址 根据中断类型号获得中断服务程序入口的方法: (n为 中断类型号) 中断向量在IVT中的存放地址 4n所谓中断向量,实际上就是中断服务程序的入口 地址,每个中断类型对应一个中断向量。 中断类型号通过一个地址指针表与中断服务程序的 入口地址相联,该表称为中断向量表。概述三、中断的向量表(P267) 例:类型号为类型号为20H20H的中断所对的中断所对 应的中断向量存放在应的中断向量存放在 0000:0080H0000:0080H开始的开始的4 4个单元中个单元中 ,如

9、图示,则它所对应的中断,如图示,则它所对应的中断 服务程序的入口地址为服务程序的入口地址为 4030H:2010H4030H:2010H。40H30H20H10H23H 45H78H90H0000:0083H0000:0082H0000:0081H0000:0080H0000:005FH0000:005EH0000:005DH0000:005CH一个系统中对应中断类型一个系统中对应中断类型 号号17H17H的中断服务程序存放在的中断服务程序存放在 2345H:7890H2345H:7890H开始的内存区域开始的内存区域 中中,则,则17H17H对应的中断向量存对应的中断向量存 放于何处放于何处

10、, ,内容是?内容是?17H 4 = 5CH微机原理与接口中断向量的设置 供用户使用的中断类型号,由int n指令引用 ,也可以由INTR端直接引入,或通过中断 控制器8259A引入可屏蔽硬件中断。使用时 用户要自己设置中断向量,即将中断服务程 序的入口地址置入中断类型号n所对应的中 断向量中。 有两种方法可为中断类型号n设置中断向量 ,:指令设置和DOS功能调用设置。P270 中断类型号00H3FH为系统或者Dos、BIOS 功能调用,其他功能号可供用户定义。7.4 可编程中断控制器8259A一、功能和引脚一、功能和引脚 了解了解8259A8259A的的功能功能 熟悉熟悉8259A8259A

11、的的工作方式工作方式 掌握掌握8259A8259A的的编程方法编程方法 学会使用学会使用8259A8259A管理计算机系统的中断管理计算机系统的中断8259A集中断源识别、判优、提供中断类型码于一 体。是一种可编程中断控制器,有如下功能:(1) 每片8259A能直接管理8级优先级中断,可通过级 联管理系统中更多的中断源, 一个系统里最多可 用9片8259A级联、可管理64级中断。中断控制器:介于CPU与外设之间的专门用来 处理中断的接口设备微机原理与接口8.4 可编程中断控制器8259A28127226325424523622721820919101811171216131514CS WR R

12、D D7D6 D5D4 D3D2 D1 D0IR7IR6 IR5 IR4 IR3IR2 IR1 IR0CAS2INTCAS0 CAS1SP/ENINTAGNDA0VCC8259A管脚图:(2) 每一级中断都可由程序单独屏蔽或允许。(3) 每片8259A可送出8个中断类型码。(4) 可编程选择多种不同的工作方式。一、功能和引脚(续)一、功能和引脚(续)微机原理与接口D7D0:数据总线,双向,三态。用于与CPU之间 传送命令、状态、中断类型码。RD :读信号,输入。用来通知8259把某个内部寄存器的值送数据线D7D0 。(如IMR、ISR、IRR)WR:写信号,输入。用来通知8259A把数据线 D

13、7D0 上的值写入内部某个寄存器。CS:片选信号,输入。通过地址译码逻辑电路与地址总线相连。A0:地址线,输入。用来指出当前8259A的哪个端口被访问,选择内部寄存器的端口地址。 在标准AT机中,使用两片8259构成主从式中断系统 , 主8259的端口地址: 20H,21H 从8259的端口地址: A0H,A1H8259A一、功能和引脚一、功能和引脚微机原理与接口INT :中断请求,输出。把IR7IR0上的最高优先 级请求传送到CPU的INTR引脚,向CPU发中断请求。INTA:中断响应,接收CPU的中断应答信号。 CPU发出的中断响应信号为两个负脉冲。第一个负脉 冲作为中断应答信号,第二个负

14、脉冲到来时,8259从 数据线D7D0上发出中断类型码。IR7IR0:外设中断请求输入。在含有多片8259的 复杂系统中,主片的IR7IR0分别与从片的INT端相连 ,用来接收来自从片的中断请求。CAS2CAS0:级联线,用来指出具体从片。SP/EN :编程/缓冲器允许,双向,非缓冲方式下 为输入,决定8259是主片还是从片(1-主片;0-从片) ;缓冲方式下为输出,使数据总线驱动器启动8259A一、功能和引脚一、功能和引脚微机原理与接口8259A数据 总线 缓冲器读/写逻辑缓 冲 器控 制 逻 辑服务 寄存 器 ISR优先 权判 别器 PR中断 请求 寄存 器 IRRIR0D7D0A0RD

15、WRCSSPCAS0 CAS1 CAS2中断屏蔽寄存器(IMR)IR7IR1INTAINT8259A8259A内部结构框图内部结构框图二、内部结构二、内部结构 (P282)(P282)微机原理与接口8259A二、内部结构二、内部结构 1、数据总线控制器8位双向三态缓冲器,通过它,CPU向8259写入 命令字、读取有关寄存器状态、提供中断类型码。 2、读写控制器接受来自CPU的读/写命令,完成规定操作。控 制相应寄存器的读出和写入操作。3、级联缓冲/比较器 8259A数据线与系统总线相连有两种方式: 缓冲方式、非缓冲方式 (由ICW4设置)4、中断请求寄存器(IRR) 保存从IR0IR7来的中断

16、请求信号,某位=1表示对 应的IRi 有中断请求 。微机原理与接口8259A二、内部结构二、内部结构 5、中断屏蔽寄存器(IMR)通过软件设置IMR可对8259A的8个中断请求进行屏 蔽。当此寄存器的某位被置“1”时,与之相对应的中 断请求被屏蔽。 6、当前中断服务寄存器(ISR) 保存所有正在服务的中断源,某位=1表示对应的IRi 中断正在被服务 。 7、优先权裁决器(PR)当在IR端有中断请求时,通过IRR送到PR。PR检 查中断服务寄存器(ISR)的状态,判别有无优先权更 高的中断正在接受服务,使CPU为高级中断服务。 8、中断控制逻辑中断控制逻辑按初始化设置的工作方式控制8259A 的全部工作。微机原理与接口8259A二、内部结构二、内部结构

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

当前位置:首页 > 中学教育 > 教学课件

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