Engineering Notes · FPGA signal integrity
FPGA simultaneous switching noise vs crosstalk
A hierarchical guide to diagnosing and mitigating simultaneous switching noise (SSN/SSO/ground bounce) versus crosstalk in FPGA systems.
Terminology note: “crosswalk” in this context is almost certainly crosstalk. SSN and crosstalk can look similar on a scope because both produce edge-correlated glitches, but they come from different current paths and need different fixes.
Start here
SSN / SSO / ground bounce
Cause: many FPGA outputs switch at once. Package, pin, via, plane, and PDN inductance convert cumulative current slew into local ground/VCC movement: V = L × di/dt.
Signature: glitches correlate with a group of outputs switching, often across a whole I/O bank.
Crosstalk
Cause: capacitive or inductive coupling between nearby conductors: board traces, package escape, connectors, cables, or FPGA routing resources.
Signature: a victim net moves when a specific neighboring aggressor edge occurs.
Sections
Rule of thumb
Many outputs switch together
Start with SSN: lower slew/drive, reduce same-bank switching, improve PDN/return path, and validate against SSO limits.
One victim follows one aggressor
Start with crosstalk: spacing, routing, termination, impedance, guard/reference continuity, and moving sensitive nets away from data.
Only appears in real traffic
Assume a combination. Reproduce with worst-case vectors, then isolate by disabling banks or neighbors.
Sources: Microchip AN4848; AMD/Xilinx XAPP689; Altium, “Is it Simultaneous Switching Noise or Crosstalk?”; UBC, “Crosstalk-Aware Routing in FPGAs”; Design & Reuse, “How to reduce simultaneous switching output noise with a stand-alone SerDes.”