微机原理与接口技术-周荷琴第五版课件-微型计算机的中断系统PPT_第1页
微机原理与接口技术-周荷琴第五版课件-微型计算机的中断系统PPT_第2页
微机原理与接口技术-周荷琴第五版课件-微型计算机的中断系统PPT_第3页
微机原理与接口技术-周荷琴第五版课件-微型计算机的中断系统PPT_第4页
微机原理与接口技术-周荷琴第五版课件-微型计算机的中断系统PPT_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

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

文档简介

1、1微型计算机原理及其应用微型计算机原理及其应用第七章:微型计算机的中断系统第七章:微型计算机的中断系统2第七章:微型计算机的中断系统第七章:微型计算机的中断系统 中断的概念及处理过程中断的概念及处理过程 8086中断系统中断系统 中断控制器中断控制器8259A3第七章:微型计算机的中断系统第七章:微型计算机的中断系统 中断的概念及处理过程中断的概念及处理过程 8086中断系统中断系统 中断控制器中断控制器8259A4第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程什么是中断?什么是中断? 在在CPUCPU执行程序的过程中,由于某种突发事件的发生,强迫执行程序

2、的过程中,由于某种突发事件的发生,强迫CPUCPU暂时停止正在执行的程序,转向对该突发事件进行处理,对这个暂时停止正在执行的程序,转向对该突发事件进行处理,对这个事件处理结束后又能回到原中止的程序事件处理结束后又能回到原中止的程序, ,接着中止前的状态继续执行接着中止前的状态继续执行原来的程序,这一个过程就称为原来的程序,这一个过程就称为中断中断。把引起中断的原因或触发中断。把引起中断的原因或触发中断请求的来源称为请求的来源称为中断源中断源。5第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断请求信号的产生中断请求信号的产生 中断方式提高了中断方式提高了C

3、PU的工作效率,但是它同时也提高了系统的工作效率,但是它同时也提高了系统的硬件开销。因为系统需增加含有中断功能接口电路,用来产生中断的硬件开销。因为系统需增加含有中断功能接口电路,用来产生中断请求信号。以输入方式为例,接口电路如图所示。请求信号。以输入方式为例,接口电路如图所示。 外设发外设发STB数据入锁存器,中断请求触发器置数据入锁存器,中断请求触发器置1若没有屏蔽则若没有屏蔽则产生产生INTRCPU满足条件满足条件(允许中断;指令执行完允许中断;指令执行完)发发(进入中断服进入中断服务子程序务子程序)读数据和地址读数据和地址清中断请求触发器,数据送清中断请求触发器,数据送D0D7。 6第

4、七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断优先级中断优先级中断优先级中断优先级 (1)如果有多个不同优先级的中断源同时提出中断请求时,)如果有多个不同优先级的中断源同时提出中断请求时,CPU应当先响应最高优先级的中断源。应当先响应最高优先级的中断源。 (2)如果)如果CPU正在对某一中断源服务时,比它优先级更高正在对某一中断源服务时,比它优先级更高的中断源提出中断请求时,的中断源提出中断请求时,CPU能够暂停正在执行的中能够暂停正在执行的中断服务程序转向对优先级高的中断源进行服务,当服务结断服务程序转向对优先级高的中断源进行服务,当服务结束后再返回原

5、优先级较低的中断服务程序继续执行。束后再返回原优先级较低的中断服务程序继续执行。中断嵌套中断嵌套 正在运行的中断处理程序,被优先级高的中断源正在运行的中断处理程序,被优先级高的中断源中断,从而转入新的中断处理程序,当新的中断处理程序中断,从而转入新的中断处理程序,当新的中断处理程序执行完再回到原来的中断处理程序,这一现象称为执行完再回到原来的中断处理程序,这一现象称为中断嵌中断嵌套套。7第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程 中断服务程序中断服务程序: 为中断请求源服务的子程序。为中断请求源服务的子程序。中断类型号:中断类型号:根据中断服务程序入口

6、地址在中断向根据中断服务程序入口地址在中断向量表中的位置编号,该编号即中断类型号。中断量表中的位置编号,该编号即中断类型号。中断向量表存储器由向量表存储器由0000H0000H开始每个连续单元为个开始每个连续单元为个类型号,共类型号,共2 25656个类型号。个类型号。中断向量表:中断向量表:CPUCPU响应中断后,必须由中断源提供地响应中断后,必须由中断源提供地址信息,引导程序进入中断服务子程序,这些中址信息,引导程序进入中断服务子程序,这些中断服务子程序的入口地址存放在中断向量表中。断服务子程序的入口地址存放在中断向量表中。8中断请求何时发生是随机的。中断请求何时发生是随机的。CPU在每条

