2017-03-27 4 views
0

多くのチームで使用されている検証コンポーネントがあります。私はdefineと言ってADDRESS_WIDTHと私はすべてのチームのすべての要件の最大値に設定します。システムVerilog/uvmの定義を処理する最良の方法は何ですか

しかし、それは理想的なソリューションのようには見えません。これがSV/UVMの方法で処理できる方法はありますか?

私は人々がそれを更新するためにdefparamsを使用することができますが、その後も、私は別にinterfacesを処理するための方法が必要になるように、私は薬でparameterとしてこれをリスト

  • いくつかの方法を考えました。

これは、誰かが1つの場所を更新し、別の場所を変更しない可能性のある穴を残します。

  • 定義を更新するコマンドラインオプションもありますが、パラメータリストが多すぎると理想的な解決策ではありません。

  • 私は別のdefinesファイルを持つことができ、誰もが自分のdefinesファイルを持つことができますが、それはコンパイル順序に依存するであろう。

もっと良い解決策があるかどうか教えてください。

ありがとうございます。

+0

'package'でパラメータを定義してそこから参照するのはどうですか?同じパッケージに定義されているクラスは、 '::'なしでパラメータを参照できます – Greg

答えて

1

packageを使用して、検証コンポーネントが使用するパラメータを定義し、そのために同期を維持します。各チームは、ニーズに合わせてパッケージを変更できます。

これらのパラメータの有効な値の範囲を指定し、インタフェースまたは検証のいずれかを使用してチームのパッケージの値を確認する別のパッケージを作成します。

+0

優れた提案です。どうもありがとう。 – justrajdeep

関連する問題