How To Make A 3:1 Mux Using 2:1 Muxes

7 min read

How to Build a 3:1 Multiplexer Using Two 2:1 Multiplexers

Multiplexers (or muxes) are fundamental building blocks in digital design. They allow a single output line to carry data from one of several input sources, controlled by select lines. While a 2:1 multiplexer can choose between two inputs using a single select bit, many applications require selecting among three or more sources. A common technique is to cascade two 2:1 muxes to create a functional 3:1 multiplexer. This article walks you through the theory, design steps, and practical implementation of a 3:1 mux built from two 2:1 muxes, giving you a clear roadmap for both simulation and hardware realization.

Introduction

In modern digital systems, routing data efficiently is crucial for performance and resource utilization. When a design needs to pick one of three data streams, the simplest hardware solution is often to reuse existing 2:1 multiplexers rather than designing a dedicated 3:1 block. In practice, by strategically connecting two 2:1 muxes, you can achieve the same functionality with minimal extra logic. Think about it: this approach reduces component count, simplifies PCB layout, and can lower power consumption. Below, we explore how to construct a 3:1 multiplexer using two 2:1 multiplexers, covering the underlying logic, step‑by‑step design, and practical tips for implementation.

Understanding the Basic Multiplexers

A 2:1 multiplexer has two data inputs (often called I0 and I1), one select line (S), and a single output (Y). Its Boolean expression is:

Y = (¬S · I0) + (S · I1)

A 3:1 multiplexer expands this concept: it has three data inputs (I0, I1, I2), two select lines (S1, S0), and one output (Y). The select lines form a binary code that chooses which input appears at the output:

S1 S0 Output
0 0 I0
0 1 I1
1 0 I2
1 1 — (unused)

The Boolean equation for a 3:1 mux is:

Y = (¬S1·¬S0·I0) + (¬S1·S0·I1) + (S1·¬S0·I2)

Creating a 3:1 mux from two 2:1 muxes involves splitting the selection into two stages: the first stage chooses between I0 and I1 based on S0, and the second stage selects between the result of the first stage and I2 based on S1.

Design Strategy: Cascading Two 2:1 Muxes

The key insight is to treat the two select bits as a binary decision tree.

  1. Stage 1 – Use a 2:1 mux with inputs I0 and I1 and select line S0. This yields an intermediate signal M that holds either I0 (when S0 = 0) or I1 (when S0 = 1).
  2. Stage 2 – Feed M into one input of a second 2:1 mux, and connect I2 to the other input. Use S1 as the select line for this mux. The final output Y will be M when S1 = 0 (i.e., selecting the first‑stage result) or I2 when S1 = 1 (i.e., bypassing the first stage).

This cascade effectively implements the 3:1 truth table because the combination of S1 and S0 uniquely determines which original input reaches the output Turns out it matters..

Step‑by‑Step Implementation

Below is a practical guide to building the circuit using discrete logic gates (e.g., 74HC4051‑style muxes) or integrated multiplexer ICs.

Step 1 – Choose Your 2:1 Mux Components

  • Option A: Use two dedicated 2:1 multiplexer ICs (e.g., CD4053, 74HC4051 if configured appropriately).
  • Option B: Implement each 2:1 mux with basic gates (AND, OR, NOT) if you need a custom gate‑level design.

Step 2 – Wire the First Stage

   I0 ──►│
        │► 2:1 MUX (S = S0) ──► M
   I1 ──►│

Connect I0 to input A, I1 to input B, and S0 to the select pin of the first mux. Label the output M.

Step 3 – Wire the Second Stage

   M ──►│
        │► 2:1 MUX (S = S1) ──► Y
   I2 ──►│

Feed M into input A of the second mux, I2 into input B, and apply S1 to its select line. The output of this mux is the desired Y.

Step 4 – Verify the Truth Table

