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.

DP83TG720S-Q1: Long cable can't detect open/short

Part Number: DP83TG720S-Q1

Hi Team,

customer follow this link to test and still have some questions.

 https://www.ti.com/lit/an/snla371a/snla371a.pdf?ts=1623044709767&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FDP83TG720S-Q1

(1) According to the method, the cable diagnostic test still has some problems. The short cable is no problem, but when the long cable (15m) is used, the PHY cannot detect any fault. Whether the remote end is open or short, the PHY It is detected that the termination is normal. Is there a limit to the length of the TDR measurement? Or is it caused by insufficient TDR measurement time setting?
(2) Does PHY chip, including this DP83TG720, have any requirements for the ripple or noise of the power supply? If  the DC+AC is in the Recommended Operating Conditions, there is no problem, right?

  • Hello Amelie,

    1. During the TDR testing, what was the mode of the PHY : master or slave? Was link-partner connected to other side of the cable? For long cable case, was register 0x001E showing tdr as pass (bit 0 = 0?) Was the cable under test a standard automotive cable? TDR has been tested for 15m of automotive cable in external compliance lab. So we should be able to make it work for the customer.

    2. Is voltage ripple more than 50mV?

    --

    Regards,

    Vikram

  • master or slave?

    Master mode.

    Was link-partner connected to other side of the cable?

    The test network diagram is shown in the figure below. The tester ETS4620 has a built-in link-partner. When the test cable is diagnosed, the ETS4620 will simulate the open circuit or short-circuit fault of the cable through the internal relay switch. Therefore, the link-partner and DUT when the fault is simulated Is disconnected.

    For long cable case, was register 0x001E showing tdr as pass (bit 0 = 0?)

    Yes. reg_1E.bit0=0, or it will return QCFF error, not QC00 as it shows now.

    Was the cable under test a standard automotive cable?

    Yes, because it is tested in external third party lab. It is standard 15m automotive cable.


    The cable diagnostic code is attached for reference:

           string TI_DP83TG720::GetCableDiagnostic(cyg_tick_count_t StartTestTime, cyg_tick_count_t TimeOutTest) {

                         bool TDR_ready, TDR_timeout;

                         cyg_uint16 reg_1E, reg_30f, fault_status, fault_loc;

                         cyg_tick_count_t TDR_start = cyg_current_time();

                        

                         //Force link-down

                         WriteRegister(0x1f, 0x0576, 0x0400);

                         //TDR configuration pre-run

                         WriteRegister(0x1f, 0x0301, 0xA008);

                         WriteRegister(0x1f, 0x0303, 0x0928);

                         WriteRegister(0x1f, 0x0304, 0x0004);

                         WriteRegister(0x1f, 0x0405, 0x6400);

                         // Start TDR

                         reg_1E = ReadRegister(0x1f, 0x1E);

                         reg_1E |= 1 << 15;

                         WriteRegister(0x1f, 0x1E, reg_1E);

                         // Wait until TDR is ready

                         do {

                                reg_1E = ReadRegister(0x1f, 0x1E);

                                TDR_ready = (reg_1E & (1 << 1));

                                TDR_timeout = (cyg_current_time() - TDR_start > 3000);

                         }

                         while (!TDR_ready && !TDR_timeout);

                         // Check for timeout

                         if (TDR_timeout)

                                return QCFF;

                         // Check for TDR failure

                         if (reg_1E & 1)

                                return QCFF;

                         //To get fault status and location in metres

                         reg_30f = ReadRegister(0x1F, 0x030F);

                         fault_status = (reg_30f >> 4) & 0xf;

                         fault_loc = reg_30f >> 8;

                         // Evaluate Results

                         //Cable is terminated

                         if (fault_status == 0x7){

                                return QC00;

                         }

                         //Cable is Open

                         else if (fault_status == 0x6){

                                if (fault_loc > 8){

                                       return QC09;

                                }

                                else{

                                       return QC05;

                                }

                         }

                         //Cable is Short

                         else if (fault_status == 0x3){

                                if (fault_loc > 8){

                                       return QC0A;

                                }

                                else{

                                       return QC06;

                                }

                         }

                         else{

                                return QCFF;

                         }

                  }

    Is voltage ripple more than 50mV?

    Lower than 50mV.

  • I checked with customer as above.

    Could you kindly help to give some advice?

    Thanks!

  • Hello Amelie,

    Regarding TDR : Can we get the datasheet/model number of the cable under use? May be this 15m is different than what other compliance house uses. I will also check with design if we can try software settings of PHY to make TDR work if the cable has more attenuation than standard cable used earlier. Also can we try removing the cable from the link-partner and then check if TDR is declaring it open.

    Regarding supply ripple : 50mV should be ok. Use the power supply network : ferrite bead + decaps as per datasheet recommendation.

    --

    Regards,

    Vikram

  • Hello Amelie,

    Here is the another step suggested after review of the current issue with design team. We will need the value of attached registers filled up, so that design team can understand how the TDR is behaving in the customer's application.

    tdr_debug_register_reads.csv