计算机组成原理DMA方式通道

上传人:蔡****育 文档编号:298258162 上传时间:2022-05-25 格式:PPTX 页数:48 大小:31.86MB
返回 下载 相关 举报
计算机组成原理DMA方式通道_第1页
第1页 / 共48页
计算机组成原理DMA方式通道_第2页
第2页 / 共48页
计算机组成原理DMA方式通道_第3页
第3页 / 共48页
计算机组成原理DMA方式通道_第4页
第4页 / 共48页
计算机组成原理DMA方式通道_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《计算机组成原理DMA方式通道》由会员分享,可在线阅读,更多相关《计算机组成原理DMA方式通道(48页珍藏版)》请在金锄头文库上搜索。

1、DMA方式方式1 1精品精品PPT|PPT|借鉴参考借鉴参考第一页,共四十八页。8.4 DMA方式方式8.4.1DMA方式的一般概念8.4.2DMA传送方式8.4.3DMA传送一个数据的过程2 2精品精品PPT|PPT|借鉴参考借鉴参考第二页,共四十八页。8.4.1DMA方式的一般概念方式的一般概念l l直接存储器访问(DirectMemoryAccess)DMA方式是为了在主存储器与IO设备间高速交换批量数据而设置的。l l基本思想是:通过硬件控制实现主存与IO设备间的直接数据传送,在传送过程中无需CPU的干预。数据传送是在DMA控制器控制下进行的,l l优点:完全硬件实现,速度快。有利于发

2、挥CPU的效率。3 3精品精品PPT|PPT|借鉴参考借鉴参考第三页,共四十八页。8.4.1DMA方式的一般概念方式的一般概念l l过程描述: 由由DMADMA控制器给出当前正在传送的数据的主存地址,控制器给出当前正在传送的数据的主存地址,并统计传送数据的个数以确定一组数据的传送是否并统计传送数据的个数以确定一组数据的传送是否已结束。在主存中要开辟连续地址的专用缓冲器,已结束。在主存中要开辟连续地址的专用缓冲器,用来提供或接收传送的数据。在数据传送前和结束用来提供或接收传送的数据。在数据传送前和结束后要通过程序或中断方式对缓冲器和后要通过程序或中断方式对缓冲器和DMADMA控制器进控制器进行预

3、处理和后处理。行预处理和后处理。4 4精品精品PPT|PPT|借鉴参考借鉴参考第四页,共四十八页。8.4.1DMA方式的一般概念方式的一般概念DMA基本操作:l l(1)从外围设备发出DMA请求;l l(2)CPU响应请求,把CPU工作改成DMA操作方式,DMA控制器从CPU接管总线的控制;l l(3)由DMA控制器对内存寻址,即决定数据传送的内存单元地址及数据传送个数的计数,并执行数据传送的操作;l l(4)向CPU报告DMA操作的结束。5 5精品精品PPT|PPT|借鉴参考借鉴参考第五页,共四十八页。思考:DMA正在完成I/O操作时,CPU在干什么?二者同时有访存需求,怎么办?6 6精品精

4、品PPT|PPT|借鉴参考借鉴参考第六页,共四十八页。8.4.2 DMA传传送方式送方式1、停止CPU访问内存。l l主机响应主机响应DMADMA请求后,让出存储总线,直到一组数据请求后,让出存储总线,直到一组数据传送完毕后,传送完毕后,DMADMA控制器才把总线控制权交还给控制器才把总线控制权交还给CPUCPU。l l采用这种工作方式的采用这种工作方式的I IOO设备,在其接口中一般设置有小容设备,在其接口中一般设置有小容量存储器,量存储器,I IOO设备先与小容量存储器交换数据,然后由小设备先与小容量存储器交换数据,然后由小容量存储器与主机交换数据,这样可减少容量存储器与主机交换数据,这样

5、可减少DMADMA传送占用存储传送占用存储总线的时间,也即减少了总线的时间,也即减少了CPUCPU暂停工作的时间。暂停工作的时间。7 7精品精品PPT|PPT|借鉴参考借鉴参考第七页,共四十八页。8.4.2 DMA传传送方式送方式优点: 控制流程简单。缺点: 在DMA控制器I/O访内阶段,内存的效能没有充分发挥,相当一部分内存工作周期是空闲的。仅适用于:数据传输率很高的设备进行成组传送8 8精品精品PPT|PPT|借鉴参考借鉴参考第八页,共四十八页。8.4.2 DMA传传送方式送方式2、周期挪用方式DMA控制器与主存储器之间传送一个数据,占用一个内存周期,即CPU暂停访存工作一个周期,然后继续

