Intel:IP Catalog または Platform Designer でメモリー IP (ROM/RAM) を作成し初期値を登録しましたが、RTL シミュレーション結果に初期値が反映されません。
Quartus Prime
シミュレーション
カテゴリー:シミュレーション
ツール:Questa*、ModelSim* (共に Intel® FPGA Edition を含む)
デバイス:-
メモリー IP 作成時のパラメーターにおいて、初期値ファイル (.mif/.hex) は *絶対パス* で指定してください。
初期値ファイルが相対パスで登録されているとシミュレーション結果に反映されず、
ワーニングやエラーメッセージが表示されます。
<Verilog HDL で IP 作成時のメッセージ例>
# ** Warning: (vsim-3534) Failed to open file "../<file_name>.hex" for reading.
# No such file or directory. (errno = ENOENT)
# ERROR: cannot read ../<file_name>.hex.
初期値ファイルを絶対パスで指定するには、下図のように IP のパラメーター設定画面で指定する、

あるいは
Generate された *.vhd または *.v を編集して指定する場合は、下記パラメーター名の右辺に記述された *.mif あるいは *.hex の相対パスを絶対パスに変更します。
IP の生成言語 | パラメーター名 |
VHDL |
init_file => ".mif or .hex file path" |
Verilog HDL |
altsyncram_component.init_file = ".mif or .hex file path" |