ZHCSNJ8A April 2021 – September 2023 TDES960
PRODUCTION DATA
The bidirectional control channel provides a mechanism to read or write I2C registers in remote devices over the V3Link interface. The I2C Controller located at the Deserializer must support I2C clock stretching. Accesses to serializer or remote target devices over the bidirectional control channel will result in clock stretching to allow for response time across the link. The TDES960 acts as an I2C target on the local bus, forwards read and write requests to the remote device, and returns the response from the remote device to the local I2C bus. To allow for the propagation and regeneration of the I2C transaction at the remote device, the TDES960 will stretch the I2C clock while waiting for the remote response. The I2C address of the currently selected RX Port serializer will be populated in register 0x5B of the TDES960. The BCC_CONFIG register 0x58 also must have bit 6, I2C_PASS_THROUGH set to one. If enabled, local I2C transactions with valid address decode will then be forwarded through the bidirectional control channel to the remote I2C bus. When I2C_PASS_THROUGH is set, the deserializer will only propagate messages that it recognizes, such as the registered serializer alias address (SER_ALIAS_ID), or any registered remote target alias attached to the serializer I2C bus (TARGET_ALIAS) assigned to the specific Rx Port. Setting I2C_PASS_THROUGH_ALL and AUTO_ACK_ALL are less common use cases and primarily used for debugging I2C messaging as they will respectively pass all addresses regardless of valid I2C address (I2C_PASS_THROUGH_ALL) and acknowledge all I2C commands without waiting for a response from serializer (AUTO_ACK_ALL).