Zilog Z80

Z80-CPU der ersten Stunde im weißen Keramik-Gehäuse
Zilog Z80 im 40-poligen DIP

Der Zilog Z80 ist ein Mikroprozessor mit 8-Bit-Architektur, der vom Unternehmen Zilog entwickelt wurde und seit 1976 vertrieben wird. In CMOS-Technik war der Z80 bis Juni 2024 lieferbar[1].

Er entstand kurz nachdem Federico Faggin das Unternehmen Intel verlassen und sein eigenes Unternehmen Zilog gegründet hatte. Bei Intel hatte er am 8080-Mikroprozessor gearbeitet.

Im März 1976 wurde der Z80 auf den Markt gebracht.[2] Er wurde unter der Maßgabe entwickelt, binär kompatibel zum Intel 8080 zu sein. Dadurch liefen die meisten für den 8080 entwickelten Programme ohne Änderungen auf dem Z80, insbesondere das CP/M-Betriebssystem.

Unterschiede zum Intel 8080

Architektur des Z80

Gegenüber dem Intel 8080 hat der Z80 mehrere Vorteile: Eine einzige 5-Volt-Versorgungsspannung statt +5 V/−5 V/+12 V beim 8080, eine eingebaute Refresh-Steuerung für den dynamischen RAM (die ansonsten extern realisiert werden musste), die ausgefeilte Z80-Interrupt-Logik, Blockkopier- und Vergleichsbefehle, Block-IO-Operationen und 16-bit-Register (IX und IY) mit indizierter Adressierung, weitere 16-bit-Arithmetikbefehle (ADC, SBC), weitere Bit- und Verschiebebefehle, schnellere Ausführungszeiten (einfache Befehle dauern vier statt fünf Takte), einen doppelten Registersatz und einen niedrigeren Preis.[3]

Außerdem wurden die Mnemonics der Assemblersprache vereinfacht. Die Anzahl der Mnemonics wurde erheblich reduziert, so gibt es beim Z80 nur noch die Mnenonic LD statt MOV, STAX, LDAX, MVI, LDA, STA, LXI, LHDD, SHLD und SPHL für Ladebefehle; nur noch ADD statt ADD, ADI und DAD für Additionsbefehle. Als Nebeneffekt dieser Konvention hielt sich die Anzahl der Mnemonics für die vielen neuen Befehle in Grenzen.

Allerdings ist das keine Änderung der Technik des Prozessors selbst, sondern nur eine Frage der Konvention; die Assembler für den Z80 erzeugen aus den neuen Mnemomics den gleichen Maschinencode wie die 8080-Assembler aus den alten Mnemomics. Teilweise gab es Z80-Assembler, die teilweise oder vollständig beide Befehlssyntaxen unterstützten.

10 Befehlstoken des Intel 8080 wurden durch einen ersetzt, außerdem nutzen neue Befehle diesen
Op-CodeMnemonikBeschreibung
8080Z80
78MOV A,B[4]LD A,Bkopiert das Register B ins Register A
02STAX BLD (BC),Akopiert das Register A in die Speicherzelle, deren Adresse im Registerpaar BC steht
0ALDAX BLD A,(BC)kopiert die Speicherzelle, deren Adresse im Registerpaar BC steht, ins Register A
3E 12MVI A,12hLD A,12hlade Konstante 12h ins Register A
32 34 12STA 1234hLD (1234h),Akopiert das Register A in die Speicherzelle 1234h
3A 34 12LDA 1234hLD A,(1234h)kopiert den Inhalt der Speicherzelle 1234h ins Register A
01 34 12LXI B,1234hLD BC,1234hlade Konstante 1234h ins Registerpaar BC
2A 34 12LHLD 1234hLD HL,(1234h)kopiert den Inhalt der Speicherzellen 1234h und 1235h ins Registerpaar HL
22 34 12SHLD 1234hLD (1234h),HLkopiert Registerpaar HL in die Speicherzellen 1234h und 1235h
F9SPHLLD SP,HLkopiert Registerpaar HL ins Registerpaar SP

