FC2カウンター FPGAの部屋 VerilatorでLint
FC2ブログ

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

FPGAの部屋

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

VerilatorでLint

twitterで@Vengineerさんから、VerilogのLintツールとしてVerilatorを教えていただいた。更にブログにも書いていただいた
それじゃやってみようということで、Verilatorの事が詳しく書いてある武内さんの”電気回路/HDL/Verilator の導入(C++モード)”を参照して、Cygwinを使用してVerilatorをインストールした。書いたある通りにやると、Verilatorがインストール出来て、使用可能となった。(ただ、なぜかwget が使えなかったので、ブラウザでダウンロードして、Cygwinのhomeディレクトリに置いた)
Verilatorのバージョンは3.810。
Verilator_1_110131.png

早速、試しにSW_Controller.vをLintしてみた。
Verilator_2_110201.png

サブモジュールのSWDiv.v が無いのでエラーになった。
次に、SW_Controller.vとSWDiv.v をLintしてみた。
Verilator_3_110201.png

これは通った。
次に、VGA_Display_Controller.vをLintしてみた。
Verilator_4_110201.png

エラー多数。そうか、OVLが入っているんだっけ。インクルードパスに追加すれば良いのかな?それともライブラリ化する必要があるのか?ライブラリ化はどうやるんだろう?
とりあえず、std_ovlフォルダをコピーして、インクルードパスを設定したが、std_ovl_defines.hを見つけてくれないようだ。
Verilator_5_110201.png

結局、うまく行かない。OVLがクリアされても、XilinxCoreLibをリンクする必要があるがどうやるんだろう?

現在はLintのみだが、VHDLのファイルもあるので、Verilatorでシミュレーションをすることは出来ない。
  1. 2011年02月01日 05:02 |
  2. シミュレーション
  3. | トラックバック:0
  4. | コメント:7

コメント

SystemVerilogでもLintはできました
なにかオプションがあると思うので、探してみます
とりあえず、同じディレクトリにあると、自動的にファイルを探してくれることは判りました
  1. 2011/02/01(火) 20:27:58 |
  2. URL |
  3. アプロ #-
  4. [ 編集 ]

+incdir+(パス名) で、よいようです
バッチファイルを作る必要がありますね
  1. 2011/02/02(水) 16:31:54 |
  2. URL |
  3. アプロ #-
  4. [ 編集 ]

アプロさん、ありがとうございます。
上でも+incfir+やっているんですが、なぜか?だめですね。
  1. 2011/02/02(水) 21:10:28 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

lint.sh とかいうファイルを作成します

verilator +incdir+../../../../../../Xilinx/12.3/ISE_DS/ISE/verilog/src/unisims\
+incdir+../../../../../../Xilinx/12.3/ISE_DS/ISE/verilog/src/XilinxCoreLib\
・・・・・・・・・
--lint-only (topモジュールのファイル名)

$ sh ./lint.sh (Enter)

OVLを組み込んでいるので、マクロを追加する必要があると思います
上記のファイルに追加します
+define+(マクロ名)

シミュレータのコンパイル時に指定する内容をオプションにするイメージです
  1. 2011/02/03(木) 18:29:51 |
  2. URL |
  3. アプロ #-
  4. [ 編集 ]

すでにやっているかと思いますが、
.bashrc に以下のような設定を追加すると、日本語がちょっぴり大丈夫になります
lv は、別途setupで探してインストールしてください。ファイルviewerで、2バイトコード対応です

export LANG=ja_JP.SJIS

alias lv='lv -As' # Shift-jis view

  1. 2011/02/03(木) 18:33:22 |
  2. URL |
  3. アプロ #-
  4. [ 編集 ]

アプロさん、ありがとうございました。
アドバイスに従って、色々やってみましたが、うまく行きません?
とりあえずペンディングにしたいと思います。
  1. 2011/02/05(土) 05:01:48 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

Cygwin日本語化

> bashrc に以下のような設定を追加すると、日本語がちょっぴり大丈夫になります
> lv は、別途setupで探してインストールしてください。ファイルviewerで、2バイトコード対応です
>
> export LANG=ja_JP.SJIS
>
> alias lv='lv -As' # Shift-jis view

参考:
Cygwin/日本語化 - Co-Coa Wiki
http://co-coa.sakura.ne.jp/index.php?Cygwin%2F%E6%97%A5%E6%9C%AC%E8%AA%9E%E5%8C%96
  1. 2011/03/24(木) 09:50:19 |
  2. URL |
  3. cocoa #4PokjMRA
  4. [ 編集 ]

コメントの投稿


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

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