Lecture & Homework Schedule

Standard disclaimer: dates are subject to change.

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