|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Announcements
Course Description
A bottom-up exploration of the interaction between computer hardware and software. Topics begin with an introduction to digital logic, and continue through elementary processor design, to assembly language, machine data representation, and computer arithmetic. Other topics in contemporary computer architecture such as multicore processors and GPGPU's may be discusses as time allows. Projects include hardware and simulated digital circuits as well as programs in assembly language.
Book, Course Information, and Prerequisites
Course Instructor
Schedule |
Date | Lecture Topic(s) | Readings | Assignments |
W-January 14 | Intro slides | Chapter 1 | First Day Survey - Due Friday |
F-January 16 | Binary Arithmetic & Boolean Logic slides | Section 2.1-2.3.1 | |
M-January 19 | Holiday- No Class | ||
W-January 21 | Gates & Boolean Logic slides | Section 3.1-3.4 | Homework 1 - due 1/28 (in class) |
F-January 23 | More Digital Logic & Basic Circuits slides | Section 3.5 | |
M-January 26 | Intro to Electronics & More Circuits slides | Section 3.6-3.6.3 | |
W-January 28 | More Memory Circuits slides | ||
F-January 30 | More Memory Circuits slides | Section 3.6.5 | Homework 2 - due 2/6 (at the beginning of class) |
M-February 2 | Number Representations slides | Section 2.4-2.4.2, 2.4.4 | |
W-February 4 | More on number representations slides | Section 2.6-2.6.1 | |
F-February 6 | Still more on number representations, ASCII slides | Section 2.6.3-2.6.4 | |
M-February 9 | More on characters, Begin ALUs slides | Section 4.1-4.2 | Homework 3 - due 2/16 (at the beginning of class) |
W-February 11 | The datapath slides | Section 4.3-4.7 | |
F-February 13 | Instructions and Instruction Set Architecture (ISA) slides | Section 4.8 | |
M-February 16 | Snow Day | ||
W-February 18 | Midterm 1 | ||
F-February 20 | Snow Day Again | ||
M-February 23 | More on Instructions and ISAs slides | Section 4.9 | |
W-February 25 | Still more on instructions and ISAs slides | Section 4.10 | Homework 4 - due 3/4 (at the beginning of class) |
F-February 27 | Assembly Language slides | Section 4.11-4.12 | |
M-March 2 | More on Assembly Language slides | ||
W-March 4 | More on Assembly Language slides | Homework 5 - due 3/18 Kidder Assignment - due 3/27 |
|
F-March 6 | Snow Day | ||
M-March 9 | Spring Break - No Class | ||
W- March 11 | Spring Break - No Class | ||
F-March 13 | Spring Break - No Class | ||
M-March 16 | Control unit slides | Section 4.13 | |
W-March 18 | Microgramming slides | ||
F-March 20 | Macroinstruction format slides | Sections 5.1-5.2.1, 5.2.3-5.2.4 | |
M-March 23 | Expanding opcodes slides | Section 5.2.5-5.4.2 | Homework 6 - due 3/30 |
W-March 25 | Addressing modes slides | ||
F-March 27 | Overview of pipelining slides | Section 5.5 | |
M-March 30 | Extended aside: What's the big deal about Java anyway?, Review slides | ||
W-April 1 | Midterm 2 | ||
F-April 3 | Holiday- No Class | ||
M-April 6 | Memory management - caches slides | Section 6.1-6.3 | |
W-April 8 | Memory management - more on caches slides | Section 6.4 | |
F-April 10 | Virtual Memory: Paging slides | Section 6.5 | Homework 7 - due 4/17 |
M-April 13 | Segmentation, Begin Interrupts slides | Section 6.5.5, 6.5.6, 4.7, 4.9.2 | |
W-April 15 | More on interrupts, RISC design philosophy slides | Section 4.14, 9.1-9.2 | |
F-April 17 | Overview of Embedded Systems slides | Chapter 10 | Triumph of the Nerds Assignment - due 4/27 |
M-April 20 | More on Embedded Systems, Thought Experiment slides | Homework 8 - Reading Only | |
W-April 22 | Alternative Architectures slides | Sections 9.2-9.4 | |
F-April 24 | GPUs slides | ||
M-April 27 | Triumph of the Nerds Discussion, Course evals | ||
W-April 29 | Review | ||
Fri-May 8 | Final Exam, Time: 5:30-8:00pm Alternate Exam Times available May 4th, May 5th and May 6th |