FPGA-Programmierung
Dozent:innen: Univ. Prof. Dr. Niklaus BergerKurzname: 08.079.20590
Kurs-Nr.: 08.079.20590
Kurstyp: Vorlesung/Übung
Voraussetzungen / Organisatorisches
Voraussetzungen: Technische InformatikDie Übungen finden mit FPGA Evaluation-Boards statt - Details dazu in der ersten Vorlesung.
Kurswebsite: https://agberger.kph.uni-mainz.de/teaching/summer-2020/fpga-programmierung-2020/
Digitale Lehre
Solange keine Präsenzlehre möglich ist, finden die Vorlesungen über das Big Blue Button Videokonferenzsystem statt.Dieses läuft im Webbrowser, es kein Client nötig, verbinen Sie einfach mit https://epyc2.kph.uni-mainz.de/b/pro-46d-dwx
Updates und Änderungen dazu finden sich falls notwendig auf der Kurswebseite:
https://agberger.kph.uni-mainz.de/teaching/summer-2020/fpga-programmierung-2020/
Wir haben auch einen Mattermost-Chat für die Volresung eingerichtet:
https://mattermost.gitlab.rlp.net/signup_user_complete/?id=837ey1xr7if9tp5yf36nzsxcrh
Für die Übungen erhalten Sie ein FPGA-Evaluation Board nach Hause geschickt, Details dazu in der ersten Vorlesung.
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 |
---|---|---|
22.04.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
29.04.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
06.05.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
13.05.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
20.05.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
27.05.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
03.06.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
10.06.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
17.06.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
24.06.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
01.07.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |
08.07.2020 (Mittwoch) | 10:00 - 12:00 | 04 432 2413 - Neubau Physik/Mathematik |