Mikroelektronikai tervezés

A tantárgy angol neve: Microelectronics Design

Adatlap utolsó módosítása: 2019. május 6.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Villamosmérnök Szak

BSc képzés
Mikroelektronikai tervezés és gyártás szakirány

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIEEAC01 5 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Horváth Péter,
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Dr. Horváth Péter

adjunktus

Elektronikus Eszközök Tsz

5. A tantárgy az alábbi témakörök ismeretére épít
  • Mikroelektronika
  • Digitális technika 1
  • Digitális technika 2
  • Programozás 1
  • Programozás 2
6. Előtanulmányi rend
Kötelező:
((Szakirany("AVINmikrogyart", _) VAGY
Szakirany("AVINmikroterv", _) VAGY
Szakirany("AVIelektro", _) VAGY
Szakirany("AVImikro", _) )

VAGY Training.code=("5NAA7") )

ÉS NEM ( TárgyEredmény( "BMEVIEEA328" , "jegy" , _ ) >= 2
VAGY
TárgyEredmény("BMEVIEEA328", "FELVETEL", AktualisFelev()) > 0)

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ó.

Ajánlott:

Ajánlott a Mikroelektronika tárgy kreditjének megszerzése.

7. A tantárgy célkitűzése

A tárgy megismerteti a modern digitális rendszerek 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 (CPLD-k, FPGA-k). Az előadássorozat a feldolgozott témakörök alapján négy részre bontható:

1.     Digitális funkció modellezése magas szintű programozási nyelvekkel

2.     Regiszter-transzfer szintű tervezés

3.     Formális nyelvű modellek funkcionális verifikációja

 

4.     Megvalósítási technológiák, automatizált áramkörszintézis és fizikai tervezés

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

1. hét: Digitális rendszertervezés

·       Absztrakciós szintek, optimalizációs szempontok, a tervezés folyamata

2. hét: Digitális funkció modellezése objektumorientált programozási nyelvekkel

·       Esettanulmány - Objektumorientált áramköri modellek: OO ISA szimulátorok, alkalmazás-specifikus utasításkészletű processzorhoz (Application-Specific Instruction Set Processor, ASIP) illeszthető gyorsító áramkör klaszteranalízis alkalmazásokhoz.

3. hét: Hardverleíró nyelvek, Regiszter-transzfer szintű tervezés I.

·       A hardverleíró nyelvek (HDL-ek) eredete, a HDL-ek szerepe napjainkban, terminológia, ABEL, VHDL, SystemVerilog

·       A regiszter-transzfer szint: definíció, jellemzők, specifikáció, tervezési feladatok

·       HDL példák I.: 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.

·       Szintézis eszközök kódolási konvenciói (RTL design guidelines)

·       HDL példák II / 1.: 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.

·       HDL példák II / 2.: FSM (3, 2, 1 process, kimeneti bufferek, beágyazott aritmetika), adatfeldolgozó rendszerek modellezése (vezérlés + műveletvégzés, implementációs sémák, viselkedési RTL, strukturális RTL, shift&add szorzó példa)

6. hét: Hardverleíró nyelvek, Regiszter-transzfer szintű tervezés IV.

·       Ideális / nemideális D flip-flop időzítési tulajdonságai.

·       Metastabilitás jelensége és kvalitatív magyarázata dinamikus master/slave D flip-flop esetén. Metastabilitás órajeltartományok határán.

·       CDC, szinkronizálók: double flopping, toggle pulse synchronizer, hand-shake pulse synchronizer, Gray synchronizer, recirculation mux synchronizer, recirculation mux synchronizer + hand-shake.

·       Reset szinkronizálás: szinkron/aszinkron meghúzás/elengedés, fan-out kiegyenlítés, reset szekvenciák.

7. hét: Funkcionális verifikáció I.

·       A funkcionális verifikáció alapfogalmai

·       Verifikáció típusai (BB, GB, WB)

·       Gerjesztés előállítása (irányított teszt, random, constrained random)

·       Kódlefedés

