Information Technology Reference
In-Depth Information
Trotz der durch die Register verursachten Verzögerung ist die Ausführungsgeschwindigkeit von
Programmen nach [92] nur unwesentlich geringer als mit einem echten 14-Port-Registerspeicher.
Dies liegt zum Teil auch daran, dass bei der dynamischen Umordnung der Befehle durch den super-
skalaren Prozessor die zusätzliche Verzögerung durch Ausführung unabhängiger Befehle über-
brückt wird (siehe auch Abschnitt 3.2).
2 Schreibports
4 + 2 Schreibports
c
a
b
Register-
speicher
Register-
speicher
Bank 0
Bank 1
Bank 1
Bank 0
Bank 1
a
b
6 Leseports
8 Leseports
Bild 3.14. Vergrößerung der Anzahl an Leseports durch Registerspiegelung. a für den Nemesis X
der TU Berlin. b für den Alpha 21264 von Compaq
Befehlscodierung
Bei der bereits erwähnten Kompression von Befehlen wird einerseits die explizite
Codierung von nops vermieden und andererseits die Breite der einzelnen Operatio-
nen reduziert. Bild 3.15a bis f zeigt die Befehlsformate einiger verbreiteter VLIW-
Prozessoren. Zu Vergleichszwecken ist in Bild 3.15a zunächst das feste Befehlsfor-
mat des VLIW-Prozessors aus Bild 3.13 angegeben. Nops sind darin, wie beliebige
andere Operationen auch, explizit und unkomprimiert zu codieren.
Trace 7/300 . In Bild 3.15b ist das Befehlsformat der Trace 7/300 von Multiflow,
einem der ersten nach dem VLIW-Prinzip arbeitenden Rechner dargestellt [101].
Er verarbeitet aus einem 8 KWort großen Befehlscache jeweils 256 Bit breite
Befehle, in denen sieben Operationen enthalten sind (ein Sprungbefehl, vier
arithmetisch-logische Befehle und zwei Gleitkommabefehle). Jeder Operation ist
eine Verarbeitungseinheit fest zugeordnet. Folglich sind nops, genau wie andere
Operationen auch, explizit und unkomprimiert im Befehl anzugeben. Im
Befehlsspeicher werden die Befehle jedoch komprimiert gehalten, indem einer
Gruppe von je vier Operationen eine Maske vorangestellt ist, in der die hinzuzu-
fügenden nops codiert sind. Dies ist beispielhaft in Bild 3.15b dargestellt: Das
komprimierte Befehlswort (oben) wird zu einem unkomprimierten Befehlswort
(unten) ausgeweitet. Die schraffierten Felder kennzeichnen dabei die mit Hilfe
der Maske hinzugefügten nops.
Nemesis X . Anders als bei der Trace 7/300 wird bei dem an der TU Berlin zur
Untersuchung der dynamischen Binärübersetzung (siehe Abschnitt 4.2) entwi-
ckelten Nemesis X nicht die Codierung von nops vermieden, sondern ein sehr
kompaktes Befehlsformat verwendet, in dem, wie Bild 3.15c zeigt, alternativ
zwei oder drei Operationen codiert sein können [108]. Ein Befehl ist insgesamt
64 Bit, eine Operation zwischen 20 und 42 Bit breit. Die Zuordnung der Operati-
Search WWH ::




Custom Search