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ó    

    Digitális technika

    A tantárgy angol neve: Digital Design

    Adatlap utolsó módosítása: 2019. június 6.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar
    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIMIAA02   2/1/2/v 6  
    3. A tantárgyfelelős személy és tanszék Dr. Fehér Béla,
    A tantárgy tanszéki weboldala http://www.mit.bme.hu/oktatas/targyak/vimiaa02
    4. A tantárgy előadója

    Dr. Fehér Béla

    egyetemi docens

    MIT

    Dr. Benesóczky Zoltán

    mestertanár

    MIT

    5. A tantárgy az alábbi témakörök ismeretére épít -
    6. Előtanulmányi rend
    Kötelező:
    NEM (TárgyEredmény("BMEVIMIA111", "jegy", _) >= 2
    VAGY
    TárgyEredmény("BMEVIMIA111", "felvétel", AktualisFelev()) > 0
    VAGY
    TárgyEredmény("BMEVIMIAA01", "jegy", _) >= 2
    VAGY
    TárgyEredmény("BMEVIMIAA01", "felvétel", AktualisFelev()) > 0
    VAGY
    TárgyEredmény( "BMEVIMIAA01" , "aláírás" , _ ) = -1)

    ÉS (Training.Code=("5N-A8") VAGY Training.Code=("5NAA8"))

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    A kötelező előtanulmányi rendek grafikus formában itt láthatók.

    Ajánlott:
    -
    7. A tantárgy célkitűzése

    A Digitális technika egy fontos alapozó tárgy a mérnökinformatikus szak tantervében, és legfontosabb célkitűzése a mérnöki feladat megközelítés bemutatása, az alapvető gyakorlati ismeretek, önálló probléma megoldási készségek kialakítása. A tárgy bemutatja a számítástechnikai rendszerek alapelemeinek működését, a digitális absztrakció tulajdonságait, az egyszerűbb feladatok közvetlen hardveres, ill. alacsonyszintű szoftveres megoldását. A bináris aritmetika, a műveletvégzők, funkcionális egységek, vezérlők tervezésének bemutatásán keresztül jut el az általános célú mikrovezérlő architektúra ismertetéséig, az elemi CPU használat, periféria illesztés alkalmazásáig. A tárgyhoz kapcsolódó gyakorlatok és laboratóriumi foglalkozások során a hangsúly a korszerű számítógépes tervezői módszerek elsajátításán és a közvetlen, alapfokú tervezési/fejlesztési tapasztalatszerzésen van.A Digitális technika egy fontos alapozó tárgy a mérnökinformatikus szak tantervében, és legfontosabb célkitűzése a mérnöki feladat megközelítés bemutatása, az alapvető gyakorlati ismeretek, önálló probléma megoldási készségek kialakítása. A tárgy bemutatja a számítástechnikai rendszerek alapelemeinek működését, a digitális absztrakció tulajdonságait, az egyszerűbb feladatok közvetlen hardveres, ill. alacsonyszintű szoftveres megoldását. A bináris aritmetika, a műveletvégzők, funkcionális egységek, vezérlők tervezésének bemutatásán keresztül jut el az általános célú mikrovezérlő architektúra ismertetéséig, az elemi CPU használat, periféria illesztés alkalmazásáig. A tárgyhoz kapcsolódó gyakorlatok és laboratóriumi foglalkozások során a hangsúly a korszerű számítógépes tervezői módszerek elsajátításán és a közvetlen, alapfokú tervezési/fejlesztési tapasztalatszerzésen van.      

     

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

    1. EA1: Bevezetés, a digitális technika világa. A digitális reprezentáció: adatábrázolás, kódolás. Számrendszerek, számábrázolások (egész, valós) tulajdonságai (tartomány, felbontás). Verilog HDL nyelvi alapok ismertetése (modul, bemenet, kimenet, funkció).

    GY1: Számrendszerek, kódok, kódkonverzió (BIN-BCD, BCD-BIN). Bináris aritmetika.

    L1: Eszközkészlet, tervezői környezet bemutatása. Első projekt elkészítése (kapcsoló → LED). 

    2.   EA2: Logikai kapcsolatok, Boole algebra. Logikai függvények, kombinációs hálózatok. Specifikáció, reprezentáció. Alapelemek, kapuk, kétszintű hálózatok, az SOP realizáció. Minimalizálási algoritmusok.

    GY2: Logikai függvények használata (specifikáció, egyszerűsítés, realizáció). Egyszerű feladatok megoldása, 1 bites és több bites összeadó.

    L2: Kombinációs hálózatok tervezése Verilog HDL használatával. Elemi logikai függvények egybites és több bites változókra

    3. EA3: Funkcionális egységek, univerzális elemkészletek. Az élvezérelt DFF, mint szinkron mintavevő tároló. A több bites regiszter, mint összetett alapelem. A konfigurálható FPGA alaperőforrásai: logikai cella (LUT + DFF), I/O cella, huzalozás (kapcsolók).

    GY3: Az általános kombinációs funkcionális egységek használata. 4 számjegyes kijelző tervezése.

    L3: A 7 szegmenses kijelző használata. 4 bemenetű – 7 kimenetű kombinációs hálózat tervezése.

    4.  EA4: EA4: A szinkron működés modellezése HDL nyelven. Az általános szekvenciális logika. FSM elrendezések, állapotregiszter, állapotátmeneti és kimeneti függvények. Specifikációs eszközök: állapotdiagram, állapottábla. Verilog HDL alapú FSM specifikációs stílusok, egyesített és szétválasztott leírás.

    GY4: Egyszerű sorrendi hálózatok tervezése, állapotdiagramjának felrajzolása. A HDL specifikáció megtervezése az általános FSM modell alapján.

    L4: 4 bites kódadó FSM tervezése, fix és beállítható kóddal. Működés idődiagramjának ellenőrzése szimulációval.  

    5. EA5: Az általános multifunkciós regiszter felépítése, vezérlési függvények származtatása. Kódolt és dekódolt vezérlés. Alapállapot beállítás, töltés, engedélyezés, és egyedi műveletek kiválasztása.

    GY5: Általános célú sorrendi logikai elemek tervezése. Interfészjelek, vezérlőjelek használata. Bináris számlálók.

    L5: Teljes 4 digites 7 szegmenses kijelző egység felépítése. Bináris számláló megtervezése.

    6.   EA6: Adatfeldolgozó egységek tervezése, példák egyszerűbb feladatokra (ADD, SUB, COMP). Regiszterek, Stack, FIFO. SRAM memóriák használata, tulajdonságai.  

         GY6: Mintakereső feladat bemutatása, a tervezés lépései.

    L6: Mintakereső áramkör megvalósítása 256 bájtos ROM memóriához. Feladat: Előírt tulajdonságú adatbájt megkeresése, {cím, adat} kijelzése a 4 digites kijelzőn előre elkészített modulok felhasználásával.

    7. EA7: A regisztertranszfer szintű tervezés. Vezérlő és adatfeldolgozó egységek együttes specifikációja. Vezérlők tervezése HLSM és ASM megközelítéssel. Elemi műveletek, feltételek kezelése. Állapotátmenetek, vezérlési szerkezetek.

    GY7: Digitális rendszer tervezése a legnagyobb közös osztó (GCD) meghatározásához. Az algoritmus áttekintése, a feldolgozás lépései, a szükséges műveleti egységek és vezérlőjelek meghatározása. A vezérlőegység állapotdiagramja és megtervezése.

    L7: A GCD egység Verilog HDL kódjának elkészítése, szimulációja, megvalósítása.

    8.   EA8: Az általánosított adatfeldolgozó egység. Be- és kimeneti interfészek. Adatméret, műveletek szabványosítása. Az általános adatstruktúra elemei: memória, regiszterek/regisztertömb, stack, ALU, státuszjelző bitek.

      GY8: A MiniRISC GUI bevezetése, szerkesztés, fordítás, ellenőrzés, lépésenkénti végrehajtással elemi (3-4 utasításos) ASM minta programokon.

    L8: A MiniRISC GUI bemutatása. Az előadáson elkészített forráskódok használata, fordítás, letöltés, futtatás. Hibakeresés/javítás lehetőségei. Tipikus ASM programozási minták: ciklus szervezés, indirekt adatcímzés, időzítés alkalmazása. (Esetleg néhány kurzusnak elmarad, Okt. 23., Nov. 1.).

    9. EA9: A MiniRISC mikrovezérlő/mikroprocesszor felépítésének bemutatása. Programtár, programszámláló, utasítás végrehajtási fázisok: F-D-E. Az utasítás végrehajtás FSM modellje. Az utasítás architektúra (IA) jelentősége, utasítás felépítés. Utasításkészlet elemzése. Operandus elérés, címzési módok.

    GY9: MiniRISC CPU felépítése, blokkvázlat. A MiniRISC gépi kódú programozása, 2-3 egyszerű program elkészítése (max. 10-20 utasítás!)

    L9: A MiniRISC GUI bemutatása. Az előadáson elkészített forráskódok használata, fordítás, letöltés, futtatás. Hibakeresés/javítás lehetőségei. Tipikus ASM programozási minták: ciklus szervezés, indirekt adatcímzés, időzítés alkalmazása. (Esetleg néhány kurzusnak elmarad, Okt. 23., Nov. 1.).

    10. EA10: A mikroprocesszoros busz. Cím, adat, vezérlő jelek. Buszok jellemzői, buszciklus fogalma. Perifériakezelés fogalma, alapvető műveletek: címdekódolás, parancsjelek előállítása, Buszillesztő logika elemei: adat regiszterek, parancs/státusz regiszterek. Perifériakezelés feladatai: alaphelyzetbe állítás, üzemmód beállítás, indítás.

      GY10: Egyszerű periféria eszközök (LED, kapcsoló) felépítésének, használatának ismertetése.

    L10: Lekérdezéses periféria kezelés használata LED vezérléshez.

    11. EA11: A mikrovezérlők tipikus perifériaegységei: A GPIO periféria. Jelentése, áramköri felépítés, jellemző szolgáltatások, használat (IN/OUT/INOUT).

        GY11: LCD kijelző működtetése GPIO interfész és programozott átvitel használatával  

    L11: LCD kijelző működtetése GPIO interfész és programozott átvitel használatával. Karakter sorozat kiírása LCD-re memóriából.

    12.  EA12: Az időzítő egység. Jelentése, jellemző szolgáltatások, használat. Ütemezés, időzítés, mérés, periodikus jelalakok A megszakítás fogalma, jelentősége. A processzor működése megszakítás használata esetén.

         GY12: PWM vezérlőjel előállítása időzítővel GPIO kimeneten.

    L12: Mikroszervo motor vezérlés tervezése programozott időzítő alapú PWM vezérléssel, GPIO interfészen.

    13. EA13: Mikrovezérlők adatátviteli interfészei: soros UART/USRT, SPI, I2C.

    GY13: Egyszerű szoftveres SPI interfész megvalósítás GPIO segítségével.  

    L13: Adatblokk mozgatása a memóriából az USRT periférián át a PC terminálra. Hőmérséklet szenzor adatainak beolvasása szoftver SPI rutinnal és kijelzése hétszegmenses kijelzőn.

    14. EA14: Félévi tematika áttekintése. A digitális technika alkalmazása beágyazott rendszerekben. HW-SW együttes kezelése a rendszermegvalósítás során. Összetett hierarchikus rendszerek tervezése.

          GY14: -

          L14: Pótlási alkalom 

    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Előadás, gyakorlat, labor.
    10. Követelmények

    A szorgalmi időszakban:

    A tárgy előadásainak, gyakorlatainak és laboratóriumi foglalkozásainak látogatása kötelező. A jelenlét ellenőrzése az előadásokon központilag, a gyakorlatokon és laborfoglalkozáson egyedileg történik.  Aláírást nem kaphat az a hallgató, aki az előadások több, mint 30%-ról vagy több, mint 4 gyakorlatról, illetve több, mint 2 laboratóriumi gyakorlatról hiányzott. Az órarendi szünetek miatt elmaradó gyakorlatok, laboratóriumi foglakozások nem számítanak hiányzásnak.   

    A szorgalmi időszakban a hallgatók 1 db zárthelyi dolgozatot (max. 60 pont) és 2 db házi feladatot (2x15 pont) készítenek el egyénileg. A laboratóriumi foglalkozásokhoz külön számonkérés nem tartozik, az előírt feladatokat sikeresen teljesítők alkalmanként 1-1 pontot kaphatnak.

    A félévvégi aláíráshoz a jelenléti követelmények teljesítése és összességében (ZH+HF+LAB) minimum 40 pont elérése szükséges. 

    A vizsgaidőszakban:

    A tárgyból írásbeli vizsgát tartunk. Az elégséges osztályzathoz a vizsgadolgozat minimum 40%-os teljesítése szükséges. Az osztályzat megállapítása 75%-ban az írásbeli vizsga és 25%-ban a félévközi pontszám alapján történik.   

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

    A félév során és a pótlási időszakban egy-egy pótzárthelyi alkalmat biztosítunk. A félév során (utolsó héten) és a pótlási héten egy-egy laboratóriumi jelenlét pótolható.

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

    A tárgy oktatói igény szerint biztosítanak konzultációs lehetőséget.

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

    Frank Vahid: Digital Design, John Wiley & Sons, 2007, (ISBN 978-0-470-04437-7)

    Milos Ercegovac, Tomás Lang, Jaime H. Moreno: Introduction to Digital Systems, John Wiley & Sons, 1999, (ISBN 0-471-57299-8)

    Richard S. Sandige: Digital Design Essentials, Prentice Hall, 2002, (ISBN 0-201-47689-4)

    David Money Harris, Sarah L. Harris: Digital Design and Computer Architectures, Elsevier, 2013, (ISBN 978-0-12-394424-5)

    Linda Null, Julia Lobur: Computer Organization and Architecture, Jones &Bartlett Learning, 2014, ISBN-13: 9781284045611

     Az előadásvázlatok a tárgy honlapján: www.mit.bme.hu/oktatas/targyak/vimiaa02 érhetők el.

     

    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra70
    Félévközi készülés előadásra7
    Félévközi készülés gyakorlatra
    7
    Félévközi készülés laborra
    14
    Felkészülés zárthelyire18
    Házi feladat elkészítése16
    Vizsgafelkészülés48
    Összesen180
    15. A tantárgy tematikáját kidolgozta

    Dr. Fehér Béla

    egyetemi docens

    MIT

    IMSc tematika és módszer

    Az IMSC képzés számára a tárgy a következő kiegészítéseket biztosítja:

    1. Előadás: Az IMSC képzés részére önálló előadáskurzust nem indítunk.

    2. Gyakorlat: Az IMSC hallgatók számára emelt szintű tanköri foglalkozásokat tartunk. Az emelt szintű gyakorlatokon alaposabb elemzéseket, kiegészített gyakorlati feladatok bemutatását tervezzük. (Ezek a feladatok a többi hallgató számára szorgalmi feladatként jelennek meg.)

    3. Laboratórium: Az IMSC hallgatók számára az emelt szintű laboratóriumi foglalkozások során a mérőcsoportok önálló feladatmegoldását ösztönözzük, az előírt feladatok mellett/helyett megengedve egyéni elképzelések, saját feladatok megfogalmazását és megoldását. 

    IMSc pontozás

    A tárgy teljesítése során a tárgy kreditszámának megfelelő 6*5 = 30 IMSC pontot a következőképpen lehet megszerezni: félév közi követelmények 20 pont, vizsgakövetelmények 10 pont.

    ZH IMSC feladatok 10 pont

    HF IMSC feladatok 10 pont  

    Vizsga IMSC feladatok 10 pont

    Az IMSC pontok megszerzése minden hallgató számára elérhető, de értékelésük csak abban az esetben történik meg, ha az adott számonkérési forma (ZH, HF, vizsga) alapfeladatain elért eredmény eléri a jeles szintet. Az egyes pontok megszerezhetősége nem függ az adott követelmény teljesítésének módjától (pót ZH, határidőn túl beadott HF, pót vagy javító vizsga), az IMSC pontok minden esetben megszerezhetők. 

    Részletek:

    Az IMSC pontok a ZH és vizsgadolgozatok során a dolgozatok F2 és F3 nagyfeladataihoz kapcsolódó kiegészítő feladatok megválaszolásával szerezhetők meg, ha az adott feladat pontszáma elérte a jeles szintet. (5-5 IMSC pont feladatonként)

    A két HF során az alapfeladat kiírásán túl egy kiegészítő IMSC részfeladatot is megfogalmazunk, amelynek megoldásával szerezhető meg az 5-5 IMSC pont, ha egyébként az alapfeladat minősége a jeles szintet elérte.