Video and Vision Processing Suite Intel® FPGA IP User Guide

ID 683329
Date 9/30/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents
1. About the Video and Vision Processing Suite 2. Getting Started with the Video and Vision Processing IPs 3. Video and Vision Processing IPs Functional Description 4. Video and Vision Processing IP Interfaces 5. Video and Vision Processing IP Registers 6. Video and Vision Processing IPs Software Programming Model 7. Protocol Converter Intel® FPGA IP 8. 3D LUT Intel® FPGA IP 9. AXI-Stream Broadcaster Intel® FPGA IP 10. Chroma Key Intel® FPGA IP 11. Chroma Resampler Intel® FPGA IP 12. Clipper Intel® FPGA IP 13. Clocked Video Input Intel® FPGA IP 14. Clocked Video to Full-Raster Converter Intel® FPGA IP 15. Clocked Video Output Intel® FPGA IP 16. Color Space Converter Intel® FPGA IP 17. Deinterlacer Intel® FPGA IP 18. FIR Filter Intel® FPGA IP 19. Frame Cleaner Intel® FPGA IP 20. Full-Raster to Clocked Video Converter Intel® FPGA IP 21. Full-Raster to Streaming Converter Intel® FPGA IP 22. Generic Crosspoint Intel® FPGA IP 23. Genlock Signal Router Intel® FPGA IP 24. Guard Bands Intel® FPGA IP 25. Interlacer Intel® FPGA IP 26. Mixer Intel® FPGA IP 27. Pixels in Parallel Converter Intel® FPGA IP 28. Scaler Intel® FPGA IP 29. Stream Cleaner Intel® FPGA IP 30. Switch Intel® FPGA IP 31. Tone Mapping Operator Intel® FPGA IP 32. Test Pattern Generator Intel® FPGA IP 33. Video Frame Buffer Intel® FPGA IP 34. Video Streaming FIFO Intel® FPGA IP 35. Video Timing Generator Intel® FPGA IP 36. Warp Intel® FPGA IP 37. Design Security 38. Document Revision History for Video and Vision Processing Suite User Guide

26.4. Mixer IP Registers

Each register is either read-only (RO) or read-write (RW).
Table 390.  Mixer IP Parameterization RegistersIn the software API the register names appear with a prefix of INTEL_VVP, INTEL_VVP_CORE or INTEL_VVP_MIXER as appropriate and with an optional REG suffix
Address Register Access Description
0x0000 VID_PID RO

Read this register to retrieve mixer product ID.

This register always returns 0x6FA7_0233

0x0004 VERSION RO

Read this register to retrieve the version information for the Intel Quartus release that Intel uses to build the mixer.

0x0008 LITE_MODE RO Read this register to determine if you turn on lite mode. This register returns 0 when you turn off lite and 1 when you turn on lite.
0x000C DEBUG_ENABLED RO Read this register to determine if Debug features is on. This register returns 1 if reads to other registers designated as RW return the last value you write to the register, or an undefined value.
0x0010 PIXELS_IN_PARALLEL RO Read this register to determine if the IP supports 4:4:4 chroma sampling at the output
0x0014 NUM_LAYERS RO Read this register to determine if the IP supports 4:2:2 chroma sampling at the output

0x0018 + (n-1)*8

LAYER_n_SUPPORTED_BLEND_MODES RO Read return values
0x001C+ (n-1)*8 LAYER_n_RESTRICTED_OFFSETS RO Read this register to determine if restricted offsets is on for layer n (1 <= X <= 7). Returns 1 if restricted offsets is on and 0 otherwise
0x0060 to 0x011F - - Unused.
Table 391.  Mixer IP Control and Debug RegistersFor more information, refer to Control Packets. You must turn on Debug features to read the values stored in these registers. If you turn off Debug features, reads to these registers return undefined data. The only exception is the STATUS register, whose value can always be read
Address Register Access Description
Lite Full
0x0120 IMG_INFO_WIDTH RW RO

When you turn on lite, use this register to set the expected width of incoming video fields.

When you turn off lite and turn on Debug features, this register returns the width that the mixer derives from information in the image information packet.

0x0124 IMG_INFO_HEIGHT RW RO

When you turn on lite, use this register to set the expected height of incoming video fields.

When you turn off lite and turn on Debug features, this register returns the height that the mixer derives from information in the image information packet.

0x0128 IMG_INFO_INTERLACE

-

RO When you turn off lite and turn on Debug features, this register returns the interlace nibble that the mixer derives from information in the image information packet. Not in lite mode.
0x012C Reserved - - Reserved.
0x0130 IMG_INFO_COLORSPACE - RO When you turn off lite and turn on Debug features, this register returns the color space that the mixer derives from information in the image information packet. Not in lite mode.
0x0134 IMG_INFO_SUBSAMPLING RW RO

