第五章中断系统_第1页
第五章中断系统_第2页
第五章中断系统_第3页
第五章中断系统_第4页
第五章中断系统_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

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

文档简介

1、第五章,中断系统,中断的基本概念,8086/8088,的中断系统,可编程中断控制器,8259A,8259A,在微机系统中的应用,2020/4/5,退出,1,第一节,中断的基本概念,?,一,?,?,?,CPU,与外设之间的数据传送控制方式,(,即,I/O,控制方式,),,通常有以下三种:,程序控制方式,中断方式,DMA,方式,(Direct Memory Access),?,程序控制方式,:是在,CPU,的控制下,通过执行,程序指令进行的数据传送方式。又分为“无条,件传送”和“程序查询传送”两种方式。,长江大学地物学院,2,2020/4/5,程序控制方式,?,无条件传送方式:是在假定外围设备,(

2、Peripheral,Device),已经准备好的情况下,直接利用输入,/,输出指令,(,IN,指令,,OUT,指令,),与外围设备传送数据,而不去检测,外设的工作状态。,?,?,优点,:控制程序简单,缺点,:数据传送不可靠,?,程序查询方式,(,也称“条件传送”方式,),?,主要特点:,CPU,通过执行程序不断读取并检测外设的状态,只,有在外设确实已准备就绪的情况下,才进行数据传送;否则,,还要继续不断地查询外设的状态。,2020/4/5,长江大学地物学院,3,程序控制方式,?,查询式输入、输出程序流程图,读取状态信息,读取状态信息,否,是,准备好?,忙?,是,否,输入数据,输出数据,202

3、0/4/5,长江大学地物学院,4,程序控制方式,?,程序查询传送方式比无条件传送方式要,准确可靠,但在此种方式下,,CPU,要不断,查询外设的状态,占用了大量,CPU,时间,,而真正用于数据传送的时间却很少,即,CPU,的工作效率很低;另外,采用这种方,式,也很难满足实时系统对,I/O,处理的要,求。因此,出现了,中断控制方式。,长江大学地物学院,5,2020/4/5,二,中断方式,?,?,中断定义,:在程序运行中,出现了某种紧急事,件,,CPU,必须中止现行程序,转去处理此紧急,事件,(,执行中断服务程序,),,并在处理完毕后再,返回运行程序的过程。,中断的全过程及有关概念:,?,一个完整的

4、中断过程包括:,?,?,?,?,?,中断请求;,中断判优;,中断响应;,中断处理;,中断返回,.,2020/4/5,长江大学地物学院,6,二,中断方式,?,?,中断请求,是指中断源,(,引起中断的事件或设备,),向,CPU,发出的请求中断的,要求;,中断判优,当有多个中断源发出中断请求时,需要通过适当的办法,(,软件的;,硬件的;软、硬件结合的,),决定究竟先处理哪个中断请求,这就是“,中断,判优,”;,中断响应,是指,CPU,中止现行程序转至中断服务程序的过程;,中断处理,就是指,CPU,执行中断服务程序;,执行完中断服务程序后,返回到原先被中断的程序称为“,中断返回,”。,为了能正确返回到

5、原来程序被中断的地方,(,也称,断点,即主程序中当前指,令下面一条指令的地址,),,在中断服务程序的最后应专门放置一条,中断返,回指令,。,另外,为了使主程序在返回后仍能从断点处继续执行,,还需要在中断服,务程序的开头保护现场,(,通过,PUSH,指令实现,),,在中断服务程序的末,尾恢复现场,(,通过,POP,指令实现,),。,长江大学地物学院,7,?,?,?,?,?,2020/4/5,三,中断响应和处理过程,?,对于不同的中断类型,(,如可屏蔽中断、不,可屏蔽中断;外部中断、内部中断,),,,处理器,(CPU),进行响应和处理的具体过程,并不完全相同;另外,就是对同一种中,断类型,(,如可

6、屏蔽中断,),,不同的处理器,(,如,Z80,,,80X86),进行响应和处理的过程,也不尽相同。,长江大学地物学院,8,2020/4/5,三,中断响应和处理过程,?,?,中断一般由硬件,(,处理器内部,),和软件,(,由程序设,计者编写的中断服务程序,),共同完成,即整个,中断响应和处理过程是由,CPU,内部的有关,硬件,和,中断处理软件,密切配合完成的。,针对一个具体的系统,(,机型,),,中断服务程序设,计者应该清楚在中断响应时,“,硬件,”完成了,哪些操作,(,如,FR,是否已被压入堆栈,),,还需要,“,软件,”,(,中断服务程序,),完成哪些操作。,长江大学地物学院,9,2020/

7、4/5,四,中断优先级和中断嵌套,?,1.,中断优先级,(Priority),的解决方法,?,系统中多个中断请求可能同时出现,,CPU,只,能按一定的次序,(,优先级策略,),予以响应和处,理,这个响应的次序称为中断优先级。一般,的方法有:,?,?,?,软件查询法,(,需要少量硬件,),菊花链,(daisy chain),优先级排队电路,可编程中断控制器,(,如,8259),2020/4/5,长江大学地物学院,10,(1),软件查询法,INT,“,或”,2,1,0,端口号,XXH,CRT,键,盘,打,印,7,6,磁,盘,?,磁,带,?,把各个外设的中断请求信号,“相或”,,产生一个总的,INT

8、,信,号,当,CPU,响应中断后,进入中断处理程序,在中断处理程序的,开始部分安排一段带有优先级的查询程序。,?,?,2020/4/5,优点:省硬件,缺点:中断响应慢,长江大学地物学院,11,(2),菊花链优先级排队电路,*,设备,1,设备,2,设备,3,接口,接口,接口,中断回答,中断请求,INT1,INT2,INT3,菊花链,CPU,逻辑电路,INTA,INTR,+5V,INT1+INT2+INT3,集电极开路门,(OC,门,),2020/4/5,长江大学地物学院,12,(2),菊花链优先级排队电路,?,INTR=INT1+INT2+INT3,?,当,INTA,信号沿菊花链行进时,最,靠近

9、,CPU,并发出,INT,请求的接口将,中断请求,首先拦截住,INTA,信号,并送出,中,断类型码,,进入相应的中断处理,程序;在服务完成后撤销其请求,(,解除对下一级的阻塞和封锁,),。,INTA,INTR,(3),可编程中断控制器,(,如,8259,),2020/4/5,长江大学地物学院,13,五,中断嵌套,?,通常,正在执行较低级的中断服务程序,时,可以响应较高级的中断请求,而将,正在处理的中断暂时挂起,称为中断嵌,套。,STI,STI,.,IRET,.,IRET,可实现,“多重嵌套”,2020/4/5,长江大学地物学院,14,第二节,8086/8088,的中断系统,一,.,中断的分类:

10、在,8086/8088,系统中,可,将中断分为两大类,(,如表,5.1,表,5.2,所示,),:,?,第一类,:硬件中断:是由外部的中断请求信,号启动的中断,也称为外部中断。又可分为:,?,?,非屏蔽中断,NMI,:,整个系统只有一个,不受,IF,屏蔽,可屏蔽中断,INTR,:,受,IF,屏蔽,在中断控制器,8259,的统一管理下,可屏蔽中断有几个至几十个。,2020/4/5,长江大学地物学院,15,中断的分类,(,注意,这里的,IF,是,CPU,内部的标志寄存器的,IF,位,,IF,0,,则对所有从,INTR,引脚进入的中断请求均不予,响应,(,“,总开关”,),;另外,也可以在,CPU,外

11、部的中断,控制器,(8259),中以及各个,I/O,接口电路,(,如,8255),中对,某一级中断或某个中断源单独进行屏蔽,),。,?,第二类,:软件中断:是由,CPU,内部的标志状态,(,如,TF,、,OF),或执行一条中断指令,(INT n),,以及,除数为,0,引起的中断,也称为内部中断。,2020/4/5,长江大学地物学院,16,二,中断向量和中断向量表,?,?,?,中断向量,即中断服务程序的入口地址。,中断向量表是存放中断向量,(,中断服务程序入,口地址,),的一个特定的内存区域,(,最低地址区,).,一个中断向量占,4,个字节单元,其中:,?,?,低地址的两个字节单元存放中断服务程

12、序入口地址,的偏移量,(,IP,),低字节在前,(,低地址,),,高字节在后,(,高地址,);,高地址的两个字节单元存放中断服务程序入口地址,的段地址,(,CS,),低字节在前,(,低地址,),,高字节在后,(,高地址,),。,长江大学地物学院,17,2020/4/5,中断向量和中断向量表,?,?,8086/8088,的中断向量表如书,P80,图,5.1,所示。,解释:,?,?,8086/8088,可以处理,256,种中断,对每种中断都指定一个中断,类型号,(,也称中断向量号,),,每个中断类型号与一个中断服务程,序的入口地址相对应。,256,个中断向量要占,256*4,1024,个字节单元,

13、地址编号从,00000H003FFH,?,?,?,5,个专用中断,(,类型,0,类型,4),,它们有固定的定义和处理功能;,27,个保留的中断,(,类型,5,类型,31,),。占,0000:0014H,0000:007FH,,共,108,个字节单元。这个区域供系统使用,不允许,用户自行定义。,224,个用户可定义的中断,(,类型,32,类型,255,),。占,0000:0080H0000:03FFH,单元;使用时,要由用户自行填写相,应的中断入口地址。(其中有些中断类型已经有了固定用途,例,如,,类型,21H,的中断已用作,MS-DOS,的,系统功能调用,),。,长江大学地物学院,18,202

