微型计算机输入输出和中断.ppt
《微型计算机输入输出和中断.ppt》由会员分享,可在线阅读,更多相关《微型计算机输入输出和中断.ppt(71页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第第7章章 输入输入/输出和中断输出和中断2lI/OI/O接口:接口:将外设连接到总线上的一组逻辑电路的总称。将外设连接到总线上的一组逻辑电路的总称。用以实现外设与主机之间的用以实现外设与主机之间的信息交换信息交换lI/OI/O端口:端口:接口中的寄存器,可以由接口中的寄存器,可以由CPUCPU读或写读或写7.1 7.1 外设接口的一般结构外设接口的一般结构 数据端口数据端口状态端口状态端口控制端口控制端口端端口口374CPU同外设间交换的信息由三类:同外设间交换的信息由三类:1.数据信息数据信息三种类型三种类型数字量数字量模拟量模拟量开关量开关量二进制二进制数数ASCII码表示的数或字符码
2、表示的数或字符2.2.状态信息状态信息:表示外设当前所处的工作状态。表示外设当前所处的工作状态。3.3.控控制制信信息息:由由CPUCPU发发出出的的,用用于于控控制制I/OI/O接接口口的的工工作作方式以及外设的启动和停止等。方式以及外设的启动和停止等。57.2 7.2 CPUCPU与外设交换数据的方式与外设交换数据的方式 7.2.1 7.2.1 程序控制传递方式程序控制传递方式无条件传送方式无条件传送方式查询传送查询传送方式方式中断传送方式中断传送方式特点特点:(:(1)以以CPU为中心,控制来自为中心,控制来自CPU,通过预先通过预先编写好的编写好的I/O程序实现数据的传送。程序实现数据
3、的传送。(2)速度较低,传送路径经过)速度较低,传送路径经过CPU内部寄存器内部寄存器同时数据同时数据I/O响应也比较慢。响应也比较慢。61.1.无条件无条件传传送方式送方式 (同步传送方式)(同步传送方式)外外设设的的工工作作时时间间已已知知,必必须须在在CPU限限定定的的指指令令时间内准备就绪,并完成数据的接收或发送。时间内准备就绪,并完成数据的接收或发送。方方法法:把把I/OI/O指指令令插插入入到到程程序序中中,当当程程序序执执行行到到该该指指 令令时时,外外设设已已作作好好准准备备,于于是是在在此此指指令令时时间间内内完成数据传送任务。完成数据传送任务。优点:优点:软件及接口硬件简单
4、软件及接口硬件简单缺点:缺点:CPU效率低,只适用于简单外设,适应范围较效率低,只适用于简单外设,适应范围较窄窄 72.查询传送方式(异步传送方式)查询传送方式(异步传送方式)当当CPU同同外外设设不不同同步步且且不不知知道道外外设设工工作作速速率率时时,可可采采用用此此方方式式传传送送。传传送送前前,CPU必必须须先先对对外外设设进进行行状态检测。状态检测。适用场合:适用场合:l外设并不总是准备好外设并不总是准备好l对传送速率和效率要求不高对传送速率和效率要求不高对外设及接口的要求:对外设及接口的要求:l外设应提供设备状态信息外设应提供设备状态信息l接口应具备状态端口接口应具备状态端口8完成
5、一次传送过程的步骤如下:完成一次传送过程的步骤如下:(1)通过执行一条输入指令,读取所选外设的当前状通过执行一条输入指令,读取所选外设的当前状态态(2)根据该设备的状态决定程序去向根据该设备的状态决定程序去向外设外设“忙忙”或或“未准备就绪未准备就绪”重复检测外设重复检测外设状态状态外设外设“空空”或或“准备就绪准备就绪”发出发出I/O指令,进指令,进行一次数据传送。行一次数据传送。9优点:软件比较简单优点:软件比较简单缺点:缺点:CPU效率低,数据传送的实时性差,速效率低,数据传送的实时性差,速 度较慢度较慢103 3中断传送方式中断传送方式 无无条条件件传传递递和和查查询询传传送送的的缺缺
6、点点是是:CPU和和外外设设只只能串行工作。能串行工作。为为提提高高系系统统的的工工作作效效率率,充充分分发发挥挥CPU的的高高速速运运算算能能力力,引引入入了了“中中断断”系系统统,利利用用中中断断来来实实现现CPU与外设之间的数据传送,这就是中断传送方式。与外设之间的数据传送,这就是中断传送方式。特点:外设在需要时向特点:外设在需要时向CPU提出请求,提出请求,CPU再去为再去为它服务。服务结束后或在外设不需要时,它服务。服务结束后或在外设不需要时,CPU可执行自己的程序。可执行自己的程序。中断使中断使CPU和外设以及外设之间能并行工作。和外设以及外设之间能并行工作。11工作过程:工作过程
7、:在在中中断断传传送送方方式式中中,通通常常在在程程序序中中安安排排好好某某一一时时刻刻启启动动某某一一台台外外设设,然然后后CPU继继续续执执行行其其主主程程序序,当当外外设设完完成成数数据据传传送送的的准准备备后后,向向CPU发发出出中中断断请请求求信信号号,在在CPU可可以以响响应应中中断断的的条条件件下下,现现行行主主程程序序被被“中中断断”,转转去去执执行行“中中断断服服务务程程序序”,在在“中中断断服服务务程程序序”中中完完成成一一次次CPU与与外外设设之之间间的的数数据据传传送送,传传送送完成后仍返回被中断的主程序,从断点处继续执行。完成后仍返回被中断的主程序,从断点处继续执行。
8、优点:优点:CPUCPU效率高,实时性好,速度快效率高,实时性好,速度快缺点:程序编制较为复杂缺点:程序编制较为复杂12以上三种以上三种以上三种以上三种I/OI/O方式的共性方式的共性方式的共性方式的共性均需均需CPU作为中介:作为中介:l软件:软件:外设与内存之间的数据传送是通过外设与内存之间的数据传送是通过CPU执行执行程序来完成的程序来完成的l硬件:硬件:I/O接口和存储器的读写控制信号、地址信号接口和存储器的读写控制信号、地址信号都是由都是由CPU发出的发出的l缺点:程序的执行速度限定了传送的最大速度缺点:程序的执行速度限定了传送的最大速度137.2.2 7.2.2 DMADMA(直接
9、存储器存取)传递方式直接存储器存取)传递方式 外外设设和内存之和内存之间间直接直接传传送数据的方式,即送数据的方式,即DMA传传送方式。送方式。在在DMA传送方式中,对这一数据传送过程进传送方式中,对这一数据传送过程进行控制的硬件称为行控制的硬件称为DMA控制器(控制器(DMAC)。)。特点:特点:l外设直接与存储器进行数据交换外设直接与存储器进行数据交换,不需要,不需要CPU干预干预也不需软件介入。也不需软件介入。l总线由总线由DMA控制器(控制器(DMAC)进行控制()进行控制(CPU要放要放弃总线控制权),内存弃总线控制权),内存/外设的地址和读写控制信号均外设的地址和读写控制信号均由由
10、DMAC提供。提供。141.DMA1.DMA操作的基本方法操作的基本方法(1 1)周期挪用(周期挪用(Cycle StealingCycle Stealing)(2 2)周期周期扩扩散散(3 3)CPUCPU停机方式停机方式 最常用,最简单的传送方式最常用,最简单的传送方式152.2.DMADMA的的传传送方式送方式(1)(1)单单字字节传节传送方式送方式 每次每次DMA传送传送只传送一个字节就立即释放总线。只传送一个字节就立即释放总线。(2)(2)成成组传组传送方式送方式 DMAC在申请到总线后,将一组数据传送完后才在申请到总线后,将一组数据传送完后才释放总线,而不管中间释放总线,而不管中间
11、DREQ是否有效。是否有效。(3)(3)请请求求传传送方式送方式(查询传送方式)(查询传送方式)成组传送,但每传送一个字节后,成组传送,但每传送一个字节后,DMAC查查DREQ,有效传,无效挂起。有效传,无效挂起。16.DMAC(DMA控制器)的基本功能控制器)的基本功能(1)能接收外设的请求,向)能接收外设的请求,向CPU发出发出DMA请求信号。请求信号。(2)当接到)当接到CPU发出发出DMA响应信号后,响应信号后,DMAC接管接管对总线的控制,进入对总线的控制,进入DMA方式。方式。(3)能寻址存储器,即能输出地址信息和修改地址。)能寻址存储器,即能输出地址信息和修改地址。(4)能向存储
12、器和外设发相应的读)能向存储器和外设发相应的读/写控制信号。写控制信号。(5)能控制传送的字节数,判断)能控制传送的字节数,判断DMA是否结束。是否结束。(6)在)在DMA传送结束后,能结束传送结束后,能结束DMA请求信号,释请求信号,释放总线,使放总线,使CPU恢复正常工作。恢复正常工作。17 7 7.3 .3 中断技术中断技术 7.3.1 7.3.1 概述概述中中断断外外设设随随机机地地(指指主主程程序序运运行行到到任任何何一一条条指指令令时时)或或程程序序预预先先安安排排产产生生中中断断请请求求信信号号,暂暂停停CPUCPU正正在在运运行行的的程程序序,转转入入执执行行称称为为中中断断服
13、服务务的的子子程程序序,中中断断服服务务完完毕毕后后,返返回回到到主主程程序序被被中中断处继续执行的过程。断处继续执行的过程。中断源中断源引起中断的事件引起中断的事件18通常中断源有以下几种:通常中断源有以下几种:(1 1)输输入、入、输输出出设备设备:如如键盘键盘、显显示器和打印机等示器和打印机等;(2 2)数据通道数据通道;(3 3)实时实时控制控制过过程中的各种参数程中的各种参数;(4 4)故障源故障源:如掉如掉电电保保护护等等;(5 5)控制系控制系统统的的现场测试现场测试信号以及信号以及软软件中断。件中断。中断系统应具有以下功能中断系统应具有以下功能:1.1.能实现中断响应、中断服务
14、和中断返回能实现中断响应、中断服务和中断返回 2.2.能实现中断优先级排队能实现中断优先级排队 3.3.能实现中断嵌套能实现中断嵌套 197.3.2 7.3.2 中断过程中断过程1.中断过程中断过程一一个个完完整整的的中中断断基基本本过过程程包包括括:中中断断请请求求、中中断断判判优优、中中断断响响应应、中中断断处处理理及及中中断断返返回回等等五五个个基基本本过过程。程。(1)中断请求)中断请求当当某某一一外外部部中中断断源源要要求求CPU中中断断时时,首首先先要要向向CPU发发出出中中断断请请求求,该该请请求求信信号号被被存存放放在在中中断断源源接接口口电电路路的的中中断断请请求求触触发发器
15、器中中暂暂存存,并并通通过过INTR或或NMI信号线引入信号线引入CPU。20(2)中断判优)中断判优由由于于中中断断请请求求是是随随机机的的,在在某某一一瞬瞬间间有有可可能能出出现现两两个个或或两两个个以以上上中中断断源源同同时时提提出出请请求求的的情情况况。这这时时必必须须根根据据中中断断源源的的轻轻重重缓缓急急,给给每每个个中中断断源源确确定定一一个个中中断级别断级别中断优先权中断优先权。另一个作用能实现中断嵌套另一个作用能实现中断嵌套。21(3)中断响应中断响应CPU每每执执行行完完一一条条指指令令后后,查查询询是是否否有有中中断断请请求求。当当查查询询到到有有中中断断请请求求且且此此
16、时时CPU允允许许中中断断(即即IF=1,开中断),开中断),CPU响应中断。响应中断。响应中断后系统做的工作:响应中断后系统做的工作:自动关中断;自动关中断;通过使通过使IF清零来实现清零来实现保存保存FR和断点;和断点;形形成成中中断断入入口口地地址址。通通过过中中断断矢矢量量,查查询询中中断断地地址址表实现。表实现。22(4 4)中断处理)中断处理执行中断服务程序执行中断服务程序中断服务开始要用压栈指令(中断服务开始要用压栈指令(PUSHPUSH)将要用到的将要用到的寄存器内容压入堆栈,以便返回到主程序时能寄存器内容压入堆栈,以便返回到主程序时能正确运行。正确运行。保护现场保护现场中断服
17、务程序结束后,用中断服务程序结束后,用POPPOP指令把所保存的有关指令把所保存的有关寄存器的内容从堆栈弹出,以便恢复到中断前寄存器的内容从堆栈弹出,以便恢复到中断前的状态。的状态。恢复现场恢复现场23(5 5)中断返回)中断返回通常在通常在中断返回前中断返回前,要用指令,要用指令开中断开中断,以便再,以便再次响应中断,然后执行中断返回指令次响应中断,然后执行中断返回指令242.中断优先权中断优先权(1)软件查询方式)软件查询方式7725(2)硬件优先权排队电路。)硬件优先权排队电路。简单硬件方式简单硬件方式菊花链法或链式优先权排队电路。菊花链法或链式优先权排队电路。专用硬件方式专用硬件方式可
18、编程的中断控制器可编程的中断控制器726 7.48086/8088的中断系统的中断系统7.4.1中断结构中断结构1.中断分类中断分类硬件中断硬件中断(外部中断)(外部中断)软件中断软件中断(内部中断)(内部中断)除法错中断除法错中断溢出中断溢出中断断点中断断点中断单步中断单步中断INTn指令中断指令中断非屏蔽中断非屏蔽中断可屏蔽中断可屏蔽中断256种中断源种中断源类型码类型码025527硬件中断硬件中断由外部硬件产生的,也称由外部硬件产生的,也称外部中断外部中断。软件中断软件中断CPU根据软件的某些指令或者软件对标根据软件的某些指令或者软件对标志寄存器某个标志位的设置而产生的,志寄存器某个标志
19、位的设置而产生的,由于它与外部中断电路完全无关,故称由于它与外部中断电路完全无关,故称为为内部中断内部中断。非屏蔽中断:通过非屏蔽中断:通过CPU的的NMI引入,它不受内部中断允引入,它不受内部中断允许标志位许标志位IF的屏蔽,一般在一个系统中只的屏蔽,一般在一个系统中只允许有一个非屏蔽中断。允许有一个非屏蔽中断。可屏蔽中断:通过可屏蔽中断:通过CPU的的INTR引入引入,它受,它受IF的控制。的控制。只有在只有在IF=1时,时,CPU才能响应中断源的请才能响应中断源的请求。当求。当IF=0时,中断请求被屏蔽。时,中断请求被屏蔽。282中断向量表中断向量表存放中断地址的一段内存空间称中断向量表
20、存放中断地址的一段内存空间称中断向量表。l存放各类中断的中断服务程序的入口地址存放各类中断的中断服务程序的入口地址l位于内存的位于内存的0000 00000000 03FFH(即即00000003FFH)大小为大小为1KB,共,共256个入口地址个入口地址l每个入口地址占用每个入口地址占用4个单元,依次为个单元,依次为IP:CS,低低字为段内偏移,高字为段基址字为段内偏移,高字为段基址29中断向量表中断向量表中断向量表中断向量表 00000H003FFH1KB30IPCS中断类型码与中断向量所在位置(中断向量地址指针)中断类型码与中断向量所在位置(中断向量地址指针)之间的对应关系为:之间的对应
21、关系为:中断向量地址指针中断向量地址指针=4*中断类型码中断类型码C331例:中断类型码为例:中断类型码为20H(32)的中断源所对应的中断服务的中断源所对应的中断服务程序首址存放在程序首址存放在0000 0080H(4*20H=80H)开始的开始的4个单元中。若在个单元中。若在0080H至至0083H这这4个单元中存放的值个单元中存放的值分别为分别为10H、20H、30H、40H,则该系统中则该系统中20H号中号中断所对应的断所对应的中断处理(服务)程序入口地址为中断处理(服务)程序入口地址为4030 2010H中断向量表中断向量表中断向量表中断向量表 0080H 10H20H30H40H0
22、083H0082H0081H327.4.2内部中断内部中断软中断软中断在在8086/8088系统中,通过执行中断指令或由系统中,通过执行中断指令或由CPU本身启动的中断称为内部中断(也称软件中断)。本身启动的中断称为内部中断(也称软件中断)。除除单单步步中中断断外外,内内部部中中断断无无法法用用软软件件禁禁止止,即即不不受受IF的影响。的影响。1、内部中断的类型、内部中断的类型(1)0型中断型中断除法出错中断除法出错中断(2)1型中断型中断单步中断单步中断(3)3型中断型中断断点中断断点中断(4)4型中断型中断溢出中断溢出中断(5)INTn指令中断指令中断332内部中断的处理过程内部中断的处理
23、过程如何获取相应的中断类型码如何获取相应的中断类型码专用中断:中断类型码是自动形成的。专用中断:中断类型码是自动形成的。几种类型码为:类型几种类型码为:类型0、1、3、4。对于对于INTn指令,其类型码为指令中给定的指令,其类型码为指令中给定的n。34取得了类型码后的处理过程:取得了类型码后的处理过程:类型码类型码*4向量表指针。向量表指针。标志寄存器标志寄存器FR入栈,保护各个标志。入栈,保护各个标志。清除清除IF和和TF标志,屏蔽新的标志,屏蔽新的INTR中断和单步中断。中断和单步中断。保存断点(断点处保存断点(断点处IP和和CS压栈,先压压栈,先压CS后压后压IP)。)。从从中中断断向向
24、量量表表中中取取出出中中断断服服务务程程序序入入口口地地址址分分别别送送入入IP和和CS中。中。按新的地址执行中断服务程序。按新的地址执行中断服务程序。357.4.3外部中断外部中断硬中断硬中断非非屏屏蔽蔽中中断断NMI引引脚脚产产生生的的中中断断,不不受受IF控控制制,类型号为类型号为2。可可屏屏蔽蔽中中断断由由CPU的的INTR端端接接收收可可屏屏蔽蔽中中断断。受受IF控控制制,只只有有当当IF=1,在在一一条条指指令令执执行行结结束束后后,CPU才才能能响响应应可可屏屏蔽蔽中中断断的的请求。请求。361.外部中断的响应外部中断的响应CPU采样到非屏蔽中断请求时,自动提供中断类采样到非屏蔽
25、中断请求时,自动提供中断类型号型号2,然后根据中断类型号,查找中断向量表指针,然后根据中断类型号,查找中断向量表指针,其后的处理与内部中断一样。其后的处理与内部中断一样。当当INTR信号有效,如信号有效,如IF=1,则则CPU执行完一条指执行完一条指令后,进入可屏蔽中断响应周期。在中断响应周期中令后,进入可屏蔽中断响应周期。在中断响应周期中CPU从数据线中获取外部设备的中断类型码。从数据线中获取外部设备的中断类型码。372.外部中断处理过程外部中断处理过程在外部中断响应周期中,在外部中断响应周期中,CPU获取了外部中断类型获取了外部中断类型码码之之后后的的中中断断处处理理过过程程,与与前前述述
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型计算机 输入输出 中断
限制150内