Digitális áramkörök szimulációja reaktív programozási technikákkal

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

Napjainkban a digitális áramköreink komplexitása és száma folyamatosan nő. A hardver rendszerek esetében a hibák észrevétele és kijavítása életbevágó. A hardver verifikációra általában szimulátorokat használunk, hogy elkészíthessük a hardver szoftveres modelljét. Az elterjedt hardver leíró szimulátorok nagy számban imperatív nyelveken íródtak, az így elkészült programok nem működnek megfelelően többmagos rendszerekben, nincs lehetőség a párhuzamosításra, és egy szálon futnak.

A probléma megoldására a reaktív programozás jelentheti a megoldást. A reaktív programozás egy új programozási paradigma, amely az adatáramlás köré orientálódik, az eredményeként megszülető rendszer alapvető sajátosságai: a reszponzivitás, ellenálló képesség, elaszticitás és üzenetvezéreltség. A Microsoft saját reaktív könyvtára az Rx.NET, amelynek alkotói az aszinkron és esemény alapú programok, amelyeken megfigyelési szekvenciákat alkalmazunk.

A szakdolgozatomban az Rx.Net könyvtár használatával logikai kapukat hozunk létre, amelyek be és kimenetét eseményforrásként használjuk. A logikai kapukkal kombinációs hálózatokat építünk fel, amely esetükben egy összeadó modul lesz.

A létrehozott összeadó modul szimulációs modelljének sebességét összevetjük egy mai napig használt hardver leíró szimulátorral és megkapott eredményeket kiértékeljük. Továbbá sorrendi hálózatok alapját képző D flip-flop szimulációs modelljét is megvalósítom a Rx.NET könyvtár felhasználásával.

Letölthető fájlok

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