Digital Circuit Design

an online short course by Eric Hehner

This short course on digital circuit design begins at the very beginning, with atoms, assuming no knowledge. It is concerned with logic, not layout. It ends with the most advanced method of circuit design: compiling programs to circuits.

The course notes are here. There are 4 lectures for you to watch at your convenience.

Lecture segment 1 time: 20 minutes 41 seconds
Lecture segment 2 time: 13 minutes 56 seconds
Lecture segment 3 time: 22 minutes 58 seconds
Lecture segment 4 time: 32 minutes 14 seconds

total lecture time: 1 hour 29 minutes 49 seconds

lecture transcripts

I designed a computer for teaching the basics of computer design in my course CSC258. Real processors have way too many details that do not illustrate any important principles of computer design, but they have to be learned in order to write programs in their language. So I designed a simple, basic computer whose machine language is easily learned, and I can show all the processor circuits in complete detail. Here is the assembly language. Here is the assembler and simulator written in C. Here is the executable. Here is a warning concerning its operation. Here are the circuit diagrams. Here is a little assembler program to try, if you like. And here is a function to print an integer and a function to print a string.