Computer System Architecture
Lecture Notes
SES # |
TOPICS |
Module 1 |
|
L1 |
History of Calculation and Computer Architecture (A) (PDF) |
L2 |
Influence of Technology and Software on Instruction Sets: Up to the dawn of IBM 360 (A) (PDF) |
L3 |
Complex Instruction Set Evolution in the Sixties: Stack and GPR Architectures (A) (PDF) |
L4 |
Microprogramming (A) (PDF) |
L5 |
Simple Instruction Pipelining (A) (PDF) |
L6 |
Pipeline Hazards (A) (PDF) |
Module 2 |
|
L7 |
Multilevel Memories - Technology (J) (PDF) |
L8 |
Cache (Memory) Performance Optimization (J) (PDF) |
L9 |
Virtual Memory Basics (J) (PDF) |
L10 |
Virtual Memory: Part Deux (A) (PDF) |
Module 3 |
|
L11 |
Complex Pipelining (A) (PDF) |
L12 |
Out of Order Execution and Register Renaming (A) (PDF) |
L13 |
Branch Prediction and Speculative Execution (A) (PDF) |
L14 |
Advanced Superscalar Architectures (J) (PDF) |
L15 |
Microprocessor Evolution: 4004 to Pentium 4 (J) (PDF) |
Module 4 |
|
L16 |
Synchronization and Sequential Consistency (A) (PDF) |
L17 |
Cache Coherence (A) (PDF) |
L18 |
Cache Coherence (Implementation) (A) (PDF) |
L19 |
Snoopy Protocols (A) (PDF) |
L20 |
Relaxed Memory Models (A) (PDF) |
Module 5 |
|
L21 |
VLIW/EPIC: Statically Scheduled ILP (J) (PDF) |
L22 |
Vector Computers (J) (PDF) |
L23 |
Multithreaded Processors (J) (PDF) |
L24 |
Reliable Architectures (J) (PDF) |
L25 |
Virtual Machines (J) (PDF) |
Assignments
This section contains the problem sets assigned for the course. Each of the problem sets is related to a module. Although problem solutions do not have to be handed in (and consequently, are not graded), it is essential that students become thoroughly familiar with the material and therefore are encouraged to work through all problems.
The self-assessment test was handed out during the first lecture and used to assess each student's preparation for the course. The test was due one week later in the lecture. The handouts were provided to students to assist them in completing the problem sets. Students were expected to study the handouts before solving the problems. Instructors may request the solutions for these assignments by using the MIT OpenCourseWarefeedback form.
ASSIGNMENTS |
TOPICS |
HANDOUTS |
Problem Set 0 |
Prerequisite Self-Assessment Test (PDF) |
|
Problem Set 1 |
ISAs, Microprogramming, Simple Pipelining and Hazards (PDF ‑ 3.6 MB) |
Handout 1: EDSACjr (PDF) |
Problem Set 2 |
Caches and Virtual Memory (PDF) |
Handout 6: Cache Implementations (PDF) |
Problem Set 3 |
Complex Pipelines (PDF) |
Handout 9: Scoreboarding (PDF) |
Problem Set 4 |
SMPs, CC, Synch and Memory Models (PDF) |
Handout 12: Directory-based Cache Coherence Protocol (PDF) |
Problem Set 5 |
VLIW, Vector and Threads (PDF) |
|
Exams
This section contains actual exams given to students throughout the course. Instructors may request the solutions for these assignments by using the MIT OpenCourseWare Feedback form.
Quiz 1 (PDF ‑ 1.5 MB)
Quiz 2 (PDF)
Quiz 3 (PDF)
Quiz 4 (PDF)
Quiz 5 (PDF)