PowerPC
PowerPC (PPC) ist eine 1991 durch ein Konsortium aus Apple, IBM und Motorola (heute: Freescale) – auch kurz AIM genannt – spezifizierte CPU-Architektur.
Der Name PowerPC ist ein Akronym, wobei Power für Performance optimization with enhanced RISC (Leistungsoptimierung durch erweitertes RISC) und PC für Performance Chip (Hochleistungs-Chip) steht.
Technologie und Einsatzgebiete
PowerPC ist heute eine 64-Bit-Prozessorarchitektur auf RISC-Basis, wobei auch 32-Bit-Versionen verfügbar sind (bei IBM „Subset“ genannt). PowerPC beherrschen Gleitkommazahlen doppelter und einfacher Genauigkeit und arbeiten im Big-Endian-Modus, manche Prozessormodelle können jedoch alternativ auf den Little-Endian-Modus umschalten. Fast alle Prozessoren neuerer Bauart verfügen auch über die von Motorola entwickelte AltiVec-Vektoreinheit oder das IBM-Äquivalent VMX. Altivec wurde mit dem Power PC 7400 alias PowerPC G4 eingeführt. Der neueste Zugang zur Familie ist der Doppelkern-Prozessor IBM PPC970MP; der Vorläufer IBM PPC970FX kam in den Macintosh G5 mit bis zu 2,7 GHz Taktfrequenz zum Einsatz. Der IBM PPC970MP wurde in der letzten Generation der Power Mac G5 eingesetzt, und zwar mit 2,0 GHz und 2,3 GHz im kleinen und mittleren Modell sowie im Dual-Betrieb (vier Kerne) mit 2,5 GHz im Spitzenmodell Power Mac G5 Quad 2,5 GHz.
PowerPC-Prozessoren sind u. a. im Einsatz in Apple-Macintosh-Rechnern, in der IBM pSeries (RS/6000) und IBM Blade JS20, in den Motorola PowerStack-Rechnern, im Nintendo GameCube und Wii, in Form des Cell in der Playstation 3 von Sony sowie in der Xbox 360 von Microsoft und in vielen eingebetteten Systemen.
Seit 1996 basieren auch Amiga-Rechner faktisch auf diesem Prozessor, und auch kompatible Systeme wie der Pegasos-Rechner von Genesi und der AmigaOne von Eyetech setzen ihn ein.
Auch die populären Digitalreceiver d-box 2 (PPC823), Dreambox (PPC405) und viele andere Digitalreceiver verwenden einen PowerPC-Prozessor.
Selbst die Lockheed Martin F-22 enthält die PowerPC Architektur.
Geschichte und Zukunft
Das Konsortium wurde auf Betreiben von Apple gegründet, die einen Nachfolger für die von ihnen verwendeten 680x0-Prozessoren von Motorola (heute: Freescale) suchten. Der von IBM für deren High-End-Workstations entwickelte POWER-Prozessor war wegen seiner leistungsfähigen und erweiterbaren Architektur ein interessanter Kandidat, jedoch in der Fertigung viel zu teuer, da es sich zum damaligen Zeitpunkt noch um ein Modul mit mehreren Chips handelte. Motorola brachte in die Entwicklung die Speicherverwaltungs- und Puffer-Einheit ihrer 88000-RISC-Prozessoren ein (die 88k-Familie wurde daraufhin eingestellt, die 68k-Familie existiert heute noch als Microcontroller und bildet auch die Basis für die hierzu kompatible ColdFire-Familie).
Gleichzeitig mit der Entwicklung der PowerPC-Prozessoren wurde auch die Referenzplattform PReP (PowerPC Reference Platform) geschaffen, die zur Konkurrenz gegen die etablierten Intel-basierten PCs werden sollte. Dabei zeigte sich dann allerdings, dass die Allianz der drei Firmen nicht in allen Belangen einer Meinung war; und die ohnehin eher zurückhaltenden Bemühungen verliefen später im Sande.
PReP wurde später durch CHRP (Common Hardware Reference Platform) abgelöst. Der jüngste, kommerziell erhältliche Spross dieser Familie ist der IBM-zertifizierte Pegasos von Genesi, der auch durch Freescale vertrieben wird.
Am 6. Juni 2005 kündigte Apple überraschend an, dass künftig Intel-Prozessoren (x86) anstelle von PowerPCs in den Mac-Rechnern eingebaut werden sollen. Diese Entscheidung begründete Apple mit Lieferschwierigkeiten und Produktionsmängeln seitens IBM. Apple gab als Grund auch an, dass PowerPC-Prozessoren mehr Strom zum Erbringen der gleichen Leistung benötigen, was sich besonders in der Akkulaufzeit bei PowerBooks und iBooks niederschlägt. (Tatsächlich erreichten die Nachfolgemodelle mit x86-Prozessoren trotz stärkerer Akkus eine kürzere Akkulaufzeit. Allerdings erhöhte sich die Leistung bei nativen Applikationen teils dramatisch.) Vor allem jedoch verwies Steve Jobs auf Zukunftspläne („roadmaps“) von Intel, die eine technische Überlegenheit für die Zukunft versprachen. Apple verbaute nur etwa 2% der PowerPC-Prozessoren, die zu dem Zeitpunkt produziert wurden.
In einem am 6. Dezember 2005 veröffentlichten Interview bekräftigte der CEO von Freescale, Michel Mayer, u. a. als Konsequenz hieraus die Entscheidung, die PowerPC-Baureihe ggf. umzubenennen und sich bei der weiteren Vermarktung nicht weiter um den Desktop-/Laptop-Markt zu kümmern.
Vor allem im Bereich eingebetteter Systeme und für den Endanwenderbereich gilt diese Architektur als eine für die Zukunft wichtige, z. B. arbeiten die Spielekonsolen, Microsofts Xbox 360 und Nintendos Wii, mit PowerPC-basierter Technik.
Auf der Ende Juni 2005 abgehaltenen 20. internationale Supercomputer-Konferenz ISC 2005 zeigte sich außerdem, dass sechs der zehn zu diesem Zeitpunkt schnellsten Computer der Welt auf PowerPC basierten, davon fünf auf dem PowerPC 440 (eServer BlueGene) [1].
Der Schwerpunkt der Einsatzgebiete der PowerPC-Architektur verlagert sich somit an die beiden Enden der Skala: den Bereich eingebetteter Systeme einerseits und den Hochleistungsserverbereich andererseits.
PowerPC-Generationen und -Modelle (Auswahl)

