I'm using spartan 3E-100 CP132 fpga board to display a basic plus image on a monitor. I have tried using 800x600 72 hz and 640x480 60 Hz but I always get a distorted vertical lines. Is it because the on board oscillator is silicon but not crystal so it's not precise enough? is there a way to avoid this? I've put the image I get
-
\$\begingroup\$ That's a lot of short-term timing jitter. I doubt that you can attribut this to the oscillator alone. But without more details about your setup, it's impossible to suggest a solution. \$\endgroup\$– Dave TweedCommented Jul 16, 2014 at 12:40
-
\$\begingroup\$ by my setup if you mean the monitor it is ag neovo f419 and the board is digilent basys2 \$\endgroup\$– Ege KorkanCommented Jul 16, 2014 at 13:26
1 Answer
Yes, it's because you are using the "silicon" oscillator.
The basys2 board also provides a socket for a crystal oscillator. If you plug in a crystal oscillator and use its clock signal the jitter is gone and the VGA image will be fine. I have tried it myself.
BTW: The manual tells you about that:
The primary silicon oscillator is flexible and inexpensive, but it lacks the frequency stability of a crystal oscillator. Some circuits that drive a VGA monitor may realize a slight improvement in image stability by using a crystal oscillator installed in the IC6 socket. For these applications, a 25MHz (or 50MHz) crystal oscillator, available from any catalog distributor, is recommended
("may realize a slight improvement" is a strong understatement)
See page 3 in the Basys2 manual.