Hlavní stránka | Seznam oborů/specializací | Seznam všech skupin předmětů | Seznam všech předmětů | Seznam rolí                Návod

Předmět je základní jednotka výuky, jejímž prostřednictvím si student osvojí ucelenou část souboru znalostí a dovedností, potřebnou pro zvládnutí studijního oboru/specializace. Za věcný obsah předmětu zodpovídá garant předmětu. Časovou náročnost předmětu zhruba vyjadřuje atribut předmětu rozsah kontaktní výuky. Například rozsah = 2+2  značí, že předmět bude mít týdně dvě hodiny přednášek a dvě hodiny cvičení týdně. Na závěr semestru musí vyučující provést vyhodnocení, nakolik si ten který student osvojil poznatky a dovednosti, kterých měl během výuky nabýt. Jakým způsobem toto hodnocení vyučující provedou určuje atribut způsob zakončení. U předmětu lze definovat, že předmět je zakončen pouze zápočtem(Z), klasifikovaným zápočtem(KZ), pouze zkouškou(ZK), nebo zápočtem a zkouškou(Z,ZK). Náročnost úspěšného absolvování předmětu je vyjádřena ECTS kreditními body. Výuka předmětu probíhá během semestru. Opakovaně se předmět vyučuje vždy v zimním(Z), nebo v letním(L) semestru každého akademického roku. Výjimečně může předmět být nabízen studentům v obou semestrech(Z,L). Za organizační zajištění výuky zodpovídá přiřazená katedra, která zejména vytvoří časový rozvrh předmětu a zajistí pro předmět vyučující. Někteří přednáší a zkouší, jiní vedou cvičení a udělují zápočty.
Obsahová náplň a další organizační informace, týkající se předmětu je popsána pomocí různých popisných textů(anotace, týdenní osnova, literatura, apod.)
$DODATEK_POPIS
BIE-APS.21 Architectures of Computer Systems Rozsah kontaktní výuky: 2P+2C
Vyučující: Štepanovský M., Tvrdík P. Způsob zakončení: Z,ZK
Zodpovědná katedra: 18104 ECTS Kredity: 5 Semestr: Z

Anotace:
Students will learn the construction principles of internal architecture of computers with universal processors at the level of machine instructions. Special emphasis is given on the pipelined instruction processing and on the memory hierarchy. Students will understand the basic concepts of RISC and CISC architectures and the principles of instruction processing not only in scalar processors, but also in superscalar processors that can execute multiple instructions in one cycle, while ensuring the correctness of the sequential model of the program. The course further elaborates the principles and architectures of shared memory multiprocessor and multicore systems and the memory coherence and consistency in such systems.

Osnovy přednášek:
1. Quantitative principles of computer design, Amdahl?s law, computer performance evaluation, benchmarks.
2. Instruction set architectures: taxonomy RISC processors vs. CISC processors, assembly language.
3. Verilog as a hardware description language: syntax and semantics.
4. Incremental design of a single-cycle RISC processor, principles and basic implementations of CPU control units.
5. Design of a simple pipelined RISC processor, hazards in the pipeline and their elimination.
6. Memory hierarchy: Cache memory principle, various implementations (direct-mapped, fully associative, N-way set-associative).
7. Memory hierarchy: Virtual memory (paging) and its HW support in memory management units of conventional CPUs.
8. Multicore CPUs and multiprocessor systems. Cache memory coherence, the MESI protocol, directory-based coherence.
10. Memory consistency and the sequential consistency model. Synchronization instructions for accessing shared memory.
11. Superscalar CPUs I: Introduction to instruction-level parallelism. Static (in-order) and dynamic (out-of-order) instruction execution, register renaming (Tomasulo's algorithm).
12. Superscalar CPUs II: Memory-referencing instructions, load bypassing and load forwarding, speculative loads from memory. Memory consistency for multi-core CPUs.
13. Superscalar CPUs III: Branch prediction, speculative instruction prefetching and execution.

Osnovy cvičení:
1. Evaluation of computer performance
2. ISA and the MIPS assembly language
3. Programming in assembly language for MIPS
4. Hardware description language (Verilog)
5. Basic components of simple RISC processors
6. Pipelined processor
7. Cache memory viewed by CPU/assembler
8. Cache memory viewed by a C/C++ programmer
9. MESI coherence protocol
10. Memory consistency and synchronization primitives
11. Memory consistency viewed by a C/C++ programmer
12. Superscalar processors
13. Semestral projects check, assessment

Literatura:
1. Patterson D. A., Hennessy J. L. : Computer Organization and Design: The Hardware/Software Interface (5th Edition). Morgan Kaufmann, 2014. ISBN 978-0128012857.
2. Hennessy J.L., Patterson D.A. : Computer Architecture: A Quantitative Approach (6th Edition). Morgan Kaufmann, 2017. ISBN 978-0128119051.
3. Shen J. P., Lipasti M. H. : Modern Processor Design. Fundamentals of Superscalar Processors. Waveland Press, 2013. ISBN 978-1478607830.

Požadavky:
Entry knowledge: Basic knowledge of combinational and sequential logical circuits. Knowledge of basic instruction cycle and assembly labguage programming. Programing in C, the role of a compiler for a higher level PL.

Chybí klíčová slova
. Toto přeložit:
Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/BI-APS/
Na tento předmět navazuje v magisterském studiu předmět Pokročilé architektury počítačových systémů a také Virtualizace a cloud computing.

Předmět je zahrnut do těchto studijních plánů:
Plán Obor Role Dop. semestr
BIE-PS.21 Computer Networks and Internet 2021 PS 3
BIE-PI.21 Computer Engineering 2021 PS 3
BIE-IB.21 Information Security 2021 (Bachelor in English) PS 3
BIE-PV.21 Computer Systems and Virtualization 2021 PS 3
BIE-TI.21 Computer Science 2021 PS 3


Stránka vytvořena 30. 4. 2024, semestry: L/2021-2, Z/2023-4, L/2022-3, L/2019-20, Z,L/2020-1, Z/2024-5, Z/2019-20, Z/2022-3, L/2023-4, Z/2021-2, připomínky k informační náplni zasílejte správci studijních plánů Návrh a realizace: J. Novák, I. Halaška