PowerPC
PowerPC è un'architettura di microprocessori RISC creata nel 1991 dall'alleanza Apple-IBM-Motorola, conosciuta come "AIM". PowerPC era il settore CPU della piattaforma dell'AIM, e ad oggi ne è l'unica parte che resta.
| Indice |
Storia
L'AIM nacque, come racconta la storia, quando IBM comincio' a cercare il modo per abbassare i costi di sviluppo e di produzione della loro nuova architettura POWER. POWER (Performance Optimization With Enhanced RISC) fu introdotto con l'RS/6000 e fu un successo, ma IBM era comunque interessata in una versione a chip singolo per poter entrare in altri mercati.
IBM contattò Apple, che era in quel periodo alla ricerca di macchine RISC, per sapere se fossero interessati a POWER. La risposta fu positiva, ma la Apple era anche in qualche modo preoccupata di legarsi ad un'azienda considerata acerrima nemica da molti, e quindi cercarono di bilanciarne il peso coinvolgendo il loro fornitore di lunga data, Motorola, che potè così portare al tavolo un insieme di clienti aggiunti.
Per Motorola, POWER sembrò un affare incredibile. Consentiva loro di vendere una potente e ampiamente testata CPU RISC con bassi costi da parte loro. In più gli consentiva di mantenere legami con il loro più grosso cliente di CPU, Apple, e sembrava offrire la possibilità di trovarne in IBM un altro, che avrebbe potuto acquistare versioni ridotte da loro anziché farle da sé.
In quegli anni Motorola aveva già un proprio design RISC incarnato nel 88000 che non stava andando bene nel mercato. Una spesso citata ragione per il suo fallimento era la mancanza di compatibilità con la loro diffusa serie 68000, già usata su Amiga e Macintosh.
Comunque l'88000 era già in produzione, e Apple (fra gli altri) aveva già macchine che lo usavano. Se la nuova soluzione POWER a singolo chip avesse potuto essere comparabile a livello hardware con l'88000, ciò avrebbe consentito sia ad Apple che a Motorola di immettere sul mercato delle nuove macchine molto più velocemente. Il più grave problema dell'88000 (e di tutti i design precedenti di Motorola) era che la CPU era big-endian, mentre POWER era little-endian.
Il risultato di queste svariate esigenze e requisiti fu la specifica PowerPC. Tutti sembravano avere vinto:
- IBM ottenne la CPU a singolo chip che stava cercando.
- Apple potè usare una delle più potenti CPU RISC sul mercato, e un'ampia pubblicità sui media grazie al marchio IBM.
- Motorola riuscì ad avere un chip RISC aggiornato, con un notevole potenziale commerciale, grazie alla disponibilità di IBM e Apple a fare da testimonial.
Caratteristiche
Il PowerPC è stato progettato con principi RISC, e consente un'implementazione superscalare. Esistono versioni sia con implementazione 32 bit che a 64 bit. Partendo dalla specifica di base POWER, il PowerPC ha aggiunto:
- modalità big o little-endian (che richiedono un reboot per lo switch).
- singola precisione floating point in aggiunta alla doppia precisione.
- istruzioni floating point (su richiesta di Apple).
- una specifica completa a 64 bit, compatibile con la modalità a 32 bit
- rimozione di alcune istruzioni POWER esoteriche, emulate nel microcodice
Implementazioni
Motorola_PowerPC_604e_233MHz.jpg
La prima implementazione su singolo chip del design fu l'MCP601, un ibrido delle specifiche POWER1 e PowerPC, rilasciato nel 1992. Questo consentì al chip di essere usato da IBM nelle sue piattaforme esistenti basate su POWER1, sebbene portò a qualche problema quando si passò alla seconda generazione di design PowerPC "puri". Apple continuò il lavoro su una nuova linea di computer Macintosh basata sul chip, e li lanciò come "Power Macintosh" basati sul 601 il 14 Marzo 1994.
Anche IBM ebbe la sua linea completa di desktop basati su PowerPC costruita e pronta per essere venduta; sfortunatamente non avevano un sistema operativo pronto. IBM decise di riscrivere completamente OS/2 specificamente per il PowerPC. Apple, che non aveva un OS basato su PowerPC, prese una strada diversa. Riscrisse solo i pezzi essenziali del sistema operativo e quindi scrisse un emulatore 680x0 che poteva eseguire le altre parti dell'OS e le applicazioni basate su 68K. IBM impiegò 2 anni a riscrivere OS/2 per PowerPC ed allora fu troppo tardi. I desktop PowerPC non furono mai immessi sul mercato. Byte Magazine (Aprile 1994) scrisse un lungo articolo su Apple e i desktop IBM PowerPC.
La seconda generazione fu "pura" e incluse il 603 di fascia bassa e il 604 di fascia alta. Il 603 è noto per il suo bassissimo costo e bassissimo consumo. Questo fu un obiettivo di design da parte di Motorola, che usò il progetto 603 come base per tutte le implementazioni future dei chip PPC. Apple provò ad usare il 603 nel nuovo laptop ma non fu possibile a causa della piccola cache di primo livello di 8K. L'emulatore del 68000 nel Mac OS non riusciva ad entrare in essa rallentando drasticamente le prestazioni. Il 603e risolse questo problema con 16KB di cache L1, che consentì all'emulatore di essere eseguito in maniera efficiente.
La prima implementazione a 64-bit fu il 602, ma sembra sia stata usata pochissimo. Arrivò in ritardo ed era più lento di quanto promesso, e IBM usò il suo POWER3, offrendo nessuna soluzione "small" a 64-bit fino all'introduzione nel tardo 2002 del PowerPC 970. Il 970 è un processore a 64-bit derivato dal processore per server POWER4. Per crearlo è stato modificato il core del POWER4 per renderlo compatibile con i processori PowerPC a 32-bit, ed è stata aggiunta una unità vettoriale (simile alle estensioni AltiVec nella serie Motorola 74xx).
La famiglia RS64 di IBM è un'architettura PowerPC modificata. Questi processori sono stati usati nelle famiglie di computer RS/6000 e AS/400.
Numericamente, il PowerPC è il più diffuso nei controllori delle auto. In questo ruolo, Motorola ha offerto un enorme numero di versioni costruite attorno al core 603. A questo hanno aggiunto diverso hardware custom, per consentire l'I/O sul singolo chip. I processori PowerPC sono usati negli Apple Macintosh, nei computer RS/6000 di IBM, nelle schede acceleratrici per Amiga,nei computer AmigaONE e Pegasos, nel Nintendo GameCube, ed in molti sistemi embedded quali TiVo.
Le prossime versioni delle tre maggiori consolle da gioco potrebbero per la prima volta essere tutte basate su chip appartenenti o derivati dalla famiglia PowerPC. In un comunicato congiunto del novembre 2003 Microsoft e IBM hanno infatti annunciato un accordo per l'utilizzo di semiconduttori IBM come base per lo sviluppo della futura linea di prodotti Xbox. Mentre il successore del Gamecube, noto sotto il nome di Revolution o N5, proseguirà sulla linea fin'ora adottata coi processori Gekko e la Playstation 3 di Sony incorporerà la CPU di nuova Generazione Cell sviluppata insieme a Toshiba e IBM.
Processori PowerPC
- 601 MPC601 50 e 66 MHz
- 602 prodotti consumer (multiplexed data/address bus)
- 603 portatili
- 603e
- 604
- 604e
- 620 la prima implementazione a 64-bit
- x704 implementazione PowerPC BiCOMOS della Exponential Technologies
- 750 PowerPC G3 (1997) 233 MHz e 266 MHz
- 7400 PowerPC G4 (1999) 350 MHz
- 750FX annunciato da IBM nel 2001 e disponibile all'inizio del 2002 nella versione a 1 GHz.
- 970 PowerPC G5 (2003) implementazione 64-bit derivata dall'IBM POWER4 alle velocita' di 1.4 GHz, 1.6 GHz, 1.8 GHz, 2.0 GHz e 2.5 GHz.
- Gekko 485 MHz (usato nel Nintendo GameCube)
- Power4+ IBM processore a 1.4 GHz installato sui server Regatta (RS/6000 o pSeries)
