15 Jahre TecChannel - der beliebteste Artikel 1999

So funktioniert ein Prozessor

Erweiterte Architektur

Der Von-Neumann-Rechner holt alle Befehle und Daten direkt aus dem Speicher. Für die heutigen CPUs wäre das viel zu langsam. Das Bild zeigt einen erweiterten tecChannel-Prozessor, der technologisch zwar nicht gegen Pentium III und Co. antreten kann, aber als übersichtliches Beispiel ist er ideal geeignet.

Die tecChannel-CPU orientiert sich hinsichtlich Arbeitsweise stark an den x86-Prozessoren der PCs. Deshalb besitzt sie einen zusätzlichen Registersatz, der den Zugriff auf Befehle und Daten ohne Wartezyklen ermöglicht. Es handelt sich um Mehrzweckregister für Befehle und Daten. Das Adresswerk ist für die Berechnung der effektiven Adresse zuständig. Und der L1-Cache entkoppelt den Prozessorkern zusätzlich vom langsamen externen Speicher. Die BIU arbeitet weitgehend selbstständig vom Rest der CPU und ist für die Kommunikation mit der Außenwelt verantwortlich.

Wie die einzelnen Funktionsblöcke genau arbeiten, klären wir in den folgenden Abschnitten. Bevor wir aber ins Detail gehen, interessiert uns der grundsätzliche Programmablauf im Prozessor:

  • 1. Holphase (Fetch): Zunächst muss ein Befehl aus dem Speicher (eventuell in eines der Register) geladen werden. Wenn sich die gesuchte Information noch nicht im L1-Cache befindet, muss die BIU dafür den Speicher ansprechen.

  • 2. Dekodierphase (Decode): Das Steuerwerk untersucht den Befehl hinsichtlich der vorzunehmenden Arbeitsschritte. Es entscheidet, welche Operation (Addition, Subtraktion, logische Verknüpfung und so weiter) die ALU auszuführen hat.

  • Wenn für den Befehl noch Daten (Operanden) geholt werden müssen, steuert das ebenfalls die CU. Dazu befehligt Sie auch das Adresswerk, das die Position der gewünschten Information ermittelt.

  • 3. Ausführungsphase (Execute): Die ALU wird vom Steuerwerk nun angewiesen, die gewünschte Operation mit den geladenen Daten auszuführen.

  • 4. Schreibphase (Write Back): Das Ergebnis der Operation landet (abhängig vom Befehl) in einem der Register oder im Speicher. Um langwierige Zugriffe auf das externe RAM zu vermeiden, sammelt die CPU die Daten eventuell im L1-Cache, damit sie später in einem schnellen Blockschreibvorgang übertragen werden können.