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: Parity Error occurence when used with DS90UB953-Q1

Part Number: DS90UB954-Q1
Other Parts Discussed in Thread: DS90UB953-Q1, , ALP

Hi, 

We are using the DS90UB954-Q1 De-serializer with DS90UB953-Q1 serializer in our custom Boards (in STP mode). 

We are getting parity error intermittently / rarely when we transmit camera sensor image data from serializer to de-serializer (we could not find a use case when this issue occurs).

Can you please suggest any approcah to avoid this error??

Note: On probing, we could observe that data from camera sensor is proper. Moreover, no error registers are set in the serializer side (DS90UB953-Q1)


When this praity error occurs, we are getting partial frame (i.e. frame without End of packet).Is there any possiblity to skip this error frame by configuring De-serializer??

If so, please help us with the configuration??

If it is not possible to skip this error frame; Is there any possibility to send the complete frame with parity error(i.e. with End of Packet)??

  • Hi Suresh,

    One thing you could try is to first disable the CSI source, and then enable PatGen on the 953 and see if you are seeing the same issue:

    • Set 0xB0 = 0x00
    • Set 0xB1 = 0x01
    • Set 0xB2 = 0x01 to enable
    • 0xB2 = 0x00 to disable

    Could you also share your schematic connection for the SerDes?

    Have you done s-parameter and tdr measurements on the board/cable?

    Best,

    Jiashwo

  • Hi Jiashwo,

    We will generate pattern and check if this issue occurs?

    Please note that this issues occurs rarely and we could not find any methods to re-create this issue. So, we might need to wait until the issue occurs.

    In the meanwhile can you please let us know if there is any possibility for the De-serializer to skip the frame with parity error , as De-serializer detects the parity error ??

    Attaching the Serializer and De-serializer section schematics for your reference.

    Serializer Section.pdfDe-Serializer Section.pdf

    Thanks,

    Suresh

  • Hi Suresh,

    Yes, it's possible to discard frames with parity error. You can set this in registers 0x7C and 0x7D in the deserializer.

    Additionally, do you have access to ALP? We have a tool on ALP called Margin Analysis that checks for the health of your link. It might be worth it to run the Margin Analysis Program on your system to check the quality of your link. Please take a look at the app note here: http://www.ti.com/lit/an/snla301/snla301.pdf

    Best,

    Jiashow

  • Dear Jiashow

    We have tried configuring 0x7C and 0x7D registers as follows:

    -> 0x7C register to 0x20
    -> 0X7D register to 0X8A

    After configuring the above registers in the De-serializer also we could get partial frame from De-serializer (in case of occurrence of parity error).

    Note: As per DS90UB954-Q1 datasheet, DISCARD_ON _PAR_ERR (5th bit of 0x7C) should be 0 by default. But we could observe that, DISCARD_ON _PAR_ERR bit is set to 1 by default. Therefore, DISCARD_ON_PAR_ERR bit is set by default.

    From our understanding, truncate means the entire frame with parity error will be truncated. Please confirm if our understnading is correct. I also belive that partial frames are not truncated when DISCARD_ON_PAR_ERR bit is set to 0.

    Thanks,
    Suresh

  • Hi Suresh,

    You are correct, the DISCARD_ON_PAR_ERR is enabled by default. 

    Could you change your PASS criteria to 3 valid frames and see if you see any improvements (0x7D[1:0]). You can also try to set dsicard on line size and discard on frame size.

    Best,

    Jiashow