RETRODREAMSAMIGA & SPECTRUM
Menu

← Tutti i chip

68000.chip

DIP-64 · MC68000P8 · disegno, non fotografia

Motorola 68000Motorola

1979

Motorola 68000

Il processore a 32 bit dentro e 16 fuori che ha messo in moto l'Amiga, il Macintosh e il Mega Drive.

Presentato da Motorola nel settembre 1979, il 68000 aveva registri a 32 bit, 16 MB di spazio di indirizzamento e un set di istruzioni pulito, quando i rivali contavano ancora in 64 KB. È in tutti gli Amiga fino all'A600, nei primi Macintosh, nell'Atari ST e nel Mega Drive.

bit interni
32
bit di bus
16
MHz al massimo
16,67
transistor
68.000
indirizzabili
16 MB

Ripartire da zero

A metà degli anni 70 il Motorola 6800 stava perdendo terreno: lo Zilog Z80 era più potente e il MOS 6502 molto più economico. Alla fine del 1976 Colin Crook, responsabile delle operazioni della divisione semiconduttori, avviò un progetto nuovo dal nome ambizioso: MACSS, Motorola Advanced Computer System on Silicon. Come architetto principale fu scelto Tom Gunter, che cominciò a mettere insieme la squadra nel gennaio 1977.

La squadra prese una decisione coraggiosa: abbandonare la compatibilità con il 6800 e disegnare un'architettura nuova, ispirata al minicomputer PDP-11 della DEC, dove quasi tutte le istruzioni funzionano con quasi tutti i registri e le modalità di indirizzamento. L'obiettivo era un milione di istruzioni al secondo, il valore che allora separava i processori veri dagli altri. Nick Tredennick scrisse quasi tutto il microcodice, i piccoli programmi interni che dicono al chip come eseguire ogni istruzione.

Il 68000 fu presentato nel settembre 1979. I primi campioni arrivarono ai clienti nel febbraio 1980 e i chip di produzione cominciarono a vendersi nel novembre di quell'anno, a 4, 6 e 8 MHz. Seguirono versioni a 10 MHz nel 1981, a 12,5 MHz nel 1982 e, più tardi, a 16,67 MHz.

Dentro: 32 bit nella testa, 16 nelle braccia

Il programmatore vede 16 registri a 32 bit: otto di dati (da D0 a D7) e otto di indirizzi (da A0 a A7). L'A7 è il puntatore dello stack ed esiste in doppia copia, uno per i programmi e uno per il sistema, perciò Motorola parla di 17 registri. Per fare un confronto: lo Z80 dello Spectrum ha registri a 8 bit che, uniti a coppie, arrivano a 16.

Fuori, il 68000 è più modesto. Il bus dati è a 16 bit e anche l'unità aritmetica interna, perciò una somma a 32 bit si fa in due metà. Motorola lo chiamava un processore a 16/32 bit. Il bus indirizzi ha 24 linee, che danno 16 MB di memoria diretta. Uno Z80 arriva a 64 KB: il 68000 ne vede 256 volte di più.

Ha 56 tipi di istruzione e 14 modalità di indirizzamento, e due livelli di privilegio: modo utente e modo supervisore. Con lo stack di sistema separato, ogni processo può avere uno stack piccolo, il che aiuta molto il multitasking. La tabella delle eccezioni occupa i primi 1024 byte della memoria, con 256 vettori a 32 bit.

Ogni accesso alla memoria richiede almeno quattro cicli di clock. L'istruzione più semplice, copiare un registro in un altro, richiede esattamente quei quattro cicli. A 7,09 MHz questo dà al massimo circa 1,8 milioni di queste istruzioni al secondo; le istruzioni più complesse richiedono parecchio di più.

Varianti e seconde fonti

Il 68000 originale è fatto in HMOS. Nel 1985 apparve il 68HC000, la prima versione CMOS, disegnata da Hitachi e lanciata insieme a Motorola: consuma molta meno energia e arrivò a 20 MHz. Poi vennero il 68HC001, che sceglie all'avvio tra bus a 8 o a 16 bit, il 68EC000, versione economica per sistemi embedded, e il 68SEC000, del 1996, completamente statico e pensato per funzionare a 3,3 V.

Il 68008 (con bus a 8 bit) e il 68010 (con correzioni per la memoria virtuale) sono fratelli diretti e hanno pagine proprie. Più tardi la famiglia diede origine a microcontrollori con nucleo 68000, come i DragonBall usati nei Palm.

