FC2カウンター FPGAの部屋 ModelSimでVHDLのプロジェクトからVCDファイルを出力する方法(覚書)
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ModelSimでVHDLのプロジェクトからVCDファイルを出力する方法(覚書)

ModelSim SE 6.1eでVHDLのプロジェクトからVCDファイルを出力する方法の覚書。
最初にModelSimのコマンドwlf2vcd.exe でwlfファイル(シミュレーションデータが保存されているファイル)からVCDファイルを生成しようとした。デフォルトで出来ているvsim.wlfからは、ファイルがないと言われて生成できない。dataset snapshotを使って、wlfファイルを作ると変換は出来たがエラーが出力され、出来たVCDファイルはVeritakで読めなかった。(どうやら、ちゃんとVCDファイルが出来ていないようだ)
というわけでwlf2vcd.exeを使うのをあきらめて、ModelSimのVCDコマンドを使うことにする。

ModelSim® Reference Manualの194ページあたりから記述がある (vcd add)。
leon_sparcのyahooグループにもやり方が載っていた。
やり方を下に示す。キーボード・キャラクタ・ディスプレイのプロジェクトとする。 ModelSimのTranscriptの部分に記述する。(コマンド)

1.ModelSimのプロジェクトを読み込んで、シミュレーションをスタート ( vsim -t ps work.keyboard_chard_25mhz_tb )
2.vcdファイルのファイル名を指定 ( vcd file char_disp_sim.vcd )
3.vcdファイルに書き出す信号を記述、(-r :下位階層までの信号とポートを追加) ( vcd add -r /* )
  * 下の階層の信号を入れる場合には階層までのパスを設定する ( vcd add -r /keyboard_chard_25mhz_tb/chardispctrler_inst/* )
4.RUN ( run -all, または run 10 us など)
5.ModelSimを終了、終了しないとvcdファイルに書き込まれない ( quit -f ) ( vcd flush コマンドでvcdファイルに書き込まれるそうです。 2012/04/19)


これでchar_disp_sim.vcd が作成された。17ms程度シミュレーションして、char_disp_sim.vcd のサイズは77.3MB。

これをVeritakのプロジェクトを作って読み込ませる。Veritakチュートリアル2.4.1.2 VCDプロジェクトを参照。
Scope Tree Viewの右側のペインで右クリックして”個別信号をグループ化してWaveform Viewerに追加”を選択。
Veritak_vcd_view_1_090701.png

これでバスの信号がWaveform Viewerに追加されたので、個別の信号を選択して、Waveform Viewer に追加すると、vcdファイルをVeritakで見ることができる。
Veritak_vcd_view_2_090701.png

  1. 2009年07月01日 14:17 |
  2. シミュレーション
  3. | トラックバック:0
  4. | コメント:2

コメント

5.について、vcd flushコマンドを使うと終了不要なはずです。
  1. 2012/04/19(木) 05:40:33 |
  2. URL |
  3. #-
  4. [ 編集 ]

情報ありがとうございます。
  1. 2012/04/19(木) 08:39:42 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/1161-5ab0512c
この記事にトラックバックする(FC2ブログユーザー)