A designer wants to implement a 3-variable Boolean function using only a single MUX, exploiting its universality. What is the minimum MUX size needed, and how is it connected?
AA 4-to-1 MUX, using 2 variables as select lines and computing the third with a gate
BAn 8-to-1 MUX, using all 3 variables as select lines and hardwiring truth table output values to the data inputs
CThree cascaded 2-to-1 MUXes, one per variable
DA 4-to-1 MUX with all three variables driving the inputs simultaneously
MUX universality works as follows: for an n-variable function, use a 2ⁿ-to-1 MUX. Apply all n variables to the select lines — these enumerate every possible input combination. Then hardwire each data input to the corresponding output value from the truth table (0 or 1). For a 3-variable function, the 8-to-1 MUX's select lines step through all 8 input combinations, and the data inputs directly encode the truth table. No additional logic gates are needed — the MUX itself implements the entire function.
Question 2 Multiple Choice
What is the correct structural relationship between a 1-to-4 demultiplexer and a 2-to-4 decoder?
AThey are identical circuits described with different terminology
BA DEMUX is a decoder with its enable input serving as the data line — the active output receives the data value, others stay at 0
CA decoder is a DEMUX with extra outputs added for unused address combinations
DThey are unrelated circuits that happen to have the same number of outputs
A 2-to-4 decoder takes 2 select inputs and asserts exactly one of 4 outputs. A 1-to-4 DEMUX has the same structure, except its single data input acts as an enable: the selected output receives whatever value is on the data line, while the others remain 0. This is structurally identical to a decoder with an enable pin. A decoder without an enable is a DEMUX with its data input permanently tied to logic 1. The select lines determine which output is active; the data input controls what that active output carries.
Question 3 True / False
A 4-to-1 MUX can implement any Boolean function of exactly 2 variables by hardwiring the four truth table output values to its data inputs and using the two variables as select lines.
TTrue
FFalse
Answer: True
This is precisely the universality property. A 4-to-1 MUX with two select lines (S1, S0) enumerates all four input combinations: 00, 01, 10, 11. By wiring D0–D3 to the corresponding output values from the truth table, the MUX reads out the correct output for any combination of the two variables. Since every Boolean function of 2 variables is fully specified by its 4-row truth table, the MUX can implement all of them — AND, OR, XOR, NAND, and every other 2-input function — simply by changing the data input wiring.
Question 4 True / False
The output of a 2-to-1 MUX with select line S = 0 depends on both data inputs D0 and D1.
TTrue
FFalse
Answer: False
When S = 0, a 2-to-1 MUX outputs exactly D0 — D1 is completely ignored. The Boolean expression Y = S'·D0 + S·D1 makes this explicit: when S = 0, the term S·D1 = 0, so Y = D0 regardless of D1's value. This is the core function of a MUX: it selects exactly one input and routes it to the output. Unselected inputs have no effect on the output — a MUX routes, it does not combine inputs the way an OR gate does.
Question 5 Short Answer
Why are multiplexers considered 'universal' logic elements? Explain the key insight that makes any Boolean function implementable with a single large enough MUX.
Think about your answer, then reveal below.
Model answer: A MUX with n select lines and 2ⁿ data inputs can implement any n-variable Boolean function: apply the n input variables to the select lines, and hardwire each data input to the corresponding truth table output value. For any combination of variable values, the select lines route exactly that row's truth table entry to the output. Since every Boolean function is completely defined by its truth table, and the MUX can encode any truth table, it can implement any Boolean function.
The universality insight is that select lines enumerate input combinations while data inputs store corresponding outputs — the MUX is a hardware lookup table. This makes MUXes powerful for reconfigurable logic: changing the data input wiring changes the implemented function without altering the select structure. FPGAs exploit exactly this principle: their programmable logic elements are essentially lookup tables that implement any Boolean function of their inputs by storing the truth table in configurable memory.