# IBM POWER

IBM Power-microprocessors (oorspronkelijk POWER tot Power10) worden door IBM ontworpen en verkocht voor servers en supercomputers. POWER is een acroniem voor Performance Optimization With Enhanced RISC. De Power-lijn van microprocessors is gebruikt in IBM's RS/6000-, AS/400-, pSeries-, iSeries-, System p-, System i- en Power Systems-lijnen van servers en supercomputers. Ze zijn ook gebruikt in apparaten voor gegevensopslag en werkstations door IBM en door andere serverfabrikanten zoals Bull en Hitachi.
De Power-familie werd oorspronkelijk eind jaren tachtig op de markt gebracht en wordt nog steeds actief ontwikkeld. In het begin implementeerden ze de POWER-instructiesetarchitectuur (ISA), die uitgroeide tot PowerPC en later tot Power ISA. In augustus 2019 kondigde IBM aan dat Power ISA open source zou worden. Als onderdeel van de verhuizing werd ook aangekondigd dat de OpenPOWER Foundation zou toetreden tot The Linux Foundation.

## Geschiedenis
### Beginjaren
#### Het 801-onderzoeksproject

In 1974 startte IBM een project om een telefooncentrale te bouwen die voor die tijd een enorme rekenkracht vergde. Omdat de toepassing relatief eenvoudig was hoefde deze machine alleen I/O uit te voeren, elementaire berekeningen te maken en gegevens tussen registers en geheugen te verplaatsen. Er was geen behoefte aan speciale instructies om zware rekenkundige handelingen uit te voeren. Deze eenvoudige ontwerpfilosofie, waarbij elke stap van een complexe operatie expliciet wordt gespecificeerd door één machine-instructie en alle instructies in dezelfde constante tijd moeten worden voltooid, zou later bekend worden als RISC. Toen het telefooncentraleproject werd geannuleerd behield IBM het ontwerp van de processor voor algemeen gebruik en noemde deze 801, naar gebouw nummer 801 in het Thomas J. Watson Research Center.

#### Het Cheetah-project

In 1982 ging IBM de superscalaire grenzen van het 801-ontwerp verkennen door meerdere uitvoeringseenheden te gebruiken om te bepalen of een RISC-machine meerdere instructies per cyclus kon uitvoeren met het oog op de prestaties te verbeteren. Er zijn veel wijzigingen aangebracht in het 801-ontwerp om meerdere uitvoeringseenheden mogelijk te maken, en de Cheetah-processor heeft afzonderlijke eenheden voor vertakkingsvoorspelling, berekeningen met vaste komma en met zwevende komma. In 1984 werd voor CMOS gekozen vanwege de verbeterde circuitintegratie en de betere prestaties.

#### Het America-project

In 1985 begon het onderzoek naar een RISC-architectuur van de tweede generatie bij het IBM Thomas J. Watson Research Center, waar de "AMERICA-architectuur" werd geproduceerd. In 1986 begon IBM Austin met de ontwikkeling van computers uit de RS/6000-serie op basis van die architectuur. Dit zouden de eerste POWER-processors worden die gebruik maakten van de eerste POWER ISA.

### POWER

De eerste IBM-computers waarin de POWER ISA is verwerkt zijn de RISC System/6000- of RS/6000-serie. Ze werden uitgebracht in februari 1990. Deze RS/6000-computers waren onderverdeeld in twee klassen: POWERstation-werkstations en POWERserver-servers. De eerste RS/6000 CPU heeft twee configuraties, genaamd "RIOS-1" en "RIOS.9" (beter gekend als de POWER1 CPU). Een RIOS-1-configuratie heeft in totaal 10 discrete chips: een instructiecache-chip, een fixed-point-chip, een floating-point-chip, 4 data L1-cache-chips, een opslagcontrolechip, input/output-chips en een klokchip. De goedkopere RIOS.9-configuratie heeft 8 discrete chips: een instructiecache-chip, een fixed-point-chip, een floating-point-chip, 2 data-cache-chips, een opslagcontrolechip, een input/output-chip en een klokchip.
De POWER1 is de eerste microprocessor die gebruik maakte van het hernoemen van registers en out-of-order execution. Een vereenvoudigde en minder krachtige versie van de RIOS-1 met 10 chips werd in 1992 gemaakt voor de instapmodellen van de RS/6000-serie. Deze processor gebruikt slechts één chip en wordt RISC Single Chip of RSC genoemd.

