FPGA labor információk

A feladat

Az FPGA laborban a Témalaboratórium tárgy keretén belül egy választott retro video játék részben hardveres, részben szoftveres implementációját kell elkészíteni. A feladat komplexitása lehetővé teszi az önálló tervezési munka alapjainak elsajátítását a specifikáció megfogalmazásától a teljes kidolgozásig, azaz működő prototípus megvalósításáig, programozható logikai áramkör, azaz FPGA használatával.

Természetesen akinek elfogadható komplexitású saját feladat ötlete vannak, annak megvalósítását is támogatjuk.

Implementációs platform

A megvalósításra használt platform a LOGSYS Spartan6 fejlesztői kártya, amely akár magában, akár bővítőkártyák bevetésével tökéletesen alkalmas a választott játék implementációjára.

A kártyán található nyomógombok, kapcsolók és 120x64 pixeles monokróm LCD kijelző önmagában alkalmassá teszik a feladat megvalósítására.

E mellett van lehetőség billentyűzet és/vagy egér PS/2 interfészen keresztül történő csatlakozására, valamint VGA bővítő kártyával monitoron történő nagyobb felbontású, színes megjelenítésre is.

Az audió-vizuális élmény pedig tovább fokozható "buzzer" ("csipogó") vagy jó minőségű audió D/A átalakító munkára fogásával.

A tervezési feladat magában foglal digitális tervezési feladatokat (ehhez a Xilinx ISE környezetet használjuk), amikor is az FPGA-ban egyedi perifériákat alakítunk ki (pl. LCD vagy VGA vezérlő), amelyeket csatlakoztatunk egy, az FPGA-ban megvalósított 32 bites Xilinx MicroBlaze processzorhoz.

Az FPGA-ban realizált System-on-Chip (SoC) rendszer elkészítése után a feladat további részeit (játék logika, perifériák kezelése) egy C vagy C++ nyelven megírt program valósítja meg, amelyet az Eclipse alapú Xilinx EDK környezetben kell elkészíteni.

Feladat specifikáció

  • Választható játékok:
    • Break-out (1 játékos – 1 ütő)
    • Ping-pong (2 játékos – 2 ütő)
    • Snake
    • további saját játék (nem túlságosan bonyolult!) ötletek
  • Megjelenítés
    • A LOGSYS Spartan6 fejlesztői kártyán található 102 x 64 felbontású, monokróm grafikus LCD a legtöbb játék megvalósítására alkalmas.
    • Aki nagyobb felbontású és/vagy színes megjelenítést szeretne megvalósítani, annak lehetősége van sztenderd VGA interfész használatára.
  • Vezérlés
    • Egyszerűbb esetben a megvalósított játék vezérlése történhet a LOGSYS Spartan6 kártyán található nyomógombok segítségével.
    • Bővítő kártya által biztosított alternatív lehetőség PS/2 billentyűzet és/vagy egér használata.
  • Audió funkciók (opcionális)
    • A VGA bővítő modulon található buzzer.
    • 24 bites, 96 kHz-es D/A átalakító használata.

 

Lebonyolítás

  • 1. hét: Témaválasztás
  • 2-7. hét: Ismerkedés az FPGA fejlesztéssel. Verilog és FPGA alapok, fejlesztői környezet megismerése.
  • 8-14. hét: A választott feladat implementálása heti konzultációval.

 

Konzulensek:

© 2010-2021 BME MIT