FPGA arhitektuuri ja rakenduste alused

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Termin FPGA tähistab välja programmeeritavaid väravate massiive ja see on ühte tüüpi pooljuht-loogikakiip mille saab programmeerida muutuma peaaegu igaks süsteemiks või digitaalseks vooluringiks, mis sarnaneb PLD-dega. PLDS on piiratud sadade väravatega, kuid FPGA toetab tuhandeid väravaid. FPGA arhitektuuri konfiguratsioon määratakse üldjuhul keeles, st HDL (riistvara kirjeldamise keel), mis on sarnane ASIC-i (rakendusspetsiifiline integreeritud vooluahel) jaoks kasutatava keelega.

Välja programmeeritavad väravate massiivid

Välja programmeeritavad väravate massiivid



FPGA-d võivad pakkuda mitmeid eeliseid fikseeritud funktsiooniga ASIC-tehnoloogiaga, näiteks standardsete rakkudega. Tavaliselt võtab ASIC-de tootmine mitu kuud ja nende maksumus on seadme hankimiseks tuhandeid dollareid. Kuid FPGA-d valmistatakse vähem kui sekundiga, kulud on mõnest dollarist tuhandeni. FPGA paindlik olemus on märkimisväärne kulupindala, energiatarve ja viivitus. Võrreldes tavalise raku ASIC-iga, FPGA jaoks on vaja 20 kuni 35 korda rohkem pinda ja kiirus on 3–4 korda aeglasem kui ASIC. Selles artiklis kirjeldatakse FPGA põhitõdesid ja FPGA arhitektuurimoodulit, mis sisaldab sisend- / väljundplokki, loogikaplokke ja lülitusmaatriksit. FPGA-d on mõned VLSI uutest trendivaldkondadest. Seetõttu kasutatakse neid VLSI-põhised projektid elektroonikatehnika üliõpilastele .


FPGA arhitektuur

FPGA üldine arhitektuur koosneb kolme tüüpi moodulitest. Need on sisend- / väljundplokid või padjad, maatriks- / ühendustraadid ja konfigureeritavad loogikaplokid (CLB). Põhilisel FPGA arhitektuuril on kahemõõtmelised loogikaplokkide massiivid, mis võimaldavad kasutajal korraldada loogikaplokkide vahelist ühendust. FPGA arhitektuurimooduli funktsioone käsitletakse allpool:



  • CLB (Configurable Logic Block) sisaldab digitaalset loogikat, sisendeid, väljundeid. See rakendab kasutaja loogikat.
  • Vastastikused ühendused annavad loogikaplokite vahel suuna kasutaja loogika rakendamiseks.
  • Sõltuvalt loogikast võimaldab lülitusmaatriks vahetada ühenduste vahel.
  • I / O padjad, mida kasutatakse välismaailmas erinevate rakendustega suhtlemiseks.
FPGA arhitektuur

FPGA arhitektuur

Loogikaplokk sisaldab MUX (multiplekser) , D flip flop ja LUT. LUT rakendab kombineeritud loogilisi funktsioone, mida MUX-i kasutatakse valikuloogika jaoks, ja D-flip flop salvestab LUT-i väljundi

FPGA põhielement on otsingu tabeli põhine funktsioonigeneraator. LUT-i sisendite arv varieerub vahemikus 3,4,6 ja isegi 8 pärast katseid. Nüüd on meil kohanemisvõimelised LUT-id, mis pakuvad kaks väljundit ühe LUT-i kohta koos kahe funktsioonigeneraatori rakendamisega.

FPGA loogikaplokk

FPGA loogikaplokk

Xilinx Virtex-5 on kõige populaarsem FPGA, mis sisaldab MUX-iga ühendatud otsitabelit (LUT) ja ülalpool käsitletud klappi. Praegune FPGA koosneb umbes sadadest või tuhandetest seadistatavatest loogikaplokkidest. FPGA konfigureerimiseks kasutatakse bitivoo faili loomiseks ja arendamiseks Modelsimi ja Xilinxi tarkvarasid.


Rakendustel põhinevad FPGA-de tüübid

Kohapeal programmeeritavad värvisüsteemid liigitatakse kolme tüüpi, lähtudes rakendustest, näiteks madalama klassi FPGA-d, keskklassi FPGA-d ja kõrgema klassi FPGA-d.

FPGA tüübid

FPGA tüübid

Madalad FPGA-d

Seda tüüpi FPGA-d on mõeldud väikese energiatarbimise, väikese loogikatiheduse ja väikese keerukuse jaoks ühe kiibi kohta. Madalama klassi FPGA-de näited on tsüklonite perekond Alterast, Spartani perekond Xilinxist, fusiooniperekond Microsemilt ja Mach XO / ICE40 Lattice pooljuhist.

Keskmine FPGA

Seda tüüpi FPGA-d on optimaalne lahendus madalama ja kõrgema klassi FPGA-de vahel ning need töötatakse välja tasakaalu jõudluse ja maksumuse vahel. Keskmise vahemikuga FPGA-de näited on Arria Alteralt, Artix-7 / Kintex-7 seeria Xlinixilt, IGL002 Microsemilt ning ECP3 ja ECP5 seeria Lattice pooljuhilt.

Kõrgekvaliteedilised FPGA-d

Seda tüüpi FPGA-d on välja töötatud loogika tiheduse ja suure jõudluse tagamiseks. Kõrgkvaliteetsete FPGA-de näited on Stratixi perekond Alterast, Virtexi perekond Xilinxist, Speedster 22i perekond Achronixist ja ProASIC3 perekond Microsemist.

FPGA rakendused:

FPGA-d on viimase kümne aasta jooksul kiiresti kasvanud, kuna need on kasulikud paljude rakenduste jaoks. FPGA spetsiifiline rakendus hõlmab digitaalset signaalitöötlust, bioinformaatikat, seadmete kontrollereid, tarkvara määratletud raadiot, juhusloogikat, ASIC-i prototüüpimist, meditsiinilist pildistamist, arvutiriistvara emuleerimist, mitme SPLD integreerimist, hääletuvastus , krüptograafia, filtreerimine ja sidekodeerimine ning palju muud.

Tavaliselt hoitakse FPGA-sid teatud vertikaalsete rakenduste jaoks, kus tootmismaht on väike. Nende väikese mahuga rakenduste eest maksavad tipptasemel ettevõtted riistvarakulusid ühiku eest. Tänaseks on uus jõudlusdünaamika ja maksumus laiendanud elujõuliste rakenduste valikut.

FPGA rakendused

FPGA rakendused

Mõned levinumad FPGA rakendused on: lennundus ja riigikaitse, meditsiinielektroonika, ASIC-i prototüübid, heli, autotööstus, ringhääling, olmeelektroonika, hajutatud rahasüsteemid, andmekeskus, suure jõudlusega andmetöötlus, tööstus-, meditsiini-, teadusinstrumendid, Turvasüsteemid , Video- ja pilditöötlus, juhtmega side, Traadita side .

FPGA-põhised projektiideed:

Siin on loetelu FPGA-põhistest projektiideedest Verilog HDL-i ja VHDL-iga katsetamiseks inseneride üliõpilastele. The elektrooniliste projektide ideede loend põhineb FPGA-l:

FPGA-põhised projektiideed

FPGA-põhised projektiideed

  1. Turvalisuse sisselogimissüsteem põhineb FPGA-l
  2. FPGA-põhine digitaalne kuulmisabivahendite kiip
  3. FPGA-põhine reaalajas pildifunktsioonide eraldamise arhitektuur
  4. Mp4 dekoodrite FPGA-põhine disain ja juurutamine
  5. FPGA põhine Liiklussignaali juhtimissüsteem Kujundus ja rakendamine
  6. FPGA-põhine kõrgsageduslike kandjate genereerimine pulsikompressiooniks, kasutades nööralgoritmi
  7. Programmeeritav loogikaploki kujundus ja süntees koos makrovärava ja segatud LUT-ga
  8. Rakendusspetsiifiliste juhiste komplekti protsessori kavandamine, rakendamine ja uuring konkreetse DSP-ülesande jaoks
  9. WCDMA üleslingi vastuvõtja sünkroonimisüksuse kujundamine ja juurutamine
  10. FPGA FFT algoritmi rakendamine IEEE 802.16e jaoks (mobiilne WiMAX)
  11. FPGA - põhine projekteerimine GPS (globaalne positsioneerimissüsteem) -GSM (globaalsed süsteemid mobiilidele) mobiilne navigaator
  12. Kosmosevektor PWM (impulsi laiuse modulatsioon) kolmetasandiliste muundurite jaoks: LabVIEW juurutamine
  13. Programmeeritava mitme protsessori platvormi kujundamine ja juurutamine suure jõudlusega manustatud töötlemiseks
  14. Suure jõudlusega protsessori optimeerimise laiendamine ja täiustamine FPGA-de jaoks
  15. Valdkonnale suunatud juhtimise arendamine ja hindamine LabVIEW FPGA abil
  16. Otsene digitaalsageduse süntees aastal FPGA-d
  17. Kujundage ja programmeerige mitme protsessoriga platvorm suure jõudlusega manustatud töötlemiseks
  18. Välja programmeeritavate loendurite massiivi uurimine ja integreerimine FPGA abil
  19. Icecube'i teleskoobi FPGA-rakendus neutrino raja tuvastamiseks
  20. 3D-pildi interpoleerimine püsivaras
  21. MIMO sfäärisüsteemi arhitektuur ja juurutamine
  22. Superskalaarne energiatõhus FFT (Fast Fourier Transform) arhitektuur
  23. lineaarse tagasiside nihkeregister (LFSR) Võimsuse optimeerimine väikese võimsusega BIST jaoks

Pärast selle artikli kallihinnalise aja veetmist arvame, et teil on hea ettekujutus FPGA arhitektuurist ja FPGA-põhiste projektiideede hulgast valitud projekti teema valimine ja loodame, et teil on piisavalt enesekindlust mis tahes teema käsitlemiseks loendist. Nende projektide kohta lisateabe saamiseks ja abi saamiseks võite meile kirjutada allpool toodud kommentaaride jaotises.

Foto autorid: