微型计算机原理8.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微型计算机原理8

本章主要内容: 中断和异常的基本概念 8086/8088中断系统 8259中断控制器 §8.1 概述 ⒈什么是中断? ⒉中断的定义 CPU执行程序时,由于某种随机事件(外部或内部),使CPU暂时“中断”正在运行的程序,转去执行一段特殊的服务程序(称为中断服务程序或中断处理程序),以处理该事件,等该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。 ⒊计算机中为何要引入中断? ⑴有利于CPU与外设并行、异步工作,提高CPU和外设的 工作效率; ⑵有利于CPU及时响应紧急事件; ⑶实现对特殊事件的实时响应。如多任务操作系统中: ①缺页中断; ②设备中断; ③各类异常事件; ④实时钟,…等。 §8.2 中断 中断是由外设向CPU发出的服务请求所引起的。 ⒈中断的分类 ⑴中断请求信号 由外设接口(中断源)发出,送到CPU的INTR或NMI引脚。 对中断请求信号的要求: NMI :为边沿请求 ; INTR :为电平请求 。 中断请求信号应保持到中断被处理时为止; CPU响应中断后,中断请求信号应及时撤销。 在8086/8088系统中,外设的中断要经过8259A可编程中断控制器(PIC)的排队判优后向CPU发出: (I/O接口) → PIC → CPU ⑵中断响应 在每条指令的最后一个时钟周期,CPU检测INTR或 NMI信号。 ①若以下条件成立,则CPU响应中断: 当前指令执行完 对INTR,还应满足以下条件: 当前指令是STI和IRET,则下条指令也要执行完。 当前指令带有LOCK、REP等指令前缀时,则把它们看 成一个整体,要求完整地执行完; CPU应处于开中断状态,即IF=1; 当前没有复位(RESET)和保持(HOLD)信号。 若NMI和 INTR 同时发生,则首先响应NMI。 ②CPU中断响应时,要做下述三项工作 向中断源发出INTA中断响应信号; 断点保护,包括CS、IP和PSW(FLAGS), 保证中断处理结束后能返回被中断的程序。 获得中断服务程序首地址(入口)。 如何得到中断处理程序的首地址? 固定入口法 中断向量法 ⑶中断处理(中断服务) 中断服务子程序特点 为”远”过程(类型为FAR) 要用IRET指令返回 中断服务子程序要做的工作 保护现场(PUSH reg’s) 开中断(STI) 进行中断处理 恢复现场(POP reg’s) 中断返回(IRET) ⑷中断返回 执行指令IRET,将堆栈内保存的断点信息弹出到IP、CS和 FLAG中,保证被中断的程序从断点处继续往下执行。 §8.8 可编程中断控制器8259A 主要特点: 每片可管理8级优先级中断控制; 可扩展至对64个中断源实现优先级控制; 可编程设置不同中断管理方式; 根据中断源向x86提供不同中断类型码; 双列直插式28脚封装 ⒉ 8259A对中断请求的处理过程 当某IRi有效时,IRR相应位置1 若有效的IRi未被屏蔽,则向CPU发出中断请求 检测到第1个INTA信号后,置ISRi=1,IRRi=0 检测到第2个INTA信号后,把ISRi=1中最高优先级的中断类型码放到DB上 若工作在AEOI方式,在第2个INTA结束时,使ISRi复位;否则由CPU发出EOI命令使ISRi复位 ⒊ 8259A的工作方式 ⑴中断优先方式 中断优先方式分为固定优先级和循环优先级两类。 ①固定优先级方式 运行中所有中断请求IRi的中断优先级固定不变。 加电后8259A默认优先级顺序从高到低为IR0~IR7 。 优先级排列顺序可编程改变。 ②循环优先级方式 中断源轮流处于最高优先级 (中断优先级循环); 初始优先级顺序可由编程改变; 某中断请求IRi被处理后,其优先级别自动降为最低,原来比它低一级的中断上升为最高级 。 ⑵中断嵌套方式 在中断处理过程中允 许被更高优先级的事件 所中断称为中断嵌套。 8259A有两种中断嵌套 方式: ①普通全嵌套方式 (默认方式) 一中断正被处理时, 只有更高优先级的事 件可以打断当前的中 断处理过程而被服务。 例如: ⑶中断结束处理方式 当某一IRi中断被服务时,ISR中的相应位ISRi=1,当服务 结束后,则必须清零该ISRi位。使ISRi=0是通过向8259A发出 中断结束命令(EOI命令)实现的。 有三种EOI命令: ①自动EOI(AEOI)——(自动EOI方式) 在第2个INTA#结束时,由8259A使ISRi自动复位; 因不保留当前正在服务的中断的状态,故AEOI不能 用于中断嵌套方式。 ②非指定EOI(NSEOI)——(正常EOI方式)

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档