みんながシステム設計を気にする理由 ――システムLSI開発の視点から
●「システム」ということばに惑わされるな!
相棒は通信・伝送装置(例えばSONET,WDM機器)の組み込みソフトウェア開発者です.彼にとってのシステムとは通信・伝送装置であり,ハードウェアとは数枚~数十枚のプリント基板で構成されたものです.そして,そのプリント基板には何十ものLSIが実装されています.彼にとってLSIは単なる部品です.彼のチームが開発するソフトウェアはリアルタイムOSの上で動作し,コード量は数十万ステップに及びます.EDAベンダの示すコデザイン・ツールに入力する実行可能な仕様記述を見て,彼は自分たちの仕様とあまりにもかけ離れたしろものであることを理解しました.その仕様記述は,彼らの最終成果物であるプログラムとほとんど変わらないレベルのものだったのです(図1).
彼は,日ごろ,約束どおりの仕様でしあがってこないハードウェアのために苦労していました.そのため,実際のハードウェアの設計データを使ってソフトウェア・プログラムの動作を確認できる(いわゆるハードウェア・ソフトウェア協調検証)という点に興味がありました.ところが,シミュレーションの実行速度がソフトウェア開発用のシミュレータと比べて3けた以上遅いということがわかりました.今まで数分で終わっていたシミュレーションに,何日もかかるというのではお話しになりません.加えてソフトウェア開発ツールと比べると,導入コストがべらぼうに高い(数百万~数千万円)という問題があることもわかってきました.
〔図1〕話がかみ合わないEDAベンダとソフトウェア技術者
システムの定義はまちまち.EDAベンダにとってのシステムはシステムLSI.でも,ソフトウェア技術者にとっては,あるときは伝送装置,またあるときはもっと巨大なネットワークそのものだったりする.