《第08章输入输出系统.ppt》由会员分享,可在线阅读,更多相关《第08章输入输出系统.ppt(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第八章第八章 输入输出系统输入输出系统输入输出系统概述输入输出系统概述程序查询方式程序查询方式程序中断方式程序中断方式DMADMA方式方式输入输出系统概述输入输出系统概述I/O接口的基本功能接口的基本功能 1.实实现现数数据据格格式式的的转转换换:完完成成外外设设表表达达的的数数据据形形式式与与计计算算机机所所能能处理的二进制形式之间的转换。处理的二进制形式之间的转换。2.匹匹配配主主机机与与外外设设的的速速度度差差距距:主主机机传传送送信信息息的的速速度度高高,外外设设发发送送或接受信息的速度低或接受信息的速度低,接口应具有对数据信息传送速度的缓冲作用。接口应具有对数据信息传送速度的缓冲作用
2、。3.对对众众多多外外设设的的寻寻址址功功能能:对对各各个个外外设设进进行行寻寻址址,使使主主机机能能够够与与指定的外设进行数据交换。指定的外设进行数据交换。4.传传送送主主机机指指令令:接接口口能能记记录录和和识识别别主主机机传传送送来来的的命命令令,并并将将命命令令传送到设备。传送到设备。5.反反映映设设备备的的工工作作状状态态:接接口口能能随随时时采采集集并并保保存存设设备备的的工工作作状状态态,以备主机查询。以备主机查询。输入输出系统包括输入输出设备、输入输出接口及相关软件输入输出系统包括输入输出设备、输入输出接口及相关软件,I/O接口接口(I/O适配器适配器)是用来连接主机与是用来连
3、接主机与I/O设备的设备的,三者关系如下三者关系如下:主机主机I/O接口接口I/O设备设备 I/O系统的编址方式系统的编址方式 1、与主存储器统一编址方式、与主存储器统一编址方式 在主存储器的地址空间中划出某一区域专门作为外设地址在主存储器的地址空间中划出某一区域专门作为外设地址区使用,即外设寄存器的地址包含在主存储器的地址空间内,区使用,即外设寄存器的地址包含在主存储器的地址空间内,划给外设的这部分区域不能配置存储器芯片。划给外设的这部分区域不能配置存储器芯片。优点优点:操作方式灵活操作方式灵活,使用通用的使用通用的MOV或访存指令也可以访或访存指令也可以访问问I/O接口。接口。缺点缺点:需
4、占用小部分存储空间。需占用小部分存储空间。CPU主存储器主存储器I/O接口接口I/O接口接口地址线地址线 数数据线据线 R/W控制线控制线主主存存储储区区外设区外设区主主存存地地址址空空间间00000HEFFFFHF0000HFFFFFH 2、I/O端口单独编址方式端口单独编址方式 设置单独的设置单独的I/O地址空间地址空间,为为I/O接口的有关寄存器分接口的有关寄存器分配配I/O端口地址端口地址,使用专门的使用专门的I/O指令去访问指令去访问。优点优点:不占用存储空间不占用存储空间。缺点缺点:需专门的需专门的I/O指令指令,其寻址方式较简单其寻址方式较简单,编程灵编程灵活活 性稍差性稍差。C
5、PU主存储器主存储器I/O接口接口I/O接口接口地址线地址线 数据线数据线主存主存R/W控制控制I/O R/W控制控制例例:8086/8088 I/O端口单独编址电路实端口单独编址电路实现现8086 M/IORDWRMEMRMEMWI/ORI/OW I/OI/O主要控制方式主要控制方式问题的提出:问题的提出:外设的要求如何被满足?外设和主机如何同步?外设的要求如何被满足?外设和主机如何同步?1 1、程程序序查查询询方方式式:由由CPUCPU执执行行一一段段输输入入输输出出程程序序来来控控制制实实现现主机与外设之间的数据传送。主机与外设之间的数据传送。CPUCPU利用率很低,但接口简单。利用率很
6、低,但接口简单。2 2、程程序序中中断断方方式式:当当外外设设数数据据准准备备就就绪绪后后,“主主动动”向向CPUCPU发发出出请请求求中中断断的的信信号号,CPUCPU响响应应中中断断时时,暂暂停停主主程程序序的的执执行行,转转移移到到请请求求中中断断的的外外设设的的中中断断服服务务程程序序,中中断断服服务务程程序序结结束束后,后,CPUCPU再返回原被中断的主程序。再返回原被中断的主程序。3 3、直直接接存存储储器器存存取取(DMADMA)方方式式:是是一一种种完完全全由由硬硬件件执执行行I/OI/O交交换换的的工工作作方方式式。该该方方式式中中,DMADMA控控制制器器接接替替CPUCP
7、U对对总总线线的的控控制,数据交换直接在主存和制,数据交换直接在主存和I/OI/O设备之间进行,而不经过设备之间进行,而不经过CPUCPU。4 4、通通道道和和I/OI/O处处理理机机方方式式:由由通通道道或或I/OI/O处处理理机机控控制制实实现现数数据据输输入入输输出出,通通道道与与CPUCPU分分时时使使用用内内存存,实实现现了了CPUCPU与与外外设设的的并并行工作。行工作。程序查询方式程序查询方式6.2.1 程序查询方式接口程序查询方式接口CPU控制控制寄存器寄存器0 1忙忙0 1就绪就绪数据缓冲寄存器数据缓冲寄存器设备选择设备选择动作开始动作开始动作结束动作结束输入数据输入数据DB
8、AB(1)(2)(3)(4)(5)(6)接口接口设备设备(1 1)CPUCPU启动接口,置启动接口,置“忙忙”为为1 1,“就绪就绪”为为0 0(2 2)设备设备“动作开始动作开始”(3 3)设备向接口设备向接口“输入数据输入数据”(4 4)设备设备“动作动作结束结束”,置,置“就绪就绪”为为1 1(5 5)CPUCPU检测到检测到“就绪就绪”(T1T1T4T4期间,期间,CPUCPU始终检测是否就绪)始终检测是否就绪)(6 6)CPUCPU从接口接收数据从接口接收数据特点:特点:CPU与外设处于串行工作方式,与外设处于串行工作方式,主程序与外设的服务子程序的执行不能主程序与外设的服务子程序的
9、执行不能同时进行同时进行。优点:优点:接口简单接口简单。缺点:缺点:CPU效率低(查询的过程是快速效率低(查询的过程是快速CPU等待慢速外设的过程)等待慢速外设的过程)。程序查询方式总结程序查询方式总结1.中断中断:在接到随机请在接到随机请求后,求后,CPU暂停执行暂停执行原来的程序,转去执原来的程序,转去执行中断处理程序,为行中断处理程序,为响应的随机事件服务,响应的随机事件服务,处理完毕后处理完毕后CPU恢复恢复原程序的继续执行,原程序的继续执行,这个过程称为中断这个过程称为中断。CPU主程序主程序中断请求中断请求响响应应返返回回中中断断服服务务程程序序 中断方式中断方式 中断的基本概念中
10、断的基本概念外设工作外设工作外设工作外设工作CPU查询查询CPU查询查询CPU工作工作CPU工作工作CPU工作工作外设工作外设工作CPU工作工作中中断断请请求求中断中断服务服务外设工作外设工作CPU工作工作中中断断请请求求中断中断服务服务 与程序查询方式比较与程序查询方式比较2.中断源中断源:请求请求CPU中断的设备或事件中断的设备或事件中断中断内内中断中断:发生在主机内部的中断发生在主机内部的中断外外中断中断:由主机外部事件引起的中断由主机外部事件引起的中断中断方式中断方式中断的处理过程中断的处理过程1.1.中断的处理过程中断的处理过程(1)中断请求:中断请求:中断源向中断源向CPU发出中断
11、请求。发出中断请求。(2)中断响应:中断响应:是中断处理开始的是中断处理开始的公操作公操作,包括,包括:a.关中断关中断,即即CPU内部的中断屏蔽寄存器内部的中断屏蔽寄存器IM置位置位(IM=1)b.中断现行程序并保护断点中断现行程序并保护断点(PC及及PSW的内容的内容)c.发中断响应信号发中断响应信号INTA(3)中中断断识识别别:确确定定应应该该处处理理哪哪一一个个中中断断,并并调调用用其其对对应应的的中中断断服服务程序。中断源的识别方法有务程序。中断源的识别方法有软件查询软件查询和和中断向量法中断向量法。(4)中断服务:中断服务:由中断服务程序完成,包括如下处理:由中断服务程序完成,包
12、括如下处理:a.保护现场保护现场 b.执行中断服务程序执行中断服务程序 c.恢复现场恢复现场(5)中断返回:中断返回:返回主程序断点,由中断返回指令返回主程序断点,由中断返回指令IRET完成完成。取取指令指令执行指令执行指令中断中断指令指令周期周期中断周期中断周期中断服务中断服务 程序程序TMTMTDCTSTA,TB,TCTR保存现场保存现场设备服务程序设备服务程序恢复现场恢复现场硬件实现硬件实现中断处理过程流程图中断处理过程流程图优先级优先级高高低低CPUINTRINTAINTI INTOI/O接口接口1INTI INTOI/O接口接口2INTI INTOI/O接口接口nABDBX INTI
13、:中断排队输入信号中断排队输入信号 INTO:中断排队输出信号中断排队输出信号 X当某一接口提出中断请求时,该接口的当某一接口提出中断请求时,该接口的INTO输出为高电平,禁输出为高电平,禁止后面的接口提出中断请求止后面的接口提出中断请求2.中断源识别中断源识别:识别请求中断的中断源识别请求中断的中断源(1)串行排队链法串行排队链法(daisy-chain method):每个接口每个接口具有链式排队和提供中断程序入口地址的功能具有链式排队和提供中断程序入口地址的功能.789数据总线数据总线001010001011001000INTA INTI编码器编码器IR1IR2IR312345IR1IR
14、2IR3串行排队链优先识别逻辑及中断向量的产生串行排队链优先识别逻辑及中断向量的产生 优点优点:信号简单信号简单;易于扩展易于扩展;可实现中断服务程序的快速转入。可实现中断服务程序的快速转入。缺点缺点:但联接的级数较多时但联接的级数较多时,使响应速度变慢使响应速度变慢;可靠性差可靠性差;中断优先级固定。中断优先级固定。INTO6D5D0(2)独立请求方式独立请求方式中断优先中断优先级排队级排队电路与电路与中断控制中断控制逻辑逻辑CPUIM2IR20101IM1IR1IM0IR0010010101设备设备A设备设备B设备设备C高高低低优优先先权权各个中断源都有自己独立的中断请求线送往各个中断源都
15、有自己独立的中断请求线送往CPU的的中断优先级排队电路中断优先级排队电路,每根中断请求线在处理机中每根中断请求线在处理机中都有固定的或可编程的中断优先级。都有固定的或可编程的中断优先级。3.中断服务程序中断服务程序:是中断处理的核心是中断处理的核心,不同的中断要求不同的中断要求配置不同的中断服务程序。其流程如下配置不同的中断服务程序。其流程如下:保护现场保护现场交换屏蔽字交换屏蔽字开开中断中断中断服务中断服务关中断关中断恢复现场恢复现场恢复屏蔽字恢复屏蔽字开开中断中断中断返回中断返回前前处理部分处理部分主体部分主体部分后后处理部分处理部分控制控制IMIR0101公用寄存器公用寄存器PCIR中断
16、方式基本接口中断方式基本接口P278CPU接口接口设备设备BS01RD01EI011数据缓冲寄存器数据缓冲寄存器中断向量逻辑中断向量逻辑设备选择设备选择1INTASC(1)(10)(2)动作动作开始开始(4)动作动作结束结束(3)传送传送数据数据(5)IR请求请求(9)数据总线数据总线(8)(7)(8)(7)中断中断 中断屏蔽触发器中断屏蔽触发器(IM):CPU是否受理中断或批准中断的标志是否受理中断或批准中断的标志.IM为为“0”时时,CPU可受理中断。可受理中断。中断允许触发器中断允许触发器(EI):控制是否允许某设备发出中断请求控制是否允许某设备发出中断请求.EI为为“1”时时,某设某设
17、备可向备可向CPU发出中断请求。发出中断请求。(6)1.单级中断单级中断:所有中断源属于同一级所有中断源属于同一级,CPU在在处理一个中断时处理一个中断时,禁止响应其它中断禁止响应其它中断,即使即使优先级别高的中断也不能被响应。优先级别高的中断也不能被响应。2.多级中断处理多级中断处理:将计算机系统中的多个中将计算机系统中的多个中断源分成若干级别断源分成若干级别,每一中断级分配一个每一中断级分配一个优先权,允许中断嵌套。优先权,允许中断嵌套。中断处理方式中断处理方式定定义义:优优先先级级别别高高的的中中断断打打断断优优先级别低的中断先级别低的中断,称为嵌套中断称为嵌套中断方方法法:在在中中断断
18、服服务务程程序序中中设设置置“开开放放中中断断”,以以便便CPU能能够够接接受受其它中断请求。用堆栈保护断点。其它中断请求。用堆栈保护断点。(1)(1)嵌套中断嵌套中断主程序主程序中断中断请求请求PC=AASP中断中断请求请求PC=B主程序主程序中断中断请求请求PC=ASP主程序主程序中断中断请求请求PC=A中断中断请求请求PC=B中断中断请求请求PC=CABSP主程序主程序中断中断请求请求PC=A中断中断请求请求PC=B中断中断请求请求PC=CABCSPIRET嵌套过程嵌套过程主程序主程序中断中断请求请求PC=A中断中断请求请求PC=B中断中断请求请求PC=CIRET IRETABSP主程序
19、主程序中断中断请求请求PC=A中断中断请求请求PC=B中断中断请求请求PC=CIRET IRETIRETASP主程序主程序中断中断请求请求PC=A中断中断请求请求PC=B中断中断请求请求PC=CIRET IRET IRETSP(2)一维多级中断和二维多级中断一维多级中断和二维多级中断 一维多级中断指每一级中断里只有一个中断源一维多级中断指每一级中断里只有一个中断源,二维多级二维多级别中断指每一级又有多个中断源。别中断指每一级又有多个中断源。中断优先中断优先级排队级排队电路与电路与中断控制中断控制逻辑逻辑CPUIM2IR20101IM1IR1IM0IR0010010101设备设备A设备设备D设备
20、设备G高高低低优优先先权权设备设备B设备设备C设备设备E设备设备F设备设备H设备设备I高高优先权优先权低低2级级IR1级级IR0级级IR二维多级中断结构二维多级中断结构(3)多级别中断源的识别多级别中断源的识别编编 码码 器器101101010234101102103104排排队队器器.向量地址向量地址IR1IR2IR3IR4中断请求寄存器中断请求寄存器中断屏蔽寄存器中断屏蔽寄存器独立请求方式的优先级排队逻辑独立请求方式的优先级排队逻辑:如果每一级上还接有多个中断如果每一级上还接有多个中断源设备源设备,那么还需进一步用串行链式方式查询识别中断源。那么还需进一步用串行链式方式查询识别中断源。IR
21、1IR2IR3IR4(4 4)屏蔽码改变中断优先等级)屏蔽码改变中断优先等级中中断断屏屏蔽蔽:对对每每个个中中断断级级设设置置一一位位中中断断屏屏蔽蔽码码,若若该该位位为为屏屏蔽蔽状状态态,则则该该中中断断级级提提出出的的中中断断请请求求不不能能为为CPU所所接接收收。否否则则,若若该该位位为为非非屏屏蔽蔽状状态态,则则该该中中断断级级提提出出的的中中断断请请求求可可以以到到达达CPU。对对于于多多级级中中断断系系统统,可可以以将将为为每每个个中中断断级级设设置置的的屏屏蔽蔽码码存存放放在在一一个个中中断断屏屏蔽蔽寄寄存存器器中中,通通过过编编程程改改变变中中断断屏屏蔽蔽寄寄存存器器的的内内容
22、容,从从而而对对各各中中断级对应的中断请求输入线进行屏蔽控制。断级对应的中断请求输入线进行屏蔽控制。例例:某计算机系统共有某计算机系统共有5级中断级中断,其中断响应优先级从高到低为其中断响应优先级从高到低为 12 3 4 5,先按如下规定修改先按如下规定修改:各级中断处理时均屏蔽本各级中断处理时均屏蔽本级中断级中断,且处理且处理1级中断时屏蔽级中断时屏蔽2、3、4、5级中断级中断;处理处理2级中断级中断时屏蔽时屏蔽3、4、5级中断级中断;处理处理4级中断时不屏蔽其它中断级中断时不屏蔽其它中断;处理处理3级级中断时屏蔽中断时屏蔽4级和级和5级中断级中断;处理处理5级中断时屏蔽级中断时屏蔽4级中断
23、级中断.试问中试问中断处理优先级断处理优先级(从高到低从高到低)顺序如何排列顺序如何排列?并给出各级中断处理程并给出各级中断处理程序的中断屏蔽字序的中断屏蔽字?解解:实际中断处理优先级实际中断处理优先级(从高到低从高到低)顺序为顺序为1 2 3 5 4 1级中断屏蔽字为级中断屏蔽字为:11111;2级中断屏蔽字为级中断屏蔽字为:01111;3级中断屏蔽字为级中断屏蔽字为:00111;4级中断屏蔽字为级中断屏蔽字为:00010;5级中断屏蔽字为级中断屏蔽字为:00011 (1:屏蔽,:屏蔽,0:开放):开放)例例:(P282)下图所示为一个二维中断系统下图所示为一个二维中断系统,请问请问:中断优
24、先中断优先级排队级排队电路与电路与中断控制中断控制逻辑逻辑CPUIM2IR20101IM1IR1IM0IR0010010101设备设备A设备设备D设备设备G高高低低优优先先权权设备设备B设备设备C设备设备E设备设备F设备设备H设备设备I高高优先权优先权低低2级级IR1级级IR0级级IR(1)在中断情况下在中断情况下,CPU和设备的优先级如何和设备的优先级如何?按降序排列各设备的中断优先级按降序排列各设备的中断优先级.(2)若若CPU现执行设备现执行设备B的中断服务程序的中断服务程序,IM0,IM1,IM2的状态是什么的状态是什么?如果如果CPU执执行设备行设备D的中断服务程序的中断服务程序,I
25、M0,IM1,IM2的状态是什么的状态是什么?(3)每一级的每一级的IM能否对某个优先级的个别设备单独进行屏蔽能否对某个优先级的个别设备单独进行屏蔽,如果不能如果不能,采用什么采用什么方法可达到目的方法可达到目的?(4)假如设备假如设备C一提出中断请求一提出中断请求,CPU立即响应立即响应,如何调整才能满足此要求如何调整才能满足此要求?例例:(P282)参见教材参见教材P276图图8.7所示的系统所示的系统,只考虑只考虑A,B,C三个设备组三个设备组成的单级中断系统成的单级中断系统,它要求它要求CPU在执行完当前指令时对中断请求进在执行完当前指令时对中断请求进行服务行服务.假设假设:(1)CP
26、U”中断批准中断批准“机构在响应一个新的中断之前机构在响应一个新的中断之前,先要让被中断的程序的一条指令一定要执行完毕先要让被中断的程序的一条指令一定要执行完毕;(2)TDC为查询链为查询链中每个设备的延迟时间中每个设备的延迟时间;(3)TA,TB,TC分别为设备分别为设备A,B,C的服务程序的服务程序所需的执行时间所需的执行时间;(4)TS,TR为保存现场和恢复现场所需的时间为保存现场和恢复现场所需的时间;(5)主主存工作周期为存工作周期为TM.试问试问:就这个中断请求环境来说就这个中断请求环境来说,系统在什么情况系统在什么情况下达到中断饱和下达到中断饱和?解解:假设执行一条指令的时间也为假
27、设执行一条指令的时间也为TM.如果三个设备同时发出中断请如果三个设备同时发出中断请求求,那么依次分别处理设备那么依次分别处理设备A,B,C的时间为的时间为:tA=2TM+TDC+TS+TA+TR tB=2TM+TDC+TS+TB+TR tC=2TM+TDC+TS+TC+TR 处理三个设备所需的总时间为处理三个设备所需的总时间为:T=tA+tB+tC T为达到中断饱和的最小时间为达到中断饱和的最小时间.即中断极限频率为即中断极限频率为f=1/TDMA方式方式主存主存I/O设备设备CPU降低降低CPU效率效率改进改进主存主存I/O设备设备DMA(Direct Memory Access)直接存储器
28、存取方式直接存储器存取方式采用中断方式时,主存与采用中断方式时,主存与I/O交换信息:交换信息:是一种完全由硬件执行的主存与外设之间数据直接传是一种完全由硬件执行的主存与外设之间数据直接传送的送的I/O控制方式。控制方式。由由DMA控制器从控制器从CPU接管对总线的控制权,数据传接管对总线的控制权,数据传送不经过送不经过CPU,而直接在主存和外设之间进行。而直接在主存和外设之间进行。一般用于高速成组的数据传送。一般用于高速成组的数据传送。DMA数据传送过程:数据传送过程:(1)传送前预处理传送前预处理;(2)正式传送正式传送;(3)传送后处理传送后处理DMA数据传送过程数据传送过程DMA控制器
29、的组成控制器的组成内内存存CPU设备设备系系 统统 总总 线线中断请求中断请求数据线数据线地址线地址线HOLDHLDADMAC内内存存CPU内存地址计数器内存地址计数器数据字计数器数据字计数器数据缓冲寄存器数据缓冲寄存器设备选择设备选择中断机构中断机构控制控制/状态逻辑状态逻辑0 1DAM请求标志请求标志设备设备系系 统统 总总 线线+1-1溢出信号溢出信号中断请求中断请求DMA请求请求DMA响应响应请求请求/结束结束数据数据数据线数据线地址线地址线HOLDHLDADMA控制器的组成控制器的组成内存地址计数器:内存地址计数器:存放主存中要交换的数据的地址。在存放主存中要交换的数据的地址。在DM
30、A传传送前,送前,CPU通过指令将数据在主存中的起始地址送入该寄存器。通过指令将数据在主存中的起始地址送入该寄存器。在在DMA传送时,每交换一次数据,该寄存器内容加传送时,每交换一次数据,该寄存器内容加1。数据字计数器:数据字计数器:记录传送数据块的字数或字节数。在记录传送数据块的字数或字节数。在DMA传送前,由传送前,由程序将其内容预置为要传送的数据块的字数或字节数。在程序将其内容预置为要传送的数据块的字数或字节数。在DMA传送期传送期间,每交换一次数据,该寄存器内容减间,每交换一次数据,该寄存器内容减1。当该寄存器内容减至。当该寄存器内容减至0时,时,标明数据块传送完毕,标明数据块传送完毕
31、,DMAC向向CPU发出中断请求信号。发出中断请求信号。数据缓冲寄存器:数据缓冲寄存器:暂存每次传送的数据。数据从外设向主存传暂存每次传送的数据。数据从外设向主存传送时,由外设将数据先存入该缓冲器,再由该缓冲器通过数据送时,由外设将数据先存入该缓冲器,再由该缓冲器通过数据总线将数据送入主存。数据由外设向主存传送时,由主存通过总线将数据送入主存。数据由外设向主存传送时,由主存通过数据总线将数据存入该缓冲器,然后再传送到外设。数据总线将数据存入该缓冲器,然后再传送到外设。DMA请求标志:请求标志:设备设备DMA请求标志请求标志控制控制/状态逻辑状态逻辑CPU请求请求 置位置位DMA请求请求HOLD
32、HLDADMA响应响应 复位复位 问题:问题:DMAC和和CPU如何分时使用系统总线和主存?如何分时使用系统总线和主存?1、CPU停止法停止法 在在DMA传送期间,传送期间,CPU一直处于保持状态,不对总线一直处于保持状态,不对总线和主存进行任何操作和主存进行任何操作内存工作时间内存工作时间CPU控制并控制并使用主存使用主存DMAC控制控制并使用主存并使用主存适用于数据传输率很高的外设进行成组传送。适用于数据传输率很高的外设进行成组传送。微机中常采用此方法。微机中常采用此方法。DMA传送方式传送方式 2、总线周期挪用法、总线周期挪用法 当外设有当外设有DMA请求时,由请求时,由DMAC挪用一个
33、或几个主存周期挪用一个或几个主存周期内存工作时间内存工作时间CPU控制并控制并使用主存使用主存DMAC控制控制并使用主存并使用主存外设在请求外设在请求DMA传送时传送时1、此时、此时CPU不需要访问主存,不需要访问主存,DMAC访问主访问主存与存与CPU访存无冲突。访存无冲突。2、外设要求、外设要求DMA时时CPU也要访问主存,访也要访问主存,访存冲突,此时,外设访存优先。存冲突,此时,外设访存优先。只有当只有当CPU在指令周期中在指令周期中需内部操作时需内部操作时,把,把CPU进行进行内部操作的总内部操作的总线空闲周期线空闲周期挪用给挪用给DMA操作,才能使其发挥较好的效果操作,才能使其发挥
34、较好的效果外设每次周期挪用都要经过外设每次周期挪用都要经过申请申请总线控制权、总线控制权、建立建立总线控制权总线控制权和和归还归还总线控制权的过程总线控制权的过程 3、总线周期分时法、总线周期分时法 DMAC与与CPU交替访问主存。交替访问主存。内存工作时间内存工作时间CPU控制并控制并使用主存使用主存DMAC控制控制并使用主存并使用主存无需经过总线控制权的申请、建立和归还过程无需经过总线控制权的申请、建立和归还过程总线可以采用一个总线可以采用一个多路转换器多路转换器控制控制CPU和和DMAC控制权的转移控制权的转移中断控制方式与中断控制方式与DMA方式有何异同方式有何异同?DMA是程序中断传
35、送技术的发展是程序中断传送技术的发展,在硬件逻辑机构的支持下在硬件逻辑机构的支持下,它它以更快的速度以更快的速度,更简便的形式传送数据更简便的形式传送数据.二者的区别为二者的区别为:(1)中断方式通过程序实现数据传送中断方式通过程序实现数据传送,而而DMA方式靠硬件来实现。方式靠硬件来实现。(2)中断方式具有数据传送和处理异常事件的能力中断方式具有数据传送和处理异常事件的能力,而而DMA只能只能 进行数据传送。进行数据传送。(3)中断方式必须切换程序中断方式必须切换程序,要进行要进行CPU现场的保护和恢复。现场的保护和恢复。DMA仅挪用了一个存储周期仅挪用了一个存储周期,不改变不改变CPU现场。现场。(4)DMA请求的优先权比中断请求高请求的优先权比中断请求高,CPU优先响应优先响应DMA请求请求,是是 为了避免为了避免DMA所连接的高速外设丢失数据。所连接的高速外设丢失数据。(5)CPU对中断的响应是在执行完一条指令之后对中断的响应是在执行完一条指令之后,而对而对DMA的响的响 应则可以在指令执行过程中的任何两个存储周期之间。应则可以在指令执行过程中的任何两个存储周期之间。