UVM (Universal Verification Methodology) kompatibilis verifikációs komponens tervezése és megvalósítása SystemVerilog nyelven a PCI express szállítási rétegéhez

Háttér:
A PCI express (Peripheral Component Interconnect Express), hivatalosan rövidítve PCIe vagy PCI-e néven, egy nagysebességű soros számítógépes bővítő busz szabvány, amelyet a régebbi PCI, PCI-X és AGP busz szabványok helyettesítésére terveztek. A PCIe szabvány hivatalosan az OSI modell alsó négy rétegét implementálja, éppen ezért a megvalósítása igen komplex. Hardware komponenseinek verifikációjához nagy számú szimulációs erőforrás szükséges. A verifikáció felgyorsítása érdekében egy lehetséges megoldás lehet, ha a fejlesztés során a szimulációkban egyszerre csak egy PCIe protokoll réteget ellenőrzünk aktív verifikációs komponensek segítségével.
A hallgató feladatai:
• Megismerkedni a SytemVerilog verifikációs nyelvvel
• Megismerkedni egy tipikus UVM verifikációs komponens felépítésével
• Megismerkedni a PCIe szabvánnyal
• Megtervezni és leimplementálni egy UVM verifikációs komponenst a PCIe szállítási réteghez a következő funkciók figyelembevételével:
• Tartalmaz egy PCIe szállítási réteg csomag osztályt, amely magába foglalja a rétegben használatos csomag összes szükséges paraméterét
• Képes különböző csomagok (memória, IO, konfigurációs, üzenet) generálására és ezeknek az interfészekre történő hajtására
• Képes az interfészeken történő események monitorozására, összegyűjtésére és továbbítására
• Modellezi a főbb szállítási rétegben található funkciókat
• Tartalmaz egy beépített protokoll ellenőrző komponenst
• Tartalmaz egy beépített funkcionális coverage gyűjtő (lefedettség mérés) komponenst
• Elkészíteni egy „User guide” jellegű dokumentációt a projekt lezárásaként
A témát a Veriest Hungary Kft. hirdette meg; a feladatok elvégzéséhez a cég biztosítja a szükséges fejlesztőeszközöket.
A feladatra egy MSc hallgató jelentkezését várjuk, a téma diplomamunkává bővíthető.
Kapcsolat: Sági Péter (peters@veriests.com)
https://www.veriests.com/hungary