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: 
Highlighted
Observer sunyeming2018
Observer
2,013 Views
Registered: ‎03-08-2018

PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

Hi My friend,

I want to use ZCU106 HW encode/decode functions in our Linux server.Does ZCU106 includes PCIe Driver or some sample codes/docs?Any responses will be appreciated.

Thanks.

Simon Sun.

0 Kudos
1 Solution

Accepted Solutions
Xilinx Employee
Xilinx Employee
2,523 Views
Registered: ‎08-01-2007

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

We do not currently have any documentation that addresses the particular use case.

 

Currently PCIe does not have direct access to the VCU.  The Linux driver for the VCU runs on the A53s.

 

So if you want to control the VCU over PCIe. you would need to send commands over PCIe to the A53s and then they would pass the data down to the VCU.


If you are wanting to send the video data over PCIe, then you would need to DMA the data into DDR and then you could read it out of DDR and into the VCU.  You just have to make sure that you writing the data into DDR in NV12 format, as that is what the VCU expects.  You can find more information on this in the VCU Product Guide PG252.

 

I'll make a couple of quick points about the video formats.

 

First, from a purely hardware stand point the VCU support 4:2:2 and 4:2:0  8 and 10 bit data.   This is listed in the Features section of PG252 on page 5.  The packing of the data is described in the Source Frame Format starting on page 28.  Figure 3-2 has a good diagram, which shows that the packing is Luma (Y) followed by interleaved Chroma (UV) pixels.

 

Second is the software.  As of now the GStreamer software only support 4:2:0 8-bit, which matches up to NV12.  You can find a description of the NV12 format in PG252, under the Encoder Input parameters sections Table 11-8.  Future version of the GStreamer software will be adding support for 4:2:2 and 10-bit data, but the packing will remain the same.

Chris
Video Design Hub | Embedded SW Support

---------------------------------------------------------------------------
Don’t forget to Reply, Kudo, and Accept as Solution.
---------------------------------------------------------------------------
6 Replies
Moderator
Moderator
1,971 Views
Registered: ‎02-16-2010

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution
Are you looking to configure PCIe as Root Port?
------------------------------------------------------------------------------
Don't forget to reply, give kudo and accept as solution
------------------------------------------------------------------------------
0 Kudos
Observer sunyeming2018
Observer
1,921 Views
Registered: ‎03-08-2018

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

Hi Venkata,

Thanks for your kindly reply.

Yes,the ZCU106 board will insert into X86 Server,which needs access to  the ZCU106 VCU module by PCIe interface.So if it is possible for you,could you please provide  the PCIe driver and the data flow/docs to us?

Thanks in advance.

0 Kudos
Xilinx Employee
Xilinx Employee
2,524 Views
Registered: ‎08-01-2007

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

We do not currently have any documentation that addresses the particular use case.

 

Currently PCIe does not have direct access to the VCU.  The Linux driver for the VCU runs on the A53s.

 

So if you want to control the VCU over PCIe. you would need to send commands over PCIe to the A53s and then they would pass the data down to the VCU.


If you are wanting to send the video data over PCIe, then you would need to DMA the data into DDR and then you could read it out of DDR and into the VCU.  You just have to make sure that you writing the data into DDR in NV12 format, as that is what the VCU expects.  You can find more information on this in the VCU Product Guide PG252.

 

I'll make a couple of quick points about the video formats.

 

First, from a purely hardware stand point the VCU support 4:2:2 and 4:2:0  8 and 10 bit data.   This is listed in the Features section of PG252 on page 5.  The packing of the data is described in the Source Frame Format starting on page 28.  Figure 3-2 has a good diagram, which shows that the packing is Luma (Y) followed by interleaved Chroma (UV) pixels.

 

Second is the software.  As of now the GStreamer software only support 4:2:0 8-bit, which matches up to NV12.  You can find a description of the NV12 format in PG252, under the Encoder Input parameters sections Table 11-8.  Future version of the GStreamer software will be adding support for 4:2:2 and 10-bit data, but the packing will remain the same.

Chris
Video Design Hub | Embedded SW Support

---------------------------------------------------------------------------
Don’t forget to Reply, Kudo, and Accept as Solution.
---------------------------------------------------------------------------
Moderator
Moderator
1,799 Views
Registered: ‎11-09-2015

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

Hi @sunyeming2018,

 

If everything is clear for you, please kindly close the topic by marking a reply as accepted solution.

Thanks and Regards,


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Observer sunyeming2018
Observer
1,794 Views
Registered: ‎03-08-2018

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

Hi Chris,

Thanks for your kindly detailed explanation.I'll follow your guide to do the further investigation.Thanks for your kindly support.

0 Kudos
Observer sunyeming2018
Observer
1,786 Views
Registered: ‎03-08-2018

Re: PCIe Driver/doc about Zynq Ultrascale+(ZCU106)

Jump to solution

thanks.I've already marked Chris's reply as the solution.

0 Kudos