Modern Processor Architectures
Course title: Modern Processor Architectures
Code: 3ФЕИТ07З032
Number of credits (ECTS): 6
Weekly number of classes: 2+2+1+0
Prerequisite for enrollment of the subject: Passed: Computer Architectures, Logic Design
Course Goals (acquired competencies): Introduction to the functions of modern elements in modern processor systems: various concepts for parallelism of instructions, synchronization of multiprocessors, modern design of memory hierarchy and practical examples. Upon completion of the course students will be able to analyze and design modern CPU architectures.
Total available number of classes: 180
Course Syllabus: Introduction. Modern computer architectures. Classes of computers and development directions. Performance of computer systems. Quantitative approaches for design of computers. Parallelism at the instruction level. Branch prediction. Data dependencies and dynamic scheduling. Hardware-based speculative execution. Advanced techniques for delivering instructions and speculation. Comparison of hardware versus software speculation. Multiplicity - a solution to the constraints of instruction level parallelism. Parallel processing. Symmetric multi-processor systems with shared memory and distributed memory. Synchronization. Maintaining memory consistency. Getting acquainted with Sun T1, T2, T3 and T4 processors. Design of memory hierarchy. Optimize the performance of cache memory. Memory technology and optimizations. Virtual memory and virtual machines. Storage systems. I/O performance, reliability and testing. Design and evaluation of the I/O system.
Literature:
Required Literature |
||||
No. |
Author |
Title |
Publisher |
Year |
1 |
David A. Patterson |
Computer Architecture: A Quantitative Approach, 5th Ed. |
Morgan Kaufmann |
2011 |
2 |
Tanenbaum A.S., Austin T. |
Structured Computer Organization 6th Ed. |
Pearson |
2012 |
3 |
Patterson D.A, Hennessy J.L. |
Computer Organization and Design: The Hardware/Software Interface, 5th Ed. |
Morgan Kaufmann |
2013 |