SystemVerilogの検証機能を,例題を使ってわかりやすく説明した入門書 ――『SystemVerilog for Verification: A Guide to Learning the Testbench Language Features』

宮下晴信

tag: 組み込み

書評 2006年10月12日

SystemVerilogの検証機能を,例題を使ってわかりやすく説明した入門書

f1.jpg

Chris Spear 著
Springer 刊
ISBN:0-387-27036-1
16.2cm×24.2cm
301ページ
125ドル
2006年8月



 SystemVerilogは,2005年11月にIEEE1800として標準化されました.そして今年(2006年)から,各EDA(electronic design automation)ベンダはSystemVerilogを本格的にサポートし始めました.とくにSystemVerilogの検証機能を積極的に利用していくには,シミュレータがその機能をより多くサポートしていなければなりません.

 一方,ユーザとしてはSystemVerilogの検証機能の詳細について知りたいところですが,これまではEDAベンダのセミナやトレーニングを通して得られる情報がほとんどでした.今回紹介する「SystemVerilog for Verification: A Guide to Learning the Testbench Language Features」は,書籍という形で出版された最初の検証の入門書です.筆者は,米国Synopsys社の検証コンサルタントであるChris Spear氏です.

 Spear氏は,個人のWebサイト(http://www.chris.spear.net/)でVerilog HDLやPLI(Programming Language Interface),OpenVeraなどの情報を提供しています.本書についても,このWebサイトで概要や目次,エラッタ(正誤表)を掲載しています.また,Podcast(インターネット・ラジオの番組コンテンツ)で,本書に関するインタビューに答えています(最近は,文字や絵だけでなく,音声による情報が提供されているのがあたりまえになってきたのだろうか...).

 さて,本題に入ります.

 本書の最初の章では,検証の全体像について説明しています.Spear氏はSynopsys社に所属しているので,基本的なスタンスは階層化したテストベンチを構築するというものです.階層化したテストベンチの構築については,同社のJanick Bergeron氏の「Writing Testbenches Using SystemVerilog」や「Verification Methodology Manual for SystemVerilog(VMM)」で述べられているものと同じ考えです.ただし,その詳細については本書では述べられていませんので,前記の2冊を参照してください.

 本書では,次のようなSystemVerilogの検証機能について説明しています.

  • クラス
  • インターフェース
  • 制約付きランダム・パターン生成
  • スレッドとプロセス間通信
  • 機能カバレッジ

 各検証機能の説明は,非常に多くの例題を使っています.その数は300以上です.一部の例題は,その実行結果もあり,実行結果は例題の内容の理解を助けてくれます.なお,アサーション(SVA:SystemVerilog Assertion)については概要程度で,詳細な説明はありません.

 本書で注目したい点は,クラスとインターフェースについて,基本的な内容とより高度な使いかたを分けて説明しているところです.最初は基本的な内容を利用し,その機能が理解できたら,より高度な使いかたを学ぶということができます.

 本書は,単に読むだけでなく,実際に例題を実行してみることをお勧めします.例題は,Synopsys社のVCSによって動作が確認されていますが,他社のシミュレータではきちんと動作しないかもしれません.そのときは,ぜひ,動作するようにシミュレータ・ベンダに問い合わせてみましょう!(ただし,けっこうコードがまちがっていることもあるので,上記のWebサイトのエラッタを確認しておくべし!)


宮下晴信
富士ゼロックス(株)

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日