Schedule

The schedule below shows the tentative dates for all class topics, readings, and assignments. You should complete all assigned reading before class on the day it is listed. Labs will be available shortly before the assigned lab day. There may be some revisions to the schedule during the semester, but I will make sure to announce these changes in class. If you view this page with JavaScript enabled you can jump to the current week on the schedule, and you should see the next day of class highlighted in the schedule below.

Week 0
F
Aug 31

Welcome and Introduction

Reading
  • Read after class
  • 1.1: Introduction
  • 1.2: Eight Great Ideas in Computer Architecture
  • 1.3: Below Your Program
  • 1.4: Under the Covers
Due
  • No work due
Week 1
Su
Sep 2

Work Due

Due
M
Sep 3

Circuits, Transistors, and Logic Gates


W
Sep 5
Reading
  • No reading
Due
  • No work due

F
Sep 7

Gates, Truth Tables, and Boolean Algebra

Reading
  • B.1: Introduction
  • B.2: Gates, Truth Tables, and Logic Equations
  • Focus on Karnaugh Maps

         Linda Null and Julia Lobur

Assigned
  • No work assigned
Due
  • Quiz 1
Week 2
M
Sep 10

Combinational Logic

Reading
  • B.3: Combinational Logic
Due
  • No work due
Tu
Sep 11

Work Due

Due
W
Sep 12

F
Sep 14

Binary Math

Reading
  • 2.4: Signed and Unsigned Numbers
  • 3.2: Addition and Subtraction
Assigned
  • No work assigned
Due
  • Quiz 2
Week 3
M
Sep 17

Instructions and the ALU

Reading
  • B.5: Constructing a Basic Arithmetic Logic Unit
Assigned
  • No work assigned
Due
  • No work due
Tu
Sep 18
W
Sep 19
Reading
  • No reading
Due
  • No work due

F
Sep 21

Sequential Logic

Reading
  • B.7: Clocks
  • B.8: Memory Elements: Flip-Flops, Latches, and Registers
Due
  • Quiz 3
Week 4
M
Sep 24

SRAM and DRAM

Reading
  • B.9: Memory Elements: SRAMs and DRAMs
Assigned
  • No work assigned
Due
  • No work due
Tu
Sep 25

Work Due

Due
W
Sep 26
Reading
  • No reading
Due
  • No work due

F
Sep 28

Assembly Language and Machine Code

Reading
  • 2.1: Introduction
  • 2.2: Operations of the Computer Hardware
  • 2.3: Operands of the Computer Hardware
  • 2.5: Representing Instructions in the Computer
  • 2.6: Logical Operations
Assigned
  • No work assigned
Due
  • Quiz 4
Week 5
M
Oct 1

Exam 1

Reading
  • No reading
Assigned
  • No work assigned
Due
  • No work due
Tu
Oct 2

Work Due

Due
W
Oct 3
Reading
  • No reading
Due
  • No work due

F
Oct 5

Conditionals and Procedures

Reading
  • 2.7: Instructions for Making Decisions
  • 2.8: Supporting Procedures in Computer Hardware
Assigned
  • No work assigned
Due
  • Quiz 5
Week 6
M
Oct 8

Procedures, continued

Reading
  • No reading
Assigned
  • No work assigned
Due
  • No work due
Tu
Oct 9

Work Due

W
Oct 10
Reading
  • No reading
Due
  • No work due

F
Oct 12

Strings, Arrays, and Addressing

Reading
  • 2.9: Communicating with People
  • 2.10: MIPS Addressing for 32-Bit Immediates and Addresses
  • 2.14: Arrays versus Pointers
Assigned
  • No work assigned
Due
  • Quiz 6
Week 7
M
Oct 15

Program Translation

Reading
  • 2.12: Translating and Starting a Program
  • 2.13: A C Sort Example to Put It All Together
Assigned
  • No work assigned
Due
  • No work due
Tu
Oct 16

Work Due

Due
W
Oct 17
Reading
  • No reading
Due
  • No work due

