微机原理与应用课件第七章.ppt

上传人:小飞机 文档编号:6572763 上传时间:2023-11-13 格式:PPT 页数:47 大小:503.50KB
返回 下载 相关 举报
微机原理与应用课件第七章.ppt_第1页
第1页 / 共47页
微机原理与应用课件第七章.ppt_第2页
第2页 / 共47页
微机原理与应用课件第七章.ppt_第3页
第3页 / 共47页
微机原理与应用课件第七章.ppt_第4页
第4页 / 共47页
微机原理与应用课件第七章.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《微机原理与应用课件第七章.ppt》由会员分享,可在线阅读,更多相关《微机原理与应用课件第七章.ppt(47页珍藏版)》请在三一办公上搜索。

1、第七章 中断,第一节 概述,一、中断的一般概念,二、中断申请,三、中断系统的功能(8086/8088系统),第二节 最简单的中断情况,一、CPU响应中断的条件,二、CPU对中断的响应,第三节 中断优先权,一、用软件确定优先权(查询法),二、硬件优先权排队电路,第四节 8086的中断方式,一、8086/8088的中断源,二、8086/8088的中断响应过程,三、8086/8088中断向量表,第五节 中断控制器8259A,一、功能,二、结构,三、中断顺序(8259在8086/8088系统),四、PC机的中断控制系统,中断技术是微机中一项重要技术。它不仅在数据输入、输出中提高了CPU的效率,而且在多

2、外设、实时控制、故障处理中也是一项必不可少的技术。,INTR1,i+1条指令,中断服务程序,i条指令,CPU,响应中断,外设中断源申请中断,中断处理的过程:,第七章 中断,第一节 概述,一、中断的一般概念,实时处理。控制系统往往有许多数据需要采集或输出。实时控制中有的数据难以估计何时需要交换。中断可为实时控制提供支持。,故障处理。计算机系统的故障往往随机发生,如电源断电、运算溢出、存储器出错等。采用中断技术,系统故障一旦出现,就能及时处理。,二、中断申请,三、中断系统的功能(8086/8088系统),第二节 最简单的中断情况,一、CPU响应中断的条件,在有多个中断源的系统中,为了使CPU能灵活

3、的控制外设的中断请求,对每个外设接口设置一个中断屏蔽触发器。只有当此触发器为”1“时,外设的中断请求才能被送至CPU。,IF1,CPU允许中断,即中断开放 IF0,CPU不允许中断,即中断关闭,使IF1的条件:执行STI 指令 使IF0的条件:执行CLI 指令;CPU RESET;CPU响应中断,二、CPU对中断的响应,中断响应周期时序,中断请求信号有效,且CPU开中,则CPU在执行完当前指令后,响应中断,在响应中断时,CPU执行两个中断响应周期。,在每一个中断响应周期,都给出中断响应信号INTA,第一个响应周期,使AD7AD0浮空;第二个响应周期,被响应的外设应将中断类型号送到数据线上,以便

4、CPU寻找该设备的服务程序的入口地址,转入中断服务。,三、CPU中断响应时序,第三节 中断优先权,问题:多中断源,一条INTR申请线方法:按优先权处理;CPU先响应优先权级别高的中断源申请,一、用软件确定优先权(查询法),IN AL,20H TEST AL,80H JNZ PWA TEST AL,40H JNZ PWB DONE:,PWA:JMP DONEPWB:JMP DONE,查询法中断服务程序,二、硬件优先权排队电路,组成:8:3,比较器,逻辑电路,优先权寄存器,工作原理,CPU在不处于中断服务时有中断申请,申请中断源的级别高于CPU在执行中断服务的级别。,8088/8086有一个简单而

5、灵活的中断系统,每个中断都有一个中断类型码以供CPU进行识别,8086/8088可以处理256种不同的中断。这些中断又可分为外部中断和内部中断两大类。,内部中断的特点:中断类型码包含在指令中,或者是预先规定的;不执行INTA总线周期;除单步中断外,任何内部中断都无法禁止;除单步中断外,任何内部中断的优先级都比任何外部中断的高。,一、8086/8088的中断源,第四节 8088/8086的中断方式,二、8086/8088的中断响应过程,完成当前指令,内部中断,NMI,INTR,TF=1,执行下一条指令,IF=1,响应中断读类型码,标志入栈,调服务程序,CS、IP入栈,清除IF、TF,令TEMP=

