用ModelSim仿真xilinx生成的 rom

来源:百度知道 编辑:UC知道 时间:2024/06/01 06:19:05
初用ISE,现在用ModelSim来仿真,但在仿真 rom时有问题;
报错:Failed to open VHDL file "rom40.mif" in rb
xilinx生成的 rom是通过.mif文件初始化的,我就直接把.mif放在VHDL程序一起.
试过吧 mif改成hex,但还是一样的
希望哪位大侠能帮我一下
谢谢

你在Core generator中生成的ROM的初始化是用.coe文件编写的。然后经过core generator生成会自带一个.mif文件。可能的原因是你在生成时并没有+.coe文件,结果默认生成一个空白的ROM。而在modelsim里面你又把.mif文件添加到库中。所以会出现告警。
解决方法:重新生成一个~~~在initial content 下面选择load file。自己编写一个.coe文件。内容格式如下:
memory_initialization_radix=16;//定义写入初始值的进制
memory_initialization_vector=
aa bb cc dd ee ff 00 11;//我写了一个8位宽的深度为8的ROM初始值。
生成后自带一个.mif文件,modelsim中不需要添加.mif 文件即可仿真。

顺带提下:xilinx ip core在modelsim中仿真不同于altera的。还需要建个xilinx的library。如果需要可以+在问题描述里面。

关键是把rom40.vhl文件中指向的ROM初始化文件改成.hex文件。
.mif文件是给Quartus生成网表用的,而.hex文件是给modelsim仿真用的。
.mif文件可以在quartus或ise中转换成.hex文件,但是不要自己随便修改后缀,因为两者的格式不一样。

我只用过 QII的 ISE的没有用过
这个就不知道了
学习了