Erfolg

Der Z80 überflügelte rasch den 8080 und wurde der bisher am weitesten verbreitete 8-Bit-Hauptprozessor (central processing unit, CPU). Wenn man die absolute Größe des Marktes einbezieht, dann ist er der seither erfolgreichste Hauptprozessor überhaupt.

Zunächst wurde der Z80 von Mostek für Zilog hergestellt, bis Zilog eigene Fabriken gebaut hatte. Daher hatte Mostek auch eine Lizenz, den Z80 unter der Bezeichnung „MK3880“ zu vermarkten. Später wurde der Z80 auch von anderen Halbleiterherstellern wie der NEC Corporation in Lizenz hergestellt. Spätere Versionen erlaubten eine höhere Taktrate als die ursprünglichen 2,5 MHz. Der Z80A bot 4 MHz, der Z80B 6 MHz und der Z80H dann 8 MHz. Außerdem entstanden der stromsparende Z80L („L“ für low power) sowie Varianten in als complementary metal-oxide-semiconductor (CMOS), die dann sogar bis 20 MHz betrieben werden konnten.

Weitere interessante Eigenschaften dieses Hauptprozessors liegen in zusätzlichen Befehlen, die nicht vom Hersteller dokumentiert wurden. Vor allem die Prefix-Opcodes für die IX- und IY-Register können auf praktisch alle Befehle angewandt werden, die sonst das HL-Registerpaar bzw. nur die Register H oder L betreffen. Somit ist es möglich, nur die obere bzw. untere Hälfte von IX bzw. IY als 8-Bit-Register zu verwenden.

Für den Aufbau von Mikrocomputern stehen neben den klassischen Intel-Peripheriebausteinen eine Reihe von Zilog-Peripheriebausteinen zur Verfügung, die speziell für den Z80 entwickelt wurden und mit den effektiven Interruptvektoren arbeiten können. Die wichtigsten der Z80-Familie sind der Z80 PIO (parallele Eingabe und Ausgabe), SIO (serielle Eingabe und Ausgabe), CTC (Zähler/Zeitgeber-Schaltkreis) und DMA (direct memory access, Speicherdirektzugriff durch Peripheriegeräte). Später folgten platzsparende höher integrierte Bausteine, die neben seriellen und parallelen Schnittstellen auch Zähler/Zeitgeber und programmable interrupt controller auf einem Chip boten, wie z. B. KIO, multifunktional wie sie noch in heutigen single-chip-Mikrocontrollern Standard sind.

Verwendung

Z80-Prozessor aus den 2000er Jahren in QFP-Form

Anfangs wurde der Z80 häufig in Arcade-Spielen eingesetzt, so in Galaxian (1979) und Pac-Man, aber auch der Mikrocomputer Intertec Superbrain nutzte den Prozessor. Der Z80 hat sich dabei bis Ende der 1980er Jahre als Spiele-Prozessor bewährt. Um gewünschte Effekte zu erzielen, setzten Automaten-Hersteller später auch bis zu drei Z80 parallel ein. Im Arcadespiel Noboranka von 1986 wurde die Darstellung zahlreicher Sprites und Animationen durch die 20-MHz-Version eines Z80 ermöglicht. Bereits das Shoot ’em up Zaxxon von 1982, für das ein 3-MHz-Z80-Prozessor verwendet wurde, zeigte deutlich das Potenzial des Z80. Auch Mr. Do!, das 1982, zwei Jahre nach Pac-Man, erschien, glänzte bereits durch physikalische Effekte, unter der Verwendung eines 4,1-MHz-Z80.[5]

Bis 2004 nutzten ihn die Neo-Geo-Automaten als Soundchip. E-mu Systems verwendete ihn bereits im Erscheinungsjahr in seinen Synthesizern, nachdem Tests mit einem Intel 8080 gescheitert waren.[6]

In den späten 1970er und frühen 1980er Jahren wurde der Z80 in vielen neuentwickelten Heimcomputern verwendet, zum Beispiel im Tandy TRS-80, Nascom, Video Genie, Colour Genie, PC-8801; in den Sharp-Computern MZ-80- und MZ-700 und MZ-800; im Triumph Adler Alphatronic PC; im Schneider/Amstrad CPC; dem Schneider Joyce/Amstrad PCW, bei den Sinclair ZX80, ZX81 und ZX Spectrum, dem Commodore 128 (als Zweitprozessor), in MSX-Computern und einer großen Anzahl von eher unbekannten geschäftsorientierten CP/M-Maschinen, die den damaligen Markt dominierten wie heute die Windows-PCs. Der Hauptkonkurrent des Z80 im Heimcomputerbereich war der MOS Technology 6502, dessen Varianten etwa im Apple II, Commodore 64 und Atari-Heimcomputern zu finden waren.

Viele Apple-II-Computer wurden mittels einer Erweiterungskarte mit einem Z80-Prozessor ausgerüstet, um so CP/M benutzen zu können. Da diese Z80-Karten in großen Mengen kopiert und mit unlizenzierten CP/M-Kopien betrieben wurden, liegen keine genauen Zahlen über ihre Verbreitung vor. Es dürfte sich aber bei dieser Kombination um eines der häufigsten CP/M-Systeme handeln. Auch der Basis 108, ein Hybridcomputer und weitgehender Nachbau der Apple-II-Architektur, enthielt neben dem Apple-typischen 6502 einen Z80 und konnte neben Apple-Software auch Programme unter dem Betriebssystem CP/M nutzen, beispielsweise die damals populäre Textverarbeitung WordStar.

Später wurde der Prozessor auch in Texas-Instruments-Taschenrechnern (selbst heute noch im TI-83 Plus und TI-84 Plus), in SNKs Neo Geo als Sound-Koprozessor und Segas Spielkonsolen Master System und Game Gear verwendet; der Sega Mega Drive nutzte ihn als Coprozessor für die Audioausgabe. Nintendos Spielkonsole Game Boy benutzte einen Z80-Klon (DMG-CPU), der von Sharp hergestellt wurde. Er hat einen leicht abgewandelten Befehlssatz.

Der Z80 wurde auch bei eingebetteten Systemen beliebt und ist dort heute noch weit verbreitet, beispielsweise arbeitet in Toshibas Mikrocontroller-Familien TLCS-90 und TLCS-870 ein Z80-Kern in vielfältigsten Kombinationen von Speicher- und Peripherieausstattungen. Auch in dem von 1986 bis 1989 in der Deutschen Demokratischen Republik vom VEB Automatisierungsanlagen Cottbus hergestellten Hybridsynthesizer Tiracon 6V diente der Z80 zur digitalen Steuerung der analogen Klangerzeuger-Hardware.

Nach dem Aufkommen leistungsfähigerer 16-bit-Prozessoren wurde die große Menge an bestehender 8-Bit-Software (hauptsächlich unter CP/M) mit Hilfe von Software-Emulatoren weiterhin nutzbar gehalten.

Auch im Jahr 2022 wird der Z80 an einigen Universitäten neben anderen 8-Bit-CPUs wie dem 8080 oder dem 6502 häufig als Modell einer CPU genutzt. An der Technischen Universität Wien wird er im Fach „Digitale Systeme“ als MC8 (Modellcomputer-8) vorgestellt, wobei der Befehlssatz vereinfacht wurde, eigene Assembler-Mnemonics definiert wurden und gewisse Register, Adressierungsarten und spezielle Funktionen der CPU nicht genutzt werden, um den Lernaufwand zu senken.

Im April 2024 wurde bekanntgegeben, dass die Produktion des Z80 nach 48 Jahren eingestellt wird.[7]

Versionen

