Week | Date | Lec # | Topic | Reading BEFORE this date | Additional Resources | Out |
In (Due) |
1 | 1/21 | L1 | Course Introduction | ||||
1/22 | D1 | Meet your TA, unix, course logistics | |||||
2 | 1/26 | L2 | Digital representations and switch logic | Patt and Patel: 1, 2.1, 2.2, 3.1, 3.2; Maccabe: 1.1 1.2 | CMOS switch demo applet | HW #1 | |
1/28 | L3 | Boolean logic, NAND and NOR gates | Patt and Patel: 3.2; Maccabe: 2.1 | CMOS logic gate demo applets | |||
1/29 | D2 | Binary/hex numbers, boolean algebra and switch logic review | |||||
3 | 2/2 | L4 | Combinational logic blocks (adder, mux, decoder, ...) | Patt and Patel: 3.3; Maccabe: 2.3 | Adder demo applets Combinational logic demo applets | HW #2 | |
2/4 | L5 | Storage - latches, flip-flops, registers | Patt and Patel: 3.4 | Storage element demo applets | |||
2/5 | D3 | Logic design review and practice | |||||
4 | 2/9 | L6 | Memory, clocks, sequential circuits | Patt and Patel: 3.5; Maccabe: 2.2, 2.4, 3.1 | HW #3 | HW #1 | |
2/11 | L7 | State machines, intro to LC-3 datapath | Patt and Patel: 3.6, 3.7 | ||||
2/12 | D4 | State elements, sequential circuits | HW #2 | ||||
5 | 2/16 | L8 | Binary representations - integers, chars, floating point | Patt and Patel: 2.3, 2.5-2.7; Maccabe: 7, 8 | HW #4 | ||
2/18 | L9 | Floating point operations | Patt and Patel: 4.1, 4.2; | ||||
2/19 | D5 | State machine, binary representation review | HW #5 | HW #3 | |||
6 | 2/23 | L10 | Indroduction to von Neumann computers, LC-3 ISA overview | Patt and Patel: 4 | |||
2/25 | L11 | LC-3 Memory organization, load/store instructions | Patt and Patel: 5.1-5.5; Maccabe 3.2, 4.1-4.4 | ||||
2/26 | D6 | Conditional branches, loops | HW #4 | ||||
7 | 3/2 | L12 | Wrap-up and quiz review | Sample old quiz | |||
3/4 | Q1 | Quiz #1 | |||||
3/5 | D7 | Quiz review | |||||
8 | 3/9 | L13 |
Instruction execution, register transfer level (RTL), Traps Example code | Patt and Patel: 5.5, 6 |
HW #6 Programs for HW #6 | ||
3/11 | L14 | Instruction execution and the datapath - RTL description | |||||
3/12 | D8 |
RTL examples RTL Examples | HW #5 | ||||
SB | 3/16 | Spring Break | |||||
3/18 | Spring Break | ||||||
3/19 | Spring Break | ||||||
9 | 3/23 | L15 |
RTL for more instructions, introduction to I/O RTL Examples |
HW #7 Programs for HW #7 | |||
3/25 | L16 |
Interrupt driven I/O Example code | |||||
3/26 | D9 | Datapath, RTL, I/O Review | HW #6 | ||||
10 | 3/30 | L17 | Assemblers, linking and loading | Patt and Patel: 9; Maccabe: 10 |
HW #8 Programs for HW #8 | ||
4/1 | L18 |
Examples of linking and loading Example code | |||||
4/2 | D10 | Review of assembly, linking, loading | HW #7 | ||||
11 | 4/6 | L19 | Wrap-up and quiz review | ||||
4/8 | Q2 | Quiz #2 | |||||
4/9 | D11 | Quiz review | |||||
12 | 4/13 | L20 |
Introduction to C programming - data types
procedure calling, linkage conventions Example Code | Patt and Patel: 10-14 Maccabe: 6 | |||
4/15 | L21 |
Procedure calling, activation records | |||||
4/16 | D12 | Activation record contruction, stack management | |||||
13 | 4/20 | L22 | Pointers and dynamic memory allocation Example Code |
Patt and Patel: 16, 17 |
HW #9 Programs for HW #9 | ||
4/22 | L23 |
Heaps and data structures Example Code More Example Code | Patt and Patel: 19 | ||||
4/23 | D13 | Data structures and heaps | HW #8 | ||||
14 | 4/27 | L24 | LC-3 control logic, microprogramming | Patt and Patel: appendix C | |||
4/29 | L25 | LC-3 timer interrupts, multiprogramming | Patt and Patel: 10; Maccabe: 11.3, 12.2, 12.3 | ||||
4/30 | D14 | Control logic and microcode examples | HW #9 | ||||
15 | 5/4 | L19 | Wrap-up and quiz review | ||||
5/6 | Q3 | Quiz #3 | |||||
5/7 | D15 | Quiz and final exam review | |||||
EX | May 13-16, 18-19 | EX | Final exam - Day and time TBD |
Last modified: 01/21/10 Don Fussell, fussell@cs.utexas.edu