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
Overview
     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 ISA, Instruction Encoding Chapter 4 intro; “asides” on RISC/CISC; Section 4.2 A3 trivia due, noon;
     Thur. Feb. 21 Circuits Skim Figures 4.22 and 4.23;
Section 4.3
     Tues. Feb. 26 Circuits, Single-cycle Implementation Skim Figures 4.40, 4.41, 4.52;
Sections 4.4, 4.5
     Thurs. Feb. 28 Single-Cycle Implementation, Pipelining Sections 4.5.13, 4.6, 5.7 A3 due midnight tomorrow;
     Tues. Mar. 5 (Advanced) Pipelining
     Thur. Mar. 7 Midterm Exam
     Mar. 12 & 14 UR Spring Break
     Tues. Mar. 19 Advanced Pipelining, Code Optimizations Chapter 5 A4: tuning performance out;
Main assignment due in 15 days;
The Storage Hierarchy
     Thur. Mar. 21 Code Optimizations (left-over), Memory Hierarchy Chapter 5; Chapter 6.1.1 and 6.1.4; skim 6.1.2 and 6.1.3; A4 trivia due, noon;
     Tues. Mar. 26 Caching (by Prof. Chen Ding) Chapter 6.2, 6.3; study 6.4 carefully
     Thur. Mar. 28 Cache-oriented Performance Tuning (by Prof. Chen Ding) Chapter 6.5, 6.6
Exceptional Control Flow
     Tues. Apr. 2 Interrupts, Exceptions, and Processes (by Prof. John Criswell) Chapter 8.1, 8.2, 8.3 A4 due midnight yesterday;
A5: Unix shell out;
Main assignment due in 13 days;
     Thur. Apr. 4 Processes
(by Prof. John Criswell)
Chapter 8.4 A5 trivia due, noon;
     Tues. Apr. 9 Processes, Signals
Chapter 8.5
Virtual Memory
     Thur. Apr. 11 Address Translation Chapter 9.1 ~ 9.6
     Tues. Apr. 16 Advanced Address Translation, Core i7/Linux Case Study Chapter 9.6, 9.7 A5 due midnight yesterday;
A6: memory allocation out;
Main assignment due in 14 days;
     Thur. Apr. 18 Memory Management Chapter 9.8, 9.9 A6 trivia due, noon;
     Tues. Apr. 23 Advanced Memory Management Chapters 9.8, 9.9, 9.10
Concurrency
     Thur. Apr. 25 Threads, Semaphores Chapter 12 (skim all;  read 12.3, 12.4, and 12.5)
     Tues. Apr. 30 Deadlock, Parallelism, Hardware Support for Concurrency 12.5, 12.6, 12.7 A6 due midnight May 2;
     Wed. May 8 Final Exam 19:15, WH 1400