ファンクショナルベリフィケーション

複雑なASIC、FPGA、SoC FPGAデザインの場合、多くの検証課題があります。これには(設計、シミュレーション、デバッグにかかる)時間を短縮することや、許容可能なカバレッジレベルを達成することが含まれます。アルデックのEDAツールは、業界標準のベストプラクティスや一般的な検証メソドロジと組み合わせて使用することで、このような課題を克服し設計に自信を持てるようになります。

 

メトリクスドリブンベリフィケーション (MDV) 

設計検証の中心となるMDVは、検証プランとその構築、実行、解析が連動していることを周期的に確認するものです。これは、検証作業の予測可能性、生産性、および品質を向上させるために実施されます。

 

MDVメトリクスにはコードカバレッジ、アサーションを使用したファンクショナルカバレッジ、SystemVerilogのカバーグループ、有限ステートマシン(FSM)カバレッジなどが含まれており、これらはRiviera-PROとActive-HDLですべてサポートされています。また、アルデックのカバレッジデータベース (ACDB) はAccellera UCIS要件を実装したもので、デザイン検証の課題を解決するのに役立ちます。

 

ベリフィケーションメソドロジ

混在言語シミュレーション用のEDAツールは、さまざまな検証ストラテジを採用して再利用を最大限高めるために、業界の最新の検証メソドロジをサポートする必要があります。Riviera-PROとActive-HDLもあどちらもOSVVM、UVM、UVMをサポートしており、cocotbも使用することができます。

  • Open Source VHDL Verification Methodology (OSVVM):この先進的な検証手法は、VHDL検証フレームワーク、検証ユーティリティライブラリ、検証コンポーネントライブラリ、スクリプトAPI、および検証を簡素化するコ・シミュレーション機能を定義しています。OSVVMを使用すると、シンプルで読みやすく、強力なテストベンチを作成することができます。
  • Universal Verification Methodology (UVM):2011年にAccelleraによって開発され、2020年にIEEE 1800.2-2020として標準化されたUVMは、少なくとも10年以上にわたってASIC設計のデファクト検証手法として使用されており、現在では高密度FPGAおよびSoC FPGA設計にも使用されています。SystemVerilogで書かれたオープンソースライブラリであり、ハードウェア設計にオブジェクト指向プログラミングの力を利用しています。
  • Universal VHDL Verification Methodology (UVVM):これはオープンソースのVHDL検証ライブラリと検証手法で、GithubとIEEE Standards Association Openの両方で公開されており、欧州宇宙機関(ESA)と協力して開発されています。OSVVMと同様に、設計者はすでに知っている言語(すなわちVHDL)を使用し、特定のテストベンチに必要な機能を段階的に追加することができます。
  • Coroutine cosimulation testbench (cocotb):これはPythonでハードウェアテストベンチを作成するための非常に人気のあるオープンソースで完全に無料のツールで、好みのシミュレータを使用してVHDLまたはVerilogで記述されたデザインを検証するために使用できます。

 

デザインルールチェック (DRC) 

VHDL、Verilog、SystemVerilogで記述されたRTLコードに対してALINT-PROを使用して実行されるスタティックリンティングは、デザインフローの早い段階で絶対的なエラーや警告にフラグを立て、HDLコードの堅守性を確保します。リンティングは、デザインフロー全体を通して、様々なデザインの問題 (不適切なコーディングスタイル、不適切なクロックおよびリセット管理など)、シミュレーションと合成の不一致、正しく実装されていない有限ステートマシン (FSM)、テスト容易性の低下、およびその他の典型的なソースコードの問題を検出することに役立ちます。

 

ALINT-PROはフェーズベースリンティング(PBL)もサポートしています。PBLはデザイン解析プロセスに明確な優先順位を挿入することで、対処すべき問題の総数を削減し、設計改良のイタレーション回数を最小限に抑えます。PBLにより、デバッグ時間が3~10倍短縮されます。

 

クロック/リセットドメインクロッシング

クロックドメインクロッシング(CDC)や、最近ではリセットドメインクロッシング(RDC)の検証は、複数のクロックとリセットラインを持つ大規模で複雑な設計にとって困難です。ALINT-PROは、クロックとリセットのドメインクロッシング解析とメタスタビリティ問題の処理に特化したALDEC_CDCルールプラグインを備えています。ALINT-PROは、デザイン制約のサポート、メタスタビリティ検証、スタティックおよびダイナミック検証のサポートも提供しています。

 

QEMU コ・シミュレーション

SoC FPGAは、プロセッサコアとソフトウェア実行機能を備えており、システム、ソフトウェア、ハードウェアの各エンジニアに新たな検証課題をもたらし、多くのHW/SW統合の問題はテストベッド、つまり開発ライフサイクル後期の物理ハードウェア上で初めて発見される。

 

アルデックは、Riviera-PROとオープンソースのプロセッサエミュレータQEMUとの間でHW/SWコ・シミュレーションインタフェースを提供しています。

 

Riviera-PROとQEMUを接続し、SystemC TLMトランザクションをAXIに変換、またはその逆に変換するコ・シミュレーション用の高速インタフェースを提供するアルデックのQEMUブリッジが加わったことで、QEMUで実行するソフトウェアアプリケーション/ドライバとHDLコードのシステム統合やコ・シミュレーションが簡単になりました。

 

この機能は、AMD の非常に成功した Zynq 7000 および MPSoC ファミリの機能とパフォーマンスを基盤とするVersal Adaptive Compute Acceleration Platform(ACAP)システムオンチップ(SoC)デバイスにまで拡張されています。このデバイスには、インテリジェントエンジン(ベクトル処理、ドメイン固有の並列処理、高い計算効率を必要とする機能やワークロード向けのAI/MLおよび信号処理チップセットの組み合わせ)とプログラマブルネットワークオンチップ(NoC)が導入されています。



Printed version of site: www.aldec.com/jp/solutions/functional_verification--fpga-verification-tools