GAIO CLUB

2003年12月02日

評価ボードと仮想デバイスを連動した「ハイブリッド評価ボード」

GAIO CLUB 特集
GAIO CLUB【2003/12月号】
評価ボードと仮想デバイスを連動した「ハイブリッド評価ボード」
実機完成待ちを無くし潜在バグをも発見できる新世代開発環境
FPGAとの組み合わせでアプリソフトを視野に入れたASIC設計

ガイオ「デザインキットシリーズ」

  • ガイオでは、PCI接続による評価ボードとクロス開発ツール、RTOSをパッケージにした製品「デザインキット」を発売しており、ご好評頂いております。組み込み最新プロセッサであるARM9とSH4をサポートしたバージョンを既に出荷しております。

評価ボードに周辺デバイスを追加接続する従来の開発方法

開発スタート時や開発の初期段階での検討では、この「デザインキット」で開発が可能ですが、製品を想定した場合には、製品固有のペリフェラルを含めたシステム動作が必要であり、ドーターカードコネクタやエクステンションバスに、別途作成した周辺デバイスを含むボードを追加する必要があります。
  • だたし、この周辺デバイスハードは製品の仕様が決定された後に製作をスタートするため、それらが完成するまでは、周辺デバイスを含んだシステム設計を行うことは出来ません。ソフト開発者にとっては、無駄な待ち時間となってしまいます。

周辺デバイスを仮想化ハード待ちのないソフト開発

そこで、MPUなどのプラットホームとなるハードウエアは評価ボード上のものを使用し、製品毎に新規に作成しなければならない周辺デバイスはPC上に仮想的なモデルを作成して、これらを連動させれば、デバイスの完成を待たずして、全体のシステム動作を実現することができます。これは、「ハイブリッド型」とも言える新しい発想の評価システムです。

仮想デバイスは、ソフトウエアで構築するものであり、ハードウエアの試作期間やハードウエアが安定して動作するまでの時間と比較すれば、非常に短期間で構築することが可能です。 これにより、ソフトウエア技術者にとっての無駄な「ハード完成待ち」の時間を可能な限り無くし、システム設計を早期に進めることができます。

PC上の仮想デバイスモデルとは

仮想デバイスの作成とは、実際のハードウエアデバイスを試作する代わりに、PC上にソフトウエアで、ハードウエアデバイスと同じ振る舞いをするモデルを製作すると言うことです。
  • 例えば、LCD表示パネルであれば、これに接続されるLCDコントローラチップの動作をソフトウエア化しておき、MPUから描画コマンドを仮想デバイスに送ることで、実際のLCDと同じ動作を、Windows上のウインドウに再現できる事になります。

ハイブリッド評価システム「ソリッドシミュレータ」

このような評価システムとして、ガイオでは「ソリッドシミュレータ」を製品化しています。実ターゲットとなるMPUボードと、PC上の仮想デバイスモデルを連動させる「ハイブリッドシステム」です。

ハイブリッド評価システムは、前述したLCDデバイスなどの完成待ち時間を有効に利用出来ることも1つのメリットですが、その他でも、例えば、大型プリンタ・複合機などのように、メカ、ハードウエアを揃えることが難しい場合、実際のメカは使用せず、PCだけで仮想的に開発することも可能です。

シミュレータとしての側面も合わせ持つ開発システム

組み込みソフトの不具合となりがちな「例外条件」に対するソフトウエアの動作をデバッグするためには、周辺デバイスに、その例外的な動作を再現する必要があります。このハイブリッド評価システムでは、複雑なメカ動作などをソフトウエアで実装できるため、例外的な条件、故障状態の再現などは、「動作シナリオ」と呼ばれるデータをセットするだけで、システムに容易に発生させることができます。

実際のメカを用いたデバッグでは見つけることが難しい潜在的なバグを、容易に発見することが可能になります。

アプリソフトを視野に入れたFPGAによるASIC設計評価

最近の組み込みマイコンは、SoC化が進んでおり、マイコンコアとASICを1チップ化したシステムLSIを採用する組み込み機器が増えてきています。システムLSIやASICは、チップ製造に膨大なコストがかかるため、試作は最小限にとどめることが必須です。チップをおこす前に、製品を想定したマイコンとのシステム動作を検証してからチップ製造ができれば、失敗のない確実な製品化が可能になります。

通常のASIC開発の初期段階では、高価な「ハードウエアエミュレータ」を使用して、RTLレベルの設計情報をエミュレータで動作検証する事が行われています。しかしながら、最近は動作実績のあるハードウエアIPが数多く流通しており、AMBAなど標準的なバスを通じて、様々な機能のIPが容易につながる様になっており、「ハードウエアエミュレータ」を使って検証しなければならない局面は少なくなっています。それよりも、製品を想定した場合に、システムが正しく動作するかなど、デバイスドライバなどのソフトウエア動作を含めた検証の方が重要になってきています。

開発早期の段階でシステム検証ASICデザインキット

ガイオの「ASICデザインキット」は、ARM9をコアとするシステムLSI開発のためのキットです。ARM9のコアのみを実装した専用チップを搭載しており、コア内部で使用される「AMBA」バスをチップの外に取り出しています。このAMBAを、メザニンボード上に搭載された大容量FPGAに直結することが可能で、システムLSI内部とほぼ同じ構成、接続を評価ボード上で行うことができます。

このASICデザインキットは、PC上の仮想デバイスと連動動作することも可能で、ASIC・外部周辺回路など、総合的なシステム動作検証を、開発の早期段階で行うことができます。

ハイブリッド評価ボードはこれからの開発の強力な武器に

評価ボードにICEをかぶせておけば、何でも開発できる時代は過去のものになりつつあります。SoCを前提としたモバイル機器など、実際のターゲットハードウエアが揃わない段階でのソフトウエア開発、システム動作検証を余儀なくされる開発も、珍しいことでな無くなっています。

ハイブリッド評価ボードは、このような開発を支える、強力なソリューションです。

従来の開発手法を見直し、これからの開発に対応する開発手法への転換を考えてみませんか?

人気のコラム

最新のコラム