Mikroelektronikai áramkörtervezés
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Mikroelektronikai áramkörtervezés
Microelectronic Circuit Design
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIEEAC06 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | vizsga | ||||||||||||
| Tantárgy kreditértéke | 5 | ||||||||||||
| Tantárgyfelelős |
Horváth Péter
beosztás: adjunktus
elérhetőség:
horvath.peter.2@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Elektronikus Eszközök Tanszéke
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | — | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzé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.
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
Tanulástámogató anyagok
Online források
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Általános szabályok
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Ajánlott tantárgyak
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.