IP core alapú SoC rendszerépítő készítése

Tanszéki konzulens: 
A doktorandusz fényképe
doktorandusz
Szoba: IE 335

A kiírás adatai

A téma státusza: 
Korábbi (jelenleg nem aktív, de látszik)
Kiírás éve: 
2013
A kiírás jellege: 
szorgalmi feladat, önálló labor, szakdolgozat/diplomaterv

Napjainkban (túl jól) ismert szoftverek (Xilinx EDK, Altera QSys) léteznek arra, hogy egy működő processzoros rendszert hozzunk létre, amelyet majd leszintetizálunk, betöltünk FPGA-ba.

Sajnos ezeknek az eszközöknek a felhasználhatósága egy-egy processzorcsalád köré (MicroBlaze, Nios) csoportosul. Emellett - természetesen - az egyes rendszerek leírása egyáltalán nem kompatibilis egymással, sőt, maguk a létrehozó programok is elég különbözőek.

A cél a következő: egy létező, szabványos leírásból, az XML alapú IP-XACT-ból generálni a processzoros rendszereinket. Milyen feladatokra lehet számítani:

  1. Nyílt forrású IP-core-ok megismerése, alkalmazása (ajánlott megnézni: http://www.opencores.org és http://opencores.org/or1k/OR1K:Community_Portal#ORPSoC), Wishbone alapú buszrendszerek, soft core processzorok.
  2. IP-XACT leírás előállítása IP-core-okhoz.
  3. Automatikus buszstruktúra létrehozása IP-XACT leírásból.
  4. Forrásfile-ok létrehozása, ezek szintetizálása.
  5. Board support package generálása szoftverfejlesztéshez
  6. Eclipse alapú GUI fejlesztése, mellyel a rendszerünket gyorsan, egyszerűen, kényelmesen összekattintgathatjuk.

Ez nyilvánvalóan hatalmas nagy téma, több hallgató jelentkezhet erre, ezért a zárójeles többes szám. Ha egyedül vagy, akkor sem gond, tudunk ebből választani.

Elgondolásaim szerint ez a munka B.Sc. önálló laboratóriumtól M.Sc. diplomatervig minimum el tud tartani, 1-2-3-4 hallgatónak is.

Mit érdemes tudnod (attól függően, hogy melyik részre jelentkeznél):

  • Az Eclipse-részhez Java nyelv ismerete szükséges (ezt informatikusoknak amúgy is kell tudniuk, villamosmérnökök meg úgyis tanuljátok M.Sc.-n, tehát nem árthat).
  • A rendszer generálásához érdemes valamilyen könnyed, gyors fejlesztést támogató nyelvet használni (nekem a Python szimpatikus). Hamar tanulható (pont ezért támogatja a gyors fejlesztést). Ide még nem árt a Verilog nyelv ismerete sem. De ezt úgyis tanuljátok valamilyen szinten, mind a villamosmérnökök, mind a mérnök informatikusok, az elég, a többi jön magától.
  • A board support package generálásához nem árt némi nyílt forrású ismeret, illetve jó, ha nem félsz a parancssortól.

 

Alapkövetelmény, hogy legyen lelkesedésed, a téma elég nagy, mindig lehet továbbfejleszteni :-)

Kapcsolódó tantárgyak: 
Logikai tervezés
© 2010-2024 BME MIT | Hibajelentés | Használati útmutató