Zilog Z80

z Wikipédie, slobodnej encyklopédie
Zilog Z80
8-bitový mikroprocesor
Pôvodná NMOS verzia Z80 v keramickom puzdre DIP40
Pôvodná NMOS verzia Z80 v keramickom puzdre DIP40
VývojárZilog
VýrobcoviaZilog, Synertek, Mostek a ďalší
Uvedeniejúl 1976
(47 rokov a 296 dní)
Výroba1976 – súčasnosť
Architektúravon Neumann, CISC
Inštrukčný súborrozšírený 8080
Endianitalittle-endian
Počet inštrukcií158
Počet registrov10x 8b (A-F, H, L, I, R)
4x 16b (PC, SP, IX, IY)
+ alt. (AF', BC', DE', HL')
Šírka slova8 b
Dátová zbernica8 b
Adresová zbernica16 b
Adresový priestor64 KiB
Adresový priestor V/V256 registrov
Max. frekvencia2,5 MHz (Z80)
4 MHz (Z80A)
6 MHz (Z80B)
8 MHz (Z80H)
Výpočtový výkon~0,36 – 1,16 MIPS
Výrobný proces4 µm
Plocha čipu18 mm²
Počet tranzistorov~8 500
Napájanie+5 V; 150 mA
PäticeDIP40, LQFP-40
PredchodcaIntel 8080
NástupcaZilog Z180
Zilog eZ80

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

Dejiny[upraviť | upraviť zdroj]

CMOS verzia Z80 v puzdre QFP
Čip neskoršej NMOS verzie Z80, rozmery 3 545 × 3 350 µm. Integrovaných je približne 8 500 tranzistorov.
Doska Didaktiku Gama, slovenského klonu počítača Sinclair ZX Spectrum s ekvivalentom Z80 od firmy GoldStar

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.[2] 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[upraviť | upraviť zdroj]

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:[3]

  • 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.[3]

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[3]
  • existencia alternatívnej sady registrov a možnosť jednoduchého prepínania medzi hlavnou a alternatívnou sadou[3]
  • inštrukcie pre blokové porovnávanie, blokový presun údajov a blokový vstup/výstup[3]
  • inštrukcie pre manipuláciu s jednotlivými bitmi[3]
  • zabudovaný mechanizmus občerstvovania (refresh) pripojenej DRAM pamäte[3]
  • 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[upraviť | upraviť zdroj]

  1. Zilog Z80 microprocessor family [online]. cpu-world.com, [cit. 2020-11-29]. Dostupné online.
  2. Federico Faggin [online]. computerhistory.org, [cit. 2020-11-29]. Dostupné online.
  3. a b c d e f g Zilog Z80 microprocessor architecture [online]. cpu-world.com, [cit. 2020-11-29]. Dostupné online.

Literatúra[upraviť | upraviť zdroj]

  • Z80-CPU Technical Manual. Cupertino : Zilog, 1976. 71 s. Dostupné online.
  • Zilog Data Book. Cupertino : Zilog, 1978. 128 s. Dostupné online.
  • DVOŘÁK, Vladimír. Mikroprocesor Z 80 a programovatelné obvody. Praha : ČSVTS, 1988. 259 s. Dostupné online.
  • ZAJÍČEK, Ladislav. Bity do bytu : Základy programování ve strojovém kódu – assembleru Z80. Praha : Mladá fronta, 1988. 191 s. Dostupné online. Archivované 2016-09-09 z originálu.
  • Z80 CPU User Manual. [San Jose] : Zilog, 2016. 318 s. Dostupné online.

Iné projekty[upraviť | upraviť zdroj]

  • Spolupracuj na Commons Commons ponúka multimediálne súbory na tému Zilog Z80

Externé odkazy[upraviť | upraviť zdroj]

  • 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