第9章中断控制器_第1页
第9章中断控制器_第2页
第9章中断控制器_第3页
第9章中断控制器_第4页
第9章中断控制器_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

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

文档简介

1、第第9 9章章 中断中断n中断原理(概念)中断原理(概念)n中断系统组成及其功能中断系统组成及其功能n中断响应过程中断响应过程n中断识别和中断优先权中断识别和中断优先权n80868086中断系统中断系统n8086CPU8086CPU的中断管理的中断管理n可编程中断管理芯片可编程中断管理芯片8259A8259A概述 当当CPUCPU用查询的方式与外设交换信息时,用查询的方式与外设交换信息时,CPUCPU就要浪费很多时间去等待外设。这样就就要浪费很多时间去等待外设。这样就引出一个快速的引出一个快速的CPUCPU与慢速的外设之间数据与慢速的外设之间数据传送的矛盾,这也是计算机在发展过程中传送的矛盾,

2、这也是计算机在发展过程中遇到的严重问题之一。为解决这个问题,遇到的严重问题之一。为解决这个问题,一方面要提高外设的工作速度,另一方面一方面要提高外设的工作速度,另一方面发展了中断慨念。中断系统是计算机的重发展了中断慨念。中断系统是计算机的重要部件之一。要部件之一。 检测状态信号状态信号有效?外设处理外设处理检测状态信号主程序具有中断功能的具有中断功能的CPUCPU中,有一个硬件部件专中,有一个硬件部件专门用于检测外设的状态线。门用于检测外设的状态线。 在中断传送方式下,外设应有请求在中断传送方式下,外设应有请求CPUCPU服务的权利,当外部设备准备好向服务的权利,当外部设备准备好向CPUCPU

3、传送数据,或者外设已准备就绪接收传送数据,或者外设已准备就绪接收CPUCPU的数据,或者有某些紧急情况要求处的数据,或者有某些紧急情况要求处理,或者是定时时间到等等。这时,外理,或者是定时时间到等等。这时,外设向设向CPUCPU发出中断请求,发出中断请求,CPUCPU接收到请求接收到请求并在一定条件下,暂时停止执行原来的并在一定条件下,暂时停止执行原来的程序而转去中断处理,处理好中断服务程序而转去中断处理,处理好中断服务再返回来执行原来程序,这就是中断的再返回来执行原来程序,这就是中断的概念。概念。 9 91 1 中断原理中断原理 处理文档电话铃响暂停文档文档中作暂停记号电话交谈找出暂停记号位

4、置继续处理文档执行主程序(日常事务程序)中断申请信号有效(中断请求)暂停执行主程序响应中断当前PC及寄存器入栈(保护现场)处理外设要求(中断服务)寄存器及PC出栈(恢复现场及中断返回)继续执行主程序中断应用中断应用1 1、实时故障处理、实时故障处理存储器出错检测电路存储器出错检测电路 存储器奇偶检测电路奇偶位中断请求信号2 2、分时操作,同时处理、分时操作,同时处理 有了中断功能,有了中断功能,CPUCPU可命令多个外设同时工作。可命令多个外设同时工作。虽然虽然CPUCPU在不同的时间点上为不同的任务工作,但在不同的时间点上为不同的任务工作,但宏观上看宏观上看CPUCPU几乎同时为不同的任务工

5、作,极大地几乎同时为不同的任务工作,极大地发挥了发挥了CPUCPU高速性的特点。高速性的特点。 9 92 2 中断系统组成及其功能中断系统组成及其功能 一、一、 三个与中断有关的触发器三个与中断有关的触发器 1 1、中断请求触发器、中断请求触发器 有两个特点:有两个特点:(1 1)它的输出可以作为中断请求信号,在满足一定条)它的输出可以作为中断请求信号,在满足一定条件的情况下把信号发送给件的情况下把信号发送给CPUCPU,并在,并在CPUCPU未响应时一直未响应时一直保存下去;保存下去;(2 2)当)当CPUCPU满足一定条件下响应了该中断请求信号,满足一定条件下响应了该中断请求信号,执行了相

