Schedule

This schedule is tentative. Check this  page frequently for updates.

Readings and warm-up exercises should be completed by midnight before the class for which they are assigned. (Warm-up exercises can be found on PioneerWeb.) Assignments are due to my office by 5:30 p.m.

Skip to week: Current 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Final

Week   Date Topic Reading Warm-up
Assignments
0
Fri
Aug 26
Circuits & transistors



1 Mon Aug 29
Building logic gates

Homework 1

Tue Aug 30
Lab 1: Building logic gates




Wed Aug 31
Boolean expressions, gates, and truth tables
C.2 (on the CD)


Fri Sep 2
Simplifying boolean expressions
Handout: "Focus on Karnaugh Maps"
Homework 2
2 Mon Sep 5
Combinational logic
C.3 (You may skim or skip over the material on ROMs and Don't Cares; read the rest more carefully.)


Tue Sep 6
Lab 2: Using TTL chips
Pin-out of selected TTL chips
Exercises 1-3 should be completed before lab.

Wed Sep 7
The Arithmetic Logic Unit (ALU) C.5 (You may skim or skip the material on MIPS. We will skip C.4 but you may read it if you wish.)


Fri Sep 9
Signed & unsigned numbers; addition & subtraction; completing the ALU
2.4; 3.1 - 3.2
Homework 3
3 Mon Sep 12
Carry Lookahead Addition C.6

Tue Sep 15 Lab 3: Adders & decoders




Wed Sep 14 Sequential logic
C.7 & C.8; handout from Stallings


Fri Sep 16 Memory;
digital logic wrapup
C.9 (Focus on SRAM. Optionally, you may also read C.11 & C.12.)
Homework 4
4 Mon Sep 19 The Big Picture
1.1 - 1.3


Tue Sep 20 Lab 4: Flip-flops




Wed Sep 21 Performance 1.4 - 1.9

Fri Sep 23 Instructions
2.1 - 2.3
Homework 5
Week   Date Topic Reading Warm-up
Assignments
5 Mon Sep 26 Operands continued;
Machine language
2.5


Tue Sep 27 Lab 5: Shift-registers & counters




Wed Sep 28 Machine language continued;
Logical & branch operations
2.6 - 2.7


Fri Sep 30 AVR documentation;
Loops and conditionals
Browse (do not read thoroughly):
AVR documentation
2.8 - 2.9 Homework 6;
Midterm 1 assigned
6 Mon Oct 3
Getting started with AVR (catchup)
No reading



Tue Oct 4 Lab 6: Intro to AVR




Wed Oct 5 Implementing procedures
2.8 - 2.9

Fri Oct 7 Class cancelled: Midterm 1
No reading

Midterm 1
7 Mon Oct 10 Addressing, revisited
2.10


Tue Oct 11 Lab 7: Large numbers on the AVR




Wed Oct 12 Addressing, continued;
Synchronization
2.11-2.12
(Optionally, also read 2.13-2.14)


Fri Oct 14 Program translation 2.16-2.19
(Okay to skim; you won't be responsible for knowing the details of ARM or x86 instructions)
Homework 7
Fall Break 
Week   Date Topic Reading  Warm-up
Assignments
8 Mon Oct 24
Instruction set architecture Review 2.16-2.19

Tue Oct 25 Lab 8: Implementing function calls




Wed Oct 26 The processor: Datapath
4.1 - 4.3
✔ 

Fri Oct 28 The processor: Control
4.4
✔  Homework 8
9 Mon Oct 31 Control, continued
Review 4.4



Tue Nov 1
Lab: Review of functions




Wed Nov 2 Pipelining
4.5


Fri Nov 4 Pipelined datapath & control
4.6
Homework 9;
Midterm 2 assigned
10 Mon Nov 7 Hazards & Exceptions
Skim 4.7 - 4.9
(Look for high level ideas!)


Tue Nov 8 Lab 9: Controlling a 7-segment display




Wed Nov 9 Instruction-level parallelism;
Real stuff
4.10 - 4.11, 4.13 - 4.14


Fri Nov 11 Class cancelled: Midterm 2


Midterm 2
11 Mon Nov 14 Error-correcting codes
e-Reserve


Tue Nov 15 Lab A: Error-correcting codes




Wed Nov 16  The memory hierarchy
5.1-5.2


Fri Nov 18 Cache performance
5.3
Homework A
12 Mon Nov 21 Multilevel caching;
Virtual memory;
Interrupts on the AVR
5.4: stop before "Making Address Translation Fast: the TLB"


Tue Nov 22 Lab B: External Interrupts



Wed Nov 23 Virtual memory
5.4


Fri Nov 24 Happy Thanksgiving!



Week   Date Topic
Warm-up
Assignments
13 Mon Nov 28
The memory hierarchy, revisited;
Cache control & coherence
5.5; skim 5.7-5.8; 5.10-5.12
(Optionally, also read 5.6 on Virtual Machines - it's short!)


Tue Nov 29
Lab C: Serial communication
Read lab instructions before class!



Wed Nov 30
I/O
6.1 - 6.6


Fri Dec 2
I/O, continued
6.7-6.9; 6.12-6.13
Homework B
14 Mon Dec 5
Parallel system architectures
Skim 7.1 - 7.7 (optionally, 7.8 too)


Tue Dec 6
Lab D: GPU performance




Wed Dec 7
Parallel system performance
Skim 7.9 - 7.13


Fri Dec 9
Course evaluations & wrap-up
No reading, but take a little time to reflect with some warm-up questions.
Homework C

Tue
Dec 13
Final exam, 2 p.m.

Janet Davis (davisjan@cs.grinnell.edu)

Created August 2007
Last revised December 3, 2011