FPGA arhitektūras un lietojumu pamati

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Termins FPGA apzīmē lauka programmējamo vārtu masīvu un tas ir viena veida pusvadītāju loģiskā mikroshēma kuru var ieprogrammēt kā gandrīz jebkura veida sistēmu vai digitālo shēmu, līdzīgu PLD. PLDS ir ierobežots līdz simtiem vārtu, bet FPGA atbalsta tūkstošiem vārtu. FPGA arhitektūras konfigurācija parasti tiek noteikta, izmantojot valodu, t.i., HDL (Hardware Description Language), kas ir līdzīga tai, ko lieto ASIC (lietojumprogrammas integrētajai shēmai).

Lauka programmējamie vārtu bloki

Lauka programmējamie vārtu bloki



FPGA var sniegt vairākas priekšrocības salīdzinājumā ar fiksētas funkcijas ASIC tehnoloģiju, piemēram, standarta šūnām. Parasti ASIC ražošana prasa mēnešus, un ierīces iegāde būs tūkstošiem dolāru. Bet FPGA tiek izgatavoti mazāk nekā sekundē, izmaksas būs no dažiem dolāriem līdz tūkstoš dolāriem. FPGA elastīgajam raksturam ir ievērojama izmaksu zona, enerģijas patēriņš un kavēšanās. Salīdzinot ar standarta šūnu ASIC, FPGA nepieciešams 20 līdz 35 reizes lielāks laukums, un ātruma veiktspēja būs 3-4 reizes lēnāka nekā ASIC. Šajā rakstā ir aprakstīti FPGA pamati un FPGA arhitektūras modulis, kas ietver I / O spilventiņu, loģiskos blokus un slēdžu matricu. FPGA ir daži no jaunajiem VLSI tendenču apgabaliem. Tādēļ tos izmanto VLSI balstīti projekti elektronisko inženieru studentiem .


FPGA arhitektūra

Vispārējā FPGA arhitektūra sastāv no trīs veidu moduļiem. Tie ir I / O bloki vai spilventiņi, komutācijas matricas / starpsavienojuma vadi un konfigurējami loģiskie bloki (CLB). FPGA pamata arhitektūrai ir divi dimensiju loģisko bloku bloki ar līdzekļiem, lai lietotājs varētu sakārtot savienojumu starp loģiskajiem blokiem. FPGA arhitektūras moduļa funkcijas ir apspriestas tālāk:



  • CLB (konfigurējams loģiskais bloks) ietver digitālo loģiku, ieejas, izejas. Tas ievieš lietotāja loģiku.
  • Starpsavienojumi nodrošina virzienu starp loģikas blokiem, lai ieviestu lietotāja loģiku.
  • Atkarībā no loģikas, slēdža matrica nodrošina pārslēgšanos starp savienojumiem.
  • I / O spilventiņi, ko izmanto ārpasaulei, lai sazinātos ar dažādām lietojumprogrammām.
FPGA arhitektūra

FPGA arhitektūra

Loģikas bloks satur MUX (multipleksors) , D flip flop un LUT. LUT īsteno kombinētās loģiskās funkcijas, kuras atlases loģikai izmanto MUX, un D flip flop glabā LUT izvadi

FPGA pamatelements ir funkciju ģenerators uzmeklēšanas tabulā. Ieeju skaits LUT svārstās no 3,4,6 un pat 8 pēc eksperimentiem. Tagad mums ir adaptīvi LUT, kas nodrošina divus izvadus uz vienu LUT, ieviešot divus funkciju ģeneratorus.

FPGA loģiskais bloks

FPGA loģiskais bloks

Xilinx Virtex-5 ir vispopulārākā FPGA, kas satur uzmeklēšanas tabulu (LUT), kas ir savienota ar MUX, un flip flop, kā tika apspriests iepriekš. Pašreizējā FPGA sastāv no simtiem vai tūkstošiem konfigurējamu loģisko bloku. Lai konfigurētu FPGA, bitu plūsmas faila ģenerēšanai un izstrādei tiek izmantotas programmatūras Modelsim un Xilinx.


FPGA veidi, pamatojoties uz lietojumprogrammām

Laukā programmējamie vārtu bloki tiek klasificēti trīs tipos, pamatojoties uz lietojumprogrammām, piemēram, zemas klases FPGA, vidēja līmeņa FPGA un augstas klases FPGA.

FPGA veidi

FPGA veidi

Zema līmeņa FPGA

Šie FPGA veidi ir paredzēti zemam enerģijas patēriņam, zemam loģiskam blīvumam un zemai sarežģītībai vienā mikroshēmā. Zemu FPGA piemēri ir Cyclone ģimene no Altera, Spartan ģimene no Xilinx, kodolsintēzes ģimene no Microsemi un Mach XO / ICE40 no Lattice pusvadītāja.

Vidēja līmeņa FPGA

Šie FPGA veidi ir optimāls risinājums starp zemas un augstākās klases FPGA, un tie tiek izstrādāti kā līdzsvars starp veiktspēju un izmaksām. Vidēja diapazona FPGA piemēri ir Arria no Altera, Artix-7 / Kintex-7 sērija no Xlinix, IGL002 no Microsemi un ECP3 un ECP5 sērija no Lattice pusvadītāja.

