问答 店铺
热搜: ZYNQ FPGA discuz

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

微信扫一扫 分享朋友圈

已有 7162 人浏览分享

开启左侧

关于 AXI DMA PL 2 PS 的批量数据发送疑问

  [复制链接]
7162 6
悬赏1积分未解决

那么如果我们要大批量传输数据,比如说传输40000个数据,这个值大于最大能axi data fifo的值,程序就会无法得到last信号,在PS端也会跑飞

那么对于这种大批量数据的传输,该怎么解决呢?

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

评论 6

uisrc  管理员  发表于 2019-10-23 08:54:54 | 显示全部楼层
1、FIFO 的位宽是32bit 所以 512X4=1024 BYTE,这个1024需要和PS的C代码对应,因为对于AXI4总线来说或者ARM来说,是以BYTE计算的,而FPGA是以位宽计算
2、如果你要跑40000个数据,显然需要分几次发送,而不是一次性发送。
越努力越幸运!加油!

举报 使用道具

回复
gp2067  新手上路  发表于 2019-10-23 09:37:12 | 显示全部楼层
1、如果要跑大批量的数据,PS端的接收端要做对应的配合
2、需要把上游数据进行缓存,等待DMA一次发送完成后再发送下一次数据,这个需不需要使能axi fifo的packet mode呢?分几次发送的逻辑是不是自己发送一串数据之后,手动给一个Last信号呢?

举报 使用道具

回复
uisrc  管理员  发表于 2019-10-23 10:25:40 | 显示全部楼层
可以用packet mode的 也可以自己代码控制
越努力越幸运!加油!

举报 使用道具

回复
gp2067  新手上路  发表于 2019-10-23 10:35:26 | 显示全部楼层
那么自己用代码控制的大体思想是什么呢?能不能麻烦您提供一个思路,谢谢您了

举报 使用道具

回复
uisrc  管理员  发表于 2019-10-23 10:41:42 | 显示全部楼层
我们提供的例子就是自己控制啊,每次传输固定长度的数据
越努力越幸运!加油!

举报 使用道具

回复
gp2067  新手上路  发表于 2019-10-23 10:47:45 | 显示全部楼层
好的,我再思考一下给的例子,谢谢您了

举报 使用道具

回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0

关注

2

粉丝

5

主题
精彩推荐
热门资讯
网友晒图
图文推荐

  • 微信公众平台

  • 扫描访问手机版