Praktische FPGA-Programmierung mit Hochsprachen
Art: Vorlesung
Credits: 3 CP
Prüfer / Betreuer
- Dr.-Ing. Florian Stock
- Lukas Max Weber
- Dr.-Ing. Lukas Sommer
- Dr.-Ing. Julian Oppermann
- Dr.-Ing. Leonardo Solis-Vasquez
Bereich: Robotik, Computational and Computer Engineering
Fachrichtung: Technische Informatik, Elektrotechnik/Datentechnik
Voraussetzungen:
- Grundlagen der digitalen Logik (bspw. Digitaltechnik (DT))
- Grundlagen der Rechnerarchitektur (Rechnerorganisation (RO) und AER)
Empfohlen werden zudem grundlegendes Wissen über Compiler und Linux-Systeme.
Inhalt
FPGAs wurden in den letzten Jahren sehr erfolgreich zur Umsetzung anwendungsspezifischer Beschleuniger in heterogenen Systemen eingesetzt. Allerdings ist die Programmierung mit konventionellen Hardware-Beschreiubungssprachen wie Verilog oder VHDL nach wie vor mühsam.
Als Alternative spielen High-Level Synthese Werkzeuge, die Hardware auch aus Hochsprachen wie C/C++ erzeugen können, eine zunehmend wichtigere Rolle bei der Implementierung solcher Beschleuniger. Im Rahmen dieser Veranstaltung erwerben Sie nützliches Hintergrundwissen zu den grundlegenden Algorithmen der High-Level Synthese sowie Kenntnisse beim praktischen Entwurf und der Optimierung von FPGA-Designs mittels High-Level Synthese-Werkzeugen.
Darüber hinaus lernen Sie relevante Techniken zur Integration von FPGA-basierten Beschleunigern in heterogene Systeme kennen. Im Rahmen der mit dieser Veranstaltung verbunden Praxisphase implementieren Sie einen FPGA-basierten Beschleuniger für ein vorgegebenes Problem und setzen diesen auf einem typischen heterogenen System in echter Hardware um.
Corona-Update
Die Vorlesung wird trotz der aktuellen Corona-Pandemie stattfinden, allerdings in vollständig digitaler Form. Details zur Organisation der Vorlesung in diesem Semester können Sie dem Orga-Video des Vorjahres entnehmen. Die Kommunikation findet vollständig über den Moodle-Kurs statt, bitte tragen Sie sich unbedingt in diesen Kurs ein!
Beginn: 12.04.2020
Sprechstunde: TBA
Links: Moodle
Materialien
Folien & Vorlesungsaufzeichnungen aus dem Jahr 2020, Dozent: Dr.-Ing. Florian Stock
Korrigierte Folien: Modulo Scheduling Modulo Scheduling (Handout)
Der VL-Block 7 zum Thema TaPaSCo ist in einer entsprechenden YouTube-Playlist verfügbar. Die Playlist finden Sie hier: