《微型计算机接口技术ppt课件》第5章-中断技术.ppt
《《微型计算机接口技术ppt课件》第5章-中断技术.ppt》由会员分享,可在线阅读,更多相关《《微型计算机接口技术ppt课件》第5章-中断技术.ppt(55页珍藏版)》请在三一办公上搜索。
1、第5章 中断技术,本 章 内 容 中断技术的基本概念 中断技术的工作原理 系统配置的中断资源的应用中断向量修改及中断服务程序的编写,1,5.1 中断 基本概念 中断是指CPU在正常运行程序时,由于外部/内部事件,或由程序引起CPU中断正在运行的程序,而转到为中断事件服务的程序中去,服务完毕,再返回执行原程序,这一过程称为中断。外部中断的特征:具有随机性。,2,5.2 中断的类型5.2.1 外部中断1.可屏蔽中断INTR这是由外部设备通过中断控制器用中断请求线INTR向微处理器申请而产生的中断,但微处理器可以用CLI指令来屏蔽(禁止),即不响应它的中断请求,因此把这种中断称为可屏蔽中断。2.不可
2、屏蔽中断NMI由系统硬件引发的中断,如协处理器出错、通道等。它的优先级高于外部硬件中断,且不受中断允许标志位(IF)的影响,即微处理器不可以用CLI指令来屏蔽,所以是不可屏蔽中断。,3,5.2.2 内部中断内部中断是由用户在程序中发出中断指令INTnH产生的,指令中的操作数n称为软中断号。内部中断包括DOS中断功能和BIOS中断功能两部分,可供用户在编写应用程序时调用。1.DOS功能调用DOS是存放在磁盘上的操作系统软件,其中内部中断INT 21H是DOS的内核。它是一个很重要、功能庞大的中断服务程序,包含06CH个子功能,包括对设备、文件、目录及内存的管理功能,涉及各个方面,可供系统软件和应
3、用程序调用,同时,由于它处在ROM-BIOS层的上一个层次,与系统硬件层有ROM-BIOS在逻辑上的隔离,所以,它对系统硬件的依赖性大大减少,兼容性好。2.BIOS功能调用BIOS是一组存放在ROM中、独立于DOS的I/O中断服务程序。它在系统硬件的上一层,直接对系统中的I/O设备进行设备级控制,可供上层软件和应用程序调用。,4,除了上述外部中断和内部中断两类中断之外,微机的中断系统还包括一些特殊中断,这些中断既不是由外部设备提出申请而产生的,也不是由用户在程序中发中断指令INTnH而发生的,而是由内部的突发事件所引起的中断,即在执行指令的过程中,CPU发现某种突发事件时就启动内部逻辑转去执行
4、预先规定的中断号所对应的中断服务程序。这类中断也是不可屏蔽中断,其中断处理过程具有与内部中断相同的特点,因此,有的书上把它们归结为内部中断这一类。这类中断有如下几种。(1)0号中断除数为零中断;(2)1号中断单步中断;(3)3号中断断点中断;(4)4号中断溢出中断。3.内部中断的应用DOS调用和BIOS调用是用户使用系统资源的重要方法和基本途径,也是用户编写MS-DOS应用程序使用很频繁的方法,应学会使用。,5,5.3 中断号5.3.1 中断号与中断号的获取1.什么是中断号中断号是系统分配给每个中断源的代号,以便识别和处理。中断号在中断处理过程中起到很重要的作用,在采用向量中断方式的中断系统中
5、,CPU必须通过中断号才可以找到中断服务程序的入口地址,实现程序的转移。2.中断号的获取CPU对系统中不同类型的中断源,获取它们的中断号的方法是不同的。可屏蔽中断的中断号是在中断响应周期从中断控制器获取的。内部中断INTnH的中断号(nH)是由中断指令直接给出的。不可屏蔽中断NMI以及CPU内部一些特殊中断的中断号是由系统预先设置好的,如NMI的中断号为02H,非法除数的中断号为0H等。,6,5.3.2 中断响应周期当CPU收到外部设备通过中断控制器提出的中断请求INT后,如果当前一条指令已执行完,且中断标志位IF=1时(即允许中断),又没有DMA请求,那么,CPU进入中断响应周期,发出两个连
6、续中断应答信号 完成一个中断响应周期。图5.1表示是中断响应周期时序。,7,一个中断响应周期完成的操作有:1.置位中断服务寄存器ISR 当CPU发出第一个脉冲 时,CPU输出有效的总线锁定信号,使总线在此期间处于封锁状态,防止其他处理器或DMA控制器占用总线。与此同时,中断控制器将判优后允许的中断级存放在寄存器ISR中,即将相应位置1,以登记正在服务的中断级别。在中断服务程序执行完毕之后,该寄存器自身不能清零,故需要向中断控制器发中断结束命令EOI才能清零。2.读取中断号 当CPU发出第二个脉冲 时,总线锁定信号撤除,总线被解封,地址允许信号ALE也变为低电平(无效),即允许数据线工作。正好此
7、时中断控制器将当前中断服务程序的中断号送到数据线上,由CPU读入。5.3.3 中断号的分配 系统对外部中断和内部中断一律统一编号,共有256个号,微机系统的中断号分配如表5.1所示。表中两块灰色区域的中断号分别是系统分配给PC微机系统中的中断控制器主片与从片的中断号,用户可以采用修改其中断向量的方法进行应用。,8,表5.1,9,10,5.4 中断触发方式与中断排队方式5.4.1 中断触发方式中断触发方式是指外部设备以什么逻辑信号去向中断控制器申请中断,中断控制器允许用边沿或电平信号申请中断,即边沿触发和电平触发两种方式。触发方式在中断控制器初始化时设定。5.4.2 中断排队方式 中断系统对中断
8、源的中断请求是按优先级提供服务的。中断优先级从高到低的顺序是:内部中断不可屏蔽中断可屏蔽中断。当系统有多个中断源时,就可能出现同时有几个中断源都申请中断,而微处理器在一个时刻只能响应并处理一个中断请求。为此,要进行中断排队,微处理器一般是按“优先级高的先服务”的原则提供服务,但也有其他一些中断排队的方式。中断排队方式在中断控制器初始化时设定。,11,具体中断排队方式如下:1.按优先级排队 根据任务的轻重缓急,给每个中断源指定CPU响应的优先级,任务紧急的先响应,可以暂缓的后响应。2.循环轮流排队 不分级别高低,CPU轮流响应各个中断源的中断请求,并为其服务。3.中断嵌套 在实际应用中,当CPU
9、正在处理某个中断源,即正在执行中断服务程序时,会出现优先级更高的中断源申请中断。为了使更紧急的、级别更高的中断源及时得到服务,需要暂时打断(挂起)当前正在执行的级别较低的中断服务程序,去处理级别更高的中断源,待处理完以后,再返回到被打断了的中断服务程序继续执行。这就是所谓的中断嵌套。INTR可以进行中断嵌套。NMI不可以进行中断嵌套。,12,5.5 中断向量与中断向量表 当发生中断,就意味着要发生程序的转移,即由主程序转移到服务程序去。那么,如何才能进入中断服务程序,即如何找到中断服务程序的入口地址是解决问题的关键。为此,当采用向量中断方式(不是查询中断方式)时,设置中断向量和中断向量表,通过
10、中断向量表中的中断向量查找中断服务程序的入口地址。5.5.1 中断向量与中断向量表 1.什么是中断向量 CPU响应中断后,中断源提供中断号,再由中断号生成地址信息,以此地址信息为指针,对程序的执行进行导向,引导到中断服务程序中去,故把这个地址信息称为中断向量(存储单元)。中断向量包括中断服务程序的段基址CS(高位字)和偏移地址IP(低位字)共4个字节。其中,中断号4=偏移地址IP;中断号4+2=段基址CS。例如,8号中断中断源的中断向量:IP8=84=20H21H;CS8=84+2=22H23H.,13,2.什么是中断向量表 所有的中断向量集中存放到存储器的某一区域,这一区域称之为中断向量表。
11、微机系统规定把存储器的0000H03FFH共1024个地址单元作为中断向量存储区,这表明中断向量表的起始地址是固定的,并且从存储器的物理地址0开始。中断向量表如图5.2所示。每个中断向量包含4个字节,这4个字节在中断向量表中的存放规律是向量的偏移量(IP)存放在两个低字节单元中,向量的基址(CS)存放在两个高字节单元中。,14,图5.2中断向量表,15,5.5.2 中断向量表的填写 中断向量表的填写分系统填写和用户填写两种情况。系统设置的中断服务程序,其中断向量由系统负责填写。用户开发的中断系统,在编写中断服务程序时,其中断向量由用户负责填写,可采用MOV指令直接向中断向量表中填写中断向量。不
12、过,一般情况下,用户都是通过修改中断向量的方法使用系统的中断资源,故很少由用户自己直接填写中断向量。,16,5.6 中断处理过程5.6.1 可屏蔽中断的处理过程1.中断申请与响应的握手过程当外部设备要求CPU服务时,需向CPU发出中断申请。CPU若发现有外部中断请求,并且处在开中断条件(IF=1),又没有DMA申请,则CPU在当前指令执行结束时,进入中断响应总线周期,响应中断请求,同时通过中断回答信号INTA,从中断控制器读取中断源的中断号,完成中断申请与中断响应的握手过程。这一阶段的主要目标是获取外部中断源的中断号。2.标志位的处理与断点保存微处理器获得外部中断源的中断号后,把标志寄存器FL
13、AGS压入堆栈,并置IF=0,关闭中断;置TF=0,防止单步执行。然后将当前程序(主程序)的代码段寄存器CS和指令指针IP压入堆栈,这样就把断点(返回地址)保存到了堆栈的栈顶。这一阶段的主要目标是完成由主程向服务程序转移前的准备工作。,17,3.向中断服务程序转移并执行中断服务程序将已获得的中断号乘以4得到地址指针,在中断向量表中,读取中断服务程序的入口地址CSIP,再把它写入代码段和指令指示器,实现程序控制的转移。这一阶段的主要目标是完成主程序向中断服务程序的转移,或称为中断服务程序的加载。4.返回断点中断服务程序执行完毕后,要返回主程序,因此,一定要恢复断点和标志寄存器的内容,否则,主程序
14、无法继续执行。为此,在中断服务程序的末尾,执行中断返回指令IRET,将栈顶的内容依次弹出到IP、CS和FLAGS,就恢复了主程序的执行。这一阶段的主要目标是完成中断服务程序向主程序的转移。,18,5.6.2 不可屏蔽中断和软中断的处理过程由于它们的不可屏蔽性,并且其中断号的获取方法与可屏蔽中断不一样,所以其中断处理过程也有所差别。其主要差别是:不需通过中断响应周期获取中断号,是由系统分配的;中断服务程序结束,不需发中断结束命令EOI,是自动结束方式。其他处理过程与可屏蔽中断的一样。,19,5.7 中断外部中断的解决方案5.7.1 中断控制器82C59A的外部特性,82C59A的外部引脚如图5.
15、3所示,3组信号线如下:(1)面向CPU的信号线。包括用于CPU发命令及读取中断号的8根数据线D0D7,一对中断请求线INT和中断回答线,以及、控制线与地址线、A0。(2)面向I/O设备的信号线。8根中断申请线IR0IR7,其作用有二:一是接收外设的中断申请,可接收8个外部中断源的中断申请;二是作外部中断优先级排队用,可进行8级中断排队,采用完全中断嵌套排队方式时,连接IR0的设备优先级最高,连接IR7的设备优先级最低。(3)面向同类芯片的中断级联信号线。中断级联信号线用于扩展中断源,包括主/从芯片的设定线/EN,3根用以传送从片识别码的级联线CAS0CAS2。,图5.3 82C59A引脚图,
16、20,5.7.2 中断控制器82C59A的工作方式1中断触发方式(1)边沿触发方式 IR0IR7输入线上出现由低电平到高电平的跳变,表示有中断请求。(2)电平触发方式 IR1IR7输入线出现高电平时,表示有中断请求。2中断级联方式 82C59A可以单片使用,也可以多片使用,两片以上使用时才有级联问题。级联问题分两个方面:从主片看,它的哪一根或哪几根中断申请输入线IR上有从片连接;从从片看,它的中断申请输出线INT与主片的哪一根中断申请输入线IR相连。,21,3.中断屏蔽方式82C59A的中断屏蔽是指对外设中断申请的屏蔽,即允许还是不允许外设申请中断,而不是对已经提出的中断申请响不响应的问题。8
17、2C59A有常规屏蔽方式和特殊屏蔽方式两种,常规屏蔽方式使用较多。(1)常规屏蔽方式 常规屏蔽方式是通过向82C59A屏蔽寄存器写入8位屏蔽码来实 现的,要屏蔽哪个中断申请,就将屏蔽码的相应位置1;不屏蔽的,即开放中断的,则相应位置0。例如,屏蔽码11111011B,表示仅开 放IR2,其他均屏蔽。(2)特殊屏蔽方式用于开放低级别的中断申请。允许比正在服务的中断级别低的中断申请中断,而屏蔽同级的中断再次申请中断。4.中断优先级排队方式 82C59A提供了3种中断优先级排队方式:完全嵌套方式、特殊嵌套方式和优先级循环方式。,22,5.中断结束方式(1)自动结束方式自动结束方式是中断响应之后,在中
18、断响应周期,就自动清零该中断源在ISR寄存器中被置1的位。因此,在中断服务程序中不需发出中断结束命令EOI。(2)非自动结束方式非自动结束方式是在ISR中被置1的位,在服务完毕后,不能自动清零,而必须在中断服务程序中发出中断结束命令EOI,才能清零,故称为非自动结束。非自动结束方式是常用的方式,其中又有两种命令格式。常规结束命令:该命令隐含指定ISR寄存器中优先级最高的置1位清零(复位)。指定结束命令:该命令明确指定ISR寄存器中哪一个置1的位清零,即服务完毕,具体指定哪一级中断结束。指定结束方式应用较多。,23,24,5.7.3 中断控制器82C59A的编程模型,82C59A编程模型包括内部
19、可访问的寄存器、端口地址,及相应的7个命令字。内部寄存器如图5.5所示。,(1)命令寄存器 8位,隐含在“控制逻辑”模块内部,接收并处理7个命令字,用户可以访问。(2)中断请求寄存器(IRR)8位,以逻辑1记录已经提出中断请求的中断级,等待CPU响应。当提出中断请求的外设产生中断时,由82C59A置位,直到中断被响应才自动清零。IRR的内容可以由CPU通过OCW3命令读出。(3)中断服务寄存器(ISR)在中断响应之后,获准中断请求的中断级在相应的ISR中置1。例如,IR3获准,则ISR中的IS3置1,表明IR3正处于服务。这些置1的位保持,直到中断服务程序中发中断结束命令才能清0,182C59
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型计算机接口技术ppt课件 微型计算机 接口 技术 ppt 课件 中断

链接地址:https://www.31ppt.com/p-3865660.html