7、指在每条指令的最后一个令的最后一个T周期去检测周期去检测INTR引脚,引脚,CPU一旦一旦检测到有中断请求,在满足中断响应的条件下检测到有中断请求,在满足中断响应的条件下(IF=1),),CPU响应中断,向外设发响应中断,向外设发INTA中断响中断响应信号。并保护断点(当前应信号。并保护断点(当前CS,IP和和PSW值入值入栈),然后转向中断服务程序。中断服务程序执栈),然后转向中断服务程序。中断服务程序执行完毕,行完毕,CPU返回原执行程序的中断处,继续向返回原执行程序的中断处,继续向下执行,称为下执行,称为中断返回中断返回。中断响应:中断响应:9第七章:微型计算机的中断系统第七章:微型计算

8、机的中断系统概念及处理过程概念及处理过程中断源:引起程序中断的事件称为中断源。8086中断源:外部中断源和内部中断源,都包含于256个中断类型中;内部中断源:中断指令 INT n引起的中断;由CPU的某些运算错误引起的中断;由调试程序debug设置的中断外部中断源:外部硬件产生。分为不可屏蔽中断(请求线NMI)可屏蔽中断(请求线 INTR)10第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断优先级中断优先级 当系统中有多个设备提出中断请求时,就有一个该响应当系统中有多个设备提出中断请求时,就有一个该响应谁的问题,也就是一个优先级的问题,解决优先级的问题一

9、般谁的问题,也就是一个优先级的问题,解决优先级的问题一般可有三种方法:可有三种方法:软件查询法软件查询法、简单硬件方法简单硬件方法及及专用硬件方法专用硬件方法。 11软件查询方法软件查询方法 只需有简单的硬件电路,如将只需有简单的硬件电路,如将A、B、C三台设备的中断请求信三台设备的中断请求信号号“或或”后作为系统后作为系统INTR,这时,这时,A、B、C三台设备中只要至三台设备中只要至少少有一台设备提出中断请求,都可以向有一台设备提出中断请求,都可以向CPU发中断请求。进入中断发中断请求。进入中断服务子程序后,再用软件查询的方式分别对不同的设备的服务,服务子程序后,再用软件查询的方式分别对不

10、同的设备的服务,查询程序的设计思想同查询式,查询的前后顺序就给出了设备的查询程序的设计思想同查询式,查询的前后顺序就给出了设备的优先级。优先级。 12软件查询方法软件查询方法13第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断优先级中断优先级简单硬件方法简单硬件方法 将所有的设备连成一条链,靠近将所有的设备连成一条链,靠近CPU的设的设备优先级最高,越远的设备优先级别越低,则发备优先级最高,越远的设备优先级别越低,则发出中断响应信号,若级别高的设备发出了中断请出中断响应信号,若级别高的设备发出了中断请求,在它接到中断响应信号的同时,封锁其后的求,在它接到

11、中断响应信号的同时,封锁其后的较低级设备使得它们的中断请求不能响应,只有较低级设备使得它们的中断请求不能响应,只有等它的中断服务结束以后才开放,允许为低级的等它的中断服务结束以后才开放,允许为低级的设备服务。设备服务。 14简单硬件方法简单硬件方法15第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断优先级中断优先级专用硬件方法专用硬件方法 采用可编程的中断控制器芯片,如采用可编程的中断控制器芯片,如Intel8259A。16第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断过程中断过程 是指是指中断请求中断请求、中断

12、响应中断响应、中断处理中断处理、中断返回中断返回这四个过程。这四个过程。中段请求、中断响应由硬件完成,中断处理、中断返回由软件完成。中段请求、中断响应由硬件完成,中断处理、中断返回由软件完成。 中断请求中断请求 1)外部设备发中断请求的条件:当外设准备就绪或本身工作已经)外部设备发中断请求的条件:当外设准备就绪或本身工作已经完成时,才向完成时,才向CPU提出中断请求。提出中断请求。 2)外部设备中断请求的标志:当外设要求和)外部设备中断请求的标志:当外设要求和CPU进行数据交换时,进行数据交换时,将中断请求信号送往中断请求触发器或中断控制器,经它们处理后,将中断请求信号送往中断请求触发器或中断

13、控制器,经它们处理后,向向CPU发出中断请求。发出中断请求。中断响应中断响应 如果如果CPU处于开中断状态,经判优后响应其中最高优先级的处于开中断状态,经判优后响应其中最高优先级的中断请求,关中断,将断点压入堆栈中(有的微机还将程序状态字和中断请求,关中断,将断点压入堆栈中(有的微机还将程序状态字和相关寄存器的内容压入堆栈)保存,以备返回原程序,紧接着将相应相关寄存器的内容压入堆栈)保存,以备返回原程序,紧接着将相应的中断处理程序入口地址或中断向量送的中断处理程序入口地址或中断向量送CPU,转入中断服务程序。,转入中断服务程序。17第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及

