RUE Logo

Module 1.3 - Decoupling & Bypass

Ensuring clean, stable power delivery to every IC through proper capacitor strategy

1. Every IC Has Local Decoupling Critical

What It Is

Local decoupling means placing a capacitor (typically 100nF ceramic) as physically close as possible to each IC's power pin(s). This capacitor serves as a local energy reservoir, supplying instantaneous current during switching transitions before the power plane can respond. The capacitor must be placed between the VCC pin and the nearest GND pin of the same IC.

This is perhaps the single most critical passive component placement decision in any digital design.

Why It Matters

When a digital IC switches (every clock edge), it draws transient current spikes of nanosecond duration. The inductance of even 1cm of PCB trace prevents the power supply from responding fast enough. Without local decoupling, the IC's power pin voltage drops (ground bounce) causing logic errors, increased EMI radiation, and reduced noise margins. A missing 100nF cap can cause intermittent failures that are extremely difficult to diagnose.

How to Check - Step by Step

  1. Open the schematic and identify every IC (digital and mixed-signal).
  2. For each IC, verify at least one 100nF capacitor is connected between each VCC/VDD pin and GND/VSS pin.
  3. Check the IC datasheet "Application Circuit" or "Decoupling Recommendations" section for specific requirements.
  4. Verify capacitor type is appropriate: MLCC ceramic (X7R or X5R dielectric) for decoupling, NOT electrolytic.
  5. For ICs with multiple power pins, verify each power pin group has its own decoupling capacitor.
  6. Check that analog and digital power pins have separate decoupling (not shared).
  7. Verify voltage rating of decoupling caps exceeds the power rail voltage by at least 2x (for voltage derating of MLCC).

STM32F407 decoupling (per ST datasheet AN4488):

VDD pins (x4): Each gets 100nF X7R 0402 + shared 4.7uF X5R 0805
VDDA (analog): 1uF + 100nF in series with ferrite bead from VDD
VREF+: 1uF + 100nF (separate from VDDA for noise isolation)
VBAT: 100nF (for RTC backup)
VCAP1, VCAP2: 2.2uF each (internal regulator output - NOT decoupling, but required)

IC with no decoupling: 74HC595 shift register has VCC (pin 16) and GND (pin 8) but no capacitor between them on the schematic. The nearest decoupling cap is 3 inches away on another IC's power pin. At 10MHz clock rate, the 595 generates 50mV switching noise on VCC, causing random bit errors on the serial data output that appear once every ~10,000 shifts.

KiCad: Use ERC to find power pins without nearby passive connections. Visually verify each IC has associated caps in the schematic. In PCB editor, use DRC to check cap-to-IC distances.

Altium: Create a design rule for maximum distance between decoupling cap and IC power pin. Use ActiveBOM to cross-reference IC count vs. decoupling cap count.

OrCAD: Use part-level properties to link decoupling capacitors to their parent IC. Run cross-reference report to verify every IC has associated caps.

  • Schematic vs. layout distance: Caps on the schematic near the IC symbol mean nothing if they are placed far away in the PCB layout. Review must include layout proximity check.
  • Wrong dielectric: Using Y5V or Z5U ceramic capacitors for decoupling. These lose 50-80% of capacitance at DC bias voltage - a "100nF" Y5V cap at 3.3V bias may only provide 30nF.
  • Shared caps: "I put one big 10uF cap for both ICs" - the inductance between them defeats the purpose. Each IC needs its OWN local cap.

2. Bulk Capacitor Placement Major

What It Is

Bulk capacitors (10uF - 1000uF) provide energy storage for medium-frequency transients (kHz to low MHz range) and current surges that local 100nF caps cannot sustain. They bridge the gap between the power supply's response time (microseconds) and the local decoupling's capacity. Bulk caps are placed near power supply outputs and near major current-drawing ICs (MCUs, FPGAs, power amplifiers).

The power delivery network forms a hierarchy: regulator output cap -> bulk caps -> local decoupling caps.

Why It Matters

Without adequate bulk capacitance, power rail voltage droops when a large transient load activates (e.g., radio transmitter keying on, motor starting, LED array switching). The regulator needs time to respond and increase current output - the bulk cap supplies energy during this response time. Insufficient bulk capacitance causes voltage dips that can reset MCUs, corrupt flash write operations, or cause communication errors.

