Aufbau und Funktionsweise
von Prozessoren
Prozessor
Eingabewerk
Daten
Ausgabewerk
Daten
Dem Prozessor werden Daten zugeführt, intern verarbeitet und anschließend die Ergebnisse wieder
ausgegeben.
Schematischer Aufbau eines Computers
Leitwerk Rechenwerk
Prozessor
Der Prozessor (=CPU) besteht im Kern aus zwei Einheiten: dem Leitwerk (auch Steuerwerk genannt)
und dem Rechenwerk.
Eingabewerk
Daten
Ausgabewerk
Daten
Schematischer Aufbau eines Computers
Leitwerk Rechenwerk
Prozessor
Das Leitwerk und das Rechenwerk tauschen prozessorinterne Steuersignale aus.
Eingabewerk
Daten
Ausgabewerk
Daten
Schematischer Aufbau eines Computers
Leitwerk Rechenwerk
Prozessor
Eingabewerk
Ausgabewerk
Daten
Daten
Arbeitsspeicher1
23
4
56
78
.
.
.
-
n-3
n-2
n-1
.
.
.
-
Adressen
Daten, Befehle
Die dafür benötigten Daten und Befehle werden aus dem Arbeitsspeicher geholt. Dorthin werden die
Daten auch zurück geschrieben.
Schematischer Aufbau eines Computers
Der Prozessor kann noch detaillierter betrachtet werden.
Leitwerk Rechenwerk
Prozessor
Schematischer Aufbau eines Computers
Leitwerk Rechenwerk
Prozessor
Der Befehlszähler kennt die Adresse der Speicherstelle mit der nächsten abzuarbeitenden
Anweisung.
Befehls-zähler
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Das Steuerwerk ruft diesen Befehl im Arbeitsspeicher ab.
Befehls-zähler
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Die Anweisung wird vom Arbeitsspeicher in das Befehlsregister des Leitwerkes geladen.
Befehls-zähler
Befehls-register
Befehle vom Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Eine Dekodiereinheit entschlüsselt die Anweisung für das Leitwerk.
Befehls-register
Befehls-zähler
Befehls-decodierer
Befehle vom Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Nun weiß das Leitwerk welche Werte es aus welchem Speicher abrufen soll.
Befehls-register
Befehls-zähler
Befehls-decodierer
Befehle vom Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Das Leitwerk veranlasst die Verschiebung der Wert aus dem Arbeitsspeicher in einen internen Speicher
des Rechenwerkes.
Befehls-register
Befehls-zähler
Befehls-decodierer
Operationen-steuerung
Befehle vom Arbeitsspeicher
Akkumulator
Register für Operanden und Ergebnisse
Werte vom Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Das Rechenwerk führt die Anweisung in der ALU (=Arithmetic and Logical Unit) durch und sichert die
Ergebnisse wieder.
Befehls-register
Befehls-zähler
Befehls-decodierer
Operationen-steuerung
Befehle vom Arbeitsspeicher
Akkumulator
Register für Operanden und Ergebnisse
A L U
Werte vom oder zum Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Werte vom Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Nach vollzogener Anweisung erhöht die Operationensteuerung den Befehlszähler auf die
Adresse der nächsten Anweisung.
Befehls-register
Befehls-zähler
Befehls-decodierer
Operationen-steuerung
Befehle vom Arbeitsspeicher
Akkumulator
Register für Operanden und Ergebnisse
A L U
Werte vom oder zum Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Ein internes Statusregister hält in einzelnen Bits (so genannten Flags) wichtige Zusatzinformationen zu
Operationen fest.
Befehls-register
Befehls-zähler
Befehls-decodierer
Operationen-steuerung
Status-register
Befehle vom Arbeitsspeicher
Akkumulator
Register für Operanden und Ergebnisse
A L U
Daten vom oder zum Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
Leitwerk Rechenwerk
Prozessor
Um diesen Ablauf zu koordinieren beinhaltet das Leitwerk einen Taktgeber, nach dem sich alle anderen
Einheiten richten müssen.
Befehls-register
Befehls-zähler
Befehls-decodierer
Operationen-steuerung
Takt-geber
Status-register
Befehle vom Arbeitsspeicher
Akkumulator
Register für Operanden und Ergebnisse
A L U
Daten vom oder zum Arbeitsspeicher
Befehlsadressen an den Arbeitsspeicher
Zusammenspiel von Leit- und Rechenwerk
1.Befehl aus Speicher holen
2.Dekodieren des Befehls
3.Adressberechnungen
4.Operanden aus Speicher holen
5.Operationsdurchführung
6.Speicherung der Ergebnisse
7.Bestimmung der Adresse des nächsten Befehls
Folgende Schritte erfolgen bei der Abarbeitung eines Befehles:
Arbeitsweise der CPU (Zusammenfassung)
Folgende Anweisung soll abgearbeitet werden:
„Addiere zur Zahl, die in der Speicherzelle 4000 steht und 2 Byte lang ist, diejenige Zahl der Speicherzelle 4002, die auch 2 Byte lang ist.Speichere dann das Ergebnis in den Speicherzellen 4000 und 4001 ab.“
400240002 2ADD
205620552054205320522051205020492048
Programm
305301
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
2048
BZ
Rechenwerk
Datenverarbeitung in der CPU
Im Befehlszähler BZ steht die Adresse 2048.
Dies ist die Speicherzelle, welche den nächsten Programmschritt enthält.
400240002 2ADD
205620552054205320522051205020492048
Programm
305301
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
2048
BZ
Rechenwerk
Datenverarbeitung in der CPU
400240002 2ADD
205620552054205320522051205020492048
Programm
305301
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
20484000ADD
205320522051205020492048
2 2 4002
BZ
Rechenwerk
Das Leitwerk erkennt dass dieser Befehl sechs Byte lang ist und ruft ihn ab.
Datenverarbeitung in der CPU
400240002 2ADD
205620552054205320522051205020492048
Programm
305301
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
20484000ADD
205320522051205020492048
2 2 4002
BZ
Rechenwerk
Eine umfangreiche Dekoderschaltung für den Befehl ADD entschlüsselt diesen für das Leitwerk, welches dann die erste Zahl aus den Speicherstellen 4000 und 4001 und die zweite Zahl aus den Speicherstellen 4002 und 4003 ausliest und in das Rechenwerk verschiebt.
301 305
Datenverarbeitung in der CPU
400240002 2ADD
205620552054205320522051205020492048
Programm
305301
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
20484000ADD
205320522051205020492048
2 2 4002
BZ
Rechenwerk
Das Rechenwerk führt die Addition mit Hilfe von Volladdierern durch.
301 305 606=+
Datenverarbeitung in der CPU
400240002 2ADD
205620552054205320522051205020492048
Programm
305301
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
20484000ADD
205320522051205020492048
2 2 4002
BZ
Rechenwerk
Das Leitwerk veranlasst, dass das Ergebnis der Addition in den Speicherzellen 4000 und 4001 abgelegt wird.
301 305 606=+
606
Datenverarbeitung in der CPU
400240002 2ADD
205620552054205320522051205020492048
Programm
305606
400840074006400540044003400240014000
Daten
Arbeitsspeicher
Leitwerk
20484000ADD
205320522051205020492048
2 2 4002
BZ
Rechenwerk
Der Befehl aus Zelle 2048 ist damit ausgeführt, der Befehlszähler wird um 6 (da der ausgeführte Befehl sechs Byte lang war) erhöht.
Die nächste Anweisung aus Speicherstelle 2054 wird – sofern vorhanden – eingelesen und abgearbeitet.
301 305 606=+
2054
Datenverarbeitung in der CPU
--- ENDE ---