Code Coverage(Statement, Branch, Expression, Condition, Path, FSM), Toggle Coverage, and Functional Coverage (OSVVM) + New UCIS-compatible Aldec Coverage Database

Category : アサーションおよびカバレッジ・ツール

コード・カバレッジ(ステートメント/分岐カバレッジ、式/条件カバレッジ、パス)とカバレッジビューワ

コード・カバレッジは検証プロセスを補助するデバッギング・ツールです。Riviera-PROとActive-HDLでは次のコード・カバレッジ・ツールでソースコードを検証することができます。

  • ステートメント/分岐カバレッジ:ステートメント・カバレッジは各HDLステートメントの実行の分岐を表示します(この情報からデザインのどの部分が検証済みでどこが未検証かが分かります。またデッド・コードの発見にも役立ちます)。分岐カバレッジはif文やcase文の分岐やVHDLの条件信号割当ステートメントを収集します。
  • 式/条件カバレッジ:式カバレッジは論理式を因数分解してシミュレーション中に監視するツールです(式はすべての場合が実行された場合に完全にカバーされたと言えます)。条件カバレッジ・データは式カバレッジから生成されるデータ統計のセットです(VHDLの条件文で使われる式のみ。例えばif, while, 条件信号割当ステートメントなど)。
  • パス・カバレッジ(Active-HDLエキスパート・エディションとRiviera-PRO全エディション):パス・カバレッジはプログラムのパスの実行に関する情報を集め、あり得るプログラム・シーケンスがすべてテストベンチで検証されたかどうか解析します(現在はVHDLのみで利用可能)。
  • FSM カバレッジ: FSM カバレッジにより、ユーザーは未訪問のステートと未評価の遷移を識別できます。 Riviera-PRO は、コードから有限ステート マシンを自動的に認識しません。 カバレッジ統計を取得するには、専用のプラグマをコード内に埋め込む必要があります。
  • アサーション カバレッジ: アサーション カバレッジは、指定されたプロパティがどの程度カバーされているかを定義する指標です。 このタイプのファンクショナル・カバレッジは、時間の経過とともにデザインの動作を検証するために使用されます ((シナリオの指定と、サポートされている言語のいずれかによる実行可能な仕様へのコーディングが必要です))。

UCIS互換・アルデックのカバレッジ・データベース:ACDB(Aldec Coverage DataBase)は、色々なタイプのカバレッジ・データに共通のフォーマットです。ACDBはアルデックがAccelleraのUCIS統一カバレッジ・データベース要求をRiviera-PROの機能として実装したものです。ACDBには、コード・カバレッジ(式/分岐カバレッジ)、アサーション・カバレッジ、およびSystemVerilog Covergroupカバレッジのデータが保存されます。複数のACDBファイルを合体させて1つのデータベースにして、異なるシミュレーション・セッション中に収集された統計データを解析することもできます。カバレッジ・データのユーザ定義解析用にC言語のAPIが用意されています(アドホックのカバレッジ解析プロシージャや完全カスタマイズのGUIやレポートの作成、外部ツールからサードパーティのフォーマットのカバレッジ・データの取り込みなど)。

Ask Us a Question
x
Ask Us a Question
x
Captcha ImageReload Captcha
Incorrect data entered.
Thank you! Your question has been submitted. Please allow 1-3 business days for someone to respond to your question.
Internal error occurred. Your question was not submitted. Please contact us using Feedback form.
We use cookies to ensure we give you the best user experience and to provide you with content we believe will be of relevance to you. If you continue to use our site, you consent to our use of cookies. A detailed overview on the use of cookies and other website information is located in our Privacy Policy.