Hva er en FPGA?
En feltprogrammerbar GATE-matrise (FPGA) er en datamaskinglogikkbrikke som ikke er fastkablet av produsenten. Dette betyr at det kan programmeres etter kjøpet. Det er tusenvis av alternativer for tilpasning tilgjengelig på en typisk FPGA. Disse programmerbare enhetene er portene, også kjent som logiske blokker eller oppslagstabell (LUT) -filer.
Når antallet logiske blokker på en FPGA er for mange til å opprettes manuelt, genereres de via et program. Programmerere kan deretter velge fra en rekke kategorier for å tilpasse dem for et bestemt system. De kan bruke sine egne programmer for å samhandle med programmet på FPGA -brikken og gjøre endringene.
Når du programmerer en FPGA, kan flere sammenkoblede elementer brukes til å konfigurere logiske blokker etter behov. Innholdet i LUTS varierer, avhengig av måten de har blitt programmert på. Noen utfører enkeltfunksjoner mens andre er i stand til et mer komplekst utvalg av oppgaver. Noen FPGA -er kan også inneholde både analog og graveItal elementer. Disse brikkene har ofte også muligheten til at disse elementene kan fungere sammen.
LUT -er er koblet sammen med et nettverk av ledninger. Avhengig av funksjonen som kreves, kan ledningene kjøre gjennom filene i en rett linje, eller et mer komplekst nettverk av diagonale tilkoblinger. En LUT kan være koblet til flere andre filer via flere ledningstilkoblinger. Filene kan også være koblet sammen med en serie ledninger som kalles bære- eller dedikerte rutingskjeder som er med på å flytte bare visse typer informasjon, slik at de kan behandles raskere.
For å programmere en logikkfunksjon med en FPGA, må den først skisseres i tekst- eller visuelle filer. Deretter lastes informasjonen ned til programvaren som følger med FPGA. Når den prosessen er fullført, er funksjonen vanligvis operativ.
Selv om en FPGA er dyrere enn en fastkjørt logikkbrikke, kan det hjelpe å redde REKilder som brukere kan programmere for å passe til sine spesifikke krav. Dette kan redusere behovet for ekstra arbeid og den ekstra tiden som trengs for å imøtekomme en brikke som ikke er skreddersydd. En programmerbar brikke kan også være enklere å bruke, ettersom brukerfunksjonene, for eksempel menyer, kan tilpasses.
Feltprogrammerbare gate-array-kretser er et alternativ til den applikasjonsspesifikke integrerte kretsen (ASIC). Disse kretsløpene er hardwired før forlater fabrikken. De er komponenter på brettnivå, i motsetning til de feltprogrammerbare portnivåelementene.