SPRUHZ7K August 2015 – April 2024 AM5706 , AM5708 , AM5716 , AM5718 , AM5718-HIREL
The CSI2 serial interface is a unidirectional differential serial interface with data/clock for the physical layer.
The maximum CSI2 data transfer capacity is 1500 Mbps per data lane. The speed of the link is reconfigurable by SW only when the CSI2 PHY is in "stop state" or in ULPM (ulra-low power mode).
Data-clock signaling consists of two to five differential signal pairs: from one to four data lanes and one clock lane. The minimum configuration is one data pair and one clock pair.
Figure 8-10 is the CSI2 Low Level Protocol engine block diagram (it assumes there are four CSI2 image sensor data lanes). The CSI2 receiver receives the byte data coming from a CSI2 D-PHY receiver (Figure 8-10 shows CSI2_PHY1 with up to four data pairs), converts the data to byte stream, detects and corrects errors, extracts the virtual channel ID, detects and extracts the synchronization codes, reformats the data, and forwards it to the the CAL Data Stream Merger.
The following configuration is supported on the AM571x family of devices:
The following configuration is supported on the AM570x family of devices:
See Table 8-1, CAMSS I/O Description, and a device-specific Data Manual, for more details.
Each physical lane can be a data or clock lane with a restriction to the fourth lane, which can only be data (see Section 8.4.5.1, CSI2 PHY Overview). The clock/data lane must be configured before transmission to indicate the byte order, while merging the received bytes into a byte stream shows the reachable speed per data lane function of data lane numbers.
Lanes are configured through the CAL_CSI2_COMPLEXIO_CFG_l registers. The CAL_CSI2_COMPLEXIO_CFG_l[2:0] CLOCK_POSITION bit field and the CAL_CSI2_COMPLEXIO_CFG_l[3] CLOCK_POL bit configure which lane transmits the clock and define its polarity. The DATAx_POSITION and DATAx_POL bit-fields configure the data lanes and their polarity, where x is the number of the data lane (x = 1 to 4). When the DATAx_POSITION field is set to 0, data lane x is not used.
Lane 4 (position 5) supports only data. The CLOCK_POSITION must not be set at position 5.
Signal Name | I/O(1) | Description | |
csi2_0_dx0 | lane 0 (position 1) | I | Serial data/clock input |
csi2_0_dy0 | |||
csi2_0_dx1 | lane 1 (position 2) | I | Serial data/clock input |
csi2_0_dy1 | |||
csi2_0_dx2 | lane 2 (position 3) | I | Serial data/clock input |
csi2_0_dy2 | |||
csi2_0_dx3(2) | lane 3 (position 4) | I | Serial data/clock input |
csi2_0_dy3(2) | |||
csi2_0_dx4(2) | lane 4 (position 5) | I | Serial data input only |
csi2_0_dy4(2) |
Signal Name | I/O(1) | Description | |
csi2_1_dx0(2) | lane 0 (position 1) | I | Serial data/clock input |
csi2_1_dy0(2) | |||
csi2_1_dx1(2) | lane 1 (position 2) | I | Serial data/clock input |
csi2_1_dy1(2) | |||
csi2_1_dx2(2) | lane 2 (position 3) | I | Serial data/clock input |
csi2_1_dy2(2) |
Lanes support the two operating modes: