Podstawy architektury i aplikacji FPGA

Podstawy architektury i aplikacji FPGA

Termin FPGA oznacza macierz bramek programowalnych przez użytkownika i jest to jeden typ półprzewodnikowy układ logiczny który można zaprogramować tak, aby stał się niemal dowolnym systemem lub obwodem cyfrowym, podobnie jak PLD. PLDS są ograniczone do setek bramek, ale FPGA obsługują tysiące bramek. Konfiguracja architektury FPGA jest ogólnie określana za pomocą języka, tj. HDL (język opisu sprzętu), który jest podobny do używanego w ASIC (układ scalony specyficzny dla aplikacji).



Tablice bramek programowalne przez użytkownika

Tablice bramek programowalne przez użytkownika

Układy FPGA mogą zapewnić szereg zalet w porównaniu z technologią ASIC o stałej funkcji, taką jak standardowe komórki. Zwykle produkcja układów ASIC trwa miesiące, a ich zakup będzie kosztował tysiące dolarów. Ale FPGA są wytwarzane w mniej niż sekundę, koszt będzie wynosić od kilku do tysiąca dolarów Elastyczny charakter FPGA wiąże się ze znacznym kosztem, zużyciem energii i opóźnieniem. FPGA wymaga od 20 do 35 razy więcej obszaru, a prędkość będzie 3 do 4 razy wolniejsza niż ASIC. W tym artykule opisano podstawy procesora FPGA i moduł architektury FPGA, który zawiera pad we / wy, bloki logiczne i macierz przełączników. FPGA to tylko niektóre z nowych trendów w VLSI. Dlatego są one używane w Projekty oparte na VLSI dla studentów inżynierii elektronicznej .






Architektura FPGA

Ogólna architektura FPGA składa się z trzech typów modułów. Są to bloki we / wy lub podkładki, macierze przełączników / przewody połączeniowe i konfigurowalne bloki logiczne (CLB). Podstawowa architektura FPGA ma dwuwymiarowe tablice bloków logicznych ze środkami umożliwiającymi użytkownikowi zorganizowanie wzajemnych połączeń między blokami logicznymi. Funkcje modułu architektury FPGA omówiono poniżej:

  • CLB (Configurable Logic Block) zawiera logikę cyfrową, wejścia, wyjścia. Realizuje logikę użytkownika.
  • Połączenia zapewniają kierunek między blokami logicznymi w celu implementacji logiki użytkownika.
  • W zależności od logiki macierz przełączników zapewnia przełączanie między połączeniami.
  • Płytki I / O używane w świecie zewnętrznym do komunikacji z różnymi aplikacjami.
Architektura FPGA

Architektura FPGA



Blok logiczny zawiera MUX (multiplekser) , D flip flop i LUT. LUT implementuje kombinacyjne funkcje logiczne, MUX jest używany do logiki wyboru, a przerzutnik D przechowuje dane wyjściowe LUT

Podstawowym blokiem konstrukcyjnym FPGA jest generator funkcji oparty na tabeli przeglądowej. Liczba wejść do LUT waha się od 3, 4, 6, a nawet 8 po eksperymentach. Teraz mamy adaptacyjne LUT, które zapewniają dwa wyjścia na pojedynczą LUT z implementacją dwóch generatorów funkcji.

Blok logiczny FPGA

Blok logiczny FPGA

Xilinx Virtex-5 to najpopularniejszy FPGA, który zawiera tablicę przeglądową (LUT) połączoną z MUX oraz przerzutnik, jak omówiono powyżej. Obecny układ FPGA składa się z około setek lub tysięcy konfigurowalnych bloków logicznych. Do konfiguracji FPGA, oprogramowanie Modelsim i Xilinx ISE jest używane do generowania pliku strumienia bitów i do programowania.


Typy układów FPGA w zależności od aplikacji

Macierze bramek programowalne przez użytkownika są podzielone na trzy typy w oparciu o zastosowania, takie jak niskobudżetowe układy FPGA, średniej klasy układy FPGA i wysokiej klasy układy FPGA.

Rodzaje układów FPGA

Rodzaje układów FPGA

Niskie układy FPGA

Te typy układów FPGA są zaprojektowane z myślą o niskim zużyciu energii, małej gęstości logicznej i małej złożoności na jeden układ. Przykładami niskobudżetowych układów FPGA są rodzina Cyclone z Altera, rodzina Spartan z Xilinx, rodzina fusion z Microsemi i Mach XO / ICE40 z Lattice semiconductor.

FPGA średniej klasy

Te typy układów FPGA są optymalnym rozwiązaniem między układami FPGA niższej i wyższej klasy i opracowano je jako równowagę między wydajnością a kosztem. Przykłady układów FPGA średniego zasięgu to Arria firmy Altera, seria Artix-7 / Kintex-7 firmy Xlinix, IGL002 firmy Microsemi oraz seria ECP3 i ECP5 firmy Lattice semiconductor.

Wysokiej klasy układy FPGA

