Digital Logic Design

From logic gates to state machines, simulated in Python: Boolean algebra, canonical forms, Karnaugh maps, universal gates, adders, multiplexers, flip-flops, counters, finite state machines and memory.

  1. 1

    Bits, logic gates and truth tables

    Why computers use two voltage levels, the seven basic logic gates, and truth tables that list a gate's output for every input.

  2. 2

    Boolean algebra

    The laws of Boolean algebra, De Morgan's laws, simplifying expressions by hand, and proving any identity with a truth table.

  3. 3

    Minterms, maxterms and canonical forms

    Turn any truth table into a formula: a sum of minterms (SOP) from its 1s, or a product of maxterms (POS) from its 0s.

  4. 4

    Karnaugh maps Intermediate

    Simplify a function by eye: arrange its truth table so that neighbours differ in one variable, then circle groups of 1s.

  5. 5

    NAND and NOR: the universal gates

    Build every other gate from NAND gates alone (or NOR gates alone), and see why chips are made that way.

  6. 6

    Adders: from half adder to ripple carry Intermediate

    Add binary numbers with gates: the half adder, the full adder, chains of full adders, subtraction with two's complement, and overflow.

  7. 7

    Multiplexers, decoders and encoders

    Circuits that choose and route signals: multiplexers, demultiplexers, decoders, encoders and priority encoders, and how a multiplexer can compute any function.

  8. 8

    Designing a combinational circuit

    From a problem in words to a circuit: inputs and outputs, a truth table, a Karnaugh map, the gates, and the circuit's delay.

  9. 9

    Latches and flip-flops Intermediate

    Circuits that remember: the SR latch, the D latch, and edge-triggered D, JK and T flip-flops, with their characteristic tables.

  10. 10

    Registers and counters Intermediate

    Groups of flip-flops that hold words, shift bits along, and count: registers, shift registers, ripple and synchronous counters, and mod-N counters.

  11. 11

    Finite state machines Advanced

    Design sequential circuits as state machines: Moore and Mealy machines, state diagrams and tables, and two worked examples.

  12. 12

    Memory and programmable logic Advanced

    How memory chips are organised (address and data lines, sizes, SRAM and DRAM), ROM as a stored truth table, and PLAs and FPGAs.