14、0/4/5,中断向量和中断向量表,?,由于中断向量在中断向量表是按中断类型号顺序存放,的,所以每个中断向量的地址可由,中断类型号,4,计算,出来。,CPU,响应中断时,需把中断类型号,N,乘以,4,,得,到中断向量的对应地址,4N(,该中断向量所占,4,个字节单,元的第一个字节单元的地址,),,然后把由此地址开始的,两个低字节单元,的内容装入,IP,寄存器:,IP,(4N,4N+1),再把,两个高字节单元,的内容装入,CS,寄存器:,CS (4N+2,4N+3),,,这就是转入中断类型号为,N,的中,断服务程序的控制过程。,N,的来源,对于不同的中断,类型,(,内部,外部,:NMI,、,INT

15、R),情况有所不同,详见后,述,2020/4/5,长江大学地物学院,19,中断向量和中断向量表,?,例,1,:若中断类型号为,3,,则由中断类型号取,得中断服务入口地址的过程如下图所示:,中断类型号,3,4,内存,00000H,低地址,000CH,00001H,.,0000CH,(0000:000CH),00(IP,L,),0A(IP,H,),00(CS,L,),1E(CS,1E00 0 H,H,),+ 0A0 0 H,.,(1E00:0A00H),1EA00H,中断服务程序,1EA0 0 H,2020/4/5,FFFFFH,长江大学地物学院,高地址,20,中断向量和中断向量表,?,例,2.,

16、中断类型号为,20H,,中断服务程序的,入口地址存放在,0000:0080H,开始的,4,个,单元中。若:,?,?,?,?,(0080H)=10H,(0081H)=20H,(0082H)=30H,(0083H)=40H,则:,中断服务程序的入口地址,为,CS=4030;IP=2010,入口地址为,:43210,2020/4/5,长江大学地物学院,21,中断向量和中断向量表,?,例,3.,中断类型号为,23(17H),,中断服务程序的,入口地址为,:2340:7890H,,由于中断类型号,17H,对应的中断向量存放在,0,段的,0000:005CH(17H,4=5CH),处,所以有:,?,(00

17、5CH)=,90,0001 0111 B,?,(005DH)=,78,左移,2,位,:,0101 1100 B,?,(005EH)=,40,5,C,H,?,(005FH)=,23,2020/4/5,长江大学地物学院,22,三,8086/8088,中断处理流程图,(1),结束当前指令,内部自动提供类型码,(1),(2),FR栈,除法错,INT,Y,n,INT0?,读中断类型码,(3),TF暂存器,N,响应中断,(4),NMI?,Y,0TF和IF,N,(5),CS、IP栈,INTR?,IF=1?,(4N,4N+1),IP,N,(4N+2,4N+3),CS,N,TF=1?,Y,有NMI?,N,执行下

18、一条指令,N,Y,暂存器=1?,N,执行中断服务程序,执行IRET指令,2020/4/5,长江大学地物学院,(弹出CS,IP,FR),23,(1),结束当前指令,内部自动提供类型码,(1),FR栈,除法错,INT,Y,(2),读中断类型码,n,INT0?,(3),TF暂存器,N,响应中断,NMI?,Y,(4),0TF和IF,N,(5),CS、IP栈,INTR?,IF=1?,(4N,4N+1),IP,N,(4N+2,4N+3),CS,N,TF=1?,Y,有NMI?,N,执行下一条指令,N,Y,暂存器=1?,N,执行中断服务程序,执行IRET指令,2020/4/5,长江大学地物学院,(弹出CS,I

19、P,FR),24,8086/8088,中断处理流程图,?,*8086,中断优先级,(Priority),中断,优先,?,说明:,级,?,(1)(5),步是,CPU,的内部处理,(,由,除法错,INTn,INT0,最高,硬件自动完成,),NMI,?,所有内部中断,(,INTR,INT0,、单步,),以及,除法错、,NMI,中断不需,INT n,、,单步中断,最低,要从数据总线上读取中断类型,码,而,INTR,中断需读取中断类,型码,中断类型码由发出,INTR,信号的接口提供。,2020/4/5,长江大学地物学院,25,单步运行方式时发生中断的处理过程,IF=1,TF=1,执行DIV或IDIV,指

