CPU-Architektur: Busse, Terminals und Befehlszyklus erklärt
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 3,47 KB
CPU-Terminals und Bus-Struktur
Die Terminals einer CPU können in drei Haupttypen unterteilt werden: Adress-, Daten- und Steuerterminals. Diese Terminals ähneln den Anschlüssen von Speicherchips und E/A-Geräten (Input/Output). Die Verbindung zwischen diesen Komponenten wird als Bus-Terminals bezeichnet. Bei der Kommunikation zwischen der CPU, dem Speicher und den E/A-Geräten ist es notwendig, Signale sowohl senden als auch empfangen zu können.
Grundlegende Bus-Parameter
Es gibt drei grundlegende Parameter, die die Busse definieren: Adress-, Daten- und Steuerleitungen:
- Adressleitungen: Ein Chip mit m Adressleitungen kann bis zu $2^m$ Speicheradressen adressieren.
- Datenleitungen: Ein Chip mit $n$ Datenleitungen kann ein Wort von $n$ Bits in einem einzigen Arbeitsgang lesen oder schreiben.
- Steuerleitungen: Diese regulieren die Menge und den Zeitpunkt der an die CPU gesendeten Daten und werden unter anderem für die Steuerung verwendet.
Zusätzlich existieren:
- Stromversorgungs-Terminals
- Taktsignal (Rechteckwelle)
Bus-Kontrolle und -Arbitrierung
Der Bus-Control-Bereich besteht hauptsächlich aus Ausgängen der CPU, die Signale an die Speicherchips und E/A-Geräte senden, um anzuzeigen, wann die CPU lesen, schreiben oder andere Befehle ausführen möchte.
- Interrupts: Diese dienen dazu, die CPU über Ereignisse von E/A-Geräten zu informieren.
- Bus-Arbitrierung: Diese regelt den Verkehr auf dem Bus und verhindert, dass zwei Geräte versuchen, ihn gleichzeitig zu nutzen.
- Coprocessor: Einige Chips sind dafür konzipiert, mit Coprozessoren zusammenzuarbeiten, wie beispielsweise mathematische oder Grafikchips.
Ein Bus ist eine elektrische Bahn, die mehrere Geräte verbindet. Er kann Daten intern innerhalb der CPU oder extern zur Kommunikation tragen. Busse werden nach ihrer Funktionalität eingestuft, um Kommunikationsgeräte mit Speicher und E/A zu verbinden.
Busbreite
Die Breite eines Busses ist ein offensichtlicher Parameter. Je mehr Adressleitungen ein Bus besitzt, desto mehr Speicher kann die CPU direkt adressieren. Wenn ein Bus $n$ Adressleitungen hat, kann die CPU damit $2^n$ verschiedene Speicherplätze direkt ansprechen.
Datenpfad (Datentrail)
Der Datenpfad besteht typischerweise aus:
- Aufzeichnungen (Register) (1 bis 32)
- ALU (Arithmetisch-Logische Einheit)
- Mehrere Busse, die die Komponenten verbinden.
Anweisungen: Diese werden im Befehlsspeicher abgelegt und können zwischen Registern ausgetauscht werden.
Der CPU-Befehlszyklus
Die CPU führt Anweisungen in einer Reihe kleiner Schritte aus:
- Holen Sie die nächste Anweisung aus dem Speicher und legen Sie sie in das Befehlsregister.
- Aktualisieren Sie den Programmzähler für die nächste Anweisung.
- Bestimmen Sie die Art der auszuführenden Anweisung.
- Wenn die Anweisung ein Wort aus dem Speicher benötigt, bestimmen Sie dessen Adresse.
- Holen Sie das Wort bei Bedarf und speichern Sie es in einem CPU-Register.
- Führen Sie die Anweisung aus.
- Kehren Sie zu Schritt 1 zurück, um die Ausführung der nächsten Anweisung zu beginnen.