Zilog Z80

Zilog Z80 je 8-bitový mikroprocesor firmy Zilog, uvedený na trh v júli 1976, spätne kompatibilný s procesorom Intel 8080.

Dejiny 

V roku 1974 po skončení prác na mikroprocesore 8080 odišli z firmy Intel Federico Faggin a Masatoši Šima a spolu Ralphom Ungermanom založili Zilog. O dva roky neskôr vstúpil Zilog na trh s mikroprocesorom označeným ako Z80. Nakoľko na Z80 pracovali pôvodní vývojári intelovského procesora 8080 (a taktiež 8008 a aj iných), bol tento procesor funkčne podobný 8080 a smerom nahor je s ním úplne kompatibilný. To znamená, že programy vytvorené pre 8080 môžu bezo zmeny bežať aj na Z80 (veľmi významným programom schopným činnosti na Z80 bol operačný systém CP/M, ktorý neskôr tvoril základ Gatesovho MS-DOS).

Oproti 8080 mal Z80 niekoľko významných výhod (opísaných nižšie), ktoré mu umožnili za krátky čas predstihnúť 8080 na trhu a urobili z neho najpopulárnejší a najpoužívanejší mikroprocesor vôbec. Procesor bol vhodný najmä pre lacné riadiace zariadenia, Zilog dodnes vyrába na ňom založené obrovské množstvo variácií mikrokontrolérov (Z8) líšiacich sa kombináciami zabudovaných pamätí RAM a EPROM.

Zilog nebol jedinou firmou, ktorá procesor vyrábala. Originálny Z80 produkovali v licencii aj firmy Mostek a SGS. Iné firmy, ako Sharp a NEC vytvárali a predávali jeho klony. To isté robili aj National Semiconductor a Hitachi, ale ich procesory boli založené na technológii CMOS. Nelicencované klony Z80 sa vyrábali aj vo Východnom bloku, konkrétne v NDR pod označením U880, v ZSSR ako T34BM1 resp. КР1858ВМ1 a v Rumunsku ako MMN80CPU.

Z80 bolo možné nájsť v grafických kalkulačkách firmy Texas Instruments, master systémoch a hráčskych konzolách firmy SEGA. Game Boy-e od Nintenda využívali klony Z80 od Sharpu. Procesor bol však použitý aj v „skutočných“ počítačoch: MSX, TSR-80, Sinclair ZX80, ZX81 a ZX Spectrum, taktiež na Amstrad CPC a množstve najrôznejších počítačov používajúcich operačný systém CP/M.

Osembitové mikroprocesory založené na jadre pôvodného Z80 a nad nimi vytvorené mikrokontroléry sa vyrábajú a nachádzajú obrovské využitie ešte aj dnes. Len samotný Zilog ponúka tri z neho odvodené rodiny produktov, a to Z80, Z180 a eZ80.

Technické parametre 
Z80 sa vyrábal vo variáciách A, B a H, ktoré sa líšili iba hodinovou frekvenciou. Dodával sa v štyridsaťpinovom DIP puzdre. Dosahoval rýchlosti od počiatočných 2,5 Mhz (Z80) a 4 MHz (Z80A) až do 20 MHz v neskorších verziách. Procesor má celkovo štrnásť vnútorných registrov, plus osem z tzv. alternatívnej sady.

Napájanie je päťvoltové a rozsah jeho operačných teplôt je od 0 do 70 °C. Zásobník, podobne ako u 8080, nie je umiestnený na čipe, ale v pamäti RAM. Procesor má osembitovú dátovú a šestnásťbitovú adresovú zbernicu, čo mu umožňuje adresovať 64 kB pamäte. Má 252 základných inštrukcií a okrem toho možnosť ďalších 308 doplnkových inštrukcií.

K šiestim špeciálnym registrom sa radia:
 8b register prerušenia,
 8b obnovovací register,
 16b ukazovateľ zásobníka (SP, stack pointer),
 16b čítač inštrukcií (PC, program counter)
 a dva veľmi významné 16b indexové registre slúžiace na efektívnejšie spracovávanie polí označené ako IX a IY.

Univerzálne registre už tradične obsahujú 8b akumulátor a 8b flag register. K ďalším univerzálnym registrom je možné pristupovať samostatne ako ku šiestim 8b registrom B, C, D, E, H a L alebo aj ako k trom 16b registrom BC, DE a HL.

Okrem tejto (hlavnej) sady univerzálnych registrov existuje ešte ďalšia, tzv. alternatívna sada. Táto obsahuje takých istých osem registrov ako sada hlavná. Všetky inštrukcie využívajú iba hlavnú sadu, ale pomocou niektorých špeciálnych inštrukcií je možné zameniť obe sady, čo umožňuje rýchlejšiu odpoveď na prerušenia a jednoduché spracovávanie dvoch rôznych programov.

Medzi inštrukcie procesora Z80 patria:
 inštrukcie, pomocou ktorých sa dajú prenášať 8 alebo 16-bitové dáta medzi registrami a pamäťovými bunkami a taktiež celé pamäťové bloky.
 rôzne druhy skokových inštrukcií a inštrukcií pre podmienené a nepodmienené volanie podprogramov
 aritmetické a logické inštrukcie
 inštrukcie porovnávania a to aj pamäťových oblastí
 inštrukcie na výmenu registrových sád, prázdna inštrukcia a na vytvorenie doplnku akumulátora
 inštrukcie na presun dát medzi ľubovoľnými pamäťovými bunkami a registrami

Najvýznamnejšie črty Z80, ktoré mu dovolili predbehnúť 8080 na trhu sú:
 rozšírená inštrukčná sada, nové indexové registre (IX a IY) a inštrukcie pre ne
 existencia alternatívnej sady registrov a možnosť jednoduchého prepínania medzi hlavnou a alternatívnou sadou
 inštrukcie pre blokové porovnávanie, blokový presun údajov a blokový vstup/výstup
 inštrukcie pre manipuláciu s jednotlivými bitmi
 zabudovaný mechanizmus občerstvovania (refresh) pripojenej DRAM pamäte
 jediné napájacie napätie (8080 potreboval 3)
 jednočipové riešenie (8080 vyžadoval 2 sprievodné obvody)
 jednofázové hodiny
 viac režimov obsluhy prerušenia
 oveľa nižšia cena ako pri 8080

Referencie

Literatúra

Iné projekty

Externé odkazy 
 Z80.info – Thomas Scherrer Z80-Family Official Support Page
 Telemark Assembler – krížový assembler pre 8080, 8085, Z80 a ďalšie 8-bitové architektúry
 ASM80 – online krížový assembler a IDE pre 8080, 8085, Z80 a 6502, vrátane emulátorov hw
 Z88DK – krížový prekladač jazyka C pre množstvo platforiem založených na 8080, 8085 a Z80

Mikroprocesory
Vzniklo v 1976