カーナビゲーション表示だけではなく、ダッシュボードのメーター類の表示にもデジタルのグラフィックス表示ができる時代になってきた。カーナビゲーションのスクリーンに描く映像処理や画像処理をきれいに速く映すことができると安全機能をより一層高めることができる。これまではグラフィックス性能やイメージ処理性能などが不足していたため、白線検出警告やナイトビジョンなどのドライバ支援機能がやや物足りなかった。
メーターもデジタル、しかも動きはスムーズ
加えて、メーター類も従来の物理的なアナログメーターから仮想的なグラフィック表示に換えることができるようになってきた(図1)。CGを駆使してダッシュボードのメーターをグラフィックス表示できれば、そのパネルに表示させる情報は極めて豊富になる。
こういったダッシュボードやカーナビのスクリーンに映し出すグラフィックス映像を高精細にして実際の映像のように見せる技術の要はグラフィックスチップである。しかしグラフィックスのレンダリングやシェーディングだけでは表現力には乏しい。グラフィックス処理だけではなく、映像処理やビデオコーデック、スムーズなブラウザ画面の切り替えができるプロセッサなども集積しておけば、表現豊かな映像・画像を体験できるようになる。こんなチップをNVIDIAが「Tegra 2」として販売している。携帯端末を狙ったこのチップは実は、クルマのカーナビやダッシュボード表示にも応用しようとしている。
Tegra 2には、ブラウジングをスムーズに素早く行うためのデュアルコアの「ARM Cortex-A9」と、グラフィックスプロセッサ(GPU)のGeForceコア、HDビデオのデコーダー・エンコーダコア、イメージプロセッサ(ISP)コア、オーディオ処理プロセッサ、そしてチップ全体の電源を制御して消費電力を下げたりIC全体を制御したりするためのARM7コア、の合計8個のコアが集積されている(図2)。
このTegra 2でいえば、GPUのGeForceコアがカーナビの地図やダッシュボード周りのグラフィックス映像を担当し、ビデオやテレビ映像を見るのにはビデオコーデックが担う。バックモニタや死角モニタなどイメージセンサからの映像を処理するのがISPコアである。カーステレオで聴く音楽のプレイリストなどを出し音楽再生を行うのにオーディオプロセッサが威力を発揮する。Web情報を見たり切り替えたりするのにはCortex-A9を利用する。
このようにTegra 2には携帯端末としての機能だけではなくカーインフォテイメントの機能も備えており、自動車用のインフォテイメントチップやドライバ支援としての役割も大きい。特に白線検出制御やクルマ認識、あるいは物体認識、夜間などに人物を認識するナイトビジョンなどの映像を処理するのにもこのチップは使える(図3)。
独立のプロセッサコアを集積
これまでNVIDIAといえばグラフィックスチップあるいはGPUの得意な企業で性能は優れているが、消費電力は100Wを超える、といったイメージを持っていた。これを払しょくするのがこのTegra 2だ。Tegra 2がなぜ8個独立にヘテロのマルチプロセッサコアを搭載したか。性能を追求しながら消費電力を下げるためだ。全ての回路をフルで動かしても3W以下しかない。タブレットのような携帯機器にも使えるようにするためパワーゲーティングやクロックゲーティングといった手法をフルに使い、消費電力を極力減らした。音声だけなら数十mWしか消費しない。
まず性能を確保しながらCPUの負荷をできるだけ減らすため、専用のプロセッサを揃えた。Tegra 2には1080pのHDビデオを圧縮・伸長するためのエンコーダとデコーダが集積されているが、これはCPUを回して同じ機能を持たせるとCPUの負荷が大きすぎてしまい他の仕事ができなくなるほど遅くなってしまうのを防ぐためだ。すなわち圧縮・伸長は専用のエンコーダとデコーダに任せる訳だ。30fpsで動く1080pのHDコンテンツを圧縮し、デコーダはH.264、Sorenson、VP6-Eの3つのフォーマットを再生する。1080pのビデオ再生を400mW以下の消費電力で行うという。このエンコーダ、デコーダはビデオを再生・録画しないときはオフにしておき、チップ全体の消費電力を減らす。
画像処理プロセッサISP(image signal processor)は光の陰影バランスやエッジ強調、ノイズ削減、アルゴリズムを使ってリアルタイムで写真の拡大を行う。写真を見ないときはやはりこのプロセッサもオフにしておく。
このようにして半導体チップのシステム全体の消費電力を削減する。その機能を担うのがARM7プロセッサであり、各プロセッサの電力を管理したりシステム全体を制御したりする。
パワーゲーティング/クロックゲーティングを駆使、消費電力を徹底追求
NVIDIAの得意な2D/3DのGPUコアは、ユーザーインタフェースや絵、フォントなどグラフィカルな要素を低消費電力でレンダリングする。その実力としては、1024×600画素のゲームQuake 3を60fps以上でレンダリングするのにわずか数百mWで済むという。またゲーム専用エンジン「Unreal」も集積しているという。このGPUはフルスクリーンのFlashアニメを150mWでレンダリングできる。もちろん、このGPUもビデオ・オーディオや写真を見ている時のようにグラフィックスを使っていないときはオフする。
では、汎用のプロセッサであるCortex-A9のデュアルコアは何に使うのか。Cortex-A9だけが唯一対称的なマルチプロセッサ(SMP)である。並列動作によってWebサイトの読み込みを高速にし、ユーザーインタフェースの応答を素早くする。さらに複雑なWebサイトでもそのレンダリングを高速にする、という仕事を行う。
さらにCortex-A9については電圧と周波数をダイナミックに変えて消費電力を減らすという手法をとっている。グローバルパワーマネジメントシステムがこのCPUへの負荷を監視しておき、負荷に応じて電圧と周波数を変えることで性能と消費電力の最適化を図っている。もちろんWebサイトを見ていない時、例えばWebからコンテンツをダウンロードして読んでいるときなどはこのCPUの電源をオフにする。
開発ツールも充実
クルマのダッシュボード用途でもこれからのプラグインハイブリッドカーや電気自動車になると消費電力の削減は欠かせない。バッテリが動力となるためだ。Tegra 2チップの消費電力を削減する工夫は、クルマのディスプレイとダッシュボードという最も高速描画性能が要求される所に使われることになる。
こういったグラフィックスや独自のダッシュボードを設計するための開発ツールも揃えている(図4)。シェーダライブラリをはじめ、ソフトウェア開発ツール(SDK)、性能を可視化するツール「PerfHUD」など、グラフィックスをさらにビジュアルにするようなツールが多い。例えば「UI Composer」は、クラスタの設計に向き、Flashライターのようなツールだが、3D映像も取り込める上に、パワーポイントのようにスライドを作る要領で作り込んでいくことができる(図5)。