gp2067 发表于 2019-10-22 20:03:09

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


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

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

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

好的,我再思考一下给的例子,谢谢您了
页: [1]
查看完整版本: 关于 AXI DMA PL 2 PS 的批量数据发送疑问