Embedded Systems in rekonfigurierbarer Hardware (ESR)

 

Vorlesungsdaten:

BeschreibungFPGA, SoC, Embedded Systems, Rechenbeschleuniger, Hardware Acceleration                                                      
Vorlesungsart40% Vorlesung, 40% Laborpraktikum und 20% Miniprojekte als Wahlpflichtmodul
StudiengangMasterstudiengänge Informationstechnik (NM), Medizintechnik (MTM) und Technische Informatik (TIM)
Umfang4 SWS / 5 CR
PrüfungsmodusLabortestate (Funktion, Fragen) = 24% der Fachnote Miniprojekte (Funktion) = 42% der Fachnote Schriftliche Klausur über 60 Minuten = 34% der Fachnote
DozentProf. Dr. Willenberg
VoraussetzungenStruktur von FPGAs, fundierte Grundlagenkenntnisse in VHDL oder Verilog (z.B. Vorlesung PLB); Aufbau und Programmierung von eingebetteten Systemen (z.B. Vorlesungen DMC, EMB). grundlegende Englischkenntnisse (Leseverständnis technischer Dokumentation)
Hilfsmittel (Software, etc.)Xilinx Vivado FPGA Design Suite, Xilinx Software Development Kit
Studentischer ArbeitsaufwandPräsenzstudium 40h, Laborpraktikum 50h, Miniprojekte 50h
ZulassungsvoraussetzungenBeschränkte Teilnehmerzahl (ca. 24) wg. Laborplätzen

 

Inhalte der Vorlesung:

 

Wiederholung und Ergänzung
Schaltungstiming in FPGAs, Pipelining, Struktur und Komponenten von eingebetteten Systemen, Programmierung und Peripheriezugriff, Grundlegende Prozessorarchitektur, Speicher, DMA und Bussysteme

Fortgeschrittene Architektur von digitalen Systemen
Taktverteilung und -synchronisation, Daten- und Kontrollflussmechanismen, Zugriff auf und Verwendung von internen und externen Speichern

Embedded Systems in FPGAs

  • Soft-Prozessoren am Beispiel Xilinx MicroBlaze
  • Das ARM Advanced eXtensible Interface (AXI)
  • Das Zynq/ARM Processing System
  • Entwurf von Peripheriemodulen, Busmaster-Hardware und Co-Prozessoren
  • Hardware-Zugriff auf selbstgeschriebene Peripherie aus Embedded-Software Embedded-Linux auf FPGA-Systemen

3 Miniprojekte: Entwurf eines Multiprozessor-Systems sowie von zwei Peripheriekomponenten inkl. Software-Treibern nach Spezifikation. Optionale Zusatzthemen je nach Zeitfortschritt:

  • Echtzeitbetriebssysteme und FPGA-Hardware
  • Linux-Treiber für eigene Hardware
  • High-Level-Synthesis am Beispiel Vivado HLS
  • Automatische Hardware-Generierung aus anderen Sprachen und Entwicklungsplatformen (z.B. MATLAB, Xilinx SDSoC)

 

Lernziele:

 

Allgemein: Die Vorlesung vermittelt ein grundlegendes Verständnis des Systemon-Chip-Designs für FPGAs und Verfahrensweisen für das SW/HW-Co-Design. Studenten lernen den Umgang mit einer verbreiteten kommerziellen Entwurfssoftware und den zugehörigen IP-Komponenten. Der Entwurfsprozess eigener Busperipherie oder Co-Prozessoren und korrespondierender Software wird im Rahmen von Laboren und Miniprojekten praktisch erlernt. Studierende lernen Entwicklungsaufwand und Performancegewinn selbstentwickelter Beschleunigerhardware einzuschätzen

Zusammenhänge mit anderen Modulen: ESR kombiniert die in den Bachelor-Modulen DMC und EMB gesammelten Erfahrung mit Mikroprozessorsystemen mit den in PLB erworbenen Kenntnissen zur FPGA-Programmierung. Die Aspekte zum System-On-Chip-Entwurf und der VHDL-Implementierung von Peripherie-Komponenten sind für den allgemeinen ASIC-Entwurf wie z.B. im Projektlabor Embedded Systems hilfreich und auch zur funktionalen Ergänzung von FPGA-Bildverarbeitungssystemen (FBV) verwertbar. In EES diskutierte Eigenschaften und Möglichkeiten von Echtzeitsystemen finden auch in den in ESR behandelten eingebetteten Systemen Anwendung.

Kompetenzen / Schlüsselqualifikationen:

  • Überblick über die in FPGA-Systemen einsetzbaren Prozessor- und Bussysteme und die zur Verfügung stehenden Speicherressourcen.
  • Einschätzung des möglichen Performancegewinns durch Einsatz von applikationsspezifischen Hardwarekomponenten; Kontrastierung mit dem höheren Entwicklungs- und Verifikationsaufwand.
  • Auswahl geeigneter Systemhierarchien und Kommunikationskanäle zur Optimierung von Performance und Ressourcenbedarf.
  • Implementierung, Debugging, Evaluation und Optimierung von geplanten Systems-on-Chip sowie von applikationsspezifischen Peripheriekomponenten.

Berufsvorbereitung: Mit dem theoretisch und praktisch erworbenen Verständnis können die Teilnehmer vollständige Systems-on-Chip und applikationsspezifische Hardware-Komponenten planen, implementieren und optimieren. Dabei gewinnen Sie Erfahrung mit den in der Industrie eingesetzten Entwicklungstools eines großen FPGA-Herstellers. Ein Einstieg in Software und Hardware eines Mitbewerbers ist durch das Verständnis der grundlegenden Abläufe und Konfigurationsmöglichkeiten kurzfristig realisierbar.

 

Literatur

 

  • Patterson/Hennessy: Computer Organization and Design, Morgan Kaufmann Brown/Vranesic: Fundamentals of Digital Logic with VHDL, McGraw Hill

Zurück