Belépés címtáras azonosítással
magyar nyelvű adatlap
Mikroelektronikai áramkörtervezés
A tantárgy angol neve: Microelectronic Circuit Design
Adatlap utolsó módosítása: 2023. március 19.
Mikroelektronika
Elektronika 1.
Digitális technika 1.
Digitális technika 2.
Programozás 1.
A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.
A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.
A tárgy megismerteti a modern digitális áramkörök tervezésének eszközeit és módszereit. Az összetett digitális funkciót megvalósító rendszerek tervezésének menetét a különböző elvonatkoztatási szinteken használatos formális nyelvű modellek jellegzetességeinek és az azok feldolgozásához használt EDA szoftverrendszerek működésének ismertetésén keresztül mutatja be. A tárgy továbbá áttekintést nyújt az áramköri tervek funkcionális verifikációjának módszereiről, valamint fizikai megvalósításuk lehetséges technológiáiról, beleértve a standard cellás ASIC és programozható logikai áramköröket. Az előadássorozat a feldolgozott témakörök alapján az alábbi részekre bontható:
1. A digitális tervezés folyamata, a „design-flow”
2. Rendszertervezés és viselkedési modellezés
3. Regiszter-transzfer szintű tervezés, hardverleíró nyelvek
4. Formális nyelvű modellek funkcionális verifikációja
5. A digitális áramkörök időzítési kérdései
6. Megvalósítási technológiák
7. Automatizált áramkörszintézis és fizikai tervezés
Előadások:
1. hét: Digitális rendszertervezés: Absztrakciós szintek, optimalizációs szempontok, a tervezés folyamata, tervezésifolyamat-modellek, iterációk a tervezésben
2. hét: Digitális funkció modellezése magas szintű programozási nyelvekkel: Esettanulmány - Objektumorientált áramköri modellek: OO ISA szimulátorok, alkalmazás-specifikus utasításkészletű processzorhoz illeszthető gyorsító áramkör klaszteranalízis alkalmazásokhoz.
3. hét: Hardverleíró nyelvek, regiszter-transzfer szintű tervezés I.: RTL alapfogalmak, erőforrás-allokáció és ütemezés, a hardverleíró nyelvek (HDL-ek) eredete, a HDL-ek szerepe napjainkban, terminológia, ABEL, VHDL, SystemVerilog, HDL-ek szintetizálható részhalmaza, HDL példák: logikai kapu, félösszeadó, multiplexer, prioritásos enkóder, aritmetikai áramkörök, tri-state buffer
4. hét: Hardverleíró nyelvek, regiszter-transzfer szintű tervezés II.: Egyidejűség és sorrendiség modellezése, szintézis eszközök kódolási konvenciói, HDL példák: D flip-flop, regiszter, shift-regiszter, regisztertömbök, FIFO, éldetektorok, szinkron aritmetika + register balacing, watchdog, késleltetésmérő, FSK modulátor / demodulátor
5. hét: Hardverleíró nyelvek, regiszter-transzfer szintű tervezés III.: Állapotgépek leírási módjai, jellegzetességeik szimulációs és szintézis szempontból, adatfeldolgozó rendszerek modellezése, újrafelhasználhatóság, technológiafüggetlenség, IP-alapú tervezés, a modularitás, lokalitás és regularitás elve az IP tervezésben, RTL tervezési és szintézis technikák űripari alkalmazásokban, nagymegbízhatóságú (fail-safe) állapotgépek, FSM holtpont, egyedi / automatizált H2/3 állapotkódolások
6. hét: Funkcionális verifikáció I.: A verifikáció fogalma, célja és jelentősége, beépülése a digitális rendszertervezés folyamatába, black-box, grey-box, white-box verifikáció, a gerjesztés előállításának módjai (irányított, random, szűkített random tesztek)
7. hét: Funkcionális verifikáció II.: Önellenőrző tesztkörnyezetek, regressziós tesztelés, verifikációs komponensek, debug és error injection interfész, a verifikáció minősítése, lefedési mérőszámok, naplózás, riportgenerálás, verifikációs terv
8. hét: A digitális áramkörök időzítési kérdései: A késleltetések fizikai háttere CMOS áramkörökben, a Liberty adatbázis, a metastabilitás jelensége, kapcsolástechnikai magyarázata dinamikus master/slave D flip-flop esetén, lokális adatutak szerkezete, kritikus út fogalma, időzítési kényszerek típusai, órajelfeltétel, órajel-elcsúszás, lokális jitter, bemeneti/kimeneti késleltetés, időzítési kényszerek formális rögzítése, az SDC formátum.
9. hét: Metastabilitás órajeltartományok határán: CDC, órajel-szinkronizálók: double flopping + éldetektorok, statikus jelek átvitele, visszacsatolatlan és visszacsatolt vektorszinkronizálók, aszinkron dual-clock FIFO, reset-szinkronizálás, fan-out kiegyenlítés, reset-szekvenciák
10. hét: Digitális funkció megvalósításának technológiái: Full-custom ASIC, standard cellás ASIC, PLD-k: konfigurálható összeköttetések, PROM, PLA, CPLD, FPGA
11. hét: RTL szintézis és optimalizáció I.: Az RTL szintézis fogalma, kézi RTL szintézis példák, RTL optimalizációs módszerek, állapotkódolások
12. hét: RTL szintézis és optimalizáció II.: Technológiafüggetlen logikai optimalizáció (constant folding, logikai minimalizálás, factorization, flattening), technológiafüggő logikai optimalizáció (register balacing, komplex kapuk, scan-path insertion), a fizikai szintézis algoritmusai
13. hét (tartalék előadás): RTL optimalizáció és timing closure esettanulmányok I.: szorzó modul optimalizációja, FSM kimeneti logika optimalizációja, hosszú számlánc optimalizációja
14. hét (tartalék előadás): RTL optimalizáció és timing closure esettanulmányok II.: FPGA-k dedikált órajelelosztó hálózatai
Gyakorlatok: A tárgy egy konkrét demonstrációs rendszer megtervezésén és megvalósításán keresztül mutatja be a digitális áramkörtervezés gyakorlati oldalát. A demonstrációs rendszer egyaránt tartalmaz adattárolási, kommunikációs és adatfeldolgozási (aritmetikai) feladatokat ellátó IP magokat.
1. hét: Demonstrációs rendszer specifikációjának és rendszertervének elkészítése, funkcionális particionálás, hardver-szoftver interfész definiálása. Kevert elvonatkoztatású (rendszer/RTL) kapcsolási séma készítése magas szintű rendszerterv alapján.
2. hét: Kitérő I.: A logikai szimulációs szoftver megismerése előre elkészített HDL modell és testbench szimulációján keresztül, a hullámforma-megjelenítő konfigurálása.
3-6. hét: Almodulok szintetizálható VHDL / SystemVerilog modelljeinek elkészítése RTL kapcsolási séma és rendszerterv alapján. Almodul-szintű egyszerű tesztkörnyezetek készítése VHDL / SystemVerilog nyelven és hullámforma-alapú funkcionális verifikáció. Toplevel integráció és verifikáció.
7-8. hét: Önellenőrző tesztkörnyezetek készítése VHDL / SystemVerilog nyelven. Szisztematikus toplevel szintű funkcionális verifikáció.
9. hét: Kitérő II.: Áramkörszintézis szoftver megismerése előre elkészített HDL modell szintézisén keresztül, statikus időzítésvizsgálat.
10. hét: Demonstrációs rendszer szintézise FPGA technológiára, statikus időzítésvizsgálat, időzítési optimalizáció, post-place&route időzítési szimuláció.
11-12. hét: FPGA-prototípus tesztelése, egyszerű szoftver-interfész készítése Python nyelven.
A tantárgy elméleti anyagát a 2 óra/hét kiméretű előadásokon ismertetjük.
A tárgyhoz tantermi gyakorlat (2 óra/hét) tartozik.
Szorgalmi időszakban:
A nagyzárthelyi elégséges szintű teljesítése
A félév során 3 kiszárthelyit íratunk. Az aláírás megszerzéséhez legalább 2 kiszárthelyi elégséges szintű teljesítése szükséges.
Otthoni házi feladat elkészítése (elmélet): Egy kijelölt, szűkebb tématerület szakirodalom alapján való feldolgozása és bemutatása a félév végén.
Otthoni házi feladat elkészítése (gyakorlat): A félév során 3 gyakorlati házi feladatot adunk ki. Az aláírás megszerzéséhez legalább 2 házi feladat elégséges szintű teljesítése szükséges.
Vizsgaidőszakban:
A vizsgaidőszakban minden hallgatónak vizsgát kell tennie. A vizsga egy kötelező írásbeli részből és egy opcionális szóbeli részből áll. Az írásbeli részt minden hallgatónak kötelező megírni.
A szóbeli vizsgán minden, legalább elégséges szintet elért hallgatónak lehetősége van egy jegyet javítani.
A nagyzárthelyi a pótlási időszakban egy alkalommal pótolható, második pótlásra nincs lehetőség.
A kiszárthelyik külön-külön nem, csak együttesen pótolhatók a pótlási időszakban.
A házi feladatok késedelmes bemutatására a pótlási időszak végéig van lehetőség.
Zárthelyik ill. vizsganapok előtt az előadókkal történő személyes megbeszélés vagy e-mail képezi a konzultáció alapját.
Elektronikusan elérhető előadás fóliák, oktató által készített segédanyagok.
Tanszéki elektronikus jegyzetek a tanszéki tanulmányi felületről.
Horváth Péter – Digitális rendszerek modellezése és szintézise, L’Harmattan, 2021, ISBN: 9789634147480.
Az IMSc-s hallgatók számára ugyanazon tananyag és tematika mellett mélyebb, összetettebb feladatok gyakoroltatják ugyanazokat a témaköröket (lásd kijelölt írásos tananyag elsajátítása és házi feladat). Az érdeklődők számára a tárgyon tanultak alkalmazását bemutató, illetve a tárgy tananyagán túlmutató szakmai írásokat teszünk közzé a tárgy honlapján. Ezek egyéni elmélyülésre adnak lehetőséget. Feldolgozásukhoz konzultációk keretében segítséget nyújtunk.
Házi feladat: egy, a hallgató féléves feladatához szorosan nem kapcsolódó, analóg és/vagy digitális áramkörtervezési probléma feldolgozása szakirodalmi források alapján (25 pont).
Az IMSc pontok megszerzése a programban részt nem vevő hallgatók számára is biztosított.