2017-09-13 18 views
-4

4つの同一インタフェース(A、B、C、D)すべてからパケットを取り込むことができるDUTがあります。1つのポートからのパケットは、出力ポート、4)。例:Aからのパケットは1,2,3または4に進むことができます。ポートBからのパケットは1,2,3または4に進むことができます。同じポートに入っているパケットは順番に並んでいますが、パケットはA、B、C、Dの間で任意の順序で処理できます(4つのインターフェイスすべてが同時にパケットを送信できるため、ポート間で順序は維持されません)。マルチポートスイッチのASIC検証

このようなDUTを確認するにはどうすればよいですか?どのようなスコアボードのデータ構造を使用するのですか?私はDUTをブラックボックスとして扱う必要があります。なぜなら、DUTがパケットを送信するポートをどのように決定するのかわからないからです。私は4つのインタフェースA、B、C、Dのそれぞれにuvmエージェントを持っています。仮想シーケンスは4つのエージェントすべてのシーケンスを制御します。

入力はありますか?前もって感謝します。

+1

あなたの質問は広すぎます。私はスコアボードで 'uvm_tlm_analysis_fifo'を使ってパケットを収集し、必要に応じて処理します。 – noobuntu

答えて

0

あなたの質問は非常に幅広く意見に基づいています。あなたは、あなたに与えられた要件に基づいてのみ検証することができます。 に入っているパケットには、そのまま返るようにがあります。ポートがどのポートを経由するかについての要件がない場合は、テストベンチに関係する必要はありません。あなたが言及していないスループットに対処するいくつかの他の要件が必要です。

最も単純な状況では、すべてのパケットをグローバルパケットIDで一意にする必要があります。そのため、共通のスコアボードに送信できるようにし、テストの最後に、受信したすべてのパケットを送信済みパケット。パックされたIDを持つ連想配列は、このためにうまくいきます。