在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2929|回复: 8

[求助] 链式DMA什么意思

[复制链接]
发表于 2016-5-10 22:54:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
RT,小白刚入门
发表于 2016-5-30 11:10:36 | 显示全部楼层
链式DMA其结构允许其传输一大片碎片化的存储器中数据,每块存储器访问时无需再次访问DMA寄存器。相当于一个数据链表,链式DMA称为描述符表,表内由若干个描述符组成,每个描述符描述了一块DMA的长度,目的地址和源地址信息等。在进行一次DMA读或写操作时,可通过描述符表连续取得若干块DMA内存信息,保证DMA过程连续不间断的进行,提高效率。
发表于 2016-5-30 17:38:09 | 显示全部楼层
回复 2# xiamingmin163


   2楼解释的很详细了。链式DMA相当于多个普通DMA连起来跑,简单链式DMA可以通过软件一次性把多次DMA的源地址目的地址数据长度等配置好后,启动DMA完成所有数据传输;复杂点的链式DMA,可以做到先完成一次源地址到目的地址的数据传输后,DMA自动去某个地址空间获取下一次DMA传输需要的源地址目的地址数据长度等信息,然后再次自动启动DMA传输,如此循环
 楼主| 发表于 2016-6-1 09:51:37 | 显示全部楼层
回复 2# xiamingmin163


  感谢
 楼主| 发表于 2016-6-1 09:57:25 | 显示全部楼层
回复 3# 感谢啦
 楼主| 发表于 2016-6-1 10:20:05 | 显示全部楼层
回复 2# xiamingmin163


   那块DMA传输,就是对一整块存储空间进行访问,而不是碎片化的存储空间,这样理解多吗
发表于 2016-8-17 15:42:12 | 显示全部楼层
回复 3# 杰克淡定


   大牛,请教一下,我现在实现的是你说的第一种方式,不会重新启动的。我想问的的是以你的经验,每个描述符对应一个DMA传的的数据量能到多少?我用windriver发的上层,一个描述符只能分配4KB的数据空间,就是一个页。
发表于 2016-8-17 19:07:07 | 显示全部楼层
回复 7# nothing92


  我怎么记得我做WINDRIVER最大划过1M的空间?划的时候必须设置为物理地址也连续。虚拟地址连续物理地址未必连续。如果物理地址不连续,DMA就错了。
发表于 2016-8-18 01:32:27 | 显示全部楼层
DMA 20年前就是 based on descriptor了。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-14 12:39 , Processed in 0.020711 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表