CPU-Grundlagen: VLIW-Architekturen & Intels Itanium

Intel Itanium-Architektur

Eine herausragende Architektur, die das VLIW-Prinzip implementiert, ist die Itanium-Architektur (IA) von Intel und HP (früher Intel Architecture 64 oder auch IA-64). Die grundlegenden Arbeiten starteten 1994 [16]. Dabei haben die Entwickler für diese Architektur eigens ein neues Prinzip kreiert und EPIC (Explicitly Parallel Instruction Computing) getauft [16, 17, 22, 23]. Mittlerweile existiert bereits die dritte Architekturstufe mit dem Namen Itanium 2 [24].

Die folgenden Seiten erläutert zunächst die EPIC-Philosophie. Im Anschluss daran behandeln sie die Mikroarchitektur, den Aufbau des Prozessorkerns in seiner ersten Implementierung (Itanium) und Fragen zur Software und zum Programmablauf.

Explicitly Parallel Instruction Computing

Intel bezeichnet EPIC als neue Philosophie vergleichbar mit RISC und sieht darin eine Antwort auf den langjährigen Zwist zwischen RISC (Reduced Instruction Set Computing) und CISC (Complex Instruction Set Computing). In der Tat besteht die Hauptaufgabe moderner xx-skalarer Prozessoren (superskalar oder multiskalar) aus dem Verteilen der anstehenden Aufgaben auf viele parallel arbeitende Einheiten. Bei den dynamischen Varianten versucht eine komplexe Hardware jedes Mal aufs Neue, die aufeinander folgenden Befehle zu analysieren und mit allen Tricks eine möglichst parallele Ausführung herbeizuführen. Diese Aufgabe wird in EPIC auf den Compiler abgebildet und ist damit programmstatisch. Das entspricht im Grundsatz der klassischen VLIW-Ideologie. Worin unterscheiden sich EPIC und einfaches VLIW? Intel gibt drei Haupteigenschaften zu EPIC an. Die EPIC-Architektur bietet

  • Mechanismen, die dem Compiler ein Instruction Scheduling auf effiziente Weise ermöglichen.

  • Genügend Ressourcen wie Register und Funktionseinheiten, um die Operationen parallel zu bearbeiten und die Ergebnisse auch parallel zu speichern.

  • Möglichkeiten, die Hardware mit zusätzlichen Informationen des Compilers zu versorgen.

Mit anderen Worten: In EPIC sind Compiler und Hardware stark aufeinander abgestimmt, sonst bietet sie keine bahnbrechenden Neuerungen. Im Detail gibt es aber Neuheiten und nützliche Features, die im Folgenden erläutert werden.