A mikrokontrollerek növekvő népszerűségével a mérnökök többet használnak mikrokontrollereket, mint FPGA-kat. A mikrokontrollerek olcsóbbak, jó támogatásuk, könnyű hozzáférhetőségük, nagy közösségük, sokoldalúságuk, programozásuk stb. Miatt dominánssá váltak az FPGA-val szemben. De a mikroprocesszorokon kívül vannak bizonyos korlátok, mint például az utasításkészlet, a programok szekvenciális végrehajtása (szekvenciális feldolgozás), a rugalmasság és az újrafelhasználhatóság hiánya stb. Az FPGA azonban képes legyőzni ezeket a korlátokat, mivel az FPGA-k párhuzamosan hajtják végre a programokat, és rugalmas és újrafelhasználható eszköz azt jelenti, hogy újra és újra át lehet programozni különböző feladatokra.
Mi az FPGA és miben különbözik a mikrovezérlőtől
A Field-Programmable Gate Array egy integrált áramkörű szilícium chip, amely logikai kapuk tömbjével rendelkezik, és ez a tömb programozható a mezőn, azaz a felhasználó felülírhatja a meglévő konfigurációkat az új definiált konfigurációival, és létrehozhatja saját digitális áramkörét a mezőn. Az FPGA-k üres táblának tekinthetők. Az FPGA-k önmagukban nem csinálnak semmit, míg a tervezők feladata, hogy létrehozzanak egy konfigurációs fájlt, amelyet gyakran bit fájlnak hívnak az FPGA számára. Az FPGA úgy fog viselkedni, mint a digitális áramkör, ha egy bit fájllal betöltődik.
Míg a mikrovezérlőknél ez nem így van, mivel a mikrovezérlőket nem lehet programozni vagy átalakítani a helyszínen. A felhasználó nem írhatja felül a meglévő konfigurációit, és nem hozhat létre digitális áramkört a terepen. A mikrovezérlőket könnyű programozni, és a közösség is széles. A mikrovezérlők egyedi beépítésű mini számítógépek, amelyek IC formában érkeznek, míg az FPGA-k csak olyan logikai blokkokat tartalmaznak, amelyek ismét elektromos vezetékekkel kapcsolhatók össze. A mikrokontrollerek tekintetében is kevesebb energiát fogyaszt, mint az FPGA-k. Az FPGA-k költségesek, és bármilyen eszköz felépítésénél több költséget igényel, mint a mikrovezérlő. Az FPGA-k telepítése sokkal több időt vesz igénybe, míg a mikrovezérlők rendelkezésre állnak, könnyen felépíthetők speciális alkalmazásokhoz.
FPGA architektúra
Az FPGA logikai cellákból vagy modulokból és összekapcsolásokból áll, amelyet a fejlesztők és a tervezők teljes ellenőrzés alatt tartanak. Az FPGA főleg három fő blokkból épül fel, mint például konfigurálható logikai blokk (CLB), I / O blokkok vagy betétek és kapcsoló mátrix / összekapcsoló vezetékek. Minden blokkot az alábbiakban röviden tárgyalunk.
- CLB (konfigurálható logikai blokk): Ezek az FPGA alapvető cellái. Ez egy 8 bites funkciógenerátorból, két 16 bites funkciógenerátorból, két regiszterből (flip-flop vagy retesz) és újraprogramozható útválasztó vezérlőkből (multiplexerekből) áll. A CLB-ket más tervezett funkciók és makrók megvalósítására alkalmazzák. Mindegyik CLB-nek mindkét oldalán vannak bemenetek, amelyek rugalmassá teszik őket a logika feltérképezéséhez és felosztásához.
- I / O padok vagy blokkok: A bemeneti / kimeneti párnákat a külső perifériák számára használják az FPGA funkcióinak eléréséhez, és az I / O padok használatával kommunikálni tud az FPGA-val különböző alkalmazásokhoz is, különféle perifériák segítségével.
- Kapcsoló mátrix / összekapcsoló vezetékek: A kapcsoló mátrixot az FPGA-ban használják a hosszú és a rövid összekapcsoló vezetékek rugalmas kombinációban történő összekapcsolására. Tartalmazza a különböző vonalak közötti kapcsolatok be- / kikapcsolására szolgáló tranzisztorokat is.
Amikor FPGA-ra van szükség
Mint fent említettük, a mikrovezérlőknek vannak bizonyos korlátai, és nem használhatók párhuzamosan a feladatok elvégzésére, mivel a mikrovezérlők és a mikroprocesszorok a programok egymás utáni futtatásán futtatnak, ami egyes alkalmazásokban kissé lassúvá teszi, ebben a forgatókönyvben az FPGA-k előnnyel járnak és hatékonyan használhatók. A mikrokontroller korlátozott feladatokat is képes végrehajtani, mert utasításokkal és áramkörökkel vannak ellátva. A programozónak be kell tartania a korlátozásokat a kód fejlesztése közben. Tehát ebben a forgatókönyvben is az FPGA-k rendelkeznek előnyökkel.
A mikrokontrollerek esetében azonban a processzor egyik kódról a másikra vált, hogy elérje a párhuzamosság bizonyos szintjét. Könnyebb lesz kódokat írni a mikrovezérlőkre, mint az FPGA-k. Az FPGA-k párhuzamos feldolgozási képessége lehetővé teszi a megszakítások hatékony vezérlését a véges állapotú gépek (FSM) használatával.
Mikrovezérlők esetén számolni kell az ISR által a megszakítás megoldásához szükséges idővel. Egy FPGA-t egyszerűen átprogramozhat, egyszerűen átprogramozhatja azt. Az FPGA-ban lévő konfiguráció az áramellátás bekapcsolásakor a konfigurálható logikai cellákra kerül.
Az FPGA újraprogramozásához nem kell semmilyen változtatást végrehajtania a hardveren. Az FPGA-k alkalmasak a párhuzamos adatok nagysebességű feldolgozására, és nagyfokú testreszabhatósággal rendelkeznek. Ugyanakkor megvannak a prototípus működésének és a konfiguráció bonyolultságának hátrányai is. Tehát az FPGA-k ezen előnyökkel választhatók ki a mikrovezérlőkhöz képest. Indítsuk el az FPGA programozást, és hangsúlyozzuk