|
|
|
|
|
|
|
(Due) |
|
|
|
|
Course intro and overview | HW #1 | ||
|
|
|
|
Meet your TA, unix, binary/hex numbers | |||
|
|
|
L2 | Computer system abstractions, digital vs. analog | P&P 1, 2.1, 2.2; Maccabe 1.1, 1.2 | ||
|
|
|
L3
|
Transistors and how they work | P&P 3.1 | ||
|
|
|
|
Switch logic | P&P 3.2; Maccabe 2.1 | HW #2 | |
|
|
|
|
Switches and simple circuits | |||
|
|
|
|
Boolean algebra and logic design | HW #1 | ||
|
|
|
L6
|
Combinational logic circuits | P&P 3.3; Maccabe 2.3 | ||
|
|
|
|
More combinational logic circuits, basic storage | P&P 3.4 | HW #3 | |
|
|
|
|
Practice in logic design | |||
|
|
|
|
D-latches, flip-flops, register files | Maccabe 2.2, 2.4 | HW #2 | |
|
|
|
|
Memory organization, sequential circuits/clocks | P&P 3.5; Maccabe 3.1 | ||
|
|
|
|
State machines | P&P 3.6 | HW #4 | |
|
|
|
|
State machine practice | |||
|
|
|
|
Introduction to the LC-3 datapath, binary representations | P&P 2.3-2.7; Maccabe: Chapter 7 | HW #3 | |
|
|
|
|
Binary representations: integers, characters | |||
|
|
|
|
Floating-point numbers | Maccabe: Chapter 8 | ||
|
|
|
|
Binary representations | |||
|
|
|
|
Floating-point operators, von Neumann machine models | P&P Chapter 4 | HW #4 | |
|
|
|
|
Exam review, von Neumann computation model | |||
|
|
|
|
Midterm Exam #1 | HW #5 | ||
|
|
|
|
Exam review | |||
|
|
|
|
LC-3 ISA Overview | P&P Chapter 5.1, 5.2 | ||
|
|
|
|
LC-3 Memory overview (load/store instructions) | P&P 5.3, Maccabe 3.2 | ||
|
|
|
|
Addressing modes, branch instructions | P&P 5.4-5.6 | HW #6 | |
|
|
|
|
Practice with LC-3 instruction set, conditional branches, loops | |||
|
|
|
|
Instruction execution and RTL | P&P Chapter 6 | HW #5 | |
|
|
|
|
TRAP instruction, more RTL | |||
|
|
|
|
Introduction to I/O | P&P Chapter 8 | HW #7 | |
|
|
|
|
More details on I/O | |||
|
|
|
|
The assembly process (two-pass) | P&P Chapter 7 | HW #6 | |
|
|
|
|
Spring Break | |||
|
|
|
|
Spring Break | |||
|
|
|
Spring Break | ||||
|
|
|
|
Spring Break | |||
|
|
|
2-pass assembly | P&P Chapter 7 | |||
|
|
|
Linking and Loading | P&P Chapter 9, Maccabe Chapter 10 | |||
|
|
|
Practice with assembly, linking, loading | ||||
|
|
|
Machine control register, TRAP, HALT | HW #7 | |||
|
|
|
|
Review | |||
|
|
|
|
Midterm Exam #2 | HW #8 | ||
|
|
|
|
Exam rehash | |||
|
|
|
|
Introduction to C programming, data types | P&P Chapter 10, 11, 12 | ||
|
|
|
|
Procedure calling protocols | |||
|
|
|
|
The stack and activation records | P&P Chapter 13, 14, Maccabe Chapter 6 | HW #9 | |
|
|
|
|
Procedure calling | |||
|
|
|
|
Recursion and procedure calling optimizations | HW #8 | ||
|
|
|
|
Pointers, memory allocation | P&P Chapters 15-17, 19; skim chapter 18 | ||
|
|
|
|
The heap | HW #10 | ||
|
|
|
|
Dynamic memory management | |||
|
|
|
|
Heap management and bookkeeping | HW #9 | ||
|
|
|
|
LC-3 Control Logic - I | P&P Appendix C | ||
|
|
|
|
LC-3 Control Logic - II | HW #11 | ||
|
|
|
|
LC-3 Control logic practice | |||
|
|
|
|
LC-3 Control Logic - III | HW #10 | ||
|
|
|
|
LC-3 Interrupts | P&P Chapter 10 | ||
|
|
|
|
Midterm Exam #3 | |||
|
|
|
|
Exam review | |||
|
|
|
|
Timer interrupts, memory hierarchies | Maccabe 11.3, 12.2, 12.3 | ||
|
|
|
|
New ISAs and paper discussion | "Scaling to the EDGE of Silicon," by Burger, Keckler, et al. | ||
|
|
|
|
x86 ISA and paper discussion | P&P Appendix B, "This History of the Microcomputer - Invention and Evolution," by Mazor | ||
|
|
|
|
Final exam review | |||
|
|
|
|
Course wrap-up and cookies | HW #11 | ||
|
|
|
|
Final Exam - Thursday May 14, 2-5pm, Location WAG 420 |
Last modified: 04/29/09
Steve Keckler, skeckler@cs.utexas.edu