6、TF,又有NMI,TEMP=1,执行服务程序,CS、IP出栈,标志出栈,继续执行被中断的程序,Y,N,N,N,N,Y,Y,Y,Y,N,N,Y,Y,N,IF=1,读类型码,N,形成中断类型码,8086/8088在内存区的00000H003FFH(1KB)建立一个中断向量表。用于存放与256个中断类型码(00H0FFH)相应的中断服务程序入口地址。每个中断服务程序入口地址使用4个字节,低16bit为段内偏移量送IP,高16bit为段码送CS。,三、8086/8088中断服务程序服务程序入口地址表,各中断服务程序入口地址的段地址和段内偏移量按中断类型号顺序存放在表中。因此由中断类型号n*4可得到相应

7、中断服务程序入口地址的地址,取4n和4n+1单元中的内容(中断入口段内偏移量)装入指令指针IP,取4n+2和4n+3单元中的内容(中断入口段地址)装入代码段寄存器CS,即可转入中断服务程序。,1.中断向量表,例:某中断的中断类型号为68H,其中断过程为:,(1)计算存放中断服务程序入口地址的地址=68H*4=1A0H;,(2)取中断入口地址的段内偏移量装入IP,IP=2050H,段码装入CS,CS=A000H;,(3)转向中断服务程序;,(4)中断返回,2.中断入口地址的设置,IBM PC对256个中断类型已进行了地址分配,其中40H以后的中断类型号可供用户使用。供用户使用的中断类型号,可由用

8、户定义为软中断,由INT n指令引用;可通过INTR端或通过中断控制器8259A引入可屏蔽的硬件中断。使用时用户要自己将中断服务程序入口地址置入相应的中断向量表内。,方法1:通过指令来设置,MOV AX,0;中断入口表 MOV ES,AX;段地址送ES MOV DI,n*4;偏移量送DIMOV AX,OFFSET INTRADCLDSTOSW;传送子程序偏移地址MOV AX,CSSTOSW;传送子程序段地址STI,MOV AX,0;中断入口表 MOV ES,AX;段地址送ES MOV BX,n*4;偏移量送DIMOV AX,OFFSET INTRADMOV ES:BX,AXMOV AX,SEG

9、 INTRADMOV ES:BX+2,AXSTI,方法2:通过调用DOS功能来设置,设置中断入口:把由AL指定中断类型号的中断入口DS:DX中放置在中断入口表中。,预置:AL=中断类型号 DS:DX=中断服务程序入口地址 AH=25H执行:INT 21H,取中断入口:把由AL指定中断类型号的中断入口,从中断入口表中取到ES:BX中。,预置:AL=中断类型号 AH=35H执行:INT 21H返回:ES:BX=中断服务程序入口地址,1、8级优先权控制,通过级连可扩展到64级优先级控制;2、每一级可由程序单独屏蔽或允许;3、在CPU响应周期,可提供相应的中断类型码。中断类型码由 8259编程设定;4

10、、通过编程可设定多种工作方式。,一、功能,二、结构,第五节 中断控制器8259A,中断控制器8259A方框图,三、中断顺序(8259在8086/8088系统),1、在ISR中存放正在服务的中断源级别。,2、当IR0IR7中一条或多条中断申请线为高电平时,使IRR相应位置1。,3、若该中断源未被屏蔽,而且其优先级高于ISR中的中断级别,则INTR为1,向CPU申请中断。,7、CPU继续进行后续的中断响应过程。,四、8259的编程方法,系统复位后,由初始化程序对8259置入初始化命令字ICW。初始化后可通过发出操作命令字OCW来定义8259A的操作方式,实现对8259A的控制。初始化命令字只发一次

11、,操作命令字可以重置,以动态改变8259A的操作与控制方式。,ICW1,ICW2,ICW3,8259A在级联工作方式(SNGL=0)时,要写入ICW3,它规定本8259为主设备,还是从设备。,ICW4,全嵌套方式:高级中断可打断正在处理的中断,优先处理更高级的中断。,特殊全嵌套方式:对于级联方式,主8259A把从同一从8259A来的不同级别的中断请求认为是同级的,而不予以响应。在8259A级联时,若主片处于特殊全嵌套方式就允许对相同级别的中断请求开放。,2.操作命令字,8259A有3个操作命令字,由CPU写入8259A,写入顺序不限。,OCW1,中断屏蔽字:1=屏蔽中断;0=允许中断,OCW2