14、处理过程概念及处理过程中断过程中断过程 中断处理中断处理 保护现场。保护现场。将在中断处理程序中使用的有关寄存器的内容压入堆栈保将在中断处理程序中使用的有关寄存器的内容压入堆栈保护起来。在现场保护的过程中,绝对不允许被中断护起来。在现场保护的过程中,绝对不允许被中断( (应禁止中断应禁止中断),),否否则现场将被破坏。当现场保护好后应开中断。则现场将被破坏。当现场保护好后应开中断。 中断服务。中断服务。即该中断所要执行的具体指令内容。即该中断所要执行的具体指令内容。 恢复现场。恢复现场。当中断服务结束后,应用中断结束命令清除中断标志,立当中断服务结束后,应用中断结束命令清除中断标志,立即关中断

15、,以保证恢复现场的过程不受干扰。恢复现场就是把原来压即关中断,以保证恢复现场的过程不受干扰。恢复现场就是把原来压入堆栈的有关寄存器的内容弹出。现场恢复后应开中断,以便入堆栈的有关寄存器的内容弹出。现场恢复后应开中断,以便CPUCPU响响应更高级的中断请求。应更高级的中断请求。中断返回中断返回 将压入的断点地址弹出,保证被中断的程序按原来状态执行下去。将压入的断点地址弹出,保证被中断的程序按原来状态执行下去。18第七章:微型计算机的中断系统第七章:微型计算机的中断系统概念及处理过程概念及处理过程中断过程中断过程 中断处理和中断返回中的所有内容,也叫做中断服务程序。即:中断处理和中断返回中的所有内

16、容,也叫做中断服务程序。即:19可屏蔽中断处理过程可屏蔽中断处理过程第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统2021第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断响应过程中断响应过程2223第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断响应过程与时序中断响应过程与时序24第七章:微型计算机的中断系统第七章:微型计算机的中断系统 中断的概念及处理过程中断的概念及处理过程 8086中断系统中断系统 中断控制器中断控制器8259A25第七章:微型计算

17、机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断分类及中断类型码中断分类及中断类型码 中断源可以分为两大类,即外部中断源可以分为两大类,即外部(硬件硬件)中断和内部中断和内部(软件软件)中断。中断。硬件中断:硬件中断:即通过外部的硬件产生的中断,如打印机、键盘等。硬件即通过外部的硬件产生的中断,如打印机、键盘等。硬件中断又可分为:中断又可分为:可屏蔽中断可屏蔽中断和和不可屏蔽中断不可屏蔽中断。不可屏蔽中断:不可屏蔽中断:由由NMI引脚引入,它不受中断允许标志的影响,引脚引入,它不受中断允许标志的影响,每个系统中仅允许有一个,都是用来处理紧急情况的,如掉电处每个系

18、统中仅允许有一个,都是用来处理紧急情况的,如掉电处理。这种中断一旦发生,系统会立即响应。理。这种中断一旦发生,系统会立即响应。可屏蔽中断:可屏蔽中断:由由INTR引脚引入,它受中断允许标志的影响,也引脚引入,它受中断允许标志的影响,也就是说,只有当就是说,只有当IF1时,可屏蔽中断才能进入,反之则不允许时,可屏蔽中断才能进入,反之则不允许进入,可屏蔽中断可有多个,一般是通过优先级排队,从多个中进入,可屏蔽中断可有多个,一般是通过优先级排队,从多个中断源中选出一个进行处理。断源中选出一个进行处理。软件中断:软件中断:即根据某条指令或者对标志寄存器中某个标志的设置而产即根据某条指令或者对标志寄存器

19、中某个标志的设置而产生,它与硬件电路无关,常见的如除数为生,它与硬件电路无关,常见的如除数为0,或用,或用INT n指令产生。指令产生。 26第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断分类及中断类型码中断分类及中断类型码 8086/8088系统最多可处理系统最多可处理256级不同类型的中断。级不同类型的中断。27第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断分类及中断类型码中断分类及中断类型码 INTn指令中断逻辑INTO指令单步中断INT 3指令除数为0中断非屏蔽中断请求中断控制系统(82

20、59A)。可屏蔽中断请求NMIINTR软件中断硬件中断28第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断分类及中断类型码中断分类及中断类型码 中断类型码:中断类型码:8086为每个中断源分配了一个中断类型码,其取值范围为为每个中断源分配了一个中断类型码,其取值范围为0255,即可处理,即可处理256种中断。其中包括软件中断,系统占用的中断以及开放给种中断。其中包括软件中断,系统占用的中断以及开放给用户使用的中断。用户使用的中断。中断类型码或者包含在指令中,或者预先规定;中断类型码或者包含在指令中,或者预先规定;所有内部中断和所有内部中断和NMI

21、中断都不执行中断都不执行INTA总线周期;总线周期;除单步中断外,任何内部中断都无法禁止且都比外部中断优先级高;除单步中断外,任何内部中断都无法禁止且都比外部中断优先级高;中 断优 先 级内中断(除法错,INTO,INT)最 高最 低非屏蔽中断NMI可屏蔽中断INTR单步中断29第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断向量和中断向量表中断向量和中断向量表中断向量:中断向量:把各个中断服务子程序的入口都称为一个中断向量;把各个中断服务子程序的入口都称为一个中断向量; 中断向量表:中断向量表:将这些中断向量按一定的规律排列成一个表,就是所谓的