How to Check - Step by Step

  1. Identify the regulator output and verify it has adequate output capacitance per the regulator datasheet (critical for stability).
  2. Check for bulk caps (22uF-100uF) near major current consumers (MCU, wireless module, display).
  3. Verify bulk cap voltage rating is adequate (2x rail voltage for ceramics due to DC bias derating, 1.5x for electrolytic).
  4. For switching regulators, verify output capacitance meets minimum ESR and capacitance requirements from the controller datasheet.
  5. Check that bulk caps are placed between the regulator and the load cluster - not behind the load (useless for supplying transient current).
  6. Verify bulk cap type: ceramic MLCC (best for high-frequency), polymer electrolytic (good balance), or tantalum (watch for derating needs).

TPS62130 output capacitor network:

Output (3.3V rail):
- 2x 22uF X5R 0805 ceramic (right at regulator output - required for stability)
- 47uF polymer electrolytic (near MCU cluster for sustained current delivery)
- Individual 100nF local caps at each IC

Total output capacitance: 91uF (44uF ceramic + 47uF polymer)
ESR range: 2-10 mOhm (meets TPS62130 stability requirement of < 50 mOhm)

Minimal output cap: TPS62130 regulator with only a single 10uF 0402 ceramic at the output (actual capacitance at 3.3V bias: ~5uF due to DC bias effect). No additional bulk capacitance. When the WiFi module transmits (200mA spike for 5ms), the 3.3V rail dips by 200mV. MCU ADC readings become noisy. Communication packets are corrupted during TX bursts.

KiCad: Group bulk capacitors near regulators in schematic for visual clarity. Add notes indicating placement priority. Use schematic text to show capacitance budget.

Altium: Use Room definitions to associate bulk caps with their regulators. PDN Analyzer can verify impedance targets are met.

OrCAD: Place bulk caps on same schematic page as regulator circuit. Add placement notes. Use PSpice to simulate load transient response.

  • DC bias derating ignored: A 22uF X5R 0805 capacitor at 3.3V DC bias may only provide 15uF actual capacitance. Check manufacturer's DC bias curves.
  • Stability issues: Too much capacitance or wrong ESR can make switching regulators unstable. Always check the regulator's stability requirements.
  • Temperature derating: Ceramic capacitors lose capacitance at temperature extremes. A design that works at 25C may have insufficient bulk capacitance at -40C.

3. Capacitor Value Strategy (100nF + 10uF Pattern) Major

What It Is

The capacitor value strategy defines a systematic approach to selecting decoupling capacitor values that provide low impedance across a wide frequency range. The classic pattern uses a combination: 100nF for high-frequency decoupling (effective 10MHz-200MHz), 10uF for medium-frequency (100kHz-10MHz), and optionally 1nF-10nF for very high frequency (>200MHz in GHz digital designs). Each value covers a specific frequency decade.

The goal is to create a low-impedance power delivery network (PDN) from DC up to the highest switching frequency in the design.

Why It Matters

A single capacitor value cannot cover all frequencies. At its self-resonant frequency (SRF), a capacitor has minimum impedance - but above SRF, it becomes inductive and impedance rises. By paralleling multiple values, each with a different SRF, the combined impedance stays low across a wider bandwidth. Without this strategy, there are "gaps" in the impedance curve where noise cannot be filtered, appearing as specific frequency spikes in EMI measurements.

How to Check - Step by Step

  1. Identify the highest clock/switching frequency in the design to determine the upper frequency coverage needed.
  2. Verify each IC has at minimum a 100nF cap (covers ~10MHz-200MHz for 0402 size).
  3. For MCUs/FPGAs running above 100MHz, verify additional small-value caps (10nF or 1nF) for very-high-frequency decoupling.
  4. Check that bulk storage (10uF+) covers the mid-frequency range for each power island.
  5. Verify no anti-resonance peaks: when two identical-value caps are placed in parallel, consider spacing them or using slightly different values to avoid resonance issues.
  6. For mixed-signal ICs, verify the analog and digital power have independent decoupling strategies optimized for their respective bandwidth needs.

STM32H7 running at 480MHz - power pin decoupling strategy:

Per VDD pin:   100nF X7R 0402 (SRF ~100MHz) + 10nF X7R 0201 (SRF ~400MHz)
Per cluster:   4.7uF X5R 0805 (SRF ~2MHz - mid frequency storage)
Rail total:    2x 22uF X5R 1206 (bulk - regulator output stability)

