VMMの検証プラットフォームを使用すると、階層的な情勢に基づいて設立しました

要約:VMMはSYS-ベースであるTEプロジェクトの生産性の検証を改善するために、抽象化、自動化、およびこれらの4つの機構の再利用がアサート導入することにより、科学の認証方法mVerilog言語。本論文では、トランザクション・ベースの再利用可能な階層的な検証プラットフォームを確立するために、VMMを使用する方法の例を説明します。

  0はじめに:

集積回路ディープサブミクロン時代の到来、ICのスケールは、拡張システム・オン・促進し続けるチップ のSoC(Systems- ON -A-チップ)の開発と応用を。通常規模のSoCチップはドア数百万〜数十万人の1程度、複雑さのような高い程度の顔は、SoC設計の検証が最も困難と最も挑戦的な課題の一つとなっています。VMMビルドトランザクション・ベースの再利用可能な階層的な検証プラットフォームに検証エンジニアを案内するのSystemVerilog言語、導入アサーション、抽象化、自動化と再利用のメカニズムを使用して(検証メソドロジマニュアル)検証メソドロジ、我々は簡単に方向性を達成することができ、テスト、ランダムテストを検査からのデータ、及び検証の生産性を向上させる、テストケースの複雑さを低減し、確認コードの総量を減少させる、製品を販売する時間を短縮します。

  1トランザクションベース検証

  トランザクションベースの検証は、現在使用される主要な検証方法です。簡単に言えば取引があるようにインターフェイス上で動作します。トランザクションは、例えば、確実にTCPパケットを送信してもよいし、抽象的でハイレベルとすることができる物理層接続上でそのようなAPB書き込みサイクルのように表面。トランザクションベースの検証ユーザーは、これにより、検証の効率を高め、トランザクション・レベルで抽象度の高いことを確認するために、細部への根本的な関心を持っていないように。

  検証環境のコンポーネントは、トランザクションと呼ばれるプロセッサをそれは自律的に生成し、ハンドルまたはトランザクションを監視する静的オブジェクトです。従来のバス低レベルのトランザクション処理である機能モデルは、トランザクションは、オブジェクトインタフェース試験される設計の励起レベルに変換されるピンは、その逆の遷移又は副を知らせます。トランザクション処理のみ、トランザクション・レベル・インターフェースの高レベル。ピンスイッチ応答信号遷移から生成された測定された設計対象に応じて、トランザクションを処理するために使用されるプロトコルの設計目的に応じてトランザクション・プロセッサは、トランザクション・レベルの形に戻り。このチェックは、トランザクション・レベルに応じて行うことができます正しいか、そう、エラーを見つけるためのように、信号/ピンレベルで見ることがさらにある、応答時間が一致していませんチェックしてください。

  2 VMMの検証メソドロジ

  VMMは、SystemVerilogの検証手法に基づいています。これは、より高い生産性を達成することができる機構の一連の最大プログラムSystemVerilogのオブジェクト指向プログラミングを利用します。

 

  2.1階層モデルの検証

  VMMは、階層構造が簡単な検証テストベンチの再利用で使用しています。レイヤ変更は再利用、他の層の機能に影響を与えない場合でも、異なるプロジェクト間の検証プラットフォームを利用して、他の層の上に構築され、一定の独立性を持っているそれぞれの層、大幅に向上検証の再利用。

  VMMが分割されているボトムレベル信号、層の順序、層の機能、および層のテストシナリオ層から階層検証プラットフォーム推奨見ることができます。前記検証要素は、前記発電機、プロキシ、ドライブモニター、確認、スコアボード及びアサーション。

  試験DUTは信号層との界面の設計を含みます。層の下の上指令信号層は、界面層、上方を通ってトランザクション・レベルの機能と通信するためのチャネル層によりテスト信号の設計と接続され、一般的にドライバ(ドライバ)、モニタ(含むモニタ)と、アサーション(アサーション)。励磁信号入力DUTの上段からの駆動変換トランザクションは、トランザクションの上層と変換チェッカーへ送信される信号を監視するために監視インターフェースに変化します。操作、トランザクション・レベル・チャネルの層の順序、ハイレベルの抽象化の上に位置する機能層を介して互いに通信します。この層は、エージェント(エージェント)、チェッカー(チェッカー)とスコアボード(スコアボード)を含みます。エージェントの役割は、のように読み取り、DMAの書き込みとして、上位来るトランザクションを受信すると、運転者に提供される単一のトランザクション・レベルにこれらのコマンドを変換します。エージェントによって発行されたコマンドを受信したドライブ、それは励起に対応するデータを生成します。スコアボードは、設計の動的応答を予測するために使用される、励起に適用されるスコアボードながらDUTに印加される、スコアボード変換関数変換すべての励起入力を応答の最終的な形にし、チェックに送達するために、データ構造に格納されています、スコアボードはまた、業務や統計の数を記録し、レコードは、トランザクションが欠落していると上のようされているかどうか、すべての取引で、取引の成功または失敗の数を行いました。予測スコアボード格納された応答のモニタからデータをチェックして正しくテスト機能するかどうかを決定するために比較されます。機能層上のシナリオ(シナリオ)層は、主に特定の関係を有するトランザクションランダムシーケンスを生成するために使用されます。トップ層は、彼が別のテストケース、異なる定義の制約を設定するために使用され、テストです。実証事業を通じて、機能カバレッジが自動的にシミュレーションツールによって生成され、テスターはテストケースのカバレッジまで1O0%を変更し、機能カバレッジに基づくテストプラットフォームを調整するために、それは検証プロセスの終了とみなすことができます。

  SystemVerilogの利点オブジェクト指向プログラミング言語を最大限に活用するために、クラス・コンポーネント(クラス)との検証が再利用性を向上させるために、達成され、全体の検証プラットフォーム統一フレームワーク構造は、明確かつ維持することが容易になります。

  VMM 2.2の機構は、4つの異なるメカニズムを介してプロジェクト検証の生産性を向上させるために科学の生産性を検証する方法。行うには、これら4つの機構は次のとおりです。アサーション、抽象化、自動化と再利用。

  アサーションは、被試験信号の挙動を確認するために設計されており、記述言語が実装されている正しいビューアです。外部インターフェースモジュールとその設計内の戦略的な場所に設けられた機能をチェックすることによって、必要に別のテストコードを書くために、テストを効果的に観測の設計および位置決めを向上させることができ、これらのキーポイントを監視何が起こるかのプラットフォーム外部から観察することができるであろう間違った能力。

  伝統的なバストランザクション・プロセッサのレベルは階層的なトランザクション・プロセッサのバス機能モデルによって、この制限を克服するために、抽象化の再帰レベルを形成しながら、一生懸命私たちのために機能モデルは、組み合わせたり、新しいプロトコル層を追加します。

  検証では、励起駆動設計を生成する必要があります。シミュレーション中の限られた時間のために、ダイレクト・テストは、チップの典型的な動作を確認、しかし、ダイレクト・テストの主な欠点である可能なすべての行動を、確認することはできません。そして、ランダム化励起は唯一の数行のコードでは、ランダムなデザインを提供することにより、検証テスト励磁信号空間を拡大し、刺激、大量のデータを生成することができます。ランダム励起源が必要な励起信号を生成することができない、または必要な励起することなく使用することができない場合にランダム集束信号源を、それがより発生し、発生検証はランダム化プロセスに制約を課すことができる場合に励起をランダム化私たちへの関心や境界領域内にある、より迅速に機能カバレッジの要件を満たすことができます。

  VMMレベルの検証環境は、抽象化設計プロセスのさまざまなレベルのデータに反映明確な定義も、変更が機能に影響を与えない場合でも、それぞれの層が他の層の上に一定の独立性を持っている層を構築します大幅に同一の機能モジュールを書き換え避けるために多くのテストケースとして再利用されるように変更することなく、効果的に書き込まれるテストケースの複雑さを低減することができる、検証環境を検証の再利用性を向上させる、他の層によって再利用。

  応用例3

  例を通じて続いてVMMでテストDUTの下にFIFOモジュールに、トランザクションの階層的検証プラットフォームを設定する方法について説明します。図2に示す検証プラットフォーム上の構成:

 

  設計が比較的単純であるため、この層があるので、シーン機能モジュールが実装されていません。個々の成分は、クラス上に画像を確認するために使用されます。以下は、機能を説明し、様々なトップダウンアセンブリの検証を実現します。

  (1)トランザクション定義fifo_tr

  それはVMMから継承し、したがって、いくつかの方法を継承(コピーとして定義vmm_data)、(比較fifo_tr)等Vmm_dataトランザクション。2つのメンバ変数の種類とデータを含むfifo_tr、トランザクションのタイプの元の定義は、データの読み出しと書き込み定義し、読み取りまたは書き込みです。

  (2)取引チャネルfifo_chan

  トランザクション・レベルの検証コンポーネント間の特定のトランザクションを送信するためのマクロ定義 `vmm_channel VMM()によって生成さfifo_chan。定義された構造SystemVerilogのメールボックスと比較して、それは強くチャネルを入力され、すなわち、各チャネルは、エラー状態の発生を回避するために、特定のトランザクションを送信することができます。

  (3)インタフェースfifo_if

  fifo_ifは、DUTへの操作入力にインタフェースを介して信号層、ドライバに属するピンFIFOをカプセル化している、ドライバーとFIFOとの間の通信インタフェースです。

  (4)発電機fifo_gen

  VMMは、このような読み出しトランザクションまたは書き込みトランザクションとしてランダムトランザクション、および駆動fifo_drvにトンネルトランザクションを生成するための無限ループであり、そのコアからfifo_gen vmm_xactorベースクラス継承。

  (5)ドライブfifo_drv

  VMMからfifo_drvのvmm_xactorベースクラス継承し、その機能は、信号を解析することにより、上層fifo_xactnジェネレータfifo_genからトランザクションを受信するFIFOデザインに励起入力を測定して、信号レベルに変換し、その構造は、二つを含みます重要なパラメータは、一つの入力チャンネルは、発電機と通信するために使用され、他方はFIFOと通信するための出力インタフェースです。

  (6)モニターfifo_mon

  また、2つの重要なパラメータが含まれ、一方は入力インタフェースで転送する実際の応答は、チェッカーfifo_chkように設計されている。その構造と同様に駆動され、それがVMMからvmm_xactorを継承し、その機能は、FIFOを監視するための変更を通知することであるfifo_mon 、FIFO、信号の変化を監視するインタフェースに接続するために使用される、他のインスペクタと通信するためのトランザクション・レベル・チャネルです。

  (7)チェッカーfifo_chk

  fifo_chkトランザクションが適切に実装するかどうかをチェックするために、VMM基本クラスvmm_xactorから継承されました。具体的にはテスト機能の正当性を決定するために比較されているスコアボードから送信された送信予測結果情報を監視します。

  (8)スコアボードfifo_scb

  スコアボードには、応答を予測するために、入力刺激を生成するために使用されるVMM基本クラスvmm_xactor、から継承された、との取引は、どのように多くの合計がリンクしている完了したトランザクションまたは書き込みトランザクションを、読み込まれたとして、統計情報を文書化するために行われました正しく間違ったのではというように、トランザクションの実行中に、実装されたトランザクションのどの、上。

  (9)アサーションアサーションは、FIFOにアサーション違反をテストするために使用される、完全な状況FIFOに書き込まれたように、これらのアサーションによって確認することができ、FIFO空のケースを読み取ります。次のようにフレームワークは、アセンブリ図3の検証で構成することができるプラットフォームを確認するために、上述の:

 

  DUT tb_topトップモジュール、テストプログラム(プログラム)、およびインタフェースクロック発生組成物。テストプログラム検証環境fifo_envの例は、例のすべての必要な環境問題のプロセッサは、テストケースのみのプログラム(プログラム)がブロックの最初のブロックを達成することを確認し、その設計、アサーションおよび検証環境を避けるために行いますアドベンチャー競合が発生し、そのため一つだけ初期テストケース実行ブロックがテストケースの各ステップを実現するように、シングルスレッドであることがより容易に理解することができます。

  4まとめ

  抽象化のますます高いレベルの歴史的傾向を進化された上で、検証。この論文では、FIFO検証プラットフォームは、例えば、オブジェクト指向の考え方を使用することは、全体的な検証プラットフォーム与え、トランザクション、各コンポーネントレベルの検証と実装の機能の簡単な紹介に基づいて、階層検証プラットフォームを確立するために、VMMの検証手法を使用する方法について説明しますフレームワーク。高い再利用性、拡張さ読みやすさ、プラットフォーム検証、保守コストの削減と検証プラットフォームは、VMM検証メソドロジの優位性を反映しています。

  著者の革新:トランザクション・ベースの階層的な検証プラットフォームを確立するための提案された使用VMMのアイデア。

リリース1012元の記事 ウォンの賞賛520 ビュー1270万+

おすすめ

転載: blog.csdn.net/Augusdi/article/details/104949065