22、中断向将这些中断向量按一定的规律排列成一个表,就是所谓的中断向量表,当中断源发出中断请求时,即可查找该表,找出其中断向量,就可转入量表,当中断源发出中断请求时,即可查找该表,找出其中断向量,就可转入相应的中断服务子程序。相应的中断服务子程序。向量表地址:向量表地址:中断向量在中断向量表中的位置。中断向量在中断向量表中的位置。 8086中断系统中的中断向量表是位于中断系统中的中断向量表是位于0段的段的03FFFH的存贮区内,每个中断向量占四个单元,其中前两个单元存放中的存贮区内,每个中断向量占四个单元,其中前两个单元存放中断处理子程序的入口地址的偏移量断处理子程序的入口地址的偏移量(IP),低位

23、在前,高位在后;,低位在前,高位在后;后两个单元存放中断处理子程序入口地址的段地址后两个单元存放中断处理子程序入口地址的段地址(CS),也是低,也是低位在前,高位在后,整个中断向量的排列是按中断类型号进行的。位在前,高位在后,整个中断向量的排列是按中断类型号进行的。30第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断向量和中断向量表中断向量和中断向量表000H004H008H00CH014H080H3FFHIP偏移地址CS段基地址IP偏移地址CS段基地址IP偏移地址CS段基地址中断类型码0(除法错)中断类型码1(单步中断)中断类型码2(NMI中断

24、)中断类型码3(断点中断)中断类型码4(溢出中断)中断类型码5(保留)系统保留中断用户自定义中断31第七章:微型计算机的中断系统第七章:微型计算机的中断系统80868086的中断系统的中断系统中断向量和中断向量表中断向量和中断向量表00H:除法出错中断除法出错中断01H: 单步中断单步中断02H: NMI端引入的不可屏蔽中断端引入的不可屏蔽中断03H: 断点中断断点中断04H:溢出中断溢出中断05H31H:-系统使用中断,不容许用户修改系统使用中断,不容许用户修改(08H 0FH:8259A中断向量;中断向量;10H1FH:-BIOS用)用)20H3FH:-DOS用用40HFFH:-用户用用户

25、用 32中断向量:中断向量:中断服务程序的入口地址中断向量的获取:中断向量的获取:8086/8088 CPU根据中断类型号在中断向量表中取得。中断向量表:中断向量表:中断服务程序的入口地址存放的区域中断服务程序的入口地址存放的区域(也称中断矢量表)(也称中断矢量表)中断类型号的获取:中断类型号的获取:1.中断指令INT n 中直接得到;2.外部中断类型寄存器从DB输入。33PA0PA1PA255PA0PA1PA255P0P1P255 8086/8088CPU中对应于256个中断类型的中断向量必须设置于0000H至03FFH的1KB内存空间的中断向量表中。中断服务程序348086/8088 CP

26、U中断优先级:内中 不可屏蔽中断 可屏蔽中断 单步中断最高 最低可屏蔽中断优先级设定三种方式:多中断源的中断嵌套 进入中断处理程序时,系统自动关中断; 中断服务程序中必须有STI开中断指令允许其它中断进入实现中断嵌套。 中断结束返回前要有EOI中断结束命令,EOI结束命令应放在中断返回指令 IRET前面。RET软件查询中断优先级软件查询中断优先级硬件查询优先级硬件查询优先级菊花链菊花链矢量中断优先级矢量中断优先级35硬件查询优先方式硬件查询优先方式菊花链法菊花链法36矢量中断优先级矢量中断优先级37中断嵌套38第七章:微型计算机的中断系统第七章:微型计算机的中断系统 中断的概念及处理过程中断的

27、概念及处理过程 8086中断系统中断系统 中断控制器中断控制器8259A39第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A性能概述性能概述1. 具有具有8级中断优先控制,通过级连可以扩展至级中断优先控制,通过级连可以扩展至64级优先权控制;级优先权控制;2. 每一级中断都可以通过初始设置为允许或屏蔽状态;每一级中断都可以通过初始设置为允许或屏蔽状态;3. 8259A的工作方式,可通过编程进行设置,因此使用非常灵的工作方式,可通过编程进行设置,因此使用非常灵活;活;4. 8259A采用采用NMOS制造工艺,只需要单一的制造工艺,只需要单

28、一的+5V电源。电源。5.可以通过编程选择多种不同的工作方式。可以通过编程选择多种不同的工作方式。 40第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的内部结构和工作原理的内部结构和工作原理41第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的内部结构和工作原理的内部结构和工作原理数据总线缓冲器:数据总线缓冲器:它是它是8259A与系统数据总线的接口,是与系统数据总线的接口,是8位双向三态缓冲器。位双向三态缓冲器。CPU与与8259A之间的控制命令信息、状态信息以及中断类型信息

