- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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)