バックナンバーはこちら

today&tomorrow

Technology Update

  • T&T HOME
  • Technology Update
  • シノプシスの検証用IPとUVMを使用してテストベンチを作成する5つの手順

2017 May Spring vol.106

シノプシスの検証用IPとUVMを使用してテストベンチを作成する5つの手順

シノプシス コーポレート・アプリケーション担当ディレクター Amit Sharma

検証はIC設計における最大の課題の1つですが、従来の検証方法はすでに通用しなくなっています。現在の大規模で複雑なデザインに対して個別にテストを作成するのは現実的ではありません。これは、状態空間およびテスト条件の数が大きすぎて検証エンジニアが手作業でコーディングしていたのでは十分なテスト・カバレッジを達成できなくなっているためです。しかもプロジェクト・リソースの不足や短納期化への要求の高まりといった悪条件も重なり、シリコン一発完動は以前にも増して難しくなっています。

こうした課題に対処するため、IC検証チームは複数のテクノロジを利用した高度な統合検証メソドロジに注目するようになっています。制約条件付きランダム検証は、コンピューティング・リソースと機能カバレッジ技術を利用することによって、テスト・コードの開発負担を減らしつつ、より多くのテストを実行できるようにする技術です。しかし、特に環境の柔軟性、スケーラビリティ、再利用性を重視した場合、制約条件付きランダム・テスト環境をセットアップするのは難しいと考えられています。事実、制約条件付きランダム検証のためのインフラストラクチャ構築には多岐にわたる検証プランニングと検証環境が必要ですが、最終的にはその投資に見合っただけの十分な利点があります。

UVM(Universal Verification Methodology)を利用したシノプシスの検証用IP(VIP)を活用すると、検証エンジニアは適切なアーキテクチャの高度な検証インフラストラクチャを短期間で構築できます。本稿ではまずシノプシスのVIPがもたらす主な利点、およびUVMの簡単な概要についてご紹介した後、これらの点をふまえて制約条件付きランダム検証用の完全なテストベンチ環境を効果的に構築する5つの簡単な手順についてご説明します。本稿でご紹介するコンセプトと手法、およびサンプル・コードは、テンプレートとして実際のデザインに応用していただくことができます。

なお、本稿をお読み頂くにはSystemVerilogとオブジェクト指向プログラミングの実務知識が必要です。

シノプシスのVIPとUVMの併用がもたらす利点

シノプシスのVIPモデルは実証済みのプロトコル機能を備えており、それだけでも検証エンジニアには多くの利点がありますが、UVMフローで使用すると検証チームはさらに多くの利点を手にすることができます。

まず1つの利点は、UVMの特長であるモジュール型のテストベンチ・アーキテクチャにより、標準のオブジェクト・ベース・インターフェイスを使用してテスト環境内の各オブジェクトを接続できるという点です。高いモジュール性によって開発がシンプルになり、メンテナンスの手間が軽減します。シノプシスのVIPモデルはプロトコル機能と制御機能の両方を自己完結型パッケージの中に備えており、UVMのモジュール型アーキテクチャを完全にサポートすると同時にUVMテストベンチの開発を簡略化します。このため、検証エンジニアはモジュール型レイヤを基盤として強力なテストベンチを短時間で構築できます。

2つ目の利点として、抽象化による効率の向上があります。UVMはオブジェクト指向プログラミング(OOP)をベースにしています。シノプシスのVIPはプロトコル・トランザクションをオブジェクトに抽象化し、オブジェクト・ベースのインターフェイスを提供します。これにより、エンジニアはインプリメンテーションの詳細を気にする必要がなく、論理プロトコル・レベルで作業できます。複雑化が進んだ現在の標準プロトコルを詳細レベルで扱うと非常に時間がかかります。一方、こうした作業は最終製品の付加価値向上には寄与しないため、プロトコルの抽象化は生産性の向上に大きく貢献します。モジュール型/階層型アプローチには、エンジニアがコンポーネントをスタック化して複雑なシステムを作成できる利点もあります。たとえば一般的なウェブカメラは、USBプロトコルの上にスタック化したビデオ・データを転送します。

3つ目の利点は、複雑なテストを短時間で作成できることです。モジュールを利用して複雑なテスト・インフラストラクチャを構築できると同時に、制約条件付きランダム検証と効率的な抽象化によって複雑なテストも簡単に開発できます。エンジニアがテストを作成して一定の制約条件の中で異なるテストを実施することも容易に行えます。プロトコル機能をカプセル化したシノプシスのVIPを使用すると、抽象化したオブジェクトを用いたコーディングが可能になり、トランザクションの複雑な組み合わせに対しても簡単にテストを作成できます。エンジニアはこれらのシーケンスを使用して実際のトラフィックを再現したり、ストレス/コーナーケース条件を作成したり、あるいは単にカバーする条件を広げたりできます。テストの実行時間を長くするだけで、より多くの条件を作成できます。

シノプシスのVIPとUVMの併用がもたらす4つ目の利点は、再利用性の向上です。シノプシスのVIPモデルはすべてルック&フィールが共通しており、ブロックの再利用が容易なため、複数のコンポーネントを簡単に統合できます。同様に、UVMも再利用性を最大限に考慮して設計されており、再利用可能なコンポーネントを最大限に活用したテストベンチ・コードを容易に作成できます。UVMには標準テストベンチ・フローのテンプレートも用意されており、これをエンジニアが個々のニーズに合わせてカスタマイズできます。UVMでは、ベース・クラスを継承することによって再利用を実現しています。

カテゴリートップ