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 |
|
|
|