29、,都是通过之间的控制命令信息、状态信息以及中断类型信息,都是通过该缓冲器传送的。该缓冲器传送的。读读/写控制逻辑:写控制逻辑:CPU通过它实现对通过它实现对8259A的读的读/写操作。写操作。级连缓冲器:级连缓冲器:用以实现用以实现8259A芯片之间的级连,使得中断源可以由芯片之间的级连,使得中断源可以由8级扩展至级扩展至64级。级。控制逻辑电路:控制逻辑电路:对整个芯片内部各部件的工作进行协调和控制。对整个芯片内部各部件的工作进行协调和控制。中断请求寄存器中断请求寄存器IRR:8位,用以分别保存位,用以分别保存8个中断请求信号,当相应的中断请个中断请求信号,当相应的中断请求输入引脚有中断请求

30、时,该寄存器的相应位置求输入引脚有中断请求时,该寄存器的相应位置1。中断屏蔽寄存器中断屏蔽寄存器IMR:8位,相应位用以对位,相应位用以对8个中断源的中断请求信号进行屏蔽个中断源的中断请求信号进行屏蔽控制。当其中某位置控制。当其中某位置”0”时,则相应的中断请求可以向时,则相应的中断请求可以向CPU提出;否则,相应提出;否则,相应的中断请求被屏蔽,即不允许向的中断请求被屏蔽,即不允许向CPU提出中断请求。该寄存器的内容为提出中断请求。该寄存器的内容为8259A的操作命令字的操作命令字OCW1,可以由程序设置或改变。,可以由程序设置或改变。中断服务寄存器中断服务寄存器ISR: 8位,当位,当CP

31、U正在处理某个中断源的中断请求时,正在处理某个中断源的中断请求时,ISR寄寄存器中的相应位置存器中的相应位置1。优先级比较器优先级比较器PR:用以比较正在处理的中断和刚刚进入的中断请求之间的优先用以比较正在处理的中断和刚刚进入的中断请求之间的优先级别,以决定是否产生多重中断或中断嵌套。级别,以决定是否产生多重中断或中断嵌套。 42第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的外部引脚的外部引脚43第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的外部引脚的外部引脚D7-D0:

32、双向数据输入双向数据输入/输出引脚,用以与输出引脚,用以与CPU进行信息交换。进行信息交换。IR7-IR0:8级中断请求信号输入引脚。级中断请求信号输入引脚。INT:中断请求信号输出引脚,高电平有效,用以向中断请求信号输出引脚,高电平有效,用以向CPU发中断请求,应接在发中断请求,应接在CPU的的INTR输入端。输入端。INTA#:中断响应应答信号输入引脚,低电平有效,接在中断响应应答信号输入引脚,低电平有效,接在CPU的中断应答信号的中断应答信号输出端。输出端。RD#、WR#:读读/写控制信号输入引脚,低电平有效,实现对写控制信号输入引脚,低电平有效,实现对8259A内部有内部有关寄存器内容

33、的读操作。关寄存器内容的读操作。CS#:片选信号输入引脚,低电平有效,决定了片选信号输入引脚,低电平有效,决定了8259A的端口地址范围。的端口地址范围。A0:8259A两组内部寄存器的选择信号输入引脚,决定两组内部寄存器的选择信号输入引脚,决定8259A的端口地址。的端口地址。CAS2-CAS0:级连信号引脚,当级连信号引脚,当8259A为主片时,为输出;否则为输入,与为主片时,为输出;否则为输入,与信号配合,实现芯片的级连,这三个引脚信号的不同组合信号配合,实现芯片的级连,这三个引脚信号的不同组合000111,刚好对,刚好对应于应于8个从片。个从片。SP#/EN#:为级连管理信号输入引脚,

34、在非缓冲方式下,若为级连管理信号输入引脚,在非缓冲方式下,若8259A在系统中在系统中作主片使用,则作主片使用,则SP=1;否则;否则SP=0;在缓冲方式下,用作;在缓冲方式下,用作8259A外部数据总外部数据总线缓冲器的启动信号。线缓冲器的启动信号。+5V、GND:电源和接地引脚。电源和接地引脚。44第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作过程的工作过程当有一条或若干条中断请求输入(当有一条或若干条中断请求输入(IR7-IR0)有效时,则使中断请求寄存器的)有效时,则使中断请求寄存器的IRR的相应位置位。的相应位置位。若