12、,OCW2-控制8259A的中断结束和优先级循环方式的命令,(1)中断结束命令,普通EOI结束方式:8259A收到EOI结束命令后,自动将ISR中级别最高的置“1”位清“0”。,特殊EOI结束方式:正常EOI是自动清除级别最高的ISR位,而特殊EOI则清除有L0L2指定的ISR位。,自动AEOI结束方式:某中断被响应后,ISR对应位被置1,但CPU在中断响应的第二个脉冲将ISR的对应位清0。此时,尽管CPU对某个外设正在进行中断服务,但在8259A中无指示,低级别的中断可打断高级中断,产生重复嵌套,嵌套深度无法控制。在级联方式下,一般用非自动结束方式,中断结束时,要发两次中断结束命令,一次是对

13、主片,另一次是对从片发的位。,OCW3,OCW3-特殊屏蔽方式和查询方式的命令,五、8259的中断级联,例:某中断级联系统,从片的INT端接主片的IR3,主片从IR1、IR5引入两个中断请求,中断类型号为31H、35H。中断服务程序的段基址为1000H,偏移量分别为2000H、3000H。从8259的IR4、IR5引入两个中断请求,中断类型号为44H、45H。中断服务程序的段基址为2000H,偏移量分别为3600H、4500H。,(1)中断入口地址写入中断向量表,MOV AX,1000H;送段地址MOV DS,AXMOV DX,2000H;送偏移地址MOV AL,31HMOV AH,25HIN

14、T 21H,MOV DX,3000HMOV AL,35HINT 21H,MOV AX,2000HMOV DS,AXMOV DX,3600HMOV AL,44HMOV AH,25HINT 21H,MOV DX,4500HMOV AL,45HINT 21H,(2)主片8259A初始化编程(端口地址FFC8H,FFC9H),MOV AL,11H;ICW1,级联,边沿触发MOV DX,0FFC8H;OUT DX,AL,MOV AL,30H;ICW2,确定中断类型号MOV DX,0FFC9H;OUT DX,AL,MOV AL,08H;ICW3,IR3端接从INT端OUT DX,AL,MOV AL,11H

15、;ICW4,特殊嵌套,非缓冲方式OUT DX,AL,MOV AL,0D5H;OCW1,允许IR1,IR3,IR5中断OUT DX,AL,MOV AL,20H;OCW2,普通EOI结束方式MOV DX,0FFC8H;OUT DX,AL,(3)从片8259A初始化编程(端口地址FFC8H,FFC9H),MOV AL,11H;ICW1,级联,边沿触发MOV DX,0FFCAH;OUT DX,AL,MOV AL,40H;ICW2,确定中断类型号MOV DX,0FFCBH;OUT DX,AL,MOV AL,03H;ICW3,从片接主片的IR3端OUT DX,AL,MOV AL,01H;ICW4,完全嵌套

16、,非缓冲方式OUT DX,AL;非自动EOI结束方式,MOV AL,0CFH;OCW1,允许IR4,IR5中断OUT DX,AL;,MOV AL,20H;OCW2,普通EOI结束方式MOV DX,0FFCAH;OUT DX,AL,四、PC机的中断控制系统,8088的INTR屏蔽中断请求线接中断控制器8259A。8259A有可进行优先级排队的八条中断请求线,其中IR0、IR1、IR2、IR3、IR4、IR5、IR6、IR7编号的中断已为系统配置的I/O设备所占用。,PC机将主控板上的8259A设置为:中断全嵌套优先权为固定排队:IR0的优先级最高,IR7的优先级最低;中断屏蔽控制口地址为21H,

17、与IRQ相应位被置0为允许中断。,8088/8086的中断向量共有00HFFH共256个。例如8253 的1/18.2S定时器中断向量是1CH。DOS系统将8253定时器设置为1/18.2S申请中断,它的中断服务地址已设置在中断向量1CH中。如用户需使用自己的1/18.2S定时,则可用自己的中断服务程序入口地址替换1CH中的内容。,8086/8088 微型机的中断系统(8259A的应用),例1:将数据段中起始地址 为Souce的100个字节 的数据传送到附加段 的Dest指向的单元中。LEA SI,Souce LEA DI,Dest MOV CX,100 CLDAgain:MOVSW DEC CX JNZ Again HLT,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号