zynq ROM初始化表配置问题

2016-08-29 22:05 阅读 927 次 评论 0 条

在前面的日志中写了vivado生成BRAM ROM表的方法。实际就是生成.coe文件。

后将已经生成好的data.coe文件放到了axi_bram_ctrl_0_1模块的文件夹下,在blk_mem_gen模块下选择coe文件时,默认在当前目录下选择,这时将原bram目录下的coe文件剪切到blk_mem_gen目录下,在综合时报.coe文件找不到的错误,不能继续综合。image

如上图所示,data.coe文件已经在硬盘上删除,但在vivado中还包含(但已经显示为红色提示),所示出现错误,将文件删除即可解决。

在bram生成rom时,在implementation时,如果出现如下警告时,提示rom中数据的初始化失败。

[Memdata 28-122] data2mem failed with a parsing error. Check the bmm file or the bmm_info_* properties on the BRAM components. The design BRAM components initialization strings have not been updated.

[Memdata 28-96] Could not find a BMM_INFO_DESIGN property in the design. Could not generate the merged BMM file: E:/Test/MZsystem/MZsystem.runs/impl_1/zynq010_wrapper_bd.bmm

在xilinx的官网查找到解决办法,经测试无效,还是会出现上面的警告提示信息。

并且在实现更改的过程中,需要注意,本次为ROM方式而非BRAM方式。在设置BRAM为ROM方式需要在Block Design中将BRAM Controller设置为1个端口,因为在生成bd时,会出现有一个端口未映射(MAP)而失败。并且.coe文件需要放在工程目录以外的文件夹,因为在删除原bd时,会将.coe文件一并删除,这样在重新生成bd时,会提示找不到.coe文件而失败。经过上面的修改,重新命名bd,创建wrapper,再综合实现仍然是[Memdata 28-122]提示。

下图为备份PL工程的方法

image

将src中的HDL源码拷贝备份,SDK中软件工程拷贝备份,然后删除工程文件中的所有内容,重新新建工程。

[BD 41-237] Bus Interface property MASTER_TYPE does not match between /axi_bram_ctrl_0_bram/BRAM_PORTA(OTHER) and /axi_bram_ctrl_0/BRAM_PORTA(BRAM_CTRL)

在生成bit文件时,出现错误信息[Memdata 28-96] Could not find a BMM_INFO_DESIGN property in the design. Could not generate the merged BMM file: E:/Test/ MZsystem.runs/impl_1/MZsys_wrapper_bd.bmm

但是在SDK中,通过axi接口读取ROM值,仍然可以正常读取,所以这里的错误与警告信息似乎没有具体提示作用。

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:zynq ROM初始化表配置问题 | 起点博客
分类:应用笔记 标签:, , ,

发表评论


表情