Frequency coverage:
  DC - 1MHz:      22uF bulk caps dominate
  1MHz - 10MHz:   4.7uF caps effective
  10MHz - 200MHz: 100nF caps effective
  200MHz - 1GHz:  10nF caps effective
  Result: Low impedance from DC to 1GHz

Only 100nF caps everywhere: Designer uses only 100nF 0603 caps for all decoupling. At 1MHz (where MCU draws significant switching current), the 100nF cap's impedance is 1.6 ohms - too high for effective decoupling. No bulk caps fill this gap. Rail has 50mV ripple at 1MHz corresponding to regulator load transient response. Also, above 200MHz, the 0603 body is inductive and provides no decoupling for the 480MHz MCU clock harmonics.

KiCad: Use Murata SimSurfing or TDK SEAT tools online to verify capacitor impedance vs. frequency for your specific parts. Document strategy in schematic notes.

Altium: PDN Analyzer can import actual capacitor S-parameter models and show combined PDN impedance. Verify target impedance is met across frequency.

OrCAD: Use PSpice with manufacturer SPICE models (including ESR and ESL) to plot combined impedance vs. frequency. Many manufacturers provide downloadable models.

  • Anti-resonance: Two capacitors in parallel can create an anti-resonance peak (high impedance) between their individual SRFs. This is worse than having just one cap at that frequency.
  • Diminishing returns: Adding 20 parallel 100nF caps doesn't improve high-frequency performance - one smaller-value cap (10nF or 1nF) is more effective above 200MHz.
  • Package matters: A 100nF in 0805 package has lower SRF than 100nF in 0402 due to larger body inductance. Smaller packages provide better high-frequency performance.

4. Ferrite Beads for Analog Isolation Major

What It Is

Ferrite beads are frequency-dependent resistors that provide increasing impedance at high frequencies. They are placed in series with power supply lines feeding analog circuits (ADCs, DACs, PLLs, analog sensors) to isolate sensitive analog power from noisy digital power. The ferrite bead, combined with decoupling capacitors on the analog side, forms a low-pass Pi-filter that blocks high-frequency switching noise.

A typical implementation: VDD_DIGITAL -- [Ferrite Bead] -- VDD_ANALOG, with caps on both sides of the ferrite.

Why It Matters

Digital circuits inject noise onto power rails at clock frequency harmonics (often 10MHz-1GHz). Without isolation, this noise directly degrades analog performance: ADC readings become noisy (reducing effective number of bits), PLL jitter increases (causing clock skew), and audio circuits develop audible interference. A well-placed ferrite bead can improve ADC SNR by 6-20dB and reduce PLL jitter by 50% or more.

How to Check - Step by Step

  1. Identify all analog/mixed-signal power pins: AVDD, VDDA, VREF, PLL_VDD on MCUs, analog supply on ADCs/DACs, oscillator supply.
  2. Verify a ferrite bead is placed in series between the digital power rail and each analog power pin.
  3. Check ferrite bead impedance at the noise frequency of interest (typically 100 ohms at 100MHz for general use).
  4. Verify DC resistance is low enough: P_loss = I_analog^2 * R_DC. Ensure voltage drop is acceptable.
  5. Check current rating exceeds the analog circuit's current draw (including margins for transient demand).
  6. Verify decoupling capacitors are present on BOTH sides of the ferrite bead (input side prevents ferrite from radiating, output side stores clean energy).
  7. Check that the ferrite bead does not resonate with the capacitor network at a frequency where noise exists.

STM32 VDDA supply isolation:

VCC_3V3 rail --- [BLM18PG121] --- VDDA pin
                  (120 ohm @ 100MHz, 0.05 ohm DC, 2A rated)

Capacitors:
- Before ferrite: 100nF X7R (part of digital decoupling)
- After ferrite: 1uF X7R + 100nF X7R (analog supply reservoir)

Result: 40dB attenuation of 100MHz+ digital noise on analog supply.
ADC achieves 11.5 ENOB vs. 10.2 ENOB without the ferrite bead.

No analog isolation: STM32 VDDA pin connected directly to VDD_3V3 with only a 100nF cap. The 168MHz CPU clock and its harmonics (336MHz, 504MHz) couple directly to the ADC power supply. ADC readings on a DC voltage show +/- 15 LSB noise (vs. +/- 2 LSB with proper isolation). 12-bit ADC effectively becomes 9-bit. Temperature sensor readings jump +/- 3 degrees.

