Video and Vision Processing Suite Intel® FPGA IP User Guide

ID 683329
Date 5/08/2024
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. 1D LUT Intel® FPGA IP 9. 3D LUT Intel® FPGA IP 10. AXI-Stream Broadcaster Intel® FPGA IP 11. Bits per Color Sample Adapter Intel FPGA IP 12. Black Level Correction Intel® FPGA IP 13. Black Level Statistics Intel® FPGA IP 14. Chroma Key Intel® FPGA IP 15. Chroma Resampler Intel® FPGA IP 16. Clipper Intel® FPGA IP 17. Clocked Video Input Intel® FPGA IP 18. Clocked Video to Full-Raster Converter Intel® FPGA IP 19. Clocked Video Output Intel® FPGA IP 20. Color Plane Manager Intel® FPGA IP 21. Color Space Converter Intel® FPGA IP 22. Defective Pixel Correction Intel® FPGA IP 23. Deinterlacer Intel® FPGA IP 24. Demosaic Intel® FPGA IP 25. FIR Filter Intel® FPGA IP 26. Frame Cleaner Intel® FPGA IP 27. Full-Raster to Clocked Video Converter Intel® FPGA IP 28. Full-Raster to Streaming Converter Intel® FPGA IP 29. Genlock Controller Intel® FPGA IP 30. Generic Crosspoint Intel® FPGA IP 31. Genlock Signal Router Intel® FPGA IP 32. Guard Bands Intel® FPGA IP 33. Histogram Statistics Intel® FPGA IP 34. Interlacer Intel® FPGA IP 35. Mixer Intel® FPGA IP 36. Pixels in Parallel Converter Intel® FPGA IP 37. Scaler Intel® FPGA IP 38. Stream Cleaner Intel® FPGA IP 39. Switch Intel® FPGA IP 40. Tone Mapping Operator Intel® FPGA IP 41. Test Pattern Generator Intel® FPGA IP 42. Unsharp Mask Intel® FPGA IP 43. Video and Vision Monitor Intel FPGA IP 44. Video Frame Buffer Intel® FPGA IP 45. Video Frame Reader Intel FPGA IP 46. Video Frame Writer Intel FPGA IP 47. Video Streaming FIFO Intel® FPGA IP 48. Video Timing Generator Intel® FPGA IP 49. Vignette Correction Intel® FPGA IP 50. Warp Intel® FPGA IP 51. White Balance Correction Intel® FPGA IP 52. White Balance Statistics Intel® FPGA IP 53. Design Security 54. Document Revision History for Video and Vision Processing Suite User Guide

41.4. Test Pattern Generator IP Registers

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

Read this register to retrieve the test pattern generator product ID.

This register always returns 0x6AF7_0236.

0x0004 VERSION RO

Read this register for the IP version informationP.

0x0008 LITE_MODE RO Read this register to determine if lite mode is on. This register returns 0 if lite mode is off and 1 if Lite mode is on.
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 NUM_PATTERNS RO Read this register to determine the number of test pattern configurations.
0x0014 Reserved RO Reserved for future use.
0x0018 BPS RO Read this register for the number of bits per color plane.
0x001C PIP RO Read this register for the number of pixels transmitted per clock cycle at the streaming output
0x0020 PATTERN_0_TYPE RO Read this register for the pattern type of test pattern configuration 0. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x0024 PATTERN_0_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 0. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0028 PATTERN_1_TYPE RO Read this register for the pattern type of test pattern configuration 1. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x002C PATTERN_1_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 1. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0030 PATTERN_2_TYPE RO Read this register for the pattern type of test pattern configuration 2. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x0034 PATTERN_2_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 2. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0038 PATTERN_3_TYPE RO Read this register for the pattern type of test pattern configuration 3. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x003C PATTERN_3_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 3. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0040 PATTERN_4_TYPE RO Read this register for the pattern type of test pattern configuration 4. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x0044 PATTERN_4_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 4. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0048 PATTERN_5_TYPE RO Read this register for the pattern type of test pattern configuration 5. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x004C PATTERN_5_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 5. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0050 PATTERN_6_TYPE RO Read this register for the pattern type of test pattern configuration 6. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x0054 PATTERN_6_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 6. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0058 PATTERN_7_TYPE RO Read this register for the pattern type of test pattern configuration 7. This register returns 0 for the bars pattern, 1 for constant color and 2 for SDI pathological.
0x005C PATTERN_7_COLOR RO Read this register for the color space and chroma sampling for test pattern configuration 7. This register returns 0 for RGB, 1 for YCbCr 4:4:4, 2 for YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
0x0060 to 0x011F - - Unused.

