Detailed Schedule
Lecture AL, 9:00am-9:50am, MWF, Prof. Levchenko (Zoom: link Links to an external site.)
Lecture AL2, 1:00pm-1:50pm, MWF, Prof. Bhowmik (Room: 3017 ECEB)
Lecture AL4, 10:00am-10:50am, MWF, Prof. Aggarwal (Zoom: link
Links to an external site. | lecture recordings: link available only to students in AL4)
Step-by-step instructions on the page Zoom, Logging In
Remember to check the ECE 120 Home page regularly for announcements.
Week |
Date (Lecture/ Discussion) |
Homework/Lab (Due dates) |
Topics /Weekly discussion-worksheet |
Assigned reading |
Lumetta slides and video (optional) |
Additional materials |
|
Patt & Patel textbook |
Lumetta course notes |
||||||
1
|
1/19 W Lecture 1 |
Overview and orientation; abstraction; computer systems organized as a systematic set of transformations |
2nd Ed.: Ch. 1 3rd Ed.: Ch. 1 |
intro_SP22.pdf Download intro_SP22.pdf, abstraction layers Lumetta lecture video
Links to an external site. (only for AL4 section) |
|||
1/20 Th Disc. 1 |
Binary representation (worksheet) |
|
|
||||
1/21 F Lecture 2 |
|
Representation using bits; unsigned integers and addition |
2nd Ed.: 2.1, 2.2.1 3rd Ed.: 2.1, 2.2.1 |
representations and bits, unsigned representation |
|||
No Lab |
|
Lab 1 is due on 01/28 | |||||
due 1/26 W |
Abstraction and Binary Representation |
||||||
01/24 M Lecture 3
|
|
Modular arithmetic; 2's complement representation |
2nd Ed.: 2.2-2.5 3rd Ed.: 2.2-2.5 |
||||
1/26 W Lecture 4 |
|
Arithmetic operations and overflow; Boolean logic; logical completeness |
2nd Ed.: 2.5-2.6 3rd Ed.: 2.5-2.6 |
||||
1/27 R Disc. 2 |
|
Binary arithmetic (worksheet) |
|
|
|
|
|
1/28 F Lecture 5 |
|
Fixed- and floating-point representation; Hexadecimal notation, text, and terminology for representations |
2nd Ed.: 2.7 3rd Ed.: 2.7 |
||||
due 1/28 F |
Introduction to Unix |
||||||
Homework 2 |
due 2/2 W |
Arithmetic, logical operations and representations |
|||||
|
|||||||
3 |
1/31 M Lecture 6 |
|
C programming: Expressions and operators |
|
|||
2/2 W Lecture 7 |
|
C programming: Basic I/O, control structures in C |
|||||
2/3 R Disc. 3 |
|
Problem solving with C (worksheet) |
|||||
2/4 F Lecture 8 |
|
C programming: Program execution, program analysis, program testing |
|||||
due 2/5 Saturday |
Introduction to C programming |
||||||
due 2/9 W |
|||||||
|
|||||||
4 |
2/7 M Lecture 9 |
|
CMOS and logic gates; optimizing logic expressions |
2nd Ed.: 3.1-3.2 3rd Ed.: 3.1-3.2 |
|||
2/9 W Lecture 10 |
|
Boolean algebra terminology, canonical forms; Karnaugh maps |
|||||
2/10 R Dis. 4 |
Karnaugh maps and function minimization (worksheet) |
||||||
2/11 F Lecture 11 |
|
Logical completeness and two-level design; |
|||||
Lab 3 |
due 2/11 F |
Intro to digital logic design with Altera Quartus software |
|||||
Homework 3: Corrections |
due 2/16 W |
||||||
Homework 4: |
due 2/16 W on PrairieLearn |
CMOS logic, Boolean expressions, minimization |
|||||
|
|||||||
5 |
2/14 M |
No Class |
Due to Midterm 1 this week |
||||
Midterm 1 |
2/15 T |
Midterm 1 |
|||||
2/16 W Lecture 12 |
|
Boolean properties; don't care simplification |
|||||
2/17 R Disc. 5 |
|
From problem statement to digital circuit (worksheet) |
|||||
2/18 F Lecture 13 |
|
Combinational logic structures: ripple-carry adder; bit-sliced design |
|||||
Lab 4 |
due (demo) 2/16 W - 2/18 F, 2/21 M, 2/22T |
Digital Logic Lab with TTL microchips |
|||||
Homework 5 |
due 2/23 W |
Boolean algebra and two-level design |
|||||
|
|||||||
6 |
2/21 M Lecture 14 |
|
Combinational logic structures: bit-sliced comparator |
bit-sliced comparator, optimizing the comparator, 2's complement comparator |
|||
2/23 W Lecture 15 |
|
Abstraction in design |
power-of-2 checker, building with abstraction, checking for upper case |
||||
2/24 R Disc. 6 |
|
Bit-sliced design (worksheet) |
|||||
2/25 F Lecture 16 Links to an external site. Links to an external site. |
|
Combinational logic structures: decoders, muxes |
2nd Ed.: 3.3 3rd Ed.:3.3 |
||||
Lab 5 |
due 2/25 F |
Combinational logic design with Altera Quartus |
|||||
Homework 6: First Attempt |
due 3/2 W |
Design of combinational logic circuits |
|||||
|
|||||||
7
|
2/28 M Lecture 17 |
|
Storing a bit: latches and flip-flops |
storing a bit, the clock abstraction Download the clock abstraction |
|||
3/2 W Lecture 18 |
|
Static Hazards; shift registers, registers with parallel load |
|||||
3/3 R Disc. 7 |
|
Sequential circuits (worksheet) |
|||||
3/4 F Lecture 19 Links to an external site. Links to an external site. |
|
Serialization |
serialization, example of serialization, second example of serialization |
||||
Lab 6 |
due (demo) 3/2 W - 3/8 T |
Combinational logic implementation with TTL |
|||||
Homework 6: Corrections |
due 3/9 W |
||||||
Homework 7: First Attempt |
due 3/9 W |
Sequential logic elements |
|||||
|
|||||||
8 |
3/7 M Lecture 20 |
|
Finite state machines; binary counters |
||||
3/9 W Lecture 21 |
|
FSM models; Clock synchronous design |
|||||
3/10 R Disc. 8 |
|
Shift registers and counters (worksheet) |
|||||
3/11 F |
|
FSM design for Lab 7/8 |
|||||
Lab 7 |
due 3/11 F |
Sequential logic implementation with Altera Quartus |
|||||
Homework 7: Corrections |
due 3/23 W |
||||||
Homework 8: First Attempt |
due 3/23 W |
Sequential logic, synchronous design |
|||||
Spring Break: March 12 - March 20 |
|||||||
9 |
3/21 M |
No class |
Due to Midterm 2 |
||||
Midterm 2 |
3/22 T |
Midterm 2 |
|||||
3/23 W Lecture 23 |
|
Modular FSM design |
|||||
3/24 R Disc. 9 |
|
FSM design (worksheet) |
|||||
3/25 F Lecture 24 |
|
Modular FSM design |
|||||
Lab 8 |
due (demo) 3/23 W - 3/25 F |
Sequential logic implementation with TTL (Round 1: Extra Credit) |
|||||
Homework 8: Corrections |
due 3/30 W |
||||||
Homework 9: First Attempt |
due 3/30 W |
FSM design and implementation |
|||||
|
|||||||
10 |
3/28 M Lecture 25 |
|
Concept of memory |
||||
3/30 W Lecture 26 |
|
From FSM to computer |
|||||
3/31 R Disc. 10 |
|
Storage elements (worksheet) |
|||||
4/1 F Lecture 27 |
|
The von Neumann model: basic components, instruction cycle |
2nd Ed.: 4.1-4.2 3rd Ed.: 4.1-4.2 |
||||
Lab 8 (cont'd) |
due (demo) 3/28 M - 3/29 T |
Sequential logic implementation with TTL (Round 2: Normal Credit) |
|||||
Homework 9: Corrections |
due 4/6 W |
||||||
Homework 10: First Attempt |
due 4/6 W |
Component-based FSM Design; Memory |
|||||
|
|||||||
11 |
4/4 M Lecture 28 |
|
Instruction formats and instruction processing |
2nd Ed.: 4.3-4.5 3rd Ed.: 4.3 |
|||
4/6 W Lecture 29 |
|
LC-3 ISA |
2nd Ed.: Ch. 5 3rd Ed.: Ch. 5 |
||||
4/7 R Disc. 11 |
|
LC-3 instructions (worksheet) |
|||||
4/8 F Lecture 30 |
|
LC-3 binary program analysis: counting to 10 |
|||||
Lab 9 |
due 4/8 F |
Introduction to LC-3 binary coding and tools |
|||||
Homework 10: Corrections |
due 4/13 W |
||||||
Homework 11: First Attempt |
due 4/13 W |
The Von Neumann Model; LC-3 ISA and programming in binary machine language |
|||||
|
|||||||
12 |
4/11 M Lecture 31 |
|
Programming in LC-3 machine language: typing a number |
||||
4/13 W Lecture 32 |
|
Problem solving using systematic decomposition; Good design |
2nd Ed.: Ch. 6 3rd Ed.: Ch. 6 |
||||
4/14 R Disc. 12 |
|
Programming in LC-3 machine language (worksheet) |
|||||
4/15 F Lecture 33 |
|
Programming example: letter frequency counter |
letter frequency planning, letter frequency decomposition, letter frequency coding |
||||
Lab 10 |
due 4/15 F |
Programming in LC-3 machine language |
|||||
Homework 11: Corrections |
due 4/20 W |
||||||
Homework 12: First Attempt |
due: 4/20 W |
LC-3 Programming in binary machine language |
|||||
|
|||||||
13 |
4/18 M |
No Class due to Midterm#3 |
|
||||
Midterm 3 |
4/19 T |
Midterm 3 (link) |
|||||
4/20 W Lecture 34 |
|
Introduction to LC-3 assembly language; the assembly process |
2nd Ed.: Ch. 7 3rd Ed.: Ch. 7 |
||||
4/21 Th Disc. 13 |
|
Systematic decomposition and LC-3 assembly programming (worksheet) |
|||||
4/22 F Lecture 35 |
|
LC-3 assembly programming: ASCII screen art example |
screen art, ascii-art.asm, ascii-art2.asm, fake.asm, rahul-msg.asm |
||||
Lab 11 |
due 4/22 F |
Introduction to LC-3 assembly and tools |
|||||
Homework 12: Corrections |
due 4/27 W |
||||||
Homework 13: First Attempt |
due 4/27 W |
LC-3 programming in assembly |
|||||
|
|||||||
14 |
4/25 M Lecture 36 |
|
Design of the LC-3 datapath; fetch and decode execution |
2nd Ed.: C.3 3rd Ed.: C.3 |
|||
4/27 W Lecture 37 |
|
LDI control signals example; hardwired control unit design |
|||||
4/28 R Disc. 14 |
|
LC-3 datapath control (worksheet) |
|||||
4/29 F Lecture 38 |
|
Microprogrammed control unit design; the Patt and Patel control unit |
2nd Ed.: C.1-C.4 3rd Ed.: C.1-C.4 |
microprogrammed control unit design, patt and patel control unit, extending lc3 isa |
|||
Lab 12 |
due 4/29 F |
Programming in LC-3 assembly language 1 |
|||||
Homework 13: Corrections |
due 5/4* W |
||||||
Homework 14: First Attempt |
due 5/4* W |
LC-3 datapath and control word |
No corrections will be graded. Study solutions on your own |
||||
5/4* Last day of instruction |
|||||||
15
|
5/2 M Lecture 39
|
|
Error Detection and Correction |
error detection, parity and hamming distance, error correction and hamming codes |
|||
5/4* W Lecture 40
|
Overview and advice |
||||||
Disc. 15 |
(self-study) |
LC-3 control unit (self-study) (worksheet) |
|||||
Lab 13 |
due 5/4* W (not on Friday) |
Programming in LC-3 assembly language 2 |
|||||
Final Exam |
Exam Schedule: |
05/06/2022 (Friday) - 1:30 pm - 4:30 pm |
Conflict Request (due by 04/15/2022)
|