ZYNQ linux下AXI_BRAM使用问题--PS与PL端数据交互
ZYNQ7010通过AXI_BRAM实现PS与PL端数据交互,裸机程序能正常访问PL端内存,但是在linux系统下,无法正常访问,请大佬指导一下,万分感谢!下面我说一下我的具体操作步骤,请大佬斧正。
1、建立对应的vivado工程
在米联科的HDMI显示的程序的基础上,添加一块block memory,起始地址0x80000000;
2、更新PL.dtsi,如下图所示;
3、再按照米联客教程重新编译kernel等,将编译好的系统烧录到SD卡中,插入开发板;
4、在系统的设备树中看到block memory;
5、编写程序,访问该块内存,完整代码放到附件中;
问题:设备树中能看到该块内存,地址映射也能成功,但是该块内存无法读写,请大佬解惑。
本帖最后由 白猫警督 于 2020-5-25 10:04 编辑
我只做fpga,linux不懂。是不是这样的,axi_bram不是ddr,只是挂载在axi上的一个存储外设,在linux中不能用读写ddr的方式访问试一试peek poke工具能不能访问。
PS:米联客对论坛的维护真是越来越差了…… 白猫警督 发表于 2020-5-25 10:03
我只做fpga,linux不懂。是不是这样的,axi_bram不是ddr,只是挂载在axi上的一个存储外设,在linux中不能用 ...
首先表示感谢!我帖子里面的这种访问方式也xilinx文档里提供访问形式,是可行的(而且有个网友也成功实现了访问,只是不是米联客的板子),我这边裸机程序访问没有问题,但是linux下访问就会出错,所以来论坛求教。 我来看下!这几天测试好再回复你! msxbo 发表于 2020-5-25 17:43
我来看下!这几天测试好再回复你!
好的,谢谢汤老师! 看起来像是你的内存大小映射不对,把DATA_LEN参数看下,和mmap函数的第三个参数看下; 你好 请问一下 这个问题解决了吗?我遇到了同样的问题{:1_156:} msxbo 发表于 2020-5-25 17:43
我来看下!这几天测试好再回复你!
应该是那块内存被系统占用,他没有释放
去我帖子里面找,应该是你这个问题,释放一下你映射的那块内存 吃土的晓学生 发表于 2020-5-25 10:28
首先表示感谢!我帖子里面的这种访问方式也xilinx文档里提供访问形式,是可行的(而且有个网友也成功实现 ...
大佬解决了不?能否分享一下?
页:
[1]