35、若CPU处于开中断状态,则在当前指令执行完之后,响应中断,并且发应答信处于开中断状态,则在当前指令执行完之后,响应中断,并且发应答信号(两个连续的号(两个连续的INTA#负脉冲)。负脉冲)。第一个第一个INTA#负脉冲到达时,负脉冲到达时,IRR的锁存功能失效,对于的锁存功能失效,对于IR7-IR0上发来的中上发来的中断请求信号不予理睬。断请求信号不予理睬。使中断服务寄存器使中断服务寄存器ISR的相应位置的相应位置1,以便为中断优先级比较器的工作做好准备。,以便为中断优先级比较器的工作做好准备。使中断请求寄存器的相应位复位,即清除中断请求。使中断请求寄存器的相应位复位,即清除中断请求。第二个第

36、二个INTA#负脉冲到达时,将中断类型寄存器中的内容负脉冲到达时,将中断类型寄存器中的内容ICW2,送到数据总,送到数据总线的线的D7-D0上,上,CPU以此作为相应中断的类型码。以此作为相应中断的类型码。1. 若若ICW4中的中断结束位为中的中断结束位为1,那么,第二个,那么,第二个INTA#负脉冲结束时,负脉冲结束时,8259A将将ISR寄存器的相应位清零。否则,直至中断服务程序执行完毕,才能通过输出操寄存器的相应位清零。否则,直至中断服务程序执行完毕,才能通过输出操作命令字作命令字EOI,使该位复位。,使该位复位。 45第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中

37、断控制器8059A8059A8259A的编程结构的编程结构46第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式系统总线的连接方式系统总线的连接方式 1. 引入中断的请求方式引入中断的请求方式47第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先级设置方式优先级设置方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式 循环

38、优先级的循环方法循环优先级的循环方法系统总线的连接方式系统总线的连接方式 1. 引入中断的请求方式引入中断的请求方式48第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先级设置方式优先级设置方式1. 全嵌套方式全嵌套方式 这是这是8259A默认的优先权设置方式,在全嵌套方式下,默认的优先权设置方式,在全嵌套方式下,8259A所管所管理的理的8级中断优先权是固定不变的,其中级中断优先权是固定不变的,其中IR0的中断优先级最高,的中断优先级最高,IR7的中断优的中断优先级最低。先级最低。 CPU响应中断后,请求中断的中

39、断源中,优先级最高的中断源,在中响应中断后,请求中断的中断源中,优先级最高的中断源,在中断服务寄存器断服务寄存器ISR中的相应位置位,而且把它的中断矢量送至系统数据总线,在中的相应位置位,而且把它的中断矢量送至系统数据总线,在此中断源的中断服务完成之前,与它此中断源的中断服务完成之前,与它同级或优先级低同级或优先级低的中断源的中断请求被屏的中断源的中断请求被屏蔽,只有优先级比它高的中断源的中断请求才是运算的,从而出现蔽,只有优先级比它高的中断源的中断请求才是运算的,从而出现中断嵌套中断嵌套。当实现当实现8级嵌套时,级嵌套时,ISR寄存器内容为寄存器内容为0FFH.2. 特殊全嵌套方式特殊全嵌套

40、方式 特殊全嵌套方式与全嵌套方式基本相同,所不同的是,当特殊全嵌套方式与全嵌套方式基本相同,所不同的是,当CPU处理某处理某一级中断时,如果有同级中断请求,那么一级中断时,如果有同级中断请求,那么CPU也会作出响应,从而形成了对同也会作出响应,从而形成了对同一级中断的特殊嵌套。一级中断的特殊嵌套。 特殊全嵌套方式通常应用在有特殊全嵌套方式通常应用在有8259A级连的系统中,在这种情况下,级连的系统中,在这种情况下,对主对主8259A编程时,通常使它工作在特殊全嵌套方式下。这样,一方面,编程时,通常使它工作在特殊全嵌套方式下。这样,一方面,CPU对于优先级别较高的主片的中断输入是允许的,另一方面

41、,对于优先级别较高的主片的中断输入是允许的,另一方面,CPU对于来自对于来自同一从片的优先级别较高(但对于主片来讲,优先级别是相同的)的中断也是同一从片的优先级别较高(但对于主片来讲,优先级别是相同的)的中断也是允许、能够响应的。允许、能够响应的。 49第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式3. 优先级自动循环方式优先级自动循环方式 在实际应用中,中断源优先级的情况是比较复杂的,要求在实际应用中,中断源优先级的情况是比较复杂的,要求8级中断的优级中断的优先级在系统工作过程中,

42、可以动态改变。即一个中断源的中断请求被响应之后,先级在系统工作过程中,可以动态改变。即一个中断源的中断请求被响应之后,其优先级自动降为最低。系统启动时,其优先级自动降为最低。系统启动时,8级中断优先级默认为级中断优先级默认为IR0IR7,这时,这时,刚好刚好IR4发出了中断请求,发出了中断请求,CPU响应之后,若响应之后,若8259A工作在优先级自动循环方工作在优先级自动循环方式下,则中断优先级自动变为式下,则中断优先级自动变为IR5、IR6、IR7、IR0、 IR1、 IR2、 IR3、 IR4。优先级特殊循环方式优先级特殊循环方式 优先级特殊循环方式与自动循环方式相比,只有一点不同,即初始

43、化的优先级特殊循环方式与自动循环方式相比,只有一点不同,即初始化的优先级是由程序控制的,而不是默认的优先级是由程序控制的,而不是默认的IR0IR7。 50第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式 循环优先级的循环方法循环优先级的循环方法系统总线的连接方式系统总线的连接方式 1. 引入中断的请求方式引入中断的请求方式51第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059

44、A8259A的工作方式的工作方式中断源的屏蔽方式中断源的屏蔽方式1. 普通屏蔽方式普通屏蔽方式 8259A的每个中断请求输入,都要受到屏蔽寄存器中相应位的控制。的每个中断请求输入,都要受到屏蔽寄存器中相应位的控制。若相应位为若相应位为“1”,则中断请求不能送,则中断请求不能送CPU。屏蔽是通过对屏蔽寄存器。屏蔽是通过对屏蔽寄存器IMR的编的编程(操作命令字程(操作命令字OCW1),来加以设置和改变的。),来加以设置和改变的。2. 特殊屏蔽方式特殊屏蔽方式 有些场合下,希望一个中断服务程序的运行过程中,能动态地改变系统有些场合下,希望一个中断服务程序的运行过程中,能动态地改变系统中的中断优先级结

45、构,即在中断处理的一部分,禁止低级中断,而在中断处理中的中断优先级结构,即在中断处理的一部分,禁止低级中断,而在中断处理的另一部分,又能够允许低级中断,于是引入了对中断的特殊屏蔽方式。的另一部分,又能够允许低级中断,于是引入了对中断的特殊屏蔽方式。 设置了特殊屏蔽方式后,用设置了特殊屏蔽方式后,用OCW1对屏蔽寄存器中的某一位复位时,同对屏蔽寄存器中的某一位复位时,同时也会使中断服务寄存器时也会使中断服务寄存器ISR中的相应位复位,这样就不只屏蔽了正在处理的等中的相应位复位,这样就不只屏蔽了正在处理的等级中断,而且真正开放了其它优先级别较低的中断请求。级中断,而且真正开放了其它优先级别较低的中

46、断请求。 特殊屏蔽是在中断处理程序中使用的,用了这种方式之后,尽管系统正特殊屏蔽是在中断处理程序中使用的,用了这种方式之后,尽管系统正在处理高级中断,但对外界来讲,只有同级中断被屏蔽,而允许其它任何级别在处理高级中断,但对外界来讲,只有同级中断被屏蔽,而允许其它任何级别的中断请求。的中断请求。 52第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式 循环优先级的循环方法循环优先级的循环方法系统总线的连接方式系统总线的连接

47、方式1. 引入中断的请求方式引入中断的请求方式 53第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式结束中断的处理方式结束中断的处理方式1. 一般的中断结束方式一般的中断结束方式 一般的中断结束方式适用用在全嵌套的情况下,当一般的中断结束方式适用用在全嵌套的情况下,当CPU用输出指令向用输出指令向8259A发一般中断结束命令发一般中断结束命令OCW2时,时,8259A才会使中断响应寄存器才会使中断响应寄存器ISR中中优先级别最高的位复位。优先级别最高的位复位。2. 特殊的中断结束方式特殊的中断结束方式 在特殊全嵌套模

48、式下,系统无法确定哪一级中断为最后相应和处理的中在特殊全嵌套模式下,系统无法确定哪一级中断为最后相应和处理的中断,也就是说,断,也就是说,CPU无法确定当前所处理的是哪级中断,这时就要采用特殊的无法确定当前所处理的是哪级中断,这时就要采用特殊的中断结束方式。中断结束方式。 特殊的中断结束方式是指在特殊的中断结束方式是指在CPU结束中断处理之后,向结束中断处理之后,向8259A发送一发送一个特殊的个特殊的EOI中断结束命令,这个特殊的中断结束中断结束命令,这个特殊的中断结束EOI命令,明确指出了中断响命令,明确指出了中断响应寄存器应寄存器ISR中需要复位的位。中需要复位的位。 3. 中断自动结束

49、方式中断自动结束方式 这种方式仅适用于只有单片这种方式仅适用于只有单片8259A的场合,在这种方式下,系统一旦的场合,在这种方式下,系统一旦响应中断,那么响应中断,那么CPU在发第二个在发第二个INTA#脉冲时,就会使中断响应寄存器脉冲时,就会使中断响应寄存器ISR中中相应位复位,相应位复位,这样一来,虽然系统在进行中断处理,但对于这样一来,虽然系统在进行中断处理,但对于8259A来讲,来讲,ISR没有相应的指示,就象中断处理结束,返回主程序之后一样。没有相应的指示,就象中断处理结束,返回主程序之后一样。CPU可以再次响可以再次响应任何级别的中断请求,容易产生重复中断,中断深度无法控制,容易产

50、生错应任何级别的中断请求,容易产生重复中断,中断深度无法控制,容易产生错误。误。54第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式 循环优先级的循环方法循环优先级的循环方法系统总线的连接方式系统总线的连接方式 1. 引入中断的请求方式引入中断的请求方式55 8259A的工作方式的工作方式循环优先级的循环方循环优先级的循环方法法 特殊特殊EOI循环方式循环方式 自动自动EOI循环方式循环方式第七章:微型计算机的中断系统

51、第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A56第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式 循环优先级的循环方法循环优先级的循环方法系统总线的连接方式系统总线的连接方式 1. 引入中断的请求方式引入中断的请求方式57第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式系统总线的连接方式系统总线的连接方式1. 缓冲方式

52、缓冲方式 在多片在多片8259A级连的大系统中,级连的大系统中,8259A通过外部总线驱动器和数据通过外部总线驱动器和数据总线相连,这就是缓冲方式。在缓冲方式下,总线相连,这就是缓冲方式。在缓冲方式下,8259的输出信号作为缓冲器的的输出信号作为缓冲器的启动信号,用来启动总线驱动器,在启动信号,用来启动总线驱动器,在8259A与与CPU之间进行信息交换。之间进行信息交换。2. 非缓冲方式非缓冲方式 当系统中只有一片或几片当系统中只有一片或几片8259A芯片时,可以将数据总线直接与系统芯片时,可以将数据总线直接与系统数据总线相连,这时数据总线相连,这时8259A处于非缓冲方式下。在这种方式下,处

53、于非缓冲方式下。在这种方式下,8259A的作的作为输入端设置,主片应接高电平,从片应接低电平。为输入端设置,主片应接高电平,从片应接低电平。 58第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的工作方式的工作方式优先权的管理方式优先权的管理方式中断源的屏蔽方式中断源的屏蔽方式结束中断处理的方式结束中断处理的方式 循环优先级的循环方法循环优先级的循环方法系统总线的连接方式系统总线的连接方式 1. 引入中断的请求方式引入中断的请求方式59第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A825

54、9A的工作方式的工作方式引入中断请求的方式引入中断请求的方式1. 边沿触发方式边沿触发方式 8259A将中断请求输入端出现的上升沿,作为中断请求信号,上升沿后相应引将中断请求输入端出现的上升沿,作为中断请求信号,上升沿后相应引脚,可以一直保持高电平。脚,可以一直保持高电平。2. 电平触发方式电平触发方式 8259A将中断请求输入端出现的高电平作为中断请求信号,在这种方式下,必将中断请求输入端出现的高电平作为中断请求信号,在这种方式下,必须注意:中断响应之后,高电平必须及时撤除,否则,在须注意:中断响应之后,高电平必须及时撤除,否则,在CPU响应中断,开中响应中断,开中断之后,会引起第二次不应该

55、有的中断。断之后,会引起第二次不应该有的中断。3. 中断查询方式中断查询方式 当系统中的中断源很多,超过当系统中的中断源很多,超过64个时,则可以使个时,则可以使8259A工作在查询方式下,工作在查询方式下,中断查询方式的特点是:中断查询方式的特点是:a.中断源仍往中断源仍往8259A发中断请求,但发中断请求,但8259A却不使用却不使用INT信号向信号向CPU发中断请求发中断请求信号。信号。b. CPU内部的中断允许标志复位,所以内部的中断允许标志复位,所以CPU对对INT引脚上出现的中断请求呈禁止引脚上出现的中断请求呈禁止状态。状态。c. CPU 用软件查询的方法来确定中断源,从而实现对设

56、备的中断服务,可见,用软件查询的方法来确定中断源,从而实现对设备的中断服务,可见,中断查询方式,既有中断的特点,又有查询的特点,从外设的角度来看,是靠中断查询方式,既有中断的特点,又有查询的特点,从外设的角度来看,是靠中断的方式来请求服务,但从中断的方式来请求服务,但从CPU的角度来看,是用查询方式来确定发中断请的角度来看,是用查询方式来确定发中断请求的中断源。求的中断源。60第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A8259A的编程的编程8259A的控制字的控制字 8259A的命令字有两种。一种是初始化命令字的命令字有两种。一种是初始化命

57、令字(ICW),在,在8259A启动之前写入,使其处于预定的初始状启动之前写入,使其处于预定的初始状态。另一种是操作命令字态。另一种是操作命令字(OCW),使处于初始状态的,使处于初始状态的8259去执行具体的某种操作方式。操作命令字可在去执行具体的某种操作方式。操作命令字可在8259初始化后的任何时刻写入。初始化后的任何时刻写入。 61626364第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A65第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A66第七章:微型计算机的中断系统第七章:微型计算机的

58、中断系统中断控制器中断控制器8059A8059A67第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A68第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A69第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A70第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A71第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A72第七章:微型计算机的中断系统第七章:微型计算机的

59、中断系统中断控制器中断控制器8059A8059A73第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A74第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A75第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A76第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A77第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A78第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A79第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A80第七章:微型计算机的中断系统第七章:微型计算机的中断系统中断控制器中断控制器8059A8059A81第七章:微型计算机的中断系统第七章:微型计算机的中

温馨提示

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

评论

0/150

提交评论