Cell Broadband Engine(Cell/B.E.)
Cell(正式名称「Cell Broadband Engine」、略称Cell/B.E.)は、ソニー、ソニー・コンピュータエンタテインメント(SCE)、IBM、東芝 の4社(STI連合)が共同開発し、2006年(平成18年)にPlayStation 3 へ搭載された64ビットマイクロプロセッサである。制御用コア「PPE」1個と演算用コア「SPE」8個を組み合わせた非対称ヘテロジニアス・マルチコア構成を採用し、当時の汎用PC向けCPUの約10倍のスループットを実現した。
目次
開発の経緯
Cell Broadband Engine ダイ写真
2001年(平成13年)3月9日、ソニー・コンピュータエンタテインメント、IBM、東芝 の3社は、ブロードバンド時代に向けた超並列プロセッサの共同研究開発に合意した。同月、米テキサス州オースティンのIBM開発拠点内に「STIデザインセンター」が開設され、3社の技術者が結集して本格的な開発が始まった。

開発は難航し、2004年(平成16年)11月にようやくISSCC(国際固体素子回路会議)向けの論文が提出され、2005年(平成17年)2月の同会議で概要と試作品が初公開された。同年5月17日のE3 では、PlayStation 3 搭載版が3.2GHz駆動・1PPE+7SPE構成であることが明らかにされた。ソニーは2003~2006年度にCellの生産設備へ総額約5000億円を投じている。
開発は難航し、2004年(平成16年)11月にようやくISSCC(国際固体素子回路会議)向けの論文が提出され、2005年(平成17年)2月の同会議で概要と試作品が初公開された。同年5月17日のE3 では、PlayStation 3 搭載版が3.2GHz駆動・1PPE+7SPE構成であることが明らかにされた。ソニーは2003~2006年度にCellの生産設備へ総額約5000億円を投じている。
非対称マルチコア構成とローカルストア構造
PPEとSPEによる非対称マルチコア構成
Cell は1個のマイクロプロセッサに9個のコアを持つ。制御を担う汎用コア「PPE」(PowerPC Processor Element)1個と、演算に特化した単純なコア「SPE」(Synergistic Processor Element)8個(歩留まり向上のため1個は不使用)を組み合わせた非対称(ヘテロジニアス)マルチコア構成である。

PPE・SPEともに、PowerPC G5 やPentium 4 のような複雑なアウトオブオーダー実行 や分岐予測機構を持たない。命令のスケジューリングを単純化することで高クロック化を実現しており、複雑な条件分岐を伴う整数演算は不得手だが、並列化された演算処理には威力を発揮する設計である。

SPEはキャッシュメモリ を一切持たず、代わりに256KiBのSRAM専用メモリ「ローカルストア」(LS)にプログラムとデータを格納して実行する。メインメモリとは独立したアドレス空間を持つためキャッシュコヒーレンシ保持の仕組みが不要となり、処理速度の向上に貢献した。SPEはメインメモリを直接扱えず、DMAでXDR DRAMとLS間を転送する。

PPE・各SPE・メモリインタフェース・IOインタフェースは、超高速バス「EIB(Element Interconnect Bus)」と呼ばれる4系統のリング状内部バスで接続される。最大96バイト/サイクルの伝送能力を持ち、Rambus社のXDR DRAMメモリコントローラ(帯域25.6GB/s)やチップ間接続用インタフェース「FlexIO」(最大76.8GB/s)とあわせて、Cell全体の高いスループットを支えた。
PPE・SPEともに、PowerPC G5 やPentium 4 のような複雑なアウトオブオーダー実行 や分岐予測機構を持たない。命令のスケジューリングを単純化することで高クロック化を実現しており、複雑な条件分岐を伴う整数演算は不得手だが、並列化された演算処理には威力を発揮する設計である。
SPEはキャッシュメモリ を一切持たず、代わりに256KiBのSRAM専用メモリ「ローカルストア」(LS)にプログラムとデータを格納して実行する。メインメモリとは独立したアドレス空間を持つためキャッシュコヒーレンシ保持の仕組みが不要となり、処理速度の向上に貢献した。SPEはメインメモリを直接扱えず、DMAでXDR DRAMとLS間を転送する。
PPE・各SPE・メモリインタフェース・IOインタフェースは、超高速バス「EIB(Element Interconnect Bus)」と呼ばれる4系統のリング状内部バスで接続される。最大96バイト/サイクルの伝送能力を持ち、Rambus社のXDR DRAMメモリコントローラ(帯域25.6GB/s)やチップ間接続用インタフェース「FlexIO」(最大76.8GB/s)とあわせて、Cell全体の高いスループットを支えた。
絶大な浮動小数点演算能力
SPEは単精度浮動小数点演算を4スロット、倍精度演算を2スロット同時に処理できるSIMD型のコアで、3.2GHz駆動時に1基あたり25.6GFLOPSの性能を持つ。PlayStation 3 では7基のSPEを搭載し、理論上は179.2GFLOPSに達する演算能力を実現した。
IBMが示した物理挙動シミュレーションとレンダリングの例では、3.2GHzのPentium 4 と比較して2.1GHz駆動のSPE1基で1.5倍、8基で12倍の性能差を記録したという。この並列演算能力により、数値解析・物理シミュレーション・動画や画像処理・音声処理など、大容量データを高速に扱うストリーム・プロセッシング に威力を発揮した。
PCアーキテクチャとの乖離
Cell はPowerPCアーキテクチャをベースとしながらも、既存のパソコン向けCPUとは大きく異なる設計思想を採る。各SPEが独立したメモリ空間(ローカルストア)を持ち、分岐予測などのハードウェア機構も持たないため、通常のマルチプロセッサ向けプログラムがそのまま動作せず、専用のプログラミングモデルの習得が必要であった。
またPowerPC 自体はバイエンディアンだが、Cellはビッグエンディアンに統一されている。こうしたPCアーキテクチャとの乖離は開発者にとって大きな参入障壁となり、対応ソフトウェアの開発が難航する一因となった。
PlayStationへの適用
PlayStation 3 メイン基板
Cell はPlayStation 3(2006年11月11日発売)のCPUとして開発された。GPU「RSX」と組み合わされ、当時の汎用PC向けCPUの約10倍のスループットを発揮したとされる。ソニーは久夛良木健氏の構想のもと、PS3を核に家庭内の複数機器を連携させる「Cellコンピューティング」も提唱した。
PS3以外にも、IBMのブレードサーバー「BladeCenter QS21」、ワークステーション、東芝 の薄型テレビ「CELL REGZA」、ソニーの映像制作機器「Zego BCU-100」など幅広い製品に採用された。しかし久夛良木氏の退任後、Cellコンピューティング構想が語られることはほとんどなくなった。
その後のCPU・GPUへの影響
スーパーコンピューター「Roadrunner」
多数の演算コアで処理能力を高めるCell の登場は業界に衝撃を与えた。インテル やAMD などCPUベンダー、さらにはGPUベンダーまでもが、シングルスレッド性能の追求からマルチコア化による処理能力向上へと舵を切るきっかけとなった。GPUを汎用処理にも使う「GPGPU」という発想も、この流れの延長線上にある。
米エネルギー省のスーパーコンピューター「Roadrunner」(改良型Cell「PowerXCell 8i」搭載)は2008年(平成20年)6月、世界初の1ペタフロップスを達成した。Cellが切り拓いたヘテロジニアス・マルチコアという構造は、後年AMD のCPU・GPU一体型プロセッサ「APU」などに受け継がれている。
売却と終焉
2007年(平成19年)10月、ソニーは自社のCell生産設備を東芝 へ売却すると発表した。以後は3社が出資する長崎セミコンダクターマニュファクチャリング(NSM)が製造を担ったが、2009年(平成21年)11月、IBM は次世代Cellの開発中止を発表し、研究開発の幕を閉じた。
2010年(平成22年)12月、東芝とソニーはNSMのウェハーラインをソニーへ譲渡することで合意しNSMは解消された。2011年(平成23年)のCESで東芝は新型テレビにCellベースの回路を採用せず、ソフト開発の難しさもありPlayStation 4 にもCellは採用されなかった。2001年(平成13年)の提携合意から10年、Cellはその役目を終えた。
主要スペック
| 項目 | 仕様 |
|---|---|
| 開発元 | SCE・ソニー・IBM・東芝(STI連合) |
| 発表 | 2005年2月(ISSCC) |
| 出荷開始 | 2006年11月(PlayStation 3搭載) |
| コア構成 | PPE×1+SPE×8(PS3では7基搭載、うち1基はOSが占有) |
| 命令セット | Power Architecture(PowerPC G5互換) |
| データ幅 | 64ビット |
| ローカルストア | 256KiB(SPEごとに独立) |
| 内部バス | EIB(Element Interconnect Bus/最大96バイト/サイクル) |
| メモリ | XDR DRAM(帯域25.6GB/s) |
| チップ間IF | FlexIO(最大76.8GB/s) |
| 製造プロセス | 90nm(初代)~45nm(後期) |
| 演算性能 | SPE1基あたり25.6GFLOPS(単精度、3.2GHz時) |
| 主な採用例 | PlayStation 3、Roadrunner、CELL REGZA、BladeCenter QS21等 |
| 開発終了 | 2009年11月(IBM、次世代Cell開発中止を発表) |
CPUの歴史
| 発表年 | メーカー | CPU名 | ビット数 | 最大クロック |
|---|---|---|---|---|
| 1970年 | Garrett AiResearch | MP944 (軍用) | 20bit | 375KHz |
| 1971年 | インテル | 4004 | 4bit | 750KHz |
| 1974年 | インテル | 8080 | 8bit | 3.125MHz |
| 1975年 | モステクノロジー | MOS 6502 | 8bit | 3MHz |
| 1976年 | ザイログ | Z80 | 8bit | 20MHz |
| 1978年 | インテル | 8086 | 16bit | 10MHz |
| 1979年 | モトローラ | MC6809 | 8bit | 2MHz |
| 1979年 | ザイログ | Z8000 | 16bit | 10MHz |
| 1980年 | モトローラ | MC68000 | 16bit | 20MHz |
| 1983年 | NEC | V30 | 16bit | 16MHz |
| 1984年 | インテル | 80286 | 16bit | 12MHz |
| 1985年 | インテル | 80386 | 32bit | 40MHz |
| 1985年 | インテル | i960 | 32bit | 100MHz |
| 1985年 | サン・マイクロシステムズ | SPARC | 32bit | 150MHz |
| 1985年 | エイコーン | ARM1 | 32bit | 6MHz |
| 1986年 | MIPS | R2000 | 32bit | 15MHz |
| 1987年 | ザイログ | Z280 | 16bit | 12MHz |
| 1987年 | モトローラ | MC68030 | 32bit | 50MHz |
| 1988年 | MIPS | R3000 | 32bit | 40MHz |
| 1989年 | インテル | 80486 | 32bit | 100MHz |
| 1989年 | インテル | i860 | 32bit | 50MHz |
| 1990年 | モトローラ | MC68040 | 32bit | 40MHz |
| 1991年 | MIPS | R4000 | 64bit | 200MHz |
| 1992年 | DEC | Alpha 21064 | 64bit | 200MHz |
| 1993年 | IBM, モトローラ, Apple | PowerPC 601 | 32bit | 120MHz |
| 1993年 | インテル | Pentium | 32bit | 300MHz |
| 1994年 | IBM, モトローラ, Apple | PowerPC 603 | 32bit | 300MHz |
| 1995年 | サイリックス | Cyrix Cx5x86 | 32bit | 133MHz |
| 1995年 | AMD | Am5x86 | 32bit | 160MHz |
| 1995年 | サン・マイクロシステムズ | UltraSPARC | 64bit | 200MHz |
| 1999年 | IBM, モトローラ | PowerPC G4 | 32bit | 1.67GHz |
| 1999年 | AMD | Athlon | 32bit | 2.33GHz |
| 2000年 | インテル | Pentium 4 | 32bit | 3.8GHz |
| 2001年 | インテル | Itanium | 64bit | 800MHz |
| 2003年 | AMD | Opteron | 64bit | 3.5GHz |
| 2003年 | インテル | Pentium M | 32bit | 2.26GHz |
| 2006年 | SCE,ソニー,IBM,東芝 | Cell | 64bit | 3.2GHz |
| 2006年 | インテル | Core Duo | 32bit | 2.33GHz |
| 2006年 | インテル | Core 2 Duo | 64bit | 3.33GHz |
| 2008年 | インテル | Core i9/i7/i5/i3 | 64bit | 5.8GHz |
| 2017年 | AMD | Ryzen | 64bit | 5.7GHz |
| 2020年 | Apple | M1/M2/M3/M4/M5 | 64bit | 3.49GHz |
| 2023年 | インテル | Core Ultra 9 / 7 / 5 | 64bit | 5.1GHz |
参考サイト
- Cell Broadband Engine:Wikipedia
- SCEIのPlayStation 3の心臓「Cell」の正体:後藤弘茂のWeekly海外ニュース、PC Watch
- PLAYSTATION 3ハードウェアレポート【速報編】:PC Watch
- ソニー、Cell生産設備売却で東芝と合意:ITmedia
(この項おわり)
