嵌入式系统及应用第13讲DMA.pdf

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DMA —— 《嵌入式系统及应用》课程 刘春静 安徽信息工程学院 电气与电子工程学院 DMA • DMA(Direct Memory Access ,直接内存存取) • DMA 是所有现代电脑的重要特色,它允许 不同速度的硬件装置来沟通,而不需要依赖 于CPU 的大量中断负载。否则, CPU 需要 从来源把每一片段的资料复制到寄存器,然 后把它们再次写回到新的地方。在这个时间 段内, CPU 就不能够进行其它的工作,从而 降低了 CPU 的效率 DMA • DMA 传输将数据从一个地址空间复制到另 外一个地址空间。当 CPU 初始化这个传输 动作,传输动作本身是由 DMA 控制器来 实现和完成。典型的例子就是移动一个外 部内存的区块到芯片内部更快的内存区。 类似这样的操作并没有让处理器工作拖延 ,反而可以被重新安排去处理其他的工作。 DMA 传输对于高效能嵌入式系统算法和网 络是很重要的。 DMA • 在实现 DMA 传输时,是由 DMA 控制器直接 掌管总线,因此,存在着一个总线控制权转 移问题。 • 即 DMA 传输前, CPU 要把总线控制权交给 DMA 控制器,而在结束 DMA 传输后, DMA 控制器应立即把总线控制权再交回给 CPU 。 一个完整的 DMA 传输过程必须经过 DMA 请 求、DMA 响应、DMA 传输、DMA 结束4 个步骤。 DMA • DMA 传输无需 CPU 直接控制,也没有中断 处理那样保留现场和恢复现场的过程,通 过硬件为RAM 与I/O 设备开辟一条直接传 送数据的通路 ,使CPU 的效率大为提高。 DMA • DMA 的出现,使得外围设备可以通过 DMA 控制器直接访问内存,与此同时, CPU 可 以继续执行程序。那么 DMA 控制器与 CPU 怎样分时使用内存呢 ? DMA • 1. 停止CPU 访问内存 • 当外围设备要求传送一批数据时,由 DMA 控制 器发一个停止信号给 CPU ,要求CPU 放弃对地 址总线、数据总线和有关控制总线的使用权。 DMA 控制器获得总线控制权以后,开始进行数 据传送。在一批数据传送完毕后, DMA 控制器 通知 CPU 可以使用内存,并把总线控制权交还 给 CPU 。很显然,在这种 DMA 传送过程中, C PU 基本处于不工作状态或者说保持状态。 DMA • 1. 停止CPU 访问内存(续) • 优点:控制简单,适用于数据传输率很高的设备进行 成组传送 • 缺点:在 DMA 控制器访问内存阶段,内存的效能没有 充分发挥,相当一部分内存工作周期是空闲的。这是 因为,外围设备传送两个数据之间的间隔一般总是大 于内存存储周期 ,即使高速I/O 设备也是如此。 • 例如,软盘读出一个 8 位二进制数大约需要 32us ,而 半导体内存的存储周期小于 0.5us ,因此许多空闲的 存储周期不能被 CPU 利用 DMA • 1. 停止CPU 访问内存(续) DMA • 2. 周期挪用 • 当 I/O

文档评论(0)

gondolaaaa + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档