Hardver alapok

A tantárgy angol neve: Hardware Basics

Adatlap utolsó módosítása: 2018. június 25.

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
VIIIBA01   4/0/2/v 7  
3. A tantárgyfelelős személy és tanszék Dr. Pilászy György,
4. A tantárgy előadója

Dr. Pilászy György, Irányítástechnika és Informatika Tanszék

6. Előtanulmányi rend
Kötelező:
Training.Code=("5N-A9")

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.

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

A számítógépek működési elveinek, tipikus egységeinek és építőelemeinek megismertetése.
A tárgy rendeltetése, hogy egyszerű példákon keresztül megadja mindazokat az alapfogalmi és rendszertechnikai alapismereteket, amelyek a számítógépekben található digitális hardverelemek működésének megértéséhez szükségesek. Az előadásokon az elméleti ismereteket gyakorlati példákkal is illusztráljuk. A megszerzett gyakorlati ismereteket a hallgatók vezetett laborgyakorlatokon próbálják ki.
A tárgy keretében a hallgatók:
(K1) Megismerik a digitális számítógépekben alkalmazott számábrázolási módokat, a kettes számrendszer és a Boole algebra alapjait. Megismerik a digitális alapműveleteket, alapáramköröket, a kombinációs és sorrendi hálózatok működésének alapjait. Megismerkednek a digitális számítógépek belső egységeinek (processzor, memória, perifériák) felépítésével, és az assembly programozás alapjaival.

(K2) Megértik a kombinációs és sorrendi hálózatok működésének alapjait. Megértik a korszerű számítógépek teljesítményének növelése érdekében alkalmazott alapelveket (Memória hierarchia, gyorsító tár, virtuális tárkezelés, Pipe line elv).

(K3) Alkalmazni tudja a tanult ismereteket kombinációs és sorrendi hálózatok tesztelésére, egyszerű mikrokontrolleres szubrutinok elkészítésére.


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

Az előadások tematikája:

Hét

Előadások anyaga

1.

Bevezetés, számítógépek kialakulása, Neumann- és Harvard-architektúra, mai számítógépeink felépítése, főbb alkatrészei, IC fogalma, jelentősége. Feszültség logika szerepe a számítógépek működésében.

2.

Adatok ábrázolása a számítógépekben. Kettes, 10-es 16-os számrendszerek kezelése, Bináris aritmetika megvalósítása funkcionális építőelemekkel (teljes összeadó), Negatív számok ábrázolása, fixpontos és lebegőpontos számábrázolás.

3.

Logikai változók, logikai érték, Boole algebra. Logikai függvények megadási módjai, egyszerűsítésük. Szöveges feladat alapján igazságtábla felvétele.

4.

Logikai alapműveletek, kapuk. Logikai függvény ábrázolása kapukkal. Multiplexerek, kódátalakítók. Logikai függvény megvalósítása multiplexerrel.

5.

Sorrendi hálózatok alapjai, állapottábla, elemi sorrendi hálózatok (D, JK, T, SR és DG flip-flopok). Egyszerű sorrendi hálózat megvalósítása flip-flopokkal.

6.

Számláló áramkörök, egyszerű műveletek számlálókkal. Léptető regiszterek.

7.

Egy konkrét mikrokontroller felépítése (CPU, ALU, regiszerek), fontosabb periféria áramkörök. Gépi kódú program végrehajtásának lépései, pipeline-elv.

8.

Assembly programozás alapjai, gépi utasítások, fordítói direktívák.

9.

Mikrokontrolleres fejlesztő rendszerek, programok tesztelése fejlesztő rendszerben.

10.

Időzítők és időzítőn alapuló perifériák (Input capture, output compare, PWM). Soros adatátvitel, fontosabb interfészek (UART, I2C, SPI).

11.

Megszakításkezelés. Perifériák tipikus kezelése (szoftverrel ellenőrzött készenléttel, megszakítással). Közvetlen adatátvitel a perifériák és a memória között (DMA).

12.

Korszerű memória áramkörök (ROM, EPROM, EEPROM, FLASH, FRAM, RAM, DRAM). Memóriák címzése, bővítése (szóhossz, kapacitás növelése). Sínrendszerek szerepe a számítógépekben.

13.

Számítógépek hierarchikus memória felépítése. Memória sebesség problémák és kezelésük. Gyorsítótárak működésének elve, direkt, részben- és teljesen asszociatív gyorsító tárak. Memória kapacitás problémák és kezelésük. Virtuális tárkezelés elve. Háttértárak működési elve (HDD, SSD)

14.

Multi programozott és multi processzoros rendszerek. Többmagos processzorok. Védelmi megoldások multi processzoros környezetekben (privilegizált utasítások, szegmentálás). (Konkrét példák az Intel-64 architektúrából)

A gyakorlatok (laborok) tematikája:

