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.
Table of contents |
2 Caratteristiche di design 3 Implementazioni 4 Processori PowerPC |
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 essere legata ad un'azienda che molti consideravano il suo acerrimo nemico, e quindi cercarono una seconda fonte per la progettazione. Apple tirò dentro 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. Gli consentiva di vendere una potente e ampiamente testata CPU RISC ad un basso costo di progettazione 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 famosa serie 68000, già usata su 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:
Il PowerPC è stato progettato con principi RISC, e consente un'implementazione superscalare. Esistono versioni sia con implementazione 32-bit che a 64-bit. Partendo con la specifica di base POWER, il PowerPC ha aggiunto:
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 8KB e ciò rallentava il computer drasticamente. 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 che sia stato usato 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, schede acceleratrici per Amiga, nel Nintendo GameCube, ed in molti sistemi embedded come ad esempio il TiVo.Storia
Caratteristiche di design
Implementazioni