6、关的操作后,该中断请求信号可以被撤除。执行了相关的操作后,该中断请求信号可以被撤除。 D QRD状态线中断请求外设读、写操作 CLK+5V2 2、中断屏蔽触发器、中断屏蔽触发器 中断屏蔽触发器的功能就是决定中断请求触中断屏蔽触发器的功能就是决定中断请求触发器的输出信号是否可以作为中断请求信号发送发器的输出信号是否可以作为中断请求信号发送给给CPUCPU,这样,这样CPUCPU通过对中断屏蔽触发器的设置就通过对中断屏蔽触发器的设置就可以达到对中断源的控制。可以达到对中断源的控制。 屏蔽3 3、CPUCPU内部的中断允许触发器。内部的中断允许触发器。有些有些CPUCPU,比如,比如8086CPU8

7、086CPU,设置了两种中断类型,设置了两种中断类型可屏蔽中断和不可屏蔽中断。可屏蔽中断受中断可屏蔽中断和不可屏蔽中断。可屏蔽中断受中断允许触发器控制,只有当允许触发器控制,只有当IFIF为为1 1时,时,CPUCPU才能响应才能响应中断请求信号。而不可屏蔽中断不受中断允许触中断请求信号。而不可屏蔽中断不受中断允许触发器的控制,只要中断请求信号有效,不管发器的控制,只要中断请求信号有效,不管IFIF是是否为否为1 1,CPUCPU就必须响应。因此不可屏蔽中断的中就必须响应。因此不可屏蔽中断的中断优先级要大于可屏蔽中断的中断优先级断优先级要大于可屏蔽中断的中断优先级。 外设的中断请求信号要想发给

8、外设的中断请求信号要想发给CPUCPU并能最终得到并能最终得到CPUCPU的响应,必须要满足如下两个条件:一个是的响应,必须要满足如下两个条件:一个是中断屏蔽触发器处于非屏蔽状态。在这种情况中断屏蔽触发器处于非屏蔽状态。在这种情况下,中断请求信号才能发给下,中断请求信号才能发给CPUCPU。但。但CPUCPU是否是否响响应应这个中断,还要看中断允许触发器是否处于这个中断,还要看中断允许触发器是否处于开中断状态。只有开中断状态。只有CPUCPU是开中断的条件下,是开中断的条件下,CPUCPU才能进入中断响应过程,处理中断事务。这就才能进入中断响应过程,处理中断事务。这就是第二个条件。是第二个条件

9、。9.3 9.3 中断响应过程中断响应过程中断过程主要包括四个阶段:中断过程主要包括四个阶段:n外设发中断请求信号给外设发中断请求信号给CPUCPU即中断请求;即中断请求;nCPUCPU对中断请求信号所作出反应即中断响应;对中断请求信号所作出反应即中断响应;nCPUCPU执行对外设操作的子程序即中断处理。执行对外设操作的子程序即中断处理。n中断返回中断返回 一、中断申请一、中断申请 当中断屏蔽触发器状态为当中断屏蔽触发器状态为1 1,则中断请,则中断请求触发器输出的中断请求信号发给求触发器输出的中断请求信号发给CPUCPU。二、中断响应二、中断响应CPUCPU响应可屏蔽中断申请必须满足响应可屏

10、蔽中断申请必须满足3 3个条件个条件:无总线请求;无总线请求;CPUCPU被允许中断;被允许中断;CPUCPU执行完现行指令执行完现行指令 三、中断处理三、中断处理 CPUCPU响应中断后要自动完成三项任务响应中断后要自动完成三项任务1、关闭中断;2 2、CSCS、IPIP以及以及FRFR的内容推入堆栈的内容推入堆栈3 3、中断服务程序段地址送入、中断服务程序段地址送入CSCS中,偏移地中,偏移地址送入址送入IPIP中。中。 一旦一旦CPU响应中断,就可转入中断服响应中断,就可转入中断服务程序之中。中断服务程序的结构如下:务程序之中。中断服务程序的结构如下:pushax;保护现场;保护现场pu

11、shbxsti;开中断;开中断;中断处理;中断处理cli;关中断;关中断popbx;恢复现场;恢复现场popaxsti;开中断;开中断reti;中断返回;中断返回9.4 9.4 中断源识别及中断优先权中断源识别及中断优先权在中断系统中一个非常关键的问题是在中断系统中一个非常关键的问题是CPUCPU如何知道是哪一个中断源发出的中断申请信如何知道是哪一个中断源发出的中断申请信号。只有正确地确定中断源,号。只有正确地确定中断源,CPUCPU才能转到才能转到相应的中断服务程序为之服务。确定中断源相应的中断服务程序为之服务。确定中断源的方法被称为中断源识别。的方法被称为中断源识别。 1 1、中断源识别、

