TSMCの28nm HPプロセスを採用し、47MBのSRAMを搭載するXbox OneのSoC
Xbox Oneについて発表するMicrosoftのJohn Sell氏 |
Hot Chips 25においてMicrosoftはXbox OneのSoCとKinectのテクノロジに関して発表を行った。
Xbox Oneは、CPU、GPUなどを集積するメインのSoCと各種IOを接続するSouth Bridge、そして、8GBのDRAMで構成されている。
そして、South Bridgeにゲームコントローラ、Kinect、Blu-Ray、500GBのHDD、8GBのフラッシュメモリが接続され、HDMIのビデオ入力を持っている。また、メインSoCからディスプレイとEthernetが繋がる。
Xbox OneのメインSoCはTSMCの28nm HPプロセスで製造され、チップサイズは363平方mmで5Bトランジスタを集積する。トランジスタ数が多いのは、チップ内に47MBものSRAMを搭載しているからである。
動作時の消費電力は発表されなかったが、アイドル時にはクロックゲートやパワーゲートで、フル電力の2.5%まで消費電力が低減するという。
次の図はメインSoCのブロックダイアグラムで、中央の上の部分にCPUがあり、左側にHost Guest IO MMUがあり、PCI Expressやオーディオプロセサが接続されている。また、その下にはHost Guest GPU MMUがあり、GPUコアとビデオエンコード、デコード圧縮などのエンジンが接続されている。
この構成を見るに、CPUとIOやGPU、各種エンジンはすべて同じアドレス変換メカニズムを使い単一の仮想アドレス空間を実現しているようである。製品として発表されているAMDのAPUは、このレベルにはなっておらず、HSAに向けて開発している技術が先取りされてXbox OneのメインSoCに使われている感じである。
そして、GPUには32MBの高速メモリが繋がっており、最大204GB/sという高いバンド幅の転送が可能になっている。
また、CPUとGPUのグループは図の右側に書かれたDRAMコントローラに繋がっている。DRAMは4個の2GBのDDR3-2133で、ピークバンド幅は68GB/sとなっている。また、DRAMとのコヒーレンシを維持したバンド幅は30GB/sと書かれている。
SoCのブロックダイアグラムではCPUは1つの箱で書かれているが、その中身は、次の図のように、AMDのJaguarコアを4個まとめて、それに2MBの共通L2キャッシュを接続してモジュールを2個搭載する8コアのシステムである。
そして、GPUとその他のアクセラレータエンジン部分は次の図のようになっている。
GPUは4台のコマンドプロセサを持ち、1.71G Primitive/sで描画プリミティブを読み込み、1.31TFlopsのユニファイドシェーダーと41GTexel/sのテクスチャユニットを持ち、13.6GPixel/sで奥行きテストを行いピクセルの色を決めてフレームバッファに書き込むレンダラーを持っている。この性能は、中級のGPUボード程度の性能に相当する。
MMU部分からメモリへは3本のバスが繋がっており、CPUとキャッシュコヒーレントなDRAMアクセスは30GB/s、キャッシュコヒーレントでないバスは68GB/sとDRAMのフルバンド幅、内蔵の32MBのキャッシュへのバスは204GB/sである。
オーディオプロセサは、次の図に示すように4台のDSPを内蔵し、2つのベクタDSPは合計で15.4GFlopsという高い演算性能を持ち、その他の専用ハードも18GOP/sに相当する性能をもっているという。単に効果音を出すというだけであればデラックスすぎるハードウェアである。