赛灵思
直播中

康瑜玲

8年用户 159经验值
私信 关注
[问答]

如何用zedboard创建一个AXI接口应用程序?

大家好,
我正在使用zedboard创建一个AXI接口应用程序,以突发模式从ARM发送64字节数据到FPGA
为此,我在vivado中创建了一个自定义AXI从站,选择它作为AXI FULL(因为AXI FULL支持突发传输)。
在我的vivado设计中,我使用AXI CDMA作为DDR RAM,BRAM以及定制从AXI的主设备。
zynq为AXI CDMA提供源地址,目的地址和字节数,然后适当地进行传输。
当我使用AXI CDMA进行转换时
1. DDR的一个内存到DDR的其他内存
2. DDR到BRAM
3. BRAM到DDR
在所有这些情况下,我能够进行突发传输,即我能够传输64个字节。
但是当我尝试将数据从BRAM / DDR传输到自定义axi slave时,问题就出现了。
我进行了测试以验证这一点:
我尝试使用AXI CDMA从DDRto自定义从站发送4个字节的数据,并且它正常工作。
但是当我增加要传输的字节数大于4时,它就会失败并且不起作用。
我仍然可以通过每次发送4个字节来工作,但这会极大地影响系统的效率。
那么有人可以告诉我哪里出错了或遗失了什么?
非常感谢任何建议。

回帖(2)

陈苏文

2020-8-12 10:51:22
我没有查看完整的axi示例代码,但要验证的一件事是它接受您尝试发送的所有数据。
什么是内部地址解码?
它在哪里存储数据?
也许你需要增加其内部存储的大小。
- 如果提供的信息有用,请将答案标记为“接受为解决方案”。给予您认为有用且回复的帖子。
举报

许海明

2020-8-12 11:09:56
None
举报

更多回帖

发帖
×
20
完善资料,
赚取积分