How to reduce ringing/ground bounce from FPGA output pin?
The ringing is probably because the cable is not
terminated properly. The easiest way to terminate
it is with "reverse termination". Add a small
resistor (chip resistor or 1/10 watt leaded
resistor) in series and as close as possible to
the FPGA pin. The value should be close to the
impedance of the cable you are driving. For
instance, if you are driving 50 ohm cable, then
use a 47 ohm resistor. If it still rings, then
increase the value. If it slows down the edge too
much, then lower the value.
The important thing is to measure the waveform at
the destination, that is, at the receiving end. If
you measure at the resistor, you'll see an ugly
waveform. One easy way to check the waveform is to
just run the cable directly into a high impedance
scope input, then you won't be fooled by the long
ground wire on your scope probe.
> Hi everyone.
> I would like to know if there is a way to eliminate ringing/ground bounce
> from a signal that is being output by the FPGA.
> The design that our research team has built requires the use of a divided
> clock (1/8 generated via VHDL code) that must be fed to a bit error rate
> test system through a physical cable. The problem we see at the divided
> clock output is a lot of ringing (with a negative spike of 2V). We are not
> sure if the problem is directly related to any form of ground bounce, but
> any suggestions for configuring the FPGA (either by configuring the IOBs
> or adding external capacitors or an RC network) that could reduce these
> unwanted oscillations are greatly welcome. We have tried both TTL and
> CMOS outputs and the results are just as bad in both cases.
> Our FPGA is a Xilinx 4028E-3HQ240, and the divided clock can be chosen
> directly from a header or an SMB connector. Our input clock is TTL
> (0-5V) and is quite clean.
> Thanks in advance for any help.
> Nestor Caouras