12、中断源识别包括两个方面:包括两个方面:n确定中断源。确定中断源。n找到该中断服务程序的首地址。找到该中断服务程序的首地址。下面我们给出解决问题的两种方案:下面我们给出解决问题的两种方案:(1)查询中断)查询中断INAL,IPORT;从输入接口取中断信息;从输入接口取中断信息TESTAL,80H;是;是0号设备请求吗号设备请求吗?JNZSEVO;是,转;是,转0号设备服务程序号设备服务程序TESTAL,40H;否,是;否,是1号设备请求吗号设备请求吗?JNZSEVl;是,转;是,转1号设备服务程序号设备服务程序TESTAL,20H;否,是;否,是2号设备请求吗号设备请求吗?JNZSEV2;是,转

13、;是,转2号设备服务程序号设备服务程序TESTAL,10H;否,是;否,是3号设备请求吗号设备请求吗?JNZSEV3;是,转;是,转3号设备服务程序号设备服务程序(2 2)矢量中断)矢量中断 中断申请信号和中中断申请信号和中断响应信号是一对握手断响应信号是一对握手信号。在驱动一个中断信号。在驱动一个中断事件过程中,中断请求事件过程中,中断请求信号是外设发给信号是外设发给CPUCPU的,的,当其有效时,表示外设当其有效时,表示外设请求请求CPUCPU为之服务。而中为之服务。而中断响应信号是断响应信号是CPUCPU发给外发给外设的,当其有效时,表设的,当其有效时,表明明CPUCPU可以为这个外设服

14、可以为这个外设服务,同时要求外设提供务,同时要求外设提供中断类型号。中断类型号。矢量中断矢量中断 7 74 4L LS S2 24 45 5D QCLKRDA7A6A5A4A3A2A1A0+5V中断申请接CPU的D7D0INTAINTR2 2、 中断优先权中断优先权(1 1)软件方案)软件方案 软件查询确定优先权的缺点是,响应中断慢。软件查询确定优先权的缺点是,响应中断慢。 (2 2)、硬件方案)、硬件方案n链形电路链形电路 这种方法是利用外设在系统中的物理位置来决这种方法是利用外设在系统中的物理位置来决定其中断优先权的定其中断优先权的 n编码电路编码电路 74LSl4874LSl48是一个是

15、一个8 8到到3 3线的优先权编码器,它是线的优先权编码器,它是一个一个1616个管脚双列直插式个管脚双列直插式TTLTTL器件器件 7 74 4L LS S2 24 45 5D QCLKRDA7A6A5A4A3A2A1A0TCSB7B6B5B4B3B2B1B0+5V接CPU的D7D0INTAINTR7 74 4L LS S1 14 48 8I7I6I5I4I3I2I1I0A2A1A0INT7INT6INT5INT4INT3INT2INT1INT09 95 80865 8086中断系统中断系统 一、一、80868086的中断源的中断源 80868086中断系统有两大类型的中断源,一类中断系统有

16、两大类型的中断源,一类是由外部设备产生的中断,我们称之为硬件中是由外部设备产生的中断,我们称之为硬件中断,硬件中断有时又称外中断。另一类是由指断,硬件中断有时又称外中断。另一类是由指令在某种运行结果时产生的中断,我们称之为令在某种运行结果时产生的中断,我们称之为软件中断。另外对于硬件中断,又分为不可屏软件中断。另外对于硬件中断,又分为不可屏蔽中断和可屏蔽中断,硬件中断是通过蔽中断和可屏蔽中断,硬件中断是通过CPUCPU芯芯片的片的INTRINTR管脚或管脚或NMINMI管脚从外部引入的。管脚从外部引入的。 中断类型号和中断服务子程序的入口地址之中断类型号和中断服务子程序的入口地址之间的关系:间

17、的关系: n8086的中断系统采用向量中断向量中断机制n一共可处理256个中断,采用中断向量编号0255,对256个中断加以区别n可屏蔽中断需借助专用的中断控制器 Intel 8259A对系统中的可屏蔽中断源进行管理:n扩充系统的可屏蔽中断资源,并管理它们:n实现中断优先权比较n实现中断源的识别中断逻辑中断逻辑INTO指令指令单步单步中断中断除法除法错误错误INT N指令指令CPUNMI8259A中断中断控制器控制器IR0IR1IR2IR3IR4IR5IR6IR7外外设设中中断断源源 -INTA可屏蔽中断申请可屏蔽中断申请 INTR不可屏蔽中断申请不可屏蔽中断申请可屏蔽中断源可屏蔽中断源不可屏

