微机原理第八章 中断系统课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《微机原理第八章 中断系统课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机原理 第八章 中断系统课件 微机 原理 第八 中断 系统 课件
- 资源描述:
-
1、第第7 7章章 中断技术中断技术 7.1 7.1 中断技术概述中断技术概述7.2 8086/80887.2 8086/8088中断系统中断系统 7.3 7.3 可编程中断控制器可编程中断控制器82598259A A 7.4 7.4 中断程序设计中断程序设计一、什么是中断一、什么是中断二、中断源及其中断优先权二、中断源及其中断优先权三、三、中断请求与中断屏蔽中断请求与中断屏蔽 四、中断服务程序四、中断服务程序五、五、中断隐操作和中断向量中断隐操作和中断向量六、断点和中断现场六、断点和中断现场七、七、硬件中断和软件中断硬件中断和软件中断7.1 7.1 中断技术概述中断技术概述一、什么是中断?一、什
2、么是中断?在在CPU正常运行程序时,由于内部或外部某个正常运行程序时,由于内部或外部某个非预料事件非预料事件的发的发生,使生,使CPU暂停正在运行的程序,而转去执行暂停正在运行的程序,而转去执行处理引起中断事件的处理引起中断事件的程序程序,然后再返回被中断了的程序,继续执行。这个过程就是中断。,然后再返回被中断了的程序,继续执行。这个过程就是中断。中断服务程序中断服务程序1 1中断服务程序中断服务程序2 2非预料事件非预料事件1 1CPUCPU执行流程执行流程非预料事件非预料事件2 2二、中断源和中断优先权二、中断源和中断优先权 引起中断的因素很多,将发出中断申请的外设或内部原因引起中断的因素
3、很多,将发出中断申请的外设或内部原因,称为中断源。称为中断源。给每个中断源指定一个优先权,称为中断优先权,当多个给每个中断源指定一个优先权,称为中断优先权,当多个中断源同时发出中断请求时,中断源同时发出中断请求时,CPUCPU按照中断优先权的高低顺序按照中断优先权的高低顺序,依次响应。依次响应。三、中断请求与中断屏蔽三、中断请求与中断屏蔽 中断请求中断请求 :当中断源要求当中断源要求CPUCPU为其服务时,必须先向为其服务时,必须先向CPUCPU提提出申请,这是通过发出中断请求信号实现的。出申请,这是通过发出中断请求信号实现的。中断屏蔽中断屏蔽 :系统中的大部分中断源是可屏蔽的,称为可屏系统中
4、的大部分中断源是可屏蔽的,称为可屏蔽中断,而个别的中断请求是不能被屏蔽的,称为非屏蔽中断蔽中断,而个别的中断请求是不能被屏蔽的,称为非屏蔽中断 四、中断服务程序四、中断服务程序 所谓中断服务程序,就是为完成中断源所期望的功能而编所谓中断服务程序,就是为完成中断源所期望的功能而编写的程序。写的程序。五、五、中断隐操作和中断向量中断隐操作和中断向量 CPU响应中断时,首先执行一系列由硬件安排的处理过程,响应中断时,首先执行一系列由硬件安排的处理过程,称为称为中断隐操作中断隐操作。隐操作把。隐操作把CPU引向中断服务程序。引向中断服务程序。中断服务程序的第一个可执行语句所在的地址叫中断服务程序的第一
5、个可执行语句所在的地址叫中断向量中断向量,在在CPU响应硬件中断时,这个中断向量是由中断源硬件提供给响应硬件中断时,这个中断向量是由中断源硬件提供给CPU的。的。六、断点和中断现场六、断点和中断现场n 断点断点:是指是指CPUCPU执行的现行程序被中断时的下一条指令的地址执行的现行程序被中断时的下一条指令的地址,又称断点地址。又称断点地址。n 中断现场中断现场:是指是指CPUCPU转去执行中断服务程序前的运行状态,包转去执行中断服务程序前的运行状态,包括括CPUCPU内部各寄存器、断点地址等。内部各寄存器、断点地址等。1000:1501000:150H H MOV MOV AX,0AX,0AD
6、D ADD AX,DXAX,DXMOV MOV DI,AXDI,AX PUSH PUSH AXAX IRETIRETCPUCPU在执行此指令时,在执行此指令时,某中断源发申请中断;某中断源发申请中断;CPUCPU在执行完该指令后,在执行完该指令后,转去执行中断子程转去执行中断子程.地址地址1000:1501000:150H H为断点为断点七、硬件中断和软件中断七、硬件中断和软件中断v 为了解决为了解决CPUCPU与外设间的速度匹配问题,提高与外设间的速度匹配问题,提高CPU CPU 的工作效率。的工作效率。中断源主要是由外部硬件产生。中断源主要是由外部硬件产生。(称称硬件中断硬件中断或或外部中
7、断外部中断)v 由由CPUCPU内部产生内部产生 (如被零除操作如被零除操作),或者由程序预先安排,即,或者由程序预先安排,即由指令调用中断服务程序。(称由指令调用中断服务程序。(称软件中断软件中断或或内部中断内部中断)1000:150HMOV AH,01INT 21HCMP AL,0Dh PUSH AXIRET用指令调用中断程序用指令调用中断程序7.2 8086/80887.2 8086/8088中断系统中断系统一、一、8086/8088CPU8086/8088CPU的中断分类的中断分类二、二、8086/8088CPU8086/8088CPU的中断优先权的中断优先权三、三、中断类型与中断向量
8、表中断类型与中断向量表 四、四、8086/8088CPU8086/8088CPU响应中断的过程响应中断的过程 五、五、8086/8088CPU8086/8088CPU如何获取中断类型号如何获取中断类型号 按中断源的不同,中断分为按中断源的不同,中断分为内部中断内部中断和和外部中断外部中断。1 1、内部中断(软中断):指、内部中断(软中断):指CPUCPU执行某些特殊操作或执行某些特殊操作或由由INTINT指令引起的中断指令引起的中断 被零除操作或被零除操作或OF=1OF=1时执行时执行INTOINTO指令引起指令引起 使用使用DEBUGDEBUG中的单步或断点设置操作引起中的单步或断点设置操作
9、引起 执行执行INTnINTn 指令引起指令引起2 2、外部中断(硬中断):指外部芯片通过、外部中断(硬中断):指外部芯片通过CPUCPU的的INTRINTR引脚或引脚或NMINMI引脚发出中断申请引起的中断。引脚发出中断申请引起的中断。当当INTRINTR上有高电平信号(上有高电平信号(可屏蔽中断)当当NMINMI上有上升沿信号(上有上升沿信号(非屏蔽中断)一、一、8086/8088CPU8086/8088CPU的中断分类的中断分类 可屏蔽中断可屏蔽中断 由由INTRINTR引脚引起的中断,称引脚引起的中断,称可屏蔽中断可屏蔽中断。CPUCPU是否响应是否响应INTRINTR引脚上的中断请求
10、取决于引脚上的中断请求取决于IFIF标志:标志:IF=1IF=1,CPUCPU响应响应INTRINTR引脚上的中断请求引脚上的中断请求 IF=0IF=0,CPUCPU不响应不响应INTRINTR引脚上的中断请求引脚上的中断请求 即当即当IF=0IF=0时,将时,将INTRINTR引脚上的中断申请屏蔽。引脚上的中断申请屏蔽。非屏蔽中断非屏蔽中断 由由NMINMI引脚引起的中断,称引脚引起的中断,称非屏蔽中断非屏蔽中断。当当NMINMI引脚上产生上升沿信号,引脚上产生上升沿信号,CPUCPU必响应此中断请必响应此中断请 求,即求,即NMINMI引脚上的中断请求引脚上的中断请求不受不受IFIF标志的
11、控制标志的控制,IFIF不能屏蔽不能屏蔽NMINMI引脚上的中断请求。引脚上的中断请求。非屏蔽中断非屏蔽中断 外部中断外部中断 可屏蔽中断可屏蔽中断 内部硬件中断内部硬件中断 内部中断内部中断 内部软件中断:内部软件中断:INT n除法出错除法出错单步跟踪单步跟踪断点中断断点中断溢出中断溢出中断中断源中断源8086/8088CPU8086/8088CPU的中断分类图的中断分类图8086/80888086/8088中断系统结构中断系统结构保留保留(ALT(ALT打印机打印机)中断逻辑中断逻辑INTnINTn指令指令INTOINTO指令指令除法除法错误错误单步单步TF=1TF=1非屏蔽中断请求非屏
12、蔽中断请求IRIR0IRIR6IRIR5IRIR4IRIR3IRIR2IRIR1IRIR782598259A AINTINTCPUCPUINTRNMI080809090A0A0B0B0C0C0D0D0E0E0F0F系统定时器系统定时器键盘键盘保留保留(打印机打印机)软盘软盘串行通信接口串行通信接口保留保留(通信通信)彩色彩色/图形接口图形接口 当有多个中断源同时产生中断申请时,当有多个中断源同时产生中断申请时,CPUCPU先响应先响应优先权最高的中断源,再响应优先级较低的中断源。优先权最高的中断源,再响应优先级较低的中断源。优先级优先级 高高 低低 内部中断内部中断 (除零,除零,INT nI
13、NT n,断点,断点,INTOINTO指令指令 )非屏蔽中断非屏蔽中断 可屏蔽中断可屏蔽中断 低低 内部中断内部中断(单步单步 )二、二、8088CPU8088CPU的中断优先权的中断优先权 8086/8088的每个中断源都被指定了一个编号,称为的每个中断源都被指定了一个编号,称为中断类中断类型号。型号。每一个中断服务程序都有一个唯一确定的入口地址,叫做每一个中断服务程序都有一个唯一确定的入口地址,叫做中断中断向量。向量。把系统中所有的中断向量集中起来,按中断类型号从小到大的把系统中所有的中断向量集中起来,按中断类型号从小到大的顺序放到存储器的某一个区域内,这个存放中断向量的存储区叫顺序放到存
14、储器的某一个区域内,这个存放中断向量的存储区叫中断向量表中断向量表。8086/8088CPU以存储器的以存储器的00000H0003FH共共1024个单元作为中断向量存储区,由于每个中断向量占用个单元作为中断向量存储区,由于每个中断向量占用4个存个存储单元(储单元(CS的内容占两个单元,的内容占两个单元,IP的内容占两个单元),故这个的内容占两个单元),故这个向量表中可存放向量表中可存放256个中断类型的中断向量(即个中断类型的中断向量(即8086/8088CPU的中断系统最多能处理的中断系统最多能处理256个中断源)个中断源)中断类型号所对应的中断向量在中断向量表中的地址等于:中断类型号所对
15、应的中断向量在中断向量表中的地址等于:中断类型号中断类型号4三、中断类型与中断向量表三、中断类型与中断向量表 当中断源产生中断申请后,不论是内中断、非屏蔽中断,当中断源产生中断申请后,不论是内中断、非屏蔽中断,还是可屏蔽中断,只要满足响应条件,还是可屏蔽中断,只要满足响应条件,在执行完当前指令后在执行完当前指令后,CPUCPU内部硬件会自动完成下列响应中断的过程:内部硬件会自动完成下列响应中断的过程:四、四、8088CPU8088CPU响应中断的过程响应中断的过程 取中断类型号取中断类型号N N 当前当前PSWPSW的内容入栈的内容入栈 清清IFIF、TFTF标志为标志为0 0 当前当前CSC
16、S的内容入栈的内容入栈 当前当前IPIP的内容入栈的内容入栈 取内存单元取内存单元(0:(0:N N4)4)字字内容送内容送IPIP 取内存单元取内存单元(0:N(0:N 4+2)4+2)字内容送字内容送CSCS保存现场保存现场取中断子程取中断子程入口地址入口地址 当前指令执行完的含义当前指令执行完的含义 CPU正在执行一条指令,执行完本条指令,响正在执行一条指令,执行完本条指令,响应中断;应中断;对于带重复前缀的串指令(如对于带重复前缀的串指令(如REP MOVSB),),执行一次重复和串指令即可响应中断;执行一次重复和串指令即可响应中断;对对MOV和和POP指令,处理对象为段寄存器,以指令
17、,处理对象为段寄存器,以及及STI和和IRET指令执行完本条指令后,再执行一条指令执行完本条指令后,再执行一条指令才响应中断。指令才响应中断。五、五、8086CPU8086CPU如何获取中断类型号?如何获取中断类型号?不同的中断源,不同的中断源,80868086CPUCPU获取中断类型号的方法不同获取中断类型号的方法不同。CPU 执执行行除除零零或或 OF 为为 1 执执行行 INTO 指指令令 除除零零 固固定定类类型型号号 00H OF 为为 1 执执行行 INTO 指指令令 固固定定类类型型号号 04H使使用用 DEBUG 下下的的单单步步和和断断点点操操作作 单单步步 固固定定类类型型
18、号号 01H 断断点点 固固定定类类型型号号 03H内内中中断断执执行行中中断断调调用用指指令令 INT N 由由指指令令中中给给出出 指指令令中中指指定定类类型型号号 N非非屏屏蔽蔽中中断断 引引脚脚 NMI 上上有有中中断断申申请请信信号号(上上升升沿沿信信号号)非非屏屏蔽蔽中中断断 固固定定类类型型号号 02H外外中中断断可可屏屏蔽蔽中中断断(参参看看中中断断响响应应时时序序图图)当当 IF=1,引引脚脚 INTR 上上有有中中断断申申请请信信号号(高高电电平平信信号号)CPU 按按中中断断响响应应周周期期时时序序,从从数数据据总总线线上上获获取取中中断断类类型型号号 可可屏屏蔽蔽中中断
19、断 外外部部接接口口送送上上类类型型号号T1T2 T3 T4第第 一一 个中断个中断响应周期响应周期T1 T2 T3 T4第第 二二 个中个中断响应周期断响应周期TITITI三个空闲状态三个空闲状态CLK INTAALEAD7AD0中断类型中断类型 8086 8086中断响应周期时序中断响应周期时序 CPU CPU从引脚从引脚INTAINTA发中断响应信号,接口芯片接收此信号,发中断响应信号,接口芯片接收此信号,把中断类型号准备好;同时把中断类型号准备好;同时ISRISRi i=1,IRR=1,IRRi i=0=0。CPUCPU再从引脚再从引脚INTAINTA发中断响应信号,接口芯片接此信号后
20、,发中断响应信号,接口芯片接此信号后,将中断类型号送至数据总线上将中断类型号送至数据总线上;CPU CPU从数据总线获取中断类型号。从数据总线获取中断类型号。7.3.1 82597.3.1 8259A A的主要特性的主要特性 7.3 7.3 可编程中断控制器可编程中断控制器82598259A A 8259A的改进工艺制造,内部结构和外部引脚与的改进工艺制造,内部结构和外部引脚与8259A完全兼容。完全兼容。单一正单一正5V电源,全静态工作(无需外加时钟)。电源,全静态工作(无需外加时钟)。该芯片集中断源识别、判优、提供中断类型号于一体。该芯片集中断源识别、判优、提供中断类型号于一体。每片每片8
21、2C59A能管理能管理8级中断(含优先级)。级中断(含优先级)。每片每片82C59A可送出可送出8个个8位的中断类型号(自动中断向位的中断类型号(自动中断向量转移功能)。量转移功能)。能用软件屏蔽中断请求输入,通过编程可选择多种不同能用软件屏蔽中断请求输入,通过编程可选择多种不同的工作方式,以适应各种系统的要求。的工作方式,以适应各种系统的要求。通过通过82C59A级联,在不增加外部电路的情况下,最多级联,在不增加外部电路的情况下,最多可用可用9片片82C59A级连管理级连管理64级中断。级中断。7.3.2 82597.3.2 8259A A的内部结构的内部结构SP/ENCA0CA1CA2IO
22、RIOW总线总线D0D7数数 据据 线线D0D7INTAINTRA0片片选选译译码码A5A9CSA0RD INTAWRINT 1 I3 I4ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片连接关系主从片连接关系 ICW4 方式控制方式控制0111A01 0 0 1 0 1 0 0OCW1 中断屏蔽寄存器中断屏蔽寄存器 IMR 0 0 OCW2 优先级设置、发优先级设置、发EOI 0 1 OCW3特殊屏蔽特殊屏蔽,查询方式设置查询方式设置处理部分处理部分控制部分控制部分000 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器PR优先级优先级裁决器裁决器V
23、CCGND1 10 00 0A0IR0IR1IR2IR3IR4IR5IR6IR7IRR中断中断申请申请寄存器寄存器000 0 0 0 0 0 7.3.3 7.3.3 82C59A82C59A外部特性(引脚功能)外部特性(引脚功能)电子钟时间基准电子钟时间基准键键 盘盘保保 留留串串 口口2 硬硬 盘盘软软 盘盘打印机打印机IOWA0CS8259A总线总线A0数数 据据 线线 IORRDWR片片选选译译码码IR0IR1IR2IR3IR4IR5IR6IR7A5A9D0D7D0D7VccSP/ENCA0CA1CA2GND+5V203FH用于多片用于多片8259A级连情况级连情况INTAINT INT
24、A INTR串串 口口1 1 I3 I4ICW1 芯片控制芯片控制 ICW2 中断类型号中断类型号 ICW3 主从片关系主从片关系 ICW4 方式控制方式控制处理部分处理部分控制部分控制部分000 0 0 0 0 0 ISR当前当前中断中断服务服务寄存器寄存器PR优先级优先级裁决器裁决器IRR中断申请中断申请寄存器寄存器000 0 0 0 0 0 中断屏蔽寄存器中断屏蔽寄存器 IMROCW2 1 0 0 1 0 1 0 0 0 0 0 1 OCW3OCW18259A8259A中断控制器中断控制器7.3.4 8259A的控制字的控制字82598259A A的编程结构的编程结构内部有内部有9 9个
25、个可读写的寄存器可读写的寄存器:4个初始化命令寄存器个初始化命令寄存器:ICW1、ICW2 ICW3、ICW4 3个操作命令寄存器个操作命令寄存器 OCW1(IMR)OCW2、OCW3当前中断服务寄存器当前中断服务寄存器 ISR中断申请寄存器中断申请寄存器 IRR(1)初始化命令字初始化命令字(ICW1-ICW4)书上书上147页页 它它决定决定8259A8259A的工作方式的工作方式,通常是在计算机系统启动时在初始通常是在计算机系统启动时在初始程序设置,一旦设定,一般在系统工作过程不再改变。程序设置,一旦设定,一般在系统工作过程不再改变。例:开机后,例:开机后,BIOS将将8259A初始化为
展开阅读全文