Network on a Chip megvalósítása

OData támogatás
Konzulens:
Wacha Gábor József
Méréstechnika és Információs Rendszerek Tanszék

FPGA áramkörökben is egyre elterjedtebbé vált a multicore rendszerek alkalmazása, melyek esetében a rendszer teljesítményét alapvetően határozza meg a processzor magok közti adatkommunikáció. A jelenleg használt közös memória és buszrendszer alapú kommunikációs megoldások nagy processzorszám esetén nem alkalmazhatók hatékonyan, így jelentek meg a Network on a Chip rendszerek, melyek egy kommunikációs hálózatot hoznak létre a chipen belül, így biztosítják a különböző eszközök közti adatcserét.

Munkám során egy olyan Network on a Chip generátor elkészítése volt a célom, ami széles skálán paraméterezhető, így alkalmazási területtől függően erőforrás felhasználás és teljesítmény szempontjából is optimális NoC rendszert lehet létrehozni. Az elkészített rendszer alap építőeleme a Crossbar, melyek egymáshoz kapcsolásával tetszőleges topológiájú hálózat hozható létre, azok végpontjai között pedig csomag alapú kommunikációt valósít meg.

A Network on a Chip generátor paraméterei a következők lehetnek: hálózat topológia, végpontok száma, alkalmazott üzenetek szószélessége és az üzenetcsomagok maximális hossza. A rendszer jelenleg öt topológiát támogat - egy-és kétirányú gyűrű, csillag, rács és tórusz -, de a felhasználói igényektől függően ez könnyen bővíthető.

Ezenkívül megadható a Crossbarok bementi arbitrációjának típusa (fix vagy RoundRobin) és a belső üzenettárolóinak száma, így az egyszerre kezelhető üzenetek száma igen magas is lehet.

A Network on a Chip generátor elkészítéséhez egy olyan HDL nyelvre volt szükségem, ami támogatja paraméterezhető hardver létrehozását, ezért esett a választásom a MyHDL Python alapú hardverleíró nyelvre.

A diplomaterv második felében az elkészült NoC rendszer verifikálását végeztem UVM keretrendszerben, aminek elkészítéséhez az EasierUVM kódgenerátort alkalmaztam. Az EasierUVM szabványos UVM rendszert generál, így egy olyan verifikációs rendszerhez jutottam, amivel elvégezhettem a saját Network on a Chip rendszerem verifikációját, de kis átalakítással tetszőleges NoC vizsgálatára alkalmassá tehető.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.