Erste Serie der U880 CPU aus dem Funkwerk Erfurt
Die eines U880 (MME 80A-CPU, MME9201)
T34BM1 im weißen Keramik-Gehäuse aus der Sowjetunion
NEC µPD780C, NEC-Version eines Z80

NMOS-Serie

  • „Z80 CPU“ (erste Serie hatte keine Nummer, 2,5 MHz)
  • Z8400 („Z80 CPU“, 2,5 MHz)
  • Z8400A („Z80A CPU“, 4 MHz)
  • Z8400B („Z80B CPU“, 6 MHz)
  • Z8400H („Z80H CPU“, 8 MHz)
  • Z0840004 (4 MHz)
  • Z0840006 (6 MHz)
  • Z0840008 (8 MHz)

CMOS-Serie

  • Z84C0004 (4 MHz)
  • Z84C0006 (6 MHz)
  • Z84C0008 (8 MHz)
  • Z84C0010 (10 MHz)
  • Z84C0020 (20 MHz)
  • Z84C00-4PS (4 MHz)

Nachbauten

In der DDR wurde aufgrund eines Handelsembargos ein nichtlizenzierter Nachbau des Z80 unter dem Namen U880 entwickelt. Er war dort der dominierende Prozessor in einer größeren Anzahl von kommerziellen Computern (PC 1715, A 5120, MC-80), Bildungsrechnern (KC 85-1/87, KC-85/2-4, BIC A-5105, LC-80), Selbstbaurechnern (Z-1013) bis hin zu Nachbauten von Z80-basierten Rechnern (ZX81, ZX Spectrum). Taktfrequenzen lagen zwischen 1 MHz und knapp 4 MHz.

In der Sowjetunion wurden ebenfalls nichtlizenzierte Nachbauten unter den Bezeichnungen T34WM1 und KR1858WM1 (russisch Т34ВМ1 und КР1858ВМ1) von verschiedenen Fabriken (u. a. „Elektronika“, „Integral“, „Angstrem“, „Transistor“) bis weit in die 1990er Jahre hergestellt. Es sind Nachbauten mit Datecodes von 1996 bekannt.

Nachfolgetypen

  • Z180: Ab 1985 stellte Hitachi unter der Bezeichnung HD64180 einen Mikrocontroller vor, der vor allem wegen der Integration zahlreicher Peripheriebausteine sehr erfolgreich war. Später fertigte auch Zilog den Chip als Z180.
  • Toshiba vereinte den Z80-Prozessor mit seinen Peripheriebausteinen CTC, SIO und PIO, zusammen mit einer Oszillator- und Watchdog-Funktion in einem 100-Pin-Gehäuse als TMPZ84C015. Das Bauteil wird bis heute gefertigt, mit Zilog als Zweithersteller, Bezeichnung Z84C15.

Von Zilog folgten noch:

  • Zilog Z84C01 Z80-Code kompatible CPU, jedoch andere Anschlussbelegung, interner Taktgenerator und Steuerung des HALT-Verhaltens
  • Z280 16 bit + MMU (16 MiB Adressraum) + 256 Byte Cache
  • Z380 16 bit mit 32-bit-Registern (bis zu 4 GiB Adressraum) und vier Pipelines

Aktuell werden verkauft:

  • eZ80 50 MHz
  • eZ80Acclaim! Interner Flash und RAM
  • eZ80AcclaimPlus! On-chip 10/100 Mbit/s Ethernet MAC

Weitere, nicht Z80-kompatible CPU-Typen von Zilog:

Literatur

Beide Bücher gelten auch heute noch als Standardwerke im Bereich der Mikroprozessoren.

  • Ramesh Gaonkar: The Z80 Microprocessor: Architecture, Interfacing, Programming, and Design. Macmillan Publ. Co. New York 1988, ISBN 0-675-20540-9.
  • Eberhard Zehendner: Das Z80-Buch. Markt & Technik, Haar 1987, ISBN 3-89090-219-7.
