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
     Thur. Jan. 17 Introduction Chapter 1 Get an account and set it up;
Data Representation
     Tues. Jan. 22 Binary and Integers Chapter 2 A1: datalab (bit twiddling) out;
Main assignment due in 10 days;
     Thur. Jan. 24 Integers A1 trivia due midnight tomorrow;
     Tues. Jan. 29 Floating Point
Assembly-level Programs
     Thur. Jan. 31 Overview Chapter 3 A1 due midnight tomorrow;
A2: the binary bomb out;
Main assignment due in 15 days;
     Tues. Feb. 5 Data Movement Instructions, Addressing Mode, Compute Instructions, Control Instructions A2 trivia due, noon;
     Thur. Feb. 7 Control Instructions
     Tues. Feb. 12 Subroutines
     Thur. Feb. 14 Data Structures, Buffer Overflow A2 due midnight tomorrow;
A3: the buffer bomb out;
Main assignment due in 15 days;
Processor Architecture
     Tues. Feb. 19 Circuits Chapter 4 intro; “asides” on RISC/CISC; Section 4.2 A3 trivia due, noon;
     Thur. Feb. 21 Instruction Encoding, Single-Cycle Implementation Skim Figures 4.22 and 4.23;
Section 4.3
     Tues. Feb. 26 Single-cycle, Pipelining Skim Figures 4.40, 4.41, 4.52;
Sections 4.4, 4.5
     Thurs. Feb. 28 Advanced Pipelining, Modern Processors Sections 4.5.13, 4.6, 5.7 A3 due midnight tomorrow;
Optimizing Performance
     Tues. Mar. 5 Performance Metric
Compiler Optimizations
Chapter 5
     Thur. Mar. 7 Midterm Exam
     Mar. 12 & 14 UR Spring Break
The Storage Hierarchy
     Tues. Mar. 19 Memory Technology and Hierarchy Chapter 6.1.1 and 6.1.4; skim 6.1.2 and 6.1.3 A4: tuning performance out;
Main assignment due in 15 days;
     Thur. Mar. 21 Caching Chapter 6.2, 6.3. Study 6.4 carefully A4 trivia due, noon;
     Tues. Mar. 26 Cache-oriented Performance Tuning Chapter 6.5, 6.6
Exceptional Control Flow
     Thur. Mar. 28 Interrupts, Exceptions, and Bus Chapter 8.1
     Tues. Apr. 2 Processes Chapter 8.2, 8.3 A4 due midnight yesterday;
A5: Unix shell out;
Main assignment due in 13 days;
     Thur. Apr. 4 Signals, Non-local Jumps
Chapter 8.4, 8.5 A5 trivia due, noon;
Virtual Memory
     Tues. Apr. 9 Address Translation Chapter 9.1 ~ 9.6
     Thur. Apr. 11 Advanced Address Translation, Core i7/Linux Case Study Chapter 9.6, 9.7
     Tues. Apr. 16 Memory Management Chapter 9.8, 9.9 A5 due midnight yesterday;
A6: memory allocation out;
Main assignment due in 14 days;
     Thur. Apr. 18 Advanced Memory Management Chapters 9.8, 9.9, 9.10 A6 trivia due, noon;
     Tues. Apr. 23 Threads, Semaphores Chapter 12 (skim all;  read 12.3, 12.4, and 12.5)
     Thur. Apr. 25 Deadlock, Parallelism, Hardware Support for Concurrency 12.5, 12.6, 12.7 A6 due midnight May 1;
     Tues. Apr. 30 Recent Computing Trends, Victory Lap
     TBD Final Exam