CSCI 2321 (Computer Design):

The table below shows what we will be discussing in each class meeting, readings, dates of exams, and due dates for homeworks. The dates of the final exam is fixed; other items are subject to change. Readings are from the textbook unless otherwise indicated. Written problems are due at 6pm on the date shown, programming problems at 11:59pm, unless otherwise indicated.

Lecture date Topics Reading Assignments
January 16 (W) About the course; overview and introduction (Notes)    
January 21 (M) Holiday    
January 23 (W) Overview/introduction continued; defining and measuring performance (Notes) 1 (except 1.7, 1.9)  
January 28 (M) Machine-level instructions (Notes) 2.1, 2.2, 2.3, 2.4  
January 30 (W) Machine-level instructions, continued (Notes) 2.5, 2.6, 2.7 Homework 1: HTML, PDF
February 4 (M) No class    
February 6 (W) Machine-level instructions, continued; support for procedures (Notes) 2.8 Quiz 1
February 11 (M) No class; video lecture 2/15   Homework 2: HTML, PDF
February 13 (W) Addressing modes; system calls; writing complete programs for SPIM (Notes) 2.9, A.1, A.2, A.3, A.4, A.5, A.6, A.9, A.10 (introduction), A.11  
February 15 (F) Miscellaneous review; longer MIPS code example (Video lecture at echo360.org; notes)    
February 18 (M) No class; video lecture 2/22    
February 20 (W) Source to executable revisited (Notes)   Quiz 2; Homework 3: HTML, PDF
February 22 (F) Assembling and linking revisited, with example(s) (Video lecture at echo360.org; notes)    
February 25 (M) Miscellaneous review (Notes)    
February 27 (W) Support for parallelism; more MIPS programming (Notes)   Homework 4: HTML, PDF (accepted without penalty through Friday)
March 4 (M) Review for Exam 1 (Notes)    
March 6 (W) Exam 1 (Review in HTML, PDF)  
March 11 (M) Spring break    
March 13 (W) Spring break    
March 18 (M) No class; video lecture 3/22    
March 20 (W) Numbers and arithmetic (Notes) 3.1, 3.2, 3.3, 3.4 (skim), 3.5 (skim), 3.6 (skim), 3.9, 3.10  
March 22 (F) Numbers and arithmetic, continued (Video lecture at echo360.org; notes)    
March 25 (M) Numbers and arithmetic, continued (Video lecture at echo360.org; notes)    
March 27 (W) Introduction to designing a processor; a little about circuit design (Notes) 4.1 B.1, B.2, B.3, B.5, B.7, B.8, B.9, B.10, B.13 Quiz 3
April 1 (M) More about designing a processor (Notes) 4.2, 4.3 Homework 5: HTML, PDF
April 3 (W) Designing a processor, continued (Video lecture at echo360.org; notes) 4.4  
April 8 (M) A little about memory hierarchies (Notes) 5.1, 5.2, 5.3, 5.6, 5.7, 5.8, 5.10, 5.16 (skim all) Quiz 4; Homework 6: HTML, PDF
April 10 (W) Designing a processor, continued; pipelining (Notes) 4.5, 4.6  
April 15 (M) Pipelining, continued; exceptions (Notes) 4.7 (skim), 4.8 (skim), 4.9, 4.14, 4.15 Quiz 5; Homework 7: HTML, PDF
April 17 (W) A little more about exceptions; (Notes)   Quiz 6; Homework 8: HTML, PDF
April 22 (M) Review for Exam 2 (Notes)    
April 24 (W) Exam 2 (Review in HTML, PDF)  
April 29 (M) A little more about caching; a little about virtual machines; a little about parallel computing (Notes)    
May 1 (W) Course wrap-up and evaluations    
May 14 (W) (Not a class day)   Final deadline for submitting late homework; Homework X (extra credit): HTML, PDF (not accepted late).