04-05-2017 03:43 AM
Hi everyone, I am rather new here (a premature appology if I do something extremely stupid while I am here) but since I will be studying FPGAs next semester (and from year 2 on) at the university, I decided it would be good to start on my own in my free time. I bought a second hand Digilent Atlys board (according to forum comments and my teachers it is one of the nicer ones to begin with) and I decided to start a small project with an HDMI out and to have it printed out on an LCD screen I have around. We shall be working on XPS mostly in the beginning
I am following some instructions set by my tutors and they said in order to have a sense of what we are to do is that we have to the following 3 steps(with some addition information on what I did as it might be wrong):
1. Set up an UART communication with the device and have a string (while(1) xil_printf"Hello Atlys"; etc) returned to you. (DONE)
- Was super simple to do. Had a bit of problems with the Auto Detect setting but setting it to Digilent Cable seemed to fix it
2. Set up an AXI HDMI out. (STUCK ON)
- Added the HDMI OUT ipcore from the Atlys Demo HDMI project.
- I think I have to set the DDR2 somehow but I do not have any idea what to do.
- I did set a TPG (Test Pattern Generator)
3. Have the (while(1) xil_printf"Hello Atlys"; etc) being printed on the screen. (HAVENT EVEN ATTEMPTED AND I AM GETTING REALLY DEPRESSED ABOUT IT)
- Am close to having a Citalopram overdose (I'm trying to be humorous here....)
Well this is pretty much it. If you guys need me to upload my project so far I can upload it, but I mostly need instructions on what to do.
04-05-2017 04:23 AM
When you set up the TPG with the HDMI core, was that working? So you could display test patterns on the screen, and the only problem is getting the HDMI core talking to the RAM? Or do you not have anything from the HDMI core yet?
If the problem is just getting the RAM working, the Atlys "Flash Memory Config" project might provide some valuable hints. That apparently connects the DDR2 RAM, presumably using a MIG (Memory Interface Generator) or something similar. I haven't used external memory in ISE, but in the newer tools (Vivado) you can just put an AXI port on the MIG, wire that up to the HDMI IP (possibly with a VDMA block in the middle, if the HDMI IP expects a stream) and start feeding in some data.
04-05-2017 05:47 AM
04-06-2017 05:54 AM
Hmm, that's going to need someone who actually knows their way around XPS and/or the HDMI design (ie not me).
Is there a "locked" input to the HDMI core, to tell it that the clock is stable? If there is, you might need to connect that to the "locked" output on whatever is providing the clock.
04-07-2017 12:02 AM
04-07-2017 04:00 AM
Right, that looks logical. Where are PXLCLK_I, PXLCLK_2X_I, PXLCLK_10X_I, and LOCKED_I connected? Presumably there's a clock generator somewhere that's producing those, and ideally it should have a "locked" output pin.