下面先分別說一下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文件生成的