I would like to try to get some audio output from my Spartan 3 starter kit board, but as a hardware novice I worry about damaging my board.
Is there any risk of damage if I connect a piezoelectric speaker directly to the pins of my FPGA? I have read that because of the high impedance of this device it should be OK, but I would like to have a better understanding.
Thanks, Bryan
Didn't find your answer? Ask the community — no account required.
M
MikeShepherd564
The main danger is that mechanical shock to the speaker can produce a high voltage at its terminals (even where your equipment is turned off). This can damage a semiconductor device.
Does anyone here know the simplest way to avoid this? I'd guess that a 5V zener diode across the speaker should work, but maybe there's a better way.
(Some semiconductor devices have internal "clamp" diodes to their power rails and this provides some protection, but an FPGA intended for use in a "hot insertion" product probably doesn't have these diodes).
The (electrical) impedance of the speaker depends on frequency: there will be (mechanical) resonances at certain frequencies. Generally, you can expect the impedance to be less when the sound is louder. However, for a small speaker such as you might use for experiments, even the minimum impedance is unlikely to overload an FPGA output.
Mike
R
Ray Andraka
FPGAs do indeed have the protection diodes. You can drive a piezo directly from the FPGA if you like, however you'll probably find the audio volume less than satisfactory with the typical miniature transducers, especially with the low voltage I/O standards found on most of the modern FPGAs. It helps if you drive it in a differential mode.
M
MikeShepherd564
I am guided by "Cyclone II Device Handbook, Volume 1" (Altera Corporation, July 2005), chapter 4 ("Hot Socketing & Power-On Reset"), page 4-1:
"There are no internal current paths from I/O pins to VCCIO or VCCINT power supplies. Signals driven in on I/O pins do not power the VCCIO or VCCINT power buses".
I understood this to indicate that there are no protection diodes in this case (except perhaps to 0V), but you indicate that there are always such diodes. Have I misunderstood this?
Mike
P
Peter Alfke
It's the old conflict between ESD (electro-static discharge) protection (which wants a strong diode against a well-defined voltage, like VCC) and "Hot Socketing" which cannot tolerate a diode connected to Vcc (since that would be against ground while the card is being pushed in). I cannot speak for Altera, but a traditional compromisen is a diode against a positive Zener diode level. If I were you, I would get a positive supply, a 10 kilohm series resistor, and probe the pin to see how high the voltage will go. You cannot do any harm with less than a mA, but it will clearly show you the clamp voltage. A good old multimeter is a wonderful thing, be it analog or digital :-) A scope will do also, especially when it sits already on your bench. Peter Alfke
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.