中断控制器及定时控制器课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《中断控制器及定时控制器课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 控制器 定时 课件
- 资源描述:
-
1、2022-7-261第第10章章 中断控制器、计数中断控制器、计数/定时控制器定时控制器l10.1 中断概述中断概述 l10.2 可编程中断控制器可编程中断控制器8259Al10.3 可编程计数可编程计数/定时控制器定时控制器8253l10.4 DMA的概念的概念习题习题2022-7-26210.1 中断概述中断概述l10.1.1 中断的一般概念中断的一般概念 l10.1.2 8086/8088的中断方式的中断方式l10.1.3 中断优先权管理中断优先权管理返回2022-7-26310.1.1 中断的一般概念中断的一般概念 中断(中断(Interrupt)是一种使是一种使CPU中止正在执行的程
2、序而转去中止正在执行的程序而转去处理特殊事件的操作过程。处理特殊事件的操作过程。它是微处理器与外部设备进行信息交换的一种方式。目的:解决CPU与外设之间速度不匹配的矛盾。l(一)(一)中断控制方式的优点中断控制方式的优点 l(二)(二)中断源中断源 l(三)(三)中断系统的功能中断系统的功能 l(四)(四)中断服务程序与一般子程序调用中断服务程序与一般子程序调用的区别的区别 返回2022-7-264(一)中断控制方式的优点l使使CPU与外设并行工作与外设并行工作 l实现实时处理实现实时处理 l自动地进行故障处理自动地进行故障处理 返回2022-7-265(二)中断源 引起中断的事件,或提出中断
3、申请的来源,引起中断的事件,或提出中断申请的来源,称为中断源。称为中断源。如:输入如:输入/输出设备中断(如键盘、打印输出设备中断(如键盘、打印机)、过程控制产生的中断(如程序调试)、电机)、过程控制产生的中断(如程序调试)、电源故障中断等。源故障中断等。中断源分为中断源分为内部中断内部中断和和外部中断外部中断两大类。两大类。内部中断(软件中断):产生于处理器内部,内部中断(软件中断):产生于处理器内部,由专门的中断指令引起。由专门的中断指令引起。外部中断(硬件中断):产生于处理器外部,外部中断(硬件中断):产生于处理器外部,由外部硬件引起。由外部硬件引起。返回2022-7-266(三)中断系
4、统的功能l能实现中断及正确地返回能实现中断及正确地返回中断前:保护断点和现场中断前:保护断点和现场返回前:恢复现场和断点返回前:恢复现场和断点l能实现优先权排队和中断能实现优先权排队和中断嵌套嵌套 中断优先权:中断优先权:多个中断源同时提出申请时,多个中断源同时提出申请时,CPU响应中断的先后次响应中断的先后次序。序。中断嵌套:中断嵌套:CPU处理低级中断源的中断响应时,能够被高级中断中处理低级中断源的中断响应时,能够被高级中断中止而转去响应高级中断。止而转去响应高级中断。l能屏蔽某些中断能屏蔽某些中断 由中断允许触发器决定是否响应中断请求。由中断允许触发器决定是否响应中断请求。8086/80
5、88中,当中断中,当中断标志位标志位IF=1时,才允许响应可屏蔽中断时,才允许响应可屏蔽中断INTR。返回2022-7-267(四)中断服务程序与一般子程序调用的区别(四)中断服务程序与一般子程序调用的区别 l产生产生中断中断的的时间具有随机性时间具有随机性,何时执行中断服务,何时执行中断服务程序是不确定的。程序是不确定的。l在中断方式中,在中断方式中,CPU自动完成自动完成对标志寄存器对标志寄存器FR的的保护与恢复保护与恢复,无需,无需PUSHF和和POPF指令。指令。l中断服务程序采用中断服务程序采用中断返回指令中断返回指令IRET,而不是子,而不是子程序返回指令程序返回指令RET,二者执
6、行的操作不同。,二者执行的操作不同。l中断服务程序中总中断服务程序中总有一条开中断指令有一条开中断指令(该指令安(该指令安排在排在IRET指令前,以便返回主程序后能再次响应指令前,以便返回主程序后能再次响应中断;该指令若安排在中断服务程序开始的地方,中断;该指令若安排在中断服务程序开始的地方,则允许在中断处理过程中响应更高级的中断源请则允许在中断处理过程中响应更高级的中断源请求)。求)。返回2022-7-26810.1.2 8086/8088的中断方式的中断方式 l(一)(一)8086/8088中断分类中断分类 l(二)(二)8086/8088中断向量表中断向量表 l(三)(三)8086/80
7、88中断响应过程中断响应过程 返回2022-7-269(一)(一)8086/8088中断分类中断分类 8086/8088中断系统可处理256种不同的中断,其中断源如图10-1所示。这256种中断分两大类:l硬件中断(外部中断)硬件中断(外部中断)由外部硬件引起的中断。l软件中断(内部中断软件中断(内部中断)由CPU执行某些指令引起的,即由INT指令或CPU执行程序时某些错误引起的中断。返回2022-7-2610图10-1 8086/80888086/8088中断源中断源返回中中 断断 逻逻 辑辑INT n指令指令单单 步步TF=1除法除法错误错误INTO指令指令非屏蔽中断请求非屏蔽中断请求IN
8、TR2NMICPU014nIR0IR1IR2IR3IR4IR5IR6IR782510AINT可编程可编程中中 断断控制器控制器(PIC)系统定时器系统定时器键盘键盘彩色图形接口彩色图形接口保留(通信)保留(通信)串行通信接口串行通信接口保留(保留(ALT打印机)打印机)软盘软盘保留(打印机)保留(打印机)08090A0B0C0D0E0F图图 10-1 8086/8088中断源中断源返回返回 类型号类型号2022-7-2611(1)硬件中断l非屏蔽中断非屏蔽中断NMI由引脚由引脚NMI(non-maskable interrupt)引入,中断类型号为)引入,中断类型号为2。NMI不受中断允许标志
9、不受中断允许标志IF的屏蔽的屏蔽。当。当NMI引脚上出现宽度大引脚上出现宽度大于于2个时钟周期的正脉冲时,个时钟周期的正脉冲时,CPU在执行完当前指令后就马上在执行完当前指令后就马上响应响应NMI中断。中断。一般用于处理系统的重大故障,如系统掉电等。一般用于处理系统的重大故障,如系统掉电等。l可屏蔽中断可屏蔽中断INTR由引脚由引脚INTR(interrupt)引入,采用高电平触发方式。)引入,采用高电平触发方式。INTR上的中断请求可被上的中断请求可被IF屏蔽。屏蔽。只有当只有当IF=1时,时,CPU才能响应才能响应INTR中断。中断。IF的状态可由开中断指令的状态可由开中断指令STI和关中
10、断指令和关中断指令CLI来设置。来设置。注意:注意:系统复位或响应任一种中断后,系统复位或响应任一种中断后,IF均被清零,必须在一定时候均被清零,必须在一定时候用用STI来开放中断来开放中断。8086/8088只有一条只有一条INTR输入线。将输入线。将INTR与中断控制器与中断控制器8259A的的INT相连,由相连,由8259A可扩展多个外部中断源。可扩展多个外部中断源。返回2022-7-2612(2)软件中断软件中断通常由三种情况引起:l 由指令由指令INT引起的中断引起的中断l 由由CPU某些错误引起的中断某些错误引起的中断 l 由由DEBUG调试程序设置的中断调试程序设置的中断注:28
11、6以上微处理器常将软件中断称为异常返回2022-7-2613 由指令由指令INT引起的中断引起的中断CPU执行一条执行一条INT n 指令后立即产生中断。指令后立即产生中断。n为中断类型号为中断类型号,可为,可为00HFFH中的某数。中的某数。返回2022-7-2614 由由CPU某些错误引起的中断某些错误引起的中断l除数为除数为0中断中断类型类型0中断。除法运算中,中断。除法运算中,若若除数为除数为0或商超过寄存器所能表达的范围,或商超过寄存器所能表达的范围,则产生类型则产生类型0中断。没有相应的中断指令。中断。没有相应的中断指令。l溢出中断(溢出中断(INTO指令)指令)类型类型4中断。当
12、中断。当溢出标志溢出标志OF=1时,时,CPU执行执行INTO指令就会指令就会进入溢出中断处理程序,打印出错信息,并进入溢出中断处理程序,打印出错信息,并把控制权交给操作系统。若把控制权交给操作系统。若OF=0,INTO指指令不起作用。因此令不起作用。因此,将将INTO指令放在加、减指令放在加、减法运算指令后,可对法运算指令后,可对OF的状态进行检测的状态进行检测,一,一旦发生溢出便给予出错报警旦发生溢出便给予出错报警。返回2022-7-2615由由DEBUG调试程序设置的中断调试程序设置的中断l单步中断单步中断类型类型1中断。在跟踪标志中断。在跟踪标志(Trap Flag)TF=1时时,CP
13、U在每条指令执行后,在每条指令执行后,自动产生自动产生类型类型1中断,显示各寄存器和有关存储单元的内容,中断,显示各寄存器和有关存储单元的内容,以及下条要执行的指令以及下条要执行的指令。TF由由DEBUG程序修改程序修改。l断点中断断点中断类型类型3中断。用中断。用DEBUG程序的程序的G命命令设置断点,实质上是把一条断点指令令设置断点,实质上是把一条断点指令INT 3插入插入到断点设置处。当到断点设置处。当CPU执行到断点处,自动进入执行到断点处,自动进入类型类型3的中断服务程序,显示相关寄存器和存储的中断服务程序,显示相关寄存器和存储器的内容。可器的内容。可省写为省写为INT(单字节指令)
14、。(单字节指令)。返回下一页2022-7-2616软件中断的特点及优先级l软件中断的特点:软件中断的特点:a.中断类型号由指令提供;中断类型号由指令提供;b.不受中断允许标志不受中断允许标志IF的影响;的影响;c.在执行软件中断时,如果有外部硬件中断请求,在执行软件中断时,如果有外部硬件中断请求,CPU会在执行完当前指令后给予响应(对于可屏会在执行完当前指令后给予响应(对于可屏蔽中断请求,要求蔽中断请求,要求IF=1)。)。l中断源中断源优先权优先权级别由高到低的级别由高到低的顺序顺序为:为:除法错除法错 INT n INTO NMI INTR 单单步步 返回2022-7-2617(二)(二)
15、8086/8088中断向量表中断向量表l中断向量是中断服务程序的入口地址(段地址和中断向量是中断服务程序的入口地址(段地址和偏移地址)偏移地址)。8086/8088系统在存储器系统在存储器00000H003FFH的的1KB区域建立了一个中断向量表,可区域建立了一个中断向量表,可存储存储256个中断向量(个中断向量(类型号类型号00FFH),每个),每个向量占向量占4个字节,低个字节,低2个字节存放中断入口地址的个字节存放中断入口地址的段内偏移地址(段内偏移地址(IP),高),高2个字节存放中断入口的个字节存放中断入口的段地址(段地址(CS),如),如图图10-2所示。所示。l中断类型号由指令给
16、定或由外设提供。当中断类型号由指令给定或由外设提供。当CPU响响应中断时,将应中断时,将中断类型号中断类型号n乘以乘以4就得到中断向量就得到中断向量的存放地址的存放地址,取,取4n和和4n+1单元中的内容装入单元中的内容装入IP,取取4n+2和和4n+3单元中的内容装入单元中的内容装入CS,程序就转,程序就转入相应的中断处理过程。见入相应的中断处理过程。见举例举例。返回下一页2022-7-2618(二)中断向量表(续)l在在8086/8088中断向量表中断向量表中,前中,前5个是专用中断,用户个是专用中断,用户不能修改,除类型不能修改,除类型2外都是软件中断。外都是软件中断。l类型类型05H1
17、FH是是系统使用系统使用中断,不允许用户修改。其中断,不允许用户修改。其中类型中类型08H0FH对应对应8259中断控制器的中断控制器的8路可屏蔽中路可屏蔽中断请求,类型断请求,类型10H1AH为为BIOS中断,类型中断,类型1DH1FH指向三个专用数据表。指向三个专用数据表。l类型类型20H3FH为为DOS中断中断,用户程序可调用,特别是,用户程序可调用,特别是类型类型21H中断,称为中断,称为DOS系统功能调用,使用特别多。系统功能调用,使用特别多。l类型类型40H以后的中断类型大都可由用户安排以后的中断类型大都可由用户安排。返回2022-7-2619图10-2 8086/8088中断向量
18、表返回2CSIPCSIPCSIPCSIPCSIPCSIPCSIP0000:0000H0000:0003H0000:0004H0000:0007H0000:0008H0000:000BH0000:000CH0000:000FH0000:0010H0000:0013H0000:0014H0000:007EH0000:007FH0000:03FFH除数为除数为0的中断的中断单步中断单步中断非屏蔽中断非屏蔽中断断点中断断点中断溢出中断溢出中断类型类型0类型类型1类型类型2类型类型4类型类型3类型类型5类型类型31类型类型32类型类型255(十进制十进制)(十进制十进制)专用中断(共专用中断(共5个)个
19、)保留中断(共保留中断(共27个)个)供用户定义的中断供用户定义的中断(共(共225个)个)返回12022-7-2620举例举例 执行执行INT 05H过程:过程:l取中断类型号取中断类型号05Hl计算中断向量地址计算中断向量地址05H*4=14Hl取中断入口的偏移地址取中断入口的偏移地址FF54HIP,取段地址,取段地址FF00H CSl程序转向中断服务程序入口程序转向中断服务程序入口FF00H:FF54H返回0000:0014HFFH00HFFH54H0000:0015H0000:0016H0000:0017H2022-7-2621(三)8086/8088中断响应过程l8086/8088的
20、中断响应过程分三大步:(1)响应中断,获取中断类型号响应中断,获取中断类型号(2)中断服务,包括保护现场、保护断点和断点中断服务,包括保护现场、保护断点和断点处理处理(3)中断返回,包括恢复断点和恢复现场中断返回,包括恢复断点和恢复现场l在8086/8088各类中断中,除了第一步不同类型中断提供中断类型号的方式不同之外,第二步、第三步的处理过程大体是相同的。返回2022-7-2622(1)中断类型号的获取获取方式有:获取方式有:l可屏蔽中断可屏蔽中断INTR由由外设(外设(8259A)提供)提供中断类型号中断类型号 8086/8088响应响应INTR中断要用两个总线周期:第一个中断要用两个总线
21、周期:第一个总线周期通知总线周期通知8259A,CPU准备响应中断,要求准备好中准备响应中断,要求准备好中断类型号;第二个总线周期中,被响应外设的中断类型号断类型号;第二个总线周期中,被响应外设的中断类型号通过低通过低8位数据总线送给位数据总线送给CPU。CPU将类型号左移两位,将类型号左移两位,成为中断向量的存放地址,存入暂存器。(参考成为中断向量的存放地址,存入暂存器。(参考图图10-1)l非屏蔽中断非屏蔽中断NMI不经过中断响应周期,不经过中断响应周期,自动形成中断自动形成中断类型号类型号02H;l专用软件中断专用软件中断自动形成自动形成中断类型号。除法出错中断类型号。除法出错0,单,单
22、步中断步中断1,断点中断,断点中断3,溢出中断,溢出中断4;l中断指令中断指令INT n由由指令提供指令提供中断类型号中断类型号n。返回2022-7-2623(2)中断响应l取得中断类型码后的操作过程大体相同,顺序取得中断类型码后的操作过程大体相同,顺序为(见为(见图图10-3):):根据中断类型码根据中断类型码计算中断向量所在地址计算中断向量所在地址;将标志寄存器将标志寄存器FR的内容的内容入栈入栈,保护现场;,保护现场;复制复制TF的状态的状态,IF和和TF标志标志清清0,以屏蔽外部,以屏蔽外部其它中断及防止单步运行中断服务程序;其它中断及防止单步运行中断服务程序;将将断点断点地址地址CS
23、和和IP的内容推入堆栈的内容推入堆栈保护保护;从中断向量表从中断向量表读取中断向量读取中断向量送入送入CS和和IP,转,转入中断服务程序。入中断服务程序。l以上各步骤是以上各步骤是CPU自动完成的自动完成的。返回2022-7-2624图10-3 8086/8088中断响应流程图返回是内部中断吗?是内部中断吗?是非屏蔽中断吗?是非屏蔽中断吗?是可屏蔽中断吗?是可屏蔽中断吗?TF 1 吗?吗?执行下一条指令执行下一条指令结束当前指令结束当前指令IF1吗?吗?取中断类型码取中断类型码标志推入堆栈标志推入堆栈令令TEMPTF清除清除IF和和TFCS和和IP推入堆栈推入堆栈进入中断处理程序进入中断处理程
24、序TEMP1吗?吗?执行中断处理程序执行中断处理程序弹出弹出IP和和CS弹出标志弹出标志有有NMI吗?吗?是是是是是是是是否否否否否否否否否否是是响应响应中断中断有有无无是是否否返回断点返回断点2022-7-2625(3)中断处理和返回l进入中断服务程序,完成以下内容:进入中断服务程序,完成以下内容:保护现场保护现场,将有关寄存器内容推入堆栈保护。,将有关寄存器内容推入堆栈保护。开中断开中断,用,用STI指令使指令使IF=1(若允许中断嵌套(若允许中断嵌套的话,否则应将开中断放在中断返回之前)。的话,否则应将开中断放在中断返回之前)。对中断源提出的对中断源提出的中断中断请求进行请求进行处理处理
25、。恢复现场恢复现场,将保存在堆栈中的各寄存器原内容,将保存在堆栈中的各寄存器原内容弹回原寄存器。弹回原寄存器。执行中断执行中断返回返回IRET。完成两个功能:一是将保。完成两个功能:一是将保存在堆栈中的断点地址送回存在堆栈中的断点地址送回IP和和CS,二是恢复,二是恢复标志寄存器标志寄存器FR中的内容(相当于中的内容(相当于POPF),使),使CPU回到原程序继续运行。回到原程序继续运行。返回2022-7-262610.1.3 中断优先权管理中断优先权管理中断优先权中断优先权(Priority):多个中断源同时提出申):多个中断源同时提出申请时,请时,CPU响应中断的优先次序。响应中断的优先次
展开阅读全文