MIPI CSI-2 RX Subsystem v4.0
9
PG232 July 02, 2019
Chapter 1:
Overview
AXI Crossbar
The AXI Crossbar core is used in the subsystem to route AXI4-Lite requests to
corresponding sub-cores based on the address. See the
AXI Interconnect LogiCORE IP
Product Guide
for details.
Video Format Bridge
The Video Format Bridge core uses the user-selected VC and Data Type information to filter
only the required AXI4-Stream data beats. This AXI4-Stream data is further processed based
on the Data Type information and the output is based on the requested number of pixels
per beat. The output interface adheres to the protocol defined in the
AXI4-Stream Video IP
and System Design Guide
(UG934)
.
The Video Format Bridge core processes the data type selected in the Vivado Integrated
Design Environment (IDE) and filters out all other data types except for RAW8 and User
Defined Byte-based Data types (0x30 to 0x37) received from the CSI-2 RX Controller.
Irrespective of the Vivado IDE selection, RAW8 and User Defined Byte-based Data types are
always processed by the Video Format Bridge core. This allows multiple data-type support,
one main data-type from the Vivado IDE for pixel data and a User Defined Byte-based Data
type for metadata. When multiple data types are transferred (for example, RAW10 and User
Defined Byte-based Data) the actual placement pixel data bits are defined in the
AXI4-Stream Video IP and System Design Guide
(UG934)
.
For unaligned transfers there is no way to specify the partial final output (TKEEP) for the
output interface. Ensure that you take this into consideration and discard the unintended
bytes in the last beats when there are un-aligned transfers.
video_out Port Width
The width of the data port in the
video_out
interface depends on the data type selected
and number of pixels per beat selected. The width is a maximum of the RAW8 and the data
type selected in the Vivado IDE multiplied by number of pixels per beat. This is then
rounded to the nearest byte boundary as per the AXI4-Stream protocol.
Example 1: RAW10 and Two Pixels per Clock Selected in the Vivado IDE
• Single pixel width of RAW10 =10
• Single pixel width of RAW8 = 8
For the selected two pixels per clock, the effective pixels widths are 20 and 16 for RAW10
and RAW8 respectively. The
video_out
port width is configured as the maximum of the
individual pixel widths, and rounded to the nearest byte boundary. This results in a
video_out
port width of 24.