UVMプラットフォームに関するいくつかの小さな問題

1. uvm_top.print_topology()関数uvm_top.print_topology()関数を
使用して、test_baseクラスのend_of_elaboration_phaseにあるUVMトポロジを出力します。
その中でuvm_verbosityは、uvm印刷の冗長性を示します。
2.波形ファイル
uvm workで生成された波形ファイルmodule_name.fsdbは、名前とパスがスクリプトで置き換えられた後、波形ファイル$ {TESTCASE} _ $ SEED.fsdbと同じではありません。前者はダンプされません。
最上位層:
最初の
開始
$ fsdbAutoSwitchDumpfile(1000、“ module_name.fsdb”、20);
$ fsdbDumpvars(0、tb_top);
$ fsdbDumpflush;
終了
スクリプト:
$ RUN + fsdbfile +…/…/ wave / $ {TESTCASE} _ * $ SEED.fsdb + fsdb + autoflush
3. duv内部信号を引き出して、入力と出力と比較します。
スコアボードで、duv内部信号を直接引き出して比較できます。ここでは、信号の完全なレベルを確認する必要があります。tb_top…CLK /有効/準備完了/データ。
現時点では、スコアボードの標準的な書き込み方法は、データを格納するために複数の空のキューを設定し、データの収集と比較を分離することです。タイミングの問題を防ぐため、しばらくの間比較する前にデータを収集することは禁止されています。
4. verdi関連付けコードを開く際の問題
波形を読み込んだ後、直接verdiを開くと、ファイルリストをインポートした後、inportデザインに関連する問題が発生することがよくあります。verdiを開いた後、スクリプトを使用してコードを自動的に関連付けることができます。
コンパイルされたログファイルにrunverdi.cshという名前を付け、chmod + xを実行して実行可能ファイルに変換します。
ファイルを開く
#!/ Bin / env csh(デフォルトのインタープリターを設定)
bsub -Ip -q“ xxx” -P“ xxx” verdi \(キューを設定)
+ incdir +…/…/ testbench \(ログファイルで予約)
+ incdir +…/…/ testcase(ログファイルに予約)
-f…/…/ duv / filelist.f(ログファイルに予約されたファイルリスト)
…/…/ testcase / pipe_test_random_item.sv \(ログファイルに予約されたユースケース)
+定義+
+ define +(ログファイルにマクロ定義を保持)
-sv
ファイルを保存し、スクリプトを実行します。
5.インセンティブの生成と送信を分離する(シーケンスの問題)
すべてのインセンティブが生成されたら、ドライバーに空のキューを設定し、最初にアイテムを格納します。次に、送信条件を制御し、duvに刺激を送信するだけで、刺激の生成と送信を分離します。
上記の問題は、インセンティブが生成された後、プラットフォームが閉じられ、この時点で実際にすべてのデータをduvに送信して出力するプロセスが完了していないことです。したがって、この種の操作では、刺激が生成されてからプラットフォームをシャットダウンする前にすべてのデータが完全に処理されるように、遅延を設定する必要があります。
6.インターフェイスのドライバーの部分的な機能
モジュールを検証するとき、有効なデータスティミュラスを上流に入力することに加えて、下流も準備ができている必要があります。UVMには出力項目〜エージェントがありますが、いくつかの単純な処理では、出力インターフェイスで実現できます。
initial、always、assignステートメントを使用して、インターフェースでタスクと関数を定義できます。レディ信号の変更モードと、異なるモードでの対応する特定の操作は、インターフェースで直接定義されます。同時に、インターフェイスで8b10bエンコーディングなどの単純な操作を完了することもできます。このような操作は、通常、アイテムとはまったく関係ありません。
7. Verilog +:使用法
[BASE +:WIDTH]は[(BASE + WIDTH-1):BASE]を表し、BASEは変数、WIDTHは定数です。
例:
[i * P +:P]、i = 0、P = 3、[i * P +:P] = [2:0]。
8. verdiで値
検索バス値でを入力し、信号を選択して、直接検索します。
値はすべての値である必要があり、一部の値の検索はサポートされないことに注意してください。

元の記事を38件公開 29のような 10,000以上の訪問

おすすめ

転載: blog.csdn.net/weixin_45270982/article/details/103975911