Video and Vision Processing Suite Intel® FPGA IP User Guide

ID 683329
Date 9/30/2024
Public
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. Text Box Intel® FPGA IP 43. Tone Mapping Operator Intel® FPGA IP 44. Test Pattern Generator Intel® FPGA IP 45. Unsharp Mask Intel® FPGA IP 46. Video and Vision Monitor Intel FPGA IP 47. Video Frame Buffer Intel® FPGA IP 48. Video Frame Reader Intel FPGA IP 49. Video Frame Writer Intel FPGA IP 50. Video Streaming FIFO Intel® FPGA IP 51. Video Timing Generator Intel® FPGA IP 52. Vignette Correction Intel® FPGA IP 53. Warp Intel® FPGA IP 54. White Balance Correction Intel® FPGA IP 55. White Balance Statistics Intel® FPGA IP 56. Design Security 57. Document Revision History for Video and Vision Processing Suite User Guide

41.4. Switch IP Registers

Each register is either read-only (RO) or read-write (RW).

Table 757.  Switch IP RegistersIn the software API the register names appear with a prefix of INTEL_VVP,INTEL_VVP_CORE, or INTEL_VVP_VIDEO SWITCH as appropriate and with an optional REG suffix.
Address Register Access Description
Parameterization registers
0x0000 PROD_ID RO Read this register for the Switch IP product ID. This register always returns 0x6AF7_0235
0x0004 VERSION RO Read this register for the IP version information.
0x0008 INTF_TYPE RO

Read this register to determine the interface type. This register returns:

  • 0 when you select Full interfaces.
  • 1 when you select Lite interfaces.
  • 2 when you select full raster interfaces.
0x000C DEBUG_ENABLED RO Read this register to determine if Debug features are on.
0x0010 UNINTERRUPTED_INPUTS RO Read this register to determine if All inputs are uninterrupted is on.
0x0014 AUTO_CONSUME RO Read this register to determine if Autoconsume is on.
0x0018 NUM_INPUTS RO Read this register to determine the number of configured inputs.
0x001C NUM_OUTPUTS RO Read this register to determine the number of configured outputs.
0x0020 USE_TREADIES RO Read this register to determine if ‘tready’ signal present on switch streaming interfaces is on.
0x0024 CRASH SWITCH RO Read this register to determine if Crash switching is on.
0x0028 to 0x011F RESERVED - Unused.

Control and debug registers

For more details of these registers, refer to Control Packets

0x0120 to 0x13F RESERVED - Unused.
0x0140 STATUS RO

Bit 0: Goes low when a switch starts and returns high when switching completes

Bit 1: Pending run-time control bit. Goes high when a write occurs to one of the input or output control registers. Goes low after a write to the COMMIT register and the IP switch starts the switch.

0x0144 COMMIT RW Write 1 to bit 0 to commit the control register settings and request a new switch. The new switch starts immediately if no switch is currently in progress, otherwise it starts when the current switch completes.
0x0148 INPUT_CONTROL_0 RW 128

Each input has a control register. The IP uses the two input LSBs for control, decoded as follows:

  • 00: disable. Drive TREADY low and do not propagate data.
  • 01: enable. If one of the output registers is configured to receive or consume this input, data propagates, otherwise TREADY is low.
  • 10: disable. Drive TREADY low and do not propagate data.
  • 11: consume. Drive TREADY high but do not propagate data.
0x014C INPUT_CONTROL_1 RW128
0x0150 INPUT_CONTROL_2 RW128
0x0154 INPUT_CONTROL_3 RW128
0x0158 INPUT_CONTROL_4 RW128
0x015C INPUT_CONTROL_5 RW128
0x0160 INPUT_CONTROL_6 RW128
0x0164 INPUT_CONTROL_7 RW128
0x0168 to 0x187 RESERVED - Reserved.
0x0188 OUTPUT_CONTROL_0 RW128

Set bit[8] to enable an output.

Set bits [7:0] to give the integer value of the input to drive the output. An out-of-range input value has the effect of disabling the output.

Inputs and outputs start at zero.

For example, a write of 0x104 to an output control register enables the output and selects input number 4. If the two LSBs in INPUT_CONTROL_4 are 01, the IP enables the connection and input number 4 drives the output.

0x018C OUTPUT_CONTROL_1 RW128
0x0190 OUTPUT_CONTROL_2 RW128
0x0194 OUTPUT_CONTROL_3 RW128
0x0198 OUTPUT_CONTROL_4 RW128
0x019C OUTPUT_CONTROL_5 RW128
0x01A0 OUTPUT_CONTROL_6 RW128
0x01A4 OUTPUT_CONTROL_7 RW128
0x01A8 to 0x01C4 RESERVED - Reserved.

Register Bit Descriptions

Table 758.   PROD_ID
Name Bits Description
Switch product ID 31:0 This register always returns 0x6AF7_0235
Table 759.  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 760.   INTF_TYPE
Name Bits Description
Interface type parameterization bits 1:0

A 2-bit interface type register:

  • 00 when you select Full interfaces.
  • 01 when you select Lite interfaces.
  • 10 when you select Full raster interfaces.
  • 11 is illegal and unused.
Unused 31:2 Unused.
Table 761.  DEBUG_ENABLED
Name Bits Description
Debug features 31:0 Unused.
Table 762.   UNINTERRUPTED_INPUTS
Name Bits Description
Uninterrupted inputs parameterization bit 0 Returns 1 if you turn on All inputs are uninterrupted.
Unused 31:1 Unused.
Table 763.   AUTO_CONSUME
Name Bits Description
Autoconsume inputs parameterization bit 0 Returns 1 if you turn on Autoconsume inputs.
Unused 31:1 Unused.
Table 764.   NUM_INPUTS
Name Bits Description
Number of inputs 31:0 Returns the number of inputs configured.
Table 765.   NUM_OUTPUTS
Name Bits Description
Number of outputs 31:0 Returns the number of outputs configured
Table 766.  USE_TREADIES
Name Bits Description
use_ treadies parameterization bit 0 Returns 1 if you turn on ‘tready’ signal present on switch streaming interfaces.
Unused 31:1 Unused.
Table 767.  CRASH_SWITCH
Name Bits Description
Crash switching parameterization bit 0 Returns 1 if you turn on Crash switching.
Unused 31:1 Unused.
Table 768.  STATUS
Name Bits Description
Status bit 0

Goes low when a switch starts and returns high when switching completes

Pending register updates bit 1

Goes high when a write occurs to one of the input or output control registers. Goes low after a write to the COMMIT register and the switch starts.

Unused 31:2 Unused.
Table 769.  COMMIT
Name Bits Description
Commit register 0 Write 1 to commit the control register settings and request a new switch. The new switch starts immediately if no switch is currently in progress, otherwise it starts when the current switch completes.
Unused 31:1 Unused.
Table 770.   INPUT N CONTROL (0 <= N <= 7)
Name Bits Description
Enable bit 0

Enable this input

Consume bit 1 Consume this input. You must enable the input for the consume bit to take effect.
Unused 31:2 Unused.
Table 771.   OUTPUT N CONTROL (0 <= N <= 7)
Name Bits Description
Source 7:0

Integer value of the input source to drive this output. An out-of-range input source value turns off the output.

Enable bit 8

Turn on this output

Unused 31:9 Unused.
128 Read only if you turn on Crash switching.