第6章-微型计算机的中断系统_第1页
第6章-微型计算机的中断系统_第2页
第6章-微型计算机的中断系统_第3页
第6章-微型计算机的中断系统_第4页
第6章-微型计算机的中断系统_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上习 题 61 什么叫中断?有哪几种不同类型的中断?由于某个事件的发生,CPU暂停当前正在执行的程序,转而执行处理该事件的一个程序。该程序执行完成后,CPU接着执行被暂停的程序。这个过程称为中断。根据中断源的位置,有两种类型的中断。有的中断源在CPU的内部,称为内部中断。大多数的中断源在CPU的外部,称为外部中断。根据中断引脚的不同,或者CPU响应中断的不同条件,也可以把中断划分为可屏蔽中断和不可屏蔽中断两种。 2 什么是中断类型?它有什么用处?用若干位二进制表示的中断源的编号,称为中断类型。中断类型用来区分不同的中断,使CPU能够在中断响应时调出对应的中断服务程序进行

2、中断处理。3 有哪几种确定中断优先级的方法?说明每一种方法各自的优劣之处。确定中断优先权有四种可选的方法。(1) 软件查询法:采用程序查询的方法确定中断服务的顺序。这种方法中断逻辑最简单(基本上不需要外部中断逻辑),优先级可以灵活设置,但中断响应所需时间最长。(2) 分类申请法:CPU分设二个中断申请信号的输入引脚。这种方法需要CPU提供条件。(3) 链式优先权排队:菊花链法。这种方法需要的外部中断逻辑比较简单,容易实现,但是设备较多时信号延迟大,对设备故障敏感。(4) 可编程中断控制器: “向量”优先权排队专用电路。这种方法功能最全面,控制灵活,可以通过程序设定中断优先权为固定的或循环的,但

3、需要增加专用的中断控制器。4 什么是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件是什么?CPU在处理级别较低的中断过程中,出现了级别较高的中断请求。CPU停止执行低级别中断的处理程序而去优先处理高级别中断,等高级别中断处理完毕后,再接着执行低级别的未处理完的中断处理程序,这种中断处理方式称为多重(级)中断或中断嵌套。使用中断嵌套可以使高优先级别的中断得到及时的响应和处理。对于可屏蔽中断,由于CPU在响应中断时已将IF清零,所以一定要在中断处理程序中加入开中断指令,才有可能进行中断嵌套。5 什么叫中断屏蔽?如何设置I/O接口的中断屏蔽?用程序的方法使某些中断源的中断请求不

4、能够发送到CPU,或者虽然能够发送但是不能得到响应,这种方法称为中断屏蔽。在外设的接口内增设一个中断屏蔽触发器(可以用D触发器实现),该触发器的端与中断请求信号相“与”后连接到INTR。当 = 0时,中断请求不能发往INTR。通过设定中断屏蔽触发器的状态,可以控制中断请求信号是否能够送到INTR端。置IF= 0, 可以使80x86CPU不响应来自INTR的可屏蔽中断请求。6 什么是中断向量?中断类型为1FH的中断向量为2345H:1234H,画图说明它在中断向量表中的安置位置。中断服务程序的入口地址称为中断向量。中断类型为1FH,它的中断向量放置在1FH4=0000: 7CH开始的位置上。如右

5、图。7 叙述一次可屏蔽中断的全过程。(1) 中断源请求中断外部中断源通过INTR引脚向CPU请求中断。(2) 中断响应 中断源提出中断请求后,如果 CPU处于允许中断状态(IF=1); 没有不可屏蔽中断请求和总线请求; 当前指令执行结束。则转入中断响应周期。在中断响应周期: CPU取得中断源的中断类型; 将标志寄存器FLAGS和CS、IP(断点)先后压入堆栈保存; 清除自陷标志位TF和中断允许标志位IF; 读中断向量表,获得相应的中断服务程序入口地址,转入中断服务程序。(3) 中断服务 中断服务程序的主要内容包括: 保护现场 开中断 中断处理 关中断 恢复现场 (4)中断返回 8 简要叙述82

6、59A内部IRR, IMR, ISR三个寄存器各自的作用。三个寄存器长度均为8位。IRR用来记录引脚IR7IR0上由外部设备送来的中断请求信号。当外部中断请求线IRi变为有效时,IRR中与之对应的第i位被置1。IMR用于设置对中断请求的屏蔽信号。此寄存器的第i位被置1时,与之对应的外部中断请求线IRi被屏蔽,不能向CPU发出INT信号。可通过软件设置IMR内容,确定每一个中断请求的屏蔽状态。ISR用于记录当前正在被服务的所有中断级,包括尚未服务完而中途被更高优先级打断的中断级。若CPU响应了IRi中断请求,则ISR中与之对应的第i位置1。ISR用于中断优先级管理。9 8259A是怎样进行中断优

7、先权管理的?8259A通过以下两种途径实现对中断优先权的管理:(1) 通过设置中断屏蔽寄存器IMR,可以屏蔽某些中断请求,从而动态地改变各请求端的优先级别。(2) 8259A响应某个中断请求之后,将ISR寄存器对应位置1。如果后续的中断请求级别低于正在响应的中断请求,则该中断不能立即被响应。反之,如果新的中断请求级别高于正在响应的中断请求,则允许进行中断嵌套。中断服务结束时,应将ISR寄存器对应位清零。10 特殊全嵌套方式有什么特点?它的使用场合是什么?特殊全嵌套方式一般用于级联方式下的8259A主片。如果8259A主片在一次中断处理尚未结束时,收到了来自同一个引脚的第二次中断请求,并且该82

8、59A采用普通全嵌套方式,则它不会响应来自同一个引脚的第二次中断请求。如果该8259A采用特殊全嵌套方式,就会响应该请求(中断嵌套),从而可以及时响应连接在同一从片8259A上,并且相对有较高优先级别的中断请求。11 向8259A发送“中断结束”命令有什么作用?8259A有哪几种中断结束方式?分析各自的利弊。中断服务完成时,必须给8259A一个命令,使这个中断级别在ISR中的相应位清“0”,表示该中断处理已经结束,允许响应新的较低级别的中断。这个命令称为“中断结束”命令。8259A有两种不同的中断结束方式。(1)自动中断结束方式(AEOI) 8259A在中断响应周期内自动清除ISR中对应位。这

9、种方式使用简单,但是不能充分实现中断的优先权管理。这种方式只能用在系统中只有一个8259A,且多个中断不会嵌套的情况。(2)非自动中断结束方式(EOI)从中断服务程序返回前,在程序里向8259A输出一个中断结束命令(EOI),把ISR对应位清“0”。这种方式可以有效地实现中断优先权的管理,从而保证高优先级的中断可以得到及时响应。但是,如果在程序里忘了将ISR对应位清零,那么,8259A将不再响应这个中断以及比它级别低的中断请求。12 某系统中有两片8259A,从片的请求信号连主片的IR2引脚,设备A中断请求信号连从片IR5引脚。说明设备A在一次I/O操作完成后通过两片8259A向8086申请中

10、断,8086CPU通过两片8259A响应中断,进入设备A中断服务程序,发送中断结束命令,返回断点的全过程。 设备A通过从片IR5引脚向从片发出中断请求; 从片将IRR5置“1”,并通过INT(与主片IR2相连)向主片发出中断请求; 主片将IRR2置“1”,通过INT(与CPU的INTR相连)向CPU发出中断请求; CPU通过第一个向主片和从片响应中断请求; 主片8259A在CAS0CAS2上发出代码“010”,表示连接在IR2上的从片中断被响应,同时主片还把本片ISR2置“1”,把本片IRR2清“0”; 从片收到第一个和主片CAS0CAS2上发来的010代码后,将本片ISR5置“1”,同时把本

11、片IRR5清“0”。收到第二个后,将本片IRR5对应的中断类型通过数据总线发往CPU; CPU进入设备A的中断服务程序,在程序中先后对主片和从片发出中断结束命令,两个芯片内的ISR2和ISR5先后被清零。 中断服务结束,返回断点继续执行。13 某8086系统用3片8259A级联构成中断系统,主片中断类型号从10H开始。从片的中断申请连主片的IR4和IR6引脚,它们的中断类型号分别从20H、30H开始。主、从片采用电平触发,嵌套方式,普通中断结束方式。请编写它们的初始化程序。假设主片端口地址为10H,12H。从片的端口地址分别为 18H, 1AH和 1CH, 1EH。MOVAL, B;主片ICW

12、1OUT10H, AL;电平触发,级连方式MOVAL, 10H;主片ICW2OUT12H,AL;主片中断类型MOVAL, B;主片ICW3OUT12H, AL;IR4,IR6连有从片MOVAL, B;主片ICW4OUT12H, AL;特殊全嵌套,非自动中断结束MOVAL, B;从片ICW1OUT18H, AL;电平触发,级连方式MOVAL, 20H;从片ICW2OUT1AH,AL;从片中断类型MOVAL, B;从片ICW3OUT1AH, AL;本片连接在主片IR4引脚上MOVAL, B;从片ICW4OUT1AH, AL;非特殊全嵌套,非自动中断结束MOVAL, B;从片ICW1OUT1CH,

13、AL;电平触发,级连方式MOVAL, 30H;从片ICW2OUT1EH,AL;从片中断类型MOVAL, B;从片ICW3OUT1EH, AL;本片连接在主片IR6引脚上MOVAL, B;从片ICW4OUT1EH, AL;非特殊全嵌套,非自动中断结束注意:(1) 由于8086系统有16根数据线,各8259A的端口地址均为偶数(假设各8259A的数据线连接在8086系统的低8位数据线上)。(2) 主片用特殊全嵌套,从片用一般全嵌套。14 给下面的8259A初始化程序加上注释,说明各命令字的含义。MOVAL, 13H;ICW1: 边沿触发,单片8259AOUT50H, AL;MOVAL, 08H;ICW2: 中断类型高5位为00001OUT51H, AL;MOVAL, 0BH;ICW4: 非特殊全嵌套,缓冲方式,主片,非自动中断结束OUT51H, AL;15 设8259A端口地址为20H和21H,怎样发送清除ISR3的命令?为了清除ISR3,需要通过OCW2发送特殊的中断结束命令,使SL=1, EOI=1, L2L1L0=011。指令如下:MOVAL, BOUT20H, AL16 图6-17能否直接用于8086系统?为什么?图6-17不能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论