ESECリポート(その2):開発スタイルの進化を実感

 昨日に引き続き、第10回 組み込みシステム開発技術展(ESEC)のリポートをお届けする。今回も会場内で気になった展示物を紹介したい。

アプリ制御も行うUIマネージャー

 まずは、富士通の組み込み機器用ユーザーインタフェース実行基盤「Inspirium UIマネージャー V1.0」から(写真1)。今回のESECに合わせて発表された新製品で、アプリケーションのユーザーインタフェースとロジックの分離と並列開発を可能にする。この手の製品は数多くあるが、複数アプリケーション実行時の調停・制御が行えることがこの製品の特徴となっている。しかも、画面だけでなく音声も制御できる。

写真1:Inspirium UIマネージャー V1.0

 例えば、カーナビの経路案内アプリと音楽再生アプリをそれぞれ個別に開発した場合、経路案内を行う際に再生中の音楽を一時停止し、案内終了後に音楽再生を再開するといった割り込み制御をUIマネージャー側で行える。アプリケーション側に割り込み処理を実装する必要がなくなるので、ロジックを簡素化することができるそうだ。

 ちなみに、UIの定義はXMLで記述するため、動作環境を選ばすに利用することができる。スキンを置き換えて、見た目を変更するといったカスタマイズも容易だ。

組み込みにも仮想化の波

写真2:VirtualLogix VLX

 写真2は、Intelのブースで展示されていたVirtualLogixの「VLX」のデモの様子。VLXは組み込み用途に特化した仮想化ソフトウェアだ。

 例えば携帯電話なら、通話制御はリアルタイムOSで、ゲームなどのコンテンツはLinuxで処理するといったことが1つのCPUで可能になる。また、ルータやスイッチなどの通信機器の場合、例えば、複数のOSを混在させることで、1台の機器でさまざまなプロトコルに対応させられる。

 CPUコアや周辺デバイスは1つのゲストOSで占有することも、複数のゲストOSで共有することもできる。デバイスを占有する場合はゲストOSのドライバで直接制御することができ、共有する場合は1つのゲストOSのドライバで実際の制御を行い、他のゲストOSからはVLXが提供するPeer Driverを介して利用するかたち。Peer Driverでデバイスを抽象化することができるため、本来そのOSが対応していないデバイスも利用可能になる。なお、デュアルコアXeon×2個のデモ機では、VxWorks 4つ(それぞれシングルコアで動作)とLinux 1つ(4コアで動作)が実行されていた。仮想化によるオーバーヘッドはCPU使用率で2~3%とかなり低いようだ。

最新ARM11搭載のアルマジロ

写真3:Armadillo-500(ベースボード付き)

 Linux対応ARM搭載CPUボード、Armadilloでお馴染みのアットマークテクノは、新製品「Armadillo-500」を展示(写真3)。この製品では、CPUにベクタFPUやMPEG4エンコーダ、ビデオ出力、オーディオインタフェースなどを内蔵する最新のFreescale i.MX31L(ARM11コア、400MHz)を搭載することで、従来よりも適応分野が拡大されている。メモリは64MBで、FlashメモリがCPUボートに16MB、ベースボートに256MBという構成である。

 なお、アットマークテクノはLinux版の開発セット(本体+ベースボード+開発環境)を提供しているが、Windows Embedded CE 6.0版の開発セットも横河ディジタルコンピュータから提供されている。Windows Embedded CE 6.0に対応するARM11搭載ボードは、いまのところこれだけとのことである。

軽量高画質な動画コーデック

写真4:MobiclipとH.264の比較デモ

 フランスに本社のあるACTIMAGINEは、組み込みに適した高圧縮高画質の動画コーデック「Mobiclip」を展示。同じスペックのPC(1.6GHz/Celeron M搭載機)2台でH.264とMobiclipのそれぞれで圧縮したフルHDサイズ(1920x1080)の動画を再生するデモを行っていた(写真4)。H.264の動画(ビットレート8Mbps)がCPUを使い切ってコマ落ちしている一方で、Mobiclipの動画(6Mbps)のCPU使用率は40~60%程度。コマ落ちもなく滑らかな再生が可能。

 Mobiclipは、海外ではNokiaやSonyErricsonの携帯電話に向けた動画配信で使用されているいるほか、国内でもNintendo DSタイトル(「ファイナルファンタジーIII」や「しゃべる!DSお料理ナビ」など)で使われているそうだ。