正確でわかりやすいSystemCの入門書 ――『A SystemC Primer』
正確でわかりやすいSystemCの入門書
J. Bhasker 著
Star Galaxy Publishing 刊
ISBN:0-9650391-8-8
23.5×18.2cm
268ページ
69.95ドル(Amazon.comの価格)
2002年6月
「SystemCはC++ベースだから,オブジェクト指向プログラミングを理解していないと使いこなせないのではないか?」と,お悩みの貴兄のための入門書が出版されました.それが『A SystemC Primer』です.
著者のJ. Bhasker氏は,米国AT&T社,米国Cadence Design Systems社などでEDA,特にHDL(ハードウェア記述言語)の研究を行っていた専門家です.現在でもIEEE 1076.6(VHDL RTL合成サブセット)や IEEE 1364.1(Verilog HDL RTL合成サブセット)の議長として,標準化に貢献しています.著者の書籍は,初心者/学生向けとして定評があります.本書は,設計言語の入門シリーズの一環として執筆されたようです.
本書は,SystemCの公式の言語リファレンス・マニュアルが発行されていない現状(2002年9月3日現在)において,もっともていねいに,かつ,わかりやすく,基本的なハードウェア要素(例えば,組み合わせ回路や順序回路など)をSystemCで記述する際のガイドラインを示してくれています.データ型と利用できるオペレータについては,言語リファレンス・マニュアル並みに正確に,かつ,わかりやすくまとめてあります.また,テストベンチの書きかたやシミュレーション実行方法,結果の確認方法など,実際にSystemCを使ってみるために必要な情報が豊富に書かれています.
本書では,設計対象の回路図やソース・コードを数多く記載しています.そのため,Verilog HDLやVHDLといったハードウェア記述言語の知識のあるハードウェア技術者であれば,難なくSystemCの基礎を学べます.また,ソフトウェア技術者の場合,たとえハードウェアの知識がなくても,オブジェクト指向プログラミングとC++の知識だけで容易にSystemCを学ぶことができます.
技術系洋書としては手ごろな価格です.また,工学系大学の授業などで本書を利用できるように,各章の最後に演習問題が記載してあります.ただし,回答例は記述されていません.せめて,数多く記載されている記述例のソース・コードをインターネット経由でダウンロードする方法を提供してほしいものです(2002年9月3日現在).
本書はSystemCの基礎を知るには非常に良い書籍と言えますが,次のような点では不満が残ります.
まず,大規模なシステム全体をモデリングするうえでの問題点や,実作業において起こりうる問題とその解決方法といった実用的な記述がほとんどありません.
また,SystemCを使ったハードウェア記述(RTL記述)に焦点を置いて解説されており,SystemCがもっとも強力な武器となる高位の記述/モデリング方法については,たった一つの章を割いて説明しているだけです.高位のモデリングについては,別の書籍(例えば『System Design with SystemC』など)で学習する必要があるでしょう.
本書を読み通すと,C++を知らなくても基本的なSystemCのしくみが理解できます.しかし,C++を学習したうえで本書を読むと,いかにSystemCがC++をうまく利用して構築されているのかがわかるはずです.著者も『C++ Primer(Stanley B. Lippman, Josee Lajoie著,Addison Wesley Publishing Company刊)』などの入門書を読むことを勧めています(翻訳本としてアスキーから『C++ Primer 改訂3版』が出版されている).ハードウェア技術者のみなさんも,ぜひC++の基礎を学習してからSystemCの真髄をたんのうしていただければと思います.
河原林 政道
米国NEC Electronics社