I recently took a class about EMI (electromagnetic interference) and EMC (electromagnetic comapatibility). For me, the highlight of the class were the PCB design tips. Among those tips were a set of steps for designing the bypass capacitor network for an IC on a PCB.
The EMI/EMC class I took was given by Arturo Mediano of the University of Zaragoza. The information I'm presenting here was taken from the slides he presented, and credit should be given to him.
Capacitor Network Calculator
Here's a calculator for figuring out what value capacitors and how many of them you need to bypass your IC. If you're interested in how it works, read on below.
0.64
1
Low Frequency Decoupling
The purpose of decoupling is to provide current to an IC from a local source (a capacitor) instead of from a remote source (a power supply) to prevent voltage drops in the IC's supply and to reduce the amplitude of any induced electric or magnetic fields created when the IC suddenly needs more current.
At low frequency, capacitors act like capacitors. This make it straightforward to calculate how much capacitance is needed to prevent voltage drops. The voltage drop the IC experiences will be dependent on the current drawn, the frequency at which the IC is operating, and the impedance of the capacitor
ΔV = Z_target * i_pk / 2
We can flip that equation to find the maximum impedance we can tolerate
Z_target = ΔV / (i_pk / 2)
And then we can convert that impedance into a capacitance at our lowest frequency of interest
C_total = 1 / (2 * π * f_min * Z_target)
For example:
Z_target = ΔV / (i_pk / 2)
Z_target = (5% * 5 V) / (200 mA / 2)
Z_target = 2.5 Ω
C_total = 1 / (2 * π * f_min * Z_target)
C_total = 1 / (2 * π * 100 kHZ * 2.5 Ω)
C_total = 0.63662 μF
High Frequency Decoupling
At higher frequencies (above 1 to 10 MHz), two things happen: (1) the current needed at frequencies that are harmonics of the highest frequency of interest decreases at a rate of -40 dB/dec, and (2) capacitors begin being dominated by their parasitic inductances and their impedance increases at a rate of +20 dB/dec.
As long as the parasitic inductance of the capacitor remains below the target impedance we found in the low frequency section until the frequency 1 / π * tr, then we're good. (1 / π * tr is a rule of thumb to find the bandwidth of a signal based on its rise/fall time.)
The parasitic inductance of a capacitor is composed of three things: the series inductance of the capacitor itself (about 2 nH), the inductance of the ground via (about 1 nH) and the inductance of the trace from the IC to the capacitor (about 1 nH/mm). In general, we can estimate the inductance of a capacitor to be about 10 nH.
To reduce the inductance of a capacitor, we can put multiple capacitors in parallel. The inductance of a group of identical inductors in parallel is equal to the inductance of one of those inductors divided by the number of inductors.
From the rule of thumb for finding a signal's bandwidth, the impedance of an inductor at a given frequency, and the knowledge of how inductors in parallel behave, we can write an equation for the impedance of a set of inductors in parallel as
Z_L = 2 * L / (N * tr)
We can flip that equation around and get the number of capacitors we need in parallel in order to keep our inductance low enough that we meet our target impedance across the bandwidth of our signal:
N = 2 * L / (Z_target * tr)
Continuing the example above:
N = 2 * L / (Z_target * tr)
N = 2 * 10 nH / (2.5 Ω * 20 ns)
N = 0.4 → N = 1
Application to PCB Design
Given the results above, C_total = 0.637 μF and N = 1, we can begin our design. In general, you should use the largest value capacitors in the smallest available package. For example, imagine the smallest package that has a capacitor with a value of at least 0.64 μF is 0603. If the largest value capacitor in an 0603 package is a 2.2 uF capacitor, then pick that one. The additional capacitance will increase that capacitor's ability to filter out any noise at lower frequencies without any drawbacks,
Be sure not to use a larger capacitor package than necessary. Using a larger package will increase inductance and hamper high-frequency filtering. Arguably, high-frequency filtering is more important, so don't trade off high-frequency filtering performance for better low-frequency filtering performance.
Photo by John R. Southern