Information Technology Reference
In-Depth Information
Nemesis C (Version 1.0)
Die Prozessorarchitektur Nemesis wurde in der Version 1.0 erstmals in dem 4-stufi-
gen Fließbandprozessor Nemesis C umgesetzt. Die Strukturbeschreibung in VHDL
ist zunächst für ein FPGA von Xilinx (XCV300) entwickelt worden [198]. Syntheti-
siert für ein Gatearray 0.13-Micron von TSMC mit sechs Metalllagen besitzt der
Prozessor eine Komplexität von 117 652 Gatteräquivalenten und erreicht eine maxi-
male Taktfrequenz von 243 MHz 1 .
Die mit Nemesis C gewonnenen Erkenntnisse fanden in der hier vorliegenden Neu-
auflage der Prozessorarchitekturdefinition Nemesis Version 1.1 Berücksichtigung,
in der neben zahlreichen Detailverbesserungen zwei grundlegende Merkmale geän-
dert wurden: (1.) ist ein als PAL bezeichneter Betriebsmodus eingeführt worden, der
eine klare Abgrenzung der Prozessorabstraktionsschicht von Anwendungsprogram-
men oder Betriebssystemen ermöglicht. (2.) wird der Registerstapel nur noch zum
Teil transparent auf dem Hauptspeicher abgebildet. So kann z.B. mit der Prozes-
sorarchitektur Nemesis Version 1.1 nicht mehr über Lade- und Speicherebefehle
indirekt auf in realen Registern befindliche Inhalte des Registerstapels zugegriffen
werden, wie dies mit Nemesis C noch möglich ist (siehe Abschnitt 1.4.2). Das sehr
leistungsfähige Merkmal ließ sich nämlich nur schlecht in FPGAs realisieren.
Nemesis C wurde nicht nur zur Untersuchung der Prozessorarchitektur Nemesis in
der Version 1.0, sondern auch zur Untersuchung mehrerer, sich nicht auf das Pro-
grammiermodell auswirkenden Techniken verwendet. Zu nennen sind vor allem die
beschriebenen Ansätze zur Sprungvorhersage in Abschnitt 2.2.4, zur Sprungzielvor-
hersage in Abschnitt 2.2.5 und zur Wert- sowie Schleifenendvorhersage in Abschnitt
2.2.6. Des Weiteren wurde die in Abschnitt 2.3.1 vorgestellte Ersetzungsstrategie
Random-PLRU für den Datencache realisiert und untersucht.
Nemesis X
Der Nemesis X stellt zur Zeit die komplexeste und auch leistungsfähigste Umset-
zung der Prozessorarchitektur Nemesis Version 1.1 dar. Die VLIW-Architektur ver-
arbeitet einheitlich 64 Bit breite Befehle, in denen maximal zwei arithmetisch-logi-
sche Operationen und eine Sprungoperation codiert sind. Kompatibilität zur Neme-
sis-Architektur wird erreicht, indem die auszuführenden skalaren Befehle dyna-
misch binärübersetzt werden (Abschnitt 4.2.3), und zwar durch den Laufzeitüberset-
zer Genesis X als Teil der Prozessorabstraktionsschicht.
Eine hohe Ausführungsgeschwindigkeit wird durch Maßnahmen erzielt, wie die
sog. Registerfärbung, um fälschlicherweise ausgeführte Befehlsfolgen schnell rück-
gängig machen zu können, oder spezielle Lade- und Speicherebefehle, die ein spe-
kulatives Umordnen der skalaren Befehlsfolgen erlauben. Um den Speicherbedarf
des in Software realisierten Trace-Caches gering zu halten, ist es möglich, einzelne
1.
Die Logiksynthese wurde mit dem Design Compiler 2003.10 von Synopsys, die Plazierung und
Verdrahtung mit SOC Encounter Digital IC Design Platform V3.3 von Cadence durchgeführt.
Search WWH ::




Custom Search