Control and debug registers

For more information, refer to Control Packets.

111
0x0120 IMG_INFO_WIDTH RW Use this register to set the width of outgoing video fields. If the output chroma sampling is 4:2:2 or 4:2:0, the width should be a multiple of 2.
0x0124 IMG_INFO_HEIGHT RW Use this register to set the height for outgoing video fields. If the output chroma sampling is 4:2:0, the height should be a multiple of 2.
0x0128 IMG_INFO_INTERLACE RW Use this register to set the interlace output behavior for the outgoing fields. The value you write to this register corresponds to the value that is output in the interlace identifier nibble of the outgoing image info packets (full variants only). Values 0-7 produce progressive output, values 8-15 produce interlaced output. The interlaced sequence is restarted at F0 or F1 a change to the test pattern settings (address 0x0120 to 0x0128, and 0x0150). Values 8-11 in this register restart the sequence with F0, values 12-15 restart with F1
0x012C to 0x013C - - Unused
0x0140 STATUS RO

Bit 0: Status bit.

1 = test pattern generator is processing a video field, 0 otherwise.

Lite mode off:

Bit 1: Pending register updates bit.

Any writes to the settings register (0x0148 - 0x0154) cause the IP to raise the pending register updates bit, to indicate outstanding changes to the clipping settings.

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

0x0144 FIELD_COUNT RO Read this register to determine the output field index. The field index is reset to 0 following a change to the test pattern settings (address 0x0120 to 0x0128, and 0x0150). The field index increments at the end of each output field.
0x0148 CONTROL RW

Bit 0:Go bit.

Write 0 to this register to stop the test pattern generator at the end of the current frame. Write 1 to this register to start/restart output generation. This register initializes to 0 at start-up and no output fields are generated until after a write of 1 to this register.

0x014C COMMIT RW Only if Lite mode is off. The IP holds any changes to the test pattern settings via the register map pending until you issue a write to this register. The value you write is unimportant.
0x0150 PATTERN_SELECT RW Write to this register to select the pattern configuration used to generate the output. The value you write is the test pattern configuration index.
0x0154 Reserved RW Reserved.
0x0158 Reserved RW Reserved.
0x015C C0 RW Write to this register to set the value used for color plane 0 (B or Cb) by the constant color test pattern. The value in this register is ignored if no test pattern configurations use the constant color pattern.
0x0160 C1 RW Write to this register to set the value used for color plane 1 (G or Y) by the constant color test pattern. The value in this register is ignored if no test pattern configurations use the constant color pattern.
0x0164 C2 RW Write to this register to set the value used for color plane 2 (R or Cr) by the constant color test pattern. The value in this register is ignored if no test pattern configurations use the constant color pattern.
0x0168 BARS_SELECT RW Write to this register to set the variant of the bars pattern to use. Write 0 for color bars, 1 for greyscale bars, 2 for black and white bars and 3 for mixed bars. The value in this register is unused if no test pattern configurations use the bars pattern.
0x016C ZONE_X_ORIGIN RW Write to this register to set the X coordinate of the zone plate center. For example, write 960 to horizontally set the center of the zone plate to the middle of a 1920x1080 display.
0x0170 ZONE_Y_ORIGIN RW Write to this register to set the Y coordinate of the zone plate center. For example, write 540 to vertically set the center of the zone plate to the middle of a 1920x1080 display.
0x0174 ZONE_COARSE_FACTOR RW

This value is a rough scale up or down of the zone plate. A bigger value gives more zoom in of the zone plate.

