Dom > Razstava > Vsebine

Polje s programirljivimi polji Oblikovanje in programiranje

Mar 11, 2019

Za definiranje obnašanja FPGA uporabnik zagotovi oblikovanje v jeziku opisa strojne opreme (HDL) ali kot shematično zasnovo. Oblika HDL je bolj primerna za delo z velikimi strukturami, ker je mogoče določiti visoko funkcionalno obnašanje, namesto da bi risali vsak kos ročno. Vendar pa lahko shematski vnos omogoči lažjo vizualizacijo modela in njegovih komponentnih modulov.


Z uporabo orodja za avtomatizacijo elektronskega oblikovanja se generira tehnološko preslikan seznam. Netlist se lahko nato prilagodi dejanski arhitekturi FPGA z uporabo procesa, imenovanega mesto-in-pot, ki ga ponavadi izvaja lastniška programska oprema podjetja FPGA. Uporabnik bo preverjal rezultate zemljevida, kraja in poti s časovno analizo, simulacijo in drugimi metodologijami preverjanja in potrjevanja. Ko je proces oblikovanja in validacije končan, se binarna datoteka, ki jo generira, običajno uporablja lastniška programska oprema prodajalca FPGA, uporablja za (ponovno) konfiguriranje FPGA. Ta datoteka se prenese v FPGA / CPLD prek serijskega vmesnika (JTAG) ali na zunanjo pomnilniško napravo, kot je EEPROM.


Najpogostejši HDL-ji so VHDL in Verilog ter razširitve, kot je SystemVerilog. V poskusu, da bi zmanjšali kompleksnost načrtovanja v HDL-jih, ki so bili primerjani z enakovrednimi montažnimi jeziki, se je treba z uvedbo alternativnih jezikov premakniti na raven abstrakcije. LabVIEW grafični programski jezik National Instruments (včasih imenovan tudi »G«) ima modul FPGA, ki je na voljo za ciljno in programsko strojno opremo FPGA.


Za poenostavitev načrtovanja kompleksnih sistemov v FPGA, obstajajo knjižnice vnaprej določenih kompleksnih funkcij in vezij, ki so bile preizkušene in optimizirane za pospešitev procesa načrtovanja. Ta vnaprej določena vezja se običajno imenujejo jedra intelektualne lastnine (IP) in so na voljo pri prodajalcih FPGA in dobaviteljih IP tretjih oseb. Redko so brezplačni in se običajno izdajajo pod lastniškimi licencami. Druge vnaprej določene kroge so na voljo od skupnosti razvijalcev, kot je OpenCores (običajno so izdane v okviru brezplačnih in odprtokodnih licenc, kot sta GPL, BSD ali podobno licenco) in drugih virov. Taki modeli so znani kot "odprtokodna strojna oprema".


V tipičnem oblikovalskem toku bo razvijalec aplikacij FPGA simuliral načrtovanje v več fazah v celotnem procesu načrtovanja. Sprva RTL opis v VHDL ali Verilog je simuliran z ustvarjanjem testne klopi za simulacijo sistema in opazovanje rezultatov. Potem, ko je sintezni motor preslikal obliko na netlist, je netlist preveden v opis na ravni vrat, kjer se simulacija ponovi in potrdi, da je sinteza potekala brez napak. Končno je zasnova oblikovana v FPGA, pri kateri se lahko dodajo zamude pri širjenju in simulacija ponovno teče s temi vrednostmi nazaj na seznam.


V zadnjem času programerji uporabljajo OpenCL (Open Computing Language), da izkoristijo učinkovitost in učinkovitost moči, ki jih nudijo FPGA. OpenCL omogoča programerjem, da razvijejo kodo v programskem jeziku C in ciljne funkcije FPGA kot jedra OpenCL z uporabo konstrukcij OpenCL. Za nadaljnje informacije glejte sintezo na visoki ravni in C do HDL.