Commons: Zilog Z80 – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. https://www.mouser.com/PCN/Littelfuse_PCN_Z84C00.pdf
  2. Bernd Leitenberger: Intels Niederlage: Der Z80 bernd-leitenberger.de, abgerufen am 15. Mai 2019.
  3. ... über CP/M (Memento vom 24. Januar 2019 im Internet Archive) Computermuseum München, abgerufen am 15. Mai 2019.
  4. Neben MOV A,B erzeugten MOV 7,0 bzw. MOV 7,B bzw. MOV A,0 den gleichen Code.
    B, C, D, E, H, L, M/SP/PSW und A waren vordefinierte Konstanten mit Werten von 0 bis 7. Die Intelsche Mnemonic nutzte nur Mnemonics sowie bis zu zwei numerische Konstanten, die in bestimmte Bitpositionen des Befehlswortes geschrieben wurden oder als zusätzliche Bytes an das Befehlswort angefügt wurden. Das ermögliche das Schreiben sehr einfacher Assembler-(Übersetzungs-)Programme, führte aber zu Assemblersprachen mit höherer Einstiegshürde.
  5. Homepage. In: mamedev.org, abgerufen am 15. November 2018 (Information Screens im MAME Emulator beim Start).
  6. Rob Keeble: 30 Years of Emu. In: soundonsound.com. September 2002, archiviert vom Original (nicht mehr online verfügbar) am 14. März 2012; abgerufen am 15. November 2018 (englisch).
  7. Golem.de: IT-News für Profis. Abgerufen am 22. April 2024.

Auf dieser Seite verwendete Medien

KL USSR T34BM1 Z80 Black Background.jpg
Autor/Urheber: Konstantin Lanzet, Lizenz: CC BY-SA 3.0
CPU T34VM1 (= Zilog Z80). Engineering sample.
MME 80A-CPU die.JPG
Autor/Urheber: Pauli Rautakorpi, Lizenz: CC BY 3.0
Die shot of MME 80A-CPU that is Z80-compatible microprocessor (80A-CPU, MME9201).
KL KME U880D.jpg
Autor/Urheber: Konstantin Lanzet (with permission), Lizenz: CC BY-SA 3.0
CPU MME (part of "Kombinat Mikroelektronik Erfurt"/KME) U880D
KL NEC uPD780C.jpg
Autor/Urheber: Konstantin Lanzet, Lizenz: CC BY-SA 4.0
CPU NEC µPD780C (= Zilog Z80)
Zilog Z8400APS.jpg
(c) Quickfix, CC BY-SA 3.0
Zilog Z8400APS (Z80A CPU)
Z84C0010FEC LQFP.png
Spare prototype component from a finished project (Modern Z80 CPU in LQFP package).
Z80 arch.svg
Autor/Urheber: Appaloosa, Lizenz: CC BY-SA 3.0
Z80 architecture
Zilog Z80.jpg
Autor/Urheber: Der ursprünglich hochladende Benutzer war Damicatz in der Wikipedia auf Englisch, Lizenz: CC BY 2.5

( Z80)from July 1976 A very early version of the en:Zilog Z80 — note that the date stamp is from June 1976, and the Z80 was sold from July 1976 onwards.

Photographed by Gennadiy Shvets. Taken from http://www.cpu-world.com/CPUs/Z80/L_Zilog-Z80%20CPU%20(wgg).jpg.

Lizenz

Email response from Gennadiy Shvets (2006-10-12):

This image, as well as all other images posted on CPU-World (with the exception of images posted in comments or in the forum) were taken by me and have my copyright.
Since the image of white-ceramic Z80 was already uploaded to Wikipedia, why don't you continue using it:
http://www.cpu-world.com/CPUs/Z80/L_Zilog-Z80%20CPU%20(wgg).jpg
I'm ok to license this image to Wikipedia using Creative Common License Attribution 1, Attribution 2 or Attribution 2.5.