#### POWER1-processoren

* RIOS-1 – de originele versie met 10 chips
* RIOS.9 – een minder krachtige versie van RIOS-1
* POWER1+ – een snellere versie van RIOS-1 gemaakt met een verkleind fabricageproces
* POWER1++ – een nog snellere versie van RIOS-1
* RSC – een implementatie met één chip van RIOS-1
* RAD6000 – een stralingsbestendige versie van de RSC die voornamelijk bedoeld is voor de ruimtevaart

### POWER2

IBM ontwikkelde de POWER2-processor als opvolger van de POWER1. Door het toevoegen van een tweede fixed-point-eenheid, een tweede krachtige floating-point-eenheid en andere prestatieverbeteringen en nieuwe instructies aan het ontwerp, leverde de POWER2 ISA bij zijn introductie in 1993 toonaangevende prestaties. De POWER2 was eveneens een ontwerp met meerdere chips, waar IBM een versie met één chip van maakte: de POWER2 Super Chip (of P2SC). De P2SC werd in krachtige servers en supercomputers gebruikt. Bij de introductie in 1996 was de P2SC de grootste processor met het hoogste aantal transistoren en was hij toonaangevend op het gebied van drijvende-kommabewerkingen.

#### POWER2-processoren

* POWER2 – Een processormodule met 6 tot 8 chips
* POWER2+ – een goedkopere 6-chipversie van POWER2 met ondersteuning voor externe L2-caches
* P2SC – een snellere versie met één chip van POWER2
* P2SC+ – een nog snellere versie van P2SC dankzij een verkleind fabricageproces

### PowerPC

In 1991 ging Apple op zoek naar een opvolger voor de CISC-gebaseerde Motorola 68000-familie van processoren die gebruikt werden in de Apple Macintosh-productlijn. Motorola experimenteerde in die tijd met een eigen RISC-platform, de 88000. IBM benaderde Apple met het doel samen te werken en de drie richtten de AIM-alliantie op om de PowerPC ISA te bouwen die sterk gebaseerd is op de POWER ISA, maar met toevoegingen van zowel Apple als Motorola. Het zou een complete 32/64 bit RISC-architectuur worden, variërend van zeer goedkope ingebedde microcontrollers tot zeer hoogwaardige supercomputer- en servertoepassingen.
Na twee jaar ontwikkeling werd in 1993 de PowerPC ISA geïntroduceerd. Dit was een aangepaste versie van de RSC-architectuur waarin enkele POWER-functies verwijderd waren, maar met enkele nieuwe drijvende-komma-instructies met enkele precisie en algemene register-naar-register vermenigvuldig- en deelinstructies. Er kwam ook een 64-bits versie van de ISA en ondersteuning voor SMP.

### Het Amazon-project

In 1990 wilde IBM de low-end RS/6000 RISC- en de mid-range AS/400 CISC-serverarchitecturen samenvoegen tot één gemeenschappelijke RISC instructieset die zowel het AIX- als het OS/400-besturingssysteem van IBM kon draaien. De bestaande POWER en de aanstaande PowerPC instructiesets werden door het AS/400-team ongeschikt geacht, dus werd een uitbreiding op de 64-bit PowerPC-instructieset ontwikkeld: PowerPC-AS (voor Advanced Series of Amazon Series). Later werden uitbreidingen van het RS/6000-team en de AIM-alliantie toegevoegd en met de introductie van POWER4 in 2001 werden ze allemaal samengevoegd in één instructiesetarchitectuur: PowerPC v.2.0.

### POWER3

