SNLA416A September 2022 – February 2024 DS90UB960-Q1 , HD3SS3212-Q1
With the growing focus on technological advancement and autonomy in the automotive industry, high-resolution, uncompressed data channels are increasingly in demand for cameras, radar, LIDAR, ultrasound, and display applications. The FPD-Link SerDes family of products supports the delivery of high-resolution signals and streamlines designs within advanced driver assistance systems (ADAS) and infotainment displays. For certain applications multiplexing with FPD-Link SerDes can facilitate the addition of more sensor modules in a system. Multiplexing provides a simple solution to switch between different sensor modules without degrading the signal integrity of FPD-Link SerDes.
As a whole, the automotive industry is seeing a trend towards more advanced systems that assist drivers, reduce vehicular accidents, and improve passengers' overall experience. These driver assistance systems incorporate environmental sensing, as well as driver and in-cabin monitoring to create functionally safe systems. The successful implementation of these designs necessitates an increase in the number of camera modules, and a matching increase in communication channels needed for these sensors.
FPD-Link SerDes provides a method of high resolution, uncompressed data transfer enabling high-speed, high-performance video and sensor interfaces. Quad- and dual-channel FPD-Link SerDes modules are available for multi-camera applications. In some cases however, an odd number of cameras is not easily supported by these even-channeled deserializers. In these cases one method for the addition of a third or fifth camera module to a dual- or quad-camera system is with the use of multiplexing. Multiplexing FPD-Link can be used specifically for multi-camera systems where using two or more cameras in the application are mutually exclusive in use, as illustrated by Figure 1-1. Multiplexing also reduces the number of CSI-2 ports needed on the central processor, freeing up important IOs for other use cases through the vehicle. This configuration can contribute to a reduction in the cost and size of the system and overall space efficiency.
Figure 1-1 illustrates two mutually-exclusive cameras in a single ADAS system.
For high-speed, high-resolution multiplexing applications, considering the impact on channel scattering parameters and link margin between the SER and DES is important to determine how the transmission channel is affected. This characterization was done using the setup shown in Figure 2-1.
The multiplexer intercepts the FPD-Link SerDes transmission channel on the deserializer side of the power over coax (PoC) connection. This allows for the DC component of the PoC connection to be removed prior to being fed into the multiplexer. The component then connects directly to the FPD-Link III RX Port 3 pins (RIN3+ and RIN3–). Switch the multiplexer according to the protocol described in Section 4, Implementation of Switching Protocol for proper function.
The setup for multiplexing with the previously-mentioned FPD-Link is executed as follows. A DS90UB960-Q1 EVM was modified with multiplexing capabilities on one out of four channels using a high-speed, bidirectional multiplexer, HD3SS3212-Q1. DS90UB960-Q1 is a quad 2MP camera hub FPD-Link III deserializer device with dual CSI-2 output ports. HD3SS3212-Q1 is a two-channel differential 2:1 and 1:2 multiplexing and demultiplexing device that operates at up to 10Gbps. A single mini-FAKRA connector was added in addition to the quad FAKRA connector for the additional fifth camera input. For implementing the multi-camera application in Vision Apps, five TIDA-02002 modules using an IMX390 imager were used in conjunction with this board. Figure 3-1 and Figure 3-2 show the layout for this board.
The MUX board has a SAMTEC CSI-2 connector that interfaces with a TDA4VM (J721EXSOMG01EVM) SOM board mounted on the J721EXCPXEVM common processor board for Jacinto 7 processors. The interface with the TDA4VM allows for camera output to be seen on a connected monitor. To switch between cameras, switching protocol functionality must be added to the TDA4 in the Software Development Kit (SDK).
Prior to switching, disable the deserializer output to prevent the system from entering an error handling or fail-safe mode. Switching between cameras while data is actively being transmitted is not recommended. Implement the following protocol when multiplexing between channels.
Analog LaunchPad Program
# Digital reset at initialization
board.WriteI2C(desAddr,0x01,0x01)
# Enable CSI-2 output and forwarding (steps below)
board.WriteI2C(desAddr,0x32,0x01) # Select CSI-2 port 0
board.WriteI2C(desAddr,0x33,0x03) # Enable CSI-2 output with continuous clock mode
board.WriteI2C(desAddr,0x20,0x00) # Forward all CSI-2 to port 0
# Before switching the MUX, disable the associated port and forwarding
board.WriteI2C(desAddr,0x20,0xF0) # Disable forwarding
board.WriteI2C(desAddr,0x0C,0x00) # Disable the RX port receiver
# After switching the MUX, restart the forwarding and the port receiver.
board.WriteI2C(desAddr,0x0C,0x0F) # Enable the RX port receiver
time.sleep(0.1) # Allow time for the port to re-lock
board.WriteI2C(desAddr,0x20,0x00) # Enable forwarding
# The switching protocol above disables forwarding for all channels. Depending on the application, deactivating only the multiplexed channel is sufficient.
For Example:
# Disable forwarding of RX Port 2
board.WriteI2C(desAddr, 0x20, 0x40)
# Disable Port 2 Receiver
board.WriteI2C(desAddr, 0x0C, 0x0B)
Figure 4-1 demonstrates the switching time from when the MUX is switched and the link is re-established. The initialization time of the Imager via I2C also needs to be accounted for in addition to the time it takes to re-establish the link, and once initialization of the camera is complete, the output is seen at the processor.