20、令,发生除法错,除法错中断识别,形成类型码00H,FR-栈,TF-暂存器,2010H:4030H,清IF,TF,CS,IP-栈,(0,1)-IP,执行下一,(2,3)-CS,条指令,5040H:7060H,单步中断识别,形成类型码01H,FR-栈,TF-暂存器,.,执行除法错处理程,清IF,TF,.,序;执行IRET指令,,CS,IP-栈,.,弹出CS、IP、FR,(4,5)-IP,.,(6,7)-CS,执行单步中断服务程序,执行IRET,弹出CS,IP,FR,2020/4/5,长江大学地物学院,26,IF=1,TF=1,执行DIV或IDIV,指令,发生除法错,除法错中断识别,形成类型码00H

21、,2010H:4030H,执行下一,条指令,5040H:7060H,.,.,.,.,执行除法错处理程,序;执行IRET指令,,弹出CS、IP、FR,FR-栈,TF-暂存器,清IF,TF,CS,IP-栈,(0,1)-IP,(2,3)-CS,单步中断识别,形成类型码01H,FR-栈,TF-暂存器,清IF,TF,CS,IP-栈,(4,5)-IP,(6,7)-CS,执行单步中断服务程序,执行IRET,弹出CS,IP,FR,2020/4/5,长江大学地物学院,27,单步运行方式时发生中断的处理过程,?,堆栈的情形:,低地址,60,70,IP,40,50,CS,(FR),TF=0,30,40,IP,10,

22、20,CS,高地址,(FR),TF=1,2020/4/5,长江大学地物学院,28,可屏蔽中断过程,?,见图,5.3,2020/4/5,长江大学地物学院,29,2020/4/5,长江大学地物学院,30,四,软件中断,(,内部中断,),?,除法错中断,(,也称除数为,0,中断,),类型,0,?,在执行,DIV(,无符号除法,),或,IDIV(,带符号除法,),指令时,,若发现除数为,0,,则立即产生一个类型号为,0,的内部,中断,,CPU,转向除法错中断处理程序。,若上一条指令执行的结果使溢出标识位,OF,被置,1,,,则接着执行,INTO,指令时,将引起类型为,4,的内部中,断,,CPU,转入对

23、溢出错误处理程序,若,OF=0,时,,INTO,指令执行空操作,即,INTO,指令不起作用。,INTO,指令通常安排在算术指令之后,以便在溢出时,能及时处理。如下举例:,长江大学地物学院,31,?,溢出中断,类型,4,?,2020/4/5,软件中断,主程序:,.,.,.,溢出中断服务程序:,ADD AX,BX;,若,OF=1,INT O,IRET,?,软件,(,指令,),中断,(,执行,INT n,指令引起的中断,),?,双字节指令,第一个字节为,操作码,;第二个字节为,中断类型号,,该指令控制,CPU,转向相应的中断服务,程序。,长江大学地物学院,32,2020/4/5,软件中断,?,断点中

24、断,类型,3,?,INT3,或简写为,INT,,是单字节指令。调试程,序时可以在一些关键性的地方设置断点,使,CPU,在此断点处执行中断服务程序。,TF=1,单步执行,?,单步中断,类型,1,.,2020/4/5,长江大学地物学院,33,软件中断,(,内部中断,),的特点,?,?,?,中断类型号由,CPU,内部自动提供,(,包括由,中断指令第二字节提供的中断类型号,),,,不需去执行中断响应总线周期读取中断,类型号,。,除单步中断外,所有内部中断,(,除法错,,INTO,,,INT n),均不可以用软件来屏蔽。,除单步中断外,所有内部中断都比外部,中断优先级高。,长江大学地物学院,34,202

25、0/4/5,五,中断服务程序的一般结构,保护现场,(,将需要保护的寄存器压入堆栈,),例如:,STI(,可选,);,PUSH AX,PUSH BX,中断处理,PUSH CX,恢复现场,POP CX,IRET,POP BX,POP AX,2020/4/5,长江大学地物学院,35,?,指令系统中没有单独置“,1,”,或清“,0,”,TF,的指令,可实现如下:,PUSH FR; FR,的内容压入堆栈,0-TF,PUSH FR,POP AX; FR,的内容弹出到,AX,POP AX,1-TF,OR AX,0100H;,使,AX,中对应,TF,的位置为“,1,”,,其他位不,AND AX,变,PUSH

26、AX;,PUSH AX;,修改后的,AX,内容压入栈,POPF,POPF,弹回到,FR,(TF=1),2020/4/5,长江大学地物学院,36,第三节,可编程中断控制器,8259A,(8259A Programmable Interrupt Controller-PIC),?,?,Intel 8259A,用于管理和控制,80 x86,的外部,中断请求,实现优先级判决,提供中断,矢量码,屏蔽中断输入等功能。,使用单片,8259A,可以管理,8,级中断,采用,级联方式,可扩充到,64,级(用,9,片,8259A,)。,2020/4/5,长江大学地物学院,37,可编程中断控制器,8259A,?,.,