De POWER3 uit 1998 begon als PowerPC 630, een opvolger van de commercieel mislukte PowerPC 620. Deze processor maakt gebruik van een combinatie van de POWER2 instructieset en de 32/64-bit PowerPC instructieset met ondersteuning voor SMP, allemaal vervat in één chip. De POWER3 werd in grote mate gebruikt in RS/6000-computers. De tweede generatie, de POWER3-II, is de eerste commercieel verkrijgbare processor van IBM die gebruik maakt van koperen verbindingen. De POWER3 is de laatste processor die een POWER-instructieset gebruikt, alle volgende modellen gebruiken de PowerPC-instructiesets.

#### POWER3-processoren

* POWER3 – Een combinatie van de POWER- en PowerPC-instructiesets
* POWER3-II – Een snellere POWER3 vervaardigd volgens een verkleind, op koper gebaseerd fabricageproces

### POWER4

De POWER4 uit 2001 voegde de 32/64-bits PowerPC-instructieset en de 64-bits PowerPC-AS-instructieset van het Amazon-project samen in de nieuwe PowerPC v.2.0-specificatie, waardoor de RS/6000- en AS/400-computerfamilies van IBM werden verenigd. Naast de unificatie van de verschillende platforms, is POWER4 ook ontworpen om zeer hoge frequenties te bereiken en grote L2-caches te gebruiken. Het is de eerste commercieel verkrijgbare multicoreprocessor en bestond zowel in een versie met één chip als in een module met vier chips. In 2002 maakte IBM op verzoek van Apple ook een versie met verminderde kosten en functies van de POWER4: de PowerPC 970.

#### POWER4-processoren

* POWER4 – De eerste dual-core microprocessor en de eerste PowerPC-processor die de 1 GHz-grens doorbreekt
* POWER4+ – Een snellere POWER4 vervaardigd volgens een verkleind fabricageproces

### POWER5

De POWER5 uit 2004 bouwde voort op de populaire POWER4 en integreerde geheugencontrollers en simultane multithreading in het ontwerp, een technologie die pionierde in de op PowerPC-AS gebaseerde RS64-III-processor. POWER5 werd ontworpen voor multiprocessing op grote schaal en werd geleverd in modules met meerdere chips en ingebouwde grote L3-cachechips.

#### POWER5-processoren

* POWER5 – Een ontwerp met vier POWER5-chips en vier L3-cachechips op een grote multi-chipmodule
* POWER5+ – Een snellere POWER5 vervaardigd volgens een verkleind fabricageproces, voornamelijk om het energieverbruik te verminderen

### Power ISA

In 2004 werd Power.org opgericht, een organisatie met als missie om de toekomstige ontwikkeling van de PowerPC-specificaties te verenigen en te coördineren. Dit was nodig omdat de PowerPC-specificatie gefragmenteerd geraakt was: Motorola had zijn halfgeleidertak afgesplitst in het nieuwe bedrijf Freescale Semiconductor, dat zich vooral concentreerde op 32-bit embedded toepassingen terwijl IBM zich bleef richten op high-end servers en supercomputer. Er was ondertussen ook een groep van PowerPC-licentiehouders zoals AMCC, Synopsys, Sony, Microsoft, P.A. Semi, Cray en Xilinx die duidelijkheid nodig hadden. De gezamenlijke inspanning was niet alleen om de ontwikkeling van de technologie maar ook om de marketing te stroomlijnen.
De nieuwe instructiesetarchitectuur heette Power ISA en voegde de PowerPC v.2.02-specificatie van POWER5 samen met de PowerPC Book E-specificatie van Freescale, evenals enkele gerelateerde technologieën zoals de Vector Multimedia Extensions (VMX) bekend onder de merknaam AltiVec en hardwarevirtualisatie. Deze nieuwe ISA heette Power ISA v.2.03 en POWER6 was de eerste high-end processor van IBM die er gebruik van maakte. Eerdere POWER- en PowerPC-specificaties werden voorgoed als verouderd geklasseerd, er worden geen processoren meer ontwikkeld op basis van deze oudere instructiesets.

