Video and Vision Processing Suite Intel® FPGA IP User Guide

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

43.4. Test Pattern Generator IP Registers

Each register is either read-only (RO) or read-write (RW).
Table 790.  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.

129
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 791.  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 792.  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 793.   LITE_MODE
Name Bits Description
Lite mode parameterization bit 0 Returns 1 if lite mode is on.
Unused 31:1 Unused.
Table 794.  DEBUG_ENABLED
Name Bits Description
Debug features parameterization bit 0 Returns 1 if debug features is on.
Unused 31:1 Unused.
Table 795.   NUM_PATTERNS
Name Bits Description
Number of enabled test pattern configurations 31:0 Returns the number of enabled test pattern configurations.
Table 796.  BPS
Name Bits Description
Bits per color 31:0 Returns the number of bits per color plane.
Table 797.  PIP
Name Bits Description
Pixels in parallel 31:0 Returns the number of pixels transmitter per clock cycle.
Table 798.  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 799.  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 800.  IMG_INFO_WIDTH
Name Bits Description
Width bits 15:0 Width (in pixels) of outgoing fields.
unused 31:16 Unused.
Table 801.  IMG_INFO_HEIGHT
Name Bits Description
Height bits 15:0 Height (in pixels) of outgoing fields.
unused 31:16 Unused.
Table 802.   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 803.  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 804.  FIELD_COUNT
Name Bits Description
Field index 15:0 Current field index value
unused 31:16 Unused.
Table 805.  CONTROL
Name Bits Description
Go bit 0 1 = go, 0 = stop.
unused 31:1 Unused.
Table 806.  COMMIT
Name Bits Description
unused 31:0 Unused.
Table 807.  PATTERN_SELECT
Name Bits Description
Pattern select 2:0 Pattern configuration index.
unused 31:3 Unused.
Table 808.  CX
Name Bits Description
Color value BPS-1:0 Constant color value for color plane X.
unused 31:BPS Unused.
Table 809.  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 810.   ZONE_X_ORIGIN
Name Bits Description
Origin X 15:0 Sets x part of center coordinates of zone plate.
Unused 31:16 Unused
Table 811.   ZONE_Y_ORIGIN
Name Bits Description
Origin Y 15:0 Sets y part of center coordinates of zone plate.
Unused 31:16 Unused
Table 812.   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 813.  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 814.  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 815.  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 816.  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 817.  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 818.  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 819.  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 820.  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 821.  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 822.  CLOCK_SCALE_FACTOR
Name Bits Description
Scale factor 15:0 Sets the scale factor of the digital clock pattern.
Unused 31:16 Unused
Table 823.  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
129

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