18、蔽中断源不可屏蔽中断源内部中断内部中断中断类型号n40000:4n+00000:4n+10000:4n+20000:4n+30010002010002000IPCS内存二、不可屏蔽中断二、不可屏蔽中断所谓不可屏蔽中断就是用户不能通过所谓不可屏蔽中断就是用户不能通过CPUCPU内的中断允许触发器内的中断允许触发器IFIF控制的中断,控制的中断,由由8086CPU8086CPU的的NMINMI管脚引入。管脚引入。NMINMI中断请求中断请求采用上升沿触发方式,这种中断一旦产采用上升沿触发方式,这种中断一旦产生,在生,在CPUCPU内部直接生成中断类型号内部直接生成中断类型号0202。 0000:4

19、*2+00000:4*2+10000:4*2+20000:4*2+30010002010002000IPCS内存IF0IP,CS,FR进栈IP=2*4+0CS=2*4+2三、三、 可屏蔽中断可屏蔽中断 可屏蔽中断就是用户可以控制的中断,可屏蔽中断就是用户可以控制的中断,其途径是通过对其途径是通过对CPUCPU内的中断允许触发器内的中断允许触发器IFIF的设置来禁止和允许的设置来禁止和允许CPUCPU响应中断。可屏蔽响应中断。可屏蔽中断由中断由8086CPU8086CPU的的INTRINTR管脚引入。这种中断管脚引入。这种中断请求需要设备提供中断类型号,请求需要设备提供中断类型号,CPUCPU响

20、应中响应中断后,取中断类型号的断后,取中断类型号的4 4倍作为中断服务入倍作为中断服务入口地址表的地址,通过查表得到相应的中口地址表的地址,通过查表得到相应的中断服务程序首地址,转去执行相应的中断断服务程序首地址,转去执行相应的中断服务程序。服务程序。 0000:4*n+00000:4*n+10000:4*n+20000:4*n+30010002010002000内存IF0IP,CS,FR进栈IP=2*n+0CS=2*n+2取中断类型号n四、软件中断四、软件中断软件中断是由中断指令引起的。中断指令软件中断是由中断指令引起的。中断指令的指令格式为的指令格式为 INT nINT n,操作数,操作数

21、n n就是中断类就是中断类型号。当型号。当CPUCPU执行完毕中断指令执行完毕中断指令INT nINT n后,就后,就会立即产生一个中断类型号为会立即产生一个中断类型号为n的中断。的中断。(1)(1)除法中断除法中断 当进行除法运算时,若除数为当进行除法运算时,若除数为0 0或除数太或除数太小,使得商数大于相应寄存器所能表示的最小,使得商数大于相应寄存器所能表示的最大值,被称作除法出错。这时除法指令就相大值,被称作除法出错。这时除法指令就相当于一个中断源,它向当于一个中断源,它向CPUCPU发出类型发出类型0 0中断。中断。 (2) (2) 溢出中断溢出中断当算术运算产生溢出时,将在当算术运算

22、产生溢出时,将在INTOINTO指令控制下指令控制下向向CPUCPU发出类型发出类型4 4的中断,即溢出中断。的中断,即溢出中断。(3)(3)单步中断和断点中断单步中断和断点中断n单步中断单步中断当当8086CPU8086CPU的标志寄存器中的的标志寄存器中的TFTF标志为标志为1 1时,时,8086CPU8086CPU处于单步工作方式,这时处于单步工作方式,这时CPUCPU在每条指令在每条指令执行后自动产生类型执行后自动产生类型l l的中断。的中断。n断点中断断点中断 INT3INT3指令是指令是1 1字节指令,可将这条指令的目字节指令,可将这条指令的目的代码嵌入任意条指令的操作码处,从而实

23、现断的代码嵌入任意条指令的操作码处,从而实现断点中断。点中断。 五、中断概念的再讨论五、中断概念的再讨论1 1、中断与调子程序之间的关系、中断与调子程序之间的关系 (1)(1)中断过程实际上是中断过程实际上是CPUCPU从执行当前主程序转到执从执行当前主程序转到执行为外设服务的子程序,因此从这个角度来看,行为外设服务的子程序,因此从这个角度来看,中断过程是一个调用子程序的过程。中断过程是一个调用子程序的过程。(2)(2)中断过程与子程序调用还是有很大差别的:中断过程与子程序调用还是有很大差别的:n调用子程序的过程是一个无条件过程,但中断过调用子程序的过程是一个无条件过程,但中断过程的中断服务程

