1

ビルドフローのすべてのSystemVerilog依存関係を安価かつ正確に予測しようとしています。依存関係を過大に予測して、sv依存関係ではないVerilogファイルをいくつか見つけてもかまいませんが、依存関係を見逃したくありません。

すべての依存関係を判別するために、実際にVerilogを解析する必要がありますか?ティックインクルードプリプロセッサマクロがありますが、それらのティックインクルードは現在コンパイルされているすべてのコードをロードしていないようです。SYSTEM\_VERILOG\_PATH環境変数があります。SYSTEM\_VERILOG\_PATHどのモジュールがどのファイルで定義されているかを判断するために、その変数内のすべてのSystemVerilogファイルを解析する必要がありますか?

4

3 に答える 3

1

良い方法の 1 つ (これが合成可能なコードの場合) は、合成ツールのファイル リスト (たとえば、Altera の場合は .qsf) を使用することです。これで完成する傾向がありますが、完成していない場合は、ビルド ログで見つかった欠落ファイルを確認できます。

于 2009-09-10T14:59:29.353 に答える
1

すぐにコンパイルできる環境から、ソース ファイルをダンプすることができます (例: Cadence)。

-- To list source files used by the snapshot 'worklib.top:snap'
% ncls -source -snapshot worklib.top:snap


しかし、ゼロから始めている場合、簡単な解決策はありません。私は実用的なものを選びます: .sv ファイルを含むすべてのディレクトリを含む構成ファイルを用意し、その中のすべてをコンパイルします。プロジェクトに適切なファイル構造がある場合は、主要なブロックごとに構成ファイルを提供することで、これをモジュール化することもできます。

それが役立つことを願っています。

于 2010-02-19T09:42:43.467 に答える
0

Questa にはコマンド ライン オプションがあり、デザインをコンパイルした後にすべての依存関係を含むメイクファイルを生成することは知っています。他のシミュレーターにそれがあるかどうかはわかりません。

もう 1 つのオプションは、シミュレーターでコンパイル済みライブラリを参照してダンプすることです。おそらく、モジュールがコンパイルされた実際のファイル名を取得することはできませんが、コンパイルされたライブラリに表示されるモジュール名についてすべての Verilog ファイルを解析する方がはるかに簡単です。

于 2009-10-24T04:37:37.360 に答える