Intel suggests a value of 14 for 1920x1080, or 20 for a 4k display.

0x0178 ZONE_FINE_FACTOR RW This value is a final fine tune scaling factor. It is a 16-bit unsigned fixed point number, with 8 bits fractional part. The IP implements this value as a constant k in f(kx) and applies it after ZONE_POWER_FACTOR), a bigger value, gives more zoom out of the zone plate.
0x017C CLOCK_B_BACKGROUND RW Write to this register to set the value for color plane 0 (B or Cb) by the digital clock pattern.
0x0180 CLOCK_G_BACKGROUND RW Write to this register to set the value for color plane 1 (G or Y) by the digital clock pattern.
0x0184 CLOCK_R_BACKGROUND RW Write to this register to set the value for color plane 2 (R or Cr) by the digital clock pattern.
0x0188 CLOCK_B_FONT RW Write to this register to set the value for color plane 0 (B or Cb) by the digital clock pattern.
0x018C CLOCK_G_FONT RW Write to this register to set the value for color plane 1 (G or Y) by the digital clock pattern.
0x0190 CLOCK_R_FONT RW Write to this register to set the value for color plane 2 (R or Cr) by the clock test pattern as the font color.
0X0194 CLOCK_LOCATION_X RW Write to this register to set the value for the x-coordinate of the top-left pixel of digital clock pattern.
0X0198 CLOCK_LOCATION_Y RW Write to this register to set the value for the y-coordinate of the top-left pixel of digital clock pattern.
0X019C CLOCK_SCALE_FACTOR RW Write to this register to set the value for scale factor of the font by the digital clock test pattern.
0X01A0 CLOCK_FPS RW Write to this register to set frames per second - 1 for the clock counter by digital clock pattern. This valjue does not affect the output video refresh rate.

Register Bit Descriptions

Table 732.  VID_PID
Name Bits Description
Test pattern generator version ID and product ID 31:0 This register always returns 0x6AF7_0236.
  • 15:0 is the product ID and always returns 0x0236
  • 31:16 is the vendor ID and always returns 0x6AF7
