Superskalare Prozessoren sind so konzipiert, dass sie mehrere Anweisungen pro Taktzyklus ausführen, wodurch die Gesamtleistung erhöht wird.

Superskalare Architektur verstehen

Ein superskalarer Prozessor kann mehrere Befehle gleichzeitig unter Verwendung mehrerer Ausführungseinheiten ausgeben, wobei sein Durchsatz von Faktoren wie der Anzahl der Ausführungseinheiten, Befehlsabhängigkeiten und Pipeline-Stufen abhängt.

Schlüsselfaktoren bei der Durchsatzberechnung

Die Hauptelemente, die den maximalen Durchsatz beeinflussen, sind:

  • Zahl der Ausführungseinheiten: Bestimmt, wie viele Anweisungen gleichzeitig verarbeitet werden können.
  • Anweisungsmix: Der Anteil der verschiedenen Anweisungstypen beeinflusst die Parallelität.
  • Pipeline-Tiefe: Tiefere Pipelines können Verzögerungen verursachen und den Durchsatz reduzieren.
  • Anweisungsabhängigkeiten: Datengefahren können die parallele Ausführung einschränken.

Berechnung des theoretischen Maximaldurchsatzes

Der maximale Durchsatz kann durch Division der Anzahl der Ausführungseinheiten durch die Anzahl der Taktzyklen, die zur Verarbeitung von Anweisungen benötigt werden, unter der Annahme idealer Bedingungen ohne Abhängigkeiten oder Gefahren angenähert werden, beispielsweise wenn ein Prozessor 4 Ausführungseinheiten hat und 4 Anweisungen pro Zyklus ausgeben kann, beträgt das theoretische Maximum 4 Anweisungen pro Zyklus.

Mathematisch kann es ausgedrückt werden als:

Maximaler Durchsatz = Anzahl der Ausführungseinheiten / Zyklen pro Instruktion