




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院1本章主要内容:本章主要内容:l中断和异常的基本概念中断和异常的基本概念l8086/80888086/8088中断系统中断系统l82598259中断控制器中断控制器第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院28.1 8.1 概述概述什么是中断什么是中断? ?原程序CPU响应中断中断返回中断请求中断处理程序第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院3 中断的定义中断的定义 CPU CPU执行程序时,由于某种随机事件执行程序时,由于某种随机事件( (外部外部或内部或内部) ),使,使CPUCPU暂时暂时
2、“中断中断”正在运行的程正在运行的程序,转去执行一段特殊的服务程序序,转去执行一段特殊的服务程序( (称为中断称为中断服务程序或中断处理程序服务程序或中断处理程序) ),以处理该事件,以处理该事件,等该事件处理完后又返回被中断的程序继续等该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。执行,这一过程称为中断。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院4计算机中为何要引入中断?计算机中为何要引入中断?有利于有利于CPUCPU与外设并行、异步工作,提高与外设并行、异步工作,提高CPUCPU和外设的和外设的工作效率;工作效率;有利于有利于CPUCPU及时响应紧急事件;及
3、时响应紧急事件;实现对特殊事件的实时响应。如多任务操作系统中:实现对特殊事件的实时响应。如多任务操作系统中: 缺页中断;缺页中断;设备中断;设备中断;各类异常事件;各类异常事件;实时钟,实时钟,等。等。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院5微处理器中常用的中断技术微处理器中常用的中断技术(1 1)单线中断()单线中断(2 2)多线中断()多线中断(3 3)矢量中断)矢量中断80X86系列微处理器采用矢量中断技术系列微处理器采用矢量中断技术第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院68.2 8.2 中断中断 中断中断是由外设向是由外设向CPUCPU发出的
4、服务请求所引起的。发出的服务请求所引起的。中断的分类中断的分类中断请求信号中断请求信号 由外设接口由外设接口( (中断源中断源) )发出,送到发出,送到CPUCPU的的INTRINTR或或NMINMI引脚。引脚。对中断请求信号的要求:对中断请求信号的要求: NMI NMI :为边沿请求:为边沿请求 ; INTR INTR :为电平请求:为电平请求 。l中断请求信号应保持到中断被处理时为止;中断请求信号应保持到中断被处理时为止;lCPUCPU响应中断后,中断请求信号应及时撤销。响应中断后,中断请求信号应及时撤销。l在在8086/80888086/8088系统中,外设的中断要经过系统中,外设的中断
5、要经过8259A8259A可编程中断可编程中断控制器控制器(PIC)(PIC)的排队判优后向的排队判优后向CPUCPU发出:发出: (I/O (I/O接口接口) ) PIC CPU PIC CPU第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院7中断响应中断响应 在每条指令的最后一个时钟周期,在每条指令的最后一个时钟周期,CPUCPU检测检测INTRINTR或或NMINMI信号。信号。若以下条件成立,则若以下条件成立,则CPUCPU响应中断:响应中断:l当前指令执行完当前指令执行完对对INTRINTR,还应满足以下条件,还应满足以下条件: :当前指令是当前指令是STISTI和和IR
6、ETIRET,则下条指令也要执行完。,则下条指令也要执行完。当前指令带有当前指令带有LOCKLOCK、REPREP等指令前缀时,则把它们看等指令前缀时,则把它们看成一个整体,要求完整地执行完;成一个整体,要求完整地执行完;CPUCPU应处于开中断状态,即应处于开中断状态,即IF=1IF=1;l当前没有复位当前没有复位(RESET)(RESET)和保持和保持(HOLD)(HOLD)信号。信号。l若若NMINMI和和 INTRINTR 同时发生,则首先响应同时发生,则首先响应NMINMI。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院8CPUCPU中断响应时,要做下述三项工作中断响应
7、时,要做下述三项工作l向中断源发出向中断源发出INTAINTA中断响应信号;中断响应信号;l断点保护,包括断点保护,包括CSCS、IPIP和和PSWPSW(FLAGSFLAGS),),保证中断处理结束后能返回被中断的程序。保证中断处理结束后能返回被中断的程序。l获得中断服务程序首地址(入口)。获得中断服务程序首地址(入口)。如何得到中断处理程序的首地址?如何得到中断处理程序的首地址?固定入口法固定入口法中断向量法中断向量法第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院9中断处理(中断服务)中断处理(中断服务)l中断服务子程序特点中断服务子程序特点为为”远远”过程(类型为过程(类型
8、为FARFAR)要用要用IRETIRET指令返回指令返回l中断服务子程序要做的工作中断服务子程序要做的工作保护现场保护现场(PUSH reg(PUSH regs)s) 开中断开中断(STI)(STI) 进行中断处理进行中断处理 恢复现场恢复现场(POP reg(POP regs)s) 中断返回中断返回(IRET)(IRET) 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院10 中断返回中断返回 执行指令执行指令IRETIRET,将堆栈内保存的断点信息弹出到,将堆栈内保存的断点信息弹出到IPIP、CSCS和和FLAGFLAG中,保证被中断的程序从断点处继续往下执行。中,保证被中断的
9、程序从断点处继续往下执行。IPLIPHCSLCSHFLAGLFLAGHSPIPLIPHCSLCSHFLAGLFLAGHSPIPCSFLAG进入中断服进入中断服务程序时务程序时中断返回后中断返回后第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院118.3 异常异常 异常异常是是CPU执行某一条特定指令过程中或执行结束时,执行某一条特定指令过程中或执行结束时,产生的不正常或非法的状态。产生的不正常或非法的状态。异常的分类异常的分类 根据异常产生后的可否恢复性进行分类根据异常产生后的可否恢复性进行分类: :故障故障 是引起该故障的程序可以被恢复执行的一种异常。是引起该故障的程序可以被恢复
10、执行的一种异常。陷阱陷阱 是在指令执行期间被检测到,并在引起异常的指令是在指令执行期间被检测到,并在引起异常的指令执行后向系统报告的一种异常。如执行后向系统报告的一种异常。如INT nINT n指令。指令。中止中止 是微处理器面临严重错误时产生的一种异常。是微处理器面临严重错误时产生的一种异常。异常错误码异常错误码 见见P320P320,处理器保留,处理器保留0-160-16号异常,号异常,0-2550-255软中断。软中断。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院12 8.4 8.4 中断及异常的暂时屏蔽中断及异常的暂时屏蔽 中断及排错异常在某些条件下可以被忽略或屏蔽。中
11、断及排错异常在某些条件下可以被忽略或屏蔽。 8.5 8.5 中断及异常的优先级中断及异常的优先级 当处理器在执行一条指令时,检测到多个中断和异常时,当处理器在执行一条指令时,检测到多个中断和异常时,将按下表顺序进行处理:将按下表顺序进行处理:中断中断/ /异常类型异常类型优先级优先级排错故障排错故障非排错故障非排错故障陷阱指令陷阱指令INT n,INTOINT n,INTO排错陷阱排错陷阱NMINMI中断中断INTRINTR中断中断最高最高最低最低第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院13中断矢量FFH3FCH中断矢量FEH3F8H中断矢量FDH3F4H 段 偏移量中断矢
12、量2中断矢量1中断矢量0OAH840限量=3FF基地址=0150150物理地址IDT 寄存器(仅限于80286及以后的处理器)以初值示出基地址 对80286是24位 对80386/80486是32位中断矢量表8.6 实方式下的中断实方式下的中断实方式下,微处理器通过中断矢量表转入中断处理程序实方式下,微处理器通过中断矢量表转入中断处理程序第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院西南大学电子信息工程学院罗庚荣电话:1343603908014中断响应时序中断响应时序最小方式下的中断响应时序最小方式下的中断响应时序最大方式下的中断响应时序最大方式下的中断响应时序第第8 8章章 中
13、断和异常中断和异常西南大学电子信息工程学院15(1)条件IF=1NMI=0HOLD=0无内部中断IPCSPSWINTRINTAD0D7INTINTAD0D7(2)中断请求INT=1(3)INTA=0送8259A(4)类型码N送CPUIR0IR1IR7CPU和总线控制逻辑8259A4*N4*N+2(6)0IF0TF(7)(4*N)IP(4*N+2)CS转入中断处理程序(5)保护断点IPCSPSW(9)返回主程序(2)中断请求主程序外设中断请求(7)转入中断处理程序IRET(9)返回主程序(8)开中断STI中断处理程序 可屏蔽中断响应过程可屏蔽中断响应过程第第8 8章章 中断和异常中断和异常西南大
14、学电子信息工程学院16执行指令中断请求?中断响应保护现场中断服务程序恢复现场返回执行下条指令YN 中断处理流程中断处理流程第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院17中断描述符表中断N的门8N中断N-1的门8(N-1)中断2的门中断1的门中断0的门10H80限量基地址IDT 寄存器基地址=24位 用于80286 =32位 用于80386/804860158.7 8.7 虚地址虚地址保护方式下的中断和异常保护方式下的中断和异常保护方式下,微处理器通过中断描述符表转入中断处理程序保护方式下,微处理器通过中断描述符表转入中断处理程序中断描述符表中断描述符表第第8 8章章 中断和异
15、常中断和异常西南大学电子信息工程学院18中断描述符中断描述符 包括中断门描述符,陷阱门描述符和任务门描述符。包括中断门描述符,陷阱门描述符和任务门描述符。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院19第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院20通过中断门及陷阱门的转移通过中断门及陷阱门的转移 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院21Outer SSOuter ESPEFLAGSOuter CSOuter EIPError CodeLimitIRET前的ESP指针中断后的ESP指针SS0内层栈外层栈0SS中断前及IRET后的ESP指针
16、Limit向外返回向内中断堆线向下增长 通过中断门或陷阱门向内层转移通过中断门或陷阱门向内层转移 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院22NT=0NT=0时的中断时的中断( (或异常或异常) )返回返回 中断或异常处理程序执行完时,执行一条中断或异常处理程序执行完时,执行一条IRETIRET指令,完成指令,完成向主程序的返回。向主程序的返回。 若通过中断门或陷阱门转入处理程序,在转若通过中断门或陷阱门转入处理程序,在转入过程中已将入过程中已将NTNT清零,清零, 表明是同一任务内的程序转移。因而,表明是同一任务内的程序转移。因而, NT=0NT=0时的中断时的中断( (
17、或异常或异常) )返回属同一任务的返回。返回属同一任务的返回。 然而,然而, 由于由于转入中断处理程序时,可以转入同级或更内层的级,转入中断处理程序时,可以转入同级或更内层的级, 故返回时故返回时是返回到同一级或外层级。是返回到同一级或外层级。 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院23 通过任务门的转移通过任务门的转移 系统产生某一中断或异常时,将该中断或异常的矢量号乘以系统产生某一中断或异常时,将该中断或异常的矢量号乘以8 8后作为指针去检索中断描述符表后作为指针去检索中断描述符表IDTIDT,若检索到的描述符是一,若检索到的描述符是一个任务门,个任务门, 则表示要转
18、移到不同任务的处理程序。与则表示要转移到不同任务的处理程序。与CALLCALL指令指令通过任务门进行任务切换一样,任务门提供一个通过任务门进行任务切换一样,任务门提供一个1616位选择子,位选择子,以指向处理程序任务的以指向处理程序任务的TSSTSS段。该段。该TSSTSS段必须是一个可用的段必须是一个可用的286 286 TSSTSS段或段或386/486 TSS386/486 TSS段。通过任务门到一个可用的段。通过任务门到一个可用的TSSTSS段,段, 转转入中断或异常处理程序的过程,与入中断或异常处理程序的过程,与CALLCALL指令通过任务门到可用指令通过任务门到可用的的TSSTSS
19、段,实现任务切换的过程相同。唯一不同的是中断或异常段,实现任务切换的过程相同。唯一不同的是中断或异常通过任务门引起的任务切换和程序转移提供错误码。在任务切通过任务门引起的任务切换和程序转移提供错误码。在任务切换完成后,换完成后, 如有必要,如有必要, 应将错误码压入新任务的堆栈中。应将错误码压入新任务的堆栈中。 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院248.8 8.8 可编程中断控制器可编程中断控制器8259A8259A主要特点:主要特点:l每片可管理每片可管理8 8级优先级中断控制;级优先级中断控制;l可扩展至对可扩展至对6464个中断源实现优先级控制;个中断源实现优先
20、级控制;l可编程设置不同中断管理方式;可编程设置不同中断管理方式;l根据中断源向根据中断源向x86x86提供不同中断类型码;提供不同中断类型码;l双列直插式双列直插式2828脚封装脚封装第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院251 18259A8259A的内部结构的内部结构第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院26 8259A8259A对中断请求的处理过程对中断请求的处理过程l当某当某IRIRi i有效时,有效时,IRRIRR相应位置相应位置1 1l若有效的若有效的IRIRi i未被屏蔽,则未被屏蔽,则向向CPUCPU发出中断请求发出中断请求l检测到
21、第检测到第1 1个个INTAINTA信号后,信号后,置置ISRi=1ISRi=1,IRRi=0IRRi=0l检测到第检测到第2 2个个INTAINTA信号后,信号后,把把ISRi=1ISRi=1中最高优先级的中断中最高优先级的中断类型码放到类型码放到DBDB上上l若工作在若工作在AEOIAEOI方式,在第方式,在第2 2个个INTAINTA结束时,使结束时,使ISRiISRi复位;复位;否则由否则由CPUCPU发出发出EOIEOI命令使命令使ISRiISRi复位复位第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院27 8259A 8259A的工作方式的工作方式中断优先方式中断优先方
22、式 中断优先方式分为中断优先方式分为固定优先级固定优先级和和循环优先级循环优先级两类。两类。固定优先级方式固定优先级方式运行中所有中断请求运行中所有中断请求IRIRi i的中断优先级固定不变。的中断优先级固定不变。加电后加电后8259A8259A默认优先级顺序从高到低为默认优先级顺序从高到低为IRIR0 0IRIR7 7 。优先级排列顺序可编程改变。优先级排列顺序可编程改变。IR7IR6IR5IR4IR3IR2IR1IR07654321032107654最低级最低级最高级最高级最高级最高级最低级最低级优先级优先级IR7IR6IR5IR4IR3IR2IR1IR0默认优先级默认优先级优先级可编程改
23、变优先级可编程改变第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院28循环优先级方式循环优先级方式 中断源轮流处于最高优先级中断源轮流处于最高优先级 ( (中断优先级循环中断优先级循环););初始优先级顺序可由编程改变初始优先级顺序可由编程改变; ;某中断请求某中断请求IRIRi i被处理后,其优先级别自动降为被处理后,其优先级别自动降为最低,原来比它低一级的中断上升为最高级最低,原来比它低一级的中断上升为最高级 。IR7IR6IR5IR4IR3IR2IR1IR07654321021076543最低级最低级最高级最高级最高级最高级最低级最低级ISR内容内容IR7IR6IR5IR4I
24、R3IR2IR1IR0IR4的服务结束以前的服务结束以前0101000001000000ISRiIR4的服务结束以后的服务结束以后第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院29中断嵌套中断嵌套方式方式 在中断处理过程中允在中断处理过程中允许被更高优先级的事件许被更高优先级的事件所中断称为中断嵌套。所中断称为中断嵌套。8259A8259A有两种中断嵌套有两种中断嵌套方式:方式:普通全嵌套方式普通全嵌套方式(默认方式)(默认方式) 一中断正被处理时,一中断正被处理时,只有只有更高优先级更高优先级的事的事件可以打断当前的中件可以打断当前的中断处理过程而被服务。断处理过程而被服务。例
25、如:例如:第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院30特殊全嵌套方式特殊全嵌套方式 一中断正被处理时,允许一中断正被处理时,允许同级同级或或更高优先级更高优先级的事件打断当前的中断处理过程而被服务。的事件打断当前的中断处理过程而被服务。注注: : 特殊全嵌套特殊全嵌套: :l仅用于多个仅用于多个82598259级连时的主级连时的主8259;8259;l不能用于从属不能用于从属82598259或单或单82598259系统。系统。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院31主8259AIR0IR1IR2IR3IR4IR5IR6IR7一般嵌套方式:从片的INT
26、被主片封锁,故更高级别的IR0-IR2中断也无法得到响应特殊嵌套方式:因主片不封锁从片的INT,故级别高的IR0-IR2中断可以得到响应。(但IR3-IR7仍被本从片封锁)假定IR3发生中断,并获得服务一般嵌套方式:IR4的中断被服务时,这些中断将被封锁。特殊嵌套方式:IR4的中断被服务 时 , 只 封 锁IR5-IR7。INT从8259AINTIR0IR1IR2IR3IR4IR5IR6IR7 一般全嵌套方式与特殊全嵌套方式的区别一般全嵌套方式与特殊全嵌套方式的区别 去CPU第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院32中断结束处理方式中断结束处理方式 当某一当某一IRIRi
27、 i中断被服务时,中断被服务时,ISRISR中的相应位中的相应位ISRISRi i=1=1,当服务,当服务结束后,则必须清零该结束后,则必须清零该ISRISRi i位。使位。使ISRISRi i=0=0是通过向是通过向8259A8259A发出发出中断结束命令(中断结束命令(EOIEOI命令)实现的。命令)实现的。 有三种有三种EOIEOI命令:命令:自动自动EOIEOI(AEOIAEOI)(自动(自动EOIEOI方式)方式)在第在第2 2个个INTA#INTA#结束时,由结束时,由8259A8259A使使ISRiISRi自动复位;自动复位;因不保留当前正在服务的中断的状态,故因不保留当前正在服
28、务的中断的状态,故AEOIAEOI不能不能用于中断嵌套方式。用于中断嵌套方式。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院33非指定非指定EOIEOI(NSEOINSEOI)(正常(正常EOIEOI方式)方式)由由CPUCPU发出正常发出正常EOIEOI命令,该命令,该EOIEOI命令使命令使ISRi=1ISRi=1的的位中优先级最高的那一位复位。位中优先级最高的那一位复位。 用于普通全嵌套方式用于普通全嵌套方式指定指定EOIEOI(SEOISEOI)(特殊(特殊EOIEOI方式方式)由由CPUCPU发出一条发出一条SEOISEOI命令,该命令,该EOIEOI命令中指出了命令中
29、指出了所要复位的所要复位的ISRISR的位号。的位号。 用于特殊屏蔽方式用于特殊屏蔽方式第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院34中断服务程序向从PIC发EOI命令读从PIC的ISR全0?向主PIC发EOI命令YIRET恢复现场N特殊全嵌套方式下的特殊全嵌套方式下的EOIEOI处理处理只有当从只有当从PICPIC的中断的中断全部处理完后,才能向全部处理完后,才能向主主PICPIC发发EOIEOI命令。命令。第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院35屏蔽中断源的方式屏蔽中断源的方式一般屏一般屏蔽蔽方式方式 用用IMRIMR屏蔽字屏蔽字允许或禁止允许或禁
30、止某位某位IRIRi i所对应的中断所对应的中断:IMIMi i=1 =1 禁止禁止中断,中断,IMIMi i=0 =0 允许中断。允许中断。特殊屏蔽方式特殊屏蔽方式原理原理:假定当前正在处理:假定当前正在处理IRIR6 6,先,先进入特殊屏蔽方式,然进入特殊屏蔽方式,然后设置后设置IMIM6 6=1=1。这时,除。这时,除IRIR6 6外的所有中断请求均能得到响。外的所有中断请求均能得到响。提供了允许较低优先级的中断能够得到响应的特殊手段。提供了允许较低优先级的中断能够得到响应的特殊手段。特殊屏蔽方式中只能用特殊屏蔽方式中只能用SEOISEOI命令结束中断。命令结束中断。第第8 8章章 中断
31、和异常中断和异常西南大学电子信息工程学院36中断触发方式中断触发方式边沿触发边沿触发IRIRi i出现上升沿出现上升沿 表示有中断请求表示有中断请求 电平触发电平触发IRIRi i出现高电平出现高电平 表示有中断请求表示有中断请求 在第在第1 1个个INTAINTA结束前,结束前,IRIRi i必须保持高电平必须保持高电平 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院37级联工作方式级联工作方式 采用最多采用最多9 9片片8259A8259A级连,可支持级连,可支持6464个中断源,个中断源,级连时只能有一片级连时只能有一片8259A8259A为主片,其余的均为从属片;为主片,
32、其余的均为从属片;例如:例如:第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院38 8259A8259A的编程使用的编程使用 8259A 8259A的控制命令分为:的控制命令分为:l初始化命令字初始化命令字ICWICW1 1ICW4ICW4在第一次使用在第一次使用82598259之前对之前对ICWICW1 1ICW4ICW4进行编程。进行编程。l操作命令字操作命令字OCWOCW1 1OCW3OCW3在在82598259初始化后或运行过程中用来改变中断控制方式。初始化后或运行过程中用来改变中断控制方式。l读出读出82598259内部寄存器内部寄存器(IRR(IRR、ISRISR和查询
33、字)的内容。和查询字)的内容。 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院398259A内部寄存器的寻址方法内部寄存器的寻址方法第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院40 8259A8259A的初始化流程和初始化命令字的初始化流程和初始化命令字写写ICW1写写ICW2级连?级连?写写ICW3需需ICW4?写写ICW4NNYY注意:次序不可颠倒注意:次序不可颠倒第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院418259A8259A的操作命令字的操作命令字OCWOCW nOCWOCW用于设置用于设置82598259的工作状态的工作状态n在初始化
34、后或程序运行中按某种运行要求写入在初始化后或程序运行中按某种运行要求写入nOCWOCW的写入顺序可任意的写入顺序可任意n写入地址要求:写入地址要求:OCW1OCW1必须写入奇地址端口必须写入奇地址端口(A0=1)(A0=1)OCW2OCW2,OCW3OCW3必须写入偶地址端口必须写入偶地址端口(A0=0)(A0=0) 第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院42OCW1OCW1 ( (中断屏蔽字中断屏蔽字IMR)IMR)设置中断源的屏蔽状态,设置中断源的屏蔽状态,Mi=0 Mi=0 允许引脚允许引脚IRIRi i申请中断,申请中断,Mi=1Mi=1则禁止申请中断;则禁止申请
35、中断;通过通过A0=1A0=1端口设置端口设置/ /读出读出OCW1OCW1的内容。的内容。D7D7D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1 D1 D0D0例如例如:8259:8259实验中实验中 IN AL,21HIN AL,21H MOV MKBAK,AL MOV MKBAK,AL ; ;保存保存82598259初始屏蔽字的状态初始屏蔽字的状态 CLI CLI; ;关中断关中断 AND AL,11111101BAND AL,11111101B OUT 21h,AL OUT 21h,AL ; ;打开键盘屏蔽打开键盘屏蔽M7M7M6M6M5M5M4M4M3M3M2M2M
36、1M1M0M0第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院43OCW2OCW2设置中断结束和优先级管理方式设置中断结束和优先级管理方式通过通过A0=0A0=0端口写入端口写入OCW2OCW2的内容。的内容。D7D6 D5 D4 D3 D2 D1 D0用用R R、SLSL、EOIEOI组合来选择组合来选择中断优先级和中断优先级和中断结束方式中断结束方式特征位特征位当当SL=1时,时,用来指定用来指定被操作的被操作的中断源。中断源。R RSLSLEOIEOI0 00 0L2L2L1L1L0L0例如:在例如:在82598259实验中实验中MOV ALMOV AL,61H61HOUT
37、20HOUT 20H,ALAL第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院44OCW3OCW3设置屏蔽方式、查询方式和控制中断状态读出设置屏蔽方式、查询方式和控制中断状态读出通过通过A0=0A0=0端口设置端口设置/ /读出读出OCW3OCW3的内容。的内容。 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D00 0ESMMESMMSMMSMM0 01 1P PRRRRRISRISRR RISRR RIS1 1 1 1 读读ISRISR1 0 1 0 读读IRRIRR0 x 0 x 无效无效ESMM SMMESMM SMM1 1 1
38、1 特殊屏蔽方式置位特殊屏蔽方式置位1 0 1 0 特殊屏蔽方式复位特殊屏蔽方式复位0 x 0 x 非特殊屏蔽方式非特殊屏蔽方式1 1 查询方式查询方式0 0 非查询方式非查询方式特征位特征位几点说明:几点说明:第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院特殊屏蔽方式的进入和退出特殊屏蔽方式的进入和退出45例如教材例如教材P340图图8.17第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院46查询方式下对查询方式下对8259A8259A的操作的操作 先写先写D D2 2=1=1到到OCW3OCW3,再对同一地址读入,即可得到查询字:,再对同一地址读入,即可得到查询字
39、:I Ix xx xx xx xw2w2w1w1w0w0读读IRR/ISRIRR/ISR:先写:先写OCW3OCW3,随后再对同一地址读,即可得,随后再对同一地址读,即可得到到IRRIRR或或ISRISR的内容。的内容。I=1表示有中断请求表示有中断请求请求服务的各中断源请求服务的各中断源中最高级中断中最高级中断例例1 1:读中断请求寄存器:读中断请求寄存器 MOV AL MOV AL,0AH0AHOUT 20HOUT 20H,ALAL IN AL IN AL,20H20H例例2 2:读中断服务寄存器:读中断服务寄存器 MOV AL MOV AL,09H09HOUT 20HOUT 20H,AL
40、AL IN AL IN AL,20H20H第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院47 8259A 8259A的应用的应用例例1 1:8259A8259A在在IBM-PCIBM-PC机中的应用机中的应用硬件电路硬件电路端口地址端口地址:20H:20H和和21H21H初始化命令字初始化命令字(ICW1ICW1)=13H=13H(ICW2ICW2)=08H=08H(ICW4ICW4)=09H=09H第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院48初始化程序段初始化程序段INTA00INTA00EQUEQU20H20HINTA01INTA01EQUEQU21H21
41、H;MOVMOVAL,13HAL,13H;ICW1ICW1OUTOUTINTA00,ALINTA00,ALMOVMOVAL,08HAL,08H;ICW2ICW2OUTOUTINTA01,ALINTA01,ALMOVMOVAL,09HAL,09H;ICW4ICW4OUTOUTINTA01,ALINTA01,AL一般全嵌套方式一般全嵌套方式缓冲方式缓冲方式中断正常结束中断正常结束第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院49例例2 : 8259A2 : 8259A在在IBM-PC/ATIBM-PC/AT机中的应用机中的应用硬件连线硬件连线端口地址端口地址主片主片: 20H: 20
42、H和和21H21H从片从片: A0H: A0H和和A1HA1H第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院50初始化命令字初始化命令字(ICW1ICW1)=11H=11H(ICW2ICW2)=08H=08H(ICW3ICW3)=04H=04H(ICW4ICW4)=11H=11H(ICW1ICW1)=11H=11H(ICW2ICW2)=70H=70H(ICW3ICW3)=02H=02H(ICW4ICW4)=01H=01H S7 S6 S5 S4 S3 S2 S1 S00 0 0 0 0 1 0 0主主片片从从片片 0 0 0 0 0 ID2 ID1 ID00 0 0 0 0 0
43、1 0第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院51本章作业本章作业(P345)(P345) 第第 5, 145, 14,1515题题第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院52ICW1ICW1 设置触发方式、级连控制和有无设置触发方式、级连控制和有无ICW4ICW4; 必须写入必须写入82598259的的A0=0A0=0地址地址, ,且且D4=1,D4=1,则启动则启动82598259初始化流程。初始化流程。D7 D6 D5 D4 D3 D2 D1 D0D7 D6 D5 D4 D3 D2 D1 D0ICW4控制控制1要写要写ICW40不写不写ICW4级连控制级连控制1单片方式单片方式0 级连方式级连方式触发方式触发方式1高电平有效高电平有效0 上升沿有效上升沿有效特征位特征位x xx xx x1 1LTIMLTIMx xSNGLSNGLIC4IC4第第8 8章章 中断和异常中断和异常西南大学电子信息工程学院53 ICW2 ICW2 设置中断类型码的基值;设置中断类型码的基值; 必须紧跟在必须紧跟在ICW1ICW1后,写入后,写入82598259的的A0=1A0=1地址。地址。例如:若例如:若(ICW2)=48H(ICW2)=48H,则,则 IR IR0 0的中断类型码为的中断类型码为48H48H, IR IR7 7的中断类
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冲压技术员岗位面试问题及答案
- 2025届贵州省遵义航天中学高一化学第二学期期末检测模拟试题含解析
- 2025届江西省吉安市吉水县第二中学化学高一下期末经典模拟试题含解析
- 甘肃省庆阳六中2025届化学高一下期末教学质量检测模拟试题含解析
- 名校联盟2025年高一化学第二学期期末复习检测试题含解析
- 沈阳社区食堂管理办法
- 毕业年级学生管理办法
- 农村住宅风貌管理办法
- 河南电子票据管理办法
- 煤矿机电设备考核体系研究
- 肿瘤中心建设计划书
- 快题设计课件
- 自考英语二4500词汇汇总
- 工程居间保密协议
- 成都市2021级(2024届)高中毕业班第一次诊断性检测(一诊)英语试卷(含答案)
- 社会经济咨询服务合同范本
- TCAPA 3-2021 毛发移植规范
- GB/T 18068.1-2012非金属矿物制品业卫生防护距离第1部分:水泥制造业
- 2023年黄冈市融资担保集团有限公司招聘笔试题库及答案解析
- 受限空间安全作业票填写模板(2022年更新)
- [计算机]力克工艺单软件kaledo_style案例
评论
0/150
提交评论