next up previous contents
Nächste Seite: Architekturerweiterung und moderne Konzepte Aufwärts: Mikroprozessoren Vorherige Seite: Systemsteuerung   Inhalt


Der 8-Bit-Mikroprozessor Intel 8080

Der 8080 ist ein Prozessor mit einer Wortbreite von 8 Bit. Er wurde von der Firma Intel erstmals im Jahre $1973/74$ produziert und enthält 4800 Transistoren auf einer Fläche von etwa 22 $mm^2$ . Die interne Struktur des 8080 ist schematisch in Bild 7.1 dargestellt. Er hat 16 Adreßleitungen für einen Adreßraum von 64 kByte und eine Befehlszykluszeit von etwa 2$\mu s$. Die Belegung der 40 Anschlußkontakte und die Registerstruktur sind in Abb. 7.5dargestellt.

1mm

Abbildung: Mikroprozessor 8080; a: Anschlüsse; b: Registerstruktur
\begin{figure}\begin{center}
\par\linethickness{0.6pt}\begin{picture}(160.04,90....
...}
\put(105.00,2.00){\makebox(0,0)[lb]{b)}}
\end{picture}\end{center}\end{figure}

Die Befehlsausführung erfolgt im Prinzip gemäß Bild 7.3 mit 1 bis 5 Maschinenzyklen M, die jeweils aus 3 bis 5 Maschinentakten T sowie gegebenfalls zusätzlichen Wartetakten ${\rm T}_w$ bestehen.

Der Datentransfer auf dem bidirektionalen Datenbus D7 ...D0 wird von Steuersignalen begleitet. Während des Synchronisiersignals SYNC, das zu Beginn jedes Maschinenzyklus aktiviert wird (SYNC = 1), führt der Datenbus eine Statusinformation über den momentan laufenden Maschinenzyklus, die von den angeschlossenen Logikschaltkreisen zur Steuerung der Speicher- und Ein-/Ausgabe-Register genutzt werden kann. Die Signale DBIN (data bus in) und $\overline{\rm WR}$ (write) zeigen bei DBIN = 1 Dateneingabebereitschaft und bei $\overline{\rm WR}
= 0$ stabile Ausgabedaten auf dem Datenbus an. Im Maschinenzyklus ${\rm T}_2$ wird das Eingangssignal READY getestet. Bei READY = 0 werden Wartezustände ${\rm T}_w$ bis zum Vorliegen gültiger Daten aus dem Speicher oder von einem externen Register eingefügt. Den Wartezustand zeigt der Prozessor mit WAIT $= 1$ an.

Eine Interruptanforderung am maskierbaren Eingang INT wird nach Ablauf der Befehlsausführung mit dem Statussignal INTA zeitsynchron zu SYNC quittiert. Hiermit kann die Eingabe eines Restart-Befehls (RST) gesteuert werden, der den Beginn der Interruptbedienung je nach Kodierung bei einer von 8 Adressen 0, 8, 16, ..., 56 ($38_{16}$) veranlaßt. Voraussetzung für die Annahme einer Interruptforderung ist allerdings, daß sich das Interrupt-Enable-Flipflop im Zustand ,,Enable`` befindet. Dieser Zustand, der am Prozessoranschluß INTE getestet werden kann, wird mit dem Befehl EI (enable interrupt) erreicht.

Ein Eingangssignal HOLD fordert einen Betriebszustand des Mikroprozessors an, bei dem er die Daten- und Adreßbusanschlüsse in den hochohmigen Zustand schaltet. Damit ist der Mikroprozessor vom Bus elektrisch abgetrennt, um z.B. einer Steuerung den Bus für einen direkten Speicherzugriff überlassen zu können. Der HOLD-Zustand wird mit HLDA angezeigt.

Der RESET-Eingang, der nach Einschalten der Betriebsspannungen oder zur Wiederherstellung eines definierten Programmzustands aktiviert wird, schaltet den Befehlszähler auf Null (Programmstart nach RESET ab Speicherzelle 0) und blockiert den Interrupteingang, beeinflußt aber nicht die Registerinhalte des Mikroprozessors. Der Mikroprozessor 8080 benötigt einen externen 2-Phasen-Takt und die Betriebsspannungen + 5 V, - 5 V und + 12 V. Diese Anforderungen stellen einen Mangel dar, der im Interesse eines einfacheren Mikrorechneraufbaus bei anderen Mikroprozessortypen überwunden wurde.

Die 10 Anschlüsse für die Steuerfunktionen reichen nicht aus. Daher müssen einige Steuersignale über den Datenbus im Zeitmultiplexbetrieb ausgegeben werden. Diese acht zusätzlichen Statusfunktionen (z.B. INTA) erscheinen zu bestimmten Zeitpunkten auf dem Datenbus.

Der für den Programmierer in Assemblersprache wichtige Registerblock (Abb. 7.5b) enthält sechs 8-Bit-Register für freiprogrammierbare Nutzung (Register B, C, D, E, H, L), den Akkumulator (A) sowie den Programmzähler (PC) und den Stack-Pointer (SP), beide mit 16 Bit Länge. Der Stack kann an jeder beliebigen Stelle im Hauptspeicher angelegt werden. Die Flexibilität des Stackmechanismus beim 8080 erlaubt eine nahezu beliebige Schachtelung von Unterprogrammaufrufen. Die Register lassen sich für einige Operationen mit 16 Bit Wortlänge als Registerpaare BC, DE und HL programmieren. Die indirekte Registeradressierung nutzt das Registerpaar HL zum Ablegen der 16 Bit umfassenden Speicheradresse. Das Flag- oder Zustandsregister (PSW -- Prozessor-Status-Wort) gibt den Prozessorzustand oder das Ergebnis nach Ausführung von Befehlen an:

Ein weiteres Zustandsbit ist der Hilfsübertrag (AC, auxiliary carry), der einem Übertrag vom Bit 3 zum Bit 4 entspricht und vor allem bei BCD-Operationen angewendet wird, aber im Gegensatz zu den anderen Zustandsbits nicht für bedingte Sprung- und Rufoperationen nutzbar ist.


next up previous contents
Nächste Seite: Architekturerweiterung und moderne Konzepte Aufwärts: Mikroprozessoren Vorherige Seite: Systemsteuerung   Inhalt
Lars Tornow 2003-04-02