ARM基板向けのプログラムをシミュレーションで動作確認 ―― Interface 2009年5月号付属基板を一足先に体験
Interface誌2009年5月号には,ARM7コアを内蔵したCPU基板が付属する.ここでは,周辺機能まで組み込んだ同基板のCPUシミュレータを紹介する.CoWare社のシミュレーション環境「Virtual Platform Analyzer(VPA)」に同基板用のGUI画面を組み込むことにより,基板上のLEDが点滅する様子を画面上で確認できる.一足先に付属基板を体験したい方や,先にプログラムを作成しておきたい方にお勧めだ.(編集部)
1.実機がなくてもシミュレータでプログラムを動かせる
ここで紹介するシミュレータは,プロセッサの内部にあるプログラム・カウンタやレジスタの振る舞いを,使い慣れたパソコン上に仮想的に実現したものです.実際のプロセッサの上でプログラムを動作させる場合,簡単には内部のカウンタやレジスタの値を観察することはできません.しかし,シミュレータを用いたプログラムの実行では,それらを比較的簡単に観察することができます.従って,シミュレータの上でプログラムを動かすことで,実際のプロセッサ上でプログラムを動かすための準備やデバッグを効率良く行えます.
しかも,今回扱うシミュレータでは,プロセッサのもつ機能の動作だけではなく,付属基板に付いているLEDや,入出力の動作までもシミュレーションすることができます.このシミュレータを使うことで,外部の入出力を利用するプログラムの実行の様子を観察できます.
実機がないから面白くないなんて言わずに,一度シミュレータでのプログラムの動作を試してみてください.
●シミュレータの構成
付属基板のシミュレータを構成するツールとその関係を図1に示します.
今回使うシミュレータの中心は,Virtual Platform Analyzer(以下VPA)というグラフィカルなユーザ・インターフェースを持つシミュレーション環境です.VPAは,シミュレーションの実行制御やパラメータの指定,およびシミュレーション結果の表示を行うことができます.シミュレーションそのものは,VPAから呼び出されるシミュレータによって実行されます.
また,VPAは,シミュレーション結果による状態変化をほかのプログラムから取り扱える特殊なAPIを備えています.今回はこの機能を使い,付属基板上のLEDの動作の可視化やデータ入出力の操作を実現しています.