Week 1

Introduction to machine and assembly instruction sets via the PDP-8, a computer from the 1960s. Two's complement integers.

Reading: Patterson and Hennessy, Chapter 1
Read by Friday, September 16 Monday, September 19.
Meeting the PDP-8/E
Due via the Courses hand-in system paper by 8:30AM Monday, September 19.
Reading: Introduction to Programming, PDP-8 Family Computers, Chapter 2.
Read as needed for your assignments. We will work only with Chapter 2 of this document, though some of the rest of it is pretty interesting reading from a historical point of view. Note that Chapter 2 begins on page "01-36" of this pdf file.
Reading: Section 2.4 of Patterson and Hennessy is about signed and unsigned numbers in computers. You might also find something of value in the Wikipedia entries about Two's complement integers, hexadecimal integer representation, and octal integer representation.
Read as you see fit. I only care that you are able to convert numbers between bases, and back and forth between two's complement and base ten.

Weeks 2 and 3

More PDP-8.

PDP-8 experiments
Exercises for in class on September 21.
Multiplication on the PDP-8/E
Submit your program as multiplication.pal via the Courses hand-in system by noon Saturday, September 24.
Recursion on the PDP-8/E
Due by 8:30 AM Monday, October 3.
Clearing the PDP-8/E's memory
Due by 8:30 AM Monday, October 3.
Reading: Patterson and Hennessy, Chapter 2
Read by Wednesday, September 28. This chapter is long. Note that we will *not* be writing a bunch of programs in MIPS, but we will use the MIPS instruction set as a foundation for the rest of the term, so familiarity with its instruction format is important.

Week 4

Digital logic

Reading: Patterson and Hennessy, Appendix C (or on the textbook's CD) on digital logic.
Read by Wednesday, October 5.
Get and play with Logisim
By Wednesday, October 5. It's also installed in the CS labs in the CMC.
Do these digital logic problems.
Due by 8:30 AM Monday, October 10. See the assignment itself for hand-in instructions.

Week 5

Digital logic arithmetic circuits

Reading: Sections 3.1-3 and 3.5 in Patterson and Hennessy.
Read by Wednesday, October 12.
Reading: The Wikipedia article on endianness (also known as byte order).
Read by Wednesday, October 12.
Do these problems on digital arithmetic and byte order.
Due by 8:30 AM Friday, October 14. Hand in on paper.

Week 6

Midterm break, takehome test, datapaths and control.

The takehome exam
Due on paper by 8:30AM Friday, October 21.
Reading: Patterson and Hennessy, Sections 4.1-4.4.
Start reading after you're done with the exam. We'll start looking at these topics in class Wednesday and Friday.

Week 7

Non-pipelined datapaths and control.

Phase 1 of an implementation of the PDP-8
Due via e-mail 8:00AM Friday, October 28. See the assignment for details.
Here are the datapath pictures.
For use in class on Oct 28.

Week 8

Pipelined datapaths and control.

Phase 2 of an implementation of the PDP-8
Due 8:30AM Friday, November 4.
Reading: Patterson and Hennessy, Sections 4.5-4.8.
Read during week 8.

Week 9

Pipelining, performance analysis, and memory hierarchies.

The second takehome exam
Due on paper by 8:30AM Monday, November 14.
Reading: Patterson and Hennessy, Sections 1.4 (Performance) and 5.1-5 (Memory hierarchies).
Read during week 9.

Finals Week

Takehome final exam
Due on paper or via e-mail as a PDF by 5:00PM Monday, November 21.