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. Dates of exams are approximate for now, as we all try to adapt to the move online. Other items are subject to change. Readings are from the textbook unless otherwise indicated. Homeworks is due at 11:59pm on the date indicated.

Note that this course is remote-only. You can find Zoom meeting links here. I plan to record all class meetings, and you can find links to recordings in the same document.

Lecture date Topics Reading Assignments
January 25 (M) (No class)    
January 27 (W) About the course (Notes)    
February 1 (M) Overview/introduction (Notes) 1 (okay to skim 1.5, skim/skip 1.7, 1.9, 1.10)  
February 3 (W) Defining and measuring performance (Notes)    
February 8 (M) (No class)   Reading Quiz 1: HTML, PDF
February 10 (W) (No class)   Homework 1: HTML, PDF
(accepted without penalty through Friday)
February 15 (M) No class (part of distributed spring break)    
February 17 (W) (No class -- cancelled by University)    
February 22 (M) Introduction to assembly language (Notes) 2.1, 2.2, 2.3, 2.4  
February 24 (W) No class (substitute spring break day?)    
March 1 (M) Machine language instructions (Notes) 2.5  
March 3 (W) Logical operations; conditional execution (Notes) 2.6, 2.7 Reading Quiz 2: HTML, PDF
March 8 (M) Q&A (live): (Notes);
Support for procedures; more about assembly language (recorded) (Notes)
2.8, A.9, A.10 (up to but not including list of instructions)  
March 10 (W) Q&A (live): (Notes);
Writing complete programs for SPIM (recorded): (Notes)
   
March 15 (M) More programming examples (Notes)    
March 17 (W) Character data; addressing modes; instructions for synchronization (Notes) 2.9, 2.10, 2.11 Reading Quiz 3: HTML, PDF;
Homework 2: HTML, PDF
(both accepted through Friday without penalty)
March 22 (M) Assembling and linking (Notes) 2.12, A.2, A.3, A.4  
March 24 (W) Assembling and linking, continued (Notes)   Reading Quiz 4: HTML, PDF
(accepted through 03/31 without penalty)
March 29 (M) Homework 4 background; chapter 2 wrap-up (Notes) 2.13 (skim), 2.14, 2.15 through 2.19 (skim), 2.20, 2.21, 2.22  
March 31 (W) Numbers and arithmetic 3.1, 3.2, 3.3, 3.4 (skim), 3.5 (skim), 3.6 (skim), 3.9, 3.10 (Notes) Homework 3: HTML, PDF
(accepted through Friday without penalty)
April 5 (M) Plans for coming weeks (live): (Notes);
Introduction to designing a processor; a little about circuit design (Notes)
4.1; B.1, B.2, B.3, B.5, B.7 (skim), B.8 (skim details of clocking), B.9 (skim), B.10 (skim/skip) (in all sections, skip material on Verilog) Reading Quiz 5: HTML, PDF
(accepted through Friday without penalty)
April 7 (W) No class (part of distributed spring break)    
April 12 (M) More about designing a processor (Notes) 4.2, 4.3  
April 14 (W) Designing a processor, continued (Notes) 4.4 Homework 4: HTML, PDF
(accepted without penalty through Friday)
April 19 (M) A bit about multicycle implementations; pipelining (Notes) 4.5 (in-text only --- not supplemental online), 4.6, 4.7 (skim) Reading Quiz 6: HTML, PDF
(accepted through Friday without penalty)
April 21 (W) Pipelining, continued; exceptions (Notes) 4.8 (skim), 4.9 (skim), 4.10, 4.15, 4.16  
April 26 (M) (Catch-up day)   Reading Quiz 7: HTML, PDF
(accepted through Friday without penalty)
April 28 (W) (Catch-up day)   Homework 5: HTML, PDF
(accepted without penalty through Friday)
May 3 (M) (Catch-up day)   Reading Quiz 8: HTML, PDF
May 5 (W) Course wrap-up and evaluations (Notes)   Reading Quiz 9: HTML, PDF
Homework 6: HTML, PDF
(accepted without penalty through May 10)
May 15 (Sa) (Not a class day)   Reading Quiz 10 HTML, PDF
Homework 7: HTML, PDF
May 18 (Tu) (Not a class day)   Final deadline for all work for graduating seniors
May 21 (F) (Not a class day)   Final deadline for all work