Coconote
AI notes
AI voice & video notes
Export note
Try for free
Einführung zu FPGAs
Jul 16, 2024
Einführung zu FPGAs
Definition und Grundlagen
FPGA
steht für
Field Programmable Gate Array
.
Field Programmable
: Konfiguration der Logik kann jederzeit geändert werden.
Gate Array
: Anordnung digitaler Schaltungen, die flexibel konfiguriert werden können.
Implementiert digitale Logik im Gegensatz zu anderen ICs (Integrierte Schaltungen).
Zum Kaufzeitpunkt ist die Funktion von FPGAs noch nicht bestimmt (macht erstmal nichts).
Kann beliebig konfiguriert werden, z.B. wie ein Mikrocontroller.
Aufbau eines FPGAs
Hauptbestandteile eines FPGAs:
IO-Pins (Input/Output-Pins)
: Schnittstellen für Ein- und Ausgänge.
CLB (Configurable Logic Blocks)
: Kernlogikeinheiten zur Realisierung logischer Verknüpfungen.
Routing-Ressourcen
: Blaue Linien im Diagramm; große Schaltmatrix zur Verbindung von IO-Pins und CLBs.
Beispiel einer einfachen kombinatorischen Schaltung im FPGA:
4 Eingänge (A-D) und 1 Ausgang.
Besteht aus UND-, ODER-Gattern.
Entspricht einer Konfiguration über CLBs.
Funktionalität & Anwendung
CLBs
enthalten:
Flip-Flops für die Speicherung von Zuständen.
Spezielle Logik für arithmetische Operationen.
Anzahl der CLBs reicht von einigen Tausend bis Hunderttausend.
Typische Anwendung:
Digitale Signalverarbeitung
Viele digitale Filter können in Hardware parallellisiert werden.
Vergleich: FPGA vs. ASIC
FPGA
:
Flexibel, da nachträglich konfigurierbar.
Designmethodik ähnlich wie ASIC.
Einschränkung: Nur Funktionen, die CLBs ermöglichen.
ASIC (Application-Specific Integrated Circuit)
:
Einmaliges Design für spezifische Aufgaben.
Nicht nachträglich veränderbar.
Kann auch analoge Schaltungen umsetzen.
Typische Kennzahlen von FPGAs
Anzahl der CLBs.
Anzahl der IO-Pins.
Erweiterte Logikressourcen (z.B. DSP-Blöcke für Digitale Signalverarbeitung).
Maximale Taktfrequenz der Flip-Flops.
Leistungsaufnahme.
Konfigurationszeit (Speicherung der Konfiguration und Ladezeit nach Stromausfall).
Beschreibung von Schaltungen
Nutzung von
Hardware Description Languages (HDL)
:
VHDL
(insbesondere in Europa verbreitet).
Verilog
(eher in den USA verbreitet, zunehmend auch in Europa).
Ähnlichkeit zu Programmiersprachen wie C++.
Konzeptionell erfordert FPGA-Programmierung eine andere Denkweise als klassische Softwareentwicklung.
Abschluss
Grundlegende Einführung in FPGAs.
Mögliche weiterführende Themen in zukünftigen Videos: spezifische Anwendungen, detaillierte Betrachtung von DSP-Blöcken, u.v.m.
Einladung zur Diskussion und Feedback in den Kommentaren.
📄
Full transcript