SN65DP159: SN65DP159RSB, Outputs abnormal after some time

Part Number: SN65DP159

Tool/software:

Dear TI Support team,

1. The issue description: in our application, we have two DVI(HDMI1.4) outputs using two SN65DP159RSB retimer. the schematic design is exactly same and the PCB layout is basically same and adjcent placed. Hereinafter referred to as DVI1 and DVI2. Basically the DVI1 and DVI2 were operated same time, after one period normal operation,  the DVI1 output abnormal(no display on some or most monitors) while DVI2 still good. Among a total of about 20 products, 4 cases were found.

2. The debugging I have did

 i. Compare the DVI1 and DVI2, the inputs signals are same but the outputs of DVI1 are abnormal, as screenshots as below

DVI2 outputs (OUPUT_D2), differential signals, normal

DVI2 outputs (OUPUT_D2_P), single mode signals, the OUTPUT_D2_N is similar

DVI1 outputs (OUPUT_D2), differential signals, abnormal

DVI1 outputs (OUPUT_D2_P), single mode signals, the OUTPUT_D2_N is similar

ii. Compare the DVI1 and DVI2, the static measurements as below

iii. Rework to replace the DVI1's retimers chip bty new one, the output signals are normal and the monitor display ok.

iv. It was suspected that the chip failure was caused by ESD. Therefore, ESD tests (Contact/AIR +/-15KV) were conducted on normal output DVI ports for over 1000 times, but the problem did not recur.

v. Possible doubts, the DVI1's circuity is close heat source - the FPGA module's heat sink, but i measured the air temperature is under 50℃, while the operation temperature of SN65DP159RSB is -40~85℃.

3. My questions/requests

i. Why there is different failure rate for same design? 1/5 for DVI1 but 0 for DVI2.

ii. Find the root cause and then guide for design optimization.

4. design inputs for review

i. Firmware: I2C config but completely default settings

ii. Schematic

