Emotion Engine
読み:エモーション-エンジン
外語:EE: Emotion Engine
PlayStation2
のCPUであり、
東芝
と
SCEI
の開発した世界初の完全
128ビットマイクロプロセッサー
である。Emotion EngineはSCEIの
登録商標
である。
目次
仕様
特徴
ベクトル演算ユニット
性能
VU0とVU1
バス
利用例
仕様
MIPS R5900をベースに、SIMDを整数演算でサポートするマルチメディア命令107個を追加し、またCPUのレジスターを128ビット32本に拡張した。マイクロプロセッサーコアには64ビット
整数演算器
2機が搭載されているが、これは1機の128ビット整数演算器としても機能する。
CPUコア: MIPS R5900ベース
クロック周波数
: 294.912MHz(約300MHz)
64ビット整数演算器×2
浮動小数点演算器
: FPU (FMAC+FDIV)
16Kiバイト命令キャッシュ
8Kiバイトデータキャッシュ
16Kiバイト スクラッチパッドRAM(SPRAM)
ベクトル演算ユニット: VU0/VU1
MPEG-2デコーダー: イメージプロセッシングユニット(IPU)
メモリーインターフェイス
Direct RDRAM
2チャンネル
帯域幅: 3.2Gバイト/秒(3Gバイト/cBeat)
グラフィックスインターフェイスシステム: GIF
I/Oインターフェイス
パッケージ: 540ピン
PBGA
集積トランジスタ数: 1,050万個
コア電圧: 1.8V
消費電力: 15W
プロセスルール
: 250nm→180nm→150nm→90nm(0.09μm) とシュリンク
ダイサイズ
: 240mm
2
(250nm)→110mm
2
(180nm)→73mm
2
(150nm)→86mm
2
(90nmでEE+GS)
浮動小数点演算性能: 6.2GFLOPS (ピーク時)
特徴
レジスターや
データバス
、内部キャッシュメモリーまでが全て128ビット化された
スーパースケーラー
構造のプロセッサーである。
ベクトル演算ユニット
性能
Emotion Engineを特徴付けるのが、2系統の単精度ベクトル演算ユニット(VU)である。
このVUはRISCであるCPUコアとは異なり、32ビット長命令2つを収めた2イシュー64ビット長の
VLIW
で、命令のうちアッパーインストラクションがFMAC群に、ローワーインストラクションがFDIVやEFU、ロードストアユニットなどFMAC以外のユニット群に発行されるようになっている。また、CPUとは独立した、16ビット整数レジスターと128ビット浮動小数点レジスターを持つ。
すなわち、CPUコアと二つのVUは別々のマイクロプロセッサーであり、いうなれば1チップ上に複数のプロセッサーを統合したマルチコアプロセッサーと呼ぶことが可能である。
浮動小数点演算については、ゲームで用いる
IEEE 754
の
単精度
(32ビット)だけに対応し、
倍精度
(64ビット)などはゲームでは使わないので対応しない、実に潔い設計がなされている。
128ビットレジスターには4個の単精度浮動小数点データが格納でき、各4個のFMACで、3Dグラフィックスの4×4のマトリックス演算を並列処理できる。2系統の浮動小数点演算性能はピーク時で6.2GFLOPSとなる。
VU0とVU1
これらはそれぞれVU0とVU1と呼ばれ、双方は同等のアーキテクチャーであるが、それぞれ役割が異なり、接続などが大きく違う。
VU0は4個の浮動小数点
積和演算器
(FMAC)と1個の浮動小数点除算演算器(FDIV)を持ち、マイクロ命令用メモリー(命令用/データ用各4Kiバイト)を持つ。
対してVU1は5個の浮動小数点積和演算器(FMAC)と2個の浮動小数点除算演算器(FDIV)を持ち、マイクロ命令用メモリー(命令用/データ用各16Kiバイト)を持つ。そしてVU1には更に、ジオメトリパイプラインで多用されるサイン/コサイン演算を行なうEFU(エレメンタリファンクションユニット)が搭載されており、FMACとFDIVの各1個ずつはこのEFU内に格納されている。
VU0はCPUコアと専用の128ビットポート直結されているため、CPUと同期する処理に向く。言うなれば、CPUの第二のコプロセッサーである。対してVU1はCPUとはメインバス経由で接続される。その代わりEFUを持ち、更にグラフィック処理を行なうGraphics SynthesizerとのインターフェイスGIFへの専用ポートを持っている、CPUよりGPUに近い存在である。これはVU1がグラフィック処理専用に設計されているためで、VU1が生成したデータをメインバスを使わずに渡せるように考慮されている。
バス
CPU内部に128ビット内部バスがあり、各ユニットが結ばれている。
CPU内には大きく次のようなものがあり、それぞれがこのメインバスに直結されている。
CPUコア
VU0
VU1
GIF (グラフィックスインターフェイスシステム)
IPU (イメージプロセッシングユニット)
メモリーインターフェイス
I/Oインターフェイス
DMAC
SIO
タイマー
割り込みコントローラー
基本的にはメインバス経由でコンタクトを取ることが可能だが、他に専用バスで直結される組み合わせがある。
CPUコア 〜 VP0
VP0 → VP1
VP1 → GIF
割り込みコントローラー → CPUコア
利用例
高性能なプロセッサーではあるが、それほど多くは利用されていない。
PlayStation2
PSX
WEGA
システム P246 (ナムコと山佐の開発したパチスロ用基板)
再検索