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.

[DP83848VYB] No auto-negotiation and no link

Other Parts Discussed in Thread: DP83848VYB, TM4C129XNCZAD

Hello,

i didn´t get the DP83848VYB on my self-designed board with an MPC5566 processor working.

Here are the Register values of my PHY:

BMCR: 0x3100

BMSR: 0x7849 (no link)

PHYSTS: 0x4000

PHYCR: 0x0804

The Board is connected to my Windows 7 PC but the auto-negotation will never be finished and also couldn´t the PHY establish a link.

Here are some values I measured on the PHY:

TX_CLK: 25Mhz

TX_EN: HIGH when transmitting on TXD_0/1/2

X1: 25Mhz

X2: not connected

25MHZ_OUT: 25Mhz

RESET_N: HIGH (low active)

MII_MODE: LOW

3.3V supply: 3.3V

PFB(IN/OUT): 1.8V

Resistance RBIAS to ground: 4.87 kOhm (from circuit layout)

Resistance TD/RD to termination: 50 Ohm (from circuit layout)

MDC: while reading register: 25Mhz; after reading no clock at 0V

I also tried it with a fixed 100Mbit/FullDuplex and 10Mbit/FullDuplex configuration but there also couldn´t be a link established.

Hope anybody can help be to solve this problem!

Thanks!

 

Best regards,

Stefan

 

  • I would suggest that you confirm that the PHY can link to itself. This can be accomplished using an external loopback plug. Below is some information on how to create the necessary cabling:

    1. Cut a cable with about 1 foot of cable and the RJ45 connector
    2. Strip off about 3~4 inches of the outside plastic shield to expose the 4 pairs of twisted pair cable
    3. Bend back pairs 4/5 and 7/8 (these will not be used)
    4. Solder pair 1/2 to pair 3/6
    1. Solder wire 1 to wire 3
    2. Solder wire 2 to wire 6
    5. Now you have a loopback cable.

    Plug the cable into any operating 10/100 Ethernet port and link will be established (assuming Auto-Neg is enabled). You can also force 100BASE-T or 10BASE-T full duplex to test those modes explicitly.

    Patrick
  • Thanks for your reply.

    I tried the loopback plug you suggested, but it didnt work also.

    I measured also the TD+/TD- pins with the oszi and get on both pins steady 3.3V and cant see the pulses of the auto-negotiation. On RD+/RD- are also steady 3.3V.

    Any further suggestions?

     EDIT:

    I also tried an BIST with internal loopback enabled. A link could be established but the BIST_ERROR_COUNT  in the CDCTRL1 counts to 0xFF. Maybe this informations help to find the error.

    Stefan

  • Hello,

    Thank you for the detailed description of the problem. At this point, I would like to suggest a few board level debug techniques before trying to establish a link with PC. These techniques can help to find out if there are any board level problem present in the application.

    Power up the board and verify key voltages

    1. Probe the 3.3V supply pins
    2. Probe the PFBOUT and PFBIN pins
      1. The PFBOUT pin is a regulated 1.8V supply generated inside the device from the 3.3V supply. The device will not operate correctly if the PFBIN pins do not receive this 1.8V supply.
    3. Probe the RBIAS pin 
      1. The voltage should be ~1.2V. The RBIAS pin sets the main reference bias for the device.  If the voltage or current for this pin is not correct, it could affect the entire device. 

    Power down the board and verify key resistances

    1. Resistance to ground across the RBIAS resistor should be 4.87 kOhms +/- 1%.
    2. Resistance across the transmit and receive terminations should be 50 Ohms +/- 1%.
    3. Resistance across the MDIO pull-up resistor should be approximately 1.5 kOhms. Problems can occur when a very small (10's of Ohms) pull-up resistor is used.

    Power up the board and verify key signals

    1. Probe the RESET_Nsignal
      1. The reset input is active low and is connected to a 10 kOhm pull down resistor.  It is important to confirm that the controller is not driving the RESET_N signal low.  Otherwise, the device will be held in reset and will not respond.
    2. Probe the X1 clock
      1. Verify the frequency and signal integrity.  For link integrity the clock needs to be within +/- 50ppm of the default (25MHz for MII / 50MHz for RMII). 
    3. Probe strap pins during initialization to check if other devices devices on the board are not driving the pins unexpectedly.

    Regards,

    Aniruddha

  • Hello,

    Thanks for your reply!

    In my initial Post you can see what i measured on the mentioned PINs. On RBIAS i can measure 1.2V.

    I think all the values are looking good.

    Only for the X1 clock I measure frequencies between 25MHz+/-0.13MHz, but i am not sure if the Clock is wrong or my Oszi is not accurat enough.

    EDIT: I measured the X1 clock with a better oszi an the clock has exact the 25Mhz.

     

    Regards,

    Stefan

  • Hello All,

    I am also facing the same problem . The scenario is mentioned below:

    I am using TM4c129X development kit(Tiva C series ARM MCU) in that Ethernet is working (I am using internal PHY). I am able to do ping and do rest of the communication.

    But if i am using custom board developed internally (having same TM4c129xnczad Version 3) the Ethernet is not working (i.e. Here also i am using internal PHY). I checked the all the points mentioned in the below post related to hardware and all fields are good in custom board.

    Please guide me on this.

    Thanks
    Sanyam Agarwal