KiCad: Add ferrite bead symbols (typically from Device library, "Ferrite_Bead" or "L" with ferrite type). Verify correct part in BOM matches required impedance spec.

Altium: Use manufacturer simulation tools to select ferrite bead. Import impedance vs. frequency data into PDN analysis. Verify attenuation at target frequency.

OrCAD: Model ferrite bead as frequency-dependent impedance in PSpice (use manufacturer SPICE models). Simulate noise attenuation with AC analysis sweep.

  • Current saturation: Ferrite beads lose impedance when current exceeds their saturation rating. A 100-ohm ferrite may become 10 ohms at twice its rated current - providing almost no filtering.
  • DC voltage drop: High-impedance ferrite beads have higher DC resistance. At 100mA, a 0.5-ohm ferrite drops 50mV - this may cause the analog supply to be below minimum operating voltage.
  • Resonance with caps: A ferrite bead with output capacitance can resonate at a specific frequency, creating an impedance PEAK (amplification) instead of attenuation. Verify with simulation or impedance plots.

5. Low-ESR Capacitors for High-Frequency Major

What It Is

Equivalent Series Resistance (ESR) determines how effectively a capacitor can supply transient current. At high frequencies, capacitor impedance is dominated by ESR (not capacitance). For high-speed digital circuits (>100MHz clocks), low-ESR ceramic capacitors (MLCC) are essential because their ESR of 5-50 milliohms allows them to supply current spikes without significant voltage drop. Higher-ESR electrolytics (50-500 milliohms) are ineffective at high frequencies.

Key relationship: Voltage drop during transient = ESR x Peak_transient_current.

Why It Matters

When a 200MHz FPGA switches 100 I/O pins simultaneously, it draws a current spike of several amps for sub-nanosecond duration. The decoupling cap must supply this current with minimal voltage drop. With ESR of 5mOhm: V_drop = 0.005 * 2A = 10mV (acceptable). With ESR of 200mOhm (electrolytic): V_drop = 0.2 * 2A = 400mV (causes logic failures on a 1.0V core rail). ESR directly determines noise floor on power rails.

How to Check - Step by Step

  1. Identify high-frequency power pins (FPGA core, DDR memory, high-speed SerDes, clock synthesizers).
  2. Verify ceramic MLCC capacitors (X7R or X5R) are used for all high-frequency decoupling - NOT electrolytic or tantalum.
  3. Check that capacitor package size is appropriate: smaller packages have lower ESL (inductance) and are more effective at very high frequencies.
  4. For FPGA/DDR designs: verify capacitor placement uses reverse-geometry packages (0306 instead of 0603) for lowest inductance.
  5. Check capacitor specification: ESR should be below 10mOhm for critical high-speed rails.
  6. Verify that target impedance is met: Z_target = Vripple_allowed / I_transient. Caps must achieve this impedance at the relevant frequency.

DDR3 VDDQ (1.5V) decoupling:

Requirement: Z_target = 50mV / 3A = 16.7 mOhm at 400MHz (DDR3-1600)

Solution:
- 12x 100nF X7R 0402 MLCC (ESR: 8mOhm each, parallel: 0.67mOhm)
- 4x 10nF X7R 0201 MLCC (ESR: 15mOhm each, parallel: 3.75mOhm, effective above 300MHz)
- 2x 22uF X5R 0805 MLCC (bulk storage for medium frequency)

Combined PDN impedance at 400MHz: ~3 mOhm (well below 16.7mOhm target)
All ceramic - no electrolytic used in high-frequency bypass role.

Electrolytic for high-speed: Designer uses 470uF/6.3V aluminum electrolytic capacitor (ESR: 150mOhm) as the primary decoupling for a DDR3 VDDQ rail. At 400MHz, the electrolytic is completely inductive (acts as an open circuit). Its 150mOhm ESR means even at lower frequencies, it cannot deliver transient current without significant voltage drop. DDR3 memory has timing violations during burst writes.

KiCad: Specify capacitor part numbers (not just values) in schematic to lock in ESR characteristics. Use manufacturer part numbers in footprint/BOM fields.

Altium: Use manufacturer libraries with embedded ESR data. PDN Analyzer uses this data for impedance calculations. Specify exact MPN in BOM.