When you turn on lite, use this register to set the expected chroma sampling of incoming video fields.

When you turn off lite and turn on Debug features, this register returns the subsampling that the mixer derives from information in the image information packet. Not in lite mode.

0x0138 IMG_INFO_COSITING - RO When you turn off lite and turn on Debug features, this register returns the cositing that the mixer derives from information in the image information packet. Not in lite mode.
0x013C IMG_INFO_FIELD_COUNT - RO When you turn off lite and turn on Debug features, this register returns the field count that the mixer derives from information in the image information packet. Not in lite mode.
0x012C to 0x013C - - - Unused.
0x0140 STATUS RO

Bit 0: Status bit.

1 = mixer is processing a video field, 0 otherwise.

When you turn off Lite mode:

Bit 1: Pending register updates bit.

Any writes to the output sampling register (0x0148) causes the IP to raise the pending register updates bit, to indicate outstanding changes to the resampling settings.

The IP lowers this bit at the next field boundary after a write to the COMMIT register.

Bits [14:8]: Layer running bits.

1 bit per overlay layer (layers 1 and up). Bit n+7 returns 1 if the IP displays or consumes layer n for the current base layer frame.

0x0144 COMMIT RW Only when you turn off lite mode. Any changes to the mixer settings via the register map are held pending until a write is issued to this register. The value you write is unimportant.
0x0148 + (n-1)*0x1C LAYERn_MODE RW Write to this register to set the layer enable mode for layer n.
0x014C + (n-1)*0x1C LAYERn_BLEND_MODE RW Write to this register to set the blend mode for layer n.
0x0150 + (n-1)*0x1C

LAYERn_STATIC_ALPHA

RW Write to this register to set the static alpha value for layer n.
0x0154 + (n-1)*0x1C

LAYERn_H_OFFSET

RW Write to this register to set the horizontal offset for layer n.
0x0158 + (n-1)*0x1C LAYERn_V_OFFSET RW Write to this register to set the vertical offset for layer n.
0x015C + (n-1)*0x1C

LAYERn_WIDTH

RW Write to this register to set the field width for layer n. Only when you turn on lite mode.
0x0160 + (n-1)*0x1C LAYERn_HEIGHT RW Write to this register to set the field height for layer n. Only when you turn on lite mode.

Register Bit Descriptions

Table 392.  VID_PID
Name Bits Description
Mixer version ID and product ID 31:0 This register always returns 0x0000_0233.
  • 15:0 is the product ID and always returns 0x0233
  • 31:16 is the vendor ID and always returns 0x6AF7
Table 393.  VERSION
Name Bits Description
Lite mode parameterization bit 7:0 Register map version. This returns 0x01.
QPDS patch revision 15:8 Returns 0x00.
QPDS update revision 23:16 Updated for each release. For 21.4, returns 0x04
QPDS major revision 31:24 Updated for each release. For 21.4, returns 0x15.
Table 394.   LITE_MODE
Name Bits Description
Lite mode parameterization bit 31:0 Returns 1 if you turn on lite mode and 0 otherwise.
Table 395.  DEBUG_ENABLED
Name Bits Description
Debug features parameterization bit 31:0 Returns 1 if you turn on debug features and 0 otherwise.
Table 396.  PIXELS_IN_PARALLEL
Name Bits Description
Pixels in parallel 31:0 Returns the number of pixels processed per clock cycle.
Table 397.   NUM_LAYERS
Name Bits Description
Number of layers 31:0 Returns the number of mixer layers (including the base layer).
Table 398.  LAYER_n_SUPPORTED_BLEND_MODES
Name Bits Description
Layer n supported blend modes 31:0 Returns 0 for no blending (opaque overlay only), 1 for blending with static alpha, 2 for per-pixel blending using in-stream alpha values, and 3 for runtime switching between static alpha and per-pixel alpha.
Table 399.  LAYER_n_RESTRICTED_OFFSETS
Name Bits Description
Layer n restricted offsets 31:0 Returns 1 if horizontal offsets for layer n should be limited to integer multiples of pixels in parallel and 0 otherwise.
Table 400.  IMG_INFO_WIDTH
Name Bits Description
Width bits 15:0

If you turn on lite mode, write to this register to set the expected width of the incoming video fields.

If you turn off lite mode and turn on debug features, this register returns the width-1 field from the most recently received image information packet and adds 1 to return a value for width.

