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.

DP83867CR: TDR peaks location calculation

Part Number: DP83867CR
Other Parts Discussed in Thread: DP83867IR

Hi,

DP83867CR's datasheet is quite laconic about interpretation of TDR results.

I tried equations from snla253, but that document applies to DP83822. For DP83867CR, it gives results that do not match the cables I tested (roughly 2x the real cable length is reported).

I cannot find actual computation needed to get from TDR_PEAKS_LOC* to a length. Did I overlook some part of documents ? Could someone provide it ?

Also, snla253 mentions a "Peak polarity" in "Register 0x018A bit [15:6]". DP83867CR datasheet doesn't mention peak polarity at all. Where should we take the sign bits from ?

Thanks in advance.

  • Hi,

    Please use below two registers for Polarity. They got left out from DP83867 datasheet and will be added in next revision.

    TDR_PEAKS_SIGN_A_B

    Address offset

    0x0000 01A5

    Description

    Type

    RO

    Bits

    Field Name

    Description

    Type

    Reset

    15:10

    Reserved

    Ignored on read

    RO

    0x00

    9

    TDR_PEAKS_SIGN_B_4

    found peaks sign 4 in channel B

    RO

    0

    8

    TDR_PEAKS_SIGN_B_3

    found peaks sign 3 in channel B

    RO

    0

    7

    TDR_PEAKS_SIGN_B_2

    found peaks sign 2 in channel B

    RO

    0

    6

    TDR_PEAKS_SIGN_B_1

    found peaks sign 1 in channel B

    RO

    0

    5

    TDR_PEAKS_SIGN_B_0

    found peaks sign 0 in channel B

    RO

    0

    4

    TDR_PEAKS_SIGN_A_4

    found peaks sign 4 in channel A

    RO

    0

    3

    TDR_PEAKS_SIGN_A_3

    found peaks sign 3 in channel A

    RO

    0

    2

    TDR_PEAKS_SIGN_A_2

    found peaks sign 2 in channel A

    RO

    0

    1

    TDR_PEAKS_SIGN_A_1

    found peaks sign 1 in channel A

    RO

    0

    0

    TDR_PEAKS_SIGN_A_0

    found peaks sign 0 in channel A

    RO

    0

    TDR_PEAKS_SIGN_C_D

    Address offset

    0x0000 01A6

    Description

    Type

    RO

    Bits

    Field Name

    Description

    Type

    Reset

    15:10

    Reserved

    Ignored on read

    RO

    0x00

    9

    TDR_PEAKS_SIGN_D_4

    found peaks sign 4 in channel D

    RO

    0

    8

    TDR_PEAKS_SIGN_D_3

    found peaks sign 3 in channel D

    RO

    0

    7

    TDR_PEAKS_SIGN_D_2

    found peaks sign 2 in channel D

    RO

    0

    6

    TDR_PEAKS_SIGN_D_1

    found peaks sign 1 in channel D

    RO

    0

    5

    TDR_PEAKS_SIGN_D_0

    found peaks sign 0 in channel D

    RO

    0

    4

    TDR_PEAKS_SIGN_C_4

    found peaks sign 4 in channel C

    RO

    0

    3

    TDR_PEAKS_SIGN_C_3

    found peaks sign 3 in channel C

    RO

    0

    2

    TDR_PEAKS_SIGN_C_2

    found peaks sign 2 in channel C

    RO

    0

    1

    TDR_PEAKS_SIGN_C_1

    found peaks sign 1 in channel C

    RO

    0

    0

    TDR_PEAKS_SIGN_C_0

    found peaks sign 0 in channel C

    RO

    0

    For Register mapping from DP83867 to DP83822, please refer to below e2e thread.

    https://e2e.ti.com/support/interface/f/138/t/624167?DP83867IR-DP83867-TDR-enable

    Regards,
    Geet

  • Hi,

    Thanks for the polarity registers !

    About location registers, I found the thread you are pointing me to, it actually led me to snla253, but as I noted above, calculation doesnt give expected results.

    Actual calculation for converting LOC value to meters must be slightly different for DP83867.

    Thanks,

  • Hi,

    Can you share your xxls you are using for the compuation ? I can ran it over to expert to confirm.

    Regards,
    Geet

  • DP83867_TDR.xlsx

    Geet,

    Here is a sample calculation for cables I had at hand.

    Regards

  • Hi,

    I am looking in this. I shall get back by friday.


    Regards,

    Geet

  • Hi Nicolas,

    Thanks for your patience on this topic. We looked in further and found that the factor to substract for DP83867 is 17 instead of 8.

    I am noting down the steps again and formula we used in lab for the quick reference. 

    Regards,
    Geet

    How To use TDR on DP83867

    TDR functionally of DP83867 can be used for detecting the location, amplitude, and nature of

    the peak. Use the following script to execute TDR.

    Script:

    //start TDR

    wd 1E 1

    delay 2000

    //TDR Done

    //------------------

    rd 1E

    //TDR - Gen status

    //------------------

    rd 1A4

    //TDR - read peak loc

    //------------------

    rd 190

    rd 191

    rd 192

    rd 193

    rd 194

    rd 195

    rd 196

    rd 197

    rd 198

    rd 199

    //TDR - read peak Amp

    //------------------

    rd 19A

    rd 19B

    rd 19C

    rd 19D

    rd 19E

    rd 19F

    rd 1A0

    rd 1A1

    rd 1A2

    rd 1A3

    Refer to the DP83867IR TDR registers.

    Calculate distance to peak in meters:

    • Run the script and check register 0x1E to verify that TDR is completed.

    • Note the peak location values from register 0x190 to 0x199.

    • Peak locations are stored in 8-bit Hex format in the above mentioned registers.

    • DP83867 can store 5 peaks per channel.

    • Convert the location from HEX to decimal.

    • Use the following formula to get the location of the peak in meters.

    Peak Location (in meters) = (Decimal value * 0.862)-17

    For example,

    Assume that after executing the TDR script, location for Peak 0 on Channel A (Register

    0x190[7:0]) is recorded as 0x40. The decimal value is 64.

    Peak location = (64 * 0.862) – 17

    = 55.16 -17

    = 38.16 meters

    The location of the peak is approximately 38.16 meters from the PHY. This can be used to

    detect break in cable, impedance discontinuity or cable length. For measuring cable length,

    leave the other side of the cable unconnected and follow the procedure.

  • Geet,

    Thanks for taking care of my issue.

    If I apply the calculation you provide to the values I have in excel sheet I sent, LOC values of 21, 24 and 33 (decimal) gives lengths of 1.1 m, 3.7 m and 11.4 m, respectively. This puzzles me as this is quite far from actual cables lengths of 4,7 m, 7,4 m and 14.35m I measured.

    If calculation is correct, what could cause such discrepancy ?

    Regards,

  • Hi,

    Can you please try out with larger cable lengths for me?

    1. 30 meters

    2. 50 meters

    3. 70 meters.

    Regards,

    Geet

  • Hi,

    I'm sorry, but I'll wont have access to these exact lengths in a close future. I would have to wait until next october or so.
    Maybe you'll have better chances on your lab at Ti.

    Regards,

  • Hi,

    Got it. Unfortunately, we will not be able to perform the test internally right now. 

    Regards,

    Geet

  • Hi,

    I am closing this thread. In case you need further assistance, please open new thread and provide reference to this thread.

    Regards,

    Geet