24、序的调用一般是有条件的。程的中断服务程序的调用一般是有条件的。n子程序调用在整个程序执行中的位置是固定的。子程序调用在整个程序执行中的位置是固定的。但对于硬件中断过程,只要条件满足,在整个程但对于硬件中断过程,只要条件满足,在整个程序执行的任意一时间点都有可能发生从主程序向序执行的任意一时间点都有可能发生从主程序向中断服务子程序的转移事件,也就是说硬件中断中断服务子程序的转移事件,也就是说硬件中断产生的调用过程是随机的,不可预测的。产生的调用过程是随机的,不可预测的。 2 2、外部中断和、外部中断和 INT n INT n 之间的关系之间的关系 结合中断指令结合中断指令INT nINT n,我

25、们可以这样理解,我们可以这样理解外部中断:当外部中断源发中断给外部中断:当外部中断源发中断给CPUCPU时,如时,如果果CPUCPU满足一定的条件,处于开中断状态,满足一定的条件,处于开中断状态,CPUCPU就可以响应中断,这时外设在就可以响应中断,这时外设在CPUCPU正在执正在执行指令与其下一个指令之间,等效行指令与其下一个指令之间,等效“插入插入”了一个了一个INT nINT n指令,这里的指令,这里的n n就是外设提供的就是外设提供的中断类型号。注意这里用中断类型号。注意这里用“等效等效”两字表示两字表示实际过程中是不存在插入实际过程中是不存在插入INT nINT n指令的操作,指令的

26、操作,但但CPUCPU确实完成了类似确实完成了类似INT nINT n指令的功能,实指令的功能,实现了主程序向中断程序的转移。现了主程序向中断程序的转移。 9 96 8086CPU6 8086CPU的中断管理的中断管理一、一、8086CPU8086CPU的中断处理顺序的中断处理顺序 8086CPU8086CPU的中断优先权排列从高到低为:的中断优先权排列从高到低为:n1、除法出错中断,溢出中断,、除法出错中断,溢出中断,INT nINT n;n2 2、NMlNMl;n3 3、INTRINTR;n4 4、单步中断。、单步中断。 二、二、8086CPU8086CPU的中断向量表的中断向量表 三、三

27、、 中断入口地址设置中断入口地址设置1 1、用串指令用串指令 CLICLI;关中断;关中断MOV AX,0MOV AX,0MOV ES,AXMOV ES,AX;置附加段基地址为;置附加段基地址为0 0MOV DI, nMOV DI, n* *4 4;置附加段偏移地址到;置附加段偏移地址到DIDIMOV AX,OFFSET INT_VCEMOV AX,OFFSET INT_VCE;置中断程序首地址的偏移量到;置中断程序首地址的偏移量到AXAXCLDCLDSTOSWSTOSW;填偏移量到中断地址表;填偏移量到中断地址表MOV AX, SEG INT_VCEMOV AX, SEG INT_VCE;置

28、中断程序的段基地址到;置中断程序的段基地址到AXAXSTOSWSTOSW;填段基地址到中断地址表;填段基地址到中断地址表STISTI;开中断;开中断 2 2、用伪指令、用伪指令 INTINTTBLTBLSEGMENT AT 0 SEGMENT AT 0 ;定义;定义INTINTTBLTBL段,段基地址为段,段基地址为0 0 ORG nORG n* *4 4;指定偏移地址;指定偏移地址 DD INTDD INTVCEVCE;存中断程序入口地址;存中断程序入口地址INTINTTBL TBL ENDSENDS ;其他处理;其他处理 MCODE MCODE SEGMENTSEGMENT;主程序;主程序

29、 ;其他处理;其他处理 INTINTVCE PROC FARVCE PROC FAR;中断服务程序;中断服务程序 IRETIRETINTINTVCEVCEENDPENDP 3 3、用系统调用、用系统调用使用使用DOS功能调用的功能调用的25H25H功能功能要求:要求:ALAL中断类型号中断类型号DSDS:DXDX中断服务程序首地址的段、偏移地中断服务程序首地址的段、偏移地址址 PUSHDSMOVDX,SEGINT60H;段基地址送;段基地址送DSMOVDS,DXMOVDX,OFFSETINT60H ;偏移地址送;偏移地址送DXMOVAL,60H;中断类型号送;中断类型号送ALMOVAH,25H

30、INT21H;25H功能调用功能调用POPDS4 4、直接装入法、直接装入法 若外设的中断类型号为若外设的中断类型号为6BH6BH,则此中断类型,则此中断类型号对应的中断矢量表地址为从号对应的中断矢量表地址为从00lACH00lACH开始的开始的四个存储单元设中断服务程序段地址是四个存储单元设中断服务程序段地址是1000H1000H,偏移地址为,偏移地址为2000H2000H。 MOVAX,,0MOVDS,AX;置数据段段基地址为;置数据段段基地址为0MOVAX,2000HMOVWORDPTR01ACH,AX;对偏移地址为;对偏移地址为01AC的单元的单元MOVAX1000H ;送双字;送双字

31、MOVWORDPTR01ACH+2,AXn8086微机的中断管理着三种中断源:n(1)内部中断源n(2)非屏蔽中断NMIn(3)可屏蔽中断INTRn其中可屏蔽中断源由8259A中断控制器进行管理, 之后向CPU发出INTR中断请求。9 97 7 可编程中断管理芯片可编程中断管理芯片8259A8259A8259的基本功能:n能接收外部的中断请求,并进行判断n送出对应中断源的中断类别号 n中断嵌套n中断屏蔽或允许。n允许两级级联形成主从结构。 VCC A0 INTA IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 INT SP/EN CAS2CS WR RD D7 D6 D5 D4

32、 D3 D2 D1 D0 CAS0 CAS1 GND1 8259A 28 2 27 3 26 4 25 5 24 6 23 7 22 8 21 9 20 10 19 11 18 12 17 13 16 14 15一、一、8259A8259A的外部特性的外部特性n1片8259A能管理8级中断(8个中断源)。n可由9片8259A构成64级的主从式中断管理系统。8259级联工作示意图CAS0 IR0CAS1 IR1CAS2 IR2 IR3-INTA IR4 IR5INT IR6 IR7-SP/-EN CAS0-INTA CAS1 CAS2INT IR0 IR1-SP/-EN IR7CAS0 IR0C

33、AS1 IR1CAS2 IR2 IR3-INTA IR4 IR5INT IR6 IR7-SP/-EN-INTAINTR+5V输出得到响应输出得到响应的从片编号的从片编号D7D0INTAINT中断请求寄存器中断请求寄存器中断屏蔽寄存器中断屏蔽寄存器数据数据总线总线缓冲器缓冲器IR0IR7读读/写写控制控制逻辑逻辑级联级联缓冲器缓冲器比较器比较器RDWRA0CSCAS0CSA1CAS2SP/EN优先权判别电路优先权判别电路中断服务寄存器中断服务寄存器控制逻辑控制逻辑IRRPRISRIMR二、二、8259A8259A的内部结构的内部结构三、三、8259A8259A的编程结构的编程结构处理部分处理部分

34、编程部分编程部分 8259A控制寄存器及I/O端口的识别8259A读写操作及地址CSRDWRA0功能8259A端口PC/XT机端口0010读IRR,ISR偶地址20H0011读IMR奇地址21H0100写ICW1,OCW2,OCW3偶地址20H0101写ICW2,ICW3,ICW4,OCW1奇地址21H011无操作 1无操作 n8259A可以编程设置各种不同的工作方式可以编程设置各种不同的工作方式n优先级方式(优先级方式(4种)种)n屏蔽中断源的方式(屏蔽中断源的方式(2种)种)n结束中断的方式(结束中断的方式(3种)种)n连接系统数据总线的方式(连接系统数据总线的方式(2种)种)n引入中断请

35、求的触发方式(引入中断请求的触发方式(3种)种)1 1、中断优先权管理、中断优先权管理 (1 1)完全嵌套方式)完全嵌套方式 8259A8259A的中断请求输入端引入的中断具有固的中断请求输入端引入的中断具有固定的优先权排队顺序,定的优先权排队顺序,IRIR0 0为最高优先级,为最高优先级,IRIR1 1为次高优先级,依次类推,为次高优先级,依次类推,IRIR7 7为最低优先级。为最低优先级。(2 2)特殊完全嵌套方式)特殊完全嵌套方式 用在用在8259A8259A有级联的情况有级联的情况(3 3)优先级自动循环方式)优先级自动循环方式 从从IRIR0 0IRIR7 7引入的中断轮流具有最高优

