CS-281 Schedule Prior (F14)

Date Lecture Reading Homework
Week 0:
Fri Aug 29 Introduction Syllabus Read Chapter 1
Week 1:
Mon Sept 1 Memory Model, Byte Ordering, Binary, Hex 2.1
Tues Sept 2 HWLab1: Breadboard/Arduino Intro
Wed Sept 3 Quiz; Booleans and Bit Operations
Fri Sept 5 Integer Representations; Conversions 2.2 Datalab Out (datalab-handout.tar); Lab2 Prelab Out
Week 2:
Mon Sept 8 Two's Complement (hexdec.cpp) 2.2-2.3
Tues Sept 9 HWLab2: Combinational Building Blocks IC Docs; MuxValidate.cpp Lab2 Prelab Due
Wed Sept 10 Quiz; Integer Arithmetic 2.3
Fri Sept 12 Program Encodings, Data Formats 3.1-3.3 Lab3 Prelab Out
Week 3:
Mon Sept 15 Assembly Language Introduction by Example 3.4
Tues Sept 16 HWLab3: Karnaugh Map Simplification; pot2binary.cpp
Wed Sept 17 Disassembly and inferring semantics of instruction operands and execution 3.5 Datalab Due
Fri Sept 19 Movement, Arithmetic, Logical Instructions 3.5 ALULab Project and ALU.circ template (and no prelab)
Week 4:
Mon Sept 22 Parameter passing 3.7.1
Tues Sept 23 HWLab4: Sensors and Actuators
Wed Sept 24 Function call and return and stack frame arith.c 3.7.2
Fri Sept 26 More arithmetic and logical instructions
Week 5:
Mon Sept 29 hello.s: Asm and GDB/DDD ALU Due; Bomblab Out
Tues Sept 30 HWLab5: Sequential Circuit Introduction
Wed Oct 1 Midterm 1
Fri Oct 3 Condition Codes and use by categories of Machine Instructions 3.6.1-3.6.4
Week 6:
Mon Oct 6 Caller/Callee saves; Loops in Asm 3.6.5; 3.7.3 NextClass hello.s loop
Tues Oct 7 Midterm1 2nd chance; bomblab questions
Wed Oct 8 Switch Statements and Asm jump tables; Recursion practicum 3.6.7, 3.8
Fri Oct 10 Data structures (list.c); Intro buffer overflow 3.9, 3.12 NextClass prime.s recursion, Lab6 Prelab Out
Week 7:
Mon Oct 13 Buffer overflow completion; Intro Y86 ISA 3.12, 4.1 Bomblab Due; Buflab Out
Tues Oct 14 HWLab6: Motor control
Wed Oct 15 Y86 ISA, Encoding
Fri Oct 17 No class: Fall Study Break
Week 8:
Mon Oct 20 Y86 Program Walk-through; Encoding Refresher 4.1
Tues Oct 21 HWLab7: Ant Brain - ant.tar
Wed Oct 22 Sequential Datapath I: Building Blocks, Initial Stages Skim 4.2; Start 4.3 NextClass: Y86 Sum first N integers
Fri Oct 24 Sequential Datapath II: Complete stages with instruction walk-through 4.3 NextClass: Recursive Sum of List of integers; Buflab Due
Week 9:
Mon Oct 27 Group Design: RTL for Y86 Instructions
Tues Oct 28 HWLab7 Part II: AntBrain
Wed Oct 29 Midterm 2 Y86 Datapath - CPULab1.tar
Fri Oct 31 Y86 Datapath Walkthrough 4.3-4.4
Week 10:
Mon Nov 3 SEQ Control Path
Tues Nov 4 Stepper Motor Controller: StepperMotor.h, StepperMotor.cpp Y86 Control - CPULab2.tar
Wed Nov 5 Cache I Skim 6.1; Read 6.2, 6.3 carefully CPUlab Datapath Assignment Due; NC - Y86 SearchArray.ys due
Fri Nov 7 Cache II 6.4 Cachelab Out - cachelab-handout.tar
Week 11:
Mon Nov 10 Conclude Memory Hierarchy CPUlab Controlpath Due
Tues Nov 11 No Lab; Cachelab Advice
Wed Nov 12 Exceptional Control Flow (slides); Process Intro (fork.c) 8.1-8.4
Fri Nov 14 Signals (slides) 8.5
Week 12:
Mon Nov 17 More ECF and Processes and Signals (myfork.c) 8.5 Cachelab Due; Shell Lab Out, shlab-handout.tar
Tues Nov 18 Final HW Lab Project Planning
Wed Nov 19 Signals and Concurrency Non-queueing Signals NextClass
Fri Nov 21 Pipelining I
Thanksgiving Break: Nov 23-30
Week 13:
Mon Dec 1 Pipelining II
Tues Dec 2 Final HW Lab Project
Wed Dec 3 Floating Point Representation I Shell Lab Stage I Demo
Fri Dec 5 Floating Point Representation II Shell Lab Stage III Demo
Week 14:
Mon Dec 8 Review and Wrapup Shlab Due
Tues Dec 9 Final HW Lab Project
Wed Dec 10 Midterm 3
Fri Dec 12 HW Lab Project Demonstration Day
Final Exam:
Thurs Dec 18 Final Exam 9-11 am


© Thomas Bressoud 2015