6.10.1 VIP
The VIP module provides video capture functions for the device. VIP incorporates a multi-channel raw video parser, various video processing blocks, and a flexible Video Port Direct Memory Access (VPDMA) engine to store incoming video in various formats. The device uses a single instantiation of the VIP module giving the ability of capturing up to two video streams.
A VIP module includes the following main features:
- Two independently configurable external video input capture slices (Slice 0 and Slice 1) each of which has two video input ports, Port A and Port B, where Port A can be configured as a 24/16/8-bit port, and Port B is a fixed 8-bit port.
- Each video Port A can be operated as a port with clock independent input channels (with interleaved or separated Y/C data input). Embedded sync and external sync modes are supported for all input configurations.
- Support for a single external asynchronous pixel clock, up to 165MHz per port.
- Pixel Clock Input Domain Port A supports up to one 24-bit input data bus, including BT.1120 style embedded sync for 16-bit and 24-bit data.
- Embedded Sync data interface mode supports single or multiplexed sources
- Discrete Sync data interface mode supports only single source input
- 24-bit data input plus discrete syncs can be configured to include:
- 8-bit YUV422 (Y and U/V time interleaved)
- 16-bit YUV422 (CbY and CrY time interleaved)
- 24-bit YUV444
- 16-bit RGB565
- 24-bit RGB888
- 12/16-bit RAW Capture
- 24-bit RAW capture
- Discrete sync modes include:
- VSYNC + HSYNC (FID determined by FID signal pin or HSYNC/VSYNC skew)
- VSYNC + ACTVID + FID
- VBLANK + ACTVID (ACTVID toggles in VBLANK) + FID
- VBLANK + ACTVID (no ACTVID toggles in VBLANK) + FID
- Multichannel parser (embedded syncs only)
- Embedded syncs only
- Pixel (2x or 4x) or Line multiplexed modes supported
- Performs demultiplexing and basic error checking
- Supports maximum of 9 channels in Line Mux (8 normal + 1 split line)
- Ancillary data capture support
- For 16-bit or 24-bit input, ancillary data may be extracted from any single channel
- For 8-bit time interleaved input, ancillary data can be chosen from the Luma channel, the Chroma channel, or both channels
- Horizontal blanking interval data capture only supported when using discrete syncs (VSYNC + HSYNC or VSYNC + HBLANK)
- Ancillary data extraction supported on multichannel capture as well as single source streams
- Format conversion and scaling
- Programmable color space conversion
- YUV422 to YUV444 conversion
- YUV444 to YUV422 conversion
- YUV422 to YUV420 conversion
- YUV444 Source: YUV444 to YUV444, YUV444 to RGB888, YUV444 to YUV422, YUV444 to YUV420
- RGB888 Source: RGB888 to RGB888, RGB888 to YUV444, RGB888 to YUV422, RGB888 to YUV420
- YUV422 Source: YUV422 to YUV422, YUV422 to YUV420, YUV422 to YUV444, YUV422 to RGB888
- Supports RAW to RAW (no processing)
- Scaling and format conversions do not work for multiplexed input
- Supports up to 2047 pixels wide input - when scaling is engaged
- Supports up to 3840 pixels wide input - when only chroma up/down sampling is engaged, without scaling
- Supports up to 4095 pixels wide input - without scaling and chroma up/down sampling
- The maximum supported input resolution is further limited by:
- Pixel clock and feature-dependent constraints
- For RGB24-bit format (RAW data), the maximum frame width is limited to 2730 pixels
For more information, see chapter Video Input Port of the Device TRM