K-INFO
HU
EN
Belépés

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)
Kurzustípus elmélet gyakorlat laboratóriumi gyakorlat
óraszám (heti) 2 2 0
jelleg (kapcsolt/önálló) — kapcsolt —
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
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
  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. 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.
  10. 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.
  11. 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.
  12. 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.
  13. 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.
  14. Bevezetés a kvantum számítástechnikába.

Gyakorlatok
  1. Egyszerű perifériakezelés gyakorlása egy komplett tervezési példán keresztül 1: a hardver megtervezése.
  2. Egyszerű perifériakezelés gyakorlása egy komplett tervezési példán keresztül 2: a szoftver megtervezése.
  3. Fejlett perifériakezelés: a PCI és a PCI Express csatolófelületek
  4. Fejlett perifériakezelés: az USB csatolófelület
  5. 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.
  6. 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.
  7. 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.
  8. Lokalitás-tudatos programozási technikák bemutatása.
  9. 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.
  10. Pipeline gyakorlat 2: Sorrenden kívüli végrehajtás és a statikus ütemezés gyakorlása numerikus példákon keresztül.
  11. 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.
  12. 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.