UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Adventurer
Adventurer
11,247 Views
Registered: ‎05-18-2011

Digilent Atlys board HDMI interface

Has anybody had any success using the axi_hdmi driver for the Atlys board with EDK?

I have followed the Digilent documentation as best as I can.  I have hooked up a monitor the HDMI port, and I can't get anything to display on the monitor.  Does anybody have a working EDK (preferably 14.2) example of this working?

 

Thanks.

 

--wpd

 

 

0 Kudos
8 Replies
Visitor russelljoyce
Visitor
11,165 Views
Registered: ‎11-08-2012

Re: Digilent Atlys board HDMI interface

Did you ever manage to get the HDMI output working with axi_hdmi?

 

I've followed the documentation and am having the same difficulty displaying anything.

I think it may be due to needing to set up the axi_vdma core (I've given this a go in Microblaze code but have been unsuccessful so far).

 

Otherwise, I might just be better off sticking with PLB and XAPP495-based HDMI.

 

Thanks.

0 Kudos
Adventurer
Adventurer
11,155 Views
Registered: ‎05-18-2011

Re: Digilent Atlys board HDMI interface

Hello russelljoyce,

I did finally manage to get things to work.  Yes, you will need the axi_vdma core (or something equivalent).

 

It was about a month ago, so I don't completely remember what was wrong and what I did to make it work, but my sketchy notes (and even sketchier memory) are that I had originally set up the axi_vdma module to use an external frame sync.  It looks to me like the axi_hdmi module manages the timing for displaying on the monitor itself and applies back pressure to axi_vdma, so no external frame sync appears to be necessary.  Things started working when I changed my axi_vdma instance to not use an external frame sync.

 

Compounding the problem, I when I regenerated my design, somehow I managed not to import it into SDK.  Once I worked through all of that, I was able to finally display a blue background on my DVI monitor.

 

If it helps, I've attached a zip file with my system.mhs, system.mss, main.c, and xaxivdma_example_intr.c files.  Since I'm still trying to learn how to make all of this work, I've alternated between totally minimal systems and systems that have everything but the kitchen sink.  This example falls in the latter category with the high speed ethernet module and other modules included.  The software base started from the LWIP example and just calls code in xaxivdma_example_intr.c to set up the output frame buffers and display my blue screen.

 

I sure wish I knew more about this so that I could give you better explanations that this, but I'm just not there yet.

 

Now I'm trying to figure out how to attach the VmodCAM module to the axi_vdma so I can get external video into my system.

 

--wpd

 

0 Kudos
Visitor russelljoyce
Visitor
11,129 Views
Registered: ‎11-08-2012

Re: Digilent Atlys board HDMI interface

Thanks a lot for the help.

 

I've managed to get your code working with HDMI output.

 

I think the main problem with my hardware (becuase it's not in the Digilent document) was not setting FSYNC to 0 on the axi_vdma core. Now I've done that, I get an output over HDMI that the screen will actually display.

 

Now I need to work out how to get HDMI input working properly - at the moment, if I add the HDMI receiver into the design, the VDMA core fails initialisation.

 

Where did you get the xaxivdma_example_intr.c file from? I'm just wondering if there's a version with a 'WriteSetup()' in there too that I could use for input.

 

(The ultimate aim of my project is to get HDMI input flowing through memory to HDMI output, so I can do some image analysis on the buffered frames.)

0 Kudos
Visitor russelljoyce
Visitor
11,115 Views
Registered: ‎11-08-2012

Re: Digilent Atlys board HDMI interface

Don't worry, I've found 'xaxivdma_example_intr.c' buried in the Xilinx installation.

Now just to get the core working properly with both read and write (currently errors when resetting the write channel)...
0 Kudos
Visitor fdm
Visitor
11,052 Views
Registered: ‎11-25-2012

Re: Digilent Atlys board HDMI interface

hi russelljoyce and wpd,

 

i tried to use the digilent HDMI demo.

But i cant build the C-projekt as in step 4 mentionet, because i miss the xuartps.h.

Those files dont come along with the BSP include.

I found the files in the Install Folder of ISE, but i miss some defenitions...

did you have those problems too or did you use some other Demo?

 

I would greatly appreciate some help.

Thanks alot.

 

 

 

0 Kudos
Visitor russelljoyce
Visitor
10,792 Views
Registered: ‎11-08-2012

Re: Digilent Atlys board HDMI interface

The header files should be imported by default if you're using Xilinx SDK by exporting from Platform Studio.

If you're not doing this, I would reccomend it as it creates a project with all the headers for drivers you need by default.

 

The Atlys HDMI PLB Demo (DSD-0000326 from http://www.digilentinc.com/atlys) details how to get that core working in the SDK, and the process is similar for the AXI core (DSD-0000332), after you've done the additional steps of creating the XPS project using BSB.

 

If you're referring to step 4 of HDMI_Demo_Project.pdf then I didn't have any problems there. The tutorial at http://www.fpgadeveloper.com/2011/06/write-a-software-application-with-sdk.html gives a bit more information than the Digilent one on creating a Xilinx C project, which could be of help.

 

 

On another note, following on from my post above about errors when using the write channel of axi_vdma, more details and a solution can be found at http://forums.xilinx.com/t5/Embedded-Processors-and/Problem-with-AXI-VDMA-S2MM-reset/m-p/297507/.

0 Kudos
Observer olcay_davut
Observer
10,416 Views
Registered: ‎03-12-2013

Re: Digilent Atlys board HDMI interface

Hi

I use HDMI IP from atlys board support package in peripheral repository. I compile my hardware and export&lounch sdk but HDMI IP driver is not seen in drivers. Only seen 'generic' in driver of HDMI IP section.   Please help..

 

Thanks..

Ekran Alıntısı.PNG
0 Kudos
Highlighted
Visitor russelljoyce
Visitor
10,351 Views
Registered: ‎11-08-2012

Re: Digilent Atlys board HDMI interface

There is no specific driver for the axi_hdmi core, so it will just default to generic.


You can either write your own driver, or just use the standard Xilinx I/O functions, which are probably adequate as the axi_hdmi core doesn't need much setup from the MicroBlaze side.

 

A couple of functions like these should cover everything you can do with the core from MicroBlaze:

#include "xparameters.h"
#include "xil_io.h"

void setHdmiOutputResolution(int horizontal, int vertical) {
	Xil_Out32(XPAR_AXI_HDMI_0_BASEADDR, horizontal * vertical);
}

int getHdmiOutputResolution(void) {
	return Xil_In32(XPAR_AXI_HDMI_0_BASEADDR);
}

 

0 Kudos