6、执行程序。9 9精品精品PPT|PPT|借鉴参考借鉴参考第九页,共四十八页。8.4.2 DMA传传送方式送方式I/O设备要求DMA传送时可能遇到两种情况:(1)CPU不需要访内,如CPU正在执行乘法指令。由于乘法指令执行时间较长,此时I/O访内与CPU访内没有冲突,即I/O设备挪用一二个内存周期对CPU执行程序没有任何影响。(2)CPU(2)CPU也要求访内时,这就产生了访内冲突,在这种情况也要求访内时,这就产生了访内冲突,在这种情况下下I/OI/O设备访内优先,因为设备访内优先,因为I/OI/O访内有时间要求,前一个访内有时间要求,前一个I/OI/O数据必须在下一个访内请求到来之前存取完毕。

7、显然,在数据必须在下一个访内请求到来之前存取完毕。显然,在这种情况下这种情况下I/OI/O设备挪用一二个内存周期,意味着设备挪用一二个内存周期,意味着CPUCPU延延缓了对指令的执行,或者更明确地说,在缓了对指令的执行,或者更明确地说,在CPUCPU执行访内执行访内指令的过程中插入指令的过程中插入DMADMA请求,挪用了一二个内存周期。请求,挪用了一二个内存周期。1010精品精品PPT|PPT|借鉴参考借鉴参考第十页,共四十八页。8.4.2 DMA传传送方式送方式优点:既实现了I/O传送,又较好地发挥了内存和CPU的效率缺点:每次传送都要申请总线控制权,建立总线控制权,归还总线控制权。适用于:

8、I/O设备读写周期大于内存存储周期的情况1111精品精品PPT|PPT|借鉴参考借鉴参考第十一页,共四十八页。8.4.2 DMA传传送方式送方式停止CPU访存和周期挪用的区别l l前者:外设需传送一批数据到内存时,DMA独占总线、内存等资源,一直到该任务完成l l后者:当外设信息被读取后要写入内存时,才申请总线、访存权限,完成写入,而后释放,等到下批数据被读出时,又再申请权限、资源,写入内存。1212精品精品PPT|PPT|借鉴参考借鉴参考第十二页,共四十八页。8.4.2 DMA传传送方式送方式3、DMA和CPU交替访问内存工作方式l l如果CPU的工作周期比内存存取周期长很多,可以采用该种方

9、法l l指令周期包含若干CPU周期,CPU周期中访内周期只占整个周期一部分(eg.C1),另外一部分时间(eg.C2)可交由DMA访内,此时DMA与CPU并行工作。l l不需要总线控制权的申请、建立与归还。通过C1、C2分时控制,总线控制权的转移速度快,DMA效率高。1313精品精品PPT|PPT|借鉴参考借鉴参考第十三页,共四十八页。8.4.2 DMA传传送方式送方式CPU和DMA控制器各自有自己的访内地址寄存器、数据寄存器和读/写信号等控制寄存器。在C1周期中,如果DMA控制器有访内请求,可将地址、数据等信号送到总线上。在C2周期中,如CPU有访内请求,同样传送地址、数据等信号。1414精

10、品精品PPT|PPT|借鉴参考借鉴参考第十四页,共四十八页。8.4.2 DMA传传送方式送方式优点:总线控制权的转移不需要时间,DMA传送高效缺点:硬件逻辑实现复杂适用于:CPU的工作周期比内存存取周期长很多的情况。1515精品精品PPT|PPT|借鉴参考借鉴参考第十五页,共四十八页。8.4.3 基本基本DMA控制器控制器1、DMA基本构成(1)内存地址计数器用于存放内存中要交换的数据用于存放内存中要交换的数据的地址。在的地址。在DMADMA传送前,须通过程序将数据在内存中传送前,须通过程序将数据在内存中的起始位置的起始位置( (首地址首地址) )送到内存地址计数器。而当送到内存地址计数器。而

11、当DMADMA传送时,每交换一次数据,将地址计数器加传送时,每交换一次数据,将地址计数器加“1”“1”,从而以增量方式给出内存中要交换的一批数据的地址。从而以增量方式给出内存中要交换的一批数据的地址。1616精品精品PPT|PPT|借鉴参考借鉴参考第十六页,共四十八页。1、DMA基本构成基本构成(2)字计数器用于记录传送数据块的长度(多少字数)。其内容也是在数据传送之前由程序预置,交换的字数通常以补码形式表示。在DMA传送时,每传送一个字,字计数器就加“1”,当计数器溢出即最高位产生进位时,表示这批数据传送完毕,于是引起DMA控制器向CPU发中断信号。1717精品精品PPT|PPT|借鉴参考借

