Lecture & Homework Schedule

Standard disclaimer: dates are subject to change.

Date Lecture Homework Reading
Mon 01/30 1. Introduction HW1 assigned Sections 1.1 - 1.5
Wed 02/01 2. Instruction Semantics Sections 2.1 - 2.3, 2.5 - 2.8
Mon 02/06 3. Runtime Environment Sections 2.8, 2.10 - 2.13
Wed 02/08 4. Peformance Metrics Sections 1.6, 1.9 - 1.10
Mon 02/13 5. Boolean Logic HW1 due at 11:59:59 PM, HW2 assigned Sections A.2 - A.3
Wed 02/15 6. Integer Representations Sections 2.4 - 2.6, 2.9, 3.2
Mon 02/20 7. Arithmetic Logic Unit Sections A.5 - A.6
Wed 02/22 8. Multiplication Sections 3.3
Mon 02/27 9. Division HW2 due at 11:59:59 PM; Proj 1 assigned Sections 3.4
Wed 03/01 Midterm 1
Mon 03/06 10. Floating Point Sections 3.5
Wed 03/08 11. Datapaths Sections A.7 - A.8, 4.1 - 4.3
Mon 03/13 12. Single-Cycle Control Unit Sections 4.4
Wed 03/15 13. Multi-Cycle Control Unit Sections 4.5
Mon 03/20 Spring Break
Wed 03/22 Spring Break
Mon 03/27 14. Microprogramming and Exceptions Proj1 due at 11:59:59 PM; HW3 assigned Sections 4.9
Wed 03/29 15. Pipelining Sections 4.5
Mon 04/03 16. Pipeline Controls Sections 4.6
Wed 04/05 17. Pipeline Hazards Sections 4.7 - 4.9
Mon 04/10 Midterm 2
Wed 04/12 18. Memory Systems HW3 due at 11:59:59 PM; HW4 assigned Sections 5.1 - 5.3, A.9
Mon 04/17 19. Cache Performance Sections 5.3 - 5.4
Wed 04/19 20. Multi-Cache Designs Sections 5.8 - 5.10
Mon 04/24 21. Virtual Memory Sections 5.7
Wed 04/26 22. Address Spaces HW4 due at 11:59:59 PM; Proj2 assigned AMD64 Architecture Manual, sections 5.3 - 5.4; A Guide to Using Direct Memory Access
Mon 05/01 23. I/O Performance Sections 5.5
Wed 05/03 24. Bus Interconnects Everything You Need to Know About the PCI Express, How PCI express devices talk
Mon 05/08 25. Interrupt Handling and Multi-Data Processing Sections 6.3
Wed 05/10 26. Parallel Processing Sections 4.10, 6.4
Mon 05/15 Review Session
Wed 05/17 Proj2 due at 11:59:59 PM
Mon 05/22 Final Exam (6:00pm – 8:00pm)