《第21讲DMA与通道.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第21讲 直接存储器存取(DMA)方式 1 DMA的基本概念 2 DMA传送方式 3 基本的DMA控制器 4 DMA和中断的区别 DMA方式的五个特点 DMA接口的功能和组成 1.DMA接口的功能   利用DMA方式传送数据时,数据的传输过程完全由DMA接口电路控制。DMA接口应具有如下几个功能: (1) 向CPU申请DMA传送; (2) 在CPU允许DMA工作时,处理总线控制权的转交,避免因进入DMA工作而影响CPU正常活动或引起总线竞争 (3)在DMA期间管理系统总线,控制数据传送; (4)确定数据传送的起始地址和数据长度,修正数据传送过程中的数据地址和数据长度。 (5)在数据块传送结束时,给出DMA操作完成的信号。   (1)主存地址寄存器AR。AR用于存放主存中需要交换数据的地址。在DMA传送前,须通过程序将数据在主存中的首地址送到主存地址寄存器。在DMA传送过程中,每交换一次数据,将地址寄存器内容加1,直到一批数据传送完毕为止。 (2)字计数器WC。WC用于记录传送数据的总字数,通常以交换字数的补码值预置。在DMA传送过程中,每传送一个字,字计数器加1,直到计数器为0,即最高位产生进位时,表示该批数据传送完毕。于是DMA接口向CPU发中断请求信号。 (3)数据缓冲寄存器BR。BR用于暂存每次传送的数据。通常DMA接口与主存之间采用字传送,而DMA与设备之间可能是字节或位传送。因此DMA接口中还可能包括有装配或拆卸字信息的硬件逻辑,如数据移位缓冲寄存器、字节计数器等。 (4)DMA控制逻辑。它用于负责管理DMA的传送过程,由控制电路、时序电路及命令状态控制寄存器等组成。每当设备准备好一个数据字(或一个字传送结束),就向DMA接口提出申请(DREQ),DMA控制逻辑便向CPU请求DMA服务,发出总线使用权的请求信号(HRQ)。待收到CPU发出的响应信号HLDA后,DMA控制逻辑便开始负责管理DMA传送的全过程,包括对主存地址寄存器和字计数器的修改、识别总线地址、指定传送类型(输入或输出)以及通知设备已经被授予一个DMA周期(DACK)等 (5)中断机构。当字计数器溢出(全“0”)时,表示一批数据交换完毕,由“溢出信号”通过中断机构向CPU提出中断请求,请求CPU作DMA操作的后处理。必须注意,这里的中断与上一节介绍的I/O中断的技术相同,但中断的目的不同,前面是为了数据的输入或输出,而这里是为了报告一批数据传送结束。它们是I/O系统中不同的中断事件。 (6)设备地址寄存器DAR。DAR存放I/O设备的设备码或表示设备信息存储区的寻址信息,如磁盘数据所在的区号、盘面号和柱面号。具体内容取决于设备的数据格式和地址的编址方式。 DMA传送过程 第一步: DMA接口的预置(初始化)(由软件实现) ▲ 数据传送之前,CPU将执行一段初始化程序,完成对DMA接口中各参数寄存器的初始值的设定。主要操作包括: ? 准备内存区 若是从外设输入数据,则进行内存缓冲区的申请,并对缓冲区进行初始化;若是输出到外设,则先在内存准备好数据。 第二步:DMA数据传送(由硬件实现) ▲ DMA接口数据传送过程如下: ① 当外设准备好数据(从外设取数),或准备好接收数据(向外设送数)时,就发“选通”信号,使数据送数据缓冲寄存器,同时DMA请求触发器置“1”。 DMA接口与系统的连接方式 DMA接口与系统的连接方式有两种。 下图为具有公共请求线的DMA请求方式,若干个DMA接口通过一条公用的DMA请求线向CPU申请总线控制权。CPU发出响应信号用链式查询方式通过DMA接口,首先选中的设备获得总线控制权,即可占用总线与主存传送信息。 上图是独立的DMA请求方式,每一个DMA接口各有一对独立的DMA请求线和DMA响应线,它由CPU的优先级判别机构裁决首先响应哪个请求,并在响应线上发出响应信号,被获得响应信号的DMA接口使可控制总线与主存传送数据。 DMA和中断的区别 1、中断方式是程序切换,需要保护和恢复现场;而DMA方式除了开始和结尾时,不占用CPU的任何资源。 2、对中断请求的响应只能发生在每条指令执行完毕时;而对DMA请求的响应可以发生在每个机器周期结束时。 3、中断传送过程需要CPU的干预;而DMA传送过程不需要CPU的干预,故数据传送速率非常高,适合于高速外设的成组数据传送。 4、DMA请求的优先级高于中断请求。 5、中断方式具有对异常事件的处理能力;而DMA方式仅局限于完成传送信息块的I/O操作 通道型I/O处理机和外围处理机  通道的种类 ◆ 按通道独立于CPU的程度来分,通道分为结合型通道和独立型通道。 ◆ 按数据传送方式来分;通常将通道分为以下三种:字节多路通道、选择通道和

文档评论(0)

you9391 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档