PR

複雑なコンピュータ技術をより多くのエンジニアが使えるようにするのがソフトウエアの一つの役目。回路設計でも同じことが言える。今回は,計測・制御デバイスの設計にあたってソフトウエアが果たす役割を解説する。(日経ものづくり編集)

日本ナショナルインスツルメンツ
マーケティング部マネージャ
ジャスティン ハーキンス

 製品開発においては,差別化された新製品をより速く・より低価格で市場投入することが必要だ。そのため,現場で製品の開発,製造,テストに携わるエンジニアには,こうしたニーズに対するプレッシャーが重くのしかかっている。しかも,製品はますます複雑になり,ライフサイクルは短縮している。こうした中,特に組み込みシステムのシミュレーションや設計,設計検証においては,ソフトウエアの持つ柔軟性,多様性が製品のイノベーションを左右するカギとなる。

ソフトウエアが開発サイクルを加速


 過去20年の間に,アナログ回路設計者は,マニュアルで計算し手書きで回路図を描くという方法から,テキストベースの回路シミュレーションツールの使用に移行し,やがて,直観的でグラフィカルな回路シミュレーションツールを駆使してプロトタイプ作成前にソフトウエア環境で設計を検証できるようになった。

 組み込みシステム設計ではどうだろうか---。その性能の向上とコストの低下に伴い,DSPや汎用プロセッサ,FPGAなどのプログラマブルなデバイスは,カスタム設計に取って代わるものとなった。これらのデバイスを使用することで,ソフトウエアで製品機能を定義したり設計したりできる。例えば,汎用マイクロプロセッサを搭載した携帯電話を見てみよう。ユーザーが画面上で見るGUIは主にソフトウエアによって定義されており,電話としてだけでなく,カメラ,スケジューラ,インターネット端末,ゲーム機,更にはカラオケ機としても使えるものまである。このように,ソフトウエアが製品開発の柔軟性,多様性を飛躍的に向上させ,製品開発サイクルを加速するキーとなる。

ユーザーに代わって複雑な処理をこなす


 エンジニアが製品開発のイノベーションに対応していく上で,ソフトウエアに求められる条件は二つある。ひとつは,技術進歩に伴って設定や実行手続きが複雑化する高度な機能を,汎用的で使いやすい形にすることだ。コンピュータのOSを考えると分かりやすい。1980年代のパソコンユーザーは,コンピュータがどのように機能するのか,どのファイルが起動時に実行されていて,どのくらいのベースメモリがどのプログラムで割り当てられているかなどを理解していなければならなかった。しかし,現在では,OSがそうした面倒な処理や設定をこなし,ファイル構成を視覚的に操作できる。従って,ユーザーは下位レベルで何が起こっているのか知る必要がなく,本来の仕事に集中できる*1。つまり,消費者が消費財の製造業者に求めているのはこうした「使いやすさ」であり,設計で新しいテクノロジを採用するエンジニアにとってこうした概念は大変重要となる。

*1 このように,コンピュータの機能をユーザーにより分かりやすい形式にすることを「抽象化」と呼ぶ。