cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
superciocia
Newbie
Newbie
415 Views
Registered: ‎04-30-2021

HDMI from an FPGA

Jump to solution

I am trying to reproduce this project to generate an HDMI signal from a Xilinx FPGA board:

https://medium.com/@_nancychauhan/transmission-of-hdmi-data-streams-to-hdmi-dvi-monitors-via-spartan-6-fpga-295ea28587

Can anyone recommend an active / more recent Xilinx board?

Also, would it ever be possible to somehow add a 'trigger' for when to start sending the HDMI data? Could I for example access the clock and use that as a trigger?

0 Kudos
1 Solution

Accepted Solutions
dgisselq
Scholar
Scholar
152 Views
Registered: ‎05-21-2015

@superciocia ,

Triggering and HDMI are ... not as simple as they sound.  From a logic standpoint, it would be easy to trigger the start of a frame on an external signal.  However, this isn't the common HDMI usage.  Typically it takes an HDMI monitor some number of frames to lock onto any signal.  It's slow enough that your eye might even notice the underlying negotiation and lock.  For this reason, were I building an HDMI controller, I wouldn't stop the clock or the sync pulses to wait for a trigger.

Your application might be different.  If your application requires an HDMI monitor to be properly synchronized, then you might wish to wait after the trigger for the first top of frame to start transmitting your data.  However, your question brings in a whole host of application specific issues that ... I'm not sure I could properly address on this forum prior to a some deeper conversations and a consulting contract.  If you would like, however, I have posted other designs that work with HDMI--all of which are currently posted on github.  If nothing else, perhaps by examining them they might motivate or inspire some ideas on your end.

Dan

View solution in original post

6 Replies
dgisselq
Scholar
Scholar
385 Views
Registered: ‎05-21-2015

@superciocia ,

I have a Nexys Video board that I have successfully generated HDMI with.  While it's a bit old, this project was used to generate a scrolling raster (i.e. waterfall, but scrolling horizontally) of a spectrogram of an incoming signal.

As for triggering a display ... it's just RTL.  What you write and design is all up to you.  You can trigger on whatever you want.

Dan

superciocia
Newbie
Newbie
357 Views
Registered: ‎04-30-2021

Hi, thanks this is extremely useful.

1) Do you know of an active part on e.g. Digikey (I am in the US) that could still be compatible with that project?

2) RE: trigger. But is there a digital or analogue input that I can connect to my external TTL trigger?

0 Kudos
superciocia
Newbie
Newbie
233 Views
Registered: ‎04-30-2021

Hey @dgisselq  did you get a change to see my reply?

 

0 Kudos
dgisselq
Scholar
Scholar
214 Views
Registered: ‎05-21-2015

@superciocia ,

Did I see it?  Yes, but I'm not sure I understood it.  Digilent is still selling the Nexys Video board, so I have to believe it's still an "active part."  Whether or not you can get it on Digikey is another question I cannot answer.

As for the external trigger--most development boards have a large number of pins you can use as digital inputs.  This includes the Nexys Video.  These inputs are commonly 3.3V inputs, not 5V TTL, so you might need a level shifter, but ... well, I'm not sure why this is an issue.  Is there something special you want from a digital input that would keep it from being used by you?

Dan

superciocia
Newbie
Newbie
192 Views
Registered: ‎04-30-2021

@dgisselq,

Thanks.

What I mean by 'active' is what kind of board should I choose. Just one with an HDMI output and digital inputs? What other "hardware" I have to make sure that specific board has in order to reproduce your project?

So, the reason I am asking about a trigger is the following.
I am generating an bitmap 'image' whose pixels are actually voltages,  that then goes to a device (that accepts said bitmap image) and displays it. The device is kind of like a monitor for all practical purposes, it's called a spatial light modulator (SLM). I want to be able to synchronise some other actions with the moment a new image is sent to the SLM (HDMI). Hence why I asking about a trigger. The issue with using the HDMI port from a computer is that the frame updating isn't reproducible and frames are even skipped sometimes. 

0 Kudos
dgisselq
Scholar
Scholar
153 Views
Registered: ‎05-21-2015

@superciocia ,

Triggering and HDMI are ... not as simple as they sound.  From a logic standpoint, it would be easy to trigger the start of a frame on an external signal.  However, this isn't the common HDMI usage.  Typically it takes an HDMI monitor some number of frames to lock onto any signal.  It's slow enough that your eye might even notice the underlying negotiation and lock.  For this reason, were I building an HDMI controller, I wouldn't stop the clock or the sync pulses to wait for a trigger.

Your application might be different.  If your application requires an HDMI monitor to be properly synchronized, then you might wish to wait after the trigger for the first top of frame to start transmitting your data.  However, your question brings in a whole host of application specific issues that ... I'm not sure I could properly address on this forum prior to a some deeper conversations and a consulting contract.  If you would like, however, I have posted other designs that work with HDMI--all of which are currently posted on github.  If nothing else, perhaps by examining them they might motivate or inspire some ideas on your end.

Dan

View solution in original post