Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Capacitor needed for your board - why? #2

Open
mikebdp2 opened this issue Aug 13, 2018 · 3 comments
Open

Capacitor needed for your board - why? #2

mikebdp2 opened this issue Aug 13, 2018 · 3 comments

Comments

@mikebdp2
Copy link

Thank you very much for your hard work, dear friend. Please could you explain, why there is a capacitor (?) at your board - https://cdn.hackaday.io/images/9309851505067601198.PNG - and what function it is serving? Wouldn't it work without this one?

@CRImier
Copy link
Member

CRImier commented Aug 14, 2018

Hi! It's indeed a capacitor. See, ICs (especially digital ones) tend to draw current in sharp spikes - for example, when a bunch of transistors inside a digital IC opens, they tend to open quickly, causing a spike in current consumption - and, in digital ICs which is currently being interacted, this kind of thing happens thousands, or sometimes millions, of times per second. Now, multiply it by a number of transistors that's being closed/opened each second and we have a lot of simultaneous current consumption spike events.

Local current consumption peaks would be OK by itself, but each increase in current dips the operating voltage momentarily, and sometimes the voltage dip is large enough that voltage on the IC is too low for the IC to function - even though it's for a short while, it's enough to possibly cause the IC to lock up/return garbage/reset. For this specific breakout that you're holding - the SPI memory chip adapter breakout - a voltage dip event could mean 1) the chip returning a wrong value 2) the chip not being able to write the correct value into the memory area 3) the chip resetting in the middle of SPI transaction, causing the transaction to reset and, possibly, Linux-side software to crash, and that's just off the top of my head.

So, a small 10nF-100nF capacitor close to the IC power pins (both VCC and GND) helps decrease the voltage dip effect from the power consumption - when the voltage dip event happens, some of the charge in the capacitor is consumed by the power rail towards keeping the voltage more-or-less stable (naturally, since the capacitor is charged to the power rail voltage at all times except consumption peaks, when the peak happens, the capacitor voltage is higher than the voltage on the chip and so current flows to the chip, to the area where voltage is currently lower). The capacitor is then recharged from the power rail.

Why is there even a local 'area' of low voltage once there's a current consumption peak? Why doesn't the power rail act as a capacitor? Why does the capacitor need to be close to the IC? Because PCB tracks, the longer and narrower they are, act as resistors and inductors, so the further the capacitor is from the power rail, the longer it takes for the charge to travel to the IC from the power source that we have (in case of our 3.3V rail, it's the power regulator on the Raspberry Pi). So, when you you put the capacitor closer to the IC pins, you get a better more stable voltage for your IC - preventing all kinds of sneaky problems =)

@mikebdp2
Copy link
Author

mikebdp2 commented Aug 16, 2018

@CRImier Thank you very much for such a detailed wonderful excellent reply, dear friend!
Your deep understanding of this process really helped me

@CRImier
Copy link
Member

CRImier commented Aug 16, 2018

Happy to help! Let me know if you're interested in any other explanation, this kind of stuff helps me refresh my knowledge, too =)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants