完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我有一个针对spartan-6(LX45)的项目,该项目在ISE 12.2中没有出现任何问题。
最近升级到ISE 14.7项目不再正确构建。 问题是BRAM没有正确初始化。 此项目中BRAM使用的方法是通过参数化宽度并使用.mif文件作为初始值来推断它。 随附的是重现问题的项目。 此zip文件必须解压缩到C: FPGA_Design,或者您可以手动重建和重新引用这些文件。一个项目用于ISE 12.2,另一个用于ISE 14.7,完全相同的代码,但每个项目应该从其各自的ISE运行 版。 使用两个版本的行为模拟正确匹配。 事情出错的第一个迹象是翻译后模拟。 12.2版本有效,而14.7没有。 它从那里螺旋下来。 我试图通过仿真使这个可以重现,但是对于模拟设置没有任何顾虑,它在构建在tartet上时显示相同的东西。 有趣的是,BROM(只读BRAM)似乎很好。 它只是BRAM(读/写)没有。 任何帮助或类似问题表示赞赏。 我不认为这与众所周知的9K Block RAM Initialization问题有关。 FPGA_Design.zip 239 KB 以上来自于谷歌翻译 以下为原文 I have a project targeting the spartan-6 (LX45) that has been working with no problems being built in ISE 12.2. Recently upgrading to ISE 14.7 the project no longer builds correctly. The issue is that the BRAM is not initialized correctly. The method for BRAM usage in this project is to infer it by parameterizing the widths and using a .mif file for initial values. Attached are projects that reproduce the problem. This zip file must be unzipped to C:FPGA_Design, or you can manually rebuild and re-referrence the files. One project is for ISE 12.2 and the other for ISE 14.7, exact same code but each project should be run from its respective ISE version. The behavioral simulation using both versions matches correctly. The first sign of things going wrong is in the post-translate simulation. The 12.2 version works while the 14.7 does not. It spirals down from there. I tried to make this reproduceable from simulation, but just so there are no concerns about simulation setup it shows the same things when built on a tartet. Interestingly enough BROM (Read only BRAM) seems to initalize fine. Its just the BRAM (read/write) that does not. Any help or similar issues is appreciated. I don't think this is related to the well known 9K Block RAM Initialization problems. FPGA_Design.zip 239 KB |
|
相关推荐
1个回答
|
|
发现问题或解决问题。
推断的BRAM是DPM,一侧只写,一侧只读。 更改代码以删除单独的读取地址(单个端口)或推断完整的DPM明确适用于两个版本的ISE。 出于某种原因,ISE 12.2能够正确地将双地址输入映射到双端口存储器并在14.7混淆时正确初始化它。 它现在使用显式DMP verliog代码。 以上来自于谷歌翻译 以下为原文 Found the issue or work around. The BRAM being inferred is DPM with one side write only and one side read only. Changing the code to either drop the seperate read address (Single Port) or inferring full DPM explicitely works in both versions of ISE. For some reason ISE 12.2 was able to properly map the dual address input to a dual port memory and initialize it properly while 14.7 was confused. It is working now with the explicit DMP verliog code. |
|
|
|
只有小组成员才能发言,加入小组>>
2424 浏览 7 评论
2826 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2294 浏览 9 评论
3375 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2465 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
1242浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
590浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
453浏览 1评论
2008浏览 0评论
732浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 17:58 , Processed in 1.395297 second(s), Total 77, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号