Erste Generation G1
- MPC601 – 50, 66, 80 und 100 MHz, 32 KByte Unified L1 Cache, L2 Cache bis 1 MByte; 0,6 µm Herstellungsprozess (1993, verwendet u.A. in der ersten Power-Mac-Generation)
- MPC601+ – 110 und 120 MHz, sonst wie MPC601; 0,6 µm Herstellungsprozess
- MPC602 – speziell für Embedded-Anwendungen (gemultiplexter Daten-/Adressbus); 0,6 µm Herstellungsprozess
Zweite Generation G2
- MPC603 – 66 bis 80 MHz, 16 KByte (8 KByte Instruction, 8 KByte Data), L2 Cache bis 1 MByte; vor allem für den mobilen und "Low Cost"-Bereich; 0,5 µm Herstellungsprozess
- MPC603e – 100 bis 200 MHz, ab 166 MHz 32 KByte L1 Cache (16 KByte Instruction, 16 KByte Data), L2 Cache bis 1 MByte (größere L1 Caches für bessere 68k Emulator-Performance); 0,5 µm Herstellungsprozess
- MPC603ev – 225 bis 300 MHz, 32 KByte L1 Cache (16 KByte Instruction, 16 KByte Data), L2 Cache bis 1 MByte; 0,35 µm Herstellungsprozess
- MPC604 – 100 bis 180 MHz, 32 KByte L1 Cache (16 KByte Instruction, 16 KByte Data), L2 Cache bis 1 MByte; der 604 war vor dem 603 erhältlich (1994) und der erste High End PowerPC; 0,5 µm Herstellungsprozess

- MPC604e – 166 bis 233 MHz, 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), L2 Cache bis 1 MByte; 0,35 µm Herstellungsprozess
- MPC604r – 250 bis 375 MHz, 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), L2 Inline-Cache bis 1 MByte; 0,25 µm Herstellungsprozess (300- und 350-MHz-Modell) oder 0,35 µm (250-MHz-Modell), Codename "Mach 5" und "Helmwind"
- MPC620 – 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), 1 bis 128 MByte L2 Cache; die erste 64-Bit-PowerPC-Implementierung (nicht POWER)
- x704 BiCOMOS PowerPC Implementierung von Exponential Technologies (nie verfügbar) [2]

