Popis předmětu - A0B36APO

Přehled studia | Přehled oborů | Všechny skupiny předmětů | Všechny předměty | Seznam rolí | Vysvětlivky               Návod
A0B36APO Architektura počítačů
Role:  Rozsah výuky:2P+2L
Katedra:13135 Jazyk výuky:CS
Garanti:  Zakončení:Z,ZK
Přednášející:  Kreditů:6
Cvičící:  Semestr:L

Webová stránka:

https://cw.felk.cvut.cz/wiki/courses/b35apo/

Anotace:

Předmět studenty seznámí se stavebními prvky počítačových systémů. Předmět přistupuje k výkladu od popisu hardware a tím navazuje na předmět Struktury počítačových systémů, ve kterém se studenti seznámili s kombinačními, sekvenčními obvody a základy stavby procesorů. Po úvodním přehledu funkčních bloků počítače je podrobněji popsána stavba procesoru, jejich propojování, paměťový a vstupně výstupní subsystém až po přehledové seznámení s různými síťovými topologiemi a sběrnicemi. Během výkladu je brán důrazný zřetel na ozřejmení provázanosti hardwarových komponent s podporou SW, především nejnižších vrstev operačních systémů, ovladačů zařízení a virtualizačních technik. Obecné principy jsou v další části přednášek rozvedeny na příkladech několika standardních procesorových architektur. Cvičení jsou v první části zaměřena na detailní seznámení s činností procesoru. Od programování na úrovni procesoru pak postupují k přímé obsluze portů a hardware s využitím programovacího jazyka C.

Výsledek studentské ankety předmětu je zde: A0B36APO

Cíle studia:

Předmět seznamuje s architekturou počítačů a studenti poznají funkcionalitu jeho typických podsystémů.

Osnovy přednášek:

1. Architektura počítače, struktura, organizace a podsystémy.
Reprezentace, zobrazení a přenos informace (především čísel, IEEE-754) v počítači.
2. Procesor - ALU, von Neumannova architektura, formát instrukcí, jednocyklový procesor, řadič a řízení
3. Paměť - hierarchický koncept, technologie pamětí, správa paměti, MMU, vyrovnávací paměti cache, konsistence dat
4. Zřetězené vykonávaní instrukcí, hazardy, vyvažování stupňů zřetězení a časování; Superzřetězení
5. Vstupní a výstupní podsystém počítače, sběrnice, dvoubodové spoje, sítě, PCI a PCI express sběrnice, souvislý režim
6. Sběrnice průmyslových systémů (VME), MULTIBUS, PCIe protokol, důvody přechodu od paralelních k vícekanálovým sériovým sběrnicím s paketovou komunikací, disková úložiště, zabezpečení dat a RAID
7. Technické a organizační prostředky - vnější události, výjimky, reálný čas, přímý přístup do paměti, autonomní kanál
8. Sítě procesorů a počítačů, topologie sítí, komunikace - sítě typu LAN, MAN, WAN, sítě řídicích počítačů
9. Předávání parametrů funkcím a virtuálním instrukcím operačního systému.
Zásobníkové rámce, registrová okna, přepínání režimů a realizace systémových volání.
10. Klasická registrově orientovaná architektura s kompletní instrukční sadou.
Principy jsou demonstrovány na architektuře FreeScale M68xxx/ColdFire. Ukázka realizace MMU, cache, sběrnice a atd.
11. Procesorová rodina INTEL x86, Od 8086 k EMT64.
Hlavní zaměření na 32-bit a 64-bit režimy s krátkým vysvětlením komplikací způsobených nutností zachování kompatability s 16-bit 8086 a 80286 segmentového přístupu a proč ho současné OS používají v co nejvíce minimalizované formě. Příklad SIMD instrukcí (MMX, SSE).
12. Přehled vývoje architektury a koncepcí CPU (RISC/CISC) -
procesory ARM, ColdFire, SPARC a PowerPC a procesory pro vestavné aplikace
13. Mnohaúrovňová organizace počítače, virtuální stroje.
Konvenční architektura a implementačně závislá mikroarchitektura. Přenositelný bytecode a virtuální programovací prostředí (Java, C#/.Net). Virtualizační techniky (např XEN, VMWARE) a paravirtualizace.
14. Prostředky pro styk s technologickým procesem, analogové a diskrétní I/O, sběr a zpracování dat.

Osnovy cvičení:

1. Seznámení s učebnou, základy reprezentace dat, číselné soustavy, opakovací test
2. Reprezentace čísel v počítači a operace s nimi
3. Základní struktura procesoru, instrukční soubor
4. Hierarchický koncept pamětí, cache
5. Pipeline a hazardy
6. Predikce skoků, optimalizace kódu
7. I/O prostor mapovaný do paměti
8. Sběrnice, V/V 9. Písemka, základy programování v jazyce C
10. Semestrální úloha - přístup k periferiím připojeným na sběrnici PCIe (klávesnice, display)
11. Samostatné řešení hlavní úlohy.
12. Samostatné řešení hlavní úlohy.
13 Odevzdání hlavní úlohy, opravný test.
14. Zápočet

Literatura:

[1] Hennessy, J. L., and D. A. Patterson. Computer Architecture: A Quantitative Approach, 3rd ed. San Mateo, CA: Morgan Kaufman, 2002.
ISBN: 1558605967.
[2] Hennessy, J. L., and D. A. Patterson. Computer Architecture: A Quantitative Approach, 2nd ed. San Mateo, CA: Morgan Kaufman, 1995.
ISBN: 1558603727.
[3] Patterson, D. A., and J. L. Hennessy. Computer Organization and
Design: The Hardware/Software Interface, 3rd ed. San Mateo, CA: Morgan Kaufman, 2004. ISBN: 1558606041.
[4] Pinker, J.: Mikroprocesory a mikropočítače, BEN
http://www.ben.cz/_e/all/121158_mikroprocesory-a-mikropocitace.htm
[5] Hyde, R.: The Art of Assembly Language, 2003, 928 pp.
ISBN-10 1-886411-97-2 ISBN-13 978-1-886411-97 http://webster.cs.ucr.edu/AoA/
[7] Bach., M., J.: The Design of the UNIX Operating System,
Prentice Hall, 1986
[8] Bayko., J.: Great Microprocessors of the Past and Present
http://www.cpushack.com/CPU/cpu.html

Požadavky:

Přiměřená znalost jazyka C, základní orientace v oblasti logických a sekvenčních obvodů. Základní znalost práce s příkazovou řádkou a kompilátorem v prostředí splňujícího standard POSIX (např. Linux) je vítaná.

Poznámka:

Rozsah výuky v kombinované formě studia: 14p+6l
Stránky předmětu: https://cw.felk.cvut.cz/wiki/courses/b35apo/ .

Předmět je zahrnut do těchto studijních plánů:

Plán Obor Role Dop. semestr


Stránka vytvořena 12.10.2024 17:50:43, semestry: L/2024-5, Z/2025-6, L/2023-4, Z/2024-5, připomínky k informační náplni zasílejte správci studijních plánů Návrh a realizace: I. Halaška (K336), J. Novák (K336)