This course provides a modern introduction to logic design and the basic building blocks used in digital systems, in particular digital computers. It starts with a discussion of combinational logic: logic gates, minimization techniques, arithmetic circuits, and modern logic devices. The second part of the course deals with sequential circuits: flip-flops, synthesis of sequential circuits, and case studies, including counters, registers, and random-access memories. State machines will then be discussed and illustrated through case studies of more complex design systems. Different representations including truth table, logic gate, timing diagram, switch representation, and state diagram will...