Verilog-Perl には vrename という内部の信号線名を変更するツールがある。 これは重複するモジュールの名前を変更する場合に使うのだが、他にも使い方があって、処理の最中に信号線の名前一覧を作ってくれるので、これを使うと使っている信号線の確認に利用できる。 (この信号何だっけ?とか、重複している意味の信号が無いか確認したりだとか)
$ vrename --list if_unit.v parse file if_unit.v Wrote signals.vrename (Changes list, 227 signals)
結果が signals.vrename に書き込まれている。
$ less signals.vrename # Generated by vrename on Sun Apr 12 02:02:08 2015 # # Files read for this analysis: vfile "if_unit.v" # # Original Signal Name Name to change to # -------------------- ----------------- # sigren "$clog2" "$clog2" sigren "ADDR_B" "ADDR_B" sigren "ADDR_W" "ADDR_W" sigren "AXI_BYTESIZE_16" "AXI_BYTESIZE_16" sigren "BR_JMP_DIR" "BR_JMP_DIR" sigren "BR_LIKELY" "BR_LIKELY" sigren "BR_PC" "BR_PC" sigren "BR_PC_CURR" "BR_PC_CURR" sigren "BR_PRED_MISS" "BR_PRED_MISS" sigren "BR_REG_PR" "BR_REG_PR" sigren "BR_VLD" "BR_VLD" sigren "CLK" "CLK" sigren "CMT_NMI_RESET" "CMT_NMI_RESET" sigren "Disable" "Disable" sigren "EN_INST_DATA" "EN_INST_DATA" sigren "Enable" "Enable" sigren "FL_VLD" "FL_VLD" sigren "FORMAT_IMM_B" "FORMAT_IMM_B" sigren "FORMAT_OPCODE_B" "FORMAT_OPCODE_B" sigren "FORMAT_RS_B" "FORMAT_RS_B" sigren "FORMAT_RT_B" "FORMAT_RT_B" sigren "ID_READY" "ID_READY" sigren "IF_INST" "IF_INST" sigren "IF_INST_0" "IF_INST_0" ...
これを使うと、たとえばコメントが記入されていない信号線があったときにgitのコミットを禁止したりだとか(hookを使って←本来はこれがやりたい)、 信号線の一覧で回路のチェックなどが用意になる。