36、先权。引入的中断轮流具有最高优先权。 (4 4)优先级特殊循环方式)优先级特殊循环方式2 2、中断屏蔽方式、中断屏蔽方式n普通屏蔽方式: 通过IMR设置,0允许,1屏蔽 n特殊屏蔽方式(允许发生低级的中断嵌套)3 3、 8259A8259A中断结束的方式(中断结束的方式(EOIEOI命令)命令) n中断自动结束方式n一般的中断结束方式n特殊的中断结束方式4 4、连接系统数据总线的方式、连接系统数据总线的方式缓冲方式:8259A通过总线驱动器和数据总线相连,这就是缓冲方式。n8259A的数据线需加缓冲器予以驱动n8259A把SP*/EN*引脚作为输出端,输出允许信号,用以锁存或开启缓冲器非缓冲方

37、式:当系统中只有单片8259A时,一般将它直接与数据总线相连。 nSP*/EN*引脚为输入端n若8259A级连,由其确定是主片或从片5 5、引入中断请求的触发方式、引入中断请求的触发方式n边沿触发方式 (上升沿有效)n电平触发方式 (高电平有效)n中断查询方式初始化命令字初始化命令字ICWnICW1nICW2nICW3nICW4n 初始化命令字的编程顺序ICW1命令字 芯片控制初始化命令字芯片控制初始化命令字 ,必须写入偶地址端口必须写入偶地址端口 A0 A0 D7 D7 D6 D5 D6 D5 D4 D3 D4 D3 D2 D2 D1 D1 D0 D0 0 0 1 1:要:要 ICW4ICW

