赛灵思
直播中

李亮

7年用户 212经验值
私信 关注
[问答]

初始化BRAM primitaves出现错误和循环漏洞的原因?

大家好,
我一直在尝试在我的项目中初始化我的BRAM primitaves一段时间,并继续遇到意外错误和循环漏洞。
概述:
用于综合的Synplify Pro Version I-2014.03-SP1:
PAR的Vivado v2013.3
目标:XC7A200TFFG1156 -1
*注意我必须使用这些工具,因为我们的设计vivado崩溃与早期版本的synplify但早期版本的synplify不能及时处理合成(16-24小时)
我已经使用coregen创建了一个4x4内存集群,它将在我们当前的设计中用作“闪存”。
在每个群集中有4个内存核心。
每个核心都有自己的.coe,.mif,我还添加了实现hex的功能。
当我在模拟中运行时,一切正常,核心会加载所需的值。
我还应该评论我正在使用ncsim。
我现在被困在如何将这些值编程到位文件中​​以便在板上运行。
似乎.coe文件和.mif文件仅用于模拟以预加载这些内存数组。
没问题所以我转到了data2mem。
我通过从vivado转储所有flash RAMB36 primitaves并定义地址映射和空格来创建.bmm文件。
然后我更新了我的ROM的hex文件,当我运行data2mem时遇到了这个错误:
错误:Data2MEM:114 - 当前比特流替换期间Data2MEM不支持压缩位文件。
而是在制作压缩位文件时,在Bitgen命令行上使用与Data2MEM命令行相同的-bd选项。
这将替换相同的BRAM内容,而是在位文件创建过程中。
所以我似乎也不能使用data2mem来编程这些闪存阵列的部分。
此外,2个内存核心没有用户可见的地址空间。
这些存储器用于配置和出厂设置,因此它们没有我可以加载的相应hex文件。
我该如何初始化这些内存内容?
如果我不能使用data2mem或初始化文件,我该如何初始化这些内存内容呢?
我认为更全面的概述有助于获得必要的答案。
提前致谢。

回帖(3)

袁伟

2020-7-26 10:19:50
嗨,
看看下面的AR。
http://www.xilinx.com/support/answers/22364.htm
问候,
KR
--------------------------------------------------
--------------------------------------------请注意 - 请注明
答案为“接受为解决方案”,如果提供的信息是有帮助的。给予您认为有用的帖子。感谢 -
------------------------- ------------------------
-------------------
举报

曹阳

2020-7-26 10:36:33
vivado中的write_bitstream是否具有相同的功能?
举报

曹阳

2020-7-26 10:42:17
经过一些测试后,我能够找出必要的流量。
使用Ip Catalog创建4x4内存coregen块。
使用#mod_name_stub.v进行synplify_pro综合以推断黑盒子。
在实现之前引入每个核心的$ mod_name.dcp文件。
运行实施。
以防万一有兴趣。
这有效,但想让它更优雅,所以我可以重用IP。
举报

更多回帖

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