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: 
1,536 Views
Registered: ‎01-06-2011

Video Processing Subsystem integration problem (Vivado v2016.1)

Hi all,

 

I am currently using vpss v2.0 using vivado v2016.1. Below attached is the block diagram of vpss inserted between video pipelines and the source code to enable the vpss. The input and output resolution for the vpss is 800x600x24bit/pixel (RGB) at 60Hz. The size of buffer for  axistream to video out IP is 8K. The vpss axi streaming and memory interface is running at 150Mhz. The output pixel clock is 40Mhz. 

 

The vpss is working correctly when the zoom and pip is turn off. I can see the video output of frame size 800x600 60Hz. Below is the code that works.

 

 

XVprocSs_SetFrameBufBaseaddr(&procss_inst, 0x03000000);

      if(XVprocSs_CfgInitialize(&procss_inst, XVprocSs_LookupConfig(XPAR_V_PROC_SS_0_DEVICE_ID), XPAR_V_PROC_SS_0_BASEADDR)==XST_SUCCESS){

       xil_printf("VPSS init success\r\n");

      }else{

       xil_printf("VPSS init failure\r\n");
      }


       XVprocSs_SetZoomMode(&procss_inst, FALSE);

      XVprocSs_SetPipMode(&procss_inst, FALSE);

 

      if(XVprocSs_SetSubsystemConfig(&procss_inst)==XST_SUCCESS){

    xil_printf("Set VPSS subsystem success\r\n");

   }else{

    xil_printf("Set VPSS subsystem failure\r\n");

   }

 

 

 

Next I turn on the zoom function (0,0) (100,100) based on the following code, the video is lost. When I try to query the status of VDMA inside the vpss, I found out that the read channel frame buffer pointer is not moving. It gets stuck at buffer 3. Pls refer to the documents below for all the screen shots I have captured for subsystem input/output config (with and without zooming) and VDMA IP status. (with and without zooming). The last screen shot for VDMA IP status shows that the Rdframestore is stuck at 3 instead of stepping thru 0 - 3. (4 frame buffers implemented by vpss) 

 

      win_struct.Width  = 100;
      win_struct.Height = 100;
      win_struct.StartX = 0;
      win_struct.StartY = 0;

 

      win_struct1.Width  = 800;
      win_struct1.Height = 600;
      win_struct1.StartX = 0;
      win_struct1.StartY = 0;

 

      XVprocSs_SetZoomPipWindow(&procss_inst, XVPROCSS_ZOOM_WIN, &win_struct);
      XVprocSs_SetZoomPipWindow(&procss_inst, XVPROCSS_PIP_WIN, &win_struct1);
      XVprocSs_SetPIPBackgroundColor(&procss_inst, XLBOX_BKGND_RED);


      XVprocSs_SetZoomMode(&procss_inst, TRUE);

      if(XVprocSs_SetSubsystemConfig(&procss_inst)==XST_SUCCESS){

    xil_printf("Set VPSS subsystem success\r\n");

   }else{

    xil_printf("Set VPSS subsystem failure\r\n");

   }

 

Can someone help me to solve this issue? The vpss is working perfectly when not performing zoom or pip. Thanks.

 

 

Regards

Yan Eng

 

 

 

 

 

 

 

 

 

 

0 Kudos
2 Replies
Moderator
Moderator
1,501 Views
Registered: ‎11-09-2015

Re: Video Processing Subsystem integration problem (Vivado v2016.1)

Hi yaneng@stengg.com,

 

You may want to use the latest vivado version to have all the latest fixes for the VPSS.

 

Also, you may want to use the VPSS example design and example application. From my experience, the VPSS require steps to be executed in the right order. This is why using the example application is the best starting point.

 

Make sure the subsystem is stopped when changing the configuration. Also make sure to reset the input after a new configuration.

 

Kind Regards,

 

Florent


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
1,477 Views
Registered: ‎01-06-2011

Re: Video Processing Subsystem integration problem (Vivado v2016.1)

Hi Florent,

 

Thanks. I will take a look at the hardware configuration of VPSS for the example design to see what I have done wrong.

 

 

 

Regards

Yan Eng

0 Kudos