Come si usava all'epoca, i grandi clienti esigevano un secondo produttore. Il 68000 fu fabbricato anche da Hitachi, Mostek, Rockwell, Signetics, Thomson e Toshiba. Motorola smise di produrre il 68000 HMOS il 1° giugno 1996; le versioni CMOS continuarono per molti anni.

Molto oltre l'Amiga

Tra i personal computer, il 68000 fu nell'Apple Lisa (1983) e nel Macintosh originale, lanciato il 24 gennaio 1984 con il processore a 7,8336 MHz. Fu nell'Atari ST del 1985, a 8 MHz, e nello Sharp X68000, lanciato nel 1987 solo in Giappone, a 10 MHz. Il Sinclair QL usò il fratello 68008.

Nelle workstation aprì la strada a Sun (Sun-1), ad Apollo e alla serie 200 degli HP 9000. Nei videogiochi è il processore principale del Sega Mega Drive (ottobre 1988 in Giappone), a circa 7,6 MHz, e del Neo Geo (1990), a 12 MHz, ed è anche nell'Atari Jaguar e in molte schede arcade.

Ci sono 68000 dove meno te lo aspetti. La HP LaserJet del 1984 ne aveva uno a 8 MHz, e anche la Apple LaserWriter del 1985, la prima stampante laser con PostScript, usava un 68000. Le calcolatrici grafiche TI-89 e TI-92 della Texas Instruments girano su un 68000, la TI-89 originale a 10 MHz e le revisioni successive a 12 MHz.

Il cuore degli Amiga classici

L'A1000, l'A500, l'A2000, il CDTV, l'A500 Plus e l'A600 usano tutti un 68000 a 7,16 MHz (NTSC) o 7,09 MHz (PAL). Il clock viene dallo stesso quarzo che genera l'immagine, così il processore e i chip dell'Amiga lavorano allo stesso ritmo.

L'Amiga sfrutta un dettaglio del 68000: siccome ogni accesso alla memoria richiede quattro cicli, il processore di solito usa solo un ciclo di memoria su due. I chip custom (audio, floppy, sprite, immagine e il Copper) incastrano i loro accessi negli intervalli. Quando il Blitter o le modalità grafiche più pesanti hanno bisogno di più cicli, è il processore ad aspettare.

Nell'A500, nell'A500 Plus, nell'A1000, nell'A2000 e nel CDTV il 68000 è un DIP a 64 pin, di solito su zoccolo, il che permette di sostituirlo o di montare acceleratrici che si inseriscono al suo posto. L'A2000 ha anche uno slot apposito per schede processore. Nell'A600 il 68000 è in PLCC a 68 pin, saldato alla scheda: le acceleratrici per l'A600 si agganciano sopra il chip con una clip.

Lo sapevi che…

  1. Tom Gunter chiamava il package di plastica a 64 pin lo "scarafaggio del Texas": diceva che era grande come una tavoletta di cioccolato, con tante zampe.

  2. Si dice spesso che il nome venga dal numero di transistor, circa 68 000. Gunter raccontò un'altra coincidenza: il chip uscì con 68 000 millesimi di pollice quadrati di area, in un periodo in cui Motorola aveva 68 000 dipendenti.

  3. Si racconta che IBM scartò il 68000 per l'IBM PC a causa del costo. Secondo Gunter, IBM voleva una versione con bus a 8 bit, come l'Intel 8088, e Motorola si rifiutò di farla in tempo; il 68008 arrivò solo nel 1982.

  4. Steve Jobs chiese il 68000 a 15 dollari per il Macintosh, quando si vendeva a 125. Motorola fece un listino a scalare e, secondo Gunter, il prezzo medio del primo milione di unità fu di 14,76 dollari.

  5. Sarebbe stato uno degli ultimi grandi processori disegnati con carta e matita: la verifica del progetto si faceva con piante colorate a mano su tavoli luminosi.

  6. Il 68000 non ha il pin A0. Sceglie il byte alto o quello basso con due segnali appositi, UDS e LDS, e leggere una word a un indirizzo dispari provoca un errore di indirizzo.

  7. La "ST" dell'Atari ST vuol dire Sixteen/Thirty-two, i 16 bit fuori e i 32 dentro del 68000.

  8. In giapponese lo Sharp X68000 si legge "X sessantottomila": il nome del computer è quello del processore.

Dove si trova