0

RTL DUT 用のテストベンチの開発を開始しました。テストベンチのすべてのコンポーネントを使用して、DUT の機能を検証するためのセルフチェック メカニズムを実装したいと考えています。

したがって、スコアボード コンポーネントを開発する必要があります。しかし、ここでは、チェッカーコンポーネントの概念さえ理解しています。

スコアボードコンポーネントとチェッカーコンポーネントの違いは何ですか?

また、そのアプリケーションは?

スコアボードチェッカー、またはその両方を使用する必要があるのはいつですか?

ありがとう。

4

3 に答える 3

12

一般的な用語では、チェッカースコアボードは同じ意味で使用され、どちらも DUT からの実際の結果と期待される結果を比較します。ただし、チェッカーは通常、検証したい独立した機能に固有のものですが、スコアボードはインターフェイスまたは DUT 全体の 1 つ以上のチェッカーのコレクションである場合があります。スコアボードは、「テスト」がいつ行われるかを決定する責任を持つ場合もあります。

検証で使用されるスコアボードという用語の由来は、期待される結果を保存するために使用されるデータベースに由来すると思います。データベース内のすべてのエントリが完了したことを確認したとき、または各エントリを削除したためにデータベースが空になったときに、テストが完了したと見なされました。実際の結果は DUT から得られたものです。UVM はuvm_scoreboard、このデータベースを含むテストベンチ内のコンポーネントを表すために使用します。

SystemVerilog 1800-2009 では、このキーワードcheckerは、形式検証用のモデリング コードと共にアサーションの検証ライブラリを構築するためのカプセル化ブロックとして予約されていました。しかし、私は今でもチェッカーを、実際の結果に対して期待されるチェックのための再利用可能なコードのカプセル化と考えています。

于 2013-11-21T15:19:36.657 に答える
1

私は通常、モニターにチェッカーを配置して、トランザクションが正しく作成されたこと、およびトランザクションに正当なデータの組み合わせが含まれていることを確認します。これにより、プロトコルが正しく守られていることを確認できます。

スコアボードは、トランザクションに正しいデータが含まれていることを確認します。単純なデータ フローの例では、入力エージェントと出力エージェントを使用できます。どちらもトランザクションをスコアボードに渡し、DUT が特定の入力トランザクションに対して正しい出力トランザクションを提供したかどうかを判断します。

そのため、扱っているトランザクションの種類に応じて、どちらか一方、または両方を使用できます。

于 2013-11-21T11:32:05.313 に答える