Tantárgy neve, kódja: Számítógép-architektúrák I., GINFBAN-SZAMARC1-1

Szak neve, képzési szintje: Mérnökinformatikus alapszak, BSc
Tanterv: 2021
Heti órászám (előadás + gyakorlat + labor): 2+0+2
Kreditérték: 5
Elmélet: 50 %
Gyakorlat: 50 %
A tantárgy tantervi helye: 2. félév
Munkarend: Nappali
Előtanulmányi feltételek: Digitális technika I.
Értékelés: kollokvium
Tantárgy besorolása: szakmai törzsanyag
Oktatás nyelve: Magyar
Tantárgyfelelős: Dr. Drenyovszki Rajmund
Felelős tanszék: Informatika Tanszék
Tantárgy oktatója(i): Dr. Pintér István
Ellenőrzésért felel: Prof. Dr. Johanyák Zsolt Csaba
Tárgy oktatásának célja:
A hallgatók digitális technikai ismereteire építve megismertesse a számítógépek és perifériák, a fontosabb interfészek működését, különös tekintettel a gépi utasítás-végrehajtásra és a gépi adattípusokra
Elsajátítandó ismeretanyag előadás:

Számrendszerek, átváltások (2,8,10,16; egész rész és törtrész). Előjel nélküli egész számok ábrázolása (2,16). Számtartomány 8, 16, 32, 64 és N bit esetén. MSB, LSB. Előjeles egész számok ábrázolása kettes komplemens kódban (2, 16). Számtartomány 8, 16, 32, 64 és N bit esetén. Előjel-kiterjesztés, a szám (-1)-szeresének meghatározása, ezzel kapcsolatos utasítások. Lebegőpontos számábrázolás (IEEE-754). A normalizált alak. Az előjeles („természetes”) kitevő bináris ábrázolása. Implicit és explicit bites ábrázolás. A szám szerkezete 32 bites esetben. A lebegőpontos regiszter/verem szervezése, működése, RPN formula. Hasznos lebegőpontos konstansok. BCD számábrázolás (pakolt, pakolatlan, tetrád, pszeudo-tetrád, félbyte-os átvitel). BCD aritmetika támogatása ISA szinten. Kettes komplemens kódú összeadó/kivonó több bites operandusok esetén. Átvitelbit, előjelbit, túlcsordulásbit, zérus jelző, kölcsönbit. Fixpontos aritmetikai utasítások. A Neumann-gép fő részei, feladatuk. Program-terület, adatterület. Veremterület kérdése. B/K kezelés. Önmódosító kód fogalma. A Harvard-gép. Gépi utasítás-végrehajtás menete a Neumann-gépen. ILP és a pipeline, hazardok (WAW, WAR, RAW, RAR) és kezelésük. Feltétel nélküli elágazás, feltételes elágazások összehasonlító utasítás után, feltételes elágazások állapotbitek szerint, feltételes és feltétel nélküli eljáráshívás és visszatérés, a verem szerepe. Statikus és dinamikus elágazás-előrejelzés, megvalósítás véges állapotú géppel. Vektoros megszakítási rendszer és működése. Maszkolható és nem maszkolható megszakítás, szoftvermegszakítás, megszakítással kapcsolatos utasítások. Megszakítás és kivétel. A gépi utasítások szerkezete (négycímes, háromcímes, kétcímes, 1,5 címes, egycímes, nullacímes). RISC és CISC. Négycímes gép és a mikroprogramozott vezérlő. A logikai függvény fogalma. N változós logikai függvények száma. Funkcionálisan teljes rendszer. A Boole-algebra. Logikai függvények algebrai egyszerűsítése. Igazságtáblázattal adott logikai függvény algebrai alakjának felírása, megvalósítás. Logikai utasítások. SRAM és DRAM szervezés és címzés. Paritásbittel védett főtár. Hibajavító kóddal védett főtár (SECDED ECC). A sínkialakítás lehetőségei, összehasonlítás (TP, OC, TS). Adatátvitel szinkron és aszinkron sín esetén, példák. Sín-arbitráció fogalma (decentralizált, centralizált, prioritások). Az 1 bites ALU fő részei (dekódoló, logikai műveletvégző, össszeadó, bemenetek, kimenetek) és elvi kapcsolási rajza. Memória-hierarchia (kapacitás, elérési idő). A gyorsítótár működésének elvei, az átlagos elérési idő számítása, gyorsítór szervezési módszerek, működés írás/olvasás esetén. Digitális összehasonlító elvi kapcsolási rajz példa, alkalmazás gyorsítótárban. Adattárolás mozgó mágneses közegen (írás, olvasás, szervezés, alkalmazás). A megbízhatóság növelése (RAID). HDD és SSD. A számítási teljesítmény növelésének lehetőségei és korlátai. MIPS és FLOPS. A villamos teljesítményfelvétel csökkentésének lehetőségei és korlátai. Magas szintű nyelven írt programtól a gépi utasítás HW megvalósításáig példákkal (szintek, nyelvek, virtuális gépek, értelmező, fordító). "


