Field Programmable Gate Array

integrierter Schaltkreis, in welchen eine logische Schaltung geladen werden kann
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 24. Dezember 2003 um 00:00 Uhr durch 217.185.137.8 (Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Ein FPGA (Field Programmable Gate Array) ist ein frei programmierbarer Logikschaltkreis. Ein FPGA besteht aus einer Matrix-Struktur aus konfigurierbaren Logikblöcken. Diese Logikblöcke werden auch als CLB bezeichnet (configurable logic blocks). Desweiteren existieren Ein- und Ausgabeblöcke (I/O-Blöcke), die für die Verbindung zur Außenwelt notwendig sind und Block Select RAMs für die Speicherung von Daten.

Jeder Logikblock besteht aus Logikzellen, die für Operationen wie AND, OR, NOT, XOR, usw. genutzt werden können. Desweiteren wird in den CLBs auch FlipFlop-Logik zur Verfügung gestellt.

Ein FPGA besteht aus sehr vielen Logikzellen. Für die Programmierung eines FPGAs ist man auf eine sehr hochwertige Entwurfs-Software angewiesen. Man hat gewisse Grenzen bezüglich den Verbindungsleitungen, sodass manchmal nicht ausreichend viele solcher Verbindungen zur Verfügung stehen und viele Schaltungen ohne vorherige Optimierung nicht realisierbar sind.

Erstellt wird Software für einen FPGA meist mit der Hardware-Beschreibungssprache VHDL. Innerhalb des Entwurfsflusses kommen danach die weiteren Schritte zum Tragen, also die funktionalen Simulation, die Synthese, die Implementierung und noch eine zeitbehaftete Simulation. Erst danach sollte die implementierte Schaltung am realen FPGA erprobt werden.