Introduction to Discrete Math (Boolean functions, propositional logic, Boolean algebra, induction, graphs, and trees).
Representation by bits (binary representation, one’s complement, two’s complement).
Combinational circuits (shifters, adder, subtractor, multiplexer, encoder, decoder).
Cost and delay of circuits (upper bounds and simple lower bounds).
Memory devices (flop—flop, register, RAM/ROM).
Synchronous circuits and finite state machines (synthesis, functional analysis, timing analysis, minimum clock period).
Design of a simple microprocessor (ALU, datapath, file register, control, machine language, assembly).
Experience with design and simulation of circuits using a computer.