Labor

Laborgyakorlatok anyaga

1.

Balesetvédelmi tájékoztató, csoportbeosztás.
Logikai áramkör szimulátor megismerése, bináris számok előállítása, megjelenítése. Teljes összeadó blokk működtetése, eredmény megjelenítése, kettes komplemens ábrázolással. Mérőpanel kipróbálása.

2.

Igazság tábla felvétele, szimulátoros környezetben egyszerű logikai hálózat tesztelése. Egyszerű áramkör elkészítése szimulátorban és mérőpanelen. A működés dokumentálása.

3.

Sorrendi hálózat építőelemeinek kipróbálása (D és J-K flipflop), egyszerű sorrendi hálózat (számláló, léptető regiszter) összeállítása, működtetése, tesztelésének megtervezése, teszt végrehajtása. A feladatok kipróbálása szimulátorban és mérőpanelen.

4.

Mikrokontrolleres fejlesztői környezet megismerése, egyszerű assembly program fordítása, szimulálása, javítása. Szoftveres időzítés készítése, beállítása szimulátor segítségével.

5.

Egyszerű sorrendi vezérlési feladatok (számláló, léptető regiszter) megvalósítása mikrokontrollerrel.

6.

Periféria kezelés megvalósítása (SPI kijelző kezelés) és hardveres időzítő gyakorlati alkalmazása. Megszakítás kezelés gyakorlati alkalmazása. Időzítés és IT kezelés szimulátoros ellenőrzése.

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

Heti 4 óra előadás, amelyen az elméleti alapok ismertetésén túlmenően szemléltető példák megoldására is sort kerítünk. Az előadások anyagának mélyebb elsajátítása érdekében kéthetente 4 óra laboratóriumi gyakorlatot is tartunk. A laborfoglalkozások alkalmával a hallgatóknak lehetőségük nyílik a tanult ismeretek kipróbálására szimulációs és valós hardver környezetben egyaránt.

10. Követelmények

A szorgalmi időszakban:
  Részvétel az előadásokon.
  Aktív részvétel a laboratóriumi foglalkozásokon, amelynek teljesítése a
  foglalkozás során elkészített és elfogadott jegyzőkönyvhöz kötött.
  A jelenlétet és a teljesítést a laborvezetők ellenőrzik és dokumentálják.
  A hallgatók felkészültségét a mérés elején beugró dolgozat formájában
  a laborvezetők ellenőrizhetik. Felkészületlen hallgató a mérést nem kezdheti meg.

  A félév közepén egy nagyzárthelyi eredményes megírása.
  Az elégséges szint minimum 40%.
  A ZH pontos időpontja a Kari ütemezés szerint változhat.

A félév végi aláírás feltételei:
  A laborfoglalkozások sikeres teljesítése és a zárthelyi eredményes megírása.

A vizsgaidőszakban:
  Írásbeli vizsga, időtartama 90 perc, ebből az első 30 perc beugró feladatok
  megválaszolása. A vizsgán elérhető maximális pontszám 60, ebből 20 a belépő rész
  és 40 pont a nagyfeladatok megoldásával szerezhető meg.

Az osztályzat megállapításának módja:
    A vizsgapontszám alapján. Az elégséges osztályzathoz a belépő kérdésekből legalább 12 pontot, a vizsgán összesen legalább 24 pontot kell elérni. A vizsgajegy a kapott pontszám alapján kerül megállapításra.

A kreditpont megszerzésének feltétele legalább elégséges vizsgaosztályzat elérése.

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

A félévközi zárthelyi egy alkalommal pótolható a kari ütemezés szerint.
Egy laborfoglalkozás pótolható. Ennek beosztása a félév ütemezése szerint.

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

Igény esetén a hallgatókkal egyeztetett helyen és időpontban.

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

A tárgy honlapján közzétett elektronikus anyagok.

Dr. Arató Péter: Logikai rendszerek tervezése, BME Printer kft, 2011 (55013).

 

További ajánlott irodalom érdeklődő hallgatóknak:

Horváth Tamás, Pilászy György: Digitális technikai alapmérések, BME Viking Zrt, 2017, VI205011

William Stallings: Computer Organization and Architecture 10th Edition, Prentice Hall, 2016

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra84
Félévközi készülés órákra14
Felkészülés zárthelyire28
Felkészülés a laborgyakorlatokra
20
Kijelölt írásos tananyag elsajátítása0
Vizsgafelkészülés64
Összesen210
15. A tantárgy tematikáját kidolgozta

Dr. Pilászy György

Egyetemi docens

Irányítástechnika és Informatika Tanszék

Dr. Horváth Tamás

Tudományos munkatárs

Irányítástechnika és Informatika Tanszék

Rácz György

Egyetemi tanársegéd

Irányítástechnika és Informatika Tanszék