Teaching
| Week | Topics | Slides | Reading | Assignments |
| Week 1b 8/18 | Introduction | Lec01b.ppt | Ch 1.1-1.3 | |
| Week 1c 8/20 | Technology Trend | Lec01c.ppt | Ch 1.4-1.7 | Lab 1 spim_documentation.pdf |
| Week2a 8/23 | Performance Measurement | Lec02a.ppt | Ch1.8 | |
| Week2b 8/25 | Amdahl's Law | Lec02b.ppt | Ch1.9 | Parts 0 and 1 completed (suggested) |
| Week2c 8/27 | Instruction Set | Lec02c.ppt | ChB.2 | Homework 1 |
| Week3a 8/30 | Instruction Set (cont.) | Lec03a.ppt Read Other People's Code.ppt |
||
| Week3b 9/1 | Memory Addressing | Lec03b.ppt | ChB.3 | |
| Week3c 9/3 | Types of Instructions | Lec03c.ppt | ChB.4-5 | Homework 1 due 11:55 pm |
| Week4a 9/6 | Labor Day (No class) | |||
| Week4b 9/8 | Operations in the Instruction Setc | Lec04b.ppt | ||
| Week4c 9/10 | Single-Cycle Processor Implementation | Lec04c.ppt | ChB.6 | |
| Week5a 9/13 | Datapath | Lec05a.ppt | ChB.7 | |
| Week5b 9/15 | Single-Cycle Datapath | Lec05b.ppt | ChB.8 | Lab 1 Due by 11:55 pm |
| Week5c 9/17 | Control Unit Design | Lec05c.ppt | ChB.9 | |
| Week6a 9/20 | Multicycle Implementation 1 | Lec06a.ppt | Lab 2 is assigned | |
| Week6b 9/22 | Multicycle Implementation 2 | Lec06b.ppt | Homework 2 is assigned | |
| Week6c 9/24 | Pipelining 1 Lab 1-Comments | Lec06c.ppt Lab1-Comments.ppt Learn a New Programming Language.ppt |
||
| Week7a 9/27 | Speedup Structural Hazards 1 | Lec07a.ppt | ChA.1 | |
| Week7b 9/29 | Structural Hazards 2 | Midterm-StudyGuide.pdf Lec07b.ppt |
Homework 2 Due 11:55pm | |
| Week7c 10/1 | Data Hazards | Lec07c.ppt Lab2.ppt |
Ch2.1 | |
| Week8a 10/4 | Branch Prediction | Lec08a.ppt | Ch2.2 | |
| Week8b 10/6 | Review | Lec08b-review.ppt | Lab 2 Due by 11:55 pm | |
| Week8c 10/8 | Midterm | |||
| Week9a 10/11 | Midterm Session | |||
| Week9b 10/13 | Pipeline: Exceptions | Lec09b.ppt | ChA.3 | |
| Week9c 10/15 | Control for Pipelined Datapath | Lec09c.ppt | Lab 3 is assigned. Due by Nov. 5th. | |
| Week10a 10/18 | Instruction-level parallelism: Introduction | Lec10a.ppt | Ch2.3 | |
| Week10b 10/20 | Lab 3 | Lec10b-Lab3.ppt | ChA.3 | |
| Week10c 10/22 | Lab 3 Algorithms | Lec10c-Lab3-Algorithms.pdf | ChA.3 | |
| Week11a 10/25 | Lab 3 How to implement stages 2 and 3. | |||
| Week11b 10/27 | Lab3-Forwarding | Lab3-Forwarding.pdf Lec10b-Lab3.ppt |
||
| Week11c 10/29 | Instruction-level parallelism: Instruction Dependence | Lec11c.ppt | Ch2.4 | |
| Week12a 11/1 | Control Dependencies | Lec12a.ppt | ||
| Week12b 11/3 | Scoreboard | Lec12b.ppt Lab3-ID_Stage.pdf |
||
| Week12c 11/5 | Scoreboard - An example | Lec12c.ppt | Lab 3 is Due by 11:55 pm. | |
| Week13a 11/8 | Scoreboard - An example (cont.) | Lec13a.ppt | ||
| Week13b 11/10 | Tomasulo | Lec13b.ppt | ||
| Week13c 11/12 | Tomasulo - An Example | Lec13c.ppt | Lab 4 is assigned. Due by Dec. 1st. | |
| Week14a 11/15 | Tomasulo - A loop example | Lec14a.ppt | ||
| Week14b 11/17 | Lab 4: Design of the Scoreboard | Lab4-DesignIssues.pdf | ||
| Week14c 11/19 | Lab 4: Implementation | Lab4-Implementation.pdf | ||
| Week15 | ||||
| Week16a 11/29 | Memory Hierarchy - Introduction | Lec16a.ppt | Ch5.1 | |
| Week16b 12/1 | Cache Performance | Lec16b.ppt | Ch5.2 | |
| Week16c 12/3 | Calculating Bits in Cache Final Review |
Lab 4 is Due by 11:55 pm. |