組み込みソフトウェアのデバッグにおいて、プログラムの動作を検証するためには、最終的にマイコンなどハードウェアからの出力信号を計測することになる。つまり、ソフトウェアエンジニアといえども、信号の計測技術が求められる。
しかも最近では、開発対象はますます複雑化している。ボード上を流れる信号はアナログとデジタルの両方が混在し、チップ間ではシリアルおよびパラレルの複数のバスが配線され、複数のプロトコルで通信が行われている。ソフトウェアの動作を検証するためには、これらシステム全体の動作を計測することが必要である。
出力信号を計測する機器としてはオシロスコープが一般的だ。しかし、オシロスコープで計測できるのはあくまでも信号の電圧レベルであり、動作検証のためには十分とはいえない。その理由は、バスを流れるデータのコードを知ることができないからである。
設計意図通りにコードがやり取りされているかどうかを検証するためには、後処理でデコードを行うか、手動でコード変換を行うなど、時間のかかる処理が必要である。最近では、バスはより複雑化し、エンジニアの数も十分ではない現状で、開発期間の短縮が求められており、より効率的な開発手法必要になっている。
このようなニーズのために、シリアルバス通信を利用する組み込み開発などの分野向けに、オシロスコープよりもさらに効率的なデバッグを行うことができる「ミックスドシグナルオシロスコープ」(MSO)がある。オシロスコープにロジックアナライザの基本機能を付加したMSOは、オシロスコープでありながらシリアルとパラレル両方のプロトコルのデコードを行うことができる。
MSOは米Agilent Technologiesや米Tektronixなど、複数の計測器メーカからさまざまな機種が発売されている。今回はオシロスコープにおいてトップシェアを誇る米Tektronixの日本法人である日本テクトロニクスの稲垣正一郎氏に、MSOを使用したデバッグ方法とはどのようなものなのかについて語ってもらった。
日本テクトロニクスのテクニカルサポートセンターのセンター長である稲垣正一郎氏。手にしているオシロスコープは、同社のMSOである「MSO4000シリーズ」。ちなみに稲垣氏は、本誌連載記事「組み込みエンジニア必須のスキル - オシロの基本を身に着ける」の著者である |