Lo Z80 il re delle CPU a 8 bit

Lo Z80 è un microprocessore (CPU) della Ziolog realizzato nel 1976 da Federico Faggin e Ralph Ungermannnel, cofondatori della stessa Zilog. Lo Z80 è il primo processore della Zilog.

Z80

Federico Faggin Federico Faggin, realizzatore del primo microprocesore della storia, ha ricevuto il 19 ottobre 2010 da Barack Obama la “Medaglia Nazionale per la Tecnologia e l’Innovazione”, il più alto riconoscimento americano i n campo scientifico.

federico faggin e Barack Obama
CPU Z80 – DIP40 (1976)

Faggin, dopo aver lavorato sul microprocessore 8080, lasciò l’Intel alla fine del 1974 per divergenze con la dirigenza; l’Intel secondo Faggin si era focalizzata quasi esclusivamente sulla progettazione di chip di memoria ritenendo i microprocessori dispositivi accessori, utili per vendere più memoria RAM. Faggin, invece, riteneva le CPU fondamentali per lo sviluppo dei moderni calcolatori e grazie alla loro possibilità di essere programmati per impieghi generali (general purpose).

La CPU Z80 Lo Z80, CPU a 8 bit, era una valida alternativa all’Intel 8080 ed offriva nuovi vantaggi, tra cui un set più ampio di istruzioni e una velocità da 2,5 MHz a 10 MHz. Lo Z80 è sicuramente la più longeva delle CPU a 8 bit. Contava inizialmente oltre 6000 transistor e una velocità di clock di 2.5 MHz fino ad arrivare, nelle ultime versioni, a 20 MHz con introduzioni di tecniche per migliorare in termini di consumo. Lo Z80 rimase in produzione per un ventennio, fino al 1985.

La piedinatura dello Z80 è la seguente:

282px-Z80_pinout.svg
Piedinatura dello Z80

Z80 – CPU a 8 bit Tipo di Pin Numero di Pin Data n=8 Address m=16 Control 13 Alimentazione 3 Totale 40

Lo Z80 può indirizzare 2m celle di memoria da n=8 bit ciascuna. Quindi la dimensione massima di memoria principale instalalbile su un sistema basato su questa CPU è:

DIM_RAM = 2m*n Byte

Con n=8 bit ; m=16 allora:

DIM_RAM = 8*216 bit =  216 Byte = 64 KByte

Durante la fine del 1970 e i primi anni del 1980 lo Z80 fu utilizzato in una grande quantità di home computer, tra cui l’MSX, il TRS-80 di radio-Shack, lo ZX80, lo ZX81 e lo ZX Spectrum della Sinclair, il Commodore 128, il MicroProfessor I, un mini computer didattico. Oltre a questi, lo Z80 fu impiegato in svariate macchine da ufficio basate sul sistema operativo CP/M: l’Osborne 1, il Kaypro II, il Research Machines 380Z. Il Commodore 128 integrava a fianco dellla CPU MOS 8502 lo Z80 per permettere al computer di entrare in una particolare modalità compatibile con il sistema operativo CP/M.

Lo Z80, a metà degli anni 1980, fu impiegato nel Tatung Einstein e nelle serie Amstrad CPC e PCW, oltre ad essere stato la CPU scelta per lo stadard MSX. La popolarità dello Z80 permise alla Zilog di vedere impiegato il suo gioello anche nel Commodore 128, per compatibilità, a fianco del suo MOS 8502;  in qusto modo anche altri computer, come il BBC Micro e l’Apple II basati sul 6502 e, il Commodore 64 basato sul 6510, fecero uso dello Z80 grazie ad unità esterne o cartucce.

Lo Z80 fu usato anche in moltissimi videogiochi arcade fra cui il famosissimo Pac-Man (1980). Da non dimenticare anche l’utilizzo dello Z80 in molti modelli di calcolatrici grafiche della Texas Instruments (TI) come la TI-85 e la TI-83, nelle console Master System e Game Gear della SEGA e (seuupre nella forma di clone non completamente compatibile con la CPU) nel Game Boy della Nintendo.

Alcuni importanti dispositivi che utilizzavano lo Z80: Commodore 128, ZX81, Game Boy, e TX83

commodore128 zx81 gameboy Z80

Lo Z80 fu utilizzato anche per scopi educativi nelle scuole superiori negli anni 1990 e negli anni 2000 e, dalla Scuola Radio Elettra nella realizzazione dell’Elettra Computer System insieme al Z80 CTC e allo Z80 PIO. Lo Z80 e in particolar modo gli emulatori (per esempio AVSIMZ80) erano ottimi strumenti di studio per la programmazione in Assembler.

Recentemente questo studio viene realizzato non più con Z80 ma con CPU Intel 8086 e relativi simulatori. Attualmente esistono nuove implementazioni dello Z80 basate sulla tecnologia FPGA o su tecniche a basso consumoin grado di raggiungere velocità di clock di alcune decine di MHz. A tutt’oggi lo Z80 è ancora utilizzato come microcontrollore nell’elettronica di hard disk, fax e stampanti. Sebbene sia ancora reperibile sul mercato a prezzi stracciati (2012, poco più di 4 dollari) lo Z80 non viene più usato attualmente su dispositivi commerciali, in quanto largamente superato dai moderni microprocessori. Tuttavia lo Z80 riveste ancora interesse per l’hobbystica e per la didattica, data la sua relativa semplicità di uso e costituisce un’ottima introduzione allo studio di µP più moderni e complessi.

Nell’arco degli anni furono progettate diverse periferiche dedicate ad interfacciarsi con lo Z80 e per la gestione degli interrupt hardware: PIO (Periferal Input Output) due porte bidirezionali a 8 bit programmabili a bit singolo. CTC (Counter Timer Circuit) quadruplo contatore e/o temporizzatore. SIO (Serial Input Output) doppia USART di cui esistono differenti versioni. SIO9 come SIO ma a singola porta. DART (Dual Asincronous Receiver Trasmitter) come SIO ma solo asincrona (UART). DMA a singolo canale.