Der Begriff FPGA steht für Field Programmable Gate Array und ist eine Art von Halbleiter-Logik-Chip Dies kann so programmiert werden, dass es fast zu jeder Art von System oder digitaler Schaltung wird, ähnlich wie bei PLDs. PLDS sind auf Hunderte von Gates beschränkt, FPGAs unterstützen jedoch Tausende von Gates. Die Konfiguration der FPGA-Architektur wird im Allgemeinen unter Verwendung einer Sprache spezifiziert, d. H. HDL (Hardware Description Language), die der für einen ASIC (Application Specific Integrated Circuit) verwendeten ähnlich ist.
Feldprogrammierbare Gate-Arrays
FPGAs können eine Reihe von Vorteilen gegenüber einer ASIC-Technologie mit fester Funktion wie Standardzellen bieten. Normalerweise dauert die Herstellung von ASICs Monate, und die Kosten für die Beschaffung des Geräts betragen Tausende von Dollar. FPGAs werden jedoch in weniger als einer Sekunde hergestellt. Die Kosten liegen zwischen einigen und tausend US-Dollar. Die Flexibilität des FPGAs ist mit einem erheblichen Kostenbereich, Stromverbrauch und Verzögerung verbunden. Im Vergleich zu einem Standardzellen-ASIC Ein FPGA benötigt 20 bis 35 Mal mehr Fläche und die Leistung ist drei- bis viermal langsamer als die des ASIC. Dieser Artikel beschreibt die FPGA-Grundlagen und das FPGA-Architekturmodul, das E / A-Pad, Logikblöcke und Switch-Matrix enthält. FPGAs sind einige der neuen Trendbereiche von VLSI. Daher werden diese in verwendet VLSI-basierte Projekte für Studenten der Elektrotechnik .
FPGA-Architektur
Die allgemeine FPGA-Architektur besteht aus drei Modultypen. Dies sind E / A-Blöcke oder Pads, Switch-Matrix- / Verbindungskabel und konfigurierbare Logikblöcke (CLB). Die grundlegende FPGA-Architektur weist zweidimensionale Anordnungen von Logikblöcken auf, mit denen ein Benutzer die Verbindung zwischen den Logikblöcken anordnen kann. Die Funktionen eines FPGA-Architekturmoduls werden nachfolgend erläutert:
- CLB (Configurable Logic Block) enthält digitale Logik, Ein- und Ausgänge. Es implementiert die Benutzerlogik.
- Verbindungen geben die Richtung zwischen den Logikblöcken vor, um die Benutzerlogik zu implementieren.
- Abhängig von der Logik ermöglicht die Schaltmatrix das Umschalten zwischen Verbindungen.
- E / A-Pads für die Außenwelt zur Kommunikation mit verschiedenen Anwendungen.
FPGA-Architektur
Logikblock enthält MUX (Multiplexer) , D Flip Flop und LUT. Die LUT implementiert die kombinatorischen logischen Funktionen, die der MUX für die Auswahllogik verwendet, und das D-Flip-Flop speichert den Ausgang der LUT
Der Grundbaustein des FPGA ist der auf der Nachschlagetabelle basierende Funktionsgenerator. Die Anzahl der Eingänge in die LUT variiert von 3,4,6 und sogar 8 nach Experimenten. Jetzt haben wir adaptive LUTs, die zwei Ausgänge pro einzelne LUT mit der Implementierung von zwei Funktionsgeneratoren bereitstellen.
FPGA-Logikblock
Xilinx Virtex-5 ist das beliebteste FPGA, das eine mit MUX verbundene Nachschlagetabelle (LUT) und ein Flip-Flop wie oben beschrieben enthält. Das derzeitige FPGA besteht aus etwa Hunderten oder Tausenden konfigurierbarer Logikblöcke. Zur Konfiguration des FPGA werden die ISE-Software Modelsim und Xilinx zum Generieren einer Bitstream-Datei und zur Entwicklung verwendet.
Arten von FPGAs basierend auf Anwendungen
Feldprogrammierbare Gate-Arrays werden basierend auf Anwendungen wie Low-End-FPGAs, Mid-Range-FPGAs und High-End-FPGAs in drei Typen eingeteilt.
Arten von FPGAs
Low-End-FPGAs
Diese FPGA-Typen sind für einen geringen Stromverbrauch, eine geringe Logikdichte und eine geringe Komplexität pro Chip ausgelegt. Beispiele für Low-End-FPGAs sind die Cyclone-Familie von Altera, die Spartan-Familie von Xilinx, die Fusion-Familie von Microsemi und die Mach XO / ICE40 von Lattice Semiconductor.
Mid Range FPGAs
Diese Arten von FPGAs sind die optimale Lösung zwischen den Low-End- und High-End-FPGAs und werden als Gleichgewicht zwischen Leistung und Kosten entwickelt. Beispiele für FPGAs mit mittlerer Reichweite sind Arria von Altera, Artix-7 / Kintex-7 von Xlinix, IGL002 von Microsemi und ECP3- und ECP5-Serien von Lattice Semiconductor.
High-End-FPGAs
Diese FPGA-Typen wurden für Logikdichte und hohe Leistung entwickelt. Beispiele für High-End-FPGAs sind eine Stratix-Familie von Altera, eine Virtex-Familie von Xilinx, eine Speedster 22i-Familie von Achronix und eine ProASIC3-Familie von Microsemi.
Anwendungen von FPGA:
FPGAs haben in den letzten zehn Jahren ein schnelles Wachstum verzeichnet, da sie für eine Vielzahl von Anwendungen nützlich sind. Die spezifische Anwendung eines FPGA umfasst digitale Signalverarbeitung, Bioinformatik, Gerätesteuerungen, softwaredefiniertes Radio, Zufallslogik, ASIC-Prototyping, medizinische Bildgebung, Computerhardware-Emulation, Integration mehrerer SPLDs, Spracherkennung , Kryptographie, Filterung und Kommunikationscodierung und vieles mehr.
Normalerweise werden FPGAs für bestimmte vertikale Anwendungen aufbewahrt, bei denen das Produktionsvolumen gering ist. Für diese Anwendungen mit geringem Volumen zahlen die Top-Unternehmen Hardwarekosten pro Einheit. Die neue Leistungsdynamik und die neuen Kosten haben heute das Spektrum der realisierbaren Anwendungen erweitert.
Anwendungen von FPGA
Einige häufigere FPGA-Anwendungen sind: Luft- und Raumfahrt und Verteidigung, Medizinische Elektronik, ASIC-Prototyping, Audio, Automobil, Rundfunk, Unterhaltungselektronik, verteilte Währungssysteme, Rechenzentrum, Hochleistungsrechnen, Industrie, Medizin, Wissenschaftliche Instrumente, Sicherheitssysteme , Video- und Bildverarbeitung, Kabelkommunikation, Drahtlose Kommunikation .
FPGA-basierte Projektideen:
Hier finden Sie eine Liste von FPGA-basierten Projektideen zum Experimentieren mit Verilog HDL und VHDL für Ingenieurstudenten im letzten Jahr. Das Liste der Ideen für elektronische Projekte basierend auf FPGA ist unten angegeben:
FPGA-basierte Projektideen
- Sicherheitsanmeldesystem Basierend auf FPGA
- FPGA-basiertes digitales Hörgerät CHIP
- Eine FPGA-basierte Architektur zur Extraktion von Echtzeit-Bildmerkmalen
- FPGA-basiertes Design und Implementierung von MP4-Decodern
- FPGA-basiert Verkehrssignal-Kontrollsystem Design und Implementierung
- FPGA-basierte Hochfrequenzträgergenerierung für die Impulskomprimierung mithilfe des Cordic-Algorithmus
- Programmierbares Logikblockdesign und -synthese mit Makro-Gate und gemischter LUT
- Anwendungsspezifischer Befehlssatz Prozessorentwurf, Implementierung und Studie für eine bestimmte DSP-Aufgabe
- Entwurf und Implementierung der Synchronisationseinheit für den WCDMA-Uplink-Empfänger
- FPGA-Implementierung des FFT-Algorithmus für IEEE 802.16e (Mobile WiMAX)
- FPGA-basiertes Design von GPS (Global Possitioning System) -GSM (Global Systems for Mobiles) Mobiler Navigator
- Raumvektor PWM (Pulsweitenmodulation) für dreistufige Konverter: eine LabVIEW-Implementierung
- Design und Implementierung einer programmierbaren Multi-Prozessor-Plattform für die Hochleistungs-Embedded-Verarbeitung
- Erweiterung und Verbesserung der Hochleistungsprozessoroptimierung für FPGAs
- Feldorientierte Steuerungsentwicklung und -auswertung mit LabVIEW FPGA
- Direkte digitale Frequenzsynthese in FPGAs
- Entwurf und Programmierung einer Multi-Prozessor-Plattform für die Hochleistungs-Embedded-Verarbeitung
- Design und Integration der Weltraumforschung von feldprogrammierbaren Zählerarrays mit FPGA
- Eine FPGA-Implementierung des Icecube-Teleskops zur Neutrino-Spurerkennung
- Bildinterpolation der 3D-Anzeige in der Firmware
- Architektur und Implementierung des MIMO Sphere-Systems
- Superskalare energieeffiziente FFT-Architektur (Fast Fourier Transform)
- LFSR (Linear Feedback Shift Register) Leistungsoptimierung für BIST mit geringer Leistung
Nachdem Sie Ihre wertvolle Zeit mit diesem Artikel verbracht haben, glauben wir, dass Sie eine gute Vorstellung von der FPGA-Architektur und davon haben, das Projektthema Ihrer Wahl aus den FPGA-basierten Projektideen auszuwählen, und hoffen, dass Sie genug Vertrauen haben, um ein Thema aufzugreifen von der Liste. Für weitere Details und Hilfe zu diesen Projekten können Sie uns im Kommentarbereich unten schreiben.
Bildnachweis:
- Feldprogrammierbare Gate-Arrays von ruggedpcreview
- FPGA-basierte Projektideen von rtcmagazine