The parameters on the Top-level tab are as follows:
• Component Name : Component name is set automatically by IP integrator.
• Samples Per Clock : Select 1, 2, 4, or 8 pixel wide interface for the IP configurations without deinterlacer. If the user enables deinterlacer, only 1,2, and 4 Samples per clock are supported.
• Maximum Data Width : Select 8, 10, 12, or 16-bit color depth.
• Maximum Number of Pixels : Specify the maximum number of pixels per scanline. Permitted values are from 64 to 8192. Specifying this value is necessary to establish the depth of internal line buffers. Using a tight upper-bound results in optimal block RAM usage. The active frame size can be programmed during run-time via the AXI4-Lite interface and driver API. The number of active columns must be less than or equal to the Maximum Number of Pixels.
• Maximum Number of Lines : Specify the maximum number of scanlines per frame. Permitted values are from 64 to 4320. The active frame size can be programmed during run-time via the AXI4-Lite interface and driver API. The number of active rows must be less than or equal to the Maximum Number of Lines.
• Video Processing Functionality : The following sets of processing functionality are offered:
: The Full Fledged design indicates deinterlacing (optional), scaling, color matrix operations such as color space conversion and correction, chroma resampling (optional), and frame rate conversion by means of drop/repeat (optional).
The Full Fledged configuration is the most resource intensive configuration, but allows for stripping down the full configuration by excluding deinterlacing, frame rate conversion, and chroma resampling. If deinterlacing is not included, only progressive inputs can be supported. Similarly, the Color Space Support option (explained below), allows for stripping down the Video Processing Subsystem to handle only RGB and YUV 4:4:4, therefore eliminating the need for horizontal and vertical chroma resampling.
In the Full Fledged configuration, you have full configurability over the included functions, for example, the algorithm and/or number of taps used for chroma resampling can be changed.
: The subsystem is configured to perform the scaling function with an option for video format conversion between RGB, YUV 4:4:4, YUV 4:2:2, and YUV 4:2:0.
Note that together with Enable Color Space Conversion, and Color Space Support for RGB, YUV 4:4:4, YUV 4:2:2, YUV 4:2:0, the Scaler Only configuration is effectively a scaler with any to any format conversion. In terms of resources, this is a cost-effective alternative to the Full Fledged configuration as long as there is no need for better than basic chroma re-sampling quality and no need for programming the color space conversion coefficients. In this mode the coefficients are fixed. The below equations are implemented in the IP source code and are YUV to RGB equations:
Cr = V - (1<<(HSC_BITS_PER_COMPONENT-1))
Cb = U - (1<<(HSC_BITS_PER_COMPONENT-1))
R = Y + ((Cr * 1733) >> 10)
G = Y - ((Cb * 404 + Cr * 595) >> 10)
B = Y + ((Cb * 2081) >> 10)
These are RGB to YUV equations:
Y = (306*R + 601*G + 117*B)>>10
U = (1<<(HSC_BITS_PER_COMPONENT-1)) + (((B-Y)*504)>>10)
V = (1<<(HSC_BITS_PER_COMPONENT-1)) + (((R-Y)*898)>>10)
1. HSC_BITS_PER_COMPONENT = C_MAX_DATA_WIDTH (here C_MAX_DATA_WIDTH can be set by user through the GUI.)
2. Calculated values are clipped to ‘0 to Maximum’ allowed value in that color depth, that is, C_MAX_DATA_WIDTH. For example, if the maximum data width is 10, the value is clipped in 0 to 1023.
° Deinterlacing Only : The subsystem is configured to perform only the deinterlacing function.
° Color Space Conversion Only : The subsystem is configured to perform color correction functions and color space conversion between RGB and YUV 4:4:4 with options to also support conversion to and from YUV 4:2:2 and YUV 4:2:0, meaning the Color Space Conversion Only configuration can handle any to any format conversion.
° 420-422 Chroma Resampling Only : The subsystem is configured to perform only the vertical chroma resampling function.
° 422-444 Chroma Resampling Only : The subsystem is configured to perform only the horizontal chroma resampling function.
• Top Level Configuration Options : When the Full Fledged Video Processing Functionality is selected, the following additional configurations are available:
° Enable Interlaced Input : Select this checkbox if interlaced support is desired. In this case, the subsystem includes the Deinterlacer subcore.
° Enable Built-in DMA : Select this checkbox to include a Video DMA Engine in the subsystem.
Note: Samples per clock should only be 1 if interlaced Input or Built-in DMA is selected.
° Use UltraRAM for Line Buffers : In UltraScale+™ devices, line buffers can be stored in UltraRAM instead of Block RAM.
° Color Space Support : Select the color spaces for which support is desired. If YUV 4:2:2 is selected in the Full Fledged configuration, the Horizontal Chroma Resampler subcore is included. If YUV 4:2:0 is selected, the Vertical Chroma Resampler subcore is also included.