Te typy układów FPGA zostały opracowane z myślą o gęstości logicznej i wysokiej wydajności. Przykładami high-endowych układów FPGA są rodzina Stratix firmy Altera, rodzina Virtex firmy Xilinx, rodzina Speedster 22i firmy Achronix i rodzina ProASIC3 firmy Microsemi.

Zastosowania FPGA:

FPGA zyskały szybki wzrost w ciągu ostatniej dekady, ponieważ są przydatne w szerokim zakresie zastosowań. Specyficzne zastosowanie FPGA obejmuje cyfrowe przetwarzanie sygnału, bioinformatykę, kontrolery urządzeń, programowalne radio, logikę losową, prototypowanie ASIC, obrazowanie medyczne, emulację sprzętu komputerowego, integrację wielu SPLD, rozpoznawanie głosu , kryptografia, filtrowanie i kodowanie komunikacji i wiele innych.

Zwykle układy FPGA są przechowywane dla określonych zastosowań pionowych, w których wielkość produkcji jest niewielka. W przypadku tych zastosowań o małej objętości największe firmy płacą koszty sprzętu na jednostkę. Obecnie nowa dynamika wydajności i koszty poszerzyły zakres wykonalnych zastosowań.

Zastosowania FPGA

Zastosowania FPGA

Niektóre bardziej powszechne zastosowania FPGA to: lotnictwo i obrona, elektronika medyczna, prototypowanie ASIC, audio, motoryzacja, transmisja, elektronika użytkowa, rozproszone systemy monetarne, centra danych, wysokowydajne komputery, przemysłowe, medyczne, przyrządy naukowe, Systemy ochrony , Przetwarzanie wideo i obrazu, Komunikacja przewodowa, Komunikacja bezprzewodowa .

Pomysły na projekty oparte na FPGA:

Oto lista pomysłów na projekty oparte na FPGA do eksperymentowania z Verilog HDL i VHDL dla studentów ostatniego roku inżynierii. Plik lista pomysłów na projekty elektroniczne na podstawie FPGA podano poniżej:

Pomysły na projekty oparte na FPGA

Pomysły na projekty oparte na FPGA

  1. System logowania bezpieczeństwa oparty na FPGA
  2. Układ cyfrowego aparatu słuchowego oparty na FPGA
  3. Architektura ekstrakcji funkcji obrazu w czasie rzeczywistym oparta na FPGA
  4. Projektowanie i wdrażanie dekoderów MP4 w oparciu o układ FPGA
  5. Oparte na FPGA System sterowania sygnalizacją ruchu Projektowanie i wdrażanie
  6. Generowanie nośnej o wysokiej częstotliwości w oparciu o układ FPGA do kompresji impulsów z wykorzystaniem algorytmu przewodowego
  7. Programowalny projekt i synteza bloków logicznych z bramką makro i mieszaną tablicą LUT
  8. Zestaw instrukcji dla aplikacji Projektowanie, wdrażanie i badanie procesora dla określonego zadania DSP
  9. Projekt i implementacja jednostki synchronizacji dla odbiornika łącza w górę WCDMA
  10. Implementacja algorytmu FPGA dla IEEE 802.16e (Mobile WiMAX)
  11. Projektowanie oparte na FPGA GPS (Global Possitioning System) -GSM (Global Systems for Mobile) Mobile Navigator
  12. Wektor przestrzeni PWM (modulacja szerokości impulsu) dla konwerterów trójpoziomowych: implementacja LabVIEW
  13. Zaprojektowanie i wdrożenie programowalnej platformy wieloprocesorowej do wysokowydajnego przetwarzania wbudowanego
  14. Rozszerzenie i ulepszenie optymalizacji procesora o wysokiej wydajności dla układów FPGA
  15. Opracowywanie i ocena sterowania zorientowanego na pole przy użyciu LabVIEW FPGA
  16. Bezpośrednia cyfrowa synteza częstotliwości w formacie FPGA
  17. Zaprojektuj i zaprogramuj platformę wieloprocesorową do wysokowydajnego przetwarzania wbudowanego
  18. Projektowanie i integracja eksploracji przestrzeni kosmicznej tablic liczników programowalnych w terenie przy użyciu FPGA
  19. Implementacja FPGA teleskopu Icecube do wykrywania śladów neutrin
  20. Interpolacja obrazu wyświetlania 3D w oprogramowaniu sprzętowym
  21. Architektura i implementacja systemu MIMO Sphere
  22. Superskalarna energooszczędna architektura FFT (szybka transformacja Fouriera)
  23. liniowy rejestr przesunięcia sprzężenia zwrotnego (LFSR) Optymalizacja mocy dla BIST małej mocy

Po spędzeniu cennego czasu nad tym artykułem uważamy, że masz dobre pojęcie o architekturze FPGA i O wyborze tematu projektu do wyboru spośród pomysłów projektowych opartych na FPGA i mamy nadzieję, że masz wystarczającą pewność siebie, aby podjąć każdy temat z listy. Aby uzyskać dalsze informacje i pomoc dotyczącą tych projektów, możesz napisać do nas w sekcji komentarzy podanej poniżej.

Kredyty fotograficzne: