[X]关闭

ZYNQ linux下AXI_BRAM使用问题--PS与PL端数据交互

文档创建者:吃土的晓学生
浏览次数:13674
最后更新:2023-06-13
 
ZYNQ7010通过AXI_BRAM实现PS与PL端数据交互,裸机程序能正常访问PL端内存,但是在linux系统下,无法正常访问,请大佬指导一下,万分感谢!
下面我说一下我的具体操作步骤,请大佬斧正。
1、建立对应的vivado工程
     在米联科的HDMI显示的程序的基础上,添加一块block memory,起始地址0x80000000;
     
2、更新PL.dtsi,如下图所示;

3、再按照米联客教程重新编译kernel等,将编译好的系统烧录到SD卡中,插入开发板;
4、在系统的设备树中看到block memory;

5、编写程序,访问该块内存,完整代码放到附件中;

问题:设备树中能看到该块内存,地址映射也能成功,但是该块内存无法读写,请大佬解惑。

本帖子中包含更多资源

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

x

发表评论已发布 10

白猫警督

发表于 2020-5-25 10:03:35 | 显示全部楼层

本帖最后由 白猫警督 于 2020-5-25 10:04 编辑

我只做fpga,linux不懂。是不是这样的,axi_bram不是ddr,只是挂载在axi上的一个存储外设,在linux中不能用读写ddr的方式访问试一试peek poke工具能不能访问。
PS:米联客对论坛的维护真是越来越差了……

吃土的晓学生

发表于 2020-5-25 10:28:35 | 显示全部楼层

白猫警督 发表于 2020-5-25 10:03
我只做fpga,linux不懂。是不是这样的,axi_bram不是ddr,只是挂载在axi上的一个存储外设,在linux中不能用 ...

首先表示感谢!我帖子里面的这种访问方式也xilinx文档里提供访问形式,是可行的(而且有个网友也成功实现了访问,只是不是米联客的板子),我这边裸机程序访问没有问题,但是linux下访问就会出错,所以来论坛求教。

uisrc

发表于 2020-5-25 17:43:57 来自手机 | 显示全部楼层

我来看下!这几天测试好再回复你!

吃土的晓学生

发表于 2020-5-25 21:17:04 | 显示全部楼层

msxbo 发表于 2020-5-25 17:43
我来看下!这几天测试好再回复你!

好的,谢谢汤老师!

王二766

发表于 2020-6-11 15:31:22 | 显示全部楼层

看起来像是你的内存大小映射不对,把DATA_LEN参数看下,和mmap函数的第三个参数看下;

wjx

发表于 2020-12-1 10:08:38 | 显示全部楼层

你好 请问一下 这个问题解决了吗?我遇到了同样的问题

ぉ沙皮狗的忧伤

发表于 2020-12-7 11:05:11 | 显示全部楼层

msxbo 发表于 2020-5-25 17:43
我来看下!这几天测试好再回复你!

应该是那块内存被系统占用,他没有释放

ぉ沙皮狗的忧伤

发表于 2020-12-7 11:06:10 | 显示全部楼层

去我帖子里面找,应该是你这个问题,释放一下你映射的那块内存

Hunter_LJCTw

发表于 2023-6-13 13:50:56 | 显示全部楼层

吃土的晓学生 发表于 2020-5-25 10:28
首先表示感谢!我帖子里面的这种访问方式也xilinx文档里提供访问形式,是可行的(而且有个网友也成功实现 ...

大佬解决了不?能否分享一下?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则