CS 251 - Computer Organization and Design

This is a planned schedule; the schedule will be updated through the term to reflect the lectures actually given.

Section 4.7 (Hazard--READ THIS)
Section 4.8 (Control Hazards--READ THIS)
Date Topic Readings (*'ed are optional)
Sep 4 Introduction/overview, admin, ARM. ARM Overview, ARM Reference Sheet
Sep 9 1st, 2nd, and 3rd simulator examples; performance Chapter 2*, A2 (Truth tables), A3 (Circuits)
Sep 11 Logic design, truth tables, minterms, don't cares; Boolean algebra, gates, Transistors through CMOS Not.
Sep 16 Finished transistors. Deriving Truth table, XOR; decoders, muxes. A9,A64-A66 (Error Correction)*, Section 4.2 (Clocked Circuits),
Sep 18 Clocks and sequential circuits; SR-latch. D-latch; D-flipflop; Register file. Started tri-state logic. A7,A8 (Latches), A8 (Flip-flops)
Sep 23 Tri-state; RAM. FSM; Simple traffic light example; Section 5.2 (RAM), Appendix 9 (RAM)
Sep 24 A1 due
Sep 25 Extended traffic light example, extended to pedestrians. Appendix 10 (FSM)
Sep 30 Breadboards, chips, building circuits. Hexidecimal, ASCII. Data representation, ripple carry adder, Bitwise Operations; Section 2.4 (Binary Numbers) Section 3.2 (Binary Arithemtic)
Section 2.6 (Shifting and Bitwise Operations) A5 (1-bit and 64-bit ALUs)
Section 3.3 (Multiplication)
Oct 2 Shifting, ALU; Multiplication. Floating point representation. Section 3.5 (Floating Point),
(Floating Point Historical Perspective)*
Oct 7 Floating point addition, multiplication, accuracy. Single cycle computer: introduction. Sections 4.1-4.4 (Single Cycle Datapath--READ THIS)
Oct 8 A2 due
Oct 9 Started Single Cycle Computer Datapath. Example instructions on datapath
Oct 10 A2 due
Oct 11-19 Reading week
Oct 21 Single Cycle Computer control. Modifying the datapath.
Oct 23 Multicycle datapath. Introduction to pipelined computer. Pipeline computer datapath. Section 4.5 (Introduction to Pipelined Computer)
Oct 28 Pipeline computer datapath, control. Data hazards, NOPs, Forwarding Section 4.6 (Pipelined Datapath, Control--READ THIS)
Oct 30 Review for midterm. Pipeline Stalls.
Nov 3 A3 due
Nov 4 Control hazards. Section 4.8 (Control hazards, branch prediction)
Nov 5 Midterm
Nov 6 Assume branch taken, 1-bit branch prediction. 2-bit branch prediction. Timing.
Nov 11 Code Rearrangement. Exceptions. Section 4.9 (Exceptions)
Nov 13 Direct map cache. Block size cache. Section 5.1 (Memory Hierarchy)
Section 5.3, Section 5.4 (Cache--READ THESE)
Section 5.2 (Memory Technologies),
Nov 14 A4 due
Nov 18 Array vs linked list code. Set associative caches.
Nov 20 Splitting memory address into TAG,Index,Block, and Byte bits. LRU. AMAT.
Nov 24 A5 due
Nov 25 Virtual Memory, TLB Section 5.7 (Virtual Memory--READ THIS) Section 1.4 (Some on IO), Section 5.2 (later parts on IO)
Nov 27 Multiprocessing.Microprogramming. Vax. SPARC. ARM, x86. Section 6 (very long! only lightly read (skim) most parts)
Dec 1 A6 due
Dec 2 HDD vs SSD. Review for final exam.
Dec 7 FINAL EXAM