UVM フェーズbuild()
とrun()
. それらは他の検証方法にも適用できる可能性があります。a>build()
フェーズがトップダウンで実行される理由。build()
これは、フェーズ内のすべてのコンポーネントを新しくしてからbuild()
、クラスでインスタンス化された他のサブコンポーネントの実行に進む必要があるということですか? b>run()
フェイズ中になんかsuper.run()
呼ばれてる?run()
フェーズの実行順序は何ですか
質問する
3012 次
1 に答える
3
はい、build_phase()
UVM はトップダウンの順序で実行されます。これは、親コンポーネント内で構築されるまで子が存在しないためです (また、UVMでは、コンストラクターを直接呼び出すのではなくbuild_phase()
、ファクトリ メソッドを使用することをお勧めします)。もトップダウンで実行されるため、親は、子が実行するときに使用するオーバーライド設定を提供できます。create()
new()
build_phase()
build_phase()
各コンポーネントの run_phase() は、依存できる定義された順序なしで同時に実行されます。
スーパーを呼び出すだけです。method () クラスを拡張する場合は、基本メソッドの機能が必要です。a の run_phase() の内部には何もないため、そこから拡張するときuvm_component
に呼び出す必要はありません。super.run_phase()
基本クラスからクラスを拡張するときに呼び出すことができます。
于 2013-10-14T16:31:49.770 に答える