FPGA for nybegynnere, våre tips for førstegangsbrukere

FPGA-markedet er ekstremt komplekst, men for å lære Verilog eller VHDL er det ikke nødvendig å bruke en kompleks FPGA med hundretusener av logiske porter, og til en virkelig høy pris er det verdt det med en veldig enkel. Det er grunnen til at hvis du er nybegynner, skal vi gi deg en rekke tips når du velger din første FPGA

En måte å lære noe på er å utvikle noe, noe FPGA-er tillater oss takket være bruken av maskinvarebeskrivelsesspråk, som gjør det mulig for en C-lignende syntaks å beskrive hver eneste av de logiske delene av den. FPGA-er, i motsetning til mikrokontrollere, kjører ikke programvare, men oppfører seg som maskinvaren selv.

FPGA for nybegynnere

Fordelene med FPGAer

FPGA-4

En av fordelene som FPGA har sammenlignet med mikrokontrollere, er deres enorme kraft og allsidighet sammenlignet med mikrokontrollere. Med en FPGA kan vi ha et stykke maskinvare som vi trenger helt fra spesifikasjonen, siden vi får FPGA til å oppføre seg bokstavelig som det stykket, kan vi til og med få det til å oppføre seg som flere forskjellige brikker samtidig.

Men for å programmere dem er det nødvendig å kjenne et maskinvarebeskrivelsesspråk som Verilog og / eller VHDL, som ikke kan læres hvis vi ikke har en støtteplattform og en FPGA som lar oss teste koden når vi lærer å håndtere denne maskinvaren. beskrivelsesspråk.

FPGA er knyttet til produsenten

FPGA

Du har bestemt deg for å lære VHDL eller Verilog, for dette har du en bok med mange eksempler å lære. Der de anbefaler en bestemt modell, og vår anbefaling er at du tar hensyn til brevet.

Årsaken til dette er at disse undervisningsbøkene har testet koden med en bestemt modell og ikke garanterer at den vil fungere med en FPGA fra et annet merke, og i noen øvelser bruker de eksklusive elementer fra brettet.

Dette betyr at hvis du for eksempel velger en modell fra Altera, Xilinx eller et annet merke, vil du bli fanget for livet i deres utviklingsverktøy og policyer, siden en del av forretningsmodellen deres kommer fra salg av utviklingsverktøy. .

Hvor ligger problemet? Når kode skrives på et maskinvarebeskrivelsesspråk, blir den "kompilert" til et bestemt format, som er forskjellig for hver produsent. Hva er årsaken til at verktøyene ender med en produsent av FPGAer i

SoC FPGA eller FPGA rett og slett?

FPGA SoC Novato

Nei, vi skal ikke sammenligne dem, men vi må huske på at det er mange FPGA-er som ikke kommer alene, men som inneholder en SoC, samme type som de vi har i smarttelefoner, som samhandler med FPGA.

Det andre og billigere alternativet er å velge et brett som bare bærer FPGA og ikke SoC. I det første tilfellet er det ideelt å lære mulighetene mellom komponentene i en SoC og FPGA i kombinasjon. Men hvis du ønsker å lære å programmere en FPGA uten andre greier, kan det hende du er interessert i et brett som bare er et FPGA.

Vår anbefaling er at du går for den andre typen, spesielt siden dette vil tillate deg å samhandle med I / O-grensesnittene som SoC allerede har integrert, i stedet for å måtte kjøpe dem separat og til og med programmere dem.

Beste valget for nybegynnere: Raspbery Pi + FPGA

FPGA Icoboard Novato

Det tryggeste er at mange av dere har en Raspberry Pi for å gjøre visse prosjekter, vel, IcoBoard er kompatibel med pinnene til de forskjellige modellene av Raspberry Pi 2B og utover, så det vil være veldig enkelt å installere den på Raspberry Pi for å legge til nye funksjoner til den og bruke den til å lære Verilog.

FPGA som brukes av icoBoard er en 7680 LUTS 8 Megabit SRAM Gitter iCE40-HX8K. Det at den er designet for å brukes sammen med en Rasperry Pi, betyr at du kan lagre SoC, men det er flere grunner til at vi anbefaler denne modellen og ikke andre.

Gitt at mange av dere vil ha utført prosjekter med en Raspberry Pi for forskjellige prosjekter, vil bruk av en FPGA legge til nye funksjoner til prosjektene dine med Raspberry Pi, som utvider funksjonaliteten i stor grad, mens du lærer hvordan maskinvaren virkelig virker.

Hvorfor gir vi denne anbefalingen for FPGA-nybegynnere?

eFPGA

Grunnen til at vi anbefaler bruk av icoBoard hvis du er nybegynner, er at FPGA, Lattice iCE40-HX8K, er omvendt konstruert for å kunne bruke helt gratis og åpne verktøy for utvikling i denne lisensen. tallerken. Ulempen med det hele? Du kommer til å trenge å ha en Linux distribusjon installert for å kunne gjøre det, men fra det øyeblikket du kanskje har en som kjører på din Raspberry Pi.

Det omvendte ingeniørprosjektet på Gitter ICE40-HX8K heter IceStorm. Du finner en lenke på slutten av denne artikkelen, spesielt i kildene som vi legger ved på slutten av den.