Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Mikroelektronikai áramkörtervezés

    A tantárgy angol neve: Microelectronic Circuit Design

    Adatlap utolsó módosítása: 2023. március 19.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar
    BSc, villamosmérnök
    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIEEAC06 5 2/2/0/v 5  
    3. A tantárgyfelelős személy és tanszék Dr. Horváth Péter,
    4. A tantárgy előadója Dr. Horváth Péter, adjunktus, EET
    5. A tantárgy az alábbi témakörök ismeretére épít

    Mikroelektronika

    Elektronika 1.

    Digitális technika 1.

    Digitális technika 2.

    Programozás 1.

    Programozás 2.
    6. Előtanulmányi rend
    Ajánlott:
    Mikroelektronika
    7. A tantárgy célkitűzése

     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

     

    8. A tantárgy részletes tematikája

    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. 

     

    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

    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.

    10. Követelmények

    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. 

    11. Pótlási lehetőségek

    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.

    12. Konzultációs lehetőségek

    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.

    13. Jegyzet, tankönyv, felhasználható irodalom

    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.

    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra56
    Félévközi készülés órákra16
    Felkészülés zárthelyire18
    Házi feladat elkészítése8
    Kijelölt írásos tananyag elsajátítása8
    Vizsgafelkészülés44
    Összesen150
    15. A tantárgy tematikáját kidolgozta Dr. Horváth Péter, adjunktus, EET
    IMSc tematika és módszer

    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.

    IMSc pontozás

    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.