3.11 VCDファイルの信号名保存

VCDファイルは、Verilog標準の波形ダンプファイルです。波形変化点のテキストファイルです。
通常のデバッグでは、VCDファイルを用いる必要はあまりないと思いますが、他のシミュレータと波形データを交換したい場合や、仮想メモリに収まりきれないような長大なシミュレーションのデバッグでは使うことがあります。10.のプロジェクトファイルには、VCDの名前リストもいれてありますが、VCDファイルが読み込まれていないために表示されませんでした。

  この例では、vcd_test.vcdを読み込んでください
  次は、10と全く同じ手順で再びLoadProject->GOしてください。

今度は、VCD(水色)の波形も現れました。この波形は、前にこの状態で、SaveProjectしておいたものです。
ScopeTreeViewを見てみましょう。下図で、ScopeTreeView左側のペインにVCD_TESTが二つ並んでいます。
一つは、上側がVeritak Originalで、現在のシミュレーション状態の信号名、下側がVCDファイルで読み込んだ信号名になっています。どちらがVCDかどうかですが、タイトルバーにVCD Structureと表示されていれば、VCDファイルとなります。

Note:VCDファイルとデバッグプロジェクトは同じである必要はありません。例えば、sample1.vでGUIを立ち上げて単なるVCD Viewerとしても使えます。


ところで、上の階層名は同じなのにVCDとVeritakOriginalで波形が違うことに気づかれたでしょうか?VCDでは、必要なところだけをSaveすることが可能です。必要でないところは、たとえ変化していてもxと記録し、情報量をセーブすることが可能です。今回のソース
を見てみましょう。



$dumpfile でファイル名を指定します。$dumpvars;引数なしで、全信号ダンプせよの意味になります。
さらに、Disable/Enableしたい場合は、$dumpoff、$dumponを使います。上の例では、QW1[11:0]が12’h000に変化したら、500クロック間ダンプしなさい、それ以外はx、ということを意図したプログラムです。本当にそうなっているか確認してみましょう。