e p i l o g - Fakultät für Informatik, TU Wien
e p i l o g - Fakultät für Informatik, TU Wien
e p i l o g - Fakultät für Informatik, TU Wien
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
INSTI<strong>TU</strong>T FÜR COMPUTERSPRACHEN<br />
Arbeitsbereich Programmiersprachen und Übersetzerbau<br />
Andreas Fellnhofer<br />
Automatic Generation of Interpreting Instruction Set Simulators<br />
Studium: Masterstudium Technische <strong>Informatik</strong><br />
BetreuerIn: Ao.Univ.Prof. Dr. Andreas Krall<br />
Abstrakt: Automatisch generierte Entwicklungswerkzeuge können einen<br />
wesentlichen Beitrag leisten, den Entwurfszyklus von<br />
anwendungsspezifischen Embedded Prozessoren zu verkürzen und<br />
zuverlässigere Abschätzungen über das Laufzeitverhalten von<br />
Hardware/Software-Systemen zu treffen. Ergebnisse aus Testläufen eines<br />
generierten Simulators zum Beispiel sind ein probates Mittel um aus den<br />
unzähligen Alternativen bei der Hardware Entwicklung passende<br />
Kompromisse zu wählen. Architekturbeschreibungssprachen, die<br />
Eigenschaften von Prozessoren auf einer mittleren Abstraktionsebene<br />
formalisieren, werden von Generatoren verwendet um Software Werkzeuge<br />
zu generieren. Die xADL, als ein Vertreter dieser Sprachen, wurde auf der<br />
<strong>TU</strong> <strong>Wien</strong> am Institut <strong>für</strong> Computersprachen entwickelt und ist<br />
strukturbasiert. Sie ermöglicht die Generierung einer weiten Palette an<br />
Software (z.B. Simulatoren und Compiler) durch ein Framework, das die<br />
Architekturbeschreibung vorverarbeitet und Module zur Weiterverarbeitung<br />
vorsieht. Hier setzt die vorgestellte Arbeit an. Es wird eine Methode<br />
vorgestellt, die es erlaubt, xADL Beschreibungen in zyklengenaue<br />
Simulatoren zu übersetzen und eine konkrete Implementierung in Form eines<br />
(nicht zyklengenauen) Generator Moduls beschrieben. Des Weiteren<br />
präsentiert die vorliegende Arbeit eine Technik um Instruktionsdecoder, wie<br />
sie <strong>für</strong> Simulatoren üblicherweise benötigt werden, zu generieren.<br />
60<br />
Benedikt Huber<br />
Software Pipelining in a C-Compiler<br />
Studium: Diplomstudium <strong>Informatik</strong><br />
BetreuerIn: Ao.Univ.Prof. Dr. Andreas Krall<br />
Abstrakt: Very long instruction word (VLIW) Prozessoren nutzen instruction<br />
level paralellism (ILP) um die Ausführungszeit von Programmen zu<br />
verkürzen, indem sie mehrere Operationen zeitgleich verarbeiten. Da das<br />
Scheduling, insbesondere die Parallelisierung, ausschließlich vom Compiler<br />
durchgeführt wird, sind durchdachte Algorithmen notwendig um die zur<br />
Verfügung stehenden Ressourcen effizient zu nutzen. Software pipelining ist<br />
eine Technik um ILP in Basic-Block-Schleifen zu erhöhen, indem die<br />
Ausführung von aufeinanderfolgenden Iterationen überlappt wird. Die