### POWER6

POWER6 kwam in 2007 op de markt en was het resultaat van het ambitieuze eClipz-project om de I- (AS/400), P- (RS/6000) en Z- (Mainframe) instructiesets onder één gemeenschappelijk platform samen te voegen. I en P waren al samen met de POWER4, maar de eClipz-inspanningen slaagden er niet in om de op CISC gebaseerde z/Architecture te integreren. De z10-processor werd de eClipz-evenknie van POWER6. Vanaf 2021 wordt er door IBM nog steeds een aparte lijn processors ontwikkeld die z/Architecture implementeren, waarvan de nieuwste de IBM Telum is.
Vanwege eCLipz is de POWER6 een ongebruikelijk ontwerp omdat het zich richtte op zeer hoge frequenties en geen gebruik maakte van out-of-order execution, wat nochtans sinds het prille begin een kenmerkende eigenschap was van POWER- en PowerPC-processors. POWER6 introduceerde ook de decimale drijvende-komma-eenheid in de Power ISA, iets dat het deelt met z/Architecture.
Met de POWER6 heeft IBM in 2008 de voormalige System p- en System i-server- en werkstationfamilies samengevoegd tot één familie: de Power Systems. Power Systems-machines kunnen verschillende besturingssystemen uitvoeren, zoals AIX, Linux en IBM i.

#### POWER6-processoren

* POWER6 – Bereikte 5 GHz, wordt geleverd in een module met één enkele chip erop of in een multi-chipmodule met twee L3-cachechips
* POWER6+ – Een kleine update, vervaardigd volgens hetzelfde proces als POWER6

### POWER7

POWER7 uit 2010 is een symmetrisch multiprocessorontwerp dat een substantiële evolutie doormaakte ten opzichte van het POWER6-ontwerp, waarbij de nadruk meer lag op energie-efficiëntie via meerdere kernen, simultane multithreading (SMT), out-of-order execution en grote eDRAM L3-caches in de chip. De chip met acht kernen kan 32 threads parallel uitvoeren en heeft een modus waarin kernen kunnen worden uitgeschakeld om hogere frequenties te bereiken voor degenen die overblijven. POWER7 maakt gebruik van een nieuwe krachtige drijvende-komma-eenheid genaamd VSX die de functionaliteit van de traditionele FPU combineert met AltiVec. Zelfs bij een lagere kloksnelheid presteert elke POWER7-kern sneller dan zijn POWER6-tegenhanger.

#### POWER7-processoren

* POWER7 – Wordt geleverd in modules met één chip of in multi-chipmodule-configuraties met vier chips voor gebruik in supercomputers
* POWER7+ – Verkleind fabricageproces en verhoogde L3-cache en frequentie

### POWER8

De POWER8 uit 2014 is een 4 GHz, 12-coreprocessor met 8 hardwarethreads per core, voor een totaal van 96 threads voor parallelle uitvoering. De processor beschikt over 96 MB eDRAM L3-cache op de chip en 128 MB off-chip L4-cache, alsook over een nieuwe uitbreidingsbus met de naam CAPI die bovenop PCIe draait en de oudere GX-bus vervangt. De CAPI-bus kan worden gebruikt om speciale off-chip acceleratorchips zoals GPU's, ASIC's en FPGA's aan te sluiten. De POWER8 is twee tot drie keer zo snel is als zijn voorganger, de POWER7.

### POWER9

De POWER9, die gelanceerd werd in 2017, is het eerste ontwerp dat elementen bevat van Power ISA v.3.0 die in december 2015 werd uitgebracht, inclusief de VSX-3-instructies. POWER9 bevat ook ondersteuning voor de NVLink-bustechnologie van Nvidia.
De POWER9-processor wordt geleverd in vier versies: twee 24-core SMT4-versies bedoeld om PowerNV te gebruiken voor op- en uitschaaltoepassingen en twee 12-core SMT8-versies bedoeld om PowerVM te gebruiken voor op- en uitschaaltoepassingen. Mogelijk komen er in de toekomst meer versies, aangezien de POWER9-architectuur in licentie kan gegeven worden en gewijzigd kan worden door de leden van de OpenPOWER Foundation.