OrCAD: Attach manufacturer SPICE models (include ESR/ESL parasitics) to capacitor symbols. AC analysis will show actual impedance including parasitic effects.

  • "Big cap = better" myth: A 100uF electrolytic has WORSE high-frequency performance than a 100nF ceramic. Bigger is not better for decoupling - it is different frequency coverage.
  • Ignoring ESL: Even ceramic caps have inductance (ESL). Larger packages (1206) have higher ESL than small packages (0201). For >500MHz, package size matters more than capacitance value.
  • Capacitor placement: A low-ESR cap placed 1cm from the IC has its benefit completely negated by trace inductance. PCB layout must match schematic intent.

6. Decoupling Per Power Pin Critical

What It Is

Large ICs (MCUs, FPGAs, SoCs) have multiple power pins that must EACH have dedicated decoupling capacitors. This is not optional - it is specified in every IC datasheet's application notes. Each VDD/VCCO/VCCINT pin has its own current path that must be decoupled independently. Sharing a single cap between multiple power pins defeats the purpose of having multiple pins.

Example: An STM32F407 in LQFP100 package has 7 VDD pins, 1 VDDA pin, 1 VBAT pin, and 2 VCAP pins - requiring 11+ decoupling capacitors minimum.

Why It Matters

Multiple power pins exist because a single pin cannot provide enough current for the entire IC (due to bond wire inductance and current capacity). Each pin serves a specific internal power domain. If pins share decoupling, current flows through internal bond wires to reach poorly-decoupled pins, adding inductance and causing internal ground bounce. The IC manufacturer designed multiple pins for a reason - respect that design intent.

How to Check - Step by Step

  1. Open the IC datasheet and count the total number of power supply pins (all VDD variants).
  2. On the schematic, count decoupling capacitors associated with that IC.
  3. Verify the ratio: minimum 1 capacitor per power pin (some high-performance designs use 2 per pin).
  4. Check that the datasheet application circuit is followed exactly for capacitor values and placement.
  5. For FPGAs: verify each VCCO bank has independent decoupling per datasheet (often 1x 100nF + shared 4.7uF per bank).
  6. For multi-core processors: verify core supply has per-pin decoupling AND additional bulk for combined core current demand.
  7. Verify that analog power pins (VDDA, VREF) have separate, dedicated capacitors not shared with digital pins.

STM32F407 LQFP100 - complete decoupling scheme:

Pin 11 (VDD):  100nF X7R 0402
Pin 19 (VDD):  100nF X7R 0402
Pin 28 (VDD):  100nF X7R 0402
Pin 50 (VDD):  100nF X7R 0402
Pin 75 (VDD):  100nF X7R 0402
Pin 100 (VDD): 100nF X7R 0402
Pin 22 (VDDA): 1uF + 100nF (behind ferrite bead)
Pin 21 (VREF+): 1uF + 100nF (behind ferrite bead)
Pin 6 (VBAT):  100nF + 1uF
Shared bulk:   4.7uF X5R 0805 (one per pair of VDD pins)
TOTAL: 13 capacitors for one IC (correct per ST guidelines)

Shared decoupling: Same STM32F407 with only TWO 100nF capacitors total, placed "near the IC." Six VDD pins share two caps. VDDA connects directly to VDD with no ferrite or separate cap. VBAT has no capacitor. Result: 40mV power noise on VDD (vs. 10mV target), ADC ENOB reduced by 3 bits, PLL output has 50ps jitter (vs. 15ps spec), RTC loses time during flash write operations.

KiCad: Count caps in schematic vs. power pins in datasheet pinout table. Use text annotations listing each pin's assigned capacitor. In layout, use ratsnest to verify connections.

Altium: Use Component Properties to document which cap serves which pin. In PCB, verify each power pin has a short, direct connection to its dedicated capacitor pad.

OrCAD: Create a cross-reference table in schematic notes showing pin-to-capacitor assignments. Verify in layout that physical placement matches intent.

  • "Close enough" sharing: Two VDD pins 2mm apart sharing one cap seems OK on schematic but in layout the far pin has additional trace inductance that negates the decoupling benefit.
  • Hidden power pins: Some schematic symbols hide power pins (auto-connected to VCC). These hidden pins still need decoupling caps - verify pin count against package datasheet.
  • Via inductance: If the cap is on the opposite side of the PCB from the IC, the via adds 0.5-1nH inductance, reducing high-frequency effectiveness. Document placement requirements for layout.