WikiDer > Feldprogrammierbares Gate-Array
EIN Feldprogrammierbares Gate-Array (FPGA) ist ein Integrierter Schaltkreis bestehend aus programmierbaren Logikbausteinen. Diese Logikbausteine können als Logikfunktionen wie UND, XOR und so weiter. Diese Funktionen können beispielsweise Decoder oder einfach mathematische Funktionen sein. Bei den meisten FPGAs finden sich auch in den Logikblöcken Logikelemente.
FPGAs haben ihren Ursprung in den 1980er Jahren und werden seitdem häufig in Prototypen und Produkten eingesetzt. Ein FPGA ist eine besondere Art programmierbares Logikgerät (PLD). Diese PLD ermöglicht die Implementierung üblicher digitaler Schaltungen. Die Kapazität eines FPGAs ist so weit gewachsen, dass heute ein komplettes Multiprozessorsystem in einem einzigen Chip untergebracht werden kann.
Für die Implementierung digitaler Schaltungsdesigns, die in das FPGA aufgenommen werden sollen, verwendet man a CAD-Programm. Diese CAD-Programme unterstützen verschiedene Methoden zum Hinzufügen von Logikschaltungen. Da diese digitalen Schaltungen immer komplexer werden, Hardwarebeschreibungssprachen (HDLs) die einzige praktische Möglichkeit, solche Systeme zu definieren. Ein HDL ist eine höhere Programmiersprache. Die untere Ebene wird in der Regel von CAD bereitgestellt. Dies ermöglicht es dem Designer, sich mithilfe des HDL vollständig auf die funktionalen Aspekte des Designs zu konzentrieren.
Softcore
Ein Softcore-Prozessor ist Teil des FPGA, er ist flexibel ausgelegt. Es ist beabsichtigt, dass Parameter während der (Re-)Implementierung in die Hardware jederzeit geändert werden können. Ein Softcore-Prozessor enthält einen Mikroprozessor, der vollständig in Software beschrieben ist. Normalerweise werden hier HDL-Dateien verwendet.
ASICs
ASIC's (anwendungsspezifische integrierte Schaltung) werden verwendet, um Systeme zusammenzusetzen. Mit Softcore-Prozessoren können solche Systeme in einen einzigen FPGA-Chip integriert werden. Auf dem kommerziellen Markt gibt es zwei Softcore-Prozessoren: den NIOS von Altera Corp. und 's Microblaze Xilinx Inc.
Technologie
FPGAs sind so aufgebaut, dass sie beliebige digitale Komponenten enthalten können. Um all diese Programmierbarkeit zu unterstützen, enthalten FPGA-Chips drei verschiedene Elemente:
- Logische Blöcke
- Programmierbare Verbindungen
- E/A-Blöcke
Logische Blöcke
Die Logikblöcke der FPGAs bestehen aus a Nachschlagwerk (LUT) und a Flip Flops. Eine LUT kann so programmiert werden, dass sie jede Art von Logikfunktion enthält.
Jeder Logikblock kann nur kleine Funktionen von wenigen Variablen speichern.
Eine LUT kann verwendet werden als:
- beliebige Kombinationsschaltung mit bis zu 4 Eingängen
- 16-Bit-Speicher
- 16-Bit-Schieberegister
Programmierbare Verschaltung
Die programmierbare Verschaltung dient dazu, Logikblöcke zu größeren Schaltungen zu verbinden, um die erforderliche Funktionalität zu erfüllen, auch Routing genannt. Konkret ist Routing also die Verbindung verschiedener Logikschaltungen. Routing ist ein sehr wichtiger Aspekt bei FPGA-Chips. Dieser Teil hat den größten Einfluss auf den Chip, außerdem werden die meisten Verzögerungen durch das Routing verursacht.
E/A-Blöcke
I/O-Blöcke verbinden die interne Logik mit den Pins des FPGA. Die meisten Pins können als Eingang, Ausgang oder bidirektional konfiguriert werden.
Grundlegende Prozesstechnologietypen
- SRAM – basierend auf statischer Speichertechnologie
- Antifuse – einmal programmierbar
- EPROM – Löschbarer programmierbarer schreibgeschützter Speicher-Technologie
- EEPROM – Elektrisch löschbarer programmierbarer Festwertspeicher-Technologie
- Blitz
- Sicherung – einmal programmierbar, bipolar
Geschichte
1985 entwickelte Xilinx das erste FPGA: den XC2064-Chip mit 1000 Ports. Damals wusste man natürlich noch nicht, dass die heutigen FPGAs 10.000 mal größer sein würden.Außerdem wurden viele Erweiterungen und neuere Programme zum Programmieren von FPGAs eingeführt. Insbesondere der starke Anstieg der Computer verwenden und Internet haben zum Wachstum von FPGAs beigetragen.
Quellen
- Oldfield J.V., Dorf R.C., Field-Programmable Gate Arrays: Reconfigurable Logic for Rapid Prototyping and Implementation of Digital Systems, 0471556653, Wiley-Interscience, 1995.
- Wolf W., FPGA-basiertes Systemdesign, 0131424610, Prentice Hall, 2004.
- Trimberger S. M., Field-Programmable Gate Array Technology, 0792394194, Springer, 1994.
- Vincent Himpe, Programmable Logic: From 0 and 1 to FPGA, 9789053812488, Elektor, 2009
Externer Link
| Siehe die Kategorie Feldprogrammierbare Gate-Arrays von Wikimedia Commons für Mediendateien zu diesem Thema. |