Cell

**Cell** 微處理器架構（**Cell Broadband Engine Architecture**，通常簡稱 **Cell BE** 或 **CBEA**）由索尼、索尼電腦娛樂、東芝、國際商業機器（IBM）公司聯合開發。它是以 RISC 指令體系的 Power 架構為基礎來設計的，並具有高時脈頻率、高執行效率等特點。主要應用於 PlayStation 3 和刀鋒伺服器之上。而 CELL 處理器的第二代版本，提高了雙精度浮點運算效能。以往的 CELL 處理器，雙精度的效能只有單精度的十分之一。而新的 CELL 處理器，可以使到雙精度效能有五倍的提升。

## 發展歷史

在 2000 年年中，索尼電腦娛樂，東芝公司和 IBM 結成一個被稱為「STI」的聯盟，用以設計和製造的處理器。

STI 設計中心於 2001 年 3 月開業。Cell 使用 POWER4 處理器的設計工具的增強版本，其設計期間為期四年。有三家公司超過 400 名的工程師一起在奧斯汀工作，並有 11 個 IBM 設計中心的重要支援。在此期間，IBM 提出了 Cell 架構，製造工藝和軟體環境有關的多項專利。早期專利版本的 Broadband Engine 被證實是一個晶片封裝，包括「處理單元（Processing Elements）」，這是該專利的描述，是目前已知的 Power Processing Element（PPE）。目前在 Broadband Engine 晶片上，每個「處理單元」包含 8 個加速處理單元，而它被簡稱為 SPE。

2007 年 3 月，IBM 將 Cell 微處理器由第一代產品的 90 奈米製程推進到 65 奈米製程，由位於美國紐約州 East Fishkill 的 12 吋晶圓廠展開 65 奈米製程 Cell 微處理器的生產。製程推進到 65 奈米之後，Cell 的晶片面積與耗電量將可進一步壓低，有利於數位家電等相關應用的發展。

2008 年 2 月，IBM 宣布該公司將開始製造的 45 奈米製程的 Cell 處理器。2009 年 8 月，輕薄版 PlayStation 3－PS3 Slim 同時採用 45 奈米 Cell 處理器。

2008 年 5 月，IBM 推出了高效能的的雙精度浮點版本的 Cell 處理器，以 65 奈米為主要尺寸的 PowerXCell 8i。

2008 年 5 月，以一個 Opteron 處理器和 PowerXCell 8i 為基礎的超級電腦，IBM 走鵑系統，成為世界上第一個達成 PetaFLOPS 的系統，它當時是世界上最快的電腦，而此紀錄一直維持到 2009 年第 3 季。

2009 年，IBM 於 SC09 高效能計算會議上宣布，放棄基於 Cell 架構處理器的開發，Cell 架構及設計理念將融合到 IBM 的其他處理器產品中。該公司原計劃開發 PowerXCell-8i 處理器的後續產品，內含雙 PowerPC 處理器核心，並設定了 32 個 SPE 單元的下一代 Cell 處理器將已被取消。

## 概要

* Cell 包含 9 個核心：1 個 64 位元的 PPE 控制核心和 8 個完全一樣的 SPE 運算核心。
* 擁有 2 億 5 千萬個電晶體（DD2 量產版）。核心面積為 235 平方毫米，採用 IBM 的 SOI 90 奈米銅互連工藝製造，在此之後採用 65 奈米工藝製造。
* 首批工程樣品工作頻率為 4.06 GHz，工作電壓 1.1 伏特；此後有 4.6 GHz。
* 每秒可進行 2560 億次浮點計算（256 GFlops）。
* 支援網格運算，具備靈活的並列、分散式的計算結構。

2005 年 8 月 25 日，IBM、SONY、SCEI 與東芝等 4 家公司正式公開「Cell」，該次所公布的規格資料參考檔案，共分為 5 份，包括 1 份說明 Cell 基於分散式處理與多媒體應用所定義的整體架構，另外 4 份則是關於 Cell 獨立浮點數運算單元 SPU 的指令集架構，低階組合語言，高階 C/C++ 程式語言擴充規格，以及應用程式二進位介面（Application Binary Interface）的規格書與說明文件。

Cell 結合了通用的 Power Architecture 核心，適中的效能與流線型的協處理器，大大加快多媒體和向量處理的應用程式，以及許多其他形式的專用計算。

### 處理器架構

PPE 可以作為資源管理使用，SPE 可以作為資料處理器使用。PPE 上的程式可以將任務分解到 SPE 上完成，然後相互傳輸資料。SPE 缺少一般處理器中的大部分通用特性，它們根本不能執行常見的作業系統任務，沒有虛擬記憶體的支援，不能直接存取電腦的 RAM，中斷支援也非常有限。將 SPE、PPE 和主記憶體控制器連接在一起的是一個名為 Element Interconnect Bus 的匯流排，這是資料傳輸的主要通道。

#### PPE

Power Processor Element（簡稱為 PPE）：PPE 包含一個 64 位元雙執行緒 PowerPC 結構的 RISC 核心，並支援 PowerPC 的虛擬記憶體子系統。它具有 32KB 的 L1 指令快取，以及一個 32 KB 資料快取，以及 512 KB L2 的共享快取。Cell 中的 PPE 包含 VMX 指令集（Vector Multimedia eXtensions：AltiVec 技術）。

#### SPE

Synergistic Processing Elements，簡稱 SPE。每個 SPE 包括：