8. hét: Funkcionális verifikáció II.

·       Self-cheking tesztkörnyezetek, regressziós tesztelés.

·       Verifikációs komponensek (BFM modellek, protokoll-monitorok), debug és error injection interfész.

·       Naplózás, riportgenerálás

9. hét: Statikus időzítésvizsgálat

  • Digitális CMOS áramkörök késleltetései, a Liberty adatbázis
  • Időzítési vizsgálatok típusai (statikus/dinamikus)
  • Az SDC (Synopsys Design Constraint) fájlok szerepe a statikus időzítésvizsgálatban.

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 (watchdog, FSM)
  • Az automatizált RTL szintézis folyamata I.: RTL optimalizációs módszerek, állapotkódolások

12. hét: RTL szintézis és optimalizáció II.

  • Az automatizált RTL szintézis folyamata II.: Technológiafüggetlen logikai optimalizáció (constant folding, logikai minimalizálás, factorization, flattening)
  • Az automatizált RTL szintézis folyamata III.: Technológiafüggő logikai optimalizáció (register balacing, komplex kapuk, scan-path insertion)
  • A fizikai szintézis algoritmusai

13. hét: RTL optimalizáció és timing closure esettanulmányok

  • Szorzó modul optimalizációja
  • FSM kimeneti logika optimalizációja
  • Hosszú számlánc optimalizációja
  • FPGA-k dedikált órajelelosztó hálózatai

14. hét: A félév elején kiadott házi feladatok bemutatása.

A tárgyhoz tantermi gyakorlat (2 óra/2 hét) tartozik:

1. hét: RTL kapcsolási séma készítése informális (szöveges) specifikáció alapján.

3-5. hét: Szintetizálható VHDL / SystemVerilog modell készítése RTL kapcsolási séma és szöveges specifikáció alapján.

7. hét: Egyszerű tesztkörnyezet készítése VHDL / SystemVerilog nyelven és hullámforma-alapú funkcionális verifikáció.

9. hét: Automatizált regressziós tesztelésre alkalmas tesztkörnyezet készítése VHDL / SystemVerilog nyelven.

11. hét: Egyszerű áramköri modell automatizált RTL szintézise FPGA technológiára, statikus időzítésvizsgálat.

13. hét: Egyszerű áramköri modell post-place&route időzítési szimulációja.

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/2 hét) tartozik.
10. Követelmények

Az aláírás feltétele

·       Jelenlét az előadások legalább 70%-án.

·       Jelenlét a tantermi gyakorlatok legalább 70%-án.

·                   A nagyzárthelyi elégséges szintű teljesítése, melyet a 11. oktatási héten tartunk.

·       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: Egy kijelölt, szűkebb tématerület szakirodalom alapján való feldolgozása és bemutatása a félév végén.

Vizsga

 

·       A tárgyból írásbeli vizsgát tartunk.

11. Pótlási lehetőségek
  • A nagyzárthelyi a pótlási időszakban egy alkalommal pótolható, pót-pót-ZH alapból nincs.
  • 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.

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka

Kontakt óra

42

Készülés előadásokra

7

Készülés gyakorlatokra

7

Készülés laborra

0

Készülés zárthelyire

16

Házi feladat elkészítése

8

Önálló tananyag-feldolgozás

8

Vizsgafelkészülés

32

Összesen

120

15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

 

Dr. Horváth Péter

adjunktus

Elektronikus Eszközök Tsz

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
  • A jeles alsó ponthatára feletti összes többlet pontszámot IMSc pontszámnak számolunk (legfeljebb 5 pont).
  • További 10 pontot lehet szerezni a zárthelyin választható kiegészítő feladattal is. A kiegészítő feladatot tartalmazó ZH-ra előzetesen jelentkezni kell. A kiegészítő feladatot csak az alap feladatok 75%-os teljesítése mellett pontozzuk, és az itt megszerzett pontok az aláírás megszerzésére nem használhatóak fel.
  • Az IMSc pontok megszerzése a programban részt nem vevő hallgatók számára is biztosított.