__FILE__ マクロのパス表示について
※本内容はシミュレータによって変わる場合があるかもしれません。
きっかけはこちらの記事になります。
SystemVerilog 2009 macro `FILE ? absolute or relative path?
こちらの記事のほうでは Questaシミュレータを使用した場合のようです。
私の方は ModelSim-ASE版でやってみました。
- サンプルコード(test.sv)
module testbench (); initial begin $display("File: %0s , Line: %0d", `__FILE__, `__LINE__); $finish(); end endmodule: testbench
RTL=sample.sv run: work compile sim work: vlib work compile: vlog ${RTL} sim: vsim -c -L work testbench -do "run -all; quit" clean: rm -rf work transcript vsim.wlf
- 実行&結果
$> make : # File: sample.sv , Line: 4 $> make RTL=~/work/systemverilog/tutor_test/50___FILE__/sample.sv : # File: /home/kocha/work/systemverilog/tutor_test/50___FILE__/sample.sv , Line: 4
このようになります。
結構知っていると便利な豆知識かも知れませんね。