FPGA-Programmierung
Dozent:innen: Univ. Prof. Dr. Niklaus BergerKurzname: 08.079.20590
Kurs-Nr.: 08.079.20590
Kurstyp: Vorlesung/Übung
Format: online
Voraussetzungen / Organisatorisches
Voraussetzungen: Technische InformatikDie Übungen finden mit FPGA Evaluation-Boards statt (auch zu Hause) - Details dazu in der ersten Vorlesung.
Kurswebsite: https://agberger.kph.uni-mainz.de/teaching/summer-2021/fpga-programmierung-2021/
Digitale Lehre
Die Vorlesungen und Übungen finden bis auf Weiteres via Big Blue Button Videkonferenzen statt, von den Vorlesungen werden Aufzeichnungen zur Verfügung gestellt. Für die Übungen werden kleine FPGA-Boards abgegeben. Details dazu auf der Kurswebseite.Empfohlene Literatur
Es gibt diverse Bücher zu FPGAs und VHDL - leider kann ich keines davon uneingeschrenkt empfehlen.Inhalt
Wir besprechen Funktion und Anwendungen von programmierbaren Logikbausteinen (FPGAs). Der Entwurf, die Synthese und die Simulation von digitalen Schaltungen in der Hardwarebeschreibungssprache VHDL werden sowohl in der Vorlesung als auch in praktischen Übungen mit FPGAs behandelt. Die Teilnehmer sollen am Ende des Kurses in der Lage sein, unter Benutzung der entsprechenden Werkzeuge eine eigene Schaltung (z.B. eine einfache CPU) in einem FPGA umzusetzen und die von den Werkzeugen eingesetzten Techniken und Algorithmen zu verstehen. Wir behandeln die Optimierung von Schaltungen im Bezug auf Geschwindigkeit und Ressourcenverbrauch Weitere Themen sind Kommunikations- und Bus-Standards sowie schnelle Signalübertragung.Vorläufiges Programm:
Weshalb FPGAs? Weshalb VHDL?
CMOS, Gatter, kombinatorische Logik
Register, Takt, Pipelines
Simulation
Synthese
Place & Route
Schnelle Schaltungen
VHDL Design Patterns
Synchronisation
Speicher und vordefinierte Logikblöcke (IP)
Busse und andere Interfaces
Anwendungsbeispiele
Termine
Datum (Wochentag) | Zeit | Ort |
---|---|---|
14.04.2021 (Mittwoch) | 10:00 - 12:00 | Online |
21.04.2021 (Mittwoch) | 10:00 - 12:00 | Online |
28.04.2021 (Mittwoch) | 10:00 - 12:00 | Online |
05.05.2021 (Mittwoch) | 10:00 - 12:00 | Online |
12.05.2021 (Mittwoch) | 10:00 - 12:00 | Online |
19.05.2021 (Mittwoch) | 10:00 - 12:00 | Online |
26.05.2021 (Mittwoch) | 10:00 - 12:00 | Online |
02.06.2021 (Mittwoch) | 10:00 - 12:00 | Online |
09.06.2021 (Mittwoch) | 10:00 - 12:00 | Online |
16.06.2021 (Mittwoch) | 10:00 - 12:00 | Online |
23.06.2021 (Mittwoch) | 10:00 - 12:00 | Online |
30.06.2021 (Mittwoch) | 10:00 - 12:00 | Online |
07.07.2021 (Mittwoch) | 10:00 - 12:00 | Online |
14.07.2021 (Mittwoch) | 10:00 - 12:00 | Online |