27、?,8259A,INT,INTA,IR,0,?,CPU,中,断,请,求,IR,7,CPU,INTR,.,.,.,INTR,INTA,?,8259A,主,.,0,IR,.,.,.,.,7,IR,8259A,从,.,.,.,.,.,.,IR,0,IR,7,INTA,8259A,从,IR,0,单片,IR,7,级联,2020/4/5,长江大学地物学院,38,可编程中断控制器,8259A,?,一、,8259A,的引脚功能,?,封装形式,DIP),DIP:Dual-In-Line Package ,28,脚双列直插(,28,pin,如图所示。,2020/4/5,长江大学地物学院,39,可编程中断控制器,8

28、259A,CS,1,28,V,CC,WR,2,27,A,0,RD,3,26,D,INTA,7,4,25,IR,7,D,6,5,24,IR,6,D,5,6,23,IR,5,D,4,7,8259A,22,IR,D,3,8,21,4,IR,3,D,2,9,20,IR,2,D,1,10,19,IR,1,D,0,CAS,11,18,IR,0,0,CAS,12,17,INT,1,13,16,SP/EN,2020/4/5,GND,14,长江大学地物学院,15,CAS,2,40,可编程中断控制器,8259A,片选信号(,Chip Select),低电平有,效,来自地址译码器的输出只有,CS,有效,时,,CPU

29、,才能对,8259A,进行读写操作。,?,WR,写信号,低电平有效,来自,CPU,的,WR,输出;当,CS,有效且,WR,有效时,使,8259A,接受,CPU,送来的命令字。,?,RD,读信号,低电平有效,来自,CPU,的,RD,输出;且,CS,有效且,RD,有效时,使,8259A,将状态信息放到数据总路线上,供,CPU,检测。,2020/4/5,41,长江大学地物学院,?,CS,可编程中断控制器,8259A,?,?,?,?,D,7, D,0,:,双向数据总线,接到系统数据总线的,D,7, D,0,上,用来传送控制字、状态字和中断,类型号。,IR,7,IR,0,:,中断请求信号,输入,来自外部

30、接口,电路。(单片时),INT,:向,CPU,发出的中断请求信号。(单片,时)。,INTA,:中断响应信号,由此接收,CPU,发来的中,断响应脉冲。,长江大学地物学院,42,2020/4/5,可编程中断控制器,8259A,?,A,0,:地址输入信号,用于对,8259A,内部寄存器的寻址。,?,CAS,2, CAS,0,:,级联线(,CASCADE,LINES,),传送,3,位,标,识码,,用于区分特定的从控制器。双向:对于主片为输,出,对于从片为输入。,?,SP/ EN,:,从片,/,允许缓冲器信号。双功能引脚:,?,作为输入时,,8259A,8259A,作为主片(,作为从片(,SP/ EN,

31、1,),SP/ EN,0,)见,P99,图,5.8,?,作为输出时,用来启动(允许)数据总线收发器(如,8286,)。,*,究竟是作为输入还是输出,取决于,8259A,是否工作于“缓冲方,式”(即,8259A,是否通过一个“数据总线收发器”与系统总线相,连)。详见后面,ICW,4,的格式。,2020/4/5,长江大学地物学院,43,二、,8259A,的内部结构,CPU,AD,7,AD,0,SP/EN,D,7,D,0,RD,WR,A,0,ICW,1,ICW,2,OCW,1,(,IMR,),OCW,2,PR,IRR,CAS,0,CAS,1,CAS,2,ISR,IR,0,.,.,.,IR,7,INT

32、A,INTR,2020/4/5,.,.,.,地址,译码,CS,INTA,INT,ICW,3,ICW,4,长江大学地物学院,OCW,3,44,2020/4/5,长江大学地物学院,45,8259A,的内部结构,?,IRR,Interrupt Request Register,?,PR,-Priority Resolver,?,ISR,-In-Service Register,?,IMR,-Interrupt Mask Register,?,ICWs-Initialization Command Words,?,OCWs-Operation Command Words,?,7,个,CPU,可访问的寄

33、存器,分两组:,?,初始化命令字,ICW,OCW,1,ICW,4,-,系统初启时设定。,?,操作命令字,OCW,中断处理的动态管理和控制,1,3,系统运行时,由应用程序设定,(,实现对,).,initialization,The OCWs can be written into the 8259A anytime after,。,2020/4/5,长江大学地物学院,46,8259A,的内部结构,?,7,个寄存器的寻址问题,:,规定:,A,0,0,ICW,1,:,用偶地址写入,且,D,4,=1,1,ICW,1,ICW,2,紧接着,ICW,1,ICW,3,4,入,1,,用奇地址写,1,OCW,1,

34、:,也用奇地址写入,但不紧跟,ICW,0,OCW,1,0,OCW,2,也用偶地址写入,但,D,3,4,=0,即:,D,0,4,D,3,1,ICW,1,?,采用了专门的“标识,0,0 0,OCW,位,以节省输入地址,2,的引脚数,(,仅用了,A,0,),2020/4/5,0,0 1,长江大学地物学院,OCW,3,47,8259A,的内部结构,?,8259A,的处理部件:,?,?,?,中断请求寄存器,IRR,8,位寄存器控制逻辑,作用,:接受并锁存来自,IR,0,IR,7,的中断请求信号,中断服务寄存器,ISR,作用,:保存当前正在处理的中断请求,优先级裁决器,PR,作用,:把新进入的中断请求和当

35、前正在处理的中断,进行比较,以决定哪一个优先级更高,(,见,P90,图,5.7),2020/4/5,长江大学地物学院,48,2020/4/5,长江大学地物学院,49,8259A,的内部结构,?,处理过程:,?,?,IR,0,IR,7,上出现某一中断请求信号,-,IRR,对应位被置,“,1”,-,由,IMR,的相应位决定是否将其屏蔽,(,屏蔽位,=1,,不通过;屏蔽位,=0,,通过,),-,中断请求进,PR,-,PR,把新进入的中断请求和当前正在处理的中断进,行优先级比较,-,若新进入的中断优先级高,该中断,请求被送到,CPU,。,若,CPU,的,IF=1,,,CPU,完成当前指令后,响应中断,

36、,在,INTA,引脚上发出两个负脉冲,(,执行两个中断响应,总线周期,参见,P90,图,5.4),:,长江大学地物学院,50,2020/4/5,8259A,的内部结构,?,处理过程,(,续,):,?,8259A,收到第一个负脉冲后,?,?,?,使,IRR,锁存允许,不予接受,IR,0,IR,7,上的中断请求信号;直,到第二个负脉冲结束后,才又使,IRR,锁存禁止,(,输入输出透,明,),使,ISR,的相应位置“,1”,,以便为优先级裁决器以后的裁决,提供依据。,清除,IRR,的相应位。,把中断类型码寄存器的内容,(,ICW,2,的内容,),送到,D,7,D,0,如果,ICW,4,的,AEOI,

37、位为,1,,则在第二个,INTA,脉冲结束时,将,ISR,中被第一个,INTA,脉冲置“,1”,的位清除,(,自动结束,),;,否,则,要等到中断结束命令,(EOI),发送后才能清除。,长江大学地物学院,51,?,8259A,收到第二个负脉冲后:,?,?,2020/4/5,?,2020/4/5,长江大学地物学院,52,三,8259A,的工作方式,1.,设置优先级的方式,2.,屏蔽中断源的方式,3.,中断结束方式,4.,中断触发方式,5.,连接系统总线的方式,2020/4/5,长江大学地物学院,53,三,8259A,的工作方式,?,1 .,设置优先级的方式,?,(1),全嵌套方式,(,FULLY

38、 NESTED MODE,),也称固定优先级方式。在这种方式下,由,IR,i,引入的中断请求,具有固定的优先级,IR,0,(,最高,),IR,7,(,最低,).,This mode is entered after initialization unless another mode,is programmed.,当一个中断请求被响应时,,ISR,中的对应位,IS,n,被置“,1”,,,8259A,把中断类型码放到数据总线上,,然后,进入中断服务程,序。一般情况下,(,除了,“中断自动结束”方式,外,),,在,CPU,发出,中断结束命令,(,EOI,),前,此对应位一直保持为“,1”,封锁同级

39、,或低级的中断响应,但并不禁止比本级优先级高的中断响应,实现中断“嵌套”。,2020/4/5,长江大学地物学院,54,8259A,的工作方式,?,(2),特殊全嵌套方式,(,SPECIAL FULLY NESTED MODE,SFNM,),?,?,?,在处理某一级中断时,不但允许优先级更高的中断请求进入,,也允许同级的中断请求进入。,用于主从结构的,8259,系统中,将主片设置为“,特殊全嵌套方,式,”。,通过,ICW,4,的“,SFNM,”,位可以设置此种方式。,8259(,主片,),8259(,从片,),IR,0,IR,1,CPU,IR,0,IR,1,IR,7,55,IR,7,2020/4

40、/5,长江大学地物学院,8259A,工作方式,?,(3),优先级自动循环方式,(,AUTOMATIC ROTATION,),?,?,?,优先级是循环变化的,(,不希望有固定的优先级差别,),一个,设备的中断服务完成后,其优先级自动降为最低,而将最,高优先级赋给原来比它低一级的中断请求。,开始时,优先级队列还是:,IR,0,-IR,7,,若此时出现,了,IR,0,请求,响应,IR,0,并处理完成后,队列变为:,IR,0,?,IR,1,,,IR,2,,,IR,3,,,IR,4,,,IR,5,,,IR,6,,,IR,7,,,IR,0,。,IR,7,若又出现了,IR,4,请求,处理完,IR,4,后,队

41、列变为:,IR,6,_,系统中是否采用“,自动循环优先级,”,由,IR,5,操作命令字,OCW,2,来设定。,IR,4,IR,1,IR,2,IR,3,2020/4/5,长江大学地物学院,56,8259A,的工作方式,?,(4),优先级特殊循环方式,(SPECIFIC,ROTATION),?,与“优先级自动循环方式”相比,只有一点,不同,即可以设置开始的最低优先级。例如,,设定,IR,4,为最低优先级,那么,IR,5,就是最高优,先级,其余各级按循环方法类推。,(OCW,2,:”11000100”),2020/4/5,长江大学地物学院,57,8259A,的工作方式,?,2.,屏蔽中断源的方式,(

42、,中断屏蔽方式,),?,普通屏蔽方式,?,?,通过对中断屏蔽寄存器,(IMR),的设定,实现对相应位为“,1,”,的中,断请求的屏蔽。,可通过,OCW,1,使,IMR,的一位或几位置“,1”,。,作用:要求允许另一个低的中断请求被响应,实现:,输出,OCW,3,(ESMM=1,SMM=1),输出,OCW,1,(,使,IMR,对应于本级的位为“,1”),?,*,特殊屏蔽方式,(,SPECIAL MASK MODE,),?,?,设置,“,中断级无效”,撤销,58,输出,OCW,1,(,使,IMR,对应于本级的位为“,0”),2020/4/5,输出,OCW,3,(ESMM=1,,,SMM=0),长江

43、大学地物学院,8259A,工作方式,?,3.,中断结束方式,(END OF INTERRUPT,EOI),?,(1),中断自动结束方式,(AUTOMATIC,AEOI,方式,),?,在第二个,INTA,后沿,即完成把对应的,ISR,位复位。,?,?,?,注意:,AEOI,方式是在中断响应后,而不是在中断处理程序,结束后将,ISR,位清,0,。这样,在中断处理过程中,,8259A,中就,没有,“正在处理”,的标识。此时,若有中断请求出现,且,IF,1,,则无论其优先级如何,(,比本级高、低或相同,),,都将得,到响应。尤其是当某一中断请求信号被,CPU,响应后,如不及,时撤销,就会再次被响应,“

44、二次中断”,所以,,AEOI,方式,适合于中断请求信号的持续时间有一定限,制以及不出现中断嵌套的场合。,通过,ICW,4,可以设置,AEOI,方式,(AEOI=1),长江大学地物学院,59,2020/4/5,8259A,工作方式,?,(2),一般,(,常规,),中断结束方式,?,?,?,?,适合于,全嵌套方式,。,实现:在中断服务程序结束时,向,8259A,发常规中,断结束命令,(,OCW,2,:EOI=1,SL=0,R=0,),例:,MOV AL,20H; OCW,2,=20H,OUT 20H,AL;,端口地址,=20H(,偶地址,),在全嵌套方式下,,ISR,中最高优先级的置“,1,”,位

45、,正,对应于当前正在处理的中断,将其清“,0,”,,就完成,了当前正在处理中断的结束操作。,IR,0,IR,7,2020/4/5,1,1,0,长江大学地物学院,1,60,8259A,工作方式,?,(3),特殊中断结束方式,(SPECIFIC EOI,SEOI),?,?,在非全嵌套方式下,无固定的优先级序列,(,使用设置,优先权命令或特殊屏蔽方式,),,此时,根据,ISR,的内,容,就无法确定刚刚所响应,(,处理,),的中断。这种情况,下,就不能用上述的,EOI,方式,进行中断结束处理,,而必须用特殊的中断结束命令,SEOI,用,OCW,2,:EOI=1,SL=1,R=0,L,2,L,0.,由,

46、L,2,L,0,指定清除,ISR,中的哪一位。,2020/4/5,长江大学地物学院,61,8259A,工作方式,?,4.,中断触发方式,?,电平触发方式:由,IR,i,上的有效电平来触发,“中断请求触发器”。,边沿触发方式:由,IR,i,上由低电平向高电平的,跳变来触发“中断请求触发器”。,?,?,由,ICW,1,的,LTIM,位,可以设置中断触发方式。,长江大学地物学院,62,2020/4/5,8259A,工作方式,?,5.,连接系统总线的方式,?,缓冲方式,(ICW,4,的,BUF=1),?,?,8259A,通过总线驱动器,(,如,8286),和数据总线相连。,在缓冲方式下,,8259A,

47、的,SP / EN,作为输出,(,EN,有效,),,,此,时,由,ICW,4,的,M/S,位来定义,(,标识,),本,8259A,是主片还是从,片。如图,?,非缓冲方式,(ICW,4,的,BUF=0),如图,?,?,?,即,8259A,直接与数据总线相连,SP,(,有,在“非缓冲方式下”,,8259A,SP / EN,的,作为输入,效,),SP / EN,此时,由,端来标识本,8259A,是主片还是从片。,在“非缓冲方式下”,,ICW,4,的,BUF,0,,,M/S,位无意义。,长江大学地物学院,63,2020/4/5,缓冲方式级联图,2020/4/5,长江大学地物学院,64,8259A,主从

48、级联图,2020/4/5,长江大学地物学院,65,8259A,工作方式,?,?,*,“,中断查询”方式,特点:总的说,既有中断的特点,又有查询,(,Polling,),的特点。,?,?,?,外设仍然向,8259A,发中断请求信号,要求,CPU,服务。,CPU,的,IF=0,,不响应外部的中断请求,(,对,CPU,的中断,请求信号不起作用,),此时,,CPU,需要用,软件查询,方法来确认中断源,从,而实现对设备的服务,?,先向,8259A,发查询命令,(,poll command,),?,OCW,3,:,0,0,0,0,1,1,0,0,P,2020/4/5,长江大学地物学院,66,8259A,的

49、工作方式,?,紧接着执行一条读指令,(IN,指令,),,读出专门的,“中断状态字”,:,A,0,0,D,7,IR,D,0,W,2,W,1,W,0,当前最高优先级的中断请求,1:,有设备请求服务;,0,:无设备请求服务。,?,当,8259A,收到,P=1,的查询命令后,在下一个,RD,信号,将使,ISR,的相应位置“,1,”,,就像收到了,INTA,一样,并,把上述的“中断状态字”送到数据总线上,由,CPU,读入,AL,。,长江大学地物学院,67,2020/4/5,四,8259A,的控制字及编程使用,?,8259A,的初始化流程:,ICW,1,ICW,2,NO(SNGL=1),级联方式?,YES

50、(SNGL=0),ICW,3,NO(IC,4,=0),需ICW,4,?,YES(IC,4,=1),ICW,4,2020/4/5,长江大学地物学院,准备接受中断请求,68,初始化命令字,ICW1,D7 D6 D5 D4 D3 D2 D1 D0,0,0,0,1,LTIM,ADI,SNGL,IC4,16,位机无效,特征,位,电平,触发,无效,单片,使用,需要,ICW4,A0=0,2020/4/5,长江大学地物学院,69,举例,?,设,ICW4,8259A,则程序段为,采用电平触发,:,单片使用,需要,MOV AL,1BH; ICW1,的内容,OUT 20H,AL;,写入,ICW1,的端口,(A0=0

51、),2020/4/5,长江大学地物学院,70,初始化命令字,ICW2,D7 D6 D5 D4 D3 D2 D1 D0,T7,T6,T5,T4,T3,0,0,0,中断类型号的高,5,位,16,位机无效,A0=1,初始化时只写入高,5,位,低,3,位是由中断请求线,Iri,的,二进制编码决定的,并且是在第一个,INTA1,到来时,将这个编码写入低,3,位的,.,同一个,8259A,上的,8,个中,断源的中断号的高,5,位都相同,.,2020/4/5,长江大学地物学院,71,举例,?,设硬盘中断号的高,5,位为,08H,它的中断请,求线连接,IR5,则程序段为,:,MOV AL,08H; ICW2,

52、的内容,OUT 21H,AL;,写入,ICW2,的端口,(A0=1),2020/4/5,长江大学地物学院,72,主片和从片初始化命令字,ICW3,D7 D6 D5 D4 D3 D2 D1 D0,主片,S7,S6,S5,S4,S3,S2,S1,S0,A0=1,主片的输入,IRi,上连接有从片的中断请求,INT,时,Si=1,否则,Si=0,从片,x,x,x,x,x,ID2,ID1,ID0,A0=1,从片的,3,位,ID,有,8,种编码,对应其连接的主片的,IRi.,2020/4/5,长江大学地物学院,73,举例,?,见图,5.8,设主片,8259A,的,IR3,和,IR6,分别,连接从片的,INT,则主片的,ICW3=01001000B,则程序段为,:,MOV AL,48H; ICW3,的内容,OUT 21H,AL;,写入,ICW3,的端口,(A0=0),?,对应,从片,A,的,ICW3=00000011B,从片,B,的,ICW3=00000110B,2020/4/5,长

温馨提示

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

评论

0/150

提交评论