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!

AR# 51560

LogiCORE DisplayPort - How do I select the proper USER_PIXEL_WIDTH for my resolution?


This article covers the following:

How do I select the proper USER_PIXEL_WIDTH for my resolution?

Why can I not access all of the bandwidth of the DisplayPort v1.2 standard when running at 5.4Gbps?


See the latest DisplayPort documentation on what pixel widths are supported for the user interface.

As of v6.0:

  • 1 lanes - 1 pixel wide
  • 2 lanes - 1 or 2 pixels wide
  • 4 lanes - 1, 2 or 4 pixels wide
This combined with a max speed of 150Mhz means we cannot support the full bandwidth available when using the 5.4Gbps interface.

For MST mode you must have 4 lanes and the interface is always Quad pixels.

For SST mode, UDI interface can be Single, Dual or Quad pixels.

There are several steps to enable this:

  1. Core Configuration and Generation via the core GUI:
    When you generate the core you must select if you want to enable Dual or Quad interface.
    • Dual - enables Single and Dual (Only allowed when you have set the max to 2 or 4 lanes Selected.)
    • Quad - enables Single, Dual and Quad (Only allowed when you have set the max to 4 lanes Selected.)
  2. Run Time Selection (Assuming you have selected Quad at generation time):
    If you have enabled Quad, then you need to select between the Single, Dual or Quad interface at run time.
    You select this by setting the 0x010 - USER_PIXEL_WIDTH register, but there are some restrictions.

    • Single Pixel mode work in all configurations.
    • Dual Pixel mode can be selected if you have trained to 2 or 4 lanes
    • Quad Pixel mode can be selected if you have trained to 4 lanes

The actual interface being used at runtime is determined by 0x010 - USER_PIXEL_WIDTH.

But in order to make sure you have valid data, you also must ensure that the number of lanes is sufficient to support the selected USER_PIXEL_WIDTH.

That is to say if you only train 1 lane, you can only select Single Pixel mode for the UDI.

But if you train to 4 lanes, then you can select Single, Dual or Quad Pixel mode for the UDI.

Once a particular USER_PIXEL_MODE is selected, you will always get that number of pixels on the interface.

That is, if you select Dual (2), you will always get 2 pixels at a time on the UDI.

Or if you select Quad (4) you will always get 4 pixels at a time on the UDI.

The rx_vid_pixel_mode[2:0] signal is an output alongside the video that your downstream logic can use to indicate what mode that was selected in the 0x010 - USER_PIXEL_WIDTH register.

The max number of pixels of each USER_PIXEL_WIDTH can be calculated as follows:


Linked Answer Records

Master Answer Records

AR# 51560
Date Created 08/30/2012
Last Updated 06/26/2015
Status Active
Type General Article
  • DisplayPort