Zoom Link:


    Course lectures:
    1. Course outline and evaluation guide [PDF]
    2. Introduction to computer architectures: performance, power and energy metrics; area and yield [PDF]
    3. Instruction Set Architectures [PDF]
    4. SIMD (vector) extensions [PDF]
    5. Introduction to LAB1: exploiting NEON and SVE instructions to accelerate applications [PPTX]
    6. Designing a simple processor [PDF]
    7. Pipelining [PPTX] / [PDF] (updated on March 29)
    8. Instruction Level Parallelism [PPTX] / [PDF]
    9. Dynamic Instruction Scheduling: Scoreboard algorithm [PPTX] / [PDF]
    10. Dynamic Instruction Scheduling: Tomasulo algorithm [PPTX] / [PDF]
    11. Dynamic Instruction Scheduling with Speculative Execution [PPTX] / [PDF] (updated on May 17)
    12. Overview of Modern Processors [PPTX] / [PDF]
    13. The Architecture of Graphics Processing Units (GPUs) [PPTX] / [PDF]
    14. General Purpose Computing on GPUs (GPGPU) using CUDA [PPTX] / [PDF] (updated on May 17)
    15. Identifying Parallel Loops [PPTX] / [PDF]
    16. Memory Hierarchy: caches [PPTX] / [PDF] (updated on May 26)
    17. Virtual Memory [PPTX] / [PDF]

    Lectures from the Introductory Computer Architectures course (Bachelor, 1st year, Portuguese only):
    1. Number representation and operations [PDF]
    2. LEGv8 Instruction Set Architecture [PDF]
    3. Peripherals and interruptions/exceptions [PDF]
    4. Introduction to real ISAs [PDF]
    5. Basic computer architecture [PDF]
    6. Pipelined architectures [PDF]
    7. Cache Memories [PDF]
    8. Virtual Memory [PDF]
    9. Memory Technologies [PDF]

    Other computer architecture papers: