Measure milliohm impedance with a scope and function generator (shunt method)
Published 2026-08-21
Yes—using the shunt (current-sense) method with a scope and function generator you can measure milliohm-range impedance; compute |Z| = Rsense × |Vdut/Vsense| while driving a small AC current.
Why does a scope plus generator work for milliohms?
A ratio measurement cancels the generator’s 50 Ω source because the same current flows through the DUT and Rsense, so |Vdut/Vsense| = |Z/Rsense|. The practical limit is signal-to-noise. With suitable Rsense, drive, and averaging, tens of milliohms are measurable into the low‑MHz range.
Wiring the shunt method with 50 Ω instruments
Connect generator OUT → Rsense → DUT → return. Measure Vdut on CH1 and Vsense on CH2. If a differential probe is unavailable, probe each node to ground and use CH1–CH2 math. Use coax to both nodes; above ≈1 MHz, enable 50 Ω termination on both scope inputs to control reflections. Prefer a 4‑terminal current‑sense resistor for Rsense and route its sense leads directly to the scope to avoid lead drop.
How do I choose Rsense, drive level, and frequency?
Work backward from a Vsense target that stays above the post‑averaging noise. A practical target is 0.3–3 mVrms at the tone. Example: for Z ≈ 20 mΩ with Rsense = 20 mΩ and Vsense ≈ 0.5 mVrms, the test current Irms = 0.5 mV/20 mΩ = 25 mA and Vdut ≈ 0.5 mVrms, giving a near‑unity ratio (good SNR). Typical 50 Ω generators can deliver ≈10–50 mArms into 50 Ω when set to 2–10 Vpp open‑circuit; confirm on your model. Keep AC across the DUT around 10–100 mVrms to avoid nonlinearity in capacitors/ferrites. For PDN/capacitors, sweep 1 kHz–10 MHz; for DCR‑like results, use 10–100 Hz with heavy averaging and keep clear of 50/60 Hz hum.
What sets the noise floor, and when add a power amp or VNA?
Front‑end noise dominates. Many 8‑bit scopes show several hundred µVrms broadband noise per channel at tens of MHz bandwidth; averaging N acquisitions reduces it by ≈√N (e.g., 64× → 8×). Aim for Vsense ≥ 5× the post‑averaging noise. If Vsense drops below ≈200 µVrms after averaging, the ratio tends to wander. For very low Z at higher f, the current needed for adequate Vsense may exceed the generator’s 50 Ω drive. Example: Z = 2 mΩ, Rsense = 2 mΩ, Vsense target = 0.5 mVrms → Irms = 0.25 A; a power buffer is required. Above ≈100 kHz at sub‑milliohm impedances, a 2‑port shunt‑through fixture on a 50 Ω VNA or an AC impedance analyzer with 4‑terminal‑pair connections provides needed dynamic range and phase accuracy.
DC resistance specifics (four‑wire)
Use a current source and a nanovolt‑capable voltmeter, or a micro‑ohmmeter/SMU. Drive enough current to get 10–100 mV across the DUT while limiting self‑heating. Example numbers: a 10 mΩ DUT at 1 A gives 10 mV, resolvable to ≤0.1% with a 6.5–7.5 digit DMM; a 1 mΩ DUT at 5 A gives 5 mV and typically needs a micro‑ohmmeter/SMU with ≤1 µV resolution. Use true Kelvin connections at the DUT pads, current reversal (±I) to cancel thermal EMFs, and log current, voltage, and temperature. If limited below 1 A, extend integration to 100–1000 PLC to reach microvolt resolution.
Fixture and PCB parasitics that move the reading
Series copper is not negligible: R ≈ ρ·L/(t·W). For 35 µm copper (t = 35e‑6 m), W = 10 mm, L = 10 mm, ρCu ≈ 1.72e‑8 Ω·m → R ≈ 0.49 mΩ at 25 °C. Plane/loop inductance matters: 1 nH has reactance ≈0.063 Ω at 10 MHz, which explains the rising tail past a capacitor network’s self‑resonance. Keep coax launches tight, minimize loop area, and match path lengths so parasitics partially cancel in Vdut/Vsense.
Quick numeric checklist for stable AC measurements
- Target Vsense: 0.3–3 mVrms; keep Vdut roughly 10–100 mVrms
- Averaging: 16–128×; use narrow RBW/FFT around the tone when available
- Scope termination: 50 Ω above ≈1 MHz on both channels
- Leads: avoid ground clips; 10 nH contributes ≈0.063 Ω at 1 MHz
- Linearity check: halve the generator amplitude; |Z| should remain constant
- Calibration check: short the DUT pads; read the residual fixture impedance
Worked example: 20 mΩ PDN segment at 100 kHz
Use Rsense = 20 mΩ (4‑terminal). Drive a 100 kHz sine. Averaged readings: Vsense = 0.50 mVrms, Vdut = 0.48 mVrms. Then |Z| = 20 mΩ × (0.48/0.50) = 19.2 mΩ. Irms = 0.50 mV/20 mΩ = 25 mA. Sweeping 10 kHz–5 MHz typically shows a flat ESR region, a dip near capacitor network resonance, then a +20 dB/decade rise as ESL/plane inductance dominates.
What about regulator loops near crossover?
Avoid injecting right at the control loop crossover (often tens of kHz). Measure a decade below or above, or disable the loop during PDN characterization if your system allows it.
Request a PCB quote—HyperPCB returns it within 24 hours and provides DFM feedback in 1 business day. — Get a quote