Last Update 2019/04/03

SystemVerilogでLSI機能検証プロセスを徹底改善
ベリフィケーション・メソドロジ・マニュアル

Janick Bergeron ほか著
STARC/ARM/Synopsys 監訳
B5変型判 456ページ
定価4,180円(税込)
JAN9784789836159
2006年4月1日発行
[絶版2012.2.16] ベリフィケーション・メソドロジ・マニュアル
大変恐縮ですが,こちらの商品は品切れ絶版となりました.

 本書は,ディジタルLSI開発の機能検証に関する指針をまとめたノウハウ集です.検証計画やテストベンチ,アサーション,カバレッジ,システム・レベル検証の具体的なルールや推奨事項について解説しています.SoC(system on a chip)やASICの開発に携わる設計エンジニア,検証エンジニア,システム・アーキテクト,設計マネージャにとって必携の解説書です.

 [原題:Verification Methodology Manual for SystemVerilog.本書はSTARC(半導体理工学研究センター)IP技術開発室が開発しているIP機能検証ガイドを補完するもので,SystemVerilogを用いて検証環境構築する際の推奨参考書である]

目次

はじめに
 本書の構成
 本書の利用方法
 さらに詳細な情報
 謝辞

第1章 イントロダクション
 1-1 検証生産性
  1-1-1 生産性の向上
 1-2 検証コンポーネント
  1-2-1 インターフェース・ベース設計
 1-3 検証容易化設計
  1-3-1 アサーションの利点
 1-4 メソドロジの実装
  1-4-1 メソドロジの採用
  1-4-2 ガイドライン
  1-4-3 基本的なコーディングに関するガイドライン
  1-4-4 用語の定義

第2章 検証計画
 2-1 計画プロセス
  2-1-1 機能検証に関する要求項目
  2-1-2 検証環境に関する要求項目
  2-1-3 検証の実装計画
 2-2 レスポンス・チェック
  2-2-1 組み込みモニタ
  2-2-2 アサーション
  2-2-3 精度
  2-2-4 スコアボーディング
  2-2-5 リファレンス・モデル
  2-2-6 オフライン・チェック
 2-3 まとめ


第3章 アサーション
 3-1 アサーションの規定
  3-1-1 アサーション構文の手引き
 3-2 内部DUT信号に適用されるアサーション
 3-3 外部インターフェースに適用されるアサーション
 3-4 アサーションのコーディングに関するガイドライン
  3-4-1 カバレッジ・プロパティ
 3-5 再利用可能なアサーション・ベースのチェッカ
  3-5-1 単純チェッカ
  3-5-2 アサーション・ベース検証IP
  3-5-3 アサーション・ベースIPのアーキテクチャ
  3-5-4 ドキュメントおよびリリース項目
 3-6 アサーションの認証
 3-7 まとめ
  OOPプライマ:バーチャル・メソッド

第4章 テストベンチ・インフラストラクチャ
 4-1 テストベンチ・アーキテクチャ
  4-1-1 信号レイヤ
  4-1-2 コマンド・レイヤ
  4-1-3 機能レイヤ
  4-1-4 シナリオ・レイヤ
  4-1-5 テスト・レイヤ
 4-2 シミュレーション制御
 4-3 データとトランザクション
  4-3-1 クラス・プロパティ/データ・メンバ
  4-3-2 メソッド
  4-3-3 制約
 4-4 トランザクタ
  4-4-1 物理レベルのインターフェース
 4-5 トランザクション・レベルのインターフェース
  4-5-1 完了およびレスポンス・モデル
  4-5-2 イン・オーダ・アトミック実行モデル
  4-5-3 アウト・オブ・オーダ・アトミック実行モデル
  4-5-4 非アトミック・トランザクションの実行
  4-5-5 受動型のレスポンス
  4-5-6 反応型のレスポンス
 4-6 タイミング・インターフェース
 4-7 コールバック・メソッド
 4-8 アドホック・テストベンチ
 4-9 既存のバス・ファンクショナル・モデル
  4-9-1 VMM準拠性のアップグレード
  4-9-2 VMM準拠インターフェース
 4-10 まとめ

