Power ISA
Tervező | |
---|---|
Bitek száma | 32 bites / 64 bites (32 → 64) |
Bevezetés | 2006. |
Verzió | 3.1 |
Kialakítás | RISC |
Típus | betöltő-tároló (load/store) |
Kódolás | rögzített / változó |
Elágazás | feltételkód (állapotregiszter) |
Bájtsorrend | big-endian és kettős bájtsorrend |
Utasításkészlet- kiterjesztések | AltiVec, PowerPC AS, APU, DSP, CBEA |
Nyílt | igen, jogdíjmentes |
Regiszterek | |
|

A Power ISA egy csökkentett utasításkészletű (RISC) utasításkészlet-architektúra (ISA), amelyet jelenleg az OpenPOWER Alapítvány fejleszt, az IBM vezetésével. Az architektúrát eredetileg az IBM fejlesztette ki, később a fejlesztést átvette a mára megszűnt Power.org ipari csoport. A Power ISA a PowerPC architektúra továbbfejlesztése, amely a PowerPC ISA alapvető részének és a beágyazott alkalmazásokhoz tervezett opcionális „Book E” kiterjesztés egyesítésével jött létre. A két komponens egyesítése a Power.org alapító tagok, az IBM és a Freescale Semiconductor vezetésével történt 2006-ban.
A 3.0-s verzió előtt az ISA-t több kategóriára volt osztva. A processzorok ezekből a feladatukhoz szükséges kategóriákat valósítják meg. Egyes kategóriák megvalósításához a processzorok különböző osztályait alakították ki, például egy szerverosztályú processzor a következő kategóriákat tartalmazza: Alap, Szerver, Lebegőpontos, 64 bites, stb. Minden processzor megvalósítja az Alap (Base) kategóriát.
A Power ISA egy RISC betöltő/tároló (load/store) architektúra. Több regiszterkészlettel rendelkezik:
- 32 × 32 vagy 64 bites általános célú regiszter (GPR) az egész típusú műveletekhez,
- 64 × 128 bites „vektor-skalár” regiszter (VSR) vektor- és lebegőpontos műveletekhez,
- 32 × 64 bites lebegőpontos regiszter (FPR) a VSR-ek részeként a lebegőpontos műveletekhez,
- 32 × 128 bites vektorregiszter (VR) a VSR-ek részeként vektorműveletekhez,
- 8 × 4 bites feltételregiszter-mező (CR) az összehasonlítás és folyamatvezérlés céljaira,
- 11 különböző méretű speciális regiszter: számlálóregiszter (CTR), csatolóregiszter (link register, LR), időbázis (TBU, TBL), alternatív időbázis (ATBU, ATBL), akkumulátor (ACC), állapotregiszterek (XER, FPSCR, VSCR, SPEFSCR).
Az utasítások a 3.0-s verzióig 32 bit hosszúságúak, kivéve a VLE (változó hosszúságú kódolás) részhalmazt, ami nagyobb kódsűrűséget biztosít a kis teljesítményű beágyazott alkalmazások számára, valamint a 3.1-es verziót, amelyben bevezették a prefixálást 64 bites utasítások létrehozásához. A legtöbb utasítás triadikus, azaz két forrásoperandust és egy célt (céloperandust) tartalmaz. Az ISA támogatja az IEEE 754 szabványnak megfelelő egyszeres és kétszeres pontosságú lebegőpontos műveleteket, és tartalmaz összevont szorzás-összeadás (FMA) és decimális lebegőpontos utasításokat is. Van lehetőség fixpontos és lebegőpontos adatokon végzett SIMD műveletekre, egy utasításon belül akár 16 elemmel.
A Power ISA támogatja a Harvard típusú gyorsítótárakat, azaz a külön adat- és utasítás-gyorsítótárakat, valamint az egyesített gyorsítótárakat. A memóriaműveletek kizárólag betöltő és tároló műveletek lehetnek, és lehetővé teszik a sorrenden kívüli végrehajtást. Az architektúra támogatja a big- és little-endian bájtsorrendű címzést, mind 32 bites, mind 64 bites adatok esetén, külön kategóriákkal az üzemmód által meghatározott és laponkénti bájtsorrend-kezeléshez.
A működési módok megkülönböztetnek felhasználói, felügyelői és hipervizori üzemmódot.
Kategóriák
[szerkesztés]- Alap (Base) – a Book I és Book II nagy része
- Szerver – Book III-S
- Beágyazott (Embedded) – Book III-E
- Egyéb (Misc) – lebegőpontos, vektor, jelfeldolgozás, gyorsítótár-zárolás, decimális lebegőpontos műveletek, stb.
Könyvek
[szerkesztés]A Power ISA specifikáció öt részre van osztva, ezeket „könyveknek” nevezik és „Book+római számokkal” jelölik.
- Book I – Felhasználói utasításkészlet-architektúra (User Instruction Set Architecture), az alkalmazásprogramozók számára elérhető alap utasításkészletet fedi le. Memóriareferencia, folyamatvezérlés, fixpontos és lebegőpontos utasítások, numerikus gyorsítás, alkalmazás-szintű programozás. Tartalmaz kiegészítő feldolgozóegységekre vonatkozó fejezeteket is, mint pl. a digitális jelprocesszorok (DSP-k) és az AltiVec kiterjesztés.
- Book II – Virtuális környezet architektúrája (Virtual Environment Architecture), meghatározza az alkalmazásprogramozó számára elérhető tárolási modellt, beleértve az időzítést, a szinkronizációt, a gyorsítótár-kezelést, a tárolási funkciókat és a bájtsorrend kezelését.
- Book III – Működtetési környezet architektúrája (Operating Environment Architecture), tartalmazza a kivételkezelést, megszakításkezelést, memóriakezelést, hibakeresési eszközöket és a speciális vezérlési funkciókat. Két részből áll:
- Book III-S – Meghatározza az általános célú / szerver implementációk felügyelői (szupervizor) üzemmódban használható utasításait. Ez nagyrészt a korábbi PowerPC ISA Book III tartalma.
- Book III-E – Meghatározza a beágyazott eszközök szupervizor-utasításait. A korábbi PowerPC Book E egy változata.
- Book VLE – Változó utasításhosszú utasításkészlet (Variable Length Encoded Instruction Architecture) leírja a Book I–III-ban definiált utasítások alternatív változatait, amelyek a nagyobb kódsűrűséget és a nagyon alacsony szintű alkalmazásokban való használatot célozzák. Ezek az utasítások 16 bit hosszúak, bájtsorrendjük big endian.
Megfelelőség
[szerkesztés]Az újdonság a Power ISA 3. verziójában az, hogy a megfelelőséghez / kompatibilitáshoz nem kell a teljes specifikációt megvalósítani. Az utasítások és technológiák sokasága a teljes specifikáció megvalósítását nehézkessé tette, így az OpenPOWER Alapítvány úgy döntött, hogy lehetővé teszi a többszintű megfeleltetést.
Ezek a szintek kötelező és opcionális követelményeket tartalmaznak, azonban gyakori félreértés, hogy az alacsonyabb szintű megfelelés mellett a megvalósítások további kiválasztott funkciókat és egyedi kiterjesztéseket tartalmazhatnak a magasabb szintekről. Ajánlott emiatt egy lehetőséget biztosítani a kialakítás deklarált részhalmazának szintjén túli hozzáadott funkciók letiltására.
Egy kialakításnak meg kell felelnie a deklarált részhalmaz szintjén ahhoz, hogy igénybe vehesse az Alapítvány védelmét a szellemi tulajdon használatára, mind a szabadalmak, mind a védjegyek terén. Ez ki van fejtve az OpenPOWER EULA-ban (felhasználói keretszerződés).[1]
Egy megfelelő, kompatibilis kialakításnak az alábbi feltételeket kell teljesítenie:[2]
- a „Base” architektúra támogatása,
- emellett legalább egy részhalmaz támogatása:
- SFS – skaláris fixpontos részhalmaz; 129 utasítás, alapvető fixpontos és betöltő/tároló utasítások, ami valójában a Base architektúra
- SFFS – skaláris fixpontos + lebegőpontos részhalmaz; 214 utasítás, lebegőpontos műveleteket ad a Base architektúrához
- LCS – Linux kompatibilitási részhalmaz; 962 utasítás, szerver szintű Linuxhoz készült, olyan funkciókkal, mint a 64 bites, opcionális SIMD/VSX, Radix MMU, növekvő bájtsorrendű (little-endian) mód és hipervizor támogatás
- ACS – IBM AIX kompatibilitási részhalmaz; 1099 utasítás, AIX futtatására készült, több kiegészítéssel, mint pl. decimális és négyszeres pontosságú lebegőpontos műveletek, big-endian mód és szimmetrikus multiprocesszálás
- Tartalmazhatja az LCS és az ACS bármely funkcióját opcionális elemként vagy választhat a mindig opcionális (Always Optional) funkciók közül, mint például a mátrixmatematika és az energiagazdálkodás.
- A kiválasztott választható funkciót teljes egészében meg kell valósítani, a választható funkció részleges megvalósítása nem megengedett.
- Tartalmazhat egyedi, az Architecture Sandboxban megvalósított implementációspecifikus kiterjesztéseket.
Ha a kiterjesztés elég általános célú, az OpenPOWER Alapítvány arra kéri a megvalósítókat, hogy nyújtsák be azt RFC-ként (Request for Comment) az OpenPOWER ISA Workgroup-nak.[3] Az RFC-k beküldésének nem feltétele az OpenPOWER Alapítványhoz történő csatlakozás.[4]
- Az ISA elemei közül több funkció megvalósítható akár hardverben, akár firmware-ben.
EABI és Linux kompatibilitási ellentmondás
[szerkesztés]Az EABI[5] specifikációk megelőzték a kompatibilitási részhalmazok bejelentését és létrehozását.
A Linux kompatibilitási részhalmazt tekintve, amelyben a SIMD/VSX opcionális: 2003-tól a 64 bites EABI v1.9-es verzióban opcionálissá tették a SIMD-t,[6] de 2015 júliusában az EABI v2.0-ban a SIMD kötelezővé vált, az IBM POWER9 rendszerek teljesítményének javítása érdekében.[7] Ez az ellentmondás, hogy a SIMD opcionális a Linux kompatibilitás szintjén, de kötelező az EABI v2.0-ban, nem oldható fel jelentős erőfeszítés nélkül: a Linux-disztribúciók visszafelé történő inkompatibilitása nem járható út. Ez az új OpenPOWER implementálók számára azt jelenti, hogy ha standard Linux disztribúciók futtatására alkalmas processzort terveznek, akkor egy hatalmas, 962 utasításból álló készletet is meg kell valósítaniuk. Ehhez szemben például a RISC-V RV64GC, a Linux futtatásához minimálisan szükséges konfiguráció csak 165 utasítást tartalmaz.[8]
Specifikációk
[szerkesztés]
Power ISA v.2.03
[szerkesztés]A Power ISA v.2.03 specifikáció[9] a korábbi POWER5+ PowerPC ISA v.2.02[10] specifikációján és a PowerPC specifikáció „Book E”[11] kiterjesztésén alapul. A Book I öt új fejezetet tartalmaz, melyek a kiegészítő feldolgozóegységeket írják le, pl. a DSP és az AltiVec kiterjesztéseket.
- Kompatibilis magok
Power ISA v.2.04
[szerkesztés]A Power ISA v.2.04 specifikáció[12] 2007 júniusában vált véglegessé. Ez a Power ISA v.2.03-n alapul, változások elsősorban a Book III-S részben vannak, a virtualizáció, a hipervizor funkciók, logikai particionálás és virtuális lapkezelés terén.
- Kompatibilis magok
Power ISA v.2.05
[szerkesztés]A Power ISA v.2.05 specifikáció[13] 2007 decemberében volt kibocsátva. Ez a Power ISA v.2.04-n alapul, változások elsősorban a Book I és Book III-S könyvekben vannak, beleértve olyan jelentős fejlesztéseket, mint a decimális aritmetika (Kategória: decimális lebegőpontos számítás a Book I-ben) és szerver hipervizor javítások.
- Kompatibilis magok
- Minden mag, amely megfelel a Power ISA korábbi verzióinak
- POWER6
- PowerPC 476
Power ISA v.2.06
[szerkesztés]A Power ISA v.2.06 specifikáció[14] 2009 februárjában volt kiadva és 2010 júliusában jelent meg az átdolgozott kiadása.[15] Ez a Power ISA v.2.05-n alapul és tartalmazza a POWER7 processzor és az e500-mc mag kiterjesztéseit. Egy jelentős új jellemzője a vektoros-skalár lebegőpontos utasítások (VSX) megjelenése.[16] A „Book III-E” szintén jelentős fejlesztéseket tartalmaz a beágyazott specifikáció, a hipervizor és a virtualizáció terén, egy- és többmagos megvalósítások számára.
A specifikációt 2010 novemberében átdolgozták a Power ISA v.2.06 B revíziójára, javítva a virtualizációs funkciókat.[15][17]
- Kompatibilis magok
Power ISA v.2.07
[szerkesztés]A Power ISA v.2.07 specifikáció[18] 2013 májusában volt kibocsátva. A Power ISA v.2.06-n alapul és jelentős fejlesztéseket tartalmaz a logikai partíciós funkciók, tranzakciós memória, kibővített teljesítményfigyelés, új tárolóvezérlési funkciók, a VMX és VSX vektorfunkciók bővítései (VSX-2) terén, az AES,[18]:257[19] Galois számláló üzemmód (GCM), SHA-224, SHA-256,[18]:258 SHA-384 és SHA-512[18]:258 (SHA-2) kriptográfiai kiterjesztések és ciklikus redundancia-ellenőrzés (CRC) algoritmusokkal együtt.[20]
2015 áprilisában átdolgozták és kiadták a Power ISA v.2.07 B specifikációt.[21][22]
- Kompatibilis magok
Power ISA v.3.0
[szerkesztés]A Power ISA v.3.0 specifikáció[23][24] 2015 novemberében volt kibocsátva. Ez az első, amely az OpenPOWER Alapítvány megalapítása után jelent meg. Számos munkafolyamathoz tartalmaz fejlesztéseket és megszünteti a szerver és a beágyazott kategóriákat, miközben megtartja a visszamenőleges kompatibilitást, és kibővült a VSX-3 utasítások támogatásával. Az új funkciók között találhatók a 128 bites négyszeres pontosságú lebegőpontos műveletek, egy véletlenszám-generátor, a hardveresen támogatott szemétgyűjtés és a hardver által kikényszerített megbízható számítástechnika.
A specifikációt 2017 márciusában átdolgozták és kiadták a Power ISA v.3.0 B specifikációt,[21][25] amit 2020 májusában újra módosítottak, ennek eredménye lett a v3.0 C kiadás.[21][26][27] A v3.0-ról a v3.0 B-re történő váltás egyik nagyobb változása a hardverből támogatott szemétgyűjtés megszüntetése volt. A fő különbség a v3.0 B és a v3.0 C között az, hogy a v3.1-ben felsorolt megfelelési szintek a v3.0 C-be is bekerültek.
- Kompatibilis magok
- Minden mag, amely megfelel a Power ISA korábbi verzióinak
- POWER9[28]
- OpenPOWER Microwatt
- A Libre-SOC csak a beágyazott FP kompatibilitását célozza a Power ISA 3.0-val
Power ISA v.3.1
[szerkesztés]A Power ISA v.3.1 specifikáció[21][29] 2020 májusában jelent meg. Főleg a Power10-ben bevezetett új funkciókat támogatja, de bevezeti még az opcionalitás fogalmát a PowerISA specifikációba. Az utasítások ettől kezdve nyolc bájt hosszú „előtaggal ellátott (prefixált)” utasítások lehetnek, szemben a megszokott négy bájtos „egyszavas” utasításokkal. A SIMD és VSX utasítások sok új funkcióval bővültek. A VSX és az SVP64 kiterjesztések hardveres támogatást nyújtanak a 16 bites félpontosságú lebegőpontos számok használatához.[30][31]
Az új 64 bites prefixált utasítások egyik nagy előnye, hogy az utasításokban 34 bites a közvetlen (immediate) értékek használhatók.
A specifikációt 2021 szeptemberében átdolgozták a Power ISA v.3.1 B specifikációvá.[21][32]
A specifikációt 2024 májusában átdolgozták a Power ISA v.3.1 C specifikációvá.[21][33]
- Kompatibilis magok
Előtörténet
[szerkesztés]
A Power Architektúra az IBM-nél az 1980-as évek vége felé jött létre, mikor a cég elhatározta, hogy nagy teljesítményű RISC architektúrát fog alkalmazni a közepes méretű munkaállomásaiban és szervereiben. Ennek az eredménye lett a „POWER architektúra”. Első megvalósításai az 1990-ben bevezetett RS/6000-es számítógépekben mutatkoztak be, tehát elsőként a 10-csipes RIOS-1 processzorban, amely csak később kapta a POWER1 nevet. A RISC Single Chip (RSC) processzort a RIOS-1-ből fejlesztették ki, annak egy redukált változata, és az IBM RS/6000-es család belépő-szintű munkaállomásainak CPU-ja volt.
1992-ben Apple, az IBM és a Motorola megalakította az AIM szövetséget (AIM alliance) a POWER processzor tömeges piaci verziójának kifejlesztése céljából. Ennek eredményeként létrejött a „PowerPC architektúra”, a POWER architektúra egy módosított változata. Az első PowerPC implementáció az 1993-ban megjelent PowerPC 601 volt. Ennek felépítése még nagymértékben az RSC processzorra támaszkodott, az Apple Power Mac számítógépeiben és az IBM RS/6000-es rendszereiben használták. A POWER utasításkészlet és a PowerPC eltéréseit a PowerPC ISA v.2.02. változat kézikönyvében az E függelék ismerteti.[35]
Az IBM továbbfejlesztette az RS/6000 rendszerekbe szánt POWER architektúrát, a fejlesztés a nyolc csipes POWER2 processzort eredményezte 1993-ban, és 1996-ban egy egycsipes verziót, melynek neve P2SC, azaz „POWER2 Super Chip”.
Az 1990-es évek elején az IBM úgy döntött, hogy a CISC-alapú AS/400 miniszámítógépeket RISC-alapú rendszerrel fogja felváltani. Az új architektúra fejlesztési kódneve „Amazon” lett, ám a tervezeten dolgozó mérnökök körében PowerPC AS („Advanced Series” vagy „Amazon Series”) néven hivatkoztak rá. A PowerPC AS projekt célja egy RSC processzoron alapuló multiprocesszoros platform létrehozása volt. Az IBM kutatólaboratóriumaiban folyó fejlesztés során, mikor az RSC processzort 64 processzor összekapcsolását és a specifikus AS/400 funkciók végrehajtását lehetővé tevő megoldással igyekeztek felruházni, a fejlesztésbe bekapcsolódtak az RS/6000-es fejlesztői is, és a kialakításhoz néhány POWER2-es jellemzőt is hozzáadtak. A fejlesztés 1995-ben végül a 64 bites A10 és A30 processzorok bevezetésével zárult, valamint a később megjelent, 1997-ben induló RS64 vonallal. Ezeket a processzorokat az AS/400 és RS/6000 rendszerekben alkalmazták.
Az AIM Szövetség 1995-től 1997-ig tovább folytatta a PowerPC fejlesztését, és megjelentette a PowerPC processzorok második generációját: a PowerPC 602 set-top boxokban és a játékkonzolokban való felhasználást célozta; a PowerPC 603 modellt a beágyazott eszközök piacára és hordozható számítógépekbe szánták; a PowerPC 604 munkaállomások számára, végül a PowerPC 620 64 bites nagy teljesítményű processzor a szerverek számára készült. A 602 és a 620 nem terjedt el széles körben, azonban a 603, 604 és utódaik nagyon népszerűvé váltak a megfelelő területeken. A Motorola és az IBM emellett megalkotta a „Book E” jelű[36] kiterjesztett PowerPC változatot, amelyet beágyazott megvalósításokban használtak fel, mint pl. a Motorola PowerQUICC processzoraiban és az IBM PowerPC 400 processzorcsaládjában.
Az AIM Szövetség utolsó eredménye a harmadik generációs PowerPC 750 1997-es megjelentetése volt. Ez után a Motorola és az IBM külön utakat követett a PowerPC architektúra fejlesztésében. A „G3” processzorok használata széles körben elterjedt, mind a számítógépek, mind a beágyazott eszközök piacán, és az IBM az elkövetkező években folytatta a 750-es család továbbfejlesztését. A Motorola ellenben úgy döntött, hogy a beágyazott eszközök piacán a PowerPC-alapú SoC kialakításokra és a PowerPC 7400-asra összpontosít, amelyet negyedik generációs PowerPC-ként emlegettek. Ez a processzor tartalmazta az AltiVec (lebegőpontos és egész/fixpontos) SIMD utasításkészletet, illetve annak egy megvalósítását egy integrált SIMD egységben. A „PowerPC G4” 1999-ben jelent meg, Apple munkaállomásokban és laptopokban használták, valamint különböző egyéb cégek a távközlési piacon.
1998-ban jelent meg a POWER3 processzor, amely egyesítette a PowerPC és POWER2 architektúrákat, de ezt csak az IBM RS/6000 szerverekben használták.
2000-ben jelent meg a PowerPC AS architektúra utolsó megvalósítása, az RS64-IV, amelyet AS/400 és RS/6000 rendszerekben használtak, amelyeket ekkorra már átneveztek eServer iSeries és eServer pSeries nevekre. Az IBM készítette a Nintendo GameCube játékkonzoljába épített Gekko processzort, a PowerPC 750CXe processzort alapul véve, valamint a Rivina 64 bites PowerPC kísérleti processzort, amellyel rekordot döntött: ez volt a világ első 1 GHz-et túllépő órajelű mikroprocesszora.
2001-ben az IBM bemutatta a POWER4 típust, amely egyesítette és egyben felváltotta a PowerPC AS és POWER3 architektúrákat.
2002-ben az Apple-nek szüksége lett egy új csúcsteljesítményű PowerPC alkatrészre; megállapodást kötött az IBM-mel a 64 bites PowerPC 970 kifejlesztéséről és gyártásáról. Az Apple leírása szerint ez egy ötödik generációs PowerPC processzor, ezért kapta a „G5” jelet. A PowerPC 970 valójában a POWER4 származéka. Hiányzik belőle néhány szerver-orientált jellemző, azonban tartalmazza az AltiVec egységet. A 970-est és leszármazottait az Apple és IBM gépeiben, valamint néhány csúcskategóriás beágyazott alkalmazásban használták fel.
2003-ban a Tundra cég megvásárolta a PowerPC 100 mikrokontroller-családot a Motorolától, míg a Culturecom az IBM-től licencelte a PowerPC technológiát a saját V-Dragon processzorának kifejlesztéséhez.
2004-ben a Motorola cégből kivált és új cégként megkezdte működését a Freescale Semiconductor, amely korábban a Motorola félvezetőgyártási tevékenységét végezte. Ebben az évben mutatta be az IBM a POWER5 processzort, amely nem meglepő módon a POWER4 továbbfejlesztése. Ez továbbmozdította a PowerPC specifikáció számozását v.2.01-re,[37] majd megint, v.2.02-re[10] a POWER5+ megjelenésével 2005-ben (a 2003-2004 között megjelent POWER5 processzor nem került nyilvános kereskedelmi forgalomba, azt csak az IBM és partnerei használták). 2004-ben az AMCC IBM szellemi tulajdon és személyi állomány licencelésével jelentette meg a PowerPC 400 32 bites beágyazott processzorcsaládot.[38] A Motorola/Freescale átnevezte az általa gyártott PowerPC családokat a következőkre: e200, e300, e500 és e600, és bejelentette az eljövendő 64 bites e700 processzort. Ugyanebben az évben az IBM és másik 15 vállalat megalakította a Power.org szervezetet, a Power Architektúra körül szerveződő termékek fejlesztésének elősegítésére.[39]
2005-ben megjelent a Cell processzor specifikációja[40] – a processzort az IBM, Sony és Toshiba közösen fejlesztette öt éven át, elsődlegesen a Sony PlayStation 3 konzoljában való felhasználásra. A Cell egyetlen 64 bites Power Architektúrájú magot tartalmaz, mellette viszont 8 független SIMD magot, amelyeket szinergikus feldolgozóelemeknek (Synergistic Processing Element, SPE) neveznek: ezeknek külön 128 bites utasításkészletük van, saját memóriájuk, és igen nagy feldolgozó teljesítményt nyújtanak egyenként, de együttműködve még inkább. Az IBM szintén bemutatta a Xenon processzort, amely egy hárommagos 64 bites processzor, és a Microsoft Xbox 360 konzoljában tervezték felhasználni. A 32 bites Broadway processzor mellett, amely a Nintendo Wii konzoljának fő processzora lesz, ezzel az IBM elérte, hogy a három legnagyobb hetedik generációs játékkonzolt IBM Power Architektúrájú processzorok hajtják.
A P.A. Semi a Power Architektúra technológiát licencelte saját PWRficient processzoraihoz.
2006-ban a Freescale csatlakozott a Power.org-hoz, az IBM elkészítette a PowerPC 405 specifikációit, és azt szabadon hozzáférhetővé tette a kutatók és egyetemek számára.
2006 szeptemberében a Power.org kiadta a Power ISA 2.03. verzióját.[41] Minden előző PowerPC specifikáció kompatibilis a 64 bites Power utasításkészlet-architektúrával (ISA). Ebbe a specifikációba, sok egyéb mellett, már belekerült a VMX utasításkészlet (az AltiVec márka a Freescale tulajdona, ugyanerre az IBM a Vector Multimedia eXtension, VMX jelölést használja), a virtualizáció és a változó hosszúságú utasításkódolás (variable length encoding, VLE, 2 bájtos utasítások állhatnak a korábban 4 bájtos utasítások helyett) is.
2006 utolsó negyedévében a Power.org kibocsátotta a Power Architecture Platform Reference (PAPR) specifikációt, amely kiindulásul szolgálhat a Power Architektúrán alapuló, Linux operációs rendszerű gépek fejlesztéséhez (a PAPR iniciatíva célja a Power Architektúra technológián alapuló új számítógépes platform kifejlesztése).
2007 áprilisában a Freescale és az IPextreme elindította a Freescale PowerPC e200 magok lincencprogramját.[42] 2007 májusában az IBM útjára engedte a POWER6 felsőkategóriás mikroprocesszorát, amelynek órajele elérheti az 5,0 GHz-et, megduplázva a korábbi POWER5 teljesítményét. A POWER6-ban hozzáadták az AltiVec utasításkészletet a POWER sorozathoz, valamint egy decimális aritmetikát támogató FPU-t is. Ugyanekkor az AMCC bejelentette Titan processzorát, ami egy nagy teljesítményű, 2 GHz-es órajel mellett is igen alacsony fogyasztású beágyazott mikroprocesszor. A processzor újszerű logikai felépítést használ, amely az Intrinsity fejlesztése, és 2008-ban kerül forgalomba. 2007 júniusában a Power.org tagjai véglegesítették a Power ISA v.2.04. specifikációját[12] Ebben a fejlesztések főleg a szerver alkalmazások és virtualizáció területét érintették. 2007 szeptemberében a Power Architecture Developer Conference fejlesztői konferencián bemutatták a Power ISA v.2.05 és ePAPR specifikációkat, és meglepetésként bemutattak egy Linux alapú referencia-konstrukciót is, a PowerPC 970MP jelű gépet.[14] A Power ISA v.2.05 specifikáció 2007 decemberében jelent meg.[13]
2008 áprilisában lecserélte Power Architektúra alapú hardverei, a System p és System i márkaneveit, ezek most a „Power Systems” nevű rendszer részei. Az i5/OS operációs rendszert is átnevezték, új neve „IBM i” lett. 2008. május 25-én a világon elsőként az IBM átlépte az 1 petaflopos számítási sebességhatárt Roadrunner szuperszámítógépével.[43] 2008 júniusában története során először felkerült a világ leggyorsabb számítógépeit rangsoroló TOP500 lista első helyére, felváltva ezzel a BlueGene/L gépet, amely 2004 novembere óta tartotta az első helyet. 2008. június 16-án a Freescale bejelentette a QorIQ processzorok P1, P2, P3, P4 és P5 családjait, amelyekben nyolcmagos P4080 processzor működik; a QorIQ a PowerQUICC továbbfejlesztése.[44]
A TOP500 lista 2008. júniusi állapota szerint a világ harmadik és hatodik leggyorsabb szuperszámítógépe, valamint a 22-ik és 50-ik leggyorsabb szuperszámítógép az IBM Power Architektúrán alapuló technológiákat használ. A lista első 10 helyezettjéből öt használ Power Architektúrájú processzorokat számítási elemekként és egy alkalmazza ezeket kommunikációs processzorként.
2008 szeptemberében zöld utat kapott a POWER7 alapú Blue Waters szuperszámítógép.[45] A bejelentés szerint 208 millió dolláros költséggel 200 000 processzort tartalmaz majd, több-petaflopos teljesítményt fog elérni a 2010–2011-es években. Ez a terv meghiúsult, 2011. augusztus 8-án az IBM felmondta a megbízást és visszafizeti az addig kifizetett támogatást is. A Blue Waters tervezet mindazonáltal megvalósult, a Cray Inc. közreműködésével. 2008 decemberében véglegesítették a PAPR v.1.0 specifikációt, amely beágyazott Power Architektúrájú számítógépekhez készült.[46]
2009 februárjában megjelent a Power ISA v.2.06 specifikáció.[47] 2010 júliusában pedig ugyanennek a revíziója.[15] 2009 júliusában a Mentor Graphics elkészítette az Android mobil operációs rendszer a Freescale QorIQ és PowerQUICC III platformjain futó változatait, így ettől kezdve az Android a Power Architektúra platformon is elérhető.[48]
2010 februárjában az ISSCC 2010 konferencián az IBM kibocsátotta a POWER7 processzort és bemutatta a PowerPC A2 jelű „vezeték-sebességű processzort” (wire-speed processor; ezzel arra akarnak célozni, hogy a processzort főleg kommunikációs berendezésekben tervezik használni, ahol a processzor ill. eszköz képes kihasználni a rendelkezésre álló technológia maximális elérhető átviteli sebességét, ld.[49]). Mindkettő sokmagos (POWER7: 4,6,8, PowerPC A2: 16), többszálú végrehajtást biztosító szerverprocesszor, több mint 1 milliárd tranzisztort tartalmaznak. Az év júniusában a Freescale bemutatta az e5500 magot, amely a cég első 64 bites magja, és a QorIQ P5 család processzoraiban van megvalósítva.[50]
2011 júniusában a Freescale bejelentette a többszálas 64 bites e6500 magot, ez a QorIQ AMP márkanéven jelenik meg. Ezzel ismét megjelennek az AltiVec SIMD egységek a Freescale kínálatában, és több 28 nm-es technológiájú eszközben integrálják azokat 2012-től.[51]
A 2011. júniusi E3 kiállításon a Nintendo bejelentette a Wii U játékkonzolt, amelynek többmagos processzora – az Espresso processzor – ugyancsak a Power Architektúrán alapul és az IBM tervezte és gyártja; a bejelentéskor és azóta sem tették közzé a processzor jellemzőit.[52]
Szójegyzék
[szerkesztés]Félreérthető lehet a POWER, PowerPC és Power Architektúra kifejezések jelentése. Az alábbi szójegyzék megadja ezek rövid meghatározását és a részletesebb leírást tartalmazó cikkekre való hivatkozásokat.
Kifejezés | Leírás |
---|---|
POWER | Performance Optimization With Enhanced RISC. (jelentése: teljesítmény-optimalizálás továbbfejlesztett RISC [használatával]) Egy IBM által tervezett mikroprocesszor-architektúra. |
PowerPC | Power Performance Computing (kb. nagyteljesítményű számítástechnika). Egy 32/64 bites, néhány új elemmel kiegészített utasításkészlet a POWER-ből származtatott mikroprocesszorok számára. Az AIM szövetség: Apple, IBM és Motorola tervezése. |
PowerPC AS | PowerPC Advanced Series (kb. PowerPC fejlett sorozat). Kódneve „Amazon”. A PowerPC egy tisztán 64 bites változata, a POWER2 specifikáció néhány elemével kiegészítve. Az IBM RS64 processzorcsaládjában és az újabb POWER processzorokban alkalmazták. |
POWERn | ahol az n 1-től 9-ig változhat. Felsőkategóriás IBM gyártmányú mikroprocesszorok sorozata, amelyek a POWER, PowerPC, PowerPC AS és Power utasításkészletek különböző kombinációját használják.
Bővebben: POWER1, POWER2, POWER3, POWER4, POWER5, POWER6, POWER7, POWER8 és POWER9. A 9-es szám után a márkanév változott: Power10. |
Cell | Cell Broadband Engine Architecture (CBEA), Az IBM, Sony és Toshiba által tervezett mikroprocesszor architektúra, Power architektúrájú részeket tartalmaz. |
Power Architecture | Power Architektúra. Széles körű kifejezés, a POWER, PowerPC és Cell hardver, szoftver, eszközkészlet és végfelhasználói alkalmazások körét takarja. Mára a „Power ISA” szinonimája. |
Power ISA | Power utasításkészlet-architektúra. Egy új utasításkészlet, a POWER és PowerPC utasításkészletek késői verzióit kombinálja. Kezdeti változata az IBM és a Freescale tervezése. |
Jegyzetek
[szerkesztés]- ↑ Final draft of Power ISA EULA
- ↑ The Open Power ISA: Architecture Compliancy and Future Foundations
- ↑ OpenPOWER ISA Workgroup – az OpenPOWER Alapítvány utasításkészlet-architektúra műszaki munkacsoportja, RFC-k
- ↑ Section 2.2 of OPF Power ISA EULA
- ↑
*ABI: Application Binary Interface, alkalmazás bináris interfésze, bináris csatlakozási felület az alkalmazások számára: az operációs rendszer és alkalmazásai közötti interfész a gépi nyelv szintjén, a rendszerhívások, paraméterátadás és visszatérő értékek meghatározása.
*EABI: Embedded ABI, beágyazott ABI, beágyazott alkalmazások számára optimalizált interfész. - ↑ Ian Lance Taylor: 64-bit PowerPC ELF Application Binary Interface Supplement 1.9
- ↑ Power Architecture 64-Bit ELF V2 ABI Specification, OpenPOWER ABI for Linux Supplement, 2015. július 16. [2019. október 24-i dátummal az eredetiből archiválva].
- ↑ Krste Asanović: Computer Architecture Research with RISC-V, 2017. október 14.
- ↑ Power ISA v.2.03. Power.org, 2006. szeptember 29. [2011. július 27-i dátummal az eredetiből archiválva].
- ↑ a b PowerPC Architecture Book, Version 2.02. IBM, 2005. február 24. [2007. október 18-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. március 16.)
- ↑ PowerPC Book E v.1.0. IBM, 2002. május 7. [2018. március 10-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. március 16.)
- ↑ a b Power ISA Version 2.04. Power.org, 2007. június 12. [2007. szeptember 27-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. június 14.)
- ↑ a b Power ISA Version 2.05. Power.org, 2007. október 23. [2012. november 24-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. december 18.)
- ↑ a b Power.org (2007-09-24). "Power.org Debuts Specification Advances and New Services At Power Architecture Developer Conference". Sajtóközlemény.
- ↑ a b c Power ISA Version 2.06 Revision B. Power.org, 2010. július 23. [2012. november 24-i dátummal az eredetiből archiválva]. (Hozzáférés: 2011. február 12.)
- ↑ Workload acceleration with the IBM POWER vector-scalar architecture. IBM, 2016. március 1. (Hozzáférés: 2017. május 2.)
- ↑ Power ISA 2.06 Rev. B enables full hardware virtualization for embedded space. EETimes, 2010. november 3. (Hozzáférés: 2011. június 8.)
- ↑ a b c d Power ISA Version 2.07. Power.org, 2013. május 15. (Hozzáférés: 2023. november 2.)
- ↑ Barbosa, Leonidas: POWER8 in-core cryptography. IBM, 2014. szeptember 21.
- ↑ Performance Optimization and Tuning Techniques for IBM Power Systems Processors Including IBM POWER8. IBM, 48. o. (2015. augusztus 1.). ISBN 9780738440927
- ↑ a b c d e f Instruction Set Architecture. OpenPOWER Foundation
- ↑ Power ISA Version 2.07 B. Power.org, 2015. április 9. (Hozzáférés: 2023. február 23.)
- ↑ Announcing a New Era of Openness with Power 3.0
- ↑ Power ISA Version 3.0. openpowerfoundation.org, 2016. november 30. [2017. augusztus 3-i dátummal az eredetiből archiválva]. (Hozzáférés: 2017. január 6.)
- ↑ Power ISA Version 3.0 B. IBM, 2017. március 29. (Hozzáférés: 2023. február 23.)
- ↑ Power ISA Version 3.0 C. OpenPOWER Foundation, 2020. május 1. (Hozzáférés: 2023. február 23.)
- ↑ list of Power ISA specifications
- ↑ [PATCH, COMMITTED] Add full Power ISA 3.0 / POWER9 binutils support
- ↑ Power ISA Version 3.1. OpenPOWER Foundation, 2020. május 1. (Hozzáférés: 2023. február 23.)
- ↑ OPF_PowerISA_v3.1B.pdf. OpenPOWER Files . OpenPOWER Foundation. (Hozzáférés: 2023. július 2.)
- ↑ ls005.xlen.mdwn. libre-soc.org Git . (Hozzáférés: 2023. július 2.)
- ↑ Power ISA Version 3.1B. OpenPOWER Foundation, 2021. szeptember 14. (Hozzáférés: 2023. február 23.)
- ↑ Power ISA Version 3.1C. OpenPOWER Foundation, 2024. május 26. (Hozzáférés: 2024. július 4.)
- ↑ Seo, Carlos Eduardo: We released the Instruction Set Architecture for POWER10. Power ISA v3.1 is available at the IBM Portal for OpenPOWER.. twitter.com, 2020. május 12. (Hozzáférés: 2020. május 23.)
- ↑ PowerPC User Instruction Set Architecture Book I, version 2.02
- ↑ PowerPC Book E v.1.0. IBM, 2002. május 7. (Hozzáférés: 2007. március 16.)[halott link]
- ↑ PowerPC Architecture Book. IBM, 2003. december 10. [2007. március 4-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. március 16.)
- ↑ AMCC and Power Architecture technology. IBM. (Hozzáférés: 2008. február 24.)
- ↑ Power.org initiative to advance community of electronics innovation. Power.org, 2004. december 2. [2006. május 3-i dátummal az eredetiből archiválva]. (Hozzáférés: 2008. február 24.)
- ↑ Cell BE Architecture v.1.0. IBM, 2006. március 10. [2007. február 27-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. március 16.)
- ↑ Power ISA v.2.03. Power.org, 2006. szeptember 29. [2012. november 24-i dátummal az eredetiből archiválva]. (Hozzáférés: 2010. október 20.)
- ↑ Freescale opened licensing of Power Architecture e200 core family through IPextreme. Power.org, 2007. április 2. [2007. szeptember 27-i dátummal az eredetiből archiválva]. (Hozzáférés: 2008. február 24.)
- ↑ Fact Sheet & Background: Roadrunner Smashes the Petaflop Barrier. IBM. (Hozzáférés: 2008. június 16.)
- ↑ Freescale QorIQ communications platforms signal a new way forward for embedded multicore technology. Freescale. [2012. december 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2008. június 16.)
- ↑ Archivált másolat. [2010. december 26-i dátummal az eredetiből archiválva]. (Hozzáférés: 2013. május 26.)
- ↑ Archivált másolat. [2012. május 3-i dátummal az eredetiből archiválva]. (Hozzáférés: 2013. május 26.)
- ↑ Power ISA Version 2.06. Power.org, 2009. február 10. [2014. január 10-i dátummal az eredetiből archiválva]. (Hozzáférés: 2009. augusztus 10.)
- ↑ Mentor Graphics Enables Android on Freescale Products Based on Power Architecture Technology, Reaching New Applications and Audiences. Mentor Graphics, 2009. július 30. (Hozzáférés: 2009. augusztus 8.)
- ↑ en:wire speed
- ↑ Freescale unveils 64-bit QorIQ platform and extends high-performance product portfolio for multicore processors. Freescale, 2010. október 22. [2013. január 2-i dátummal az eredetiből archiválva]. (Hozzáférés: 2010. június 24.)
- ↑ Freescale Drives Embedded Multicore Innovation with New QorIQ Advanced Multiprocessing Series. Freescale, 2011. június 21. [2012. július 17-i dátummal az eredetiből archiválva]. (Hozzáférés: 2011. július 12.)
- ↑ IBM works with Nintendo. nintendoworldreport.com. (Hozzáférés: 2011. június 7.)
Fordítás
[szerkesztés]Ez a szócikk részben vagy egészben a Power ISA című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.
Források
[szerkesztés]További információk
[szerkesztés]- Power ISA specifications (angol nyelven). OpenPOWER Foundation – Power ISA specifikációk