UVM 検証とは
Universal Verification Methodology (UVM) 検証は、FPGA および ASIC 設計プロジェクトに使用される設計検証の標準形式です。UVM の開発は、電子設計自動化 (EDA) コミュニティ内の標準化機関である組織 Accellera Initiative によって推進され、過去数年で EDA 産業分野の著名な企業によって開発された ASIC 検証手法を基盤としていました。
UVM 検証の主な目標は、再利用可能な検証コンポーネントを用いて設計の検証効率を改善することです。しかし、UVM 検証コンポーネントを手動で作成およびデバッグするには、特に新しいアルゴリズム コンテンツの場合は依然として多大な労力が必要であり、UVM 検証の複雑さは設計チームが UVM 検証を採用する障害となる場合があります。
ASIC および FPGA 設計プロジェクト向けに開発されたアルゴリズムの多くは、MATLAB® コードまたは Simulink® モデルとして開始されるため、設計チームは MATLAB または Simulink ソースから直接 UVM 検証コンポーネントを生成することで、テストベンチを開発する労力を軽減できます。ASIC Testbench for HDL Verifier アドオンを使用すると、MATLAB コードまたは Simulink モデルから UVM 検証のためのSystemVerilog DPI コンポーネントを自動生成できます。これらのコンポーネントは、UVM 検証スコアボードにおけるゴールデン リファレンス チェッカー モデル、ミックスドシグナル シミュレーションにおける動作レベルのデジタルまたはアナログ コンポーネント モデル、または UVM 検証スティミュラスとして機能するシーケンスとして使用できます。
ASIC Testbench アドオンは、Simulink モデルから完全な UVM 検証環境を直接生成できます。HDL Verifier は、テストベンチのモデルから SystemVerilog UVM シーケンス、ドライバー、モニター、スコアボードのコンポーネントを生成します。また、動作レベルのテスト対象設計 (DUT) の SystemVerilog ファイルも作成します。その後、動作レベルの DUT を手動でコーディングされた RTL または HDL Coder で生成された RTL に置換できます。生成された UVM 検証環境は、Siemens® の ModelSim® や Questa®、Cadence® Xcelium™、または Synopsys® VCS® で使用される場合があります。
UVM 検証のアプリケーションによっては、MATLAB または Simulink から完全な UVM 環境を生成するよりも、個別の UVM コンポーネントを生成する方が好ましい場合があります。MATLAB から個別の UVM コンポーネントを生成するには、予測子、シーケンス、スコアボード コンポーネントの UVM テンプレートを使用できます。同様の方法で、Simulink サブシステムからシーケンス、予測子、またはスコアボードの UVM コンポーネントを生成できます。
UVM フレームワークを使用して UVM 検証環境を開発する場合、ASIC Testbench を使用して UVM フレームワーク ワークフロー内に SystemVerilog DPI コンポーネントを生成できます。
Simulink モデルから UVM テストベンチを生成することで、UVM 検証を実行します。
詳細については、HDL Verifier™ をご覧ください。
製品使用例および使い方
UVM 検証コンポーネントおよび環境の生成
MATLAB を使用した UVM 検証用の SystemVerilog DPI-C コンポーネントの生成
Simulink を使用した UVM 検証用の SystemVerilog DPI-C コンポーネントの生成
UVM 検証に関するよくある質問
Universal Verification Methodology (UVM)検証は、FPGAおよびASIC設計プロジェクトで用いられる標準化された設計検証手法で、再利用可能な検証コンポーネントにより設計検証の効率を向上させることを目的としてAccellera Systems Initiativeによって開発されました。
UVMはUniversal Verification Methodologyの略です。
UVM 検証の主な目的は、再利用可能な検証コンポーネントにより設計検証の効率を向上させることです。
UVM 検証コンポーネントを手作業で作成・デバッグするには大きな労力が必要で、特に新しいアルゴリズムの実装では負担が大きく、UVM 検証の複雑さが設計チームによる採用の障害となることがあります。
設計チームは、HDL Verifier用のASIC Testbench アドオンを使用して、MATLABコードやSimulinkモデルから直接UVM 検証コンポーネントを生成することで、テストベンチ開発の工数を削減できます。このアドオンはSystemVerilog DPI コンポーネントを自動生成します。
MATLABやSimulinkからUVMのsequence、driver、monitor、scoreboardコンポーネントを生成でき、さらにSimulinkモデルから完全なUVM 検証環境を直接生成することもできます。
生成されたコンポーネントは、UVM 検証のscoreboardにおけるゴールデンリファレンスチェッカーモデルとして、混合信号シミュレーションにおける振る舞いを表すデジタルまたはアナログのコンポーネントモデルとして、またUVM 検証の刺激となるsequenceとして使用できます。
生成されたUVM 検証環境は、Siemens Questa、Cadence Xcelium、または Synopsys VCS で使用できます。
参考: エレクトロニクス