Information Technology Reference
In-Depth Information
2.1.1 Theoretische Betrachtungen
Zur Verarbeitung von Daten liest ein Prozessor schrittweise Befehle aus dem Spei-
cher, decodiert sie und führt sie schließlich aus. Für das Lesen und Decodieren eines
Befehls ist das sog. Leitwerk , für Zugriffe auf Daten und deren Verarbeitung das
sog. Datenwerk verantwortlich (siehe Bild 2.1). Leitwerk und Datenwerk beeinflus-
sen sich gegenseitig, indem einerseits das Leitwerk die Aktionen des Datenwerks
vorgibt und andererseits Ergebnisse des Datenwerks die Arbeitsweise des Leitwerks
beeinflussen. Um z.B. zwei Quelloperanden zu einem Ergebnis zu verknüpfen und
im Zieloperanden abzulegen, wird der binärcodierte Befehl zunächst gelesen, wobei
zur Adressierung des Speichers der Befehlszähler (engl. Instruction-Counter oder
Program-Counter , kurz PC ) verwendet wird. Anschließend generiert das Leitwerk
entsprechend des decodierten Befehls Steuersignale für das Datenwerk, in dem die
Operation ausgeführt wird.
Leitwerk
Datenwerk
Leitwerkzustand
Leiteinheit
Dateneinheit
Datenwerkzustand
Prozessor
Speicher
Befehle
Daten
Bild 2.1. Leitwerk und Datenwerk eines Prozessors und dessen Speicheranbindung
Implementierungsabhängig werden im Datenwerk z.B. die Quelloperanden gelesen,
verknüpft und das Ergebnis im Zieloperanden gespeichert. Außerdem wird dem
Leitwerk über Rücksignale (siehe Bild) mitgeteilt, dass nun der unmittelbar fol-
gende Befehl verarbeitet werden soll. Das Leitwerk inkrementiert schließlich den
Befehlszähler, wobei dies einer Änderung des Leitwerkszustands gleichkommt, und
beginnt damit den nächsten Befehl in genau derselben Art und Weise zu bearbeiten,
wie soeben beschrieben.
Die Steuerung des Leitwerks durch das Datenwerk scheint hierbei unnötig zu sein.
Dem Leitwerk wird nämlich über die Rücksignale lediglich mitgeteilt, dass sich die
Bearbeitung des nächsten Befehls beginnen lässt. Da das Datenwerk die in den Steu-
ersignalen codierte Operation in einem Schritt ausführt, ist dies dem Leitwerk
jedoch ohnehin bekannt. Die Rücksignale sind jedoch erforderlich, wenn eine von
Daten abhängige Veränderung des Kontrollflusses erreicht werden soll, z.B. bei
Ausführung eines bedingten Sprungbefehls.
Wie jeder Befehl werden bedingte Sprungbefehle vom Leitwerk zunächst gelesen
und decodiert, um so die Steuersignale für das Datenwerk zu generieren. Das Daten-
werk wertet daraufhin die im Befehl codierte Bedingung aus und gibt das Ergebnis
an das Leitwerk weiter. Falls die Bedingungsauswertung ergeben hat, dass die
Sprungbedingung nicht erfüllt ist, wird genauso wie mit allen anderen Befehlen ver-
fahren: Das Leitwerk inkrementiert den Befehlszähler und beginnt die Bearbeitung
des nächsten Befehls. Falls jedoch die Sprungbedingung erfüllt ist, wird der
Search WWH ::




Custom Search