Boolean algebra and simplification
Every Boolean function over n variables can be expressed as a sum of minterms or product of maxterms. Karnaugh maps group adjacent cells sharing a common literal; each group of 2^k cells eliminates k variables. Verify that the simplified expression matches the original truth table.
Check yourself: Does every minterm in the original function belong to at least one group?
Combinational circuits
A multiplexer selects one of 2^n data inputs using n select lines. A decoder maps an n-bit input to one of 2^n output lines. Propagation delay determines the time between input change and stable output; hazards are transient glitches during this window.
Check yourself: Are the select and enable signals correctly connected?
Number representation and arithmetic
Two's complement represents signed integers: the most significant bit has a negative weight. For n bits, the range is −2^(n−1) to 2^(n−1) − 1. Overflow occurs when the result exceeds this range, not merely when a carry exists.
Check yourself: Does the sign bit of the result correctly reflect the operands' signs?
Flip-flops and registers
A D flip-flop samples its input at the active clock edge and holds the value until the next edge. Setup time is the minimum duration the input must be stable before the edge; hold time is the minimum after. Violating either can cause metastability.
Check yourself: Is the data stable for the required setup window before the clock edge?
Finite state machines
A Mealy machine's output depends on current state and input; a Moore machine's output depends only on current state. State transition tables or diagrams must account for every state-input pair. Unreachable states can be removed; equivalent states can be merged.
Check yourself: Have you assigned an output for every state (Moore) or every state-input pair (Mealy)?