Springe zum Hauptinhalt
Professur Schaltkreis- und Systementwurf
Professur Schaltkreis- und Systementwurf

Lehrveranstaltung Hardware Acceleration Using FPGAs

Wer entwirft den schnellsten Prozessor?

Ziel dieser Lehrveranstaltung ist ein eigener Prozessor auf Basis eines FPGA. Auf dem Weg dorthin kann fächerübergreifend erworbenes Wissen vertieft werden, indem unterschiedlichste Fragestellungen zu beantworten sind, unter anderem:

  • Was passiert beim Übersetzen von Assemblercode in Maschinencode und wie findet man die verwendeten Symbole im resultierenden Maschinencode?
  • Wie kann die Prozessorperformance gesteigert werden, ohne den Takt zu erhöhen?
  • Wie kann Prozessorperformance gemessen werden und wie macht man sie vergleichbar?
  • Welche Architekturerweiterungen eignen sich für das gegebene System bzw. scheiden von vornherein aus?
  • Wie kann die Prozessorumgebung ausreichend detailgetreu modelliert werden?
  • Wie sollte der VHDL Code gestaltet werden, um die gewünschten Hardwarestrukturen zu erzeugen?

Nachdem die Funktion des eigenen Prozessorentwurfs durch Simulation mit Hilfe vorgegebener und optional eigener Programme nachgewiesen worden ist, wird er mit Hilfe der zur Verfügung stehenden Umgebung auf das FPGA Prototyping System abgebildet, um die Ausführungszeiten im Vergleich zu den Entwürfen der Kommilitonen zu bewerten. Im Laufe des Semesters berichten die Studenten über den aktuellen Entwicklungsstand, um den Ideenaustausch zwischen den Arbeitsgruppen zu fördern. Am Ende der Lehrveranstaltung sollten Studenten in der Lage sein, ohne Hilfe eigene Entwürfe mit unterschiedlichsten, inzwischen z.T. frei verfügbaren Entwurfswerkzeugen zu realisieren.

Die Lehrveranstaltung Hardware Acceleration Using FPGAs, bestehend aus Vorlesung und Praktikum, beschäftigt sich in einem Semester mit dem praktischen Einsatz kommerzieller Entwurfstools. Aufbauend auf dem in den Lehrveranstaltungen Schaltkreisentwurf, Systementwurf und EDA-Tools erworbenen Wissen über Entwurf, Modellierung, Beschreibung und Synthese von komplexen Systemen mit Hilfe solcher Entwurfstools wird im Praktikum eine komplexe Entwurfsaufgabe behandelt. Die Vorlesung liefert das notwendige theoretische Hintergrundwissen über Tools und Algorithmen.

Vorlesungstermine

Mittwochs, 1. Woche, 15:30 bis 17:00 Uhr im Raum 2/W451.

21 Okt 2015
V1 - Designflow
  • Entwurfsetappen
  • Systemumgebungen und Testbenches
04 Nov 2015
V2 - VHDL für FPGA (1)
  • FPGA-spezifisches VHDL
  • Entwurfsattribute für FPGA
  • Reset- und FSM-Behandlung
02 Dez 2015
V3 - VHDL für FPGA (2)
  • Makros: RAM, ROM, GSR-Block
  • Tipps und Tricks
16 Dez 2015
V4 - Synthese hierarchischer Systeme
  • Partitionierung und Validierung
  • Constraints und Script-Spezifika
06 Jan 2016
V5 - XILINX ISE Foundation
  • Design Flow
  • Einführung in die P&R-Werkzeuge
  • Analyse der Protokolle
20 Jan 2016
V6 - Timinganalyse und Backannotation
  • Timinginformation im Design Flow
  • Backannotation-Simulation
03 Feb 2016
V7+V8+ZS - Bearbeitung komplexer Entwurfsaufgaben + Spezielle Synthesestrategien bei großen hierarchischen Systemen + Zwischenseminar
  • V7: Arbeit im Team, Projektkonsistenz
  • V7: Verifikationsstrategien
  • V8: Zeitplanung
  • V8: Constraint-Abhängigkeiten, spezielle Script-Konstrukte
  • ZS: Auswertung der bisherigen Praktikumsarbeit
  • ZS: Analyse von Fehlern und Schwierigkeiten

Praktikumstermine

Mittwochs, 14-tägl. 2. Wo. in PZ, 15:30 bis 18:30 Uhr im Raum 2/W465.

14 Okt 2015
P1 - Synthesegerechtes VHDL am Beispiel Design Analyzer
28 Okt 2015
P2 - Einführung Tools
  • Vorstellung Precision Synthesis, ModelSim, und Xilinx P&R-Tools
  • Synthesegerechtes VHDL
  • Design-Flow
  • Script-Programmierung
11 Nov 2015
P3 - Arbeit am Prozessor
25 Nov 2015
P4 - Arbeit am Prozessor
09 Dez 2015
P5 - Arbeit am Prozessor
13 Dez 2015
P6 - Arbeit am Prozessor
27 Jan 2016
P7 - Arbeit am Prozessor