* 一個向量處理器，稱為 Synergistic Processing Unit，或 SPU
* SPU 中的一個私有記憶體區域，稱為本地儲存（PS3 上這個區域的大小是 256K）
* 用來聯絡外部世界的一組通信通道
* 一組 128 個暫存器，每個 128 位寬（每個暫存器通常都可以用來同時儲存 4 個 32 位的值）
* 一個記憶體流控制器（MFC），它負責管理 SPU 的本地儲存和主記憶體之間的 DMA 傳輸

#### EIB

Element Interconnect Bus（簡稱 EIB）：透過該匯流排，每個 DMA 控制器取得與 SPE 相關的指令和資料。DMA 控制器也將結果送到通用匯流排，使其可輸出到晶片外，以傳送給晶片上的週邊裝置或 PPE 快取記憶體。PPE 可意識到 SPE 所傳輸的資料，但 SPE 則完全不知道毗鄰的任何流量；這將保持 SPE 的簡易性，並限制在其執行時的中斷或不必要的影響，如果 SPE 需要知道外部資料的變化，其各自的 DMA 控制器便負責擷取資訊。

#### 記憶體與 I/O 控制器

Cell BE 內建 2.5 百萬位元組記憶體，通過 Rambus 的 XDR 和 FlexIO 技術，每秒可與外部記憶體交換 100 吉位元組 Gbytes 的資料。XDR 記憶體控制器介面 (XIO) 為 72 位元寬，可以在 3.2Gbps 資料速率下運作並提供 25.6GB/s 的總記憶體頻寬。

### PowerXCell 8i

2008 年，IBM 公佈了經修訂的變種 Cell，它被稱作 **PowerXCell 8i**，並從 IBM 的刀鋒伺服器 QS22 開始採用。花費超過一億美元的 走鵑 是世界第一台 Linpack 達成 1 petaflops 的超級電腦，採用雙核 AMD Opteron 加上 PowerXCell 8i 處理器混合為一個節點的設計，走鵑共有 6563 顆雙核的 AMD Opteron，以及 12240 顆 IBM PowerXCell 8i。國際超級電腦大會發布的綠色超級電腦 500 大（Green500）名單，IBM 的 PowerXCell 8i 獨占前 3 名及 5 至 7 名，該排名以平均每瓦電力每秒所提供的浮點運算能力 (MFLOPS/W) 為基準。除了 QS22 和超級電腦，PowerXCell 也被做成一張 PCI-E 介面的加速處理器，並在 QPACE 專案作為核心處理器。

## 商業化

### PS3

STI 將 Cell 應用於高畫質數位影音家電、遊樂器、電腦繪圖、科學運算等領域，其中以 SCE 所推出的 PS3 主機為相關應用中最受矚目、規模也最為龐大的產品。第一代的 Cell 微處理器將具備 1 個 PPE 微處理器核心，與 8 個 SPE 協同處理器（保留 1 個 SPE 作為備援，實際可用的 SPE 為 7 個），由 2.5 億電晶體所構成，PS3 則採用時脈 3.2GHz 的版本。

### SpursEngine

東芝推出基於 CELL 的輔助處理器，名為 SpursEngine。這與真正的 CELL 處理器不同，它只有 1 個 PPE 和 4 個 SPE 核心，但額外增加了 MPEG-2 和 H.264 的硬體編解碼器。它可以用來加速圖片和影片播放（包括 MPEG-2 和 H.264），並有自己的 XDR 記憶體。介面方面，可以採用 PCI-E x1 或者 x4。東芝的平板電視都會採用相關的處理器，將標準畫質解析度插值至 1080p。並同時進行細節修補，改善色彩，邊緣銳利化等工作。麗台已推出採用 SpursEngine 晶片的加速卡，用作協助電腦作影像編輯。

### 家用電視

東芝公司推出 Cell TV，它能把 2D 畫面轉換成 3D。Cell T 還可升級數位視訊，甚至補強畫素，強化低品質的串流，並測知房間的燈光，調整螢幕的顯示品質。Cell TV 尚有內建攝影機、麥克風與軟體，可以撥打網路視訊電話。這是東芝以 Cell 為核心開發的首款產品，重點顯然是將電視機作為一個範例，用來說明硬體和軟體工程師能夠合力開發出什麼樣的產品。例如：利用 Cell 電視機的連網功能建立一種商業模式，這款電視機顯然可以成為一大批付費服務的載體。

## 參見

* 走鵑 (超級電腦)
* PlayStation3

## 參考資料

## 外部連結

* （英文） Cell Broadband Engine resource center（頁面存檔備份，存於網際網路檔案館）
* （英文）（日語） 索尼電腦娛樂 Cell 處理器專屬網站
* （日語） Cell ブロードバンド・エンジン・マイクロプロセッサ向けに Linux 機能拡張を含む主要ソフトウェア開発ツールを公開（頁面存檔備份，存於網際網路檔案館）
* （英文） Cmpware Configurable Multiprocessor Development Kit for Cell BE（頁面存檔備份，存於網際網路檔案館）
* （英文） ISSCC 2005: The CELL Microprocessor（頁面存檔備份，存於網際網路檔案館）
* （英文） The little broadband engine that could: Reviewing the newest little SDK that installs natively on PS3（頁面存檔備份，存於網際網路檔案館）
* （英文） Introducing the IBM/Sony/Toshiba Cell Processor ? Part I: the SIMD processing units（頁面存檔備份，存於網際網路檔案館）
* （英文） Introducing the IBM/Sony/Toshiba Cell Processor -- Part II: The Cell Architecture（頁面存檔備份，存於網際網路檔案館）