Virtuális programozható logikai eszköz fejlesztése OTP FPGA-khoz
Irodalomkutatás
A szakirodalom tanulmányozásával tekintse át a programozható logikai eszközök, CPLD-k (Complex Programmable Logic Device) és FPGA-k (Field-Programmable Gate Array) belső szerkezetét, a bennük fellelhető logikai elemek és huzalozási erőforrások sajátosságait. E sajátosságok mentén hasonlítsa össze a különböző gyártókat és azok eszközcsaládjait. Fordítson kiemelt figyelmet a különböző konfigurációs megoldásokra azon belül is az egyszer programozható (One-Time Programmable, OTP) eszközökben alkalmazott megoldásokra. Vizsgálja meg, hogy az OTP jelleg milyen rendszertechnikai előnyökkel és hátrányokkal jár a különféle alkalmazási területeken.
A megvalósítandó feladat
Tervezze meg egy egyedi felépítésű, „virtuális” programozható logikai eszköz megvalósítására alkalmas áramkörkészletet, ami lehetővé teszi többször újraprogramozható logikai rendszerek OTP FPGA-kban való kialakítását.
- Tervezzen meg egy általános célú logikai alapelemkészletet, amely segítségével tetszőleges digitális funkció felépíthető.
- Tervezzen a logikai alapelemek rugalmasan konfigurálható összekapcsolását lehetővé tévő kapcsolómátrix-architektúrá(ka)t.
- Tervezze meg a logikai és huzalozási erőforrások konfigurálására szolgáló áramköri struktúrákat.
- Készítse el a logikai és huzalozási erőforrások, valamint az ezek konfigurációját lehetővé tévő áramköri részletek szintetizálható RTL modelljét VHDL vagy SystemVerilog nyelven.
- Készítsen VHDL vagy SystemVerilog nyelvű verifikációs környezetet és végezze el az elkészített HDL modell funkcionális verifikációját.
- Tervezzen meg egy felhasználói felületet, amely segítségével a virtuális programozható logikai eszköz megfelelő felkonfigurálásával létrehozható áramköri struktúrák tervezhetők és egy konkrét fizikai eszköz adott konfigurációs információ alapján felprogramozható.
- Az elkészített virtuális PLD rendszer működését igazolja egy, a konzulens által megjelölt FPGA architektúrára való szintézissel és egyszerű demonstrációs áramkörök létrehozásával.