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

1.1 Download 1.1

intro_SP22.pdf Download intro_SP22.pdf, abstraction layers

Lumetta lecture video Links to an external site.
Levchenko slides Download Levchenko slides

Aggarwal lecture recording

(only for AL4 section)

philosophy notes

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

Video: Lecture 2 Links to an external site.

Aggarwal lecture recording Links to an external site.

on-line tool

Binary_Representation-PDC.pdf

 No Lab

 

Lab 1 is due on 01/28

Homework 1

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.2 Download 1.2

modular arithmetic, 2's complement

Video: Lecture 3 Links to an external site.

on-line tool

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.3 Download 1.3, 1.4 Download 1.4

boolean logic, logical completeness

Video: Lecture 4 Links to an external site.

extra slides

on-line tool

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

fixed and floating point, terminology and text

Video: Lecture 5 Links to an external site.

on-line tool

Lab 1

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

1.5 Download 1.5

introduction to C, expressions and operators

Video: Lecture 6 Links to an external site.

 

2/2 W

Lecture 7

 

C programming: Basic I/O, control structures in C

1.5 Download 1.5

basic I/O, statements

Video: Lecture 7 Links to an external site.

circle.c  Download circle.c 

travel.c Download travel.c  

lines.c Download lines.c 

mystery5.c Download mystery5.c 

C code examples

2/3 R        Disc. 3

 

Problem solving with C (worksheet)

2/4 F

Lecture 8

 

C programming: Program execution, program analysis, program testing

1.5 Download 1.5

1.6 Download 1.6

program execution, program analysis, testing programs

Video: Lecture 8 Links to an external site.

binary_conv.c Download binary_conv.c 

on-line tool

fun with floating point, bit manipulation

Lab 2

due 2/5 

Saturday

Introduction to C programming

Homework 3: First Attempt

due 2/9 W

Introduction to C programming

        

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.1.1 Download 2.1.1

logic gates, optimizing logic expressions

Video: Lecture 9 Links to an external site.

on-line tool

2/9 W

Lecture 10

 

Boolean algebra terminology, canonical forms; Karnaugh maps

2.1.2-2.1.4 Download 2.1.2-2.1.4

Boolean terminology, Karnaugh maps

Video: Lecture 10 Links to an external site.

on-line tool

2/10 R

Dis. 4

Karnaugh maps and function minimization (worksheet)

2/11 F

Lecture 11

 

Logical completeness and two-level design;

2.1.5-2.1.6  Download 2.1.5-2.1.6 

two level logic, pareto optimization

Video: Lecture 11 Links to an external site.

on-line tool

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.2 Download 2.2

Boolean properties, don't cares, caring and glue logic

Video: Lecture 12 Links to an external site.

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 

2.3 Download 2.3

ripple-carry adder, bit-slicing

Video: Lecture 13 Links to an external site.

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

2.4 Download 2.4

bit-sliced comparator, optimizing the comparator, 2's complement comparator

Video: Lecture 14 Links to an external site.

2/23 W

Lecture 15

 

Abstraction in design

2.5.1-2.5.3 Download 2.5.1-2.5.3

power-of-2 checker, building with abstraction, checking for upper case

Video: Lecture 15 Links to an external site.

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

2.5.4 Download 2.5.4

multiplexers, decoders

Video: Lecture 16 Links to an external site.

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

2.6 Download 2.6

storing a bit, the clock abstraction Download the clock abstraction

3/2 W

Lecture 18

 

Static Hazards; shift registers, registers with parallel load

2.7 Download 2.7

2.8 Download 2.8

static hazards, registers

Video: Lecture 18 Links to an external site.

3/3 R

Disc. 7

 

Sequential circuits (worksheet)

3/4 F

Lecture 19 Links to an external site. Links to an external site.

 

Serialization

3.1.1 - 3.1.2 Download 3.1.1 - 3.1.2

serialization, example of serialization, second example of serialization

Video: Lecture 19 Links to an external site.

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.1.3 - 3.1.7 Download 3.1.3 - 3.1.7

finite-state machines, binary counters

Video: Lecture 20 Links to an external site.

3/9 W

Lecture 21

 

FSM models; Clock synchronous design

3.2 Download 3.2

machine models, fsm design process, color sequencer

Video: Lecture 21 Links to an external site.

3/10 R

Disc. 8

 

Shift registers and counters (worksheet)

3/11 F

Lecture 22 Links to an external site.

 

FSM design for Lab 7/8

3.3 Download 3.3

design of the lab fsm

Video: Lecture 22 Links to an external site.

Link: download Links to an external site.

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.4 Download 3.4

extending keyless entry

Video: Lecture 23 Links to an external site.

3/24 R

Disc. 9

 

FSM design (worksheet)

3/25 F

Lecture 24

 

Modular FSM design

3.5 Download 3.5

vending machine

Video: Lecture 24 Links to an external site.

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.6 Download 3.6

memory

Video: Lecture 25 Links to an external site.

3/30 W

Lecture 26

 

From FSM to computer

3.7 Download 3.7

3.8 Download 3.8

from fsm to computer

Video: Lecture 26 Links to an external site.

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

von neumann model, lc-3 as von neumann

Video: Lecture 27 Links to an external site.

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

instruction formats, instruction processing

Video: Lecture 28 Links to an external site.

4/6 W

Lecture 29

 

LC-3 ISA 

2nd Ed.: Ch. 5

3rd Ed.: Ch. 5

instructions illustrated, the lc-3 isa

Video: Lecture 29 Links to an external site.

4/7 R

Disc. 11

 

LC-3 instructions (worksheet)

4/8 F

Lecture 30

 

LC-3 binary program analysis: counting to 10

counting to ten

Video: Lecture 30 Links to an external site.

counting-example.pdf

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

typing in a number, computers are dumb

Video: Lecture 31 Links to an external site.

readnum.bin

4/13 W

Lecture 32

 

Problem solving using systematic decomposition; Good design

2nd Ed.: Ch. 6

3rd Ed.: Ch. 6

systematic decomposition, good design

Video: Lecture 32 Links to an external site.

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

Video: Lecture 33 Links to an external site.

letterfreq.bin

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

assembly language, assemblers

Video: Lecture 34 Links to an external site.

letterfreqasm.asm

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

Video: Lecture 35 Links to an external site.

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.1.1-4.1.3 Download 4.1.1-4.1.3

lc-3 control signals, lc-3 fetch control signals

Video: Lecture 36 Links to an external site.

4/27 W

Lecture 37

 

LDI control signals example; hardwired control unit design

4.1.4-4.1.5 Download 4.1.4-4.1.5

lc-3 LDI control signals, hardwired control unit design.pdf

Video: Lecture 37 Links to an external site.

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

4.1.6 Download 4.1.6

microprogrammed control unit design, patt and patel control unit, extending lc3 isa

Video: Lecture 38 Links to an external site.

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

4.2 Download 4.2

error detection, parity and hamming distance, error correction and hamming codes

Video: Lecture 39 Links to an external site.

5/4* W

Lecture 40

 

Overview and advice

summary, advice, final exam Download final exam

Video: Lecture 40 Links to an external site.

Disc. 15

 

(self-study)

LC-3 control unit (self-study) (worksheet)

Discussion15-solution.pdf

Lab 13  

 due 5/4* W   (not on Friday)

Programming in LC-3 assembly language 2

Final Exam

Exam Schedule:

(Link Links to an external site.)

05/06/2022 (Friday) -

1:30 pm - 4:30 pm

Conflict Request (due by 04/15/2022)