F
Oct 19

Exam 2

Reading
  • No reading
Assigned
  • No work assigned
Due
  • No work due
Fall Break
Week 8
M
Oct 29

The Datapath

Reading
  • 4.1: Introduction
  • 4.2: Logic Design Conventions
  • 4.3: Building a Datapath
  • 4.4: A Simple Implementation Scheme
Due
  • No work due

W
Oct 31

Lab Day

Reading
  • No reading
Due
  • No work due

F
Nov 2

The Datapath, continued

Reading
  • 4.1: Introduction
  • 4.2: Logic Design Conventions
  • 4.3: Building a Datapath
  • 4.4: A Simple Implementation Scheme
Assigned
  • No work assigned
Due
Week 9
M
Nov 5

Pipelining

Reading
  • 4.5: An Overview of Pipelining
  • 4.6: Pipelined Datapath and Control
Assigned
  • No work assigned
Due
  • No work due
Tu
Nov 6

Work Due

W
Nov 7
Reading
  • No reading
Due
  • No work due

F
Nov 9

Pipeline Data Hazards

Reading
  • 4.7: Data Hazards: Forwarding versus Stalling
Assigned
  • No work assigned
Due
  • Quiz 8
Week 10
M
Nov 12

Pipeline Control Hazards

Reading
  • 4.8: Control Hazards
  • 4.9: Exceptions
Assigned
  • No work assigned
Due
  • No work due
Tu
Nov 13

Work Due

Due
W
Nov 14

Advanced Pipelining

Reading
  • 4.10: Parallelism via Instructions
Assigned
  • No work assigned
Due
  • No work due

F
Nov 16

Pause for Breath

Reading
  • No reading
Assigned
  • No work assigned
Due
Week 11
M
Nov 19

Exam 3

Reading
  • No reading
Assigned
  • No work assigned
Due
  • No work due

W
Nov 21
Reading
  • No reading
Due
  • No work due
F
Nov 23

No Class – Thanksgiving Break

Have a great break.

Week 12
M
Nov 26

Caches

Reading
  • 5.1: Introduction
  • 5.2: Memory Technologies
  • 5.3: The Basics of Caches
  • 5.4: Measuring and Improving Cache Performance
Assigned
  • No work assigned
Due
  • No work due
Tu
Nov 27

Work Due

Due
W
Nov 28
Reading
  • 5.9: Using a Finite-State Machine to Control a Simple Cache
Due
  • No work due

F
Nov 30

The Memory Hierarchy

Reading
  • 5.4: Measuring and Improving Cache Performance
  • 5.7: Virtual Memory
  • 5.8: A Common Framework for Memory Hierarchy
Assigned
  • No work assigned
Due
Week 13
M
Dec 3

Power and Performance

Reading
  • 1.6: Performance
  • 1.7: The Power Wall
Assigned
  • No work assigned
Due
  • No work due
Tu
Dec 4

Work Due

Due
W
Dec 5

Lab Day

Reading
  • No reading
Due
  • No work due

F
Dec 7

Parallelism

Reading
  • 6.1: Introduction
  • 6.2: The Difficulty of Creating Parallel Processing Programs
  • 6.3: SISD, MIMD, SIMD, SPMD, and Vector
Assigned
  • No work assigned
Due
Week 14
M
Dec 10

SMT, Multicore, and GPUs

Reading
  • 6.4: Hardware Multithreading
  • 6.5: Multicore and Other Shared Memory Multiprocessors
  • 6.6: Introduction to Graphics Processing Units
Assigned
  • No work assigned
Due
  • No work due
Tu
Dec 11

Work Due

W
Dec 12

Lab Day

Reading
  • No reading
Due
  • No work due

F
Dec 14
Reading
  • No reading
Assigned
  • No work assigned
Due
  • No work due
Su
Dec 16

Work Due

Due
Finals Week
Tu
Dec 18

Final Exam (9am–noon)

Reading
  • No reading
Assigned
  • No work assigned
Due
  • No work due