2011-01-30 9 views
2

Verilogのための良いlintingツールは何ですか?私は、LUTやPLLなどの特定のベンダー固有のプリミティブを処理するか無視するように設定することができます。Verilog linting tools?

私は最近Verilator-3.810を試しましたが、プリミティブに少し助けが必要です。

Verilogのそれほど厳格でない構文に対処するには、どのような(linting)ツールを使用しますか?

+4

ちょうどいいヒント:「お気に入り」を尋ねると、客観的に答えにくい質問が出ます。必要な特定の機能をリストするとより役立ちます。 –

+1

これは、このエリア51提案のための完璧な質問です:http://area51.stackexchange.com/proposals/20632/programmable-logic-and-fpga-design?referrer=YmxhQ2OJUo-FAaI1gMp5oQ2それをサポートすることを検討してください。 –

答えて

2

私の経験では、それは一般的に価値がありません。私が試したものは、初期設定の負荷が必要です。なぜなら、彼らはすべてのことをチェックしようとするからです。しかし、各店舗には独自のコーディング基準があります。そのため、リンターを味わうために時間を費やしています。そして、会社の別のセクション(一般的には素晴らしいコードのアイデアを持っている)からIPやコードを統合しようとすると、リンターは精神的になります。wire im_happy = Verdi_happy & simulator_happy & synth_happy;

3

無料のリンキングあなたが言ったようなツール(Verilator)。

私の唯一の経験は、(高価な)市販の糸くずツールです。これまで私が使用してきたすべてのものは、私が重要でないと考えるチェックを除外するためにルールセットをカスタマイズする時間を費やす必要がありました。たとえば、デフォルトでは、すべてのツールで信号命名規則に関する多くの警告が生成されます。これらはRTLがどのようにゲートに合成されるのか、シミュレーションの問題につながるかには影響しないので、それらを無効にすることを選択します。

Spyglassツール(Atrenta)は、最も幅広い機能を備えているようですが、セットアップもかなり必要です。私はHalツール(ケイデンス)が好きです。すぐに使い始めるのが簡単だからです(でも、セットアップが必要です)。

2

私もSpyglassを使用していますが、指示されたツールのように、1つのファイルだけをチェックするために実行スクリプトを設定する必要があり、デフォルトのチェックでは配列データ型のアンロードビットのような無駄なことがあると文句を言います。 Formal Verificationがあなたのフローの一部である場合、ConformalはRTL警告の詳細もかなり出力します。とにかく、特定のモジュールを除外しなければなりません。 Spyglassのように、セットアップが少し必要です。

これらのツールにアクセスできるにもかかわらず、私は最後にのみ使用します。コーディングと検証の間、私はボトルチェックをオンにしてVCSを使用し、ヴェルディが不平を言っているものはすべて修正します。これはかなり邪魔になるので、設定/スクリプトファイルを使用する必要はありません。どちらも無料(または安い)ではありません。

1

Real IntentのAscent Lintはかなり良いです。それは速く走り、セットアップが簡単です。

+3

あなたの答えを役立てるためにいくつかの情報を追加し、ドキュメントへのリンク、なぜ簡単にセットアップできるかなどを指定してください。 –