Information Technology Reference
In-Depth Information
beschriftete Bypass in dieser Verarbeitungsphase nicht schaltet. Falls also die Ope-
rationen r0 = r1 und r1 = r0 unmittelbar aufeinander folgend gestartet werden, wird
mit der zweiten Operation nicht das Ergebnis der ersten Operation weiterverarbeitet,
sondern der „alte“ Inhalt von r0. Im Endeffekt werden die Registerinhalte also nach
Bearbeitung des Operationspakets vertauscht im Registerspeicher erscheinen. In
derselben Art und Weise lässt sich mit der dritten regulär parallel auszuführenden
Operation OP3 verfahren, wobei nun zusätzlich auch der mit einem w beschriftete
Bypass deaktiviert wird.
Falls eine vierte Operation OP4 mit paralleler Semantik ausgeführt werden soll, ist
dies hier nicht mehr möglich, da OP1 zum Zeitpunkt t 5 sein Ergebnis in den Regis-
terspeicher überträgt und OP4 erst nach t 5 auf den Registerspeicher zugreift, mithin
der ggf. benötigte Inhalt des überschriebenen Ergebnisregisters nicht mehr zur Ver-
fügung steht. Tritt dieser Fall dennoch auf, kann z.B. eine Ausnahmebehandlung
angestoßen und das vollständige Operationspaket durch ein Programm emuliert
werden. Der damit verbundene Geschwindigkeitsverlust ist tolerierbar, wenn die
Anzahl der als parallel codierten maximal bearbeitbaren Operationen so groß ist,
dass Ausnahmesituationen nur mit geringer Häufigkeit auftreten. - Der in Bild 3.13
dargestellte VLIW-Prozessor, erweitert um die hier beschriebene Funktionalität,
verarbeitet z.B. Operationspakete mit neun Operationen, ohne eine Ausnahmebe-
handlung zu verursachen. Unter realistischen Voraussetzungen sollten Operations-
pakete mit mehr als 30 Operationen auf diese Weise verarbeitbar sein.
Neben einer geänderten Bypasssteuerung sind noch weitere Modifikationen erfor-
derlich, um die Semantik operationsparalleler Verarbeitung sequentiell nachahmen
zu können. Zum Beispiel dürfen Operationen, bei denen Datenabhängigkeiten nor-
malerweise nicht über Bypässe, sondern durch Sperren des Fließbands ( interlock )
gelöst werden, innerhalb eines Operationspakets gerade nicht dazu führen, dass das
Fließband gesperrt wird. Des Weiteren sind Verzweigungen und zum Teil auch Aus-
nahmeanforderungen in ihrer Bearbeitung solange zu verzögern, bis das Ende eines
Operationspakets erreicht ist. Falls die Operationsverarbeitung selbst die Ausnah-
mesituation verursacht, muss außerdem die laufende Operation in der Weise unter-
brochen werden, dass der Zustand des Prozessor vor Bearbeitung des Operationspa-
kets wieder hergestellt ist. Zumindest bezogen auf den Registerspeicher ist dies
jedoch sehr einfach realisierbar, da das erste Ergebnis eines Operationspakets erst
am Ende der Decodierung der letzten als parallel zu interpretierenden Operation
gespeichert wird.
Die beschriebenen Erweiterungen sind im Rahmen von Untersuchungen zur Ska-
lierbarkeit von VLIW-Prozessoren bereits Mitte der 90er Jahre an der TU Berlin
entwickelt worden, aber bisher noch nicht veröffentlicht worden. Neben dem gerin-
gen Aufwand einer Realisierung ist vor allem die Erhaltung der Semantik einer par-
allelen Operationsverarbeitung von Vorteil. Nachteilig ist jedoch, dass die Skalier-
barkeit auf einen maximalen Wert begrenzt ist, der bei der Codierung von Program-
men explizit berücksichtigt werden muss (abhängig von der Fließbandtiefe). Außer-
dem setzt das Verfahren die Vernetzung der einzelnen Verarbeitungseinheiten mit
Bypässen voraus, was nicht immer der Fall ist.
Search WWH ::




Custom Search