| S1 | S0 | I0 | I1 | I2 | Expected Y | Circuit Y | |----|----|----|----|----|----|-----------|-----------| | 0 | 0 | X | X | X | I0 | M = I0 → Y = I0 | | 0 | 1 | X | X | X | I1 | M = I1 → Y = I1 | | 1 | 0 | X | X | X | I2 | M = I0 → Y = I2 | | 1 | 1 | X | X | X | — | M = I1 → Y = I2 |

(“—” indicates the unused combination; the circuit still produces a deterministic output, typically I2.)

Step 5 – Add Control Logic (Optional)

If you need to disable the whole multiplexer, tie an enable pin (available on many mux ICs) to a global enable signal. When the enable is low, the output is forced to a known state (often 0) Simple, but easy to overlook. Took long enough..

Truth Table and Logic Equations

The cascaded design yields the same Boolean expression as a native 3:1 mux. Derivation:

  • First stage: M = (¬S0·I0) + (S0·I1)

  • Second

  • Second stage: The output of the second 2:1 mux is

[ Y = (\overline{S_1}\cdot M) + (S_1 \cdot I_2) ]

Substituting the expression for (M) from the first stage gives

[ \begin{aligned} Y &= \overline{S_1}\big[(\overline{S_0}\cdot I_0) + (S_0 \cdot I_1)\big] + S_1 \cdot I_2 \ &= (\overline{S_1},\overline{S_0}\cdot I_0) + (\overline{S_1},S_0\cdot I_1) + (S_1\cdot I_2) \end{aligned} ]

This sum‑of‑products form exactly matches the canonical truth table of a 3:1 multiplexer:

S₁ S₀ Selected Input Y
0 0 I₀ (\overline{S_1}\overline{S_0}I_0)
0 1 I₁ (\overline{S_1}S_0I_1)
1 0 I₂ (S_1I_2)
1 1 I₂ (S_1I_2)

Thus the cascade reproduces the desired behavior for all four select combinations; the entry (S_1=1, S_0=1) simply falls through to (I_2), which is harmless and often exploited to reduce wiring when the third select line is permanently tied high Most people skip this — try not to..


Practical Considerations

Aspect Cascaded 2:1 MUX Approach Native 3:1 MUX (if available)
Component count Two 2:1 muxes (or equivalent gate packages) One 3:1 mux
Propagation delay Approximately two mux delays in series (≈ 2 × tₚd) Single mux delay (≈ tₚd)
Power consumption Slightly higher due to two active stages; still modest for CMOS Lower, as only one stage switches
Layout flexibility Easy to place each stage where routing congestion is lowest Requires a larger footprint for the 3‑input select decoder
Scalability Extending to N : 1 simply adds another stage (log₂N muxes) Requires a wider select decoder or a custom‑width mux

If the design targets a high‑speed datapath, the extra delay may be mitigated by using faster families (e.g., 74LVC1G157 for the 2:1 muxes) or by implementing the function in a look‑up‑table (LUT) inside an FPGA, where the cascade maps to a single LUT with three address bits.


Alternative Gate‑Level Realization

When only basic logic gates are on hand, the Boolean expression can be drawn directly:

[ Y = \overline{S_1},\overline{S_0},I_0 ;+; \overline{S_1},S_0,I_1 ;+; S_1,I_2 ]

This yields a two‑level AND‑OR network:

  • Three 2‑input AND gates (one per product term)
  • One 3‑input OR gate (or a cascade of two 2‑input ORs)

Inverters are needed for (\overline{S_0}) and (\overline{S_1}). The gate‑level version is useful in ASIC standard‑cell libraries where a dedicated mux macro may not be available Turns out it matters..


Enable and Power‑Down Handling

Many multiplexer ICs feature an active‑low enable ( (\overline{E}) ) pin. To globally disable the cascaded

Just Made It Online

Fresh Stories

More of What You Like

Readers Went Here Next

Thank you for reading about How To Make A 3:1 Mux Using 2:1 Muxes. We hope the information has been useful. Feel free to contact us if you have any questions. See you next time — don't forget to bookmark!
⌂ Back to Home