关注公众号

关注公众号

手机扫码查看

手机查看

喜欢作者

打赏方式

微信支付微信支付
支付宝支付支付宝支付
×

DMA有什么优点

2023.4.26

DMA 是所有现代电脑的重要特色,他允许不同速度的硬件装置来沟通,而不需要依于CPU的大量 中断负载。否则,CPU 需要从 来源 把每一片段的资料复制到暂存器,然后把他们再次写回到新的地方。在这个时间中,CPU 对于其他的工作来说就无法使用。

DMA 传输将一个内存区从一个装置复制到另外一个, CPU 初始化这个传输动作,传输动作本身是由 DMA控制器来实行和完成。典型的例子就是移动一个外部内存的区块到芯片内部更快的内存去。像是这样的操作并没有让处理器工作拖延,反而可以被重新排程去处理其他的工作。DMA 传输对于高效能嵌入式系统算法和网络是很重要的。

DMA传送方式有3种:单元传送方式、块传送方式和on-the-fly传送方式。与外部DMA请求/应答协议不同的是,DMA传送方式定义了每次传送读/写的单元数,如表所示。

5366d0160924ab185930d13739fae6cd7b890b8f?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_autoDMA传送方式表

1、单元传送方式(单字节传送方式)

单元传送方式意味着每个DMA请求对应一对DMA读/写周期,即1个单元读,然后1个单元写。

2、块传送方式(连续传送方式)

块传送方式意味着在连续4个字的DMA写周期前有连续的4个字的DMA读周期,即4个字突发读,然后4个字突发写,因此传输的数据个数应该是16字节的倍数。

3、on-the-fly传送方式(请求传送方式)

在on-the-fly传送方式下DMA读/写可以同时进行。DMA应答信号通知外部设备去读或者写。同时,存储控制器将产生与读/写相关的控制信号给外部存储器。如果外部设备能够支持on-the-fly传送方式,将会使得外设的数据传输速率大大地增加。


推荐
关闭