Tantárgy » BMEVIHIAA02
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 | BMEVIHIAA02 | ||||||||||||
| 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 | 4 | ||||||||||||
| 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 | — | ||||||||||||
| 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
Az előadások:
Bevezető jellegű ismeretek (1 ea.). Információfeldolgozási modellek megismerése. Vezérlésáramlásos architektúrák: Neumann architektúra, Harvard architektúra, módosított Harvard architektúra.
Perifériakezelés (2 ea.). Dedikált I/O utasítások, és memóriára leképzett perifériakezelés. Forgalomszabályozás. Perifériák jelzéseinek feldolgozása: polling, interrupt, interrupt többprocesszoros környezetben, interrupt moderáció. A processzor tehermentesítése: DMA, I/O processzor. Összeköttetések: busz, pont-pont, soros, párhuzamos, időzítés, arbitráció. Egy-, több-buszos, ill. híd alapú rendszerek. PCI, PCI Express és USB csatolófelületek.
Háttértárolók (1 ea.). Merevlemezek működése: szektor fogalma és részei, zóna rendszerű adattárolás. Az adatátviteli parancsok kiszolgálási idejének főbb összetevői. Parancsok sorbaállítása és soron kívüli ütemezése. SSD háttértárak működése: Lapok, blokkok fogalma és szerepe. Az írás/olvasás megvalósítása és mellékhatásai. Az öregedés oka és jelentősége. Az SSD vezérlő feladatai.
Memória (4 ea). Szinkron DRAM alapú memóriarendszerek: memóriavezérlő, modul, rank, bank fogalma és működése. DRAM parancsok és azok időzítése, parancsok sorok kívüli végrehajtása. Virtuális tárkezelés: címfordítás, TLB, laptábla implementációk, egyszintű éshierarchikus laptáblák. Cache memória: lokalitási elvek szerepe, cache 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. Lokalitástudatos programozási technikák.
Processzor (4 ea). Utasításkészletek jellemzői, CISC-RISC stratégiák.
Pipeline utasításfeldolgozás. Egymásrahatások fogalma és kezelése. Egyszerű 5 fokozatú pipeline implementációja. Eltérő késleltetésű aritmetikai műveletek kezelése. Dinamikus ütemezés (soron kívüli utasítás-végrehajtás). A precedenciagráf fogalma, és az adatfolyam-elvű utasításütemezés. Az utasítástároló, a regiszter-átnevezés és a sorrendvisszaállító buffer szerepe és megvalósítása. A pipeline szélesítése: szuperskalár, VLIW és EPIC architektúrák. Elágazásbecslés: jelentősége, ugrási feltétel kimenetelének becslése, ugrási cím becslése. Elágazásbecslés-tudatos programozás.
Párhuzamos feldolgozás (2 ea.). Adatpárhuzamosság: vektorprocesszorok, SIMD utasításkészlet kiegészítések, tömbprocesszorok. Multiprocesszoros rendszerek: explicit párhuzamosság fogalma, több szálat kezelő processzorok, multiprocesszoros rendszerek osztályozása, az osztott tárkezelésből fakadó problémák.
A gyakorlatok:
- Digitális technika ismétlés egy egyszerű hardver-szoftver tervezési feladaton keresztül
- Perifériakezelés: A CPU perifériakezelésre fordított relatív terhelésének kiszámítása polling és interrupt használata esetén
- Háttértárak: HDD késleltetés és átviteli sebesség számítások, SSD írás menedzsment algoritmusok kézi végig követése
- Memóriakezelés: DRAM parancsütemezés, parancskésleltetési idő számítások, virtuális memóriakezelés példák TLB-vel és anélkül
- Cache memória: Cache szervezések gyakorlása, egyszerű C programokra cache hibaarány-számolás és kódoptimalizálás
- Pipeline ütemezés: Alacsony szintű programok ütemezése különféle utasítás pipeline-okra, optimális utasítássorrend meghatározása
- Fejlett pipeline technikák: Függőségi analízis, álfüggőségek eliminálása regiszter átnevezéssel, elágazásbecslő működésének végig követése egyszerű C programrészletekre
Bevezető jellegű ismeretek (1 ea.). Információfeldolgozási modellek megismerése. Vezérlésáramlásos architektúrák: Neumann architektúra, Harvard architektúra, módosított Harvard architektúra.
Perifériakezelés (2 ea.). Dedikált I/O utasítások, és memóriára leképzett perifériakezelés. Forgalomszabályozás. Perifériák jelzéseinek feldolgozása: polling, interrupt, interrupt többprocesszoros környezetben, interrupt moderáció. A processzor tehermentesítése: DMA, I/O processzor. Összeköttetések: busz, pont-pont, soros, párhuzamos, időzítés, arbitráció. Egy-, több-buszos, ill. híd alapú rendszerek. PCI, PCI Express és USB csatolófelületek.
Háttértárolók (1 ea.). Merevlemezek működése: szektor fogalma és részei, zóna rendszerű adattárolás. Az adatátviteli parancsok kiszolgálási idejének főbb összetevői. Parancsok sorbaállítása és soron kívüli ütemezése. SSD háttértárak működése: Lapok, blokkok fogalma és szerepe. Az írás/olvasás megvalósítása és mellékhatásai. Az öregedés oka és jelentősége. Az SSD vezérlő feladatai.
Memória (4 ea). Szinkron DRAM alapú memóriarendszerek: memóriavezérlő, modul, rank, bank fogalma és működése. DRAM parancsok és azok időzítése, parancsok sorok kívüli végrehajtása. Virtuális tárkezelés: címfordítás, TLB, laptábla implementációk, egyszintű éshierarchikus laptáblák. Cache memória: lokalitási elvek szerepe, cache 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. Lokalitástudatos programozási technikák.
Processzor (4 ea). Utasításkészletek jellemzői, CISC-RISC stratégiák.
Pipeline utasításfeldolgozás. Egymásrahatások fogalma és kezelése. Egyszerű 5 fokozatú pipeline implementációja. Eltérő késleltetésű aritmetikai műveletek kezelése. Dinamikus ütemezés (soron kívüli utasítás-végrehajtás). A precedenciagráf fogalma, és az adatfolyam-elvű utasításütemezés. Az utasítástároló, a regiszter-átnevezés és a sorrendvisszaállító buffer szerepe és megvalósítása. A pipeline szélesítése: szuperskalár, VLIW és EPIC architektúrák. Elágazásbecslés: jelentősége, ugrási feltétel kimenetelének becslése, ugrási cím becslése. Elágazásbecslés-tudatos programozás.
Párhuzamos feldolgozás (2 ea.). Adatpárhuzamosság: vektorprocesszorok, SIMD utasításkészlet kiegészítések, tömbprocesszorok. Multiprocesszoros rendszerek: explicit párhuzamosság fogalma, több szálat kezelő processzorok, multiprocesszoros rendszerek osztályozása, az osztott tárkezelésből fakadó problémák.
A gyakorlatok:
- Digitális technika ismétlés egy egyszerű hardver-szoftver tervezési feladaton keresztül
- Perifériakezelés: A CPU perifériakezelésre fordított relatív terhelésének kiszámítása polling és interrupt használata esetén
- Háttértárak: HDD késleltetés és átviteli sebesség számítások, SSD írás menedzsment algoritmusok kézi végig követése
- Memóriakezelés: DRAM parancsütemezés, parancskésleltetési idő számítások, virtuális memóriakezelés példák TLB-vel és anélkül
- Cache memória: Cache szervezések gyakorlása, egyszerű C programokra cache hibaarány-számolás és kódoptimalizálás
- Pipeline ütemezés: Alacsony szintű programok ütemezése különféle utasítás pipeline-okra, optimális utasítássorrend meghatározása
- Fejlett pipeline technikák: Függőségi analízis, álfüggőségek eliminálása regiszter átnevezéssel, elágazásbecslő működésének végig követése egyszerű C programrészletekre
A tárgy célja, hogy a hallgatók megismerjék legfőbb munkaeszközüknek, a számítógépeknek a felépítését, működését, tulajdonságait. A hardver jellegzetességeinek ismerete hozzájárul ahhoz, hogy a hallgatók képesek legyenek hatékony, a számítógép erőforrásait a lehető legjobban kihasználó szoftver fejlesztésére.
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
Előadás heti 2 órában
Kéthetente egy 2 órás gyakorlat
A tárgy sikeres teljesítése folyamatos tanulást igényel. Ennek keretében az előadások követéséhez szükséges az előző előadásanyag átismétlése, továbbá a gyakorlatokra a feladatmegoldások hatékony begyakorlásához a kapcsolódó előadásanyagokból felkészülés.
Tanulástámogató anyagok
Online források
• A tárgy előadója által készített, a tárgy honlapjáról elérhető elektronikus jegyzet; • David A. Patterson, John L. Hennessy. Computer Organization and Design, Morgan Kaufmann Publishers, 2011.; • Jean-Loup Baer. Microprocessor Architecture, Cambridge University Press, 2010.; • Bruce Jacob, Spencer W. Ng, Samuel Rodriguez. Memory Systems, Morgan Kaufmann Publishers, 2008.; • William Stallings. Computer Organization and Architecture, 2012.
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)
nincs
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)
nincs
Általános szabályok
Követelmények:
a.) A szorgalmi időszakban: Az aláírás feltétele a zárthelyi dolgozat sikeres teljesítése
b.) A vizsgaidőszakban: A tárgy teljesítéséhez a vizsga sikeres teljesítése szükséges
Pótlási lehetőségek:
A félév során az arra kijelölt időpontban, valamint a pótlási héten pót zárthelyi írására van lehetőség.
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
IMSc program:
Az emelt szintű ismeretek elsajátítását emelt szintű gyakorlatok és emelt szintű ismeretanyag önálló feldolgozása segíti.
Az emelt szintű gyakorlatokon összetettebb feladatok megoldására lesz lehetőség.
A félév során 5 emelt szintű többlet tananyag lesz, melyek a tematika néhány fontosabb témakörét járják körül az alapszintnél részletesebben, mélyebben. Ez a tananyag az előadó által megjelölt irodalom alapján önállóan elsajátítható, igény esetén személyes, illetve csoportos konzultációval kiegészítve.
IMSc pontok:
A tárgyból 25 IMSc pont szerezhető.
Sikeresen megoldott többletfeladatokkal a félévközi nagyzárthelyin 9 pont, a vizsgán 16 pont szerezhető. IMSc pontot az szerezhet, aki a számonkéréseken a kitűzött normál feladatok megoldásával a jó szintet (70%) eléri.
Az IMSc pontok megszerzése a programban nem résztvevő hallgatók számára is biztosított.
Ajánlott tantárgyak
Nincs megadva.
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.