SZÁMÍTÓGÉP ARCHITEKTÚRÁK
PIB06
Félév: 1
Típus: Előadás/Labor
Óraszám/hét: 2+2
Kredit: 5
Státusz: Kötelező
Előfeltételek:
Vizsgáztatási módszer: Szóbeli/Írásbeli
A félév időbeosztása:
1. előadás:
A számítógép architektúra szintjei,. Az elektronikus számítógépek fejlődése, generációi, általános felépítése. A Nemann-elv.
2. előadás:
Numerikus adatok gépi ábrázolása: fixpontos és lebegőpontos ábrázolás, konverzió a rendszerek között. Negatív számok ábrázolásai.
3. előadás:
BCD ábrázolás. Az IEEE 754 szabvány. Karakter kódolási szabványok (ASCII, ISO 8859, UTF, WIN1250).
4. előadás:
CPU, adatút, utasítások szerkezete: három, kettő és egy címes utasítások.
Memóriák. Központi memória. Bájt sorrend. Igazítás. Hibafelismerés és hibajavítás kérdése.
Operandusok megadás módjai. Közvetlen operandus, direkt, regiszter, regiszter-indirekt, indexelt, bázis-index címzés. Az Intel 8086/88 regiszter készlete, társzervezése, címzési módjai, címzési mód byte.
5. előadás:
Az Intel 8086/88 utasításai (adat mozgató, aritmetikai, logikai, string kezelő, bit léptető/forgató, vezérlés átadó, processzor vezérlő, input/output utasítások, program megszakítás, szemafor).
Pszeudo operátorok. Egyszerű adat definíciós utasítások. Struktúra, rekord (definíció, hívás, mezőre hivatkozás). Eljárás (deklaráció, hívás, paraméter átadás/átvétel). Lokális adat terület, rekurzív és reentrant eljárások.
6. előadás:
Feltételes fordítás. Makró (definíció, hívás), blokk ismétlés. Címkék, változók, konstansok, kifejezések. Szegmens definíció, szegmens csoport, aktív szegmensek kijelölése, globális szimbólumok.
Assemblernek szóló utasítások, lista vezérlési operátorok.
A végrehajtható program elkészítésének folyamata: Egyszerűsített lexikális elemző. Két menetes assembler fordító. Makró generátor. (Kapcsolat) szerkesztő. Time sharing (idő osztás). Binding (cím hozzárendelés), dinamikus szerkesztés. Programok hangolása.
7. előadás:
Digitális logikai szint. (vázlatosan) Boole-függvények áramköri ekvivalenciája. Kapuk. Kombinációs áramkörök, multiplexer, demultiplexer, dekódoló, összehasonlító, programozható logikai tömbök. Aritmetikai áramkörök. Léptető, fél és teljes összeadó, ALU, átvitel továbbterjesztő és kiválasztó összeadás. Nem kombinációs áramkörök. Óra, tárolók, flip-flop-ok, SRAM, DRAM, SDRAM, ROM, PROM, EPROM, EEPROM, flash. Memória lapkák.
8. előadás:
Utasítás és processzor szintű párhuzamosítás. Gyorsító tár (cache). Találati és hiba arány. Közös és osztott gyorsító tár. Direkt leképezésű és halmaz kezelésű gyorsító tár. Memóriába írás. Sín. Sín protokoll. Mester - szolga. Sín vezérlő, vevő, adóvevő. Sín szélesség, sáv szélesség. Sokszorozott sín. Sín időzítés: szinkron, aszinkron sín, teljes kézfogás. Sín ütemezés. Sín műveletek. Univerzális soros sín.
9. előadás:
Mikroarchitektúra szint. Az ALU-val végezhető műveletek. Memória műveletek. ALU és az adatút vezérlése. Mikroutasítások. Adatút és memória ciklus. Az A.S. Tanenbaum-féle Mic-1 és működése. Az IJVM memória modellje. Az IJVM megvalósítása Mic-1 segítségével.
Parallel Input/Output (PIO), valódi és memóriára leképezett I/O eszköz. Teljes és részleges cím dekódolás. Programozott és megszakítás vezérelt I/O. DMA. Megszakítás, csapda, átlátszóság.
10. előadás:
A végrehajtási út csökkentése. Három sínes architektúra. Utasítás betöltő egység. Mic-2. Csővonalas terv: Mic-3. Egy hét szakaszú szállítószalag: Mic-4.
Elágazás, eltolási rés. Statikus és dinamikus elágazás jövendölés. Sorrendtől eltérő végrehajtás, szuperskaláris architektúra, függőségek, regiszter átnevezés. Feltételezett végrehajtás.
RISC és CISC kialakulása. A Pentium 4, az UltraSPARC III és a 8051 CPU mikroarchitektúrája, ezek rövid összehasonlítása.
11. előadás:
Gépi utasítás szint. Memória modellek, memória szemantika. A Pentium 4 üzemmódjai. A Pentium 4, az UltraSPARC III regiszterei.
Veremcímzés. Fordított lengyel (postfix) jelölés. Dijkstra algoritmusa. Postfix alakú formulák kiértékelése. Ortogonalitási elv.
A Pentium 4, az UltraSPARC III és a 8051 utasítás formái.
Vezérlési folyamat. Szekvenciális vezérlés, elágazás, ciklus szervezés, eljárás, rekurzív eljárás, megszakítás, csapda, korutinok.
12. előadás:
Operációs rendszer szint. (vázlatosan) Overlay technika. Virtuális memória. Kényszerlapozás. Munka készlet. Lapméret, fregmentáció. Szegmentálás és megvalósításai. A Pentium 4 és az UltraSPARC III virtuális memória kezelése.
13. előadás:
Perifériák (vázlatosan). Mágnes lemez,. lemez vezérlés, IDE (ATA), EIDE, SCSI, RAID szintek. Optikai lemezek. Egér. Nyomtatók. Terminál. Modem, jelzési, adatátviteli sebesség. Kommunikációs vonal.
ˇ S. Tanenbaum: Structured computer organization (Prentice Hall, 2006) (T). Magyarul: Számítógép-architektúrák 2. átdolgozott, bővített kiadás (Panem 2006).
ˇ S. Tanenbaum: Structured computer organization (Prentice Hall, 1999) (T). Magyarul: Számítógép-architektúrák (Panem 2001).
ˇ M. J. Murdocca, V. P. Heuring: Principles of computer architecture, (Prentice Hall, 2000) (MH)
ˇ Patterson D.A., Henessy J.L.: Computer organization & Design, Morgan Kaufmannn Publ. (2 ed.) 1998.
ˇ Rob Williams: Computer System Architecture (A Networking Approach), Addison Wesley, 2001.
ˇ Sima D., Fountain T. , Kacsuk, P.: Korszerű számítógép architektúrák tervezési tér megközelítésben, Szak Kiadó, 1998.
ˇ Randall Hyde: The Art of Assembler Language, Randall Hyde, 2003.
ˇ Randall Hyde: The Art of Assembler Language Programming, http://webster.cs.ucr.edu
ˇ Osborne: 80386/80286 Assembly Language Programming, Mc Graw-Hill, 1986.
ˇ T. Swan: Mastering Turbo Assembler, Howard W. Sams and Co. Carmel, IN, 1990.