About the Author: I graduated with a B.S. Computer Engineering degree 10 years ago and haven't touched power electronics since then. I'm relatively uninformed, but holy crap
, the level of discussion on POSCAPs vs MLCCs is so awful right now that this entire event is beginning to piss me off.
Power-delivery is one of the most complicated problems in all of electronics. Full stop, no joke. There are masters-degrees on this subject alone.
After this discussion, you still won't be able to make a GHz level power-delivery network, but maybe you'll at least know what engineers are thinking when these issues come up.
What's the big deal?
Internet discussion around NVidia's new GPUs have reached maximum Reddit, and people, such as myself, are beginning to talk out of their ass about incredibly complicated issues, despite having very little training on the subject matter.
For a less joke answer: EVGA's GPUs are using more MLCCs, while Zotac is using more POSCAPs. Now people want to know MLCC vs POSCAP and whether or not they should return their Zotac cards.
A primer on electricity: Don't ever run out of power
From high school, you might remember that electricity is delivered with Voltage and Current. Current
is the easy one: its a simple count of electrons. Current is measured in "Amps", which is exactly 6,214,509,000,000,000,000 electrons per second. Yes, an "Amp" is very literally the number of electrons that pass through a circuit per second. For some reason, Electrical engineers call current "i". Voltage
is harder to conceptualize, but is summarized as "the energy per electron". A singular electron at 100V will have 100x more energy than an electron at 1V. EEs call voltage "V".
Gravity is a decent example. A "Rock" doesn't have energy by itself, but if you put the rock on the top of a hill, it gains energy. But its not just gravity: if you put a rock in front of a bunch of explosives, the rock "has energy" (if you explode the explosives, the rock will move fast and the latent energy will become much more apparent).
So "Voltage" is a measurement of the "unspent energy" in an electron. If all your electrons lose voltage, its just like a rock at the bottom of a hill: you won't have any power from them anymore (not until you "raise" the rock to the top of the hill again). Or its like a bullet that doesn't have gunpowder anymore. In either case, voltage is the measurement of "energy" we can extract per electron.
The name of the game is "Don't run out of power". If at any point, your CPU, GPU, RAM, or whatever runs out of current (aka electrons) or voltage, you get corruption of some kind.
Power Supply, VRMs, etc. etc.
Power supplies, and VRMs too, convert power between different forms and ultimately are the source of power for circuits.
The PSU's job is to convert 120V power at 3 Amps into 12V power at 30 Amps, more suitable for your card to process.
The VRM's job is to convert 12V power at 30 Amps into 1.2V power at 300 Amps.
How does this work? Well, the PSU and VRMs have little sensors, constantly checking the voltage. If the voltage drops to 10V in the PSU, the PSU will deliver more Amps, raising the voltage back to 12. If the voltage grows to 14Vs, the PSU will reduce the current and hope that the voltage comes back to 12V eventually.
Same thing with VRMs, just at a different voltage/amperage level.
The most important thing about this process: PSUs and VRMs are slow
. They only react AFTER
the voltage drops down. To prevent a brownout (loss of power), you need to ensure that the circuit as a whole "changes voltage slowly enough" such that the PSU and/or VRMs have enough time to react.
What's a capacitor?
Have you ever rubbed your hair with a balloon? When you "move" electrons to a location, they will physically stay there.
Capacitors are specifically designed devices that "hold" electrons. There's a magic differential-equation and everything (i(t) = C dv(t) / dt). The bigger the capacitor (C == capacitance), the more current (current is "i(t)") can be delivered with less change in voltage (dv(t)/dt).
TL;DR: Capacitors store electrons
, or perhaps more accurately, they store electrons at a particular voltage. When current sucks electrons away, the voltage of the capacitor drops (and the remaining electrons have less energy). A bigger capacitor will drop less voltage than a small capacitor.
And #2: Capacitors are tiny. We can put dozens, or hundreds of capacitors under a chip. Here's the NVidia 3080, and I'm going to zoom in 500% into the area under the chip
Because capacitors are so tiny, you can place them right next to a chip
, which means they instantly react to changes in voltage and/or current. Capacitors are so called "passive" components, the very nature of physics allows them to work instantly, but without any smarts (like VRMs or Power-supplies), they can't assure a particular voltage or current.
Capacitors simply "slow down" the voltage change due to currents. A passive, reservoir of energy that reacts faster than any active source can.
How much Capacitance are we talking?
This is a bit of a tangent and more for people who are familiar with electricity already. Feel free to skip over this section if you're not into math or physics.
An NVida 3080 is specified to consume 300W+ of power. This will largely be consumed at 1.1 or 1.2V or so. That's 250 Amps of current.
One of the POSCAPs in the Zotac GPU
Given i(t) = C dv(t) / dt, we now have two of the variables figured out and can solve for the result:
250 Amps = 0.000330 * dv(t) / dt
Voltage swing of 757,600 Volts per second.
Oh yeah, we did that math correctly. ~750,000V voltage-swings per second. But remember, we're operating over a microsecond here: so over a microsecond, we'll only see a voltage-swing of .75V, which is still enough to cause a brownout. Even if your VRMs are at microsecond speeds, we're running out of voltage before they can react.
That's why there's so many capacitors under the chip: one capacitor cannot do the job, you need many, many capacitors working as a team, to try and normalize these "voltage" swings. These huge currents at very high frequencies (2GHz) are what makes PDN design for these modern CPUs or GPUs so difficult.
The Load Dump: The opposite issue
Remember those PSUs and VRMs? They're sensing the lines, and suddenly see a .75V drop. Oh no! They immediately start to react and increase the electrons going down the pipe.
Wait a sec, it takes milliseconds before the energy actually gets there. Your 2GHz GPU (that's 0.5 nanoseconds, or 0.0005 microsecons, or 0.0000005 milliseconds) doesn't need all that energy anymore. Because the PSU / VRM reacted "too late", they've accidentally sent too much power and your voltage is now 500V and you've caught everything on fire.
I exaggerate a bit, but... yeah, that happens. This is called a "Load Dump
" and its the opposite of a brownout. Capacitors also serve as reservoirs of excess electricity: storing excess current until the future when it can be used.
Because brownouts and load-dumps are opposites, they can be characterized by the same equation: simply called "high frequency noise". A 2GHz brownout or 2GHz load-dump looks the same to the board-designer, because the solution is the same... adding a capacitor that deals with that 2GHz (doesn't matter if its "too much" energy or "too little").
What matters is the "speed" of the noise: is it happening over a millisecond (Hz)? Microsecond (kHz)? Nanosecond (MHz)? Or fraction of a nanosecond (GHz)? And second: the magnitude: the bigger the noise, the harder it is to deal with (ie: more capacitance is needed to counteract).
Which capacitors are better? POSCAP vs MLCC?
Okay, now we can finally get to the meat of this discussion. I don't know
Yeah, you heard me right. I don't know. And any engineer worth a damn will say "I don't know" as well unless they have a $50,000 10GHz oscilloscope on hand and spent a few hours debugging this 3080 issue and a masters-degree in power-engineering.
This shit is so complicated and so far out of my pay-grade, that seeing low-end Reddit discussions on the subject is beginning to bother me.
Before you pull out your pitchforks, let me explain myself a bit more: there are many, many, many issues that can arise during the design of a PDN. Instead of saying what is going on, I'll tell you some issues I'm familiar with (but you literally can spend years learning about all the intricate issues that may arise).
Issue #1 MLCC Selection Process
There are 755,004 MLCC capacitors available for purchase from Digikey. I repeat, there are Seven-hundred-thousand MLCC capacitors available from Digikey, all with different characteristics. There are general purpose MLCCs only suitable for MHz-level filtering
. There are cheap MLCCs that cost $0.003 each
. Literally fractions of a penny. There are expensive MLCCs that cost $5.75 each
There are multi-terminal MLCCs, there are ESL-optimized MLCCs (low-inductance), there are ESR-optimized MLCCs (low-resistance). There are high-temperature MLCCs, there are voltage-optimized MLCCs, there are leakage-optimized MLCCs.
"MLCC" isn't specific enough to be worth discussing. X7R MLCCs have entirely different characteristics than Z5U MLCCs (yeah, "which ceramic" are you using? The different ceramics have different resistances, inductance, leakages, and ultimately different frequency characteristics). Murata has a completely different reputation than KEMET.
What I can say: COG Dielectric MLCCs are certainly considered to be better than most other capacitors for high frequency noise
. But the ~22uF MLCCs we're finding on these boards are almost certainly the cheaper X7R Dielectric, and are only probably only MHz grade
Issue #2 POSCAP selection process
POSCAPs are simpler than MLCCs, only 10,000+ available from Digikey. But same thing really: there are many
different kinds of POSCAPs, and generalizing upon any attribute (be it price, ESR, ESL, or whatever) is ridiculous.
notes that POSCAPs are Panasonic's brand of Tantalum-Polymer capacitors.
Or in ELI5 terms: this whole MLCC vs POSCAP discussion is similar to a discussion of "Ford vs Truck". The very characterization of the debate is already nonsensical.
Issue #3 Noise Frequencies
I have a general idea of the frequencies of noise to expect. We probably expect a 75Hz noise (VSync), a 2GHz noise (clock), and 5GHz noise (GDDR6x). But the VRMs and PSU will also have noise across many different frequencies.
A capacitor, be it POSCAP or MLCC, can only really handle one frequency the best. For this MLCC, its 2MHz
Is the reduction of 2MHz noise useful? I don't know. Give me a few hours with a 3080 and a $50,000 oscilloscope and maybe
I'll tell ya. (chances are: I also need 2 more years of college studying this crap to really know what to look for).
Maybe the 2MHz noise is coming from the VRMs. Maybe the solution is to fix your VRMs switching frequency. Maybe your power-supply has issues with 500kHz, and you need more capacitors to handle the 500kHz case.
Issue #4: The "Team" of capacitors
Designing a capacitor-network suitable to handle low 75Hz noise, medium kHz noise, high MHz noise, and very high-GHz noise requires the use of many different capacitors. That's just the facts, and every piece of the team matters
All of these designs have many, many different capacitors of different sizes working together. If you thought analyzing ONE
capacitor was insane, now remember the literal HUNDREDS
of capacitors that are under that chip
Every, single, one of those capacitors changes the characteristics of the power-delivery network.
Where is the brownout? Are we even sure we're seeing a brownout?
This all assumes that there's a high-frequency brownout happening on a 3080. What if the issue was more mundane? What if its just a driver issue? What if its a Windows bug? What if some games are buggy? Does anyone even have an oscilloscope reading on the power network of the 3080?
we somehow magically knew that the 3080's power network was the issue, then we still have the problem of isolating which frequency is problematic. A 220uF POSCAP will be excellent at negating 5MHz noise that a smaller MLCC would be unable to handle.
But a 500MHz issue would probably be solved with more MLCCs. And not X7R MLCCs, you need NP0 or C0G MLCCs for 500MHz. (The chemistry of the MLCC matters)
Without knowing the frequency of the brownout, making a "team of small capacitors" (better with high-frequency noise) vs "large capacitor" (better with lower frequencies) debate is fully nonsensical. TL;DR: anyone claiming POSCAPs are worse than MLCCs is full of shit. The issue is far more complicated than that.