Table 733.  VERSION
Name Bits Description
Register map version 7:0 Register map version.
IP patch revision 15:8 -
IP update revision 23:16 Updated when the IP version changes.
IP major revision 31:24 Updated when the IP version changes.
Table 734.   LITE_MODE
Name Bits Description
Lite mode parameterization bit 0 Returns 1 if lite mode is on.
Unused 31:1 Unused.
Table 735.  DEBUG_ENABLED
Name Bits Description
Debug features parameterization bit 0 Returns 1 if debug features is on.
Unused 31:1 Unused.
Table 736.   NUM_PATTERNS
Name Bits Description
Number of enabled test pattern configurations 31:0 Returns the number of enabled test pattern configurations.
Table 737.  BPS
Name Bits Description
Bits per color 31:0 Returns the number of bits per color plane.
Table 738.  PIP
Name Bits Description
Pixels in parallel 31:0 Returns the number of pixels transmitter per clock cycle.
Table 739.  PATTERN_X_TYPE
Name Bits Description
Pattern type for configuration index X 31:0 Returns 0 for bars, 1 for constant color, 2 for SDI pathological, 3 for zone plate and 4 for digital clock.
Table 740.  PATTERN_X_COLOR
Name Bits Description
Color space for configuration index X 31:0 Returns 0 for RGB, 1 for YCbCr 4:4:4, and 2 YCbCr 4:2:2, 3 for YCbCr 4:2:0 and 4 for monochrome.
Table 741.  IMG_INFO_WIDTH
Name Bits Description
Width bits 15:0 Width (in pixels) of outgoing fields.
unused 31:16 Unused.
Table 742.  IMG_INFO_HEIGHT
Name Bits Description
Height bits 15:0 Height (in pixels) of outgoing fields.
unused 31:16 Unused.
Table 743.   IMG_INFO_INTERLACE
Name Bits Description
Interlace nibble 3:0 Standard Intel FPGA Streaming Video Image Info packet interlace nibble.
unused 31:4 Unused.
Table 744.  STATUS
Name Bits Description
Status bit 0 1 = test pattern generator is processing a video field, 0 otherwise.
Pending register updates bit 1 1 = test pattern generator has pending updates, 0 otherwise.
unused 31:2 Unused.
Table 745.  FIELD_COUNT
Name Bits Description
Field index 15:0 Current field index value
unused 31:16 Unused.
Table 746.  CONTROL
Name Bits Description
Go bit 0 1 = go, 0 = stop.
unused 31:1 Unused.
Table 747.  COMMIT
Name Bits Description
unused 31:0 Unused.
Table 748.  PATTERN_SELECT
Name Bits Description
Pattern select 2:0 Pattern configuration index.
unused 31:3 Unused.
Table 749.  CX
Name Bits Description
Color value BPS-1:0 Constant color value for color plane X.
unused 31:BPS Unused.
Table 750.  BARS_SELECT
Name Bits Description
Bar mode select 1:0 0 = color bars, 1 = greyscale bars, 2 = black and white bars, 3 = mixed bars.
unused 31:2 Unused.
Table 751.   ZONE_X_ORIGIN
Name Bits Description
Origin X 15:0 Sets x part of center coordinates of zone plate.
Unused 31:16 Unused
Table 752.   ZONE_Y_ORIGIN
Name Bits Description
Origin Y 15:0 Sets y part of center coordinates of zone plate.
Unused 31:16 Unused
Table 753.   ZONE_POWER_FACTOR
Name Bits Description
Coarse scaling coefficient 4:0 Arbitrary sizing coefficient. Increase this value to increase the zone plate size coarsely (more zoom).
Unused 31:5 Unused
Table 754.  ZONE_FINE_FACTOR
Name Bits Description
Fine tune scaling coefficient 15:0 Fixed point operand, with 8 bits fractional part. Increase factor to decrease zone plate size smoothly.
Unused 31:16 Unused
Table 755.  CLOCK_B_BACKGROUND
Name Bits Description
Blue (Cb) background color 15:0 Sets the B color plane of the background color if color space is RGB, else is Cb in YCbCr.
Unused 31:16 Unused

Table 756.  CLOCK_G_BACKGROUND
Name Bits Description
Green (G) background color 15:0 Sets the G color plane of the background color if color space is RGB, else is Y in YCbCr.
Unused 31:16 Unused
Table 757.  CLOCK_R_BACKGROUND
Name Bits Description
Red (Cr) background color 15:0 Sets the R color plane of the background color if color space is RGB, else is Cr in YCbCr.
Unused 31:16 Unused
Table 758.  CLOCK_B_FONT
Name Bits Description
Blue (Cb) font color 15:0 Sets the B color plane of the font color if color space is RGB, else is Cb in YCbCr.
Unused 31:16 Unused
Table 759.  CLOCK_G_FONT
Name Bits Description
Blue (Cb) font color 15:0 Sets the G color plane of the font color if color space is RGB, else is Cb in YCbCr.
Unused 31:16 Unused
Table 760.  CLOCK_R_FONT
Name Bits Description
Blue (Cb) font color 15:0 Sets the R color plane of the font color if color space is RGB, else is Cb in YCbCr.
Unused 31:16 Unused
Table 761.  CLOCK_LOCATION_X
Name Bits Description
Location x-coordinate 15:0 Sets the the x-coordinate of the top-left pixel of the clock display.
Unused 31:16 Unused
Table 762.  CLOCK_LOCATION_Y
Name Bits Description
Location y-coordinate 15:0 Sets the the y-coordinate of the top-left pixel of the clock display..
Unused 31:16 Unused
Table 763.  CLOCK_SCALE_FACTOR
Name Bits Description
Scale factor 15:0 Sets the scale factor of the digital clock pattern.
Unused 31:16 Unused
Table 764.  CLOCK_FPS
Name Bits Description
Frames per second 5:0 Sets frames per second – 1, to determine after how many frames a second occur in the digital clock patterns. This value does not affect the output video refresh rate
Unused 31:6 Unused
111

When you turn on lite mode, registers are RW only if you turn on Debug features, otherwise they are WO.