En programmerbar logisk integrerad krets ( FPGA , engelsk programmerbar logisk enhet , PLD ) är en elektronisk komponent ( integrerad krets ) som används för att skapa konfigurerbara digitala elektroniska kretsar . Till skillnad från konventionella digitala kretsar bestäms inte logiken för FPGA under tillverkningen, utan ställs in genom programmering ( design ). För programmering används en programmerare och en IDE (debugging-miljö), som låter dig ställa in den önskade strukturen för en digital enhet i form av ett kretsschema eller ett program i speciella hårdvarubeskrivningsspråk ( Verilog , VHDL , AHDL , och andra). Ett alternativ till FPGA är:
Vissa tillverkare erbjuder programvaruprocessorer för sina FPGA:er som kan modifieras för en specifik uppgift och sedan byggas in i FPGA:n. Därigenom:
FPGA används ofta för att bygga digitala enheter med olika komplexitet och kapacitet , till exempel:
1970 utvecklade Texas Instruments (hädanefter kallade "TI") maskerade (det vill säga programmerbara med en mask, engelska mask-programmerbara ) integrerade kretsar (hädanefter kallade ICs) baserade på associativ ROM (ROAM) från IBM . Detta chip kallades TMS2000 och programmerades av alternerande metallskikt under IC- tillverkningsprocessen . TMS2000 hade upp till 17 ingångar och 18 utgångar med 8 JK flip-flops som minne. För dessa enheter myntade TI termen PLA . programmerbar logikmatris - programmerbar logikmatris.
PAL ( programmable array logic ) är en programmerbar array (matris) av logik. I Sovjetunionen skilde sig inte PLA och PLM och betecknades som PLA ( programmerbar logisk matris ) . Skillnaden mellan PLA och PLM är tillgängligheten för programmering av den interna strukturen (matriser).
GAL ( general array logic ) är FPGA:er som har en programmerbar OCH-matris och en fast ELLER-matris.
CPLDs ( eng. complex programmeable logic device - complex programmeable logic devices) innehåller relativt stora programmerbara logiska block - makroceller anslutna till externa utgångar och interna bussar. CPLD-funktionalitet är kodad i icke-flyktigt minne , så det finns inget behov av att programmera om dem när de slås på. Kan användas för I/O-expansion bredvid stora chips, eller för signalförbehandling (t.ex. COM -portkontroller , USB , VGA ).
FPGA ( field-programmable gate array ) innehåller multiplikationssummationsblock, som används i stor utsträckning inom signalbehandling (DSP, eng . digital signal processing ), såväl som logiska element (vanligtvis baserade på konverteringstabeller - sanningstabeller) och deras kopplingsblock . FPGA:er används vanligtvis för signalbehandling, har fler logiska grindar och är mer flexibla i arkitektur än CPLD:er. Programmet för FPGA lagras i distribuerat minne, vilket kan exekveras både på basis av flyktiga statiska RAM-celler (sådana mikrokretsar produceras till exempel av Xilinx och Altera ) - i detta fall sparas inte programmet när strömförsörjningen till mikrokretsen går förlorad, och baserat på icke-flyktiga flash-minnesceller eller antisäkringsbyglar (sådana mikrokretsar tillverkas av Actel och Lattice Semiconductor ) - i dessa fall sparas programmet när strömmen går ur. Om programmet är lagrat i flyktigt minne måste varje gång mikrokretsen slås på måste den konfigureras om med hjälp av starthanteraren, som också kan byggas in i själva FPGA:n. Ett alternativ till FPGA FPGA är långsammare digitala signalprocessorer. FPGA:er används också som universella processoracceleratorer i superdatorer (till exempel Cray XD1 -datorn från Cray , RASC-projektet av Silicon Graphics ("SGI").
Processor Technologies | Digital|||||||||
---|---|---|---|---|---|---|---|---|---|
Arkitektur | |||||||||
Instruktionsuppsättning arkitektur | |||||||||
maskinord | |||||||||
Parallellism |
| ||||||||
Genomföranden | |||||||||
Komponenter | |||||||||
Energihantering |