3.2.6CMOS Circuit Design

Noise margins (NMH, NML)

1,894 words9 min readdifficulty · medium1 backlinks

Chapter: CMOS Circuit Design · Subtopic: Robustness of digital logic levels

Core idea

WHY it exists: because "0" and "1" are not points, they are ranges of voltage. The gap between the sender's promise and the receiver's expectation is the margin.

WHAT it measures: worst-case tolerable noise, split into HIGH noise margin (NMH) and LOW noise margin (NML).

HOW we get it: from four voltage levels defined on the transfer characteristic (VTC): VOH,VOL,VIH,VILV_{OH}, V_{OL}, V_{IH}, V_{IL}.


The four critical voltages


Deriving the margins from first principles

We chain driver → receiver. The driver outputs a valid level; the receiver must accept it even after noise is added.

Case HIGH (a 1 travels down the wire): The driver guarantees at least VOHV_{OH}. The receiver still calls it a 1 as long as its input stays above VIHV_{IH}. Noise can only drop the received voltage (worst case). Tolerable drop:

  NMH=VOHVIH  \boxed{\;NM_H = V_{OH} - V_{IH}\;}

Why this subtraction? VOHV_{OH} is the ceiling we start from, VIHV_{IH} is the floor the receiver needs. The distance between them is how far noise may pull the signal down before failure.

Case LOW (a 0 travels down the wire): The driver guarantees at most VOLV_{OL}. The receiver still calls it a 0 as long as its input stays below VILV_{IL}. Noise can only raise it. Tolerable rise:

  NML=VILVOL  \boxed{\;NM_L = V_{IL} - V_{OL}\;}

Why this order? Now VILV_{IL} is the ceiling (receiver limit) and VOLV_{OL} is the floor (driver start); noise pushes the low signal up toward the limit.

Figure — Noise margins (NMH, NML)

Worked example 1 — generic numbers

Given: VOH=4.6 V, VIH=3.5 V, VIL=1.0 V, VOL=0.4 VV_{OH}=4.6\text{ V},\ V_{IH}=3.5\text{ V},\ V_{IL}=1.0\text{ V},\ V_{OL}=0.4\text{ V}.

NMH=4.63.5=1.1 VNM_H = 4.6-3.5 = 1.1\text{ V} Why: start from the guaranteed high (4.6), subtract the minimum the receiver needs (3.5).

NML=1.00.4=0.6 VNM_L = 1.0-0.4 = 0.6\text{ V} Why: the receiver tolerates up to 1.0 V as a 0; driver sits at 0.4 V, so 0.6 V of upward noise is allowed.

Robustness =min(1.1,0.6)=0.6=\min(1.1,0.6)=0.6 V — the LOW side is weaker.


Worked example 2 — ideal CMOS inverter (matched)


Worked example 3 — Forecast then Verify


Common mistakes


Active recall

Recall Try before revealing
  1. Give the two margin formulas from memory.
  2. Why the slope = −1 points?
  3. In which direction does noise threaten a HIGH signal?
  4. Why is CMOS margin roughly VDD/2V_{DD}/2 each?

Answers: 1) NMH=VOHVIHNM_H=V_{OH}-V_{IH}, NML=VILVOLNM_L=V_{IL}-V_{OL}. 2) Boundary between noise attenuation and amplification. 3) Downward (pulls toward VIHV_{IH}). 4) Rail-to-rail swing + threshold at VDD/2V_{DD}/2.

Recall Feynman: explain to a 12-year-old

Imagine passing a note that says "HIGH" or "LOW". Your friend's ears are a bit fuzzy. If you SHOUT "HIGH" very loud (near the top), even if some noise makes it a bit quieter your friend still hears "HIGH". The extra loudness you have to spare before your friend gets confused is the noise margin. There's one cushion for shouting (HIGH) and one for whispering (LOW). A good chip keeps both cushions fat so random buzzing never flips a 1 into a 0.


