接口技术07章 中断技术.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 中断技术;第七章 中断技术;二、中断的基本过程 分为四个阶段 中断请求 → 中断响应 → 中断服务 → 中断返回;1.中断请求 ①外设先(通过接口)发送“中断请求”信号 给CPU。 ②CPU检查“中断请求”输入线。 ③CPU有权决定是否响应中断(中断允许): 若允许请求,、则中断允许触发器IF置“1”, (使用STI指令开中断)。 ; ⑤不允许中断请求的情况: 如:在实时控制时,需采集一段连续数据为防上数据 丢失,不允许其他中断请求; 又:执行管理程序中某些重要程序,CLI指令进行屏蔽。 ; ①CPU在当前指令执行结束时,响应中断,进入中断的响应周期; ②发出二个中断回答信号INTA完成一个中断响应周期 ③进行断点及标志保存 如:段地址(CS),偏移地址(IP)标志FR以及压入堆栈。 ④读取中断类型号,找到中???源; ⑤装入中断服务程序的入口地址(CS,IP); 3.中断服务 ①转入中断服务程序后,其服务程序的内容有: a.与CPU交换数据,进行I/O操作; b.外部期望CPU给以控制,进行参数修改。 ②在程序开头,将可能使用的寄存器内容进栈,即保护现场。 ③在服务程序的未尾,将入栈的寄存器内容弹出,即恢复现场。 ;4.中断返回 中断服务程序结束,执行中断返回。 ①自动将保存在堆栈中的标志PSW,断点(IP,CS)依次弹出并装入。 ②返回到中断前的地址(断点地址)开始继续执行主程序。 ;三、中断源、中断识别、优先级 中断源:发出中断请求的外设或引起中断的内部原因称为中断源。 中断识别:CPU响应中断后,只知道有中断请求但不知道是哪一个中断源,寻找中断源的操作过程称为中断识别。 中断识别的目的:形成该中断服务程序的入口地址。; CPU识别中断的方法: 二种: 向量中断 程序查询中断 向量中断:在CPU响应中断后,由中断控 制器将服务程序入口地址送到CPU。 查询中断:采用软件查询技术来确定发出 中断请求。;四、多重中断(中断嵌套);五、中断的软硬件系统 硬件:外设、中断控制器、CPU、总线控制器、BIOS 软件:OS、中断初始主程序、中断处理子程序 外设:发出中断请求(可以是边沿触发或电平触发)、数据输入输出、握手联络 中断控制器:中断请求的锁存、中断排队、中断屏蔽、提供中断向量、中断结束 CPU:中断检测、中断允许、状态输出(8288中断周期)、断点(FR、CS、IP)入栈、获得向量n、计算入口地址、取子程序CS/IP、转向执行子程序;; ; ;;2.中断向量,中断向量指针与中断类型号 中断向量:中断服务程序入口地址 中断向量指针: 指出中断向量存放在中断矢量表中的位置(或地址)。 ; 如:硬盘“1NT13H” 它的向量地址=0000:13H×4 =0000:004CH 004CH开始连续4个单元中用来存放“INT 13H”的中断向量 : ;5。2 80X86的中断系统;二、硬中断(见下表) 1.不可屏蔽中断NMI---通常用于处理紧急/灾难性事件 ①RAM奇偶校验错PCK ②I/O通道校验错I/O CHCK ③协处理器8087运算错INT 响应时间:在当前机器周期之后立即响应。 ; ;M;三.80X86的中断响应总线周期:; 中断响应总线周期时序波形图;§3. 8259A可编程中断控制器;8259A;INT; CPU; 2. 与外部硬件(中断源)连接部分: 中断请求寄存器(IRR)一片8259有8条INTR中断请求线 IR0~IR7,每一条请求线有一个对应的触发器来存放中断请求信号。 ; (3)中断屏蔽寄存器IMR的每一位可对IRR中相应的中断源进行屏蔽,如果禁止某IR提出中断请求,就将其中在IMR中的相应位量“1”。 IMR对于较低优先权的IR实行屏蔽并不影响较低优先权的IR的输入 ;中断屏蔽寄存器IMR; 8259的中断响应过程: 1。当有一条或多条中断请求引脚信号有效时(即IR7~0相应引脚为“1”)。 中断请求寄存器IRR的相应位被置为“1”。 2。若中断请求IR1线中至少有一个中断请求被允许,则8259通过INT引脚向CPU的INTR送出中断请求信号。 3。若CPU处于开中状态(IF=1)

文档评论(0)

开心就好 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档