Christoph Flothow

M.Sc. Christoph Flothow

+49 6151 16-21153

S3|06 306
Merckstr. 25
64283 Darmstadt

Lehrveranstaltungen

Forschungsthemen

Offene Arbeiten

Betreuer*in: Christoph Flothow
Frühester Beginn: sofort
Typ: Bachelor-Arbeiten

Eines der Forschungsgebiete des Fachgebiets Rechnersysteme ist die Logiksynthese für Field Programmable Gate Arrays (FPGAs). Ein wichtiger Schritt dabei ist das sogenannte Technology Mapping, bei dem die gewünschte Funktionalität - in Form einer Booleschen Beschreibung vorliegend - auf die Look-up Tables (LUTs) des FPGAs abgebildet wird. Aktuell wird an einem Technology Mapping Verfahren basierend auf Binary Decision Diagrams (BDDs) geforscht.

Bei Technology Mapping mit BDDs ist die Anzahl an Knoten direkt unter dem Cut sehr wichtig. Sie beinflusst sowohl die Anzahl an Variablen, die in die LUT unter dem Cut passen, als auch die Anzahl an Hilfsfunktionen, die aus dem Teil über dem Cut hervorgehen. Insofern ist es meistens Vorteilhaft, eine möglichst kleine Anzahl an Knoten direkt über dem Cut zu haben. Allerdings ist die Anzahl an Knoten, die in einem (reduzierten) BDD vorhanden sind, sehr stark von der aktuellen Variablenreihenfolge des BDDs abhängig.

Das Ziel dieser Bachelorarbeit ist das Entwickeln und Auswerten von neuen Strategien, um eine möglichst gute Variablenreihenfolge zu finden, gegeben dass ein Cut an einer bestimmten Höhe gemacht werden soll.

Es würde sich anbieten, sich zuerst mit einem vorangestellten Projektseminar in die Thematik einzuarbeiten. Alternativ könnte der Umfang der Aufgabenstellung auch für eine Masterarbeit angepasst werden.

Betreuer*in: Christoph Flothow
Frühester Beginn: sofort
Typ: Projektseminare Master

Aktuell wird im Fachgebiet Rechnersysteme an einem Technology Mapping verfahren für FPGAs geforscht, dass auf Binary Decision Diagrams (BDDs) basiert. Bei Technology Mapping wird die gewünschte Funktionalität einer Schaltung - in Form einer Booleschen Beschreibung vorliegend - auf die Look-up Tables (LUTs) des FPGAs abgebildet. Mit dem Verfahren wurden schon einige gute Ergebnisse erreicht, aber vor allem größere Schaltungen sind problematisch, da die Größe von BDDs unter Umständen sehr schnell zunehmen kann.

Nun soll eine bereits existierende hoch optimierte BDD Bibliothek (CUDD, in C geschrieben) angepasst werden, um BLIF Dateien direkt einzulesen, und die Performanz mit dem aktuell verwendeten Framework verglichen werden. Insbesondere soll auch ausprobiert werden, ob einige große Dateien die bisher nicht eingelesen werden konnten mit dieser Bibliothek behandelt werden können.

Betreuer*in: Christoph Flothow
Frühester Beginn: sofort
Typ: Projektseminare Master

Ein wichtiger Schritt der Logik Synthese ist das sogenannte Technology Mapping, bei dem die gewünschte Funktionalität - in Form einer Booleschen Beschreibung vorliegend - auf die Elemente der Zieltechnologie abgebildet werden. Bei FPGAs sind diese die Lookup Tables.

Es existieren diverse Verfahren, um das Technology Mapping durchzuführen. Das akademische Tool ABC verwendet eins, dass auf sogenannten "Priority Cuts" basiert. Dies ist ein heuristisches Verfahren, dass den Suchraum stark eingrenzt und daher sehr effizient ist, aber trotzdem sehr gute Ergebnisse erreicht. Die Güte der Ergebnisse, im Vergleich zu erschöpfender Suche, soll in dieser Arbeit betrachtet und ausgewertet werden.

Veröffentlichungen