The grading breakdown for this course is:
There will be 5 homework assignments (due roughly every two weeks). Each homework assignment will involve 5-6 exercise problems from the textbook. Links to assignments:
Week | Date | Topic | Assignment |
---|---|---|---|
Week 1 | Jan 20 | Introduction, Motivation, and Course Logistics Background Preparation: Appendix A |
- |
Week 2 | Jan 25 | Instruction Set Architecture Reading: Chapters 1.3, 2.2, 2.3, 2.5 |
HW1 out |
Jan 26 | Discussion: ISA |
||
Jan 27 | Memory Organization and Control Flow Reading: Chapters 2.6, 2.7, 2.8 |
- | |
Week 3 | Feb 1 | Quantitative Analysis in Computer Architecture Reading: Chapters 1.6 and 1.10 |
- |
Feb 2 | Discussion: Quantitative Analysis and Digital Logic |
||
Feb 3 | Design of the MIPS Arithmetic and Logic Unit Reading: Appendix B.2, B.3, and B.5 |
- | |
Week 4 | Feb 8 | Design of the Control Unit and Register File Reading: Appendix B.7, B.8, and Chapter 4.3 |
HW1 due, HW2 out |
Feb 9 | Discussion: Introduction to Project-1 |
Project-1 out | |
Feb 10 | The MIPS Single Cycle Processor Architecture Reading: Chapters 4.3 and 4.4 |
- | |
Week 5 | Feb 15 | Pipelined Datapath and Control Reading: Chapters 4.5 and 4.6 |
- |
Feb 16 | Discussion: Single-Cycle Processor |
||
Feb 17 | Pipelining: Data Hazards Reading: Chapter 4.7 | - | |
Week 6 | Feb 22 | Midterm Exam-1 Review | HW2 due |
Feb 23 | Discussion: Midterm Exam-1 Review |
||
Feb 24 | Midterm Exam-1 | - | |
Week 7 | Mar 1 | Pipelining: Forwarding Reading: Chapter 4.7 | HW3 out |
Mar 2 | Discussion: Pipelining |
||
Mar 3 | Pipelining: Control Hazards Reading: Chapter 4.8 | - | |
Spring Break | |||
Week 8 | Mar 15 | Branch Prediction Reading: Chapters 4.8 and 4.10 |
Project-1 Checkpoint due |
Mar 16 | Discussion: Control Hazards and Branch Prediction |
||
Mar 17 | Superscalar Execution and Static Scheduling Reading: Chapter 4.10 |
HW3 due, HW4 out | |
Week 9 | Mar 22 | Data-Level Parallelism Reading: Chapters 6.2 and 6.3 |
- |
Mar 23 | Discussion: Branch Prediction and Superscalars |
||
Mar 24 | Out-Of-Order Execution Reading: Chapter 4.11 |
- | |
Week 10 | Mar 29 | Introduction to Memory Hierarchy: Cache Fundamentals Reading: Appendix B.9 and Chapter 5.3 |
- |
Mar 30 | Discussion: OOO Superscalars and Caches |
||
Mar 31 | Cache Organization and Design Reading: Chapter 5.4 |
HW4 due | |
Week 11 | Apr 5 | Midterm Exam-2 Review | - |
Apr 6 | Discussion: Midterm Exam-2 Review |
||
Apr 7 | Midterm Exam-2 | - | |
Week 12 | Apr 12 | Cache Management and Policies Reading: Chapter 5.8 |
Project-1 due, HW5 out |
Apr 13 | Discussion: Cache Organization and Management |
||
Apr 14 | Cache Optimizations and Side-Channel Attacks Reading: Chapters 8.1-8.5 from Principles of Secure Processor Architecture Design |
- | |
Week 13 | Apr 19 | Cache Side-Channel Attacks Reading: Chapters 8.1-8.5 from Principles of Secure Processor Architecture Design |
Project-2 out |
Apr 20 | Discussion: Project-1 Interviews |
||
Apr 21 | Virtual Memory: Page Tables and TLBs Reading: Chapter 5.7 |
- | |
Week 14 | Apr 26 | Virtual Memory: Page Fault Handling and Virtual Caches Reading: Chapter 5.7 |
- |
Apr 27 | Discussion: Virtual Memory |
||
Apr 28 | In-Class Hacking Workshop |
HW5 due | |
Week 15 | May 3 | Final Review |
Project-2 due |
I trust every student in this course to fully abide by the University's Honor Code and pledge to not commit academic fraud. You are allowed to discuss, collaborate, and brainstorm both within and outside your group. However, you're not allowed to plagiarize solutions/text from another student's assignment or from the internet. Cheating will be taken seriously and will be reported to the honor committee. All suspected honor violations will receive an failing grade for the course regardless of any action taken by the Honor Committee.