Lo storico ma indimenticabile microprocessore Zilog Z80 compie 50 anni. Nato nel 1976 come alternativa più integrata e versatile all’Intel 8080, ha attraversato l’epoca dei primi personal computer, degli home computer, delle sale giochi e dei sistemi industriali, arrivando fino a dispositivi rimasti operativi per decenni. La produzione delle versioni classiche si è conclusa a giugno 2024, dopo circa 48 anni: una durata eccezionale per un circuito integrato commerciale. In un articolo di un paio di anni fa raccontavamo proprio come Zilog Z80 sia diventata una CPU aperta e libera.
Con bus dati a 8 bit, spazio di indirizzamento da 64 KB e una frequenza iniziale nell’ordine di pochi megahertz, Z80 contribuì a definire una base hardware comune per macchine CP/M, interpreti BASIC, computer domestici e controllori dedicati.
La longevità, però, racconta solo una parte della storia. Lo Z80 ebbe successo perché risolveva problemi concreti: semplificava l’elettronica necessaria intorno alla CPU, conservava la compatibilità binaria con il software scritto per l’8080 e aggiungeva registri, istruzioni e modalità di interrupt che rendevano più pratico lo sviluppo. Permetteva insomma di costruire un computer completo usando meno logica esterna rispetto a molte soluzioni precedenti. Con vantaggi economici, quindi, ma anche progettuali.
Prima dello Z80: dal Datapoint 2200 all’Intel 8008
Le origini dell’architettura risalgono a prima della nascita del microprocessore commerciale. Alla fine degli anni ’60, Computer Terminal Corporation sviluppò Datapoint 2200, un terminale programmabile il cui processore era realizzato su una scheda composta da circuiti logici TTL, una tecnologia basata su transistor.
Il sistema utilizzava i registri A, B, C, D, E, H e L, cioè piccole aree di memoria interne al processore; i registri H e L, usati insieme come coppia HL, contenevano l’indirizzo di una posizione in memoria e funzionavano da puntatore. I nomi dei registri e molte caratteristiche dell’insieme di istruzioni furono ripresi prima nell’Intel 8008, poi nell’8080 e infine nello Z80.
CTC chiese a Intel e Texas Instruments di concentrare quella logica in un singolo chip. Nessuno dei due progetti arrivò in tempo per la nuova generazione del terminale, ma Intel decise comunque di commercializzare il proprio componente. Il risultato fu l’Intel 8008, presentato nel 1972: un processore a 8 bit racchiuso in un contenitore DIP, cioè un package rettangolare con due file parallele di 9 pin ciascuna, capace di gestire indirizzi di memoria a 14 bit e quindi di accedere direttamente a un massimo di 16 KB di memoria.
L’8008 richiedeva due segnali di clock sfasati, un’alimentazione positiva da 5 V e una tensione negativa da -9 V. Indirizzi e dati condividevano parte dei piedini, perciò il progettista doveva aggiungere latch e circuiti di decodifica. Anche la gestione delle chiamate era particolare: la CPU manteneva internamente uno stack degli indirizzi di ritorno profondo otto livelli, invece di appoggiarsi alla RAM. Era una scelta legata alle memorie seriali previste per il Datapoint, ma risultava poco flessibile per un computer general purpose.
La nascita di Zilog e il progetto Super 80
Federico Faggin lasciò Intel alla fine del 1974 dopo aver partecipato allo sviluppo del 4004 e dell’8080. Insieme a Ralph Ungermann fondò Zilog; poco dopo si unì Masatoshi Shima, già coinvolto nei processori Intel. Il primo progetto importante prese inizialmente il nome informale di “Super 80”. L’obiettivo non era creare una CPU totalmente nuova, bensì migliorare l’8080 senza perdere il software disponibile.
Il finanziamento arrivò da Exxon, interessata allora a costruire una presenza nel settore informatico. Secondo le testimonianze raccolte dal Computer History Museum, il lavoro fino ai primi prototipi funzionanti costò circa 400.000 dollari, meno dei 500.000 disponibili. Il gruppo di sviluppo rimase piccolo: progettazione logica, simulazione e layout coinvolsero complessivamente una squadra di circa undici persone.
Zilog non disponeva inizialmente di una fabbrica propria e affidò la produzione a fornitori esterni, tra cui Mostek. La scelta ebbe un ruolo importante nella diffusione del componente: negli anni comparvero versioni prodotte su licenza, compatibili e derivate da aziende statunitensi, europee e asiatiche. Non tutte erano copie perfette sul piano elettrico o temporale, dettaglio che ancora oggi interessa chi restaura apparecchiature d’epoca.
Un’architettura compatibile, ma molto più ricca
Zilog Z80 conserva il bus dati a 8 bit e il bus indirizzi a 16 bit dell’8080, quindi può indirizzare direttamente 65.536 byte. Il codice macchina dell’8080 gira sullo Z80 nella grande maggioranza dei casi senza modifiche, mentre il nuovo processore aggiunge prefissi opcode e istruzioni supplementari. Zilog adottò anche una sintassi assembly propria, più esplicita: un’istruzione come MOV M,A dell’8080 diventa LD (HL),A, rendendo visibili sia la sorgente sia la destinazione.
Lo Z80 offriva diverse funzioni pensate per semplificare il lavoro del progettista, sia nel software sia nell’hardware. L’istruzione LDIR, per esempio, copiava automaticamente un blocco di dati da una zona di memoria a un’altra: i registri HL e DE indicavano origine e destinazione, mentre BC specificava quanti byte trasferire. La CPU eseguiva però l’intera operazione in prima persona, senza un controller DMA separato, quindi rimaneva impegnata fino alla fine e poteva introdurre ritardi nella gestione degli interrupt.
Sul piano elettrico, lo Z80 risultava più semplice da integrare rispetto all’Intel 8080, perché richiedeva una sola alimentazione da 5 V, un unico clock e metteva a disposizione segnali distinti per memoria, porte di ingresso e uscita, lettura e scrittura. Era quindi possibile costruire un piccolo computer con ROM, RAM, decoder e interfaccia seriale usando relativamente pochi componenti, anche se restavano da gestire con attenzione reset, temporizzazioni e conflitti sul bus.
La linea WAIT consentiva inoltre di rallentare la CPU quando una memoria o una periferica non riusciva a rispondere abbastanza rapidamente.
Un altro vantaggio riguardava le memorie DRAM, che devono ricevere periodicamente un segnale di aggiornamento per conservare i dati: lo Z80 integrava parte della logica di refresh, riducendo la necessità di timer e contatori esterni.
Dai computer CP/M alle console e alle macchine industriali
La compatibilità con l’8080 aprì subito l’accesso a CP/M e a numerosi interpreti BASIC. Il processore entrò in computer professionali e didattici, poi in home computer come Sinclair ZX80, ZX81 e ZX Spectrum, nella famiglia Amstrad CPC e nello standard MSX. Comparve anche in sistemi meno visibili: terminali, strumenti di misura, controllori di comunicazione, apparecchi medicali, automazione e macchine per ufficio.
Nel settore videoludico, molte schede arcade usarono Z80 autentici o compatibili per la logica principale e per l’audio. Sega Master System e Game Gear adottarono CPU derivate dalla stessa architettura. Il Game Boy, invece, impiegò lo Sharp LR35902: un processore che combina elementi dello Z80 e dell’8080, ma elimina alcuni registri e certe caratteristiche del chip.
Il software consolidato favorì una vita commerciale molto lunga. Un controller industriale già validato non si sostituisce soltanto perché esiste una CPU più veloce. Cambiare componente comporta nuova scheda, firmware, test elettromagnetici, qualifica termica, certificazioni e gestione dei ricambi. Finché il produttore garantisce disponibilità e prestazioni adeguate, mantenere un’architettura vecchia può risultare meno rischioso di una riprogettazione completa.
Dallo Z180 all’eZ80: evolvere senza rompere tutto
Il successo sconfinato dello Z80 generò numerosi second source e cloni. Mostek, Synertek, SGS, NEC, Sharp, Toshiba, Hitachi e altri produttori realizzarono versioni a partire da una licenza ufficiale o versioni compatibili; nei Paesi del blocco orientale apparvero ulteriori implementazioni. Alcune repliche conservavano il comportamento documentato ma differivano sugli opcode non ufficiali, sui flag, sul bus o sulla temporizzazione.
Zilog tentò più volte di superare il progetto originale. Lo Z8000, commercializzato nel 1979, adottava un’architettura a 16 bit non compatibile con lo Z80 e non ottenne lo stesso successo. Altri sviluppi, tra cui Z280 e Z380, aggiunsero funzioni più avanzate ma incontrarono un mercato ormai dominato da famiglie concorrenti.
Maggiore fortuna ebbero i derivati che conservarono una relazione diretta con il software Z80. Lo Z180, basato sul progetto Hitachi HD64180, integrò gestione della memoria, timer, canali seriali e DMA, migliorando le prestazioni senza abbandonare il codice esistente. L’eZ80, introdotto nel 2001, adottò un’unità di esecuzione più veloce e una modalità di indirizzamento ADL a 24 bit, capace di raggiungere 16 MB senza il tradizionale limite diretto di 64 KB.
La fine della produzione non coincide con la fine dello Z80
Ad aprile 2024, come ricordato in apertura, Zilog comunicò l’accantonamento della produzione di diverse versioni classiche della famiglia Z80; gli ultimi ordini furono accettati entro giugno dello stesso anno. La decisione riguardava i componenti discreti storici e rifletteva la fine del supporto da parte del fornitore produttivo, non la scomparsa immediata dell’architettura.
Milioni di dispositivi continuano a usare chip già installati o scorte di magazzino. Restano inoltre disponibili derivati, core FPGA, implementazioni HDL ed emulatori software. Un appassionato, ad aprile 2026, ha addirittura presentato un nuovo sistema operativo per lo Z80.
Lo Z80 rimane anche uno strumento didattico efficace. Il bus è osservabile, il modello dei registri si comprende senza strumenti complessi e l’assembly mostra con chiarezza il rapporto tra istruzioni, memoria e segnali hardware. Non offre protezione della memoria, cache, privilegi o unità di gestione moderne; proprio per questo permette di vedere meccanismi che nei processori contemporanei restano nascosti sotto molti livelli di astrazione.
Perché un processore del 1976 ha valore ancora oggi
Il progetto Z80 ebbe successo perché combinava continuità software, elettronica più semplice e funzioni adatte ai problemi reali dei progettisti.
La compatibilità con l’8080 proteggeva gli investimenti nel codice; il refresh DRAM integrato e i segnali di bus espliciti riducevano i componenti; registri alternativi, interrupt vettoriali e istruzioni a blocchi rendevano il firmware più compatto.
Non tutto era elegante. Lo spazio lineare di 64 KB diventò presto un vincolo, gli opcode a prefisso produssero istruzioni lente e alcune funzioni introdussero comportamenti poco intuitivi. Eppure il compromesso complessivo funzionò.
50 anni dopo il lancio, Zilog Z80 resta un raro esempio di progetto capace di sopravvivere ai prodotti per cui era nato: non perché fosse perfetto, ma perché offriva abbastanza compatibilità, controllo e semplicità da risultare utile in epoche molto diverse.