iii. Layout

  • Hi, 

    1. For I2C_EN, PRE_SEL, EQ_SEL/A0, A1, SLEW_CTL, you have to use 65k pullup/pulldown resistor for the DP159 to correctly sample these pins as shown below.

    2. You have three set of resistors for VSADJ, is it possible to use only one resistor and make sure the resistor tolerance is +/-1%?

    3. Since you are using I2C register to configure DP159, is it possible to dump out the DP159 register between DVI1 and DVI2? 

    4. Does the DVI source support AC coupling? 

    5. Any chance you can share the actual layout instead the screen capture?

    Thanks

    David

  • Hi David,

    Sorry for the late reply.

    Regarding 1 and 2, I will consider these improvements when next design change.

    3. see below.

    DVI1 Abnormal Port

    cfg page0 successful
    ------------------------------------------------read page0, addr 0x00 ~ 0x20------------------------------------------------
    0x00 = 0x44     0x01 = 0x50     0x02 = 0x31     0x03 = 0x35     0x04 = 0x39     0x05 = 0x20     0x06 = 0x20     0x07 = 0x20
    0x08 = 0x01     0x09 = 0x06     0x0a = 0x31     0x0b = 0xb9     0x0c = 0x49     0x0d = 0x14     0x0e = 0x00     0x0f = 0x0f
    0x10 = 0x00     0x11 = 0x00     0x12 = 0x00     0x13 = 0x00     0x14 = 0x00     0x15 = 0x80     0x16 = 0x00     0x17 = 0xf0
    0x18 = 0x00     0x19 = 0x00     0x1a = 0x00     0x1b = 0x00     0x1c = 0x00     0x1d = 0x00     0x1e = 0x00     0x1f = 0x00
    0x20 = 0x0a
    
    cfg page1 successful
    ------------------------------------------------read page1, addr 0x00 ~ 0xB1------------------------------------------------
    0x00 = 0xc3     0x01 = 0x01     0x02 = 0x3f     0x03 = 0x00     0x04 = 0xa0     0x05 = 0x00     0x06 = 0x00     0x07 = 0x00
    0x08 = 0x02     0x09 = 0x00     0x0a = 0x00     0x0b = 0x33     0x0c = 0x00     0x0d = 0x00     0x0e = 0x11     0x0f = 0x00
    0x10 = 0x0f     0x11 = 0x70     0x12 = 0x20     0x13 = 0x07     0x14 = 0x01     0x15 = 0x00     0x16 = 0x00     0x17 = 0x00
    0x18 = 0x00     0x19 = 0x00     0x1a = 0x00     0x1b = 0x00     0x1c = 0x00     0x1d = 0x00     0x1e = 0x00     0x1f = 0x00
    0x20 = 0x00     0x21 = 0x00     0x22 = 0x00     0x23 = 0x00     0x24 = 0x00     0x25 = 0x00     0x26 = 0x00     0x27 = 0x00
    0x28 = 0x00     0x29 = 0x00     0x2a = 0x00     0x2b = 0x00     0x2c = 0x00     0x2d = 0x00     0x2e = 0x00     0x2f = 0x00
    0x30 = 0x07     0x31 = 0x70     0x32 = 0x08     0x33 = 0x00     0x34 = 0x00     0x35 = 0x00     0x36 = 0x00     0x37 = 0x00
    0x38 = 0x00     0x39 = 0x00     0x3a = 0x08     0x3b = 0x08     0x3c = 0x04     0x3d = 0x06     0x3e = 0x00     0x3f = 0x00
    0x40 = 0x80     0x41 = 0x80     0x42 = 0x80     0x43 = 0x80     0x44 = 0xfe     0x45 = 0x00     0x46 = 0x00     0x47 = 0x00
    0x48 = 0xf8     0x49 = 0xfe     0x4a = 0xfe     0x4b = 0xff     0x4c = 0x03     0x4d = 0x20     0x4e = 0x11     0x4f = 0x71
    0x50 = 0x00     0x51 = 0x00     0x52 = 0x00     0x53 = 0x00     0x54 = 0x00     0x55 = 0x00     0x56 = 0x00     0x57 = 0x00
    0x58 = 0x00     0x59 = 0x00     0x5a = 0x00     0x5b = 0x00     0x5c = 0x40     0x5d = 0x40     0x5e = 0x40     0x5f = 0x40
    0x60 = 0x00     0x61 = 0x00     0x62 = 0x00     0x63 = 0x00     0x64 = 0x00     0x65 = 0x00     0x66 = 0x00     0x67 = 0x00
    0x68 = 0x00     0x69 = 0x00     0x6a = 0x00     0x6b = 0x00     0x6c = 0x00     0x6d = 0x00     0x6e = 0x00     0x6f = 0x00
    0x70 = 0x00     0x71 = 0x00     0x72 = 0x00     0x73 = 0x00     0x74 = 0x00     0x75 = 0x00     0x76 = 0x00     0x77 = 0x00
    0x78 = 0x00     0x79 = 0x00     0x7a = 0x00     0x7b = 0x00     0x7c = 0x00     0x7d = 0x00     0x7e = 0x00     0x7f = 0x00
    0x80 = 0x00     0x81 = 0x10     0x82 = 0x00     0x83 = 0x00     0x84 = 0x00     0x85 = 0x00     0x86 = 0x00     0x87 = 0x00
    0x88 = 0x00     0x89 = 0x00     0x8a = 0x00     0x8b = 0x00     0x8c = 0x00     0x8d = 0x00     0x8e = 0x00     0x8f = 0x00
    0x90 = 0x00     0x91 = 0x00     0x92 = 0x00     0x93 = 0x00     0x94 = 0x00     0x95 = 0x00     0x96 = 0x00     0x97 = 0x00
    0x98 = 0x00     0x99 = 0x00     0x9a = 0x00     0x9b = 0x00     0x9c = 0x00     0x9d = 0x00     0x9e = 0x00     0x9f = 0x00
    0xa0 = 0x00     0xa1 = 0x00     0xa2 = 0xf0     0xa3 = 0x00     0xa4 = 0x00     0xa5 = 0x00     0xa6 = 0x00     0xa7 = 0x00
    0xa8 = 0x00     0xa9 = 0x00     0xaa = 0x00     0xab = 0x00     0xac = 0x00     0xad = 0x00     0xae = 0x00     0xaf = 0x00
    0xb0 = 0x5e     0xb1 = 0x82

    DVI2 Normal Port

    cfg page0 successful
    ------------------------------------------------read page0, addr 0x00 ~ 0x20------------------------------------------------
    0x00 = 0x44     0x01 = 0x50     0x02 = 0x31     0x03 = 0x35     0x04 = 0x39     0x05 = 0x20     0x06 = 0x20     0x07 = 0x20
    0x08 = 0x01     0x09 = 0x06     0x0a = 0x31     0x0b = 0xb9     0x0c = 0x49     0x0d = 0x14     0x0e = 0x00     0x0f = 0x0f
    0x10 = 0x00     0x11 = 0x00     0x12 = 0x00     0x13 = 0x00     0x14 = 0x00     0x15 = 0x80     0x16 = 0x00     0x17 = 0xf0
    0x18 = 0xcc     0x19 = 0x04     0x1a = 0x00     0x1b = 0x00     0x1c = 0x00     0x1d = 0x00     0x1e = 0x00     0x1f = 0x00
    0x20 = 0x0a
    
    cfg page1 successful
    ------------------------------------------------read page1, addr 0x00 ~ 0xB1------------------------------------------------
    0x00 = 0xc3     0x01 = 0x01     0x02 = 0x3f     0x03 = 0x00     0x04 = 0xa0     0x05 = 0x00     0x06 = 0x00     0x07 = 0x00
    0x08 = 0x02     0x09 = 0x00     0x0a = 0x00     0x0b = 0x33     0x0c = 0x00     0x0d = 0x00     0x0e = 0x11     0x0f = 0x00
    0x10 = 0x0f     0x11 = 0x70     0x12 = 0x20     0x13 = 0x07     0x14 = 0x01     0x15 = 0x00     0x16 = 0x00     0x17 = 0x00
    0x18 = 0x00     0x19 = 0x00     0x1a = 0x00     0x1b = 0x00     0x1c = 0x00     0x1d = 0x00     0x1e = 0x00     0x1f = 0x00
    0x20 = 0x00     0x21 = 0x00     0x22 = 0x00     0x23 = 0x00     0x24 = 0x00     0x25 = 0x00     0x26 = 0x00     0x27 = 0x00
    0x28 = 0x00     0x29 = 0x00     0x2a = 0x00     0x2b = 0x00     0x2c = 0x00     0x2d = 0x00     0x2e = 0x00     0x2f = 0x00
    0x30 = 0x07     0x31 = 0x70     0x32 = 0x08     0x33 = 0x00     0x34 = 0x00     0x35 = 0x00     0x36 = 0x00     0x37 = 0x00
    0x38 = 0x08     0x39 = 0x00     0x3a = 0x08     0x3b = 0x08     0x3c = 0x04     0x3d = 0x06     0x3e = 0x00     0x3f = 0x00
    0x40 = 0x80     0x41 = 0x80     0x42 = 0x80     0x43 = 0x80     0x44 = 0xea     0x45 = 0x00     0x46 = 0x00     0x47 = 0x00
    0x48 = 0xf0     0x49 = 0xfc     0x4a = 0xf8     0x4b = 0xff     0x4c = 0x03     0x4d = 0x20     0x4e = 0x11     0x4f = 0x70
    0x50 = 0x00     0x51 = 0x00     0x52 = 0x00     0x53 = 0x00     0x54 = 0x00     0x55 = 0x00     0x56 = 0x00     0x57 = 0x00
    0x58 = 0x00     0x59 = 0x00     0x5a = 0x00     0x5b = 0x00     0x5c = 0x40     0x5d = 0x40     0x5e = 0x40     0x5f = 0x40
    0x60 = 0x00     0x61 = 0x00     0x62 = 0x00     0x63 = 0x00     0x64 = 0x00     0x65 = 0x00     0x66 = 0x00     0x67 = 0x00
    0x68 = 0x00     0x69 = 0x00     0x6a = 0x00     0x6b = 0x00     0x6c = 0x00     0x6d = 0x00     0x6e = 0x00     0x6f = 0x00
    0x70 = 0x00     0x71 = 0x00     0x72 = 0x00     0x73 = 0x00     0x74 = 0x00     0x75 = 0x00     0x76 = 0x00     0x77 = 0x00
    0x78 = 0x00     0x79 = 0x00     0x7a = 0x00     0x7b = 0x00     0x7c = 0x00     0x7d = 0x00     0x7e = 0x00     0x7f = 0x00
    0x80 = 0x00     0x81 = 0x10     0x82 = 0x00     0x83 = 0x00     0x84 = 0x00     0x85 = 0x00     0x86 = 0x00     0x87 = 0x00
    0x88 = 0x00     0x89 = 0x00     0x8a = 0x00     0x8b = 0x00     0x8c = 0x00     0x8d = 0x00     0x8e = 0x00     0x8f = 0x00
    0x90 = 0x00     0x91 = 0x00     0x92 = 0x00     0x93 = 0x00     0x94 = 0x00     0x95 = 0x00     0x96 = 0x00     0x97 = 0x00
    0x98 = 0x00     0x99 = 0x00     0x9a = 0x00     0x9b = 0x00     0x9c = 0x00     0x9d = 0x00     0x9e = 0x00     0x9f = 0x00
    0xa0 = 0x00     0xa1 = 0x00     0xa2 = 0xfa     0xa3 = 0x00     0xa4 = 0x00     0xa5 = 0x00     0xa6 = 0x00     0xa7 = 0x00
    0xa8 = 0x00     0xa9 = 0x00     0xaa = 0x00     0xab = 0x00     0xac = 0x00     0xad = 0x00     0xae = 0x00     0xaf = 0x00
    0xb0 = 0x5e     0xb1 = 0x82

    4. yes, the DVI  is FPGA SOC, with HDMI Driver module.

    5. the whole design is really huge, maybe i will share with you by suitable time.

  • Hi,

    Looking at the register dump, both DP159 are able to detect the correct input clock frequency and goes into the re-timer mode, so I don't see an issue with the inputs.  

    If you replace the DVI1's retimers chip by a new one, and the output signals are normal and the monitor display ok. Can you put the bad DVI1 on a working board and is the output signal normal?

    Thanks

    David

  • Hi David,

    1.I will share the result to you once i completed the testing. Now, i suspect it's EOS demage and try to do ESD and hot-plug testing to reproduce the fault.

    2. May you sugesst the PU/PD setting for those IOs under I2C working mode? leave them floting?

    3. May you share the registers' setting example of HDMI AC coupling input and DVI output?

  • Hi,

    In I2C mode,

    I2C_EN: 0 - 65 k (± 10%) pullup resistor to 3.3 V for I2C mode

    EQ_SEL/A0, HDMI_SEL/A1: e, 65 k (± 10%) pullup to 3.3 V, or 0 - 65 k (± 10%) pulldown to GND to set DP159 I2C address

    SCL_CTL, SDA_CTL: I2C clock and data signal

    SLEW_CTL, PRE_SEL: Floating

    The register default setting will support HDMI AC coupled input and DVI output. 

    On a bad DVI1, if you remove the external ESD protection diode, do you see a change in the output amplitude? 

    Thanks

    David