FPGA-arkkitehtuurin ja sovellusten perusteet

Kokeile Instrumenttia Ongelmien Poistamiseksi





Termi FPGA on lyhenne sanoista Field Programmable Gate Array ja se on yhden tyyppinen puolijohdelogiikan siru joka voidaan ohjelmoida muodostamaan melkein mikä tahansa järjestelmä tai digitaalinen piiri, samanlainen kuin PLD. PLDS on rajoitettu satoihin portteihin, mutta FPGA: t tukevat tuhansia portteja. FPGA-arkkitehtuurin kokoonpano määritetään yleensä kielellä, ts. HDL (Hardware Description language), joka on samanlainen kuin ASIC: lle (Application Specific Integrated Circuit) käytettävä kieli.

Kentällä ohjelmoitavat porttiryhmät

Kentällä ohjelmoitavat porttiryhmät



FPGA: t voivat tarjota useita etuja kiinteän toiminnon ASIC-tekniikkaan, kuten vakiosoluihin. Normaalisti ASIC-laitteiden valmistus kestää kuukausia, ja laitteen hankinta maksaa tuhansia dollareita. Mutta FPGA: t valmistetaan alle sekunnissa, kustannukset ovat muutamasta dollarista tuhanteen dollariin. FPGA: n joustavalla luonteella on merkittävä kustannusalue, virrankulutus ja viive. Verrattuna tavalliseen kennoon ASIC, FPGA vaatii 20-35 kertaa enemmän pinta-alaa, ja nopeuden suorituskyky on 3-4 kertaa hitaampi kuin ASIC. Tässä artikkelissa kuvataan FPGA-perusasiat ja FPGA-arkkitehtuurimoduuli, joka sisältää I / O-alustat, logiikkalohkot ja kytkinmatriisin. FPGA: t ovat joitain VLSI: n uusista trendialueista. Siksi näitä käytetään VLSI-pohjaiset projektit sähkötekniikan opiskelijoille .


FPGA-arkkitehtuuri

Yleinen FPGA-arkkitehtuuri koostuu kolmesta moduulityypistä. Ne ovat I / O-lohkoja tai tyynyjä, kytkinmatriisi- / yhdysjohtoja ja konfiguroitavia logiikkalohkoja (CLB). FPGA-perusarkkitehtuurissa on kaksiulotteisia logiikkalohkoja, joissa on välineet käyttäjälle järjestämään logiikkalohkojen välinen yhteys. FPGA-arkkitehtuurimoduulin toimintoja käsitellään alla:



  • CLB (Configurable Logic Block) sisältää digitaalisen logiikan, tulot, lähdöt. Se toteuttaa käyttäjän logiikan.
  • Yhteydet tarjoavat suunnan logiikkalohkojen välillä käyttäjän logiikan toteuttamiseksi.
  • Logiikkasta riippuen kytkinmatriisi tarjoaa vaihdon yhteenliittämisen välillä.
  • I / O-tyynyjä käytetään ulkomaailmaan kommunikoimaan eri sovellusten kanssa.
FPGA-arkkitehtuuri

FPGA-arkkitehtuuri

Logiikkalohko sisältää MUX (multiplekseri) , D kiikku ja LUT. LUT toteuttaa yhdistelmäloogiset toiminnot, joita MUX: ää käytetään valintalogiikkaan, ja D-kiikku tallentaa LUT: n lähdön

FPGA: n peruselementti on Look Up Table -pohjainen toimintageneraattori. LUT-tulojen määrä vaihtelee välillä 3,4,6 ja jopa 8 kokeiden jälkeen. Nyt meillä on adaptiiviset LUT: t, jotka tarjoavat kaksi lähtöä yhtä LUT: ta kohti kahden toimintogeneraattorin avulla.

FPGA-logiikkalohko

FPGA-logiikkalohko

Xilinx Virtex-5 on suosituin FPGA, joka sisältää MUX: iin liitetyn hakutaulukon (LUT) ja kiikun, kuten edellä on mainittu. Nykyinen FPGA koostuu noin sadoista tai tuhansista konfiguroitavista logiikkalohkoista. FPGA: n määritykseen käytetään Modelsim- ja Xilinx ISE -ohjelmistoja bittivirran luomiseen ja kehitykseen.


Sovelluksiin perustuvat FPGA-tyypit

Kentällä ohjelmoitavat porttiryhmät luokitellaan kolmeen tyyppiin sovellusten perusteella, kuten matalan tason FPGA, keskitason FPGA ja huippuluokan FPGA.

FPGA-tyypit

FPGA-tyypit

Low end FPGA: t

Tämäntyyppiset FPGA: t on suunniteltu pienelle virrankulutukselle, pienelle logiikkatiheydelle ja pienelle monimutkaisuudelle sirua kohden. Esimerkkejä matalan tason FPGA: ista ovat Cyclone-perhe Alterasta, Spartan-perhe Xilinxistä, fuusioperhe Microsemistä ja Mach XO / ICE40 Lattice-puolijohteesta.

Keskitason FPGA: t

Tämäntyyppiset FPGA: t ovat optimaalinen ratkaisu matalan ja huippuluokan FPGA: n välillä, ja ne kehitetään tasapainona suorituskyvyn ja kustannusten välillä. Esimerkkejä keskikokoisista FPGA: ista ovat Arria Alteralta, Artix-7 / Kintex-7 -sarja Xlinixiltä, ​​IGL002 Microsemiltä ja ECP3- ja ECP5-sarjat Lattice-puolijohteelta.