第5章 スティミュラスとレスポンス
 5-1 スティミュラスの生成
  5-1-1 ランダム・スティミュラス
  5-1-2 ダイレクト・スティミュラス
  5-1-3 例外の生成
  5-1-4 組み込みスティミュラス
 5-2 ランダム生成の制御
  5-2-1 アトミック生成
  5-2-2 シナリオ生成
  5-2-3 マルチ・ストリームの生成
  5-2-4 状態依存の生成
  5-2-5 どのようなタイプのジェネレータを使用するべきか
 5-3 セルフ・チェック構造体
  5-3-1 スコアボーディング
  5-3-2 トランザクタとの統合
  5-3-3 例外処理
 5-4 まとめ
  OOPプライマ:ファクトリ・パターン

第6章 カバレッジ・ドリブン検証
 6-1 カバレッジ・メトリクス
 6-2 カバレッジ・モデル
  6-2-1 構造カバレッジのモデリング
  6-2-2 機能カバレッジのモデリング
  6-2-3 機能カバレッジ解析
  6-2-4 カバレッジの等級付け
 6-3 機能カバレッジの実装
  6-3-1 カバレッジ・グループ
  6-3-2 カバレッジ・プロパティ
 6-4 フィードバック・メカニズム
 6-5 まとめ

第7章 フォーマル検証ツールに対応するアサーション
 7-1 モデル・チェッキングとアサーション
 7-2 データに適用されるアサーション
  7-2-1 ローカル変数を使用しない場合
  7-2-2 ローカル変数を使用する場合
  7-2-3 フォーマル検証ツールとの互換性
 7-3 まとめ

第8章 システム・レベル検証
 8-1 拡張可能な検証コンポーネント
  8-1-1 XVCアーキテクチャ
  8-1-2 XVCの実装
  8-1-3 アクションの実装
 8-2 XVCマネージャ
  8-2-1 定義済みXVCマネージャ
 8-3 システム・レベル検証環境
  8-3-1 ブロック相互接続インフラの検証
  8-3-2 基本的な統合検証
  8-3-3 低位システムの機能検証
  8-3-4 システムの性能検証
 8-4 トランザクション・レベル・モデルの検証
  8-4-1 トランザクション・レベルのインターフェース
 8-5 ハードウェア支援の検証
  8-5-1 周辺テスト・ブロックの構造
 8-6 まとめ

第9章 プロセッサ統合検証
 9-1 ソフトウェア・テスト環境
  9-1-1 基本的なソフトウェア統合検証
  9-1-2 完全なシステム検証環境
 9-2 ソフトウェア・テストの構造
 9-3 テスト・アクション
  9-3-1 コンパイル・プロセス
  9-3-2 テストの実行
  9-3-3 ブート・ストラップ
 9-4 まとめ

付録A VMM標準ライブラリの仕様
 A-1 VMM_VERSION
 A-2 VMM_ENV
 A-3 VMM_LOG
  A-3-1 vmm_log_format
  A-3-2 vmm_log_callbacks
 A-4 VMM_DATA
 A-5 VMM_CHANNEL
 A-6 VMM_BROADCAST
 A-7 VMM_SCHEDULER
  A-7-1 vmm_scheduler_election
 A-8 VMM_NOTIFY
  A-8-1 vmm_notification
 A-9 VMM_XACTOR
  A-9-1 vmm_xactor_callbacks
 A-10 VMM_ATOMIC_GEN
  A-10-1 (class_name)_atomic_gen_callbacks
 A-11 VMM_SCENARIO_GEN
  A-11-1 (class_name)_scenario
  A-11-2 (class_name)_atomic_scenario
  A-11-3 (class_name)_scenario_election
  A-11-4 (class_name)_scenario_gen_callbacks

付録B VMMチェッカ・ライブラリ
 B-1 OVL等価チェッカ(SVL)
 B-2 高度なチェッカ

付録C XVC標準ライブラリ仕様
 C-1 XVC_MANAGER
 C-2 XVC_XACTOR
 C-3 XVC_ACTION
 C-4 VMM_XVC_MANAGER
  C-4-1 通知
  C-4-2 ファイル構造
  C-4-3 コマンド

付録D ソフトウェア・テスト・フレームワーク
 D-1 基本タイプ
 D-2 システム記述子
  D-2-1 周辺デバイス記述子
  D-2-2 割り込み記述子
  D-2-3 DMAチャネル記述子
 D-3 テスト・アクション
 D-4 低レベル・サービス
  D-4-1 キャッシュ・ロック・ダウン
  D-4-2 割り込みコントローラ
  D-4-3 ソフトウェアとXVC間の接続性

索引