Processing DVI signals with an FPGA

May 19, 2006 2 Replies

A friend and I have come up with some interesting ideas that involve messing around with DVI interfaces, and we'd like to physically implement them. Neither of us has a whole lot of knowledge in the way of FPGAs, just that they're faster for low-level tasks than a firmware-based controller would be.



We have the basic resources for board production and schematic design, but we need some direction, especially what to look for in the way of FPGA selection (some microcontroller-like functionality is desired, multiple hardware I2C interfaces are needed), and where we can get TMDS transmitters and receivers.



We're going to be pushing the limits of DVI. Dual link, high frequency (more than the single link limit of 165 MHz). The ability to buffer rows of pixel data is likely needed, depending on how critical timing is for TMDS transmitters.



Since we have so little knowledge of FPGA technology, we're looking for someone to work with us on this project. Experience with generating DVI signals is needed. We'd like this project to go commercial, but until we build up some momentum (hope of a working prototype, working prototype, working prototype that works...) it's just a neat thing to work on.



You could try a quick hack I have been thinking on. Configure two ports per tmds channel and use them to send dvi data. Would be interesting to see if it works..

Sounds reasonable.

We used a TFP410 (from TI) for sending DVI signals. Worked fine.

Not necessarily - we generate testpatterns on the fly (admittedly for lower resoultions, but simple stuff can be done at pixel rate).

Depending on the "interesting ideas" you have, operating on the fly might be OK, or you might have to stick stuff in RAM first.

Generating DVI signals is not that hard, just a couple of counters and comparators for the syncs, then wiggle the RGB signals around as you see fit. Send those signals onto a DVI interface chip like the TFP410 and you're done.

If you want to do the DVI encoding on FPGA, it can be done but why bother - the FPGA can't do TMDS signals, so you'd still need an external chip to do this anyway.

Cheers, Martin

martin.j.thompson@trw.com TRW Conekt - Consultancy in Engineering, Knowledge and Technology http://www.trw.com/conekt

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required