Connections

  • CMOS Inverter VTC — where VIL,VIH,VMV_{IL},V_{IH},V_{M} come from.
  • Static Gain and Regenerative Property — why Av>1|A_v|>1 near VMV_M restores levels.
  • Fan-out and Loading — degrades VOH/VOLV_{OH}/V_{OL}, eroding margins.
  • Power Supply Scaling — lower VDDV_{DD} shrinks absolute margins.
  • Static Noise Margin (SRAM butterfly curve) — the same idea applied to bit-cells.
What is the noise margin?
The maximum input noise voltage a gate can tolerate while still producing a valid output level.
Formula for HIGH noise margin?
NMH=VOHVIHNM_H = V_{OH} - V_{IH}
Formula for LOW noise margin?
NML=VILVOLNM_L = V_{IL} - V_{OL}
How are VILV_{IL} and VIHV_{IH} defined on the VTC?
The input voltages where dVout/dVin=1dV_{out}/dV_{in} = -1 (unity-gain points).
Why choose the slope = −1 points?
They separate the region where the gate attenuates noise from where it amplifies it.
In which direction does noise threaten a stored HIGH?
Downward — it pulls the level toward VIHV_{IH}.
In which direction does noise threaten a stored LOW?
Upward — it pushes the level toward VILV_{IL}.
Overall robustness of a gate?
min(NMH,NML)\min(NM_H, NM_L).
Approx margins of an ideal symmetric CMOS inverter?
About VDD/2V_{DD}/2 each (rail-to-rail swing, threshold at VDD/2V_{DD}/2).
Why must both margins be positive?
A non-positive margin means valid logic levels overlap the forbidden region → gate can misread even without noise.
Effect of skewing the inverter threshold on margins?
One margin grows and the other shrinks; symmetric design maximises the minimum margin.

Concept Map

motivates

split into

split into

slope -1 points define

slope -1 points define

f gives

f gives

minus VIH

VOH - VIH

VIL - VOL

subtracted in

min of both

min of both

must be positive

Real wire noise

Noise margin safety cushion

NMH high margin

NML low margin

Voltage Transfer Characteristic

VIL max input for 0

VIH min input for 1

VOH valid high output

VOL valid low output

Overall robustness

Valid logic

Hinglish (regional understanding)

Intuition Hinglish mein samjho

Dekho, digital circuit me "0" aur "1" koi exact voltage nahi hota — woh ek range hota hai. Real chip me wire par noise aata hai (padosi wires ki coupling, supply drop, ringing). Noise margin ka matlab hai: kitna extra noise voltage gate jhel sakta hai bina galat value read kiye. Yeh ek safety cushion hai driver ke output aur next gate ke input requirement ke beech.

Do margins hote hain. HIGH side ke liye driver kam se kam VOHV_{OH} deta hai, aur receiver tab tak "1" maanta hai jab tak voltage VIHV_{IH} se upar hai. Noise HIGH signal ko neeche girata hai, isliye NMH=VOHVIHNM_H = V_{OH}-V_{IH}. LOW side ke liye driver max VOLV_{OL} deta hai, receiver tab tak "0" maanta hai jab tak voltage VILV_{IL} se neeche hai. Noise LOW ko upar uthata hai, isliye NML=VILVOLNM_L = V_{IL}-V_{OL}. Order ulta mat karna warna answer negative aa jayega — margin hamesha positive hona chahiye.

VILV_{IL} aur VIHV_{IH} kahan se aate hain? VTC curve par jahan slope =1=-1 hota hai. Uske andar gate noise ko chhota kar deta hai (attenuate), bahar noise bada ho jata hai (amplify). Isliye woh −1 points exact boundary hain valid region ki.

CMOS itna popular kyun hai? Kyunki iska output rail-to-rail hota hai — VOHVDDV_{OH}\approx V_{DD}, VOL0V_{OL}\approx 0 — aur threshold beech me VDD/2V_{DD}/2 par. Isse dono margins lagbhag VDD/2V_{DD}/2, aur balanced ho jate hain. Yaad rakho: robustness =min(NMH,NML)=\min(NM_H,NM_L), dono ko fat rakho tabhi chip noise me bhi reliable rahega.

Go deeper — visual, from zero

Test yourself — CMOS Circuit Design

Connections