This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DS90UB954-Q1: Detect frames in Deserializer and Control i2c communication with Serializer through Deserializer.

Part Number: DS90UB954-Q1

Tool/software:

Hello,

        We are working on SerDes(DS90UB953TRHBRQ1/ DS90UB954),  DS90UB954 is interfaced with IMX8Mplus and  2 DS90UB953 Serializers connected to DS90UB954 sharing 2 lanes each  with 4lanes of DS90UB954.

We could able to stream from both but we would also like to monitor whether we are receiving the frames from both serializers or not, we had tried below things but they are not that much helpful

1. Using LOCK_STS register and LOCK_STS_CHG, we could able to detect HW Serializer Connection but we could not able to identify whether the frames are being received or not.

2. We also tried to read LINE_COUNT but the line count still remains non zero value even one of the serializer  is not even connected or sending frames(We had selected respective PORT using 0x4C reg).





Questions:

1. How to detect that frames are coming to Deserializer or not from both Serializers, even if one serializer does not send frames Deserializer should be able to know?
2. How to block  i2c communication with one Serializer connected in one port but enable communication with another Serializer which connected to alternate port, and if needed how to disable just bac channel communication but allowing forward channel streaming?

  • Hello,

    Thank you for your question. The LOCK status only indicates if the 954 and 953 on a specific port are connected and able to transmit data. The line count registers are port specific and will update according to the line count seen on the specific port by controlling 0x4C as you mentioned. However, these registers do not clear, so if any data was received previously, the register will return a non zero value.

    The 954 does not have any active counters that monitor if the device is receiving data from a specific port. If your cameras and processor can support virtual channels, you can assign a different virtual channel to each port, and the processor can then decode if one or both virtual channels are being received. 

    By block I2C communication, do you mean control which serializer the I2C transaction is sent to at a given time? It is possible to program an I2C alias for each serializer using register 0x5C. Use register 0x4C to switch between the ports and set a unique alias for each. When the alias of port 0 is used, the transactions will only be sent to the port 0 serializer, and when the alias of port 1 is used, the transactions will only be sent to the port 1 serializer.