Course Calendar
Course Summary and Schedule (subject to change)
| Date | Details | Due |
|---|---|---|
| Wed May 13, 2026 | Lecture 1: Introduction and Logistics | 4:30pm to 6:30pm |
| Fri May 15, 2026 | Tutorial 1: Refresh on C/C++ Programming and Debugging | 4:30pm to 6:30pm |
| Wed May 20, 2026 | Lecture 2: Computer Abstract and Technologies | 4:30pm to 6:30pm |
| Fri May 22, 2026 | Lecture 3: Introduction to (RISC-V) Instructions | 4:30pm to 6:30pm |
| Fri May 22, 2026 | Assignment Lab1 | due by 11:59pm |
| Sat May 23, 2026 | Assignment HW1 | due by 11:59pm |
| Wed May 27, 2026 | Lecture 4: Control Instructions, Function Calls, and Addressing Modes | 4:30pm to 6:30pm |
| Fri May 29, 2026 | Lecture 5: Control Instructions, Function Calls, and Addressing Modes (cont.) | 4:30pm to 6:30pm |
| Fri May 29, 2026 | Assignment Group Due | due by 11:59pm |
| Sat May 30, 2026 | Assignment HW2 | due by 11:59pm |
| Wed Jun 3, 2026 | Tutorial 2: Tutorial on RISC-V Assembly Toolflow and Simulator | 4:30pm to 6:30pm |
| Fri Jun 5, 2026 | Lecture 6: Putting It All Together and Case Studies | 4:30pm to 6:30pm |
| Fri Jun 5, 2026 | Assignment Lab2 | due by 11:59pm |
| Sat Jun 6, 2026 | Assignment HW3 | due by 11:59pm |
| Wed Jun 10, 2026 | Lecture 7: Single-Cycle Datapath and Control | 4:30pm to 6:30pm |
| Fri Jun 12, 2026 | Lecture 8: Pipelined Datapath and Control | 4:30pm to 6:30pm |
| Sat Jun 13, 2026 | Assignment HW4 | due by 11:59pm |
| Wed Jun 17, 2026 | Lecture 9: Pipeline Hazards and Exceptions | 4:30pm to 6:30pm |
| Fri Jun 19, 2026 | Lecture 10: Pipeline Hazards and Exceptions (cont.) | 4:30pm to 6:30pm |
| Fri Jun 19, 2026 | Assignment Lab3 | due by 11:59pm |
| Wed Jun 24, 2026 | Lecture 11: Memory Hierarchy and Cache Basics | 4:30pm to 6:30pm |
| Fri Jun 26, 2026 | Lecture 12: Measuring and Improving Cache Performance | 4:30pm to 6:30pm |
| Sat Jun 27, 2026 | Assignment HW5 | due by 11:59pm |
| Wed Jul 1, 2026 | Lecture 13 & midterm review: Measuring and Improving Cache Performance (cont.) | 4:30pm to 6:30pm |
| Wed Jul 1, 2026 | Assignment Project MS1 | due by 11:59pm |
| Fri Jul 3, 2026 | No lecture | 4:30pm to 6:30pm |
| Fri Jul 3, 2026 | Assignment Lab4 | due by 11:59pm |
| Wed Jul 8, 2026 | Tutorial 3: Hardware-Aware Software Optimization | 4:30pm to 6:30pm |
| Fri Jul 10, 2026 | Midterm | 4:30pm to 6:30pm |
| Wed Jul 15, 2026 | Lecture 14: Instruction-Level Parallelism and Case Studies | 4:30pm to 6:30pm |
| Wed Jul 15, 2026 | Assignment Project MS2 | due by 11:59pm |
| Fri Jul 17, 2026 | Lecture 15: Virtual Memory | 4:30pm to 6:30pm |
| Fri Jul 17, 2026 | Assignment Lab5 | due by 11:59pm |
| Sat Jul 18, 2026 | Assignment HW6 | due by 11:59pm |
| Wed Jul 22, 2026 | Lecture 16: Virtual Memory (cont.) | 4:30pm to 6:30pm |
| Wed Jul 22, 2026 | Assignment Project MS3 | due by 11:59pm |
| Fri Jul 24, 2026 | Lecture 17: Integer Arithmetic and Floating-Point Basics | 4:30pm to 6:30pm |
| Sat Jul 25, 2026 | Assignment HW7 | due by 11:59pm |
| Wed Jul 29, 2026 | Lecture 18: Floating-Point Arithmetic | 4:30pm to 6:30pm |
| Fri Jul 31, 2026 | Lecture 19: Floating-Point Arithmetic (cont.) | 4:30pm to 6:30pm |
| Fri Jul 31, 2026 | Assignment Project MS4 | due by 11:59pm |
| Sat Aug 1, 2026 | Assignment HW8 | due by 11:59pm |
| Wed Aug 5, 2026 | Lecture 20: Introduction to Parallel Processing | 4:30pm to 6:30pm |
| Wed Aug 5, 2026 | Assignment Project Hard DDL | due by 11:59pm |
| Fri Aug 7, 2026 | Lecture 21: Domain-Specific Architecture | 4:30pm to 6:30pm |
Updated Mon May 11 2026, 19:24 by yla932.