Zellmikroprozessor-Implementierungen - Cell microprocessor implementations
Der erste kommerzielle Cell-Mikroprozessor , der Cell BE, wurde für die Sony PlayStation 3 entwickelt. IBM hat die PowerXCell 8i für den Einsatz im Roadrunner-Supercomputer entwickelt .
Implementierung
Erstausgabe Cell auf 90 nm CMOS
IBM hat in diesem Prozess Informationen zu zwei verschiedenen Versionen von Cell veröffentlicht, einem frühen technischen Beispiel mit der Bezeichnung DD1 und einer erweiterten Version mit der Bezeichnung DD2 für die Produktion.
| Bezeichnung | Die Fläche | Zuerst offenbart | Erweiterung |
|---|---|---|---|
| DD1 | 221 mm 2 | ISSCC 2005 | |
| DD2 | 235 mm 2 | Coole Chips April 2005 | Verbesserter PSA-Kern |
Die Hauptverbesserung in DD2 war eine kleine Verlängerung des Chips, um einen größeren PPE-Kern aufzunehmen, von dem berichtet wird, dass er "mehr SIMD / Vektor-Ausführungsressourcen enthält". Einige von IBM veröffentlichte vorläufige Informationen beziehen sich auf die DD1-Variante. Infolgedessen unterscheiden sich einige frühe journalistische Berichte über die Fähigkeiten der Zelle jetzt von der Produktionshardware.
Grundriss der Zelle
Das Powerpoint-Material, das einer STI-Präsentation von Dr. Peter Hofstee beigefügt ist, enthält ein Foto des DD2-Zell-Chips, das mit Grenzen der Funktionseinheiten überzeichnet ist, die ebenfalls namentlich beschriftet sind. Dies zeigt die Aufteilung der Siliziumfläche nach Funktionseinheiten wie folgt:
| Zellenfunktionseinheit | Bereich (%) | Beschreibung |
|---|---|---|
| XDR-Schnittstelle | 5.7 | Schnittstelle zum Rambus-Systemspeicher |
| Speichercontroller | 4.4 | Verwaltet den externen Speicher und den L2-Cache |
| 512 KiB L2-Cache | 10.3 | Cache-Speicher für die PSA |
| PSA-Kern | 11.1 | PowerPC-Prozessor |
| Prüfung | 2.0 | Nicht spezifizierte "Test- und Decodierungslogik" |
| EIB | 3.1 | Elementverbindungsbus-Verbindungsprozessoren |
| SPE (jeweils) × 8 | 6.2 | Synergistisches Coprocessing-Element |
| E / A-Controller | 6.6 | Externe E / A-Logik |
| Rambus FlexIO | 5.7 | Externe Signalisierung für E / A-Pins |
SPE Grundriss
Weitere Details zur internen SPE-Implementierung wurden von IBM-Ingenieuren, darunter Peter Hofstee , IBMs Chefarchitekt des synergistischen Verarbeitungselements, in einer wissenschaftlichen IEEE-Veröffentlichung veröffentlicht.
Dieses Dokument enthält eine Fotografie der 2,54 × 5,81 mm SPE, wie sie in 90-nm- SOI implementiert ist . In dieser Technologie enthält die SPE 21 Millionen Transistoren, von denen 14 Millionen in Arrays enthalten sind (ein Begriff, der vermutlich Registerdateien und den lokalen Speicher bezeichnet), und 7 Millionen Transistoren sind logisch. Dieses Foto ist mit Grenzen der Funktionseinheiten überzeichnet, die auch mit Namen versehen sind. Dies zeigt die Aufteilung der Siliziumfläche nach Funktionseinheiten wie folgt:
| SPU-Funktionseinheit | Bereich (%) | Beschreibung | Rohr |
|---|---|---|---|
| mit einfacher Genauigkeit | 10.0 | FP-Ausführungseinheit mit einfacher Genauigkeit | sogar |
| Doppelte Genauigkeit | 4.4 | FP-Ausführungseinheit mit doppelter Genauigkeit | sogar |
| einfach behoben | 3.25 | Festkomma-Ausführungseinheit | sogar |
| Issue-Kontrolle | 2.5 | füttert Ausführungseinheiten | |
| Makro weiterleiten | 3,75 | füttert Ausführungseinheiten | |
| GPR | 6.25 | Allzweckregisterdatei | |
| permutieren | 3.25 | Ausführungseinheit permutieren | seltsam |
| Ast | 2.5 | Zweigausführungseinheit | seltsam |
| Kanal | 6.75 | Kanalschnittstelle (drei diskrete Blöcke) | seltsam |
| LS0 - LS3 | 30.0 | vier 64-KiB-Blöcke des lokalen Geschäfts | seltsam |
| MMU | 4,75 | Speicherverwaltungseinheit | |
| DMA | 7.5 | direkte Speicherzugriffseinheit | |
| BIU | 9.0 | Busschnittstelleneinheit | |
| RTB | 2.5 | Array eingebauter Testblock (ABIST) | |
| ATO | 1.6 | Atomeinheit für atomare DMA-Updates | |
| HB | 0,5 | obskur |
Das Verständnis der Versandleitungen ist wichtig, um effizienten Code zu schreiben. In der SPU-Architektur können zwei Befehle in jedem Taktzyklus unter Verwendung von geraden und ungeraden Versandrohren versendet (gestartet) werden . Die beiden Pipes bieten unterschiedliche Ausführungseinheiten, wie in der obigen Tabelle gezeigt. Während IBM dies partitionierte, werden die meisten arithmetischen Anweisungen auf der geraden Pipe ausgeführt, während die meisten Speicherbefehle auf der ungeraden Pipe ausgeführt werden. Die Permutationseinheit ist eng mit Speicherbefehlen verbunden, da sie dazu dient, im Speicher befindliche Datenstrukturen in das SIMD-Mehrfachoperandenformat zu packen und zu entpacken, das die SPU am effizientesten berechnet.
Im Gegensatz zu anderen Prozessordesigns, die unterschiedliche Ausführungspipes bereitstellen, kann jeder SPU-Befehl nur auf einem bestimmten Pipe versendet werden. In konkurrierenden Konstruktionen kann mehr als eine Pipe für extrem häufige Anweisungen wie Hinzufügen ausgelegt sein , sodass mehr als zwei oder mehr dieser Anweisungen gleichzeitig ausgeführt werden können, was dazu beitragen kann, die Effizienz bei unausgeglichenen Workflows zu erhöhen. In Übereinstimmung mit der extrem spartanischen Designphilosophie werden für die SPU keine Ausführungseinheiten mehrfach bereitgestellt.
Das Verständnis der Einschränkungen des restriktiven Zwei-Pipeline-Designs ist eines der Schlüsselkonzepte, die ein Programmierer verstehen muss, um effizienten SPU-Code auf der niedrigsten Abstraktionsebene zu schreiben. Für Programmierer, die auf höheren Abstraktionsebenen arbeiten, gleicht ein guter Compiler die Parallelität der Pipeline nach Möglichkeit automatisch aus.
SPE Leistung und Leistung
Das Leistungsprofil dieser Implementierung für einen einzelnen SPU-Prozessor ist wie folgt getestet: IBM testet es unter einer hohen Transformations- und Beleuchtungslast [durchschnittlicher IPC von 1,4]:
| Spannung (V) | Frequenz (GHz) | Leistung (W) | Die temp. (° C) |
|---|---|---|---|
| 0,9 | 2.0 | 1 | 25 |
| 0,9 | 3.0 | 2 | 27 |
| 1.0 | 3.8 | 3 | 31 |
| 1.1 | 4.0 | 4 | 38 |
| 1.2 | 4.4 | 7 | 47 |
| 1.3 | 5.0 | 11 | 63 |
Der Eintrag für den 2,0-GHz-Betrieb bei 0,9 V steht für eine Konfiguration mit geringem Stromverbrauch. Andere Einträge zeigen die stabile Spitzenbetriebsfrequenz, die mit jedem Spannungsinkrement erreicht wird. In CMOS-Schaltungen steigt die Verlustleistung in der Regel in einem groben Verhältnis zu V 2 F, dem Quadrat der Spannung mal der Betriebsfrequenz.
Obwohl die von den IBM-Autoren bereitgestellten Leistungsmessungen nicht präzise genug sind, vermitteln sie einen guten Eindruck vom Gesamttrend. Diese Zahlen zeigen, dass das Teil unter Testlaborbedingungen über 5 GHz laufen kann - allerdings bei einer Düsentemperatur, die für handelsübliche Standardkonfigurationen zu hoch ist. Die ersten kommerziell erhältlichen Cell-Prozessoren wurden von IBM für einen Betrieb mit 3,2 GHz bewertet. Diese Betriebsgeschwindigkeit zeigt in dieser Tabelle eine SPU-Chip-Temperatur in einer komfortablen Umgebung von 30 Grad.
Beachten Sie, dass eine einzelne SPU 6% der Chipfläche des Zellenprozessors darstellt. Die in der obigen Tabelle angegebenen Leistungsangaben machen nur einen kleinen Teil des gesamten Strombudgets aus.
IBM hat öffentlich angekündigt, Cell auf einer zukünftigen Technologie unterhalb des 90-nm-Knotens zu implementieren, um den Stromverbrauch zu verbessern. Ein reduzierter Stromverbrauch könnte möglicherweise dazu führen, dass das vorhandene Design auf 5 GHz oder mehr angehoben wird, ohne die thermischen Einschränkungen bestehender Produkte zu überschreiten.
Zelle bei 65 nm
Das erste Schrumpfen der Zelle erfolgte am 65-nm-Knoten. Durch die Reduzierung auf 65 nm wurde die vorhandene 230 mm 2 -Düse basierend auf dem 90 nm-Verfahren auf die Hälfte ihrer aktuellen Größe (ca. 120 mm 2) reduziert, wodurch auch die Herstellungskosten von IBM erheblich reduziert wurden.
Am 12. März 2007 gab IBM bekannt, dass die Produktion von 65-nm-Zellen in seiner Fabrik in East Fishkill aufgenommen wurde. Die dort produzierten Chips sind anscheinend nur für IBMs eigene Cell Blade- Server bestimmt, die als erste die 65-nm-Zellen erhielten. Sony stellte im November 2007 die dritte Generation der PS3 vor, das 40-GB-Modell ohne PS2-Kompatibilität, für das die Verwendung der 65-nm-Zelle bestätigt wurde. Dank der geschrumpften Zelle konnte der Stromverbrauch von 200 W auf 135 W gesenkt werden.
Zuerst war es nur bekannt , daß der 65 nm-Cells Takt bis 6 GHz und lief auf 1,3 V Kernspannung, wie gezeigt , auf dem ISSCC 2007. Diese dem Chip eine theoretische Spitzenleistung von 384 gegeben hätte GFLOPS in FP8 Viertel Präzision ( 48 GFLOPs in FP64-Doppelgenauigkeit), eine signifikante Verbesserung gegenüber dem 204,8- GFLOPS-Peak (25,6 GFLOPs FP64-Doppelgenauigkeit), den eine 90-nm-3,2-GHz-Zelle mit 8 aktiven SPUs liefern könnte. IBM kündigte ferner an, neue Energiesparfunktionen und eine doppelte Stromversorgung für das SRAM-Array implementiert zu haben. Diese Version war noch nicht das lange gerüchteweise "Cell +" mit verbesserter Gleitkomma-Leistung von Double Precision, das Mitte 2008 erstmals im Roadrunner-Supercomputer in Form von QS22 PowerXCell-Blades das Licht der Welt erblickte . Obwohl IBM zuvor über höher getaktete Zellen sprach und diese sogar zeigte, blieb die Taktrate konstant bei 3,2 GHz, selbst für das mit doppelter Genauigkeit aktivierte "Cell +" des Roadrunner. IBM hat sich stattdessen dafür entschieden, den Stromverbrauch zu senken, indem die Taktrate konstant gehalten wurde. PowerXCell-Cluster sind sogar die besten Blue Gene- Cluster von IBM (371 MFLOPS / Watt), die bereits weitaus energieeffizienter sind als Cluster aus herkömmlichen CPUs (265 MFLOPS / Watt und weniger).
Zukünftige Ausgaben in CMOS
Perspektiven bei 45 nm
Bei ISSCC 2008 IBM angekündigt Zelle an dem 45 nm - Knoten. IBM sagte, dass es 40 Prozent weniger Leistung bei gleicher Taktrate als sein 65-nm-Vorgänger benötigen würde und dass die Chipfläche um 34 Prozent schrumpfen würde. Die 45-nm-Zelle benötigt weniger Kühlung und ermöglicht eine billigere Produktion, auch durch die Verwendung eines viel kleineren Kühlkörpers. Die Massenproduktion sollte ursprünglich Ende 2008 beginnen, wurde jedoch auf Anfang 2009 verschoben .
Perspektiven über 45 nm
Sony, IBM und Toshiba kündigten an, im Januar 2006 mit der Arbeit an einer Zelle mit einer Größe von nur 32 nm zu beginnen. Da der Prozess in Fabriken jedoch normalerweise auf globaler und nicht auf individueller Chipskala schrumpft, war dies lediglich eine öffentliche Verpflichtung, Cell zu übernehmen 32 nm.