Huippuluokan FPGA: t

Tämäntyyppiset FPGA: t on kehitetty logiikkatiheyttä ja korkeaa suorituskykyä varten. Esimerkkejä huippuluokan FPGA: ista ovat Stratix-perhe Alterasta, Virtex-perhe Xilinxistä, Speedster 22i -perhe Achronixista ja ProASIC3-perhe Microsemistä.

FPGA: n sovellukset:

FPGA: t ovat kasvaneet nopeasti viime vuosikymmenen aikana, koska ne ovat hyödyllisiä monenlaisissa sovelluksissa. FPGA: n erityissovellukseen sisältyy digitaalinen signaalinkäsittely, bioinformatiikka, laiteohjaimet, ohjelmistopohjainen radio, satunnaislogiikka, ASIC-prototyypit, lääketieteellinen kuvantaminen, tietokonelaitteistojen emulointi, useiden SPLD: ien integrointi, äänentunnistus , salaus, suodatus ja viestinnän koodaus ja paljon muuta.

Yleensä FPGA: ita pidetään tietyissä vertikaalisissa sovelluksissa, joissa tuotantomäärä on pieni. Näistä pienistä volyymisovelluksista parhaat yritykset maksavat laitteistokustannukset yksikköä kohti. Nykyään uusi suorituskykydynamiikka ja kustannukset ovat laajentaneet käyttökelpoisten sovellusten valikoimaa.

FPGA: n sovellukset

FPGA: n sovellukset

Joitakin yleisempiä FPGA-sovelluksia ovat: Ilmailu ja puolustus, lääketieteellinen elektroniikka, ASIC-prototyypit, ääni, auto, lähetys, kulutuselektroniikka, hajautetut rahajärjestelmät, datakeskus, suurteholaskenta, teollisuus, lääketiede, tieteelliset instrumentit, Turvajärjestelmät , Video- ja kuvankäsittely, langallinen viestintä, Langaton tiedonsiirto .

FPGA-pohjaiset projektiideat:

Tässä on luettelo FPGA-pohjaisista projektiideoista Verilog HDL: n ja VHDL: n kokeilemiseksi viimeisen vuoden insinööriopiskelijoille. luettelo sähköisistä projektiideoista FPGA: n perusteella on annettu alla:

FPGA-pohjaiset projektiideat

FPGA-pohjaiset projektiideat

  1. FPGA-pohjainen sisäänkirjautumisen suojausjärjestelmä
  2. FPGA-pohjainen digitaalinen kuulolaitteen siru
  3. FPGA-pohjainen reaaliaikainen kuvaominaisuuksien purkuarkkitehtuuri
  4. Mp4-dekooderien FPGA-pohjainen suunnittelu ja toteutus
  5. FPGA-pohjainen Liikennevalojen hallintajärjestelmä Suunnittelu ja toteutus
  6. FPGA-pohjainen korkean taajuuden kantoaaltosignaali pulssikompressointiin johdinalgoritmia käyttäen
  7. Ohjelmoitava logiikkalohkon suunnittelu ja synteesi makroportin ja Mixed LUT: n kanssa
  8. Sovelluskohtaiset ohjeet Suorittimen suunnittelu, toteutus ja tutkimus tietylle DSP-tehtävälle
  9. Synkronointiyksikön suunnittelu ja toteutus WCDMA Uplink -vastaanottimelle
  10. FPGA: n FFT-algoritmin toteutus IEEE 802.16e: lle (mobiili WiMAX)
  11. FPGA-pohjainen suunnittelu GPS (maailmanlaajuinen paikannusjärjestelmä) -GSM (Global Systems for Mobiles) -mobiilinavigaattori
  12. Tilavektori PWM (pulssinleveyden modulointi) kolmitasoisille muuntimille: LabVIEW-toteutus
  13. Ohjelmoitavan moniprosessorialustan suunnittelu ja toteutus suuritehoiselle sulautetulle prosessoinnille
  14. Suorituskykyinen prosessorin optimoinnin laajennus ja parannus FPGA-tiedostoille
  15. Kenttäsuuntautunut ohjauksen kehittäminen ja arviointi LabVIEW FPGA: n avulla
  16. Suora digitaalitaajuussynteesi vuonna 2007 FPGA: t
  17. Suunnittele ja ohjelmoi moniprosessorinen alusta tehokkaaseen sulautettuun käsittelyyn
  18. Suunnittelu ja integrointi avaruuden tutkimiseen kenttäohjelmoitavissa olevista laskuriryhmistä FPGA: n avulla
  19. Icecube-teleskoopin FPGA-toteutus neutrino-radan havaitsemiseen
  20. 3D-näytön kuvien interpolointi laiteohjelmistossa
  21. MIMO Sphere -järjestelmän arkkitehtuuri ja toteutus
  22. Superskalaarinen tehokas FFT (nopea Fourier-muunnos) -arkkitehtuuri
  23. lineaarinen takaisinkytkentärekisteri (LFSR) Tehon optimointi pienitehoiselle BIST: lle

Kun olet viettänyt arvokasta aikaa tähän artikkeliin, uskomme, että sinulla on hyvä idea FPGA-arkkitehtuurista ja siitä, että valitset valitsemasi projektin aiheen FPGA-pohjaisten projektiideoiden joukosta, ja toivomme, että sinulla on tarpeeksi luottamusta minkä tahansa aiheen käsittelemiseen. luettelosta. Lisätietoja ja apua näistä projekteista voit kirjoittaa meille alla olevassa kommenttiosassa.

Valokuvahyvitykset: