Computer Architecture

Year
1
Academic year
2022-2023
Code
02000605
Subject Area
Computers
Language of Instruction
Portuguese
Other Languages of Instruction
English
Mode of Delivery
Face-to-face
Duration
SEMESTRIAL
ECTS Credits
6.0
Type
Compulsory
Level
2nd Cycle Studies - Mestrado

Recommended Prerequisites

Computer Programming, Data Structures and Algorithms, Microprocessors, Operating Systems

Teaching Methods

Theoretical classes with detailed presentation, using audiovisual means, of the concepts, principles and fundamental theories and solving of basic practical exercises to illustrate the practical interest of the subject and exemplify its application to real cases.

Laboratory classes where the students are guided on specific aspects of development and consequent analysis of results, enabling them to explore the concepts via hands-on formative and assessement assignments. 

Learning Outcomes

This course objectives are: the introduction of the fundamental techniques that root current  computing systems, the development of competencies in the analysis of the implications of the different options on a computing project, and provide experience in the development of software for such systems. The competencies acquired along this course enable the students to develop high performance computational systems and application. 

Work Placement(s)

No

Syllabus

1. Fundamentals of Computer Architecture

Basic concepts. Performance evaluation metrics

2. Instruction level parallelism

Instruction Level Parallelism limitations. Static and dynamic optimizations. Predictors, speculation and dependency reduction.

3. Memory hierarchy

Spatial and temporal locality. Cache organization and optimization.

Protection issues. Virtual memory and virtual machines.

4. Multimedia extensions and vectorial processors

Advantages of the vectorial instructions/architectures. Changes in processors architectures to support vectorial instructions.

5. Exceptions, interrupts and multiprocessing support.

6. Multiprocessor systems and task level parallelism

7. Symmetric and assymetric shared memory architectures.

Distributed shared memory and consistency issues. MPI and OpenMP

8. Data storage

Storage supports and types of faults. I/O performance. Redundant systems

Head Lecturer(s)

Paulo Jorge Carvalho Menezes

Assessment Methods

Assessment
Exam: 50.0%
Laboratory work or Field work: 50.0%

Bibliography

John L. Hennessy, David A. Patterson, Computer Architecture: A Quantitative Approach, 5th Edition, Morgan Kaufmann, 2011