Dritte Generation G3
- MPC750 – 200 bis 366 MHz, 0,25 µm Herstellungsprozess, Codename "Arthur"
- MPC750CX – 350 bis 550 MHz, 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), 256 KByte on-Chip L2 Cache, 0,18 µm Herstellungsprozess; Codename "Sidewinder"
- MPC750CXe – 400 bis 700 MHz, 350 bis 550 MHz, 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), 256 KByte on-Chip L2 Cache, L3 Cache extern möglich, 0,18 µm Herstellungsprozess; Codename "Anaconda"
- MPC750FX – 600 bis 1000 MHz, 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), 512 KByte on-Chip L2 Cache, L3 Cache extern möglich, 0,13 µm Herstellungsprozess; Codename "Sahara"
- MPC750GX - 733 bis 1000 MHz, 64 KByte L1 Cache (32 KByte Instruction, 32 KByte Data), 1024 KByte on-Chip L2 Cache, L3 Cache extern möglich, 0,13 µm Herstellungsprozess; Codename "Gobi"
- Gekko 485 MHz (verwendet im Nintendo GameCube)
Vierte Generation G4
- MPC7400 — 350 bis 500 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, maximal 2 MByte L2 Cache (ECC und non-ECC), Verlustleistung max. 11 Watt, erster PowerPC mit AltiVec, Codename "Max".
- MPC7410 — 400 bis 550 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, maximal 2 MByte L2 Cache (ECC und non-ECC), Verlustleistung max. 11 Watt
- MPC7441 — 600 und 700 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 256 KByte L2 Cache on Chip, maximal 2 MByte L3 Cache; Low Power-Version des 7450/7451
- MPC7445 — 600 bis 1000 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 256 KByte L2 Cache on Chip, Verlustleistung max. 26 Watt
- MPC7447 — 600 bis 1267 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 256 oder 512 KByte L2 Cache on Chip, Verlustleistung max. 26 Watt, kein L3 Cache
- MPC7447A — 600 bis 1420 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 512 KByte L2 Cache on Chip, Verlustleistung max. 29 Watt
- MPC7448 — 600 bis 1700 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 1024 KByte L2 Cache mit ECC on Chip
- MPC7450 — 533 bis 867 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, Codename „Voyager“
- MPC745 — 300 bis 350 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, Verlustleistung max. 5,3 Watt
- MPC7451 — 533 bis 867 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 256 KByte L2 Cache on Chip, maximal 2 MByte L3 Cache
- MPC7455 — 600 bis 1425 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 256 KByte L2 Cache on Chip, Verlustleistung max. 45 Watt, Codename „Apollo“
- MPC7457 — 600 bis 1333 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, 512 KByte L2 Cache on Chip, maximal 2 MByte L3 Cache, Verlustleistung max. 25 Watt
- MPC755 — 300 bis 400 MHz, 32 KByte/32 KByte Data/Instruction L1 Cache, maximal 1 MByte L3 Cache, Verlustleistung max. 8 Watt
Fünfte Generation G5
- 970 G5 64-Bit-Implementierung, abgeleitet vom IBM POWER4, erweitert um VMX (IBMs Äquivalent zu Motorolas AltiVec) mit 1,4 GHz, 1,6 GHz, 1,8 GHz, und 2,0 GHz Taktfrequenz (2003)
- 970FX G5 mit bis zu 2,5 GHz Taktfrequenz (2004), von Apple auf 2,7 GHz übertaktet
- 970MP G5 „Antares“ (2005) Dual Core mit 1,4 bis 2,3 GHz Takt (2005), von Apple auf 2,5 GHz übertaktet
- 970GX G5 (2006) bis zu 3 GHz Takt. Bei 1,6 GHz 16 W Leistungsaufnahme, 85 W bei 3 GHz
Betriebssysteme
- IBM i5/OS
- Apple Mac OS X
- Apple Mac OS (bis 9) ab Version 7.5
- Darwin bzw. OpenDarwin
- Linux (LinuxPPC)
- Microsoft Windows NT
- Sun Solaris (Release 2.5.1) bzw. „Polaris“
- IBM AIX
- OS-9
- VxWorks
- BeOS
- NetBSD
- OpenBSD
- FreeBSD (nur rudimentär)
- AmigaOS (Version 4)
- PowerUP/WarpUP PowerPC Kernel (für AmigaOS bis Version 3.9)
- MorphOS
- IBM OS/2 Warp Power Edition
- QNX
- MQX
Einzelnachweise
- ↑ http://www.heise.de/newsticker/meldung/60871 Bericht zur ISC 2005 auf heise.de
- ↑ http://www.heise.de/newsticker/meldung/892 Meldung bei heise.de vom 13. März 1997
Weblinks
- realworldtech – PowerPC 970GX Vorstellung auf der SSCC 2006 in San Francisco.
- Cnet Interview mit Freescale CEO Michel Mayer über die Zukunft des PowerPC
- Das Linux PPC-Projekt
- PowerPC Prozessoren: Bilder und Beschreibungen auf cpu-collection.de
- Pegasos: einziger verbliebener, frei verfügbarer CHRP-Rechner
- PPCNUX
- Eine Community rund um die POWER-Architektur
- Polaris
- Pegasos Forum – Deutsche Community zum Pegasos PowerPC Project
- MQX Embedded - Homepage vom Embedded OS Distributor MQX