第5章 中断技术.ppt
《第5章 中断技术.ppt》由会员分享,可在线阅读,更多相关《第5章 中断技术.ppt(99页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5 5章章 中断技术中断技术中断:包括硬中断和软中断,是系统重要的中断:包括硬中断和软中断,是系统重要的资源,它的分配方案、使用方法、工作原理资源,它的分配方案、使用方法、工作原理都很重要。都很重要。5.1 中断中断 中断引起中断引起中断引起中断引起CPUCPU暂时中断正在运行的程序,而转到为外部暂时中断正在运行的程序,而转到为外部暂时中断正在运行的程序,而转到为外部暂时中断正在运行的程序,而转到为外部/内部事件或为预先安内部事件或为预先安内部事件或为预先安内部事件或为预先安排的事件服务的程序中去,服务完毕,再返回去继续执行被暂时中断的程序。排的事件服务的程序中去,服务完毕,再返回去继续执
2、行被暂时中断的程序。排的事件服务的程序中去,服务完毕,再返回去继续执行被暂时中断的程序。排的事件服务的程序中去,服务完毕,再返回去继续执行被暂时中断的程序。例如例如例如例如:键盘中断:键盘中断:键盘中断:键盘中断 引起中断的事件就是中断源,中断源各种各样,因而出现多种中断类型引起中断的事件就是中断源,中断源各种各样,因而出现多种中断类型引起中断的事件就是中断源,中断源各种各样,因而出现多种中断类型引起中断的事件就是中断源,中断源各种各样,因而出现多种中断类型。中断服务程序中断服务程序中断服务程序中断服务程序:CPUCPU在处理中断事件时必须针对不同中断源的要求给以不同在处理中断事件时必须针对不
3、同中断源的要求给以不同在处理中断事件时必须针对不同中断源的要求给以不同在处理中断事件时必须针对不同中断源的要求给以不同的解决方案,这就需要有一个中断处理程序。的解决方案,这就需要有一个中断处理程序。的解决方案,这就需要有一个中断处理程序。的解决方案,这就需要有一个中断处理程序。中断的实质就是程序的转移中断的实质就是程序的转移中断的实质就是程序的转移中断的实质就是程序的转移。获得获得获得获得CPUCPU为其服务的程序段称为中断处理(服务)程序,被暂时中断的程序为其服务的程序段称为中断处理(服务)程序,被暂时中断的程序为其服务的程序段称为中断处理(服务)程序,被暂时中断的程序为其服务的程序段称为中
4、断处理(服务)程序,被暂时中断的程序称为主程序(或调用程序)。称为主程序(或调用程序)。称为主程序(或调用程序)。称为主程序(或调用程序)。程序的转移由微处理器内部事件或外部事件启动,并且,一个中断过程包含程序的转移由微处理器内部事件或外部事件启动,并且,一个中断过程包含程序的转移由微处理器内部事件或外部事件启动,并且,一个中断过程包含程序的转移由微处理器内部事件或外部事件启动,并且,一个中断过程包含两次转移两次转移两次转移两次转移:首先是主程序向中断处理(服务)程序转移,然后是中断处理:首先是主程序向中断处理(服务)程序转移,然后是中断处理:首先是主程序向中断处理(服务)程序转移,然后是中断
5、处理:首先是主程序向中断处理(服务)程序转移,然后是中断处理(服务)程序执行完毕之后向主程序转移。(服务)程序执行完毕之后向主程序转移。(服务)程序执行完毕之后向主程序转移。(服务)程序执行完毕之后向主程序转移。中断对实时处理一些突发事件很有效。中断对实时处理一些突发事件很有效。中断对实时处理一些突发事件很有效。中断对实时处理一些突发事件很有效。5.2 中断的类型中断的类型微机中断系统的中断源大致可分为两大类微机中断系统的中断源大致可分为两大类:一类是硬中断(外部中断一类是硬中断(外部中断);一类是软中断(内部中断)。一类是软中断(内部中断)。下面分别讨论它们产生的条件、特点及其下面分别讨论它
6、们产生的条件、特点及其应用。应用。5.2.1 硬中断硬中断硬中断由来自外部的事件产生硬中断由来自外部的事件产生。硬中断的发生具有随机性,何时产生中断,硬中断的发生具有随机性,何时产生中断,CPU预先并不知道。预先并不知道。硬中断可分为不可屏蔽中断硬中断可分为不可屏蔽中断NMI及可屏蔽及可屏蔽中断中断INTR。1可屏蔽中断可屏蔽中断INTR可屏蔽中断:微处理器可以用可屏蔽中断:微处理器可以用可屏蔽中断:微处理器可以用可屏蔽中断:微处理器可以用CLICLI(IF=0IF=0)指令来屏蔽)指令来屏蔽)指令来屏蔽)指令来屏蔽(禁止),即不响应它的中断请求。(禁止),即不响应它的中断请求。(禁止),即不
7、响应它的中断请求。(禁止),即不响应它的中断请求。当当当当IF=1IF=1时,时,时,时,CPUCPU产生中断响应总线周期,并读取外部产生中断响应总线周期,并读取外部产生中断响应总线周期,并读取外部产生中断响应总线周期,并读取外部中断源的中断号,用中断号去找到中断处理程序的入口,中断源的中断号,用中断号去找到中断处理程序的入口,中断源的中断号,用中断号去找到中断处理程序的入口,中断源的中断号,用中断号去找到中断处理程序的入口,从而进入中断处理程序。从而进入中断处理程序。从而进入中断处理程序。从而进入中断处理程序。INTRINTR最适合处理最适合处理最适合处理最适合处理I/OI/O设备实时性要求
8、,因此它的应用十设备实时性要求,因此它的应用十设备实时性要求,因此它的应用十设备实时性要求,因此它的应用十分普遍。分普遍。分普遍。分普遍。INTRINTR由外部设备提出中断申请而产生,由两片中断控由外部设备提出中断申请而产生,由两片中断控由外部设备提出中断申请而产生,由两片中断控由外部设备提出中断申请而产生,由两片中断控制器制器制器制器82C59A82C59A协助协助协助协助CPUCPU进行处理,中断号为进行处理,中断号为进行处理,中断号为进行处理,中断号为08H08H0FH0FH和和和和070H070H077H077H。2不可屏蔽中断不可屏蔽中断NMI通过中断请求引脚通过中断请求引脚通过中断
9、请求引脚通过中断请求引脚NMINMI向微处理器申请而产生的中断,但向微处理器申请而产生的中断,但向微处理器申请而产生的中断,但向微处理器申请而产生的中断,但微处理器不可以用微处理器不可以用微处理器不可以用微处理器不可以用CLICLI指令来屏蔽(禁止),叫做不可屏指令来屏蔽(禁止),叫做不可屏指令来屏蔽(禁止),叫做不可屏指令来屏蔽(禁止),叫做不可屏蔽中断。不可屏蔽中断一旦出现,蔽中断。不可屏蔽中断一旦出现,蔽中断。不可屏蔽中断一旦出现,蔽中断。不可屏蔽中断一旦出现,CPUCPU就应立即响应。就应立即响应。就应立即响应。就应立即响应。NMINMI的中断号由系统指定为的中断号由系统指定为的中断号
10、由系统指定为的中断号由系统指定为2 2号,故当外部事件引起号,故当外部事件引起号,故当外部事件引起号,故当外部事件引起NMINMI中断时,立即进入由第中断时,立即进入由第中断时,立即进入由第中断时,立即进入由第2 2号中断向量所指向的中断服务程号中断向量所指向的中断服务程号中断向量所指向的中断服务程号中断向量所指向的中断服务程序,而不需由外部提供中断号。序,而不需由外部提供中断号。序,而不需由外部提供中断号。序,而不需由外部提供中断号。NMINMI它常用于紧急情况和故障的处理,如对系统掉电、它常用于紧急情况和故障的处理,如对系统掉电、它常用于紧急情况和故障的处理,如对系统掉电、它常用于紧急情况
11、和故障的处理,如对系统掉电、RAMRAM奇偶校验错、奇偶校验错、奇偶校验错、奇偶校验错、I/OI/O通道校验错和协处理器运算错进行通道校验错和协处理器运算错进行通道校验错和协处理器运算错进行通道校验错和协处理器运算错进行处理,并由系统使用,一般用户不能使用。处理,并由系统使用,一般用户不能使用。处理,并由系统使用,一般用户不能使用。处理,并由系统使用,一般用户不能使用。5.2.2 软中断软中断用户在程序中发出中断指令用户在程序中发出中断指令用户在程序中发出中断指令用户在程序中发出中断指令INT nINT n产生的,指令产生的,指令产生的,指令产生的,指令中的操作数中的操作数中的操作数中的操作数
12、n n称为中断号。称为中断号。称为中断号。称为中断号。软中断的产生是由程序安排的,因此,软中断是软中断的产生是由程序安排的,因此,软中断是软中断的产生是由程序安排的,因此,软中断是软中断的产生是由程序安排的,因此,软中断是在预料之中的。在预料之中的。在预料之中的。在预料之中的。在软中断处理过程中,在软中断处理过程中,在软中断处理过程中,在软中断处理过程中,CPUCPU不发出中断响应信号,不发出中断响应信号,不发出中断响应信号,不发出中断响应信号,也不要求中断控制器提供中断号,这一点与不可也不要求中断控制器提供中断号,这一点与不可也不要求中断控制器提供中断号,这一点与不可也不要求中断控制器提供中
13、断号,这一点与不可屏蔽中断相似。屏蔽中断相似。屏蔽中断相似。屏蔽中断相似。软中断包括软中断包括软中断包括软中断包括DOSDOS中断功能和中断功能和中断功能和中断功能和BIOSBIOS中断功能两部中断功能两部中断功能两部中断功能两部分。分。分。分。1DOS功能调用功能调用DOSDOS功能调用在前面第功能调用在前面第功能调用在前面第功能调用在前面第4 4章章章章4.34.3节从它在编写汇编语言源节从它在编写汇编语言源节从它在编写汇编语言源节从它在编写汇编语言源程序的作用进行了介绍。程序的作用进行了介绍。程序的作用进行了介绍。程序的作用进行了介绍。DOSDOS是存放在磁盘上的操作系统软件,其中软中断
14、是存放在磁盘上的操作系统软件,其中软中断是存放在磁盘上的操作系统软件,其中软中断是存放在磁盘上的操作系统软件,其中软中断INT INT 21H21H是是是是DOSDOS的内核。它是一个很重要、功能庞大的中断的内核。它是一个很重要、功能庞大的中断的内核。它是一个很重要、功能庞大的中断的内核。它是一个很重要、功能庞大的中断服务程序,包含服务程序,包含服务程序,包含服务程序,包含0 06CH6CH个子功能,包括对设备、文件、个子功能,包括对设备、文件、个子功能,包括对设备、文件、个子功能,包括对设备、文件、目录及内存的管理功能,涉及各个方面,可供系统软件目录及内存的管理功能,涉及各个方面,可供系统软
15、件目录及内存的管理功能,涉及各个方面,可供系统软件目录及内存的管理功能,涉及各个方面,可供系统软件和应用程序调用,同时,由于它处在和应用程序调用,同时,由于它处在和应用程序调用,同时,由于它处在和应用程序调用,同时,由于它处在ROM-BIOSROM-BIOS层的上层的上层的上层的上一个层次,与系统硬件层有一个层次,与系统硬件层有一个层次,与系统硬件层有一个层次,与系统硬件层有ROM-BIOSROM-BIOS在逻辑上的隔离,在逻辑上的隔离,在逻辑上的隔离,在逻辑上的隔离,所以,它对系统硬件的依赖性大大减少,兼容性好。所以,它对系统硬件的依赖性大大减少,兼容性好。所以,它对系统硬件的依赖性大大减少
16、,兼容性好。所以,它对系统硬件的依赖性大大减少,兼容性好。2BIOS功能调用功能调用BIOS是一组存放在是一组存放在ROM中、独立于中、独立于DOS的的I/O中断服务程序。中断服务程序。在系统硬件的上一层,直接对系统中的在系统硬件的上一层,直接对系统中的I/O设备进行设备级控制,可供上层软件设备进行设备级控制,可供上层软件和应用程序调用。和应用程序调用。它也是用户访问系统资源的途径之一。但它也是用户访问系统资源的途径之一。但对硬件的依赖性大,兼容性欠佳。对硬件的依赖性大,兼容性欠佳。3软中断的应用软中断的应用有关有关有关有关BIOSBIOS和和和和DOSDOS系统功能调用的功能、调用的方法、步
17、系统功能调用的功能、调用的方法、步系统功能调用的功能、调用的方法、步系统功能调用的功能、调用的方法、步骤和入口骤和入口骤和入口骤和入口/出口参数的设置,请查阅参考文献出口参数的设置,请查阅参考文献出口参数的设置,请查阅参考文献出口参数的设置,请查阅参考文献5656。微机的中断系统还包括一些特殊中断,由内部的突发事件微机的中断系统还包括一些特殊中断,由内部的突发事件微机的中断系统还包括一些特殊中断,由内部的突发事件微机的中断系统还包括一些特殊中断,由内部的突发事件所引起的中断,即在执行指令的过程中,所引起的中断,即在执行指令的过程中,所引起的中断,即在执行指令的过程中,所引起的中断,即在执行指令
18、的过程中,CPUCPU发现某种发现某种发现某种发现某种突发事件时就启动内部逻辑转去执行预先规定的中断号突发事件时就启动内部逻辑转去执行预先规定的中断号突发事件时就启动内部逻辑转去执行预先规定的中断号突发事件时就启动内部逻辑转去执行预先规定的中断号所对应的中断服务程序。这类中断也是不可屏蔽中断,所对应的中断服务程序。这类中断也是不可屏蔽中断,所对应的中断服务程序。这类中断也是不可屏蔽中断,所对应的中断服务程序。这类中断也是不可屏蔽中断,其中断处理过程具有与软中断相同的特点,因此,有的其中断处理过程具有与软中断相同的特点,因此,有的其中断处理过程具有与软中断相同的特点,因此,有的其中断处理过程具有
19、与软中断相同的特点,因此,有的书上把它们归结为软中断这一类书上把它们归结为软中断这一类书上把它们归结为软中断这一类书上把它们归结为软中断这一类 。这类中断有:。这类中断有:。这类中断有:。这类中断有:号中断号中断号中断号中断除数为零中断;号中断除数为零中断;号中断除数为零中断;号中断除数为零中断;号中断单步中断;单步中断;单步中断;单步中断;号中断号中断号中断号中断断点中断;断点中断;断点中断;断点中断;号中断号中断号中断号中断溢出中断。溢出中断。溢出中断。溢出中断。5.3 中断号中断号5.3.1 中断号与中断号的获取中断号与中断号的获取1中断号中断号中断号是系统分配给每个中断源的代号,以便识
20、别和处中断号是系统分配给每个中断源的代号,以便识别和处中断号是系统分配给每个中断源的代号,以便识别和处中断号是系统分配给每个中断源的代号,以便识别和处理。在采用向量中断方式的中断系统中,理。在采用向量中断方式的中断系统中,理。在采用向量中断方式的中断系统中,理。在采用向量中断方式的中断系统中,CPUCPU必须通过必须通过必须通过必须通过中断号才可以找到中断服务程序的入口地址,实现程序中断号才可以找到中断服务程序的入口地址,实现程序中断号才可以找到中断服务程序的入口地址,实现程序中断号才可以找到中断服务程序的入口地址,实现程序的转移。的转移。的转移。的转移。由中断号(由中断号(由中断号(由中断号
21、(n n)44得到一个指针,指向中断向量(即中得到一个指针,指向中断向量(即中得到一个指针,指向中断向量(即中得到一个指针,指向中断向量(即中断服务程序的入口地址)存放在中断向量表的什么位置,断服务程序的入口地址)存放在中断向量表的什么位置,断服务程序的入口地址)存放在中断向量表的什么位置,断服务程序的入口地址)存放在中断向量表的什么位置,从中取出这个地址(从中取出这个地址(从中取出这个地址(从中取出这个地址(CS:IPCS:IP),装入代码段寄存器),装入代码段寄存器),装入代码段寄存器),装入代码段寄存器CSCS和和和和指令指针寄存器指令指针寄存器指令指针寄存器指令指针寄存器IPIP,即转
22、移到了中断服务程序。,即转移到了中断服务程序。,即转移到了中断服务程序。,即转移到了中断服务程序。2中断号的获取中断号的获取CPUCPU对系统中不同类型的中断源,获取它们的中断号的对系统中不同类型的中断源,获取它们的中断号的对系统中不同类型的中断源,获取它们的中断号的对系统中不同类型的中断源,获取它们的中断号的方法是不同的。方法是不同的。方法是不同的。方法是不同的。可屏蔽中断的中断号是在中断响应周期从中断控制器获可屏蔽中断的中断号是在中断响应周期从中断控制器获可屏蔽中断的中断号是在中断响应周期从中断控制器获可屏蔽中断的中断号是在中断响应周期从中断控制器获取的。取的。取的。取的。软中断软中断软中
23、断软中断INT nINT n的中断号的中断号的中断号的中断号(n)(n)是由中断指令直接给出的。是由中断指令直接给出的。是由中断指令直接给出的。是由中断指令直接给出的。不可屏蔽中断不可屏蔽中断不可屏蔽中断不可屏蔽中断NMINMI以及以及以及以及CPUCPU内部一些特殊中断的中断号内部一些特殊中断的中断号内部一些特殊中断的中断号内部一些特殊中断的中断号是由系统预先设置好的,如是由系统预先设置好的,如是由系统预先设置好的,如是由系统预先设置好的,如NMINMI的中断号为的中断号为的中断号为的中断号为02H02H,非法,非法,非法,非法除数的中断号为除数的中断号为除数的中断号为除数的中断号为0H0H
24、,等等。,等等。,等等。,等等。5.3.2 中断响应周期中断响应周期当当CPU收到外部设备通过中断控制器提出收到外部设备通过中断控制器提出的中断请求的中断请求INT后,如果当前一条指令已后,如果当前一条指令已执行完,且中断标志位执行完,且中断标志位 IF1时(即允许时(即允许中断),又没有中断),又没有DMA请求,那么,请求,那么,CPU进入中断响应周期,发出两个连续中断应进入中断响应周期,发出两个连续中断应答信号答信号 完成一个中断响应周期完成一个中断响应周期。图图5.1表示的是中断响应周期时序。表示的是中断响应周期时序。从图从图5.1可知,一个中断响应周期完成的可知,一个中断响应周期完成的
25、工作有以下几点。工作有以下几点。1置位中断服务寄存器置位中断服务寄存器ISR当当当当CPUCPU发出第一个响应脉冲时,发出第一个响应脉冲时,发出第一个响应脉冲时,发出第一个响应脉冲时,CPUCPU输出有效输出有效输出有效输出有效的总线锁定信号的总线锁定信号的总线锁定信号的总线锁定信号 ,使总线在此期间处于封锁状,使总线在此期间处于封锁状,使总线在此期间处于封锁状,使总线在此期间处于封锁状态,防止其他处理器或态,防止其他处理器或态,防止其他处理器或态,防止其他处理器或DMADMA控制器占用总线。控制器占用总线。控制器占用总线。控制器占用总线。与此同时,与此同时,与此同时,与此同时,82C59A8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 中断技术 中断 技术
限制150内