Emotion Engine
Emotion Engine(エモーション エンジン、略称: EE)は、ソニー・コンピュータエンタテインメント (SCE) と東芝によって開発され、主にPlayStation 2向けに設計・使用されたMIPSアーキテクチャベースの128ビットRISCマイクロプロセッサ。実質的な後継はCell Broadband Engine。
![]() Emotion Engine CXD9615GB (SCPH-18000 に実装) | |
生産時期 | 2000年から2012年まで |
---|---|
販売者 | ソニー・コンピュータエンタテインメント |
設計者 |
ソニー・コンピュータエンタテインメント 東芝 |
CPU周波数 | 294.912 MHz |
プロセスルール | 250nm から 65nm |
命令セット | MIPS III |
コア数 | 3 (EE Core + 2 VPU) |
ソケット | 540pin / BGA |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/10/EE%2BGS.jpg/220px-EE%2BGS.jpg)
(SCPH-70000CB に実装)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Emotion_Engine_%26_Graphics_Synthesizer_%287583178660%29.jpg/220px-Emotion_Engine_%26_Graphics_Synthesizer_%287583178660%29.jpg)
(SCPH-70000 に実装)
ここでは、SCEによって開発され、同じくPS2向けに設計・使用されたGPUのGraphics Synthesizer(グラフィックス シンセサイザ、略称: GS)についても扱う。
この2つのチップはセットで使われる事が多く、当初は単独のチップであったが、後にシュリンクが進んだためワンチップ化が行われた(チップ表面にはEE+GSと表記)。初期のPlayStation 3にもPlayStation 2用ゲームソフトの互換性を確保するために搭載されている[1]。
概要
CPUコアの浮動小数点演算ユニット (FPU) 以外に、VLIWを採用した2系統のベクトル演算ユニット(Vector Unit、略称: VU)を搭載する。そのためFPU及び2系統のVUを合計した浮動小数点演算能力は、ピーク時で 6.2 GFLOPS となった。
また、DMAコントローラが統合されており、内部の各ユニットを128bitバスで接続した世界初[2]の完全な128ビットプロセッサでもある。
メインメモリとは、ラムバス社のDirect RDRAMインターフェイス2チャネルにより3.2 GB/sのメモリ帯域で接続されている。また、イメージプロセッシングユニットと呼ばれるMPEG-2デコーダユニットを内蔵し、MPEG-2形式のビデオを単体で再生する能力を持つ。
PS2が発売される前の1999年、当時のSCE社長だった久夛良木健はこのチップをゲーム機での採用だけにとどまらずマルチメディアワークステーションにも活用する構想を明らかにしていた[3]が(詳しくは#GScube 16を参照)、結果としてソニー製品としてはPS2とPSX、WEGA[4]、QUALIA 005[5]以外での採用は特になかった。ちなみに久夛良木はPS3のCPUであるCell Broadband Engineでも同様の構想を明らかにしていた[6]。
また、ナムコ(ゲームメーカー)と山佐(パチスロメーカー)がパチスロ用基板「P246」を共同開発する際、GSと共にEEも採用された。
各世代のEE、GSの比較表
EE#1[2] (試作) |
EE#2[7] (SCPH-10000) |
EE#3 | EE#4 | EE+GS (SCPH-70000) |
EE+GS' (SCPH-79000以降) | |
---|---|---|---|---|---|---|
チップ面積 (mm2) | 240 | 224 | 110 | 73 | 86 | K.A. |
プロセスルール (nm) | 250[8] | 180 | 130 | 90 | 65 | |
消費電力 (W) | 15 | 18 | K.A. | 8.5 | K.A. | |
トランジスタ数 (万) | 1050 | 1350 | K.A. | 5350 |
GS#1 | GS#2 | GS#3 | GS#4 | GS#5 | GS#6 | |
---|---|---|---|---|---|---|
チップ面積(mm2) | 279 | 188 | 108 | 96 | 83 | 73 |
設計ルール(nm) | 250 | 180 | 130[9] |
アーキテクチャ・仕様
EE全体での浮動小数点演算能力は 6.2 GFLOPS となる。内訳はそれぞれFPUが 0.64 GFLOPS、VPU0が 2.44 GFLOPS、VPU1が 3.08 GFLOPS。主に座標計算を行うベクトル演算ユニットとしてVPU0とVPU1が搭載されているが、使用目的はそれぞれ異なる。
CPU (EE Core)
- MIPS R5900 ベース
- MIPS IIIに107個のマルチメディア拡張命令を追加
- 一部 MIPS III 非準拠(セマフォ命令のLL・LLD・SC・SCD、および64bit 乗算および除算命令のDDIV・DDIVU・DMULT・DMULTUが削除)
- 一部 MIPS IV 準拠(プリフェッチ命令のPREF、および条件転送命令のMOVN/MOVZが追加)
- クロック周波数: 294.912 MHz
- スーパースカラ 64 ビット 整数演算ユニット×2
- 命令キャッシュ: 16 KB
- データキャッシュ: 8 KB
- データスクラッチパッドRAM: 16 KB
コプロセッサ
FPU
VPU0 (Vector Processing Unit)
EE Coreからのコプロセッサ命令に基づき、第2コプロセッサ (COP2) として動作する「マクロモード」のほか、独自したプロセッサとして動作する「マイクロモード」が存在している。VPU1とは対照的に、EE Coreと密接な処理を行う。
- VU0
- 32ビット MIPS COP2 命令(マクロモード時)
- 64ビット LIW (Long Instruction Word) 命令(マイクロモード時)
- データ用RAM (VU Mem): 4KB
- マイクロ命令格納用RAM (Micro Mem): 4KB
- 128ビット 150MHz
- 浮動小数点積和演算ユニット×4 + 浮動小数点除算ユニット×1
その他のプロセッサ
VPU1
EE Coreと独立したジオメトリエンジンとして動作する。VPU0と違って「マイクロモード」でしか動作しない。そのため、VU0よりもメモリが多めになっている。
- VU1
- 64ビット LIW 命令
- データ用RAM (VU Mem): 16KB
- マイクロ命令格納用RAM (Micro Mem): 16KB
- 浮動小数点積和演算ユニット×5 + 浮動小数点除算ユニット×2
- EFU(初等関数演算ユニット)搭載
IPU (Image Processing Unit)
画像データの展開処理を行うプロセッサであり、MPEG-2ビットストリームの展開、I-Picture マクロブロックの復号のほかに、ディザリング、YCbCrからRGBへの色変換、ベクトル量子化機能を持つ。 なお、MPEG-2のデコードの際の動き補償はIPUでは行わず、EE Coreのマルチメディア命令を用いる。
インターフェース
GIF (GS Interface)
EEとGS間のインターフェースであり、各種プロセッサから並列生成されるディスプレイリストを調停し、描画コマンドをGSへ転送する。
SIF (Sub-CPU Interface)
IOPとのインターフェース機能を提供する。
VIF (VPU Interface)
VPUのインターフェース機能を提供する。
その他
- DMAコントローラ: 10チャネル
- メモリインタフェース: 16bit×2 400MHz Direct Rambusチャネル (Direct RDRAM)
- メモリ帯域幅: 3.2 GB/s
- MIPS: 363 MIPS(250 MHz時、発表当時)
- BogoMIPS: 392.40 BogoMIPS[10]
- 各種性能(SCE公表値)
- 頂点演算性能: 6600万頂点/秒(座標変換+透視変換)
- 3800万頂点/秒(座標変換+透視変換+光源計算)
- 3600万頂点/秒(座標変換+透視変換+光源計算+フォグ)
- 曲面生成性能: 1600万頂点/秒
- 画像処理性能: 1億5000万ピクセル/秒
- 頂点演算性能: 6600万頂点/秒(座標変換+透視変換)
ギャラリー
-
EE CXD9542GB
(SCPH-10000 に実装) -
EE CXD9708GB
(SCPH-70000 に実装) -
EE CXD9832GB
(SCPH-70000 CW に実装)
Graphics Synthesizer
Graphics Synthesizer(グラフィックス シンセサイザ、略称: GS)は、SCEによって開発され、主にPS2向けに設計・使用されたGPU。
概要
4MBのDRAMを混載[11]していることにより、2560 bit(内訳は読み込み 1024 bit、書き込み 1024 bit、テクスチャ 512 bit)という超広帯域のバス幅を備え、合計48GB/秒という転送速度が特徴。 その他のスペックとしては、ピクセルエンジンと呼ばれるパイプラインを16基備え、147.456 MHzで動作する。なお集積トランジスタ数は4300万、250 nmプロセス製造でダイ面積が279 mm2となっており、発表当時としてはPC向けハイエンドチップの2倍以上の規模であった。
仕様
- クロック周波数: 147.456 MHz
- 内蔵DRAM(VRAM): 4 MB
- DRAM転送速度: 48 GB/s
- DRAM帯域幅: 2560 ビット
- 読み込み: 1024 ビット
- 書き込み: 1024 ビット
- テクスチャ: 512 ビット
- 最大表示色数: 32 ビット(RGBA、各 8 ビット)
- 出力フォーマット
- 画像処理機能
- テクスチャマッピング
- バンプマッピング
- アルファブレンド
- フォギング
- テクスチャフィルタリング(バイリニア、トリリニア)
- ミップマップ
- アンチエイリアス
- マルチパスレンダリング
- 描画性能(SCE公表値)
- ピクセルフィルレート(32 ビット、Zバッファ、アルファブレンドを併用した場合)
- 24億ピクセル/秒(テクスチャマッピングなし)
- 12億ピクセル/秒(テクスチャマッピングあり)
- パーティクル: 1億5000万個/秒
- ポリゴン: 最大 7500万ポリゴン/秒(微小ポリゴン)
- 2000万ポリゴン/秒(テクスチャ、光源計算、半透明、Zバッファを併用した場合)
- スプライト: 1875万個/秒(8×8ピクセル)
- ピクセルフィルレート(32 ビット、Zバッファ、アルファブレンドを併用した場合)
ギャラリー
-
GS CXD2934GB
(SCPH-10000 に実装) -
GS
(SCPH-39000 に実装) -
GS CXD2949GB
(SCPH-70000 に実装)
GScube 16
GScube 16は、PS2アーキテクチャをベースにメインメモリを4倍の128MBにしたEmotion Engineと、混載メモリを32MBに増量したGraphics Synthesizer 1-32をそれぞれ16基搭載したグラフィック・ワークステーションのプロトタイプである。 形状は正方形で、上部にGSユニットの稼働状況を表すイルミネーションが搭載されている。
ただし、GScubeは単独で稼働するワークステーションではないため、ホストシステムを必要とする。 また、チップを64個並列に搭載した「GScube 64」や、さらにそれを拡張し4000×2000ピクセルで120fpsでの映像出力が可能なワークステーションも予定されていた。
なお、当初謳われていた1920x1080での出力は、発表から6年後のPS3で(PS3は3840×2160ピクセルでの映像出力にも部分的に対応)、さらに60fpsでの出力は13年後のPlayStation 4で実現した。
GScube 16の仕様
表記されていないスペックは基本的に元のチップと同等。
- CPU: Emotion Engine 16基
- メモリ容量: 2 GB(128MB×16基)
- メモリ帯域幅: 50.3 GB/秒(3.1GB/秒×16基)
- 浮動小数点演算能力: 97.5 GFLOPS(6.1GFLOPS×16基)
- 頂点演算性能: 10.4億ポリゴン/秒(6,500万ポリゴン/秒×16)
- GPU: Graphics Synthesizer 1-32 16基
- 内蔵DRAM(VRAM): 512 MB(32MB混載×16基)
- DRAM帯域幅: 755 GB/s(47.2GB/秒×16基)
- ピクセルフィルレート: 37.7 GB/s(2.36GB/秒×16基)
- 最大ポリゴン描画性能: 12億ポリゴン/秒(7,370万ポリゴン/秒×16基)
- 最大表示解像度: 1080p60
- プロセスルール: 180 nm
- トランジスタ数: 2億8,750万個
- ダイサイズ: 462 mm2
- サウンド: Emotion Engine ネイティブ・オーディオ
- 最大出力チャンネル数: 16
- サンプリング周波数: 48 kHz
- 出力データ長: 16 ビット
- 出力データフォーマット: AES/EBU
- 外形寸法: 424×424×424mm
- 質量: 約48kg
脚注
- ^ 例外としてPS3の一部モデルではGSしか搭載していない。
- ^ a b “次世代プレイステーション向け世界最高速の128ビットCPU Emotion Engine を開発” (PDF). ソニー・コンピュータエンタテインメント (1999年3月2日). 2017年8月15日閲覧。
- ^ PlayStation2ベースのワークステーションが登場!、PC Watch、1999年10月7日
- ^ テレビのさらなる高画質・高音質と新しい操作性を実現した<ベガ>HVXシリーズ 計6機種 発売、ソニーマーケティング、2004年8月19日
- ^ 世界初、感動の記憶色を再現する広色域LEDバックライト搭載の液晶テレビ 発売、ソニーマーケティング、2004年8月19日
- ^ IBM/SCE/ソニーのCellプロセッサワークステーション、PC Watch、2004年5月14日
- ^ Cell Broadband Engineへの20年と、 半導体産業・次の10年の展開
- ^ ゲート長は180nm
- ^ 「積極的な半導体設備投資は“PS2のおかげ”」――ソニー、2000億円投資で次世代チップ「CELL」製造へITmedia2003年4月21日
- ^ “dmesg でごあいさつ”. 2001年4月30日時点のオリジナルよりアーカイブ。2013年5月9日閲覧。
- ^ 複数チップの組み合わせではなく、本当に1枚のチップ内に混載している。
参考文献
- ソニー・コンピュータエンタテインメント (2001年10月), “EE Overview Version 5.0”, Linux for PlayStation 2 Release 1.0 付属
- ソニー・コンピュータエンタテインメント (2001年10月), “EE User's Manual Version 5.0”, Linux for PlayStation 2 Release 1.0 付属
- ソニー・コンピュータエンタテインメント (2001年10月), “GS User's Manual Version 5.0”, Linux for PlayStation 2 Release 1.0 付属
- ソニー・コンピュータエンタテインメント (2001年10月), “VU User's Manual Version 5.0”, Linux for PlayStation 2 Release 1.0 付属
外部リンク
- SCE Graphics Synthesizer プレスリリース
- 「次世代プレイステーション」の基本仕様を公開 国内発売はこの冬を予定、PC Watch、1999年3月2日
- PlayStation2の心臓Emotion Engineはこうなっている、PC Watch、2000年3月2日
- SCEI、プレイステーション2エンジンを使ったリアルタイム映像制作システム「GScube」を技術参考出展、PC Watch、2000年7月26日
- PlayStation 3の核となるCellは全く新しい概念のCPU、PC Watch、2002年3月25日
- 90nmプロセスの利点を生かした新世代PlayStation 2、PC Watch、2004年9月24日
- ISSCCに次世代Cell B.E. 45nm版が登場 ~6GHz動作、電力を30%以上削減、PC Watch、2008年2月6日