341 likes | 984 Views
Aufbau und Funktionsweise von Prozessoren. Eingabewerk. Daten. Daten. Ausgabewerk. Schematischer Aufbau eines Computers. Dem Prozessor werden Daten zugeführt, intern verarbeitet und anschließend die Ergebnisse wieder ausgegeben. Prozessor. Eingabewerk. Daten. Leitwerk. Rechenwerk.
E N D
Eingabewerk Daten Daten Ausgabewerk Schematischer Aufbau eines Computers Dem Prozessor werden Daten zugeführt, intern verarbeitet und anschließend die Ergebnisse wieder ausgegeben. Prozessor
Eingabewerk Daten Leitwerk Rechenwerk Daten Ausgabewerk Schematischer Aufbau eines Computers Der Prozessor (=CPU) besteht im Kern aus zwei Einheiten: dem Leitwerk (auch Steuerwerk genannt) und dem Rechenwerk. Prozessor
Eingabewerk Daten Daten Ausgabewerk Schematischer Aufbau eines Computers Das Leitwerk und das Rechenwerk tauschen prozessorinterne Steuersignale aus. Prozessor Leitwerk Rechenwerk
Arbeitsspeicher 1 2 3 4 5 6 Adressen 7 8 Daten, Befehle . . . - . . . - n-3 n-2 n-1 Schematischer Aufbau eines Computers Die dafür benötigten Daten und Befehle werden aus dem Arbeitsspeicher geholt. Dorthin werden die Daten auch zurück geschrieben. Eingabewerk Daten Prozessor Leitwerk Rechenwerk Daten Ausgabewerk
Prozessor Leitwerk Rechenwerk Schematischer Aufbau eines Computers Der Prozessor kann noch detaillierter betrachtet werden.
Zusammenspiel von Leit- und Rechenwerk Der Befehlszähler kennt die Adresse der Speicherstelle mit der nächsten abzuarbeitenden Anweisung. Prozessor Leitwerk Rechenwerk Befehls-zähler
Befehlsadressen an den Arbeitsspeicher Zusammenspiel von Leit- und Rechenwerk Das Steuerwerk ruft diesen Befehl im Arbeitsspeicher ab. Prozessor Leitwerk Rechenwerk Befehls-zähler
Befehle vom Arbeitsspeicher Befehls-register Zusammenspiel von Leit- und Rechenwerk Die Anweisung wird vom Arbeitsspeicher in das Befehlsregister des Leitwerkes geladen. Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-zähler
Befehls-decodierer Zusammenspiel von Leit- und Rechenwerk Eine Dekodiereinheit entschlüsselt die Anweisung für das Leitwerk. Befehle vom Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler
Zusammenspiel von Leit- und Rechenwerk Nun weiß das Leitwerk welche Werte es aus welchem Speicher abrufen soll. Befehle vom Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler Befehls-decodierer
Werte vom Arbeitsspeicher Register für Operanden und Ergebnisse Akkumulator Operationen-steuerung Zusammenspiel von Leit- und Rechenwerk Das Leitwerk veranlasst die Verschiebung der Wert aus dem Arbeitsspeicher in einen internen Speicher des Rechenwerkes. Befehle vom Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler Befehls-decodierer
Werte vom oder zum Arbeitsspeicher Werte vom Arbeitsspeicher Register für Operanden und Ergebnisse A L U Zusammenspiel von Leit- und Rechenwerk Das Rechenwerk führt die Anweisung in der ALU (=Arithmetic and Logical Unit) durch und sichert die Ergebnisse wieder. Befehle vom Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler Akkumulator Befehls-decodierer Operationen-steuerung
Register für Operanden und Ergebnisse Zusammenspiel von Leit- und Rechenwerk Nach vollzogener Anweisung erhöht die Operationensteuerung den Befehlszähler auf die Adresse der nächsten Anweisung. Befehle vom Arbeitsspeicher Werte vom oder zum Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler Akkumulator Befehls-decodierer Operationen-steuerung A L U
Register für Operanden und Ergebnisse Status-register Zusammenspiel von Leit- und Rechenwerk Ein internes Statusregister hält in einzelnen Bits (so genannten Flags) wichtige Zusatzinformationen zu Operationen fest. Befehle vom Arbeitsspeicher Daten vom oder zum Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler Akkumulator Befehls-decodierer Operationen-steuerung A L U
Register für Operanden und Ergebnisse Takt-geber Zusammenspiel von Leit- und Rechenwerk Um diesen Ablauf zu koordinieren beinhaltet das Leitwerk einen Taktgeber, nach dem sich alle anderen Einheiten richten müssen. Befehle vom Arbeitsspeicher Daten vom oder zum Arbeitsspeicher Befehlsadressen an den Arbeitsspeicher Prozessor Leitwerk Rechenwerk Befehls-register Befehls-zähler Akkumulator Befehls-decodierer Operationen-steuerung A L U Status-register
Arbeitsweise der CPU (Zusammenfassung) Folgende Schritte erfolgen bei der Abarbeitung eines Befehles: • Befehl aus Speicher holen • Dekodieren des Befehls • Adressberechnungen • Operanden aus Speicher holen • Operationsdurchführung • Speicherung der Ergebnisse • Bestimmung der Adresse des nächsten Befehls
Arbeitsspeicher Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 301 305 Datenverarbeitung in der CPU 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.“ Rechenwerk BZ 2048 Leitwerk
Arbeitsspeicher Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 301 305 Datenverarbeitung in der CPU Im Befehlszähler BZ steht die Adresse 2048. Dies ist die Speicherzelle, welche den nächsten Programmschritt enthält. Rechenwerk BZ 2048 Leitwerk
Arbeitsspeicher Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 301 305 2048 2049 2050 2051 2052 2053 ADD 2 2 4000 4002 Datenverarbeitung in der CPU Das Leitwerk erkennt dass dieser Befehl sechs Byte lang ist und ruft ihn ab. Rechenwerk BZ 2048 Leitwerk
Arbeitsspeicher Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 301 305 301 305 2048 2049 2050 2051 2052 2053 ADD 2 2 4000 4002 Datenverarbeitung in der CPU 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. Rechenwerk BZ 2048 Leitwerk
Arbeitsspeicher Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 301 305 + = 606 2048 2049 2050 2051 2052 2053 ADD 2 2 4000 4002 Datenverarbeitung in der CPU Das Rechenwerk führt die Addition mit Hilfe von Volladdierern durch. Rechenwerk 301 305 BZ 2048 Leitwerk
+ = 606 2048 2049 2050 2051 2052 2053 ADD 2 2 4000 4002 Datenverarbeitung in der CPU Arbeitsspeicher Das Leitwerk veranlasst, dass das Ergebnis der Addition in den Speicherzellen 4000 und 4001 abgelegt wird. Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 606 301 305 Rechenwerk 301 305 BZ 2048 Leitwerk
+ = 606 2048 2049 2050 2051 2052 2053 ADD 2 2 4000 4002 Datenverarbeitung in der CPU Arbeitsspeicher 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. Programm 2048 2049 2050 2051 2052 2053 2054 2055 2056 ADD 2 2 4000 4002 Daten 4000 4001 4002 4003 4004 4005 4006 4007 4008 606 305 Rechenwerk 301 305 BZ 2054 2048 Leitwerk