Schedule (Tentative)

The following is my best guess as to the schedule for this term. Slide decks will be available shortly after each lecture.

Date Topics Reading Assignments
     Wed. Jan. 21 Introduction (Video) Chapter 1 Get a CSUG account;
Set up university VPN.
Data Representation
     Wed. Jan. 28 Binary and Integers (Video) Chapter 2 A1: datalab (bit twiddling) out;
     Fri. Jan. 30 Integers (Video)
     Wed. Feb. 4 Floating Point (Video)
     Fri. Feb. 6 More Floating Point
Assembly Programming
     Wed. Feb. 11 Overview and Data Movement (Video Part 1, Part 2) Chapter 3 A1 due midnight today;
A2: the binary bomb out today;
     Fri. Feb. 13 Data Movement, Compute, and Control Instructions (Video and Video)
     Web. Feb. 18 Functions (Video)
     Fri. Feb. 20 Data Structures, Buffer Overflow (Video)
Microarchitecture
     Wed. Feb. 25 ISA, Instruction Encoding (Video) Chapter 4 intro; “asides” on RISC/CISC; Section 4.2
     Fri. Feb. 27 Circuits (Video) Skim Figures 4.22 and 4.23;
Section 4.3
A2 due midnight;
A3: the buffer bomb out today;
     Wed. Mar. 4 Circuits, Single-cycle Implementation (Video) Skim Figures 4.40, 4.41, 4.52;
Sections 4.4, 4.5
     Fri. Mar. 6 Midterm Exam
     Wed. Mar. 11 Spring Break
     Fri. Mar. 13 Spring Break
     Wed. Mar. 18 Pipelining (Video) Sections 4.5.13, 4.6, 5.7
     Fri. Mar. 20 Resolving Control and Data Dependencies (Video) Sections 4.5.13, 4.6, 5.7 A3 due midnight today;
     Wed. Mar. 25 Code Optimization (Video)
     Fri. Mar. 28 Storage Hierarchy and Caching (Video and Video) Chapter 6.2, 6.3; study 6.4 carefully; Chapter 6.5, 6.6
Exceptional Control Flow
     Wed. Apr. 1 Processes (Video) Skim Chapter 8.1, 8.3; Read Chapter 8.2
     Fri. Apr. 3 Signals; Interrupts and Exceptions (Video and Video)
Chapter 8.4, Chapter 8.5 A4: Unix shell out;
Virtual Memory
     Wed. Apr. 8 VM Concepts (Video) Chapter 9.1 ~ 9.6
     Fri. Apr. 10 Address Translation and Optimizations (Video) Chapter 9.6, 9.7
     Wed. Apr. 16 Memory Management (Video) Chapter 9.8, 9.9
     Fri. Apr. 17 Advanced Memory Management (Video) Chapters 9.8, 9.9, 9.10 A4 due midnight today;
A5: memory allocation out;
Advanced Concepts
     Wed. Apr. 22 Multi-threading and Multi-core (Video) Chapters 12.4, 12.5.1 -- 12.5.3, 12.6, 12.7.5
     Fri. Apr. 24 Accelerators (Video)
     Wed. Apr. 29 TBD
     Fri. May 1 TBD A5 due midnight today;
Final, Tuesday, May 5, 8:30 AM