### Power10

Power10, geïntroduceerd in september 2021, is gebaseerd op Power ISA v.3.1. De processor werd ontworpen om hogere prestaties per watt te leveren en kreeg betere geheugen- en I/O-architecturen, met een focus op AI-workloads. Het aantal functionele eenheden in elke Power10-kern is verdubbeld ten opzichte van zijn POWER9-voorganger. Elke chip heeft ook acht cryptoversnellers die algoritmen zoals AES en SHA-3 voor hun rekening nemen.
De Power10-processor is beschikbaar in twee versies: een 15-core SMT8-versie bedoeld voor applicaties met een hoge doorvoer die minder rekenkracht vereisen en een 30-core SMT4-versie bedoeld voor rekenintensieve applicaties. Alhoewel beide versies fysisch identiek zijn en het verschil alleen bepaald wordt door de firmware in de chip, is het niet mogelijk om de configuratie van de chip achteraf te wijzigen.

## Specificaties

| Naam | Afbeelding | ISA | Bits | Cores | Fabr | Transistoren | Snelheid | Jaartal |
| RIOS-1 | | POWER | 32 bits | 1 | 1,0 μm | 6.9 miljoen | 20–30 MHz | 1990 |
| RIOS.9 | | POWER | 32 bits | 1 | 1,0 μm | 6.9 miljoen | 20–30 MHz | 1990 |
| POWER1+ | | POWER | 32 bits | 1 | | 6.9 miljoen | 25–41,6 MHz | 1991 |
| POWER1++ | | POWER | 32 bits | 1 | | 6,9 miljoen | 25–62,5 MHz | 1992 |
| RSC | | POWER | 32 bits | 1 | 0,8 μm | 1 miljoen | 33–45 MHz | 1992 |
| POWER2 | | POWER2 | 32 bits | 1 | 0,72 μm | 23 miljoen | 55–71,5 MHz | 1993 |
| POWER2+ | | POWER2 | 32 bits | 1 | 0,72 μm | 23 miljoen | 55–71,5 MHz | 1994 |
| P2SC | | POWER2 | 32 bits | 1 | 0,29 μm | 15 miljoen | 120–135 MHz | 1996 |
| P2SC+ | | POWER2 | 32 bits | 1 | 0,25 μm | 15 miljoen | 160 MHz | 1997 |
| RAD6000 | | POWER | 32 bits | 1 | 0,5 μm | 1,1 miljoen | 20–33 MHz | 1997 |
| POWER3 | | POWER2PowerPC 1.1 | 64 bits | 1 | 0,35 μm | 15 miljoen | 200–222 MHz | 1998 |
| POWER3-II | | POWER2PowerPC 1.1 | 64 bits | 1 | 0,25 μm Cu | 23 miljoen | 333–450 MHz | 1999 |
| POWER4 | | PowerPC 2.00PowerPC-AS | 64 bits | 2 | 180 nm | 174 miljoen | 1–1,3 GHz | 2001 |
| POWER4+ | | PowerPC 2.01PowerPC-AS | 64 bits | 2 | 130 nm | 184 miljoen | 1,2–1,9 GHz | 2002 |
| POWER5 | | PowerPC 2.02Power ISA 2.03 | 64 bits | 2 | 130 nm | 276 miljoen | 1,5–1,9 GHz | 2004 |
| POWER5+ | | PowerPC 2.02 Power ISA 2.03 | 64 bits | 2 | 90 nm | 276 miljoen | 1,5–2,3 GHz | 2005 |
| POWER6 | | Power ISA 2.03 | 64 bits | 2 | 65 nm | 790 miljoen | 3,6–5 GHz | 2007 |
| POWER6+ | | Power ISA 2.03 | 64 bits | 2 | 65 nm | 790 miljoen | 3,6–5 GHz | 2009 |
| POWER7 | | Power ISA 2.06 | 64 bits | 8 | 45 nm | 1,2 miljard | 2,4–4,25 GHz | 2010 |
| POWER7+ | | Power ISA 2.06 | 64 bits | 8 | 32 nm | 2,1 miljard | 2,4–4,4 GHz | 2012 |
| POWER8 | | Power ISA 2.07 | 64 bits | 612 | 22 nm | ?4,2 miljard | 2,75–4,2 GHz | 2014 |
| POWER8met NVLink | | Power ISA 2.07 | 64 bits | 12 | 22 nm | 4,2 miljard | 3,26 GHz | 2016 |
| POWER9 | | Power ISA 3.0 | 64 bits | 1224 | 14 nm | 8 miljard | ~4 GHz | 2017 |
| Power10 | | Power ISA 3.1 | 64 bits | 1530 | 7 nm | 18 miljard | 3,5–4 GHz | 2021 |
| Naam | Afbeelding | ISA | Bits | Cores | Fabr | Transistoren | Snelheid | Jaartal |
Dit artikel of een eerdere versie ervan is een (gedeeltelijke) vertaling van het artikel IBM Power microprocessors op de Engelstalige Wikipedia, dat onder de licentie Creative Commons Naamsvermelding/Gelijk delen valt. Zie de bewerkingsgeschiedenis aldaar.
* ↑ van Miltenburg, Olaf, IBM maakt isa van Power-architectuur voor processors opensource. tweakers.net (21 augustus 2019).
* 1 2 (en) Cocke, John, Markstein, Victoria (januari 1990). The evolution of RISC technology at IBM. IBM Journal of Research and Development 34 (1): 4–11. DOI:10.1147/rd.341.0004.
* ↑ (en) Dewar, Robert B.K., Smosna, Matthew (1990). Microprocessors: A Programmer's View. McGraw-Hill, "Chapter 12: The IBM RISC Chips", pp. 377-408.
* ↑ (en) Parker Smith, Norris, IBM Launches Brand New Chip Family for the RS/6000 Line. HPCwire (11 oktober 1996).
* ↑ Smeets, Ralph, Geschiedenis van IBMs chipproductieavonturen beschreven. tweakers.net (1 april 2004).
* ↑ Bakker, Jasper, IBM ontwikkelt zelf 64-bits Power-chip. computable.nl (24 oktober 1997).
* ↑ Taken, Femme, IBM Power4 en Power4+ server roadmap. tweakers.net (25 april 2001).
* ↑ Brugge, Jonathan, Meer details over IBM's PowerPC 970. tweakers.net (14 december 2003 BC).
* ↑ Everaardt, Frank, Officiële introductie IBM Power5 servers. Hardware Info (7 mei 2004).
* ↑ (en) Johnson, Dexter, IBM's New Telum Chip Reboots the Mainframe. IEEE Spectrum (29 april 2022).
* ↑ Van Oost, Jibbe, IBM lanceert Power7-processor. techpulse.be (8 februari 2010).
* ↑ van Miltenburg, Olaf, IBM geeft details over Power8-processor met 12 cores. tweakers.net (27 augustus 2013).
* ↑ (en) IBM (juli-september 2018). Functionality and performance of NVLink with IBM POWER9 processors . IBM Journal of Research and Development 62 (4/5): 9:1-9:10. DOI:10.1147/JRD.2018.2846978.
* ↑ (en) Williams, Chris, Power9: Google gives Intel a chip-flip migraine, IBM tries to lures big biz. The Register (16 april 2016).
* ↑ (en) IBM Reveals Next-Generation IBM POWER10 Processor. IBM (17 augustus 2020).
* ↑ van Miltenburg, Olaf, IBM introduceert Power10-generatie van 7nm-serverprocessors. tweakers.net (17 augustus 2020).
* ↑ (en) Prickett Morgan, Timothy, IBM's Possible Designs For Power10 Systems. IT Jungle (31 augustus 2020).