SGX」について講演を行なった。1.xの機能追加部分である。Groupが共同開発した独自の3次元画像処理アルゴリズムを搭載するGPU。NECは'96年に、最初のPowerVRである「μPD62010」を開発、これを搭載したPC用の3次元グラフィックスカードの販売も行なった。セガのDreamcastに「PowerVR2」が採用されたほか、ゲームセンター用のアーケードゲーム基板に使われていたこともある。Technologiesに変更、現在では、PowerVRのIPを各社にライセンスしている。MBX」は、ルネサスのSH-Mobile系やIntelの2700G(XScale用のグラフィックスアクセラレータ)、TIのOMAPシリーズの一部など、携帯電話用の統合型マイクロプロセッサに組み込まれていることが多い。携帯電話用の3Dアクセラレータとしては、標準的といってもいい。携帯電話系に普及した原因の1つには、チップそのものではなく、その設計を売るIPビジネスを展開しているため、マイクロプロセッサメーカーが自社の製品に組み込みやすいからである。必須となる携帯電話に向いているからである。3D表示が携帯電話に取り込まれたのは、ゲームやリッチなコンテンツを考えたときに、レンダリングした情報を送るよりも、3Dデータを送るほうが通信量を削減できるからである。携帯電話は、現在では大きくてもVGA解像度程度であり、それほど強力なハードウェアがなくとも実現可能ということもある。ESについて話を整理しておこう。ESとは組み込み機器向けのOpenGLである。Library=GL)をベースにオープン化したもので、3次元グラフィックスでは広く使われているグラフィックスインターフェイスである。Windowsでいえば、Direct3Dのようなものであり、非Windows系では、標準的な地位を確立している。ESが作られたのは、組み込み機器向けには、フルセットのOpenGLは荷が重すぎることと、仕様が大きすぎるからである。カーナビの3次元表示などのように限定された組み込み環境で3Dグラフィックスを使うことを想定して作られたものだ。1.x系で、ハードウェア仕様により1.0~1.5までいくつかバージョンがある。1.xの拡張部分となる。OpenGLは、大きくジオメトリ処理とラスタライぜーションからなる。前者が3次元空間で定義されたオブジェクト(ポリゴン)を2次元空間に投影し、後者は、それを表示可能なビットマップデータに変換する。Shader)が定義されている。SGX」PowerVRアーキテクチャでは、出力画面を小さなタイルに分割して処理を行なう。オーバーヘッドは多少あるが、全体を1度に処理する必要がなく、小さなタイルだけを処理する。このため、チップ内に処理しているタイル部分を記憶するフレームバッファを持つことができる。PowerVRアーキテクチャは、出力画面をタイルに分割して処理を行なうため、必要なメモリやハードウェアは小さくて良い。このため、フレームバッファやZ/ステンシルバッファをチップ内に持つことができる。外部メモリとのインターフェイスは比較的低速でよく、消費電力やコストの面でメリットがあるグラフィックス処理では、すでに描画した部分にさらに描画を行なうことがあり、フレームバッファの読み出し、修正、書き込みといった処理が必要となる。これをチップ外のメモリで行なうためには、高速なメモリや高速な接続が必要となるが、PowerVRでは、これをチップ内に保持できる。このため、実際に表示を行なうフレームバッファは低速なものでいい。小さな範囲にのみ専念して処理できるため、隠面処理のためのZバッファやステンシルバッファなども小さくて良く、これもチップに内蔵することが可能だ。MBXだが、今回講演が行なわれたSGXは、その後継で、プログラマブルシェーダを装備するもの。Engineと呼んでいる)で構成されている。SGXは、3Dグラフィックス以外に、ビデオや2Dグラフィックス表示なども可能になっている。表示するそれぞれの情報をタスクに分割し、実行ユニットに振り分ける。ここのタスクはさらにスレッドに分割され、マルチスレッド実行ユニットで処理されていく。SGXには、実行ユニット数(パイプライン数)により5つのバリエーションがあり、3~100Mポリゴン/秒まで、携帯電話からゲーム機、PC用までをカバーする。実行ユニットを常に効率よく使うため、描画は、タスク、スレッドに細かく分割され、複数スレッドの同時実行が可能なマルチスレッド実行ユニットが処理を行なう。SGXの構成によっては複数の実行ユニットがあるまた、最近では、携帯電話でもLinuxのような高度なOSが搭載され、アプリケーションもマルチスレッド対応などが行なわれている。した環境に対応するためには、描画ハードウェアが、1つの処理に専念してしまって、一連の描画が終わるまで次の処理ができないのでは問題がある。場合によっては、描画の途中で、表示を止め、システム側のメッセージなどを表示しなければならない場合もある。SGXでは、パイプライン処理に対する割り込みが可能で、処理を中断、再開することができるようになっている。このときに、実行コンテキストを切り替えることが可能になっている。SM3.0などに対応したGPUとして、組み込み系CPUメーカーから登場する予定だという。SGXには、510~550の5つのバリエーションがあり、それぞれパイプライン数(実行ユニット数)が異なる。Watch編集部pc-watch-info@impress.co.jpお問い合わせに対して、個別にご回答はいたしません。