- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中断控制接口课件
第七章 中断控制接口 教学内容 中断的基本概念 中断最初是作为处理器与外部设备交换信息的一种控制方式提出的。由此,最初的中断全部是对外部设备而言的,称为外部中断或硬件中断。 随着计算机技术的发展,中断的范围也随之扩大,出现了内部/软件中断的概念,它是为解决机器内部运行时出现的异常以及为编程方便而提出的。 外部中断或硬件中断通常称为中断,软件中断或异常中断通常称为异常(Exception)。 中断系统的功能 能实现中断响应、中断服务和中断返回。 能实现中断优先级排队。 能实现中断嵌套。 8086/8088中断系统 PC系列微机最多可以支持256种中断,它们被分为四种类型: 内部中断和异常 软件中断 外部可屏蔽中断 外部非屏蔽中断 每个中断和异常都指定了一个类型号代表不同的优先级。用中断向量号0~255区别。类型0表示最高优先级的中断,类型255最低优先级的中断。 可屏蔽中断还需要借助专用中断控制器Intel 8259A实现优先权管理。 8086/8088的中断类型 内部中断 除法错中断 指令中断 溢出中断 单步中断 外部中断 非屏蔽中断 可屏蔽中断 8086/8088的中断优先权 软件中断 除法错中断 指令中断 溢出中断 非屏蔽中断 可屏蔽中断 单步中断 8086/8088的中断向量表 中断类型号:用来区别每一个中断类型的号码。 0~255。 中断向量:中断服务程序的入口地址(首地址) 每个中断向量占4字节:CS(高)IP(低) 中断向量表:存放中断向量的地址表。在内存0段的0~3FFH区域。中断向量表 可屏蔽中断响应流程 ① CPU发INTA应答信号 ②将标志寄存器的值推入堆栈 ③ 把IF和TF清零 ④ 将当前指令的地址推入堆栈,保护断点。 ⑤ 由中断类型码,查找中断表,找到中断服务程序入口。 ⑥ 执行中断服务程序。 ⑦ 中断服务程序执行完后,返回断点处继续执行原程序。 可屏蔽中断响应总线周期 8259A中断控制器 Intel 8259A是可编程中断控制器 可用于管理Intel 8080/8085、8086/8088、80286/80386的可屏蔽中断 8259A的基本功能 一片8259A可以管理8级中断,可扩展至64级 每一级中断都可单独被屏蔽或允许 在中断响应周期,可提供相应的中断向量号 8259A设计有多种工作方式,可通过编程选择 8259A的内部结构和引脚 8259A的工作方式 1. 设置优先权方式 普通全嵌套方式 8259A的中断优先权顺序固定不变,从高到低依次为IR0、IR1、IR2、……IR7 中断请求后,8259A对当前请求中断中优先权最高的中断IRi予以响应,将其向量号送上数据总线,对应ISR的Di位置位,至到中断结束(ISR的Di位复位) 在ISR的Di位置位期间,禁止再发生同级和低级优先权的中断,但允许高级优先权中断的嵌套 1. 设置优先权方式 特殊全嵌套方式: 能响应同级中断嵌套; 用于多片级联,只对主片编程设置在特殊全嵌套方式; 1. 设置优先权方式 优先级自动循环方式: 优先级是循环变化的:一个设备的中断服务完成后,其优先级自动降为最低,而将最高优先级赋给原来比它低一级的中断请求。 初始优先级队列是:IR0-IR7 , 1. 设置优先权方式 优先级特殊循环方式: 可以设置开始的最低优先级。 例如,设定IR4为最低优先级,那么IR5就是最高优先级,其余各级按循环方法类推。 2. 结束中断处理方式 2. 结束中断处理方式 自动中断结束方式 普通中断结束方式 配合全嵌套优先权方式使用 当CPU用输出指令往8259A发出普通中断结束EOI命令时,8259A就会把所有正在服务的中断中优先权最高的ISR位复位 实现: MOV AL,20H; OCW2=20H OUT 20H,AL; 端口地址=20H(偶地址) 2. 结束中断处理方式 特殊中断结束方式 配合循环优先权方式使用 CPU在程序中向8259A发送一条特殊中断结束命令,这个命令中指出了要清除哪个ISR位 3. 屏蔽中断源方式 普通屏蔽方式 将IMR的Di位置1,则对应的中断IRi被屏蔽,该中断请求不能从8259A送到CPU。 如果IMR的Di位置0,则允许IRi中断。 特殊屏蔽方式 将IMR的Di位置1,对应的中断IRi被屏蔽的同时,使ISR的Di位置0。 允许某些优先级更低的中断请求被响应。 4. 中断触发方式 边沿触发方式 8259A将中断请求输入端出现的上升沿作为中断请求信号 电平触发方式 中断请求端出现的高电平是有效的中断请求信号 5. 数据线连接方式 缓冲方式 8259A的数据线需加缓冲器予以驱动 8259A把SP/EN引脚作为输出端,输出允许信号,用以锁存或开启缓冲器
文档评论(0)