Combinational Logic Circuits

Combinational outputs are functions of current inputs; multiplexers, decoders, encoders, arithmetic blocks, comparators, ROMs, and programmable logic are reusable structures whose correctness includes propagation, hazards, enable behavior, and electrical loading.

A combinational circuit has no intentional memory: once inputs settle, outputs settle to a Boolean function of those inputs. Internal gates still have delay, so during transitions the output can briefly depend on path history. The distinction is architectural, not a claim of instantaneous behavior.

Reusable structures #

Block Mapping Design use
Multiplexer selects one of 2k2^k inputs with kk select bits routing and direct function realization
Demultiplexer routes one input to a selected output distribution with enable
Decoder maps a code to one/few asserted outputs address/select generation
Encoder maps asserted input to a code event compression; priority resolves multiples
Comparator reports equality/order bounds, sorting, control
Adder/subtractor arithmetic with carry/borrow datapaths and address generation
ROM/lookup table stored truth table arbitrary finite Boolean mapping

Analysis and synthesis #

To analyze, identify each internal signal, derive its Boolean expression, and compose to the outputs. To synthesize, start from the required truth table or equations, minimize where useful, select a structure, then verify all legal and illegal inputs.

A 2k2^k:1 multiplexer can realize any function of k+1k+1 variables by using kk variables as selects and wiring each data input to 0, 1, the remaining variable, or its complement. A decoder produces minterms; OR selected outputs to form a sum of products. A ROM or LUT makes the same idea explicit as stored configuration.

Priority and enable semantics #

An ordinary encoder assumes one asserted input. A priority encoder defines which wins when several are active and usually exposes a valid/group signal. Decoder and multiplexer enables may be active-high or active-low and may force outputs high, low, or high-Z when disabled. Those states are part of the function, not packaging trivia.

Delay and glitches #

Ripple carry is simple but delay grows with width. Carry-lookahead, prefix, or dedicated FPGA carry structures reduce the critical path. Reconvergent paths can glitch even if the final Boolean value is correct. Register outputs before external use or design hazard-free logic when the consumer is asynchronous, edge-sensitive, or analog.

Verification #

Exhaustively test small input spaces; use formal equivalence or assertions for larger ones. Check propagation across minimum/maximum process, voltage, temperature, and load; decode overlap; output contention; invalid-code behavior; and reset/power-up interactions. Boolean simulation with zero delay proves the mapping but not the circuit.

Sources

  1. bookComputer Electronics: Digital Electronic Devicespdfnotes
  2. docsTexas Instruments — Logic Guide

Searches titles, aliases, headings, summaries, and full text.↑↓ move ↵ open esc close