AXI4-Stream Video Input Stream Interface - 1.2 English

HDMI 2.1 Transmitter Subsystem v1.2 Product Guide (PG350)

Document ID
Release Date
1.2 English

The AXI4-Stream video interface supports four or eight pixels per clock with 8 bits, 10 bits, 12 bits, and 16 bits per component for RGB, YCbCr444, and YCbCr420 color spaces. The color depth in YCbCr422 color space is always 12-bits per pixel.

When the parameter, Max Bits Per Component, is set to 16, the following figure shows the data format for four pixels per clock to be fully compliant with the AXI4-Stream video protocol.

Figure 1. Four Pixels Data Format (Max Bits Per Component = 16)

If the actual bits per component is greater than Max Bits Per Component set in the Vivado IDE, video formats with actual bits per component larger than Max Bits Per Component should be truncated to the Max Bits Per Component. The remaining least significant bits are discarded. If the actual bits per component is smaller than Max Bits Per Component set in the Vivado IDE, all bits are transported with the MSB aligned, and the remaining LSB bits are padded with 0. This applies to all Max Bits Per Component settings.

Table 1. Max Bits Per Component Support
Max Bits Per Component Actual Bits Per Component Bits Transported by Hardware
16 8 [7:0]
10 [9:0]
12 [11:0]
16 [15:0]
12 8 [7:0]
10 [9:0]
12 [11:0]
16 [15:4]
10 8 [7:0]
10 [9:0]
12 [11:2]
16 [15:6]
8 8 [7:0]
10 [9:2]
12 [11:4]
16 [15:8]

The video interface can also transport four and eight pixels in the YCbCr 420 color space. The following figure shows the AXI4-Stream data format for YCbCr 420.

Figure 2. YCbCr 4:2:0 AXI4-Stream Video Data (Four Pixels per Clock)

The AXI4-Stream YCbCr 420 data format is not compliant with the Native HDMI Video protocol. Therefore, a remapping feature is added to the HDMI 2.1 TX Subsystem to convert AXI4-Stream into HDMI native video. This feature will be enabled by default from the HDMI 2.1 TX Subsystem GUI when the AXI4-Stream video interface is selected. To illustrate how the data remapping feature works for YCbCr 4:2:0 video from AXI4-Stream into native video, the previous figure is extended and represented in the following figure to show native video data associated with the clock and control signals.

Figure 3. YCbCr 4:2:0 Native HDMI Video Interface (Four Pixels per Clock)
Figure 4. YCbCr420 Color Space Four Pixels Data Format (Native)

Similarly, for YCbCr 4:2:0 deep color (10, 12, or 16 bits), the data representation is the same as shown in the previous two figures. The only difference is that each component carries more bits (10, 12, and 16).

When transporting using AXI4-Stream, the data representation must be compliant with the protocol defined in the AXI4-Stream Video IP and System Design Guide (UG934). With the remapping feature, the same AXI4-Stream video data is converted into Native Video formats, shown in the above figure. As stated in AXI4-Stream Video IP and System Design Guide (UG934), the 4:2:0 format adds vertical sub-sampling to the 4:2:2 format, which is implemented in video over AXI4-Stream by omitting the chroma data on every other line.

Note: For RGB/YCbCr444/YCbCr422 formats, video data is directly mapped from AXI4-Stream to the native video interface without any line buffer. Therefore, the four Pixels Data Format graphics shown previously, represent the data interface for both AXI4-Stream and native video. The control signals are omitted in the figure.

For more information on the video AXI4-Stream interface and video data format, see the AXI4-Stream Video IP and System Design Guide (UG934). The remapping feature, which is to convert between native video data format and AXI4-Stream format, is also described in the AXI4-Stream Video IP and System Design Guide (UG934).