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.

DP83620: Receive error occurs on Rx board after reset the clock input(X1) on Tx board, why?

Part Number: DP83620

Hi,

Tx board communicate with Rx board and both of them use DP83620. Reset the clock input (X1) which is from FPGA PLL on Tx board, the  receive data on Rx board frequently has errors.  This problem didn't occur everytime but very frequently.  When it occurs,though it can recover later while it will take at least more than 3 minutes. If I hard-reset the  DP83620 on Rx board or (unplug and plug in  RJ45 again), everthing will be ok immediately. Why and how to solve this? Does it matter with X1 reset or something else?

Both of PHY chips are in RMII mode and Half/Full-Duplex mode。  They are  configured only by strap when power-up without register configuration。

Thanks!

  • Hi,

    What do you mean "Reset the clock input (X1)"?

    X1 clock must be stable before the hard-reset. See section "4.6 AC Specifications - Reset Timing" for more details.

    Regards,

    Hung Nguyen

  • Hi
    Because the X1 is given by the output of PLL of FPGA on Tx board(Master board). When I push the reset button, PLL of FPGA will be reset, so the X1 will also be reset. Then the communication goes wrong. But after I hard-reset the PHY on Rx board(slave board) or unplug and plug in RJ45, the communication become ok.
    So I wonder why and how to solve this. Thanks!
  • Hi,

    As mentioned in earlier post, the XI clock must be stable at least 1us before the hardware reset. If the XI clock comes after the hardware reset is released, the PHY could be in unknown state.

    If the hardware reset signal is also from FPGA, you can delay it >1us before releasing it, assuming the clock from FPGA to the PHY will be stable within 1us.

    Regards,

    Hung Nguyen

  • Thanks Hung 

    I think you might misunderstand my point. Maybe I didn't make it clear enough.

    The first question is:

    1) After power up, everything is ok. Then I push the reset button to reset FPGA on Master board which will also reset clock which connect to X1 of DP83620 on Master board. These are done on Master board and nothing else were done besides that. I also didn't hard reset PHY.

    Then the Slave board which connect with Master board has receive errors. Why?  From your point, I think it is because the reset of X1 will cause the PHY  in unknown state. Is that right?

    2)Then I hardreset the PHY on slave board(Pay attention: Not on Master board. I never hard reset PHY on Master board.). After that, everything is ok and no errors again. Why? I don't know why and need your further expanation.

    Thank you very much!

  • Hi Weili,

    Here is my explanation:

    1) When you reset the FPGA, the clock to XI of DP83620 will be gone for some time. Without reference clock, DP83620 PHY will be in unknown state. The device can send out garbage signal which might choke up the Slave board. We cannot guarantee the PHY operation in this illegal condition. If the clock is reset, it needs to be followed by a hardware reset.

    2) As mentioned above, the Slave board might be in lockup condition as it sees garbage signal from the Master board when the clock is reset. So, hardware reset can bring it out of lockup state. In your earlier post, unplugging and plugging back the cable can also bring it back to normal operation, which is expected as unplugging the cable basically resets the PHY's state and it starts a new linkup process.

    Hope it helps!

    Hung Nguyen 

  • Hi,Hung

    Thank you very much for your reply.

    One last question:

    I also have a board which use PHY chip 88E1512 of Marvell. It didn't have this problem when I reset the master board. Can it say that 88E1512 can't be affected by X1 while DP83620 will be affected? Do they have different mechanism for comminication?

    Thanks again.

  • Hi Weili,

    All devices, that comply to IEEE 802.3 specification, should have the same mechanism for communication. But how much each device can tolerate erroneous or illegal conditions depends on vendor-specific implementation. 

    Unfortunately, I cannot comment on non-TI device. However, my understanding is that 88E1512 is a Gigabit device. So comparing it with DP83620 might not be a fair comparison.

    Regards,

    Hung Nguyen

  • Hi Hung,

    Thanks for your explanation which made me very clear. You are so responsible and nice. I appreciate your help very much!

    Best Regards,

    Weili Wang