12、鉴参考第十七页,共四十八页。1、DMA基本构成基本构成(3)(3)数据缓冲寄存器数据缓冲寄存器 用于暂存每次传送的数据用于暂存每次传送的数据( (一个字一个字) )。当输入时,由设备当输入时,由设备( (如磁盘如磁盘) )送往数据缓冲寄存器,再送往数据缓冲寄存器,再由缓冲寄存器通过数据总线送到内存。反之,输出时,由缓冲寄存器通过数据总线送到内存。反之,输出时,由内存通过数据总线送到数据缓冲寄存器,然后再送由内存通过数据总线送到数据缓冲寄存器,然后再送到设备。到设备。 1818精品精品PPT|PPT|借鉴参考借鉴参考第十八页,共四十八页。1、DMA基本构成基本构成(4)“DMA(4)“DMA请求

13、请求” ”标志标志 每当设备准备好一个数据字后给出一每当设备准备好一个数据字后给出一个控制信号,使个控制信号,使“DMA“DMA请求请求” ”标志置标志置“1”“1”。该标志置位。该标志置位后向后向“ “控制控制/ /状态状态” ”逻辑发出逻辑发出DMADMA请求,后者又向请求,后者又向CPUCPU发发出总线使用权的请求出总线使用权的请求(HOLD)(HOLD),CPUCPU响应此请求后发回响响应此请求后发回响应信号应信号HLDAHLDA,“ “控制控制/ /状态状态” ”逻辑接收此信号后发出逻辑接收此信号后发出DMADMA响应信号,使响应信号,使“DMA“DMA请求请求” ”标志复位,为交换

14、下一个标志复位,为交换下一个字做好准备。字做好准备。 1919精品精品PPT|PPT|借鉴参考借鉴参考第十九页,共四十八页。1、DMA基本构成基本构成(5)“控制/状态”逻辑由控制和时序电路以及状态标志等组成,用于修改内存地址计数器和字计数器,指定传送类型(输入或输出),并对“DMA请求”信号和CPU响应信号进行协调和同步。2020精品精品PPT|PPT|借鉴参考借鉴参考第二十页,共四十八页。1、DMA基本构成基本构成(6)(6)中断机构中断机构 当字计数器溢出时当字计数器溢出时( (全全0)0),意味着一组数据,意味着一组数据交换完毕,由溢出信号触发中断机构,向交换完毕,由溢出信号触发中断机

15、构,向CPUCPU提出中断提出中断报告。这里的中断与上一节介绍的报告。这里的中断与上一节介绍的I/OI/O中断所采用的技中断所采用的技术相同,但中断的目的不同,前面是为了数据的输入或术相同,但中断的目的不同,前面是为了数据的输入或输出,而这里是为了报告一组数据传送结束。因此它们输出,而这里是为了报告一组数据传送结束。因此它们是是I/OI/O系统中不同的中断事件。系统中不同的中断事件。2121精品精品PPT|PPT|借鉴参考借鉴参考第二十一页,共四十八页。8.4.3 基本基本DMA控制器控制器2、传送过程当外设有DMA请求时,通常CPU在本机器周期结束后,响应DMA请求。传送一个数据块可以分为三

16、个阶段:- -传送前预处理传送前预处理- -正式传送正式传送- -传送后处理传送后处理2222精品精品PPT|PPT|借鉴参考借鉴参考第二十二页,共四十八页。8.4.3 基本基本DMA控制器控制器预处理阶段:l l第一阶段是进行初始化,启动设备、测试设备。CPU通过程序IO的方式给DMA控制器预置初值,取状态和送传送需要的有关参数。其中包括内存地址计数器和字计数器的初值。2323精品精品PPT|PPT|借鉴参考借鉴参考第二十三页,共四十八页。8.4.3 基本基本DMA控制器控制器正式传送阶段:l l由DMA控制器控制外设与主存之间的数据交换。2424精品精品PPT|PPT|借鉴参考借鉴参考第二十四页,共四十八页。内容摘要范例DMA方式。在数据传送前和结束后要通过程序或中断方式对缓冲器和DMA控制器进行预处理和后处理。(1) CPU不需要访内,如CPU正在执行乘法指令。优点:既实现了I/O传送,又较好地发挥了内存和CPU的效率。CPU和DMA控制器各自有自己的访内地址寄存器、数据寄存器和读/写信号等控制寄存器。在DMA传送前,须通过程序将数据在内存中的起始位置(首地址)送到内存地址计数器

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 软件工程

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号