Superskalarität

Superskalarität
Prozessorboard eines CRAY T3e parallel computers mit vier superskalaren Alpha-Prozessoren.

Unter Superskalarität versteht man die Eigenschaft eines Prozessors, mehrere Befehle aus einem Befehlsstrom gleichzeitig mit mehreren parallel arbeitenden Funktionseinheiten zu verarbeiten. Es handelt sich dabei um eine Parallelität auf Befehlsebene, bei der die feinkörnige Nebenläufigkeit zwischen den einzelnen Befehlen ausgenutzt wird. Da Superskalartechnik nicht den Befehlssatz der Architektur verändert, spricht man auch von einer Mikroarchitektur.


Technisch gesehen ist Superskalarität eine Erweiterung des CPU-Pipelining und kommt in High-End-Prozessoren, seit dem Intel Pentium auch in Standard-Prozessoren der Personal-Computer-Technik, zum Einsatz. Im Bereich der Mikrocontroller ist Superskalarität nicht sehr verbreitet.

Das Grundprinzip des superskalaren Ansatzes ist bereits im Jahr 1964 bei der Firma Control Data Corporation (CDC) aufgekommen, die den ersten Supercomputer (6600) entwickelte. Die Rechnerarchitektur des CDC 6600 beinhaltete bereits damals mehrere parallel arbeitende Funktionseinheiten für unterschiedliche mathematische Operationen.

Es werden drei verschiedene Arten von Superskalarität unterschieden[1]:

  • Superskalare Prozessoren mit statischem Scheduling: Die Anzahl der pro CPU-Zyklus parallel ausführbaren Befehle ist nicht vorgegeben, sondern wird durch die CPU dynamisch bestimmt. Da es sich um statisches Scheduling handelt, wird die Reihenfolge der Befehle vom Compiler vorgegeben.
  • Superskalare Prozessoren mit dynamischen Scheduling: Die CPU bestimmt sowohl, welche Befehle parallel ausgeführt werden, als auch die Reihenfolge in der dies geschieht (Out-of-order execution)
  • VLIW-Prozessoren (Very Long Instruction Word): Diese Architekturen benutzen deutlich längere Befehle, in denen die parallel auszuführenden Befehle vorgegeben werden. Bei der IA-64-Architektur wird dies auch EPIC genannt.

Mit Hilfe superskalarer Prozessoren kann die Anzahl der pro Takteinheit ausgeführten Befehle (Instructions per Cycle, IPC) erhöht werden. Grund dafür ist, dass das Laden von Befehlen und Operanden üblicherweise deutlich weniger Takteinheiten in Anspruch nimmt als die Ausführung der Befehle. Letzteres hängt zudem von der Art der Befehle (Addition, Multiplikation, Division, etc.) ab.

Der Begriff superskalar ist eine Modifikation des Begriffs skalar. Skalare Architekturen sind fähig, einen Befehl pro Taktzyklus auszuführen.

Einzelnachweise

  1. John Hennessy, David Patterson: Computer Architecture. A Quantitative Approach., 4th Edition, Morgan Kaufmann Publishers, ISBN 978-0-12-370490-0 (engl.), S. 114

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Simultaner Mehrfadenbetrieb — Der Begriff Simultaneous Multithreading (etwa simultaner Mehrfadenbetrieb), oder kurz SMT, bezeichnet die Fähigkeit eines Mikroprozessors, mittels getrennter Pipelines und/oder zusätzlicher Registersätze mehrere Threads gleichzeitig auszuführen.… …   Deutsch Wikipedia

  • Simultaneous Multithreading — Der Begriff Simultaneous Multithreading (etwa simultaner Mehrfadenbetrieb), oder kurz SMT, bezeichnet die Fähigkeit eines Mikroprozessors, mittels getrennter Pipelines und/oder zusätzlicher Registersätze mehrere Threads gleichzeitig auszuführen.… …   Deutsch Wikipedia

  • Superskalar — Prozessorboard eines CRAY T3e parallel computers mit vier superskalaren Alpha Prozessoren. Unter Superskalarität versteht man die Eigenschaft eines Prozessors, mehrere Befehle aus einem Befehlsstrom gleichzeitig mit mehreren parallel arbeitenden… …   Deutsch Wikipedia

  • Superskalare Architektur — Prozessorboard eines CRAY T3e parallel computers mit vier superskalaren Alpha Prozessoren. Unter Superskalarität versteht man die Eigenschaft eines Prozessors, mehrere Befehle aus einem Befehlsstrom gleichzeitig mit mehreren parallel arbeitenden… …   Deutsch Wikipedia

  • Tomasulo — Der Tomasulo Algorithmus ist ein Algorithmus zur Implementierung von dynamischem Scheduling in Prozessoren. Er wurde von Robert Tomasulo bei IBM entwickelt ursprünglich für die Gleitkommaeinheit des 360/91[1]. Inhaltsverzeichnis 1 Einordnung 2… …   Deutsch Wikipedia

  • Befehls-Pipeline — Die Pipeline (auch Befehls Pipeline oder Prozessor Pipeline) bezeichnet bei Mikroprozessoren eine Art „Fließband“, mit dem die Abarbeitung der Maschinenbefehle in Teilaufgaben zerlegt wird, die für mehrere Befehle parallel durchgeführt werden.… …   Deutsch Wikipedia

  • Befehlspipeline — Die Pipeline (auch Befehls Pipeline oder Prozessor Pipeline) bezeichnet bei Mikroprozessoren eine Art „Fließband“, mit dem die Abarbeitung der Maschinenbefehle in Teilaufgaben zerlegt wird, die für mehrere Befehle parallel durchgeführt werden.… …   Deutsch Wikipedia

  • Erlanger Klassifikation — Das Erlangen Classification System (ECS) wurde 1975 von Wolfgang Händler entwickelt und dient zur Beschreibung von Computer Architekturen hinsichtlich ihrer Parallelität. Hierzu werden Tripel verwendet (Angaben in eckigen Klammern sind nicht… …   Deutsch Wikipedia

  • Fließbandverarbeitung — Die Pipeline (auch Befehls Pipeline oder Prozessor Pipeline) bezeichnet bei Mikroprozessoren eine Art „Fließband“, mit dem die Abarbeitung der Maschinenbefehle in Teilaufgaben zerlegt wird, die für mehrere Befehle parallel durchgeführt werden.… …   Deutsch Wikipedia

  • Microprozessor — Die Artikel Prozessor (Hardware), Mikroprozessor und Hauptprozessor überschneiden sich thematisch. Hilf mit, die Artikel besser voneinander abzugrenzen oder zu vereinigen. Beteilige dich dazu an der Diskussion über diese Überschneidungen. Bitte… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”