08-21-2020 09:10 AM
Hi, I was able to display color bars with my ac701 board via HDMI, I am sending an 800x600 image using the TPG IP, but now I would like to replace the TPG and send a 10x10 image that I have allocated in a RAM, what would be the best way to achieve this?
I have two ideas:
1.- customize the VTC IP to allow me a 10x10 input and create a customized TPG block with VHDL
2.- interpolate my 10x10 image to an 800x600 image and create a customized TPG block with VHDL
or maybe is there a better way to achieve this objetive?
08-23-2020 02:58 PM
It seems like you have moved passed some of your previous issues. Can you please go back and reply to the ones you have solved with the answer to close out the question?
This way the community does not spend time on an issue you have already solved.
For this question, there are many ways of doing this but it depends on what your end goal is.
Most of the Xilinx IP is built for a minimum 64x64 and even at that point, you will need a special display capable of 64x64.
To add to your list of options, you can send the 10x10, but pad it with extra data so that it is in the center of another resolution.
EX: 800x600 where 790 of the horizontal pixels are set to default black in the 10 vertical lines being used.
To show what I mean here is a small example where b is a black pixel and x is your data
To do this, you would allocate a larger section of RAM and pad the data accordingly. Then you would use either the VDMA or VFB to pull the data out and convert it to a streaming interface.
Alternatively, if you are trying to save RAM space, you can create a custom DMA and then pad the data as it is pulled out.
This is an interesting use-case is there a goal you have in mind? There may be an easier way to achieve the end goal.