38、4 0 0:不要:不要ICW4ICW4 1 1:单片方式:单片方式 0 0:级连方式:级连方式 偶地址端口偶地址端口 8086/80888086/8088系统不用系统不用 特征位特征位 1 1:电平触发:电平触发 0 0:边沿触发:边沿触发 X X X 1 LTIM ADI SNGL IC4 8086/80888086/8088系系统无意义统无意义8086/80888086/8088系统必须为系统必须为1 1(1) ICW1的格式和含义的格式和含义 ICW2命令字用来设定用来设定中断类型码中断类型码,必须奇地址端口(,必须奇地址端口(A0=1) A0 A0 D7 D7 D6 D6 D5 D5

39、D4 D4 D3 D3 D2 D2 D1 D1 D0 D0 1 1 中断类型号的高中断类型号的高5 5位位由用户编程确定由用户编程确定 8259A8259A自动填入自动填入 T7 T6 T5 T4 T3 0 0 0 000:IR0001:IR1、111:IR7奇地址端口奇地址端口(2) ICW2ICW3命令字设定主片设定主片/从片标志,从片标志,奇地址奇地址端口,只有多片级联时端口,只有多片级联时才设置。才设置。主片的主片的ICW3 ICW3 如下:如下: 1 :IRi输入引脚接从片的输入引脚接从片的INT 0:-IRi输入引脚未接从片的输入引脚未接从片的INT A0 A0 D7 D7 D6

40、D6 D5 D5 D4 D4 D3 D3 D2 D2 D1D1 D0 D0 IR3IR3 IR2IR2 IR1IR1 IR0IR0 IR4IR4 IR5IR5 IR6IR6 IR7IR7 1 1 奇地址端口奇地址端口(3) ICW3的格式和含义的格式和含义 ICW3命令字设定主片设定主片/从片标志,从片标志,奇地址奇地址端口,只有多片级联时端口,只有多片级联时才设置。才设置。从片的从片的ICW3 ICW3 如下:如下: A0 A0 D7 D7 D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1D1 D0 D0 0 0 ID2ID2ID1ID1 ID0ID00 0 0 0 0 0

41、0 01 1 奇地址端口奇地址端口ICW4命令字 方式控制初始化命令字,必须填入方式控制初始化命令字,必须填入奇地址奇地址端口端口 1 1- -8088/8086CPU8088/8086CPU 0 0- -8080/80858080/8085CPUCPU 1 1- -自动自动 EOIEOI 方式方式 0 0- -非自动非自动 EOIEOI 方式方式 1 1- -特殊完全嵌套方式特殊完全嵌套方式 0 0- -一般完全嵌套方式一般完全嵌套方式 0 0 X 非缓冲方式非缓冲方式 1 1 0 0 缓冲方式从片缓冲方式从片 1 1 1 1 缓冲方式主片缓冲方式主片 A0 A0 D7 D7 D6 D6 D

42、5 D5 D4 D4 D3 D3 D2 D2 D1 D0 D1 D0 1 1 0 0 0 SFNM BUF M/S AEOI 0 0 0 SFNM BUF M/S AEOI uPMuPM (4) ICW4的格式和含义的格式和含义 8086CPU中8259A初始化命令字的顺序必须按顺序写入ICW1(偶地址端口)ICW2(奇地址端口)是级联方式吗?主或从片ICW3 (奇地址端口)ICW4 (奇地址端口)结束YN ICW1写入偶端口,ICW2ICW4写入奇端口 ICW1ICW4的设置次序固定 ICW1和ICW2须设置,ICW3和ICW4非必须 在级联时,主片和从片各设置ICW3对对8259A设置初始

43、化命令字的例子设置初始化命令字的例子 MOV AL,13HOUT 80H,AL;设置ICW1MOV AL,18HOUT 81H,AL;设置ICW2MOV AL,0DHOUT 81H,AL;设置ICW4 操作命令字操作命令字OCWn OCW1n OCW2n OCW3 中断屏蔽操作命令字,要求写入奇地址端口中断屏蔽操作命令字,要求写入奇地址端口 1 1:输入引脚对应中断请求受到屏蔽:输入引脚对应中断请求受到屏蔽 0 0:输入引脚对应中断请求得到允许:输入引脚对应中断请求得到允许 A0 A0 D7 D7 D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1D1 D0 D0 M3M3 M2

44、M2 M1M1 M0M0 M4M4 M5M5 M6M6M7M71 1 (1) OCW1的格式和含义的格式和含义 OCW2命令字 优先级循环方式和中断结束方式操作命令字,写入偶地址端口优先级循环方式和中断结束方式操作命令字,写入偶地址端口 由由R R、SLSL、EOIEOI组合实现组合实现 A0 A0 D7 D7 D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1D1 D0 D0 0 0 L2L2 L1L1 L0L0 0 0 EOIEOI SLSL R R 0 1:优先级循环:优先级循环0:固定优先级:固定优先级1:L2L0有效有效0:L2L0无效无效 1:发中断结束命令:发中断结

45、束命令0:不发中断结束命令:不发中断结束命令标标志志位位 指定中断源,指定中断源,0 0 0: IR0、1 1 1:IR7 优先级时代表优先级时代表最低级最低级(2) OCW2的格式和含义的格式和含义 OCW2的总结的总结RSLEOI 功能功能100设置优先级自动循环方式设置优先级自动循环方式000结束优先级自动循环方式结束优先级自动循环方式110设置特殊优先级循环方式设置特殊优先级循环方式101发中断结束命令,并用优先级自动循环方式发中断结束命令,并用优先级自动循环方式111发中断结束命令,并用特殊优先级循环方式发中断结束命令,并用特殊优先级循环方式011特殊中断结束命令特殊中断结束命令00

46、1一般中断结束方式一般中断结束方式010无效无效(3) OCW3的格式和功能的格式和功能 功能:(1)设置和撤销特殊屏蔽方式(2)设置中断查询方式(3)设置对内部寄存器的读出命令 OCW3命令字 三部分功能三部分功能特殊屏蔽方式、中断查询方式、读特殊屏蔽方式、中断查询方式、读IRR/ISRIRR/ISR命令字命令字 A0 A0 D7 D7 D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1D1 D0 D0 1 1 P P RRRR RISRIS 0 0 SMMSMM ESMMESMM 0 0 0 0X:无效:无效10:取消特殊屏蔽方式:取消特殊屏蔽方式11:设置特殊屏蔽方式:设置特殊屏蔽方式 标志标志位位 0X:无效:无效10:准备读:准备读IRR11:准备读:准备读ISR 1:中断查询工作方式:中断查询工作方式0:不查询:不查询 OCW3命令字(中断查询)查询功能:查询功能:CPU输出查询命令输出查询命令0CH,再执行一条,再执行一条IN指令,读入查询字指令,读入查询字 A0 A0 D7 D7 D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1D1 D0 D0 X X W2W2 W1W1 W0W0 X X X X X X IRIR 0 1:

温馨提示

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

评论

0/150

提交评论