Level Shifters
Interfacing different voltage domains.
Modern SoCs integrate multiple functional blocks operating at different supply voltages to balance performance and power consumption. When signals cross from a low-voltage domain to a high-voltage domain, direct connection can result in logic errors or even latch-up. Level shifters are dedicated circuits that safely translate logic signals between different voltage domains while preserving signal integrity.
Why Level Shifters Are Needed
In multi-voltage SoC designs, different blocks operate at different supply voltages. High-performance cores may run at 1.2 V while memory interfaces operate at 1.8 V and I/O pads interface at 3.3 V. A logic high in the 1.2 V domain is only 1.2 V, which may not be recognized as a valid logic high by a gate operating at 1.8 V (where V_IH could be 1.3 V or higher). This mismatch causes functional errors without level shifting.
The inverse problem is equally serious: connecting a 1.8 V signal directly to the gate of a transistor designed for 1.2 V maximum gate voltage causes gate oxide stress and long-term reliability failures. Level shifters therefore serve a dual role: they ensure correct logic interpretation and protect transistor reliability at voltage domain boundaries.
Standard Level Shifter Topologies
The most widely used topology for low-to-high level shifting is the cross-coupled PMOS level shifter. It consists of two PMOS transistors (MP1 and MP2) with cross-coupled gates forming a latch, and two NMOS transistors (MN1 and MN2) driven by the complementary input signals from the low-voltage domain. The PMOS transistors are powered by VDD_H, ensuring the output swings fully between GND and VDD_H.
When IN = VDD_L (logic 1 from low domain), MN1 conducts and pulls its drain (node A) to GND. This turns ON MP2 fully (since its gate is near GND), pulling node B to VDD_H. Node B being high turns OFF MP1. Meanwhile, MN2 is OFF (INb = 0), so node B is driven only by MP2 to VDD_H. The output correctly reflects VDD_H as logic high. The cross-coupling ensures that once the state is set, it reinforces itself, providing a clean transition.
For high-to-low level shifting (stepping down), a simpler approach often suffices: a resistive or source-follower configuration, or simply passing the signal through a voltage divider followed by a buffer in the low domain. High-to-low shifting is generally easier because the high-voltage signal can directly drive NMOS transistors in the low-voltage domain when gate oxide ratings permit.
Mathematical Expression
The critical condition for correct operation of the cross-coupled level shifter is that MN1 must be strong enough to pull node A low against the restoring current from MP1 (which is ON before the transition). This condition is expressed as:
I_MN1 > I_MP1 at the switching point, which requires: (k_n/2)(W/L)_N x (VDD_L - V_tn)^2 > (k_p/2)(W/L)_P x (VDD_H - |V_tp|)^2. This sizing constraint determines the minimum W/L ratio of the NMOS transistors relative to the PMOS transistors to guarantee reliable switching across all process corners.
Practical Implications
Level shifters introduce propagation delay at voltage domain boundaries. The delay depends on the speed of the NMOS transistors in the low-voltage domain pulling down against the PMOS load. In timing-critical paths, level shifter delay must be budgeted into the static timing analysis. Typical level shifter delays range from 50 ps to 300 ps depending on voltage ratio and transistor sizing.
Power consumption at level shifters is significant in high-toggle-rate signals. Each transition at the level shifter involves charging and discharging internal nodes between VDD_L and VDD_H rails. For a bus of 32-bit signals at 500 MHz, the cumulative level shifter power can exceed several milliwatts. Therefore, level shifters are placed only on signals that must genuinely cross voltage domains, and the interface width is minimized where possible.
In low-power designs, enable-controlled level shifters are used that can be gated OFF when the associated power domain is shut down. This prevents leakage and avoids floating node issues when VDD_L is removed while VDD_H remains active.
Given:
VDD_L = 0.8 V (low domain), VDD_H = 1.8 V (high domain)
NMOS: k_n = 200 uA/V^2, V_tn = 0.35 V, (W/L)_N = 6
PMOS: k_p = 80 uA/V^2, V_tp = -0.4 V, (W/L)_P = 4
Why this formula applies:
MN1 must overcome MP1's restoring current. We compare drive currents.
Formula:
I_MN1 = (k_n/2) x (W/L)_N x (VDD_L - V_tn)^2
I_MP1 = (k_p/2) x (W/L)_P x (VDD_H - |V_tp|)^2
Substitution:
I_MN1 = (200e-6 / 2) x 6 x (0.8 - 0.35)^2
I_MP1 = (80e-6 / 2) x 4 x (1.8 - 0.4)^2
Calculation:
I_MN1 = 100e-6 x 6 x 0.2025 = 121.5 uA
I_MP1 = 40e-6 x 4 x 1.96 = 313.6 uA
Result: I_MN1 < I_MP1 — level shifter will FAIL to switch.
Final Answer:
The NMOS W/L must be increased. For reliable switching, (W/L)_N > I_MP1 / (k_n/2 x (VDD_L-V_tn)^2)
= 313.6e-6 / (100e-6 x 0.2025) = 15.5. Use (W/L)_N = 16 minimum.Exam Tip: In GATE and VLSI interview questions, the key condition for cross-coupled level shifter operation is I_NMOS > I_PMOS at the switching point. The NMOS is driven by the weak low-voltage domain, so always check this sizing condition first.
Level Shifter Types and Operation Mechanism
- Cross-coupled PMOS level shifter: NMOS driven by VDD_L signals, PMOS powered by VDD_H; cross-coupling ensures clean full-swing output.
- Key sizing constraint: NMOS drive current must exceed PMOS restoring current for reliable switching; NMOS W/L must be proportionally larger.
- High-to-low shifting is simpler; a buffered voltage divider or direct gate connection (if oxide-safe) is often sufficient.
- Isolation cells are level-shifter variants that force the output to a known logic value (0 or 1) when the source domain is powered off.
- Level shifter propagation delay is a timing concern; it must be accounted for in STA at domain boundary timing paths.
- Level shifters are placed as close as possible to the domain boundary to minimize the length of signal wires crossing voltage domains.
Quick Revision
- Level shifters translate logic signals between different voltage domains (VDD_L to VDD_H or vice versa).
- Standard topology: cross-coupled PMOS latch (powered by VDD_H) + NMOS pair (driven by VDD_L inputs).
- Sizing rule: I_NMOS > I_PMOS for correct switching. If NMOS is too weak, the shifter fails to switch at low VDD_L.
- High-to-low shifting is simpler; low-to-high requires the cross-coupled topology.
- Isolation cells are power-domain-aware level shifters that clamp outputs when source domain is off.
- GATE trap: a direct connection between VDD_L and VDD_H domains without a level shifter causes either incorrect logic levels or gate oxide damage.
- Level shifter delay and power are non-trivial at high frequencies; minimize voltage domain crossings in architecture planning.
Level Shifters Quiz
Test your technical knowledge on this topic.
Q1.Why is a standard CMOS inverter insufficient for shifting a low voltage to a higher voltage domain?
Related Articles
Barrel Shifter
Shifting logic using pass transistors.
4 min read
CMOS Adders
Ripple carry, Carry lookahead, Manchester carry chain in CMOS.
10 min read
CMOS Multipliers
Array multiplier, Wallace tree multiplier basics.
11 min read
Transmission Gate Logic
XOR, Multiplexer implementation using TGs.
5 min read
Booth Multiplier
Algorithm for signed multiplication.
12 min read