A Video Interface Protocol for FPGA-Based Video Applications

The concepts behind the Avalon Streaming (Avalon-ST) Video Interface protocol, an open interface from Altera.

By Suhel Dhanani, Senior Manager, DSP, Altera

Page 2 of 3
Video/Imaging DesignWire
(11/4/2010 1:30:07 AM)

Avalon Streaming Video

The Avalon-ST Video protocol is a packet-oriented function to send video and control data. The first packet contains a frame or a field of uncompressed video data. The second packet contains control information that applies to the subsequent video packet/frame. Having control packets allows the construction of image processing data paths that automatically configure to changes in the format of the video being processed. This minimizes the external control logic required to configure a video system.

Video data packets transmit video information between the IP functions. A video data packet contains the color plane values of the pixels for an entire progressive frame or an entire interlaced field. The video data is sent per pixel in a raster scan order as shown in Figure 2.

View full size
Figure 2. Format of the video data

There are two static parameters that specify the Avalon-ST Video Interface:

  • Bits per pixel per color plane: This is the maximum number of bits used to represent each color plane value within each pixel. For example RGB data of eight bits per sample (24 bits per pixel) would use eight bits per pixel per color plane.
  • Color Pattern: This indicates the organization of the color plane samples. As shown in Figure 2, a RGB color pattern can be either all three planes in parallel or all three planes in sequence. When the three planes are in parallel – the most significant bit (MSB) starts with the R color plane and the least significant bit (LSB) ends with the B color plane. When the color plane is in sequence, the first bit transmitted belongs to the B color plane and the last bit belongs to the R color plane.

The color pattern cannot change within a video data packet. Sometimes a color pattern can represent more than one pixel. This is the case when consecutive pixels contain samples from different color planes, such as the case for 4:2:2 YCbCr sampling scheme.

NEXT: Control Data Packet – Definitions

Page 2: next page

Pages: 1 2 3