Electronic – VGA to HDMI converter


I'm making a little project purely as a hobby using a small FPGA breakout board.
I'm outputting VGA video which works fine, but would like HDMI output instead so I can connect to a television that has that input but no VGA.

I don't believe it's practical to generate HDMI directly from my FPGA board (correct me if I'm wrong…) so I was wondering if there was any encoder chip or board that doesn't cost too much that I could use in the project that takes VGA input (and possibly audio) and outputs a HDMI signal. I've not been able to find anything myself.

Any ideas? Or is this impractical and I should settle for analog video instead.

EDIT: Basically I'm asking if there is any way to generate HDMI that's possible for a small personal FPGA project, the VGA part isn't necessary if there is another way.

Best Answer

HDMI is just "DVI with knobs on" on the video side.

As to "can it be done"... my first question is "what FPGA"? Some of them can create HDMI/DVI signals with the IO blocks, others just fundamentally can't.

DVI uses TMDS signalling, which is an encoding on top of a Current Mode Logic (CML) differential pair. CML is actively pulled down by a current source for a '0' and floats high with a termination resistor at the far end for a '1'. It might be emulatable for a hobby project by using a bidirectional LVDS pair driven low and using the tristate line to drive and release (a bit like doing an open-drain drive).

Then you have to encode and serialise the data. TMDS describes how to encode the data bits, and then you you "just" have to serialise the data bits across the data pairs. The specification can be found here - see section 3:

Digital Visual Interface Spec

The TFP410 chip data sheet also has a reasonable description of what goes on: