Field programmable gate array

Pole programovateľných hradiel (často skrátene FPGA) je elektronická súčiastka používaná na vytváranie rekonfigurovateľných digitálnych obvodov. To znamená, že FPGA sa líši od logického hradla, pretože logické hradlo má pevnú funkciu. Naproti tomu FPGA má v čase výroby nedefinovanú funkciu. Predtým, ako sa FPGA môže použiť v obvode, musí sa naprogramovať, t. j. prekonfigurovať.

FPGA sú integrované obvody z kategórie programovateľných logických zariadení alebo PLD. FPGA sú najvýkonnejšie, najflexibilnejšie a zároveň najdrahšie z typov PLD. Nevýhodou FPGA v porovnaní s inými PLD je, že si nepamätajú svoj návrh po odpojení napájania. FPGA preto potrebuje samostatný konfiguračný pamäťový čip, ktorý uchováva návrh FPGA. Keď sa napájanie vráti do FPGA, pevná časť FPGA načíta konfiguráciu z konfiguračného pamäťového čipu. Po konfigurácii bude FPGA schopný vykonávať funkciu, ktorá mu bola daná návrhom.

FPGA sa líši od mikroprocesora alebo mikrokontroléra. FPGA vo svojej základnej podobe nie je schopný spustiť softvér. Až keď FPGA dostane konfiguráciu, ktorá obsahuje procesorovú architektúru, má schopnosť spúšťať softvér.

Výrobcovia FPGA poskytujú inžiniersky softvér pre Windows a niekedy aj pre Linux na vývoj návrhov pre FPGA. Návrh je bežne napísaný v počítačových súboroch čitateľných pre človeka, ktoré sa nazývajú jazyk na popis hardvéru (HDL). Najobľúbenejšie sú VHDL a Verilog. Jazyky na opis hardvéru sú silne porovnateľné s programovacími jazykmi. Zámerom HDL je však navrhovať digitálne logické obvody, zatiaľ čo programovacie jazyky navrhujú softvér.

Inžiniersky softvér FPGA musí preložiť abstraktný kód HDL na logické prvky dostupné vo vybranom FPGA. To sa nazýva logická syntéza. Potom sa vykoná proces umiestnenia a smerovania, aby sa logické prvky umiestnili do FPGA. Výsledkom je bitový súbor, ktorý možno naprogramovať do FPGA alebo do konfiguračnej pamäte. Zvyčajne sa to robí pomocou programátora USB pripojeného k portu JTAG FPGA.

Keďže FPGA je integrovaný obvod, výrobca FPGA sa môže rozhodnúť pridať ďalšie bežne používané komponenty integrovaného obvodu. Tieto pevné súčiastky sa nazývajú jadrá. Sú to napríklad ethernetové radiče alebo dokonca kompletná procesorová architektúra. Pre rôzne segmenty trhu, ako je obrana, medicína, komunikácia a robotika, sa výrobca FPGA snaží pridať najhodnotnejšiu sadu týchto dodatočných jadier.

Zoom


Vnútorná štruktúra

FPGA sú vo všeobecnosti postavené na programovateľných logických prvkoch a programovateľných prepojeniach. Jedným zo stavebných blokov logických prvkov je programovateľná vyhľadávacia tabuľka (LUT). LUT sa dá naprogramovať tak, aby pri zadaných vstupných hodnotách vychádzala akákoľvek hodnota. Týmto spôsobom sa dá LUT naprogramovať na akýkoľvek typ logiky s rovnakým počtom vstupov a výstupov. Napríklad 2-vstupovú a 1-výstupovú LUT možno naprogramovať tak, aby napodobňovala logiku 2-vstupového AND, OR, NAND, NOR, XOR atď. Výstup tejto LUT možno buď uložiť pomocou registra, alebo pripojiť na vstup iných LUT. Pomocou programovateľného muxu možno FPGA naprogramovať tak, aby si vybral registrovaný alebo neregistrovaný výstup. Táto kombinácia LUT, registra a muxu predstavuje všeobecnú štruktúru logického prvku.

Na prepojenie týchto logických prvkov sa používajú priepustné tranzistory. Tranzistor sa dá naprogramovať tak, aby signál buď pripojil, alebo nie, čím FPGA získava možnosť veľmi špecifického prepojenia logických prvkov. Ak napríklad výstup jedného logického prvku bude napájať vstup iného, priepustný tranzistor možno naprogramovať tak, aby tieto dva vodiče spojil a zodpovedal určenej logike. Medzi logické prvky a priepustné tranzistory môže kompilátor prevziať hardvérový opis z HDL, vytvoriť logiku pre logické prvky a prepojiť ich pomocou priepustných tranzistorov.

Otázky a odpovede

Otázka: Čo je to pole programovateľných hradiel (FPGA)?


Odpoveď: Pole programovateľných hradiel (FPGA) je elektronická súčiastka používaná na vytváranie rekonfigurovateľných digitálnych obvodov. V čase výroby má nedefinovanú funkciu a pred použitím v obvode sa musí naprogramovať alebo prekonfigurovať.

Otázka: Ako sa FPGA líši od logického hradla?


Odpoveď: FPGA sa líši od logického hradla, pretože logické hradlo má pevne stanovenú funkciu, zatiaľ čo FPGA má v čase výroby nedefinovanú funkciu.

Otázka: Aký typ integrovaného obvodu je FPGA?


Odpoveď: FPGA je integrovaný obvod z kategórie programovateľných logických zariadení alebo PLD.

Otázka: Aké sú niektoré nevýhody používania FPGA v porovnaní s inými PLD?


Odpoveď: Jednou z nevýhod používania FPGA v porovnaní s inými PLD je, že si nepamätajú svoj návrh po odpojení napájania, takže potrebujú samostatný konfiguračný pamäťový čip, ktorý uchováva návrh. Sú tiež drahšie ako iné typy PLD.

Otázka: Ako sa programuje FPGA?


Odpoveď: Na programovanie FPGA používajú inžinieri inžiniersky softvér pre Windows alebo Linux na vývoj návrhov napísaných v jazykoch na opis hardvéru, ako sú VHDL a Verilog. Softvér potom preloží tento kód do logických prvkov dostupných vo vybraných FGPA a umiestni ich pomocou procesov umiestnenia a smerovania, čím sa vytvorí bitový súbor, ktorý sa môže naprogramovať buď do konfiguračnej pamäte, alebo priamo do samotného FGPA pomocou USB programátora pripojeného k jeho portu JTAG.

Otázka: Sú mikroprocesory a mikrokontroléry podobné FGPA?


Odpoveď: Nie, mikroprocesory a mikrokontroléry sa líšia od FGPA, pretože vo svojej základnej podobe nemôžu spúšťať softvér; túto schopnosť majú len vtedy, keď dostanú konfiguráciu obsahujúcu architektúru procesora.

AlegsaOnline.com - 2020 / 2023 - License CC3