コンテンツにスキップ

機能検証とは

機能検証(Functional Verification)とは、設計した回路が仕様どおりに動くかを確認する作業です。入力を与えて応答を期待値と比較し、仕様のどの条件を調べたかも記録します。

正常な入力で動くだけでは、同時要求や境界条件の不具合は見つかりません。一方、無作為にテストを増やしても仕様の抜けは埋まらないため、検証計画が必要です。

構造と工程の関係
入力と期待値を別の経路で作るDUTモデル比較テスト入力違いを記録対象材料・信号周辺材料
設計対象の応答を、仕様から作った期待値と比較します。モデルの前提と検証条件も確認します。

テストベンチが回路へ刺激を与え、モニターと期待値モデルが結果を比較します。アサーションで応答の順序や時間の条件も確認します。1

RTLの段階で不具合を発見すると、製造前に修正できます。完成品へアプリケーションを走らせるSLT(システムレベルテスト)とは段階と観測方法が異なります。

構造と工程の関係
実行した場面と未確認の条件を分ける要求応答競合確認済み未確認仕様の条件ごとに到達を測る対象材料・信号周辺材料
コードを通ったことと、仕様の場面を試したことは異なります。定義した機能条件の到達を確認します。

仕様から検証項目を作り、テストと期待値、カバレッジを設計します。シミュレーションやエミュレーションを実行し、失敗と未確認の条件を調べます。1

コードカバレッジは回路記述の実行状況、機能カバレッジは指定した仕様条件の到達状況を示します。数値が高くても、設定していない要求までは保証しません。

仕様との対応、比較結果、機能・コードカバレッジ、再現できる入力と乱数種を管理します。

期待値モデルが設計と同じ誤りを持たないようにします。失敗を修正した後は、同じ条件を回帰テストに残し、別の機能への影響も調べます。

複雑な場面を長時間試すほど費用が増えます。仕様に基づく優先順位を決め、形式検証など別の方法で確認できる性質を分担します。

機能検証は何をする工程ですか?

設計した回路が仕様どおりに動くかを確認する作業です。入力を与えて応答を期待値と比較し、仕様のどの条件を調べたかも記録します。

どの段階で行いますか?

仕様から検証項目を作り、テストと期待値、カバレッジを設計します。シミュレーションやエミュレーションを実行し、失敗と未確認の条件を調べます。

何を管理しますか?

仕様との対応、比較結果、機能・コードカバレッジ、再現できる入力と乱数種を管理します。

1件を表示
  1. 1
    機能検証の公式技術資料synopsys.com ・ 2026年10月12日閲覧 ab