|
Hochsprachen-Compilierung für adaptive Rechner
Adaptive Rechner können Programme schneller und energiesparsamer ausführen als Standard-CPUs. Dies geschieht durch Auslagerung häufig ausgeführter Programm-Abschnitte in die variable Hardware eines FPGA-Bausteins. Um diese Technik wirtschaftlich nutzbar zu machen, benötigt man einen Hochsprachen-Compiler, sodass die FPGA-Konfiguration in kürzester Zeit und ohne größeren Aufwand entwickelt werden kann.
Aufbauend auf Arbeiten von Andreas Koch und Nico Kasprzyk habe ich mich mit der Erzeugung dynamisch geschedulter Hardware aus C beschäftigt. In diesem Zusammenhang habe ich die zweite Version des an unserer Abteilung entstandenen Compilers COMRADE entwickelt. COMRADE 2.0 besitzt ein von Grund auf neues Hardware-Back-End, das nicht nur beliebige Zeiger, sondern auch beliebig verschachtelte Bedingungen und Schleifen unterstützt. Für solche Programme läuft nun erstmalig vom Compiler erzeugte Hardware korrekt auf real existierenden adaptiven Rechnern. |
|
|