unused 31:16 unused
Table 401.  IMG_INFO_HEIGHT
Name Bits Description
Height bits 15:0

If you turn on lite mode, write to this register to set the expected height of the incoming video fields.

If you turn off lite mode and turn on debug features, this register reads the height-1 field from the most recently received image information packet and adds 1 to return a value for height.

unused 31:16 unused
Table 402.   IMG_INFO_INTERLACE
Name Bits Description
IntlaceNibble bits 3:0

If you turn on lite mode, this register has no function.

If you turn off lite mode and turn on debug features, this register returns the intlaceNibble field from the most recently received image information packet .

unused 31:4 unused
Table 403.  IMG_INFO_COLORSPACE
Name Bits Description
CSP code bits 6:0

If you turn on lite mode, this register has no function.

If you turn off lite mode and turn on debug features, this register returns the 7 bit CSP field from the most recently received image information packet .

unused 31:7 Unused.
Table 404.  IMG_INFO_SUBSAMPLING
Name Bits Description
SubSa code bits 1:0

If you turn on lite mode, write to this register to set the expected chroma sampling of the incoming video fields.

If you turn off lite mode and turn on debug features, this register returns the SUBSA field from the most recently received image information packet.

unused 31:2 Unused.
Table 405.   IMG_INFO_COSITING
Name Bits Description
Cosite code bits 1:0

If you turn on lite mode, this register has no function.

If you turn off lite mode and turn on debug features, this register returns the COSITE field from the most recently received image information packet.

unused 31:2 Unused.
Table 406.   IMG_INFO_FIELD_COUNT
Name Bits Description
Count bits 6:0

If you turn on lite mode, this register has no function.

If you turn off lite mode and turn on debug features, this register returns the 7 bit FIELD_COUNT field from the most recently received image information packet.

unused 31:7 Unused.
Table 407.  STATUS
Name Bits Description
Status bit 0 1 means mixer is processing a video field, 0 otherwise.
Pending register updates bit 1 1 means mixer has pending updates, 0 otherwise (full mode only).
unused 7:2 Unused.
Layer running bits 14:8 Bit 7+n = 1 if you turn on layer n for display or consume for this field of the base layer.
unused 31:15 Unused.
Table 408.  COMMIT
Name Bits Description
unused 31:0 Unused.
Table 409.  LAYERn_MODE
Name Bits Description
Layer n enable bit 0 Host enable bit for layer n (1 <= n <=7). Set to 0 to disable input for layer n. The IP holds TREADY signal for layer n low and accepts no data. Set to 1 to enable input for layer n, subject to the consume and soft start settings in bits 1 and 2.
Layer n consume bit 1 Set to 0 if input from layer n should display in the overlayed output video. Set to 1 to consume the input video from layer n without displaying it. The IP only considers the value of this bit if bit 0 is set to 1.
Layer n soft start bit 2 Set to 0 if the internal mixer logic should wait for valid data on layer n before starting the current frame. Set to 1 if the internal mixer logic is free to disregard layer n if no video data is pending at the start of each output field. When the IP accepts one field from layer n since the last update to this register, it ignores the soft start bit. The internal mixer logic always waits for data to be available on layer n before proceeding with each output field. The IP only considers this value if bit 0 is set to 1.
unused 31:3 Unused.
Table 410.  LAYERn_BLEND_MODE
Name Bits Description
Layer n blend mode 1:0 Blend mode for layer n. Write 0 to not display layer n, 1 for overlay without blending, 2 for blending using static alpha from register map and 3 for per-pixel blending using in-band alpha values. Blend modes must be enabled in the hardware parameter set to be selectable at runtime.
unused 31:2 Unused.
Table 411.  LAYERn_STATIC_ALPH
Name Bits Description
Layer n static alpha Bits per color-1:0 Blend mode for layer n. Write 0 to not display layer n, 1 for overlay without blending, 2 for blending using static alpha from register map and 3 for per-pixel blending using in-band alpha values.
unused 31:bits per color Unused.
Table 412.   LAYERn_H_OFFSET
Name Bits Description
Layer n horizontal offset 15:0 Horizontal offset for layer n
unused 31:16 Unused.
Table 413.  LAYERn_V_OFFSET
Name Bits Description
Layer n vertical offset 15:0 Vertical offset for layer n.
unused 31:16 Unused.
Table 414.  LAYERn_WIDTH
Name Bits Description
Layer n field width 15:0 Field width for layer n. Only in lite mode
unused 31:16 Unused.
Table 415.  LAYERn_HEIGHT
Name Bits Description
Layer n field width 15:0 Field height for layer n. Only in lite mode.
unused 31:16 Unused.