Tantárgy » BMEVIHIA210
Számítógép-architektúrák
Computer Architectures
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
—
| Tantárgy neve (magyarul, angolul) |
Számítógép-architektúrák
Computer Architectures
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIHIA210 | ||||||||||||
| 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 |
DR. Horváth Gábor
beosztás: egyetemi tanár
elérhetőség:
horvath.gabor@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Hálózati Rendszerek és Szolgáltatások Tanszék
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | http://www.hit.bme.hu/~ghorvath/szgarch/ | ||||||||||||
| 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
Tantárgyprogram
Előadások
Gyakorlatok
- Információfeldolgozási modellek. A vezérlésáramlásos, az adatáramlásos és az igényvezérelt információfeldolgozási modell.
- A vezérlésáramlásos modell megvalósítása. Vezérlésáramlásos architektúrák: Neumann architektúra, Harvard architektúra, módosított Harvard architektúra. Utasításkészletek jellemzői, CISC-RISC stratégiák.
- Perifériakezelés. Perifériakezelési módszerek: forgalomszabályozás, perifériák jelzéseinek feldolgozása, a processzor tehermentesítése. Busz alapú összeköttetések jellemzői: időzítés, arbitráció. Egy-, több-buszos, ill. híd alapú rendszerek.
- Tár technológiák. Memória technológiák: SRAM és DRAM összevetése. Aszinkron DRAM technológiák: FPM-, EDO-, BEDO-DRAM. Szinkron DRAM technológiák: SDR-, DDR-, DDR2-, DDR3-, GDDR-DRAM. Háttértárak: HDD, SSD.
- Memóriakezelés. Tárbővítés: tömbkapcsolás, indexelt leképzés. Virtuális tárkezelés: címfordítás, TLB szerepe, laptábla implementációk: egyszintű, hierarchikus, virtualizált és inverz laptáblák. Tárvédelem. Tárkezelés az x86, az x64, az ARM, a PowerPC és a SPARC architektúrákban.
- Cache memória. Lokalitási elvek szerepe. Cache szervezések: direkt leképzés, teljesen asszociatív és több utas asszociatív szervezés. Cache szervezés és a virtuális tárkezelés viszonya. Cache tartalom menedzsment: cache szemetelés megelőzése, idő előtti betöltés, blokk csere algoritmusok.
- Pipeline utasításfeldolgozás. Pipelinle elv. Egymásrahatások szerepe és feloldásuk. Egyszerű 5 fokozatú pipeline implementációja. Kivételek, megszakítások kezelése a pipeline-ban. Eltérő késleltetésű aritmetikai műveletek kezelése.
- Szuperskalár processzorok. In-order szuperskalár pipeline: nehézségek és skálázhatósági kérdések. Out-of-order utasításfeldolgozás: scoreboard, Tomasulo algoritmus (regiszer átnevezés, utasítástároló, sorrendvisszaállító buffer). Memória egyértelműsítés. Utasításfeldolgozás valós processzorokban: x86, ARM, PowerPC pipeline-ok.
- VLIW/EPIC architektúrák. A statikus ütemezés elve. VLIW és EPIC architektúrák jellegzetességei. Hatékonyságot javító technikák: cikluskifejtés, szoftver pipeline. Predikátumok. Spekulatív betöltés.
- Elágazásbecslés. Ugrási feltétel kimenetelének becslése: egyszerű állapotgép alapú megoldások, korreláció figyelembe SIMD feldolgozás. Vektorprocesszorok: műveleti egységek és a memóriaelérés jellegzetes megoldásai.
- SIMD utasításkészlet kiegészítések.. Az SSE, az AVX, a NEON és az AltiVec SIMD utasításkészlet összehasonlítása. Tömbprocesszorok: klasszikus, szisztolikus és hullámfront tömbprocesszorok. Szisztolikus tömbprocesszorok tervezése. Tömbprocesszorok hibatűrése.
- Multiprocesszoros rendszerek. Explicit párhuzamosság fogalma. Több szálat kezelő processzorok. Multiprocesszoros rendszerek osztályozása (osztott memóriás, ill. üzenetalapú rendszerek). Összeköttetés hálózatok: topológiák, útvonalválasztás, skálázhatósági kérdések.
- Osztott tárkezelés. Cache koherencia protokollok: hallgatózás és könyvtár alapú megoldások. Memória konzisztencia problémák és megoldások. Szinkronizáció: kölcsönös kizárás, barrier fogalma, tranzakcionális memória.
- Bevezetés a kvantum számítástechnikába.
Gyakorlatok
- Egyszerű perifériakezelés gyakorlása egy komplett tervezési példán keresztül 1: a hardver megtervezése.
- Egyszerű perifériakezelés gyakorlása egy komplett tervezési példán keresztül 2: a szoftver megtervezése.
- Fejlett perifériakezelés: a PCI és a PCI Express csatolófelületek
- Fejlett perifériakezelés: az USB csatolófelület
- Tárkezelés gyakorlat 1: Tárbővítés, virtuális tárkezelés és a cache memória ismeretek elmélyítése és gyakorlása numerikus példákon keresztül.
- Tárkezelés gyakorlat 2: Tárbővítés, virtuális tárkezelés és a cache memória ismeretek elmélyítése és gyakorlása numerikus példákon keresztül.
- Tárkezelés gyakorlat 3: Tárbővítés, virtuális tárkezelés és a cache memória ismeretek elmélyítése és gyakorlása numerikus példákon keresztül.
- Lokalitás-tudatos programozási technikák bemutatása.
- Pipeline gyakorlat 1: Egymásrahatások felismerésének, az utasítások ütemezésének, és optimális átrendezésének gyakorlása numerikus példákon keresztül.
- Pipeline gyakorlat 2: Sorrenden kívüli végrehajtás és a statikus ütemezés gyakorlása numerikus példákon keresztül.
- SIMD feldolgozás gyakorlat: vektorizálás, redukció bemutatása és gyakorlása egyszerű algoritmusokon. Az SSE utasításkészlet kiterjesztés megismerése, egyszerű felhasználása.
- Explicit párhuzamosság: néhány egyszerű, közismert algoritmus párhuzamosítása
A számítógép-architektúrák alapfogalmainak, analízisének, alkalmazási és tervezési módszereinek olyan tárgyalása, mely az előismeretek felhasználásával kellő elvi alapot ad a további speciális ismeretbővítésre és az alapvető hardver és szoftver feladatok formális kezelésére és gyakorlati megvalósítására.
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
Heti 2 óra előadás, heti 2 óra gyakorlat.
Tanulástámogató anyagok
Online források
Az előadások és gyakorlatok anyagát teljesen lefedő elektronikus anyag, gyakorló szoftverek és irodalmak letölthetők a tantárgy weboldaláról.
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Tudás típusú kompetenciák
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Digitális technika és Programozás alapjai
Képesség típusú kompetenciák
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Digitális technika és Programozás alapjai
Általános szabályok
Követelmények:
2 félévközi nagyzárthelyi "megfelelt" minősítéssel.
Pótlási lehetőségek:
Szorgalmi időszakban 2 pótzárthelyi (mindegyik ZH-ra 1-1), pótlási időszakban 1 pót-pót ZH.
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
Nincs megadva.
Ajánlott tantárgyak
Kötelező:
TárgyEredmény( "BMEVIMIA111" , "aláírás" , _ ) >0
VAGY TárgyEredmény( "BMEVIMM1220" , "aláírás" , _ ) >0
VAGY Aláírás( ahol a TárgyKód = "BMEVIIIA108", ahol a Ciklus = tetszőleges)
VAGY TárgyEredmény( "BMEVIFO2238" , "aláírás" , _ ) >0
VAGY
Szakirány( ahol a SzakirányKód = "KIEGIBSC", ahol a Ciklus = "2007/08/1")
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:
Programozás alapjai 1. kredit
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
Tantárgykövetelmények hatályosságának kezdete:
—
Tantárgykövetelmények hatályosságának vége:
—
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.