嵌入式中的DMA介绍
![嵌入式中的DMA介绍_第1页](https://file6.zhuangpeitu.com/fileroot6/2023-4/25/bddc0b16-f233-4282-9e58-3844c1f87d32/bddc0b16-f233-4282-9e58-3844c1f87d321.gif)
![嵌入式中的DMA介绍_第2页](/images/s.gif)
《嵌入式中的DMA介绍》由会员分享,可在线阅读,更多相关《嵌入式中的DMA介绍(2页珍藏版)》请在装配图网上搜索。
1、嵌入式系统中DMA是什么意思?2010 年 06 月 28 日 星期一 14:43DMA 即 (direct Memory Access)中文意思是:直接存储器访问DMA原理:DMA是所有现代电脑的重要特色,他允许不同速度的硬件装置来 沟通,而不需要依于CPU的大量中断负载。否则,CPU需要从来源把每一 片段的资料复制到 暂存器,然后把他们再次写回到新的地方。在这个时间中, CPU 对于其他的工作来说就无法使用。 DMA 传输重要地将一个内存区从一个装 置复制到另外一个。当 CPU 初始化这个传输动作,传输动作本身是由 DMA 控制 器 来实行和完成。典型的例子就是移动一个外部内存的区块到芯片
2、内部更快的 内存去。像是这样的操作并没有让处理器工作拖延,反而可以被重新排程去处理 其他的工作。 DMA 传输对于高效能 嵌入式系统 算法和网络是很重要的。在实现DMA传输时,是由DMA控制器直接掌管总线,因此,存在着一个总线 控制权转移问题。即DMA传输前,CPU要把总线控制权交给DMA控制器,而在结 束DMA传输后,DMA控制器应立即把总线控制权再交回给CPU。DMA一个完整的DMA传输过程必须经过下面的4个步骤。1. DMA 请求CPU对DMA控制器初始化,并向I/O接口发出操作命令,I/O接口提出DMA 请求。2. DMA 响应DMA控制器对DMA请求判别优先级及屏蔽,向总线裁决逻辑提
3、出总线请求。 当CPU执行完当前总线周期即可释放总线控制权。此时,总线裁决逻辑输出总线应答,表示 DMA 已经响应,通过 DMA 控制器通知 I/O 接口开始 DMA 传输。3. DMA 传输DMA控制器获得总线控制权后,CPU即刻挂起或只执行内部操作,由DMA控 制器输出读写命令,直接控制RAM与I/O接口进行DMA传输。4. DMA 结束当完成规定的成批数据传送后,DMA控制器即释放总线控制权,并向I/O接 口发出结束信号。当I/O接口收到结束信号后,一方面停 止I/O设备的工作, 另一方面向CPU提出中断请求,使CPU从不介入的状态解脱,并执行一段检查本 次 DMA 传输操作正确性的代码
4、。最后,带着本次操作结果及状态继续执行原来的 程序。由此可见,DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样 保留现场和恢复现场的过程,通过硬件为RAM与I/O设备开辟一条直接传送数据 的通路,使 CPU 的效率大为提高。DMA 功能通过设置DMAR寄存器中各自的屏蔽位DMAx(x=0:15), DMA请求可以在每个通道转换 完成后编程实现。建议用户只在通道转换停止时,再置位(或复位)DMA屏蔽位。只有当 ADC-DMAE寄存器的DMAEN位被软件置位后,或者利用DMA外部触发器在硬件中使能 DMA时,DMA才开始运行。如果ADC-DMAC寄存器的DEDGE位置控制电平敏感度。当DMA被硬件或软件使能后,第一个DMA使能的转换通道的数量存储在ADC-DMAE 寄存器的DENCH【3 :0】位中,该数据可以用于分析软件同步。分析软件用于分析利 用ADC通道转换得到的DMA传送数据,这点在DMA由硬件使能时特别有用。
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。