User manual
24 Field Programmable Gate Array (FPGA)
4.8.3.1 FPGA-Grundstruktur
Die Grundstruktur von FPGAs stellt eine Matrix-Anordnung aus kongurierbaren Logik-Blöcken (Congura-
ble Logic Blocks = CLBs) sowie Ein-/Ausgangs-Blöcken (Input/Output Blocks = IOBs) dar. Letztere sind in der
Regel mit den Pins am Chip verbunden. Siehe Abb. 9 auf Seite 24.
Zwischen den Blöcken (CLBs und IOBs) liegt ein Gitter aus Verbindungswegen, man spricht auch von der
Interconnect Area bestehend aus einer Hierarchie horizontaler und vertikaler "Lines". An diese Leitungen
werden die Ein- und Ausgänge der Blöcke angeschlossen. Entferntere Verbindungen werden über program-
mierbare Verbindungspunkte in den Schaltmatrizen (engl. Switch-Matrix) des Gitters "verdrahtet". Auf diese
Weise ist die Signalführung (auch Routing genannt) über den gesamten Chip möglich.
CLB CLB CLB
CLB CLB CLB
CLB CLB CLB
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
I
O
B
IOB IOBIOB IOB IOB IOB IOB
IOB IOB IOB IOB IOB IOB IOB
Verbindungswege (Interconnect Area)
Schaltmatrix
Abb. 9: FPGA Grundstruktur
4.8.3.2 Konfigurierbare Logik-Blöcke (CLBs)
Die Grundstruktur eines FPGAs ist ein Feld (engl. Array) aus kongurierbaren Blöcken mit einer program-
mierbaren Wahrheitstabelle (engl. Lookup Table = LUT) und einem 1-Bit-Register (D-Flipop). Die LUT kann,
je nach Anzahl der verfügbaren Eingänge, jede beliebige n-stellige Binärfunktion realisieren. Üblich sind
LUT-Strukturen mit vier binären Eingängen und mehr. Neben den LUTs ermöglichen Multiplexer in den Ba-
sisblöcken sehr schnelle lokale Signalpfade, zum Beispiel zur Einbindung oder Umgehung des Flipops, zur
Rückkopplung von dessen Ausgang, zur Verbindung von Nachbarblöcken und ähnlichem.