Elsajátítandó ismeretanyag laboratórium:

Alapismeretek. IA32 gépi utasítás-végrehajtás vizsgálata Visual Studio-valAdatmozgatás, Fixpontos aritmetika, Logikai műveletek, léptetés, forgatás.Feltétel nélküli elágazás. Feltételes elágazások(flagek szerint, a CMP utasítást követően, a TEST utasítást követően)Ciklus-szervezés. Veremkezelés, eljáráshívás és visszatérés.Lebegőpontos utasítások. Egyéb utasítások, táblázattal adott függvény, állapotbitek írása/olvasása.Feladatok és megoldások. "

Elsajátítandó szakmai kompetenciák (tudás, képesség, attitűd, autonómia és felelősség, további szakmai kompetenciák):
Tudása:

tudása - Ismeri az informatikai rendszerek hardver és szoftver elemeinek működését, megvalósításuk technológiáját, működtetéséből származó feladatok megoldásának mikéntjét, valamint informatikai és egyéb műszaki rendszerek összekapcsolásának lehetőségeit. - Ismeri az informatika és a mérnöki szakma szókincsét és kifejezési sajátosságait magyar és angol nyelven, legalább alapszinten.

Képességei:

képességei - Tanulmányai során szerzett ismeretanyagát felhasználva képes beágyazott rendszereket specifikálni és megvalósítani. - Képes a megszerzett alapismeretekre építve egy-egy műszaki informatikai területen mélyebb ismeretek önálló megszerzésére, a szakirodalom feldolgozására, majd a területhez kapcsolódó informatikai problémák megoldására. - Együttműködik informatikusokkal és villamosmérnökökkel a csoportmunka során, és más szakterületek képviselőivel is az adott probléma követelményelemzésének és megoldásának kimunkálása során. - Folyamatosan képezi magát és lépést tart az informatikai szakma fejlődésével.

Attitűdje:

- Hitelesen képviseli a mérnöki és informatikai szakterületek szakmai alapelveit. - A saját munkaterületén túl a teljes műszaki rendszer átlátására törekszik. - Törekszik a hatékony és minőségi munkavégzésre.

Autonómia és felelősség:

- Felelősséget érez az önálló és csoportban végzett informatikai rendszerelemzői, -fejlesztői és -üzemeltetési tevékenységéért. - Feltárja az alkalmazott technológiák hiányosságait, a folyamatok kockázatait és kezdeményezi az ezeket csökkentő intézkedések megtételét.

További szakmai kompetenciák:

- digitális technológia hatékony alkalmazása, tanulási célok elérését szolgáló digitális megoldások ismerete

A számonkérés és értékelés rendszere:
Félévközi tanulmányi követelmények:
Pontszerző dolgozatok az előadás és a gyakorlat anyagából. Ezekkel 100 pont szerezhető. A vizsgára bocsátáshoz legalább 50 pontot kell szerezni.
Vizsgakövetelmények:

A vizsga 60 perces írásbelit követő szóbeli vizsga. A vizsga érdemjegyét a TVSz előírásai szerint állapítjuk meg.

Tanulmányi segédanyagok, laborháttér:

Pintér I.: Számítógép-architektúrák I. Assembly segédlet.; 15 fős számítógépterem, MS Visual Studió

Kötelező irodalom:

A. S. Tanenbaum: Számítógép-architektúrák, Panem, ISBN:9789635454570, 2006 Koszna Ferenc: Assembly nyelvű programozás Visual Studio alatt. Jegyzet. Kecskemét, 2021. ISBN 978-615-5817-67-0

Ajánlott irodalom:

Tanenbaum, Austin: Structured Computer Organization 6th Edition, ISBN-13: 978-0132916523, Pearson, 2013. Hennessy, Patterson: Computer Architecture 6th Edition, ISBN: 9780128119051, Morgan Kaufmann, 2017