在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8319|回复: 10

[求助] 在ISE中初始化ROM遇到的问题(coe和mif文件)

[复制链接]
发表于 2014-12-23 09:36:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

x
在ISE中要使用一个ROM并对其进行初始化,遇到一些不明白的问题:
1. 每次想更改初始化文件(.coe)时, 打开IP核,里面的所有参数又恢复默认值,都要重新再配置一遍,好麻烦!

2. 更改coe文件后,打开IP核全部重新配置生成,结果.mif文件并没有更新,why?
   (查资料说.mif文件才是最终有效的初始化文件)


我每次都要删掉所有的ROM IP核文件,全部重新生成,浪费时间啊,这样太麻烦了!
发表于 2014-12-23 11:04:00 | 显示全部楼层
据我所知,rom ram fifo之类的ip核都是使用的ngc格式的文件,在ip生成的时候,已经确定了初始化的内容。你可以修改coe mif的文件,不过只是在仿真中可以修改rom的初始值,但是在实际布局布线时是不能修改的。
如果要修改rom的初始值,可以先修改coe中的内容,再用coregen重新生成ip。
发表于 2014-12-23 11:14:11 | 显示全部楼层
不过,有一种解决办法。
不用coregen的生成ip的方法,自己写rom。
在xilinx里面,可以用分布式ram和block ram生成rom。这两种方式,都可以指定初始化的内容。
EM截图_20141223111442.png
EM截图_20141223111514.png
发表于 2014-12-23 11:15:34 | 显示全部楼层
不过用这种方法不如coe文件或者mif文件看着直观。
我用的方法是做一个脚本文件,将coe中的内容转换为 分布式ram或者block ram的初始化的值。
发表于 2014-12-25 09:41:53 | 显示全部楼层
二楼正解!
 楼主| 发表于 2014-12-25 16:31:24 | 显示全部楼层
回复 2# haitaox


    当我想要修改ROM的初始化内容,用新的coe文件重新生成ROM的ip核,是不是只要.ngc文件更新了,就说明我的初始化文件已经更新成功了。
发表于 2014-12-25 16:54:16 | 显示全部楼层
直接用 vhd/verilog 语言描述 初始化 ram
发表于 2014-12-25 21:01:38 | 显示全部楼层
回复 6# fanny_haiyun


    以我的理解,是的。你可以在ise中只添加ngc文件,也是可以编译通过的
发表于 2014-12-25 21:02:39 | 显示全部楼层
回复 7# murphy522


    用 rtl 描述存储器,工具在综合的时候,可能会有多种选择,可以用 blockram 分布式ram 或者ff搭建,不好控制
发表于 2016-8-17 20:56:26 | 显示全部楼层
coe文件发生了变化,导致IP生成错误,然后就算更改rom设置,rom的设置也会回到最初的。最快的方法,就是先Remove了,再重新生成一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-25 09:14 , Processed in 0.024951 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表