Augstas klases FPGA

Šāda veida FPGA ir izstrādāti loģiskā blīvuma un augstas veiktspējas nodrošināšanai. Augstas klases FPGA piemēri ir Stratix ģimene no Altera, Virtex ģimene no Xilinx, Speedster 22i ģimene no Achronix un ProASIC3 ģimene no Microsemi.

FPGA pielietojums:

Pēdējās desmitgades laikā FPGA ir strauji auguši, jo tie ir noderīgi plašam lietojumu lokam. Īpaša FPGA pielietošana ietver digitālo signālu apstrādi, bioinformātiku, ierīču kontrolierus, programmatūras definētu radio, nejaušo loģiku, ASIC prototipus, medicīnisko attēlveidošanu, datortehnikas emulāciju, vairāku SPLD integrēšanu, balss atpazīšana , kriptogrāfija, filtrēšana un sakaru kodēšana un daudz kas cits.

Parasti FPGA tiek glabāti noteiktiem vertikāliem lietojumiem, kur ražošanas apjoms ir mazs. Par šīm maza apjoma lietojumprogrammām labākie uzņēmumi maksā aparatūras izmaksas par vienību. Mūsdienās jaunā veiktspējas dinamika un izmaksas ir paplašinājušas dzīvotspējīgu lietojumu loku.

FPGA pielietojums

FPGA pielietojums

Dažas izplatītākas FPGA lietojumprogrammas ir: Aviācija un aizsardzība, Medicīnas elektronika, ASIC prototipēšana, Audio, Automobiļi, Apraide, Patērētāju elektronika, Izplatītās monetārās sistēmas, Datu centrs, Augstas veiktspējas skaitļošana, Rūpniecības, Medicīnas, Zinātniskie instrumenti, Drošības sistēmas , Video un attēlu apstrāde, vadu sakari, Bezvadu sakari .

FPGA projektu idejas:

Šeit ir saraksts ar FPGA balstītām projektu idejām eksperimentēšanai ar Verilog HDL un VHDL pēdējā kursa inženierzinātņu studentiem. The elektronisko projektu ideju saraksts pamatojoties uz FPGA, ir sniegts zemāk:

FPGA balstītas projektu idejas

FPGA balstītas projektu idejas

  1. Drošības pieteikšanās sistēma, kuras pamatā ir FPGA
  2. FPGA bāzes digitālais dzirdes palīgs CHIP
  3. FPGA bāzes reāllaika attēlu funkciju iegūšanas arhitektūra
  4. Uz FPGA balstīta Mp4 dekoderu projektēšana un ieviešana
  5. FPGA pamatā Satiksmes signāla vadības sistēma Projektēšana un ieviešana
  6. FPGA bāzes augstas frekvences nesēju ģenerēšana impulsu saspiešanai, izmantojot kordisko algoritmu
  7. Programmējams loģisko bloku dizains un sintēze ar makro vārtiem un jauktu LUT
  8. Lietojumprogrammas instrukciju kopu procesora projektēšana, ieviešana un izpēte konkrētam DSP uzdevumam
  9. Sinhronizācijas vienības projektēšana un ieviešana WCDMA augšupielādes uztvērējam
  10. FPGA FFT algoritma ieviešana IEEE 802.16e (mobilajam WiMAX)
  11. FPGA bāzes projektēšana GPS (globālā izvietošanas sistēma) -GSM (globālās mobilo sakaru sistēmas) mobilais navigators
  12. Kosmosa vektors PWM (impulsa platuma modulācija) trīs līmeņu pārveidotājiem: LabVIEW ieviešana
  13. Programmējama daudzprocesora platformas projektēšana un ieviešana augstas veiktspējas iegultai apstrādei
  14. Augstas veiktspējas procesora optimizācijas paplašināšana un uzlabošana FPGA
  15. Uz lauka orientētas vadības izstrāde un novērtēšana, izmantojot LabVIEW FPGA
  16. Tiešā digitālās frekvences sintēze 2007 FPGA
  17. Dizaina un programmas daudzprocesoru platforma augstas veiktspējas iegultai apstrādei
  18. Lauka programmējamo skaitītāju bloku kosmosa izpētes projektēšana un integrēšana, izmantojot FPGA
  19. Icecube teleskopa FPGA ieviešana neitrīno sliežu noteikšanai
  20. 3D displeja attēlu interpolācija programmaparatūrā
  21. MIMO Sphere sistēmas arhitektūra un ieviešana
  22. Superskalāra energoefektīva FFT (ātras Furjē transformācijas) arhitektūra
  23. lineārās atgriezeniskās saites nobīdes reģistra (LFSR) jaudas optimizācija mazjaudas BIST

Pavadījis dārgo laiku šim rakstam, mēs uzskatām, ka jums ir laba ideja par FPGA arhitektūru un par to, kā atlasīt izvēlēto projekta tēmu no FPGA balstītajām projektu idejām, un ceram, ka jums ir pietiekami daudz pārliecības, lai uzņemtos jebkuru tēmu no saraksta. Lai iegūtu sīkāku informāciju un palīdzību par šiem projektiem, varat rakstīt mums komentāru sadaļā zemāk.

Foto kredīti: