以前都是在Altera的FPGA,现在用ISE做开发,发现在仿真ROM上和Quartus II还是有些区别。下面先分别说一下Quartus II和ISE创建ROM并进行仿真的步骤:
1、用Quartus II创建并仿真ROM
Step1:在Quatus II工程下生成一个ROM
Step2:编写.mif文件,作为ROM的初始化文件
Step3:将.mif文件拷贝到Modelsim工程下
Step4:进行Modelsim仿真
2、用ISE创建并仿真ROM
Step1:在ISE工程下生成一个ROM
Step2:编写.coe文件,作为ROM的初始化文件
这一步与Quartus II不同,因为Quartus II中ROM的初始化文件为.mif或者.hex,而在ISE中ROM的初始化文件是.coe文件,所以需要编写.coe文件。.coe文件的格式很简单,下面就是一个.coe文件的内容:
MEMORY_INITIALIZATION_RADIX=16; //表示ROM内容的数据格式是16进制
MEMORY_INITIALIZATION_VECTOR=
0a,
0b,
0c; //每个数据后面用逗号或者空格或者换行符隔开,最后一个数据后面加分号
Step3:用Core Generator完成ROM的例化后会生成一个.mif文件,这是Modelsim进行ROM仿真时需要的初始化文件,将.mif文件拷贝到Modelsim工程下。
Step4:进行Modelsim仿真
总结:由此可见,用ISE生成ROM并进行仿真与使用Quartus II的区别主要是,在ISE下需要编写.coe文件,作为ROM的初始化文件,但是在仿真时仍然需要.mif文件,而.mif文件是Core Generator在生成ROM的时候自动根据.coe文件生成的。
用户1740547 2016-4-1 14:41
用户1049205 2014-10-5 09:25
用户1271802 2013-12-14 18:23
用户293194 2013-7-10 17:41
用户1192575 2013-5-2 23:08
用户1103935 2013-4-22 23:15
用户1232850 2012-9-23 11:27
用户588715 2012-5-16 15:25
用户178164 2011-10-12 23:04
用户210658 2010-4-26 20:20