はじめに
今日は、xvlogコマンドを実行した時に生成されるファイルをみていきます。
サンプルコード
サンプルコード(top.sv)は、下記のように内部に周期10ns のクロックのみです。10000 ns 実行すると、$finish(2) でシミュレーションを終了します。
module top(); timeunit 1ns; timeprecision 1ps; wire clk; logic clk_reg; assign clk = clk_reg; initial begin : top_initial_0 clk_reg = 1'b0; forever begin clk_reg = #5ns ~clk_reg; end end initial begin : top_initial_1 #10000ns; $finish(2); end endmodule : top
xvlog コマンドでファイルをコンパイル
xvlog コマンドで、上記のtop.svファイルをコンパイルします。-sv オプションはSystemVerilogのファイルであることを指定しています。
xvlog -sv top.sv
下記のようなメッセージが表示されました。
INFO: [VRFC 10-2263] Analyzing SystemVerilog file "/XXXXXX/top.sv" into library work INFO: [VRFC 10-311] analyzing module top
work ライブラリにストアされました。work ライブラリは、xsim.dir/work ディレクトリになります。
ls xsim.dir/work top.sdb work.rlx
xsim.dir/work ディレクトリの下には、top.sdb と work.rlx が生成されました。
file xsim.dir/work/* xsim.dir/work/top.sdb: data xsim.dir/work/work.rlx: ASCII text
で、work.rlx は ASCII ファイルのようなので、覗いてみます。
cat xsim.dir/work/work.rlx 0.7 2020.2 Oct 19 2021 02:56:52 /XXX/top.sv,1654996577,systemVerilog,,,,top,,,,,,,,
おわりに
今日は、xvlog コマンドが生成するファイルをみてみました。明日は、xelab コマンドが生成するファイルをみてみます。