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.

DP83822HF: The behavior of Linkup Status on Basic Mode Status Register (BMSR)

Part Number: DP83822HF


Hi.

I have a question the behavior of Linkup Status on Basic Mode Status Register (BMSR).

[Schematics]

FPGA <-> DP83822HF <-> SFP module for 100BASE-FX (*) <-> fiber cable ...

*) Finisar FTLF1217P2BTL

[Procedure & the behavior of Linkup Status]

1. Power-On without the fiber cable

   => BMSR : 0x7849 => bit2 is 0 = Link not established

2. Inserted the fiber cable & connect to other device

   => BMSR : 0x784D => bit2 is 1 = Valid link established

3. Removed the fiber cable

   => BMSR : 0x784D => bit2 is 1 = Valid link established

       * I expected bit2 is 0.

[Question]

The behavior of Linkup Status is the DP83822HF's specification? (normal? or abnormal?)

Because, re-inserted the fiber cable after above procedure3, the packet data's lost is incresed on 100BASE-FX.

Is it available to re-insert the fiber cable?

Or, is it neccesary to reset DP83822HF or set the specific register?

  • Hello,

    Yes I will also expect link-status bit to go low on removal of cable. Can you please share the following : 

    1. Schematic highlighting SFP's connection with PHY. (including LED_1 of PHY and SD of SFP)

    2. BMSR value after removal of cable + writting register 0x001F = x4000 after removal of cable

    3. Value of register 0x0465

    4. Value of register 0x0467

    --

    Regards,

    Vikram

  • Hello. Thank you for ask.

    1. Schematic is the blow

     - LED_1 is connected to the LOS signal of SFP

     - SFP is not had SD signal.

    2.  BMSR value 

     (1) After removal of cable => 0x784D

     (2) After (1), writting register 0x001F = x4000 => 0x7849

    3. Value of register 0x0465 => 0x0001

    4. Value of register 0x0467 => 0xE73F

  • Hello ,

    0x001F = x4000 is a soft reset which is correcting the link-status in your application.

    Can you also try writting 0x001F = x4000 before removing the cable and see if the link status changes in that case also? This will give us a conclusion whether your application is stuck even when the cable is connected (if software reset before the cable removal also succeeds in link status change with cable removal)?

    Also are you able to transfer data without writting 0x001F = x4000?

    Schematic and register reads look ok.

    --

    Regards,

    Vikram

  • Hello

    The result is failure.

    1. Inserted the fiber cable

     => BMSR : 0x784D => bit2 is 1 = Valid link established

    2. Writting 0x001F = x4000 (Restart PHY)

     => BMSR : 0x7849 => bit2 is 0 = Link not established

         Soon after that,

          BMSR : 0x784D => bit2 is 1 = Valid link established

    3. Removed the fiber cable

     => BMSR : 0x784D => bit2 is 1 = Valid link established

    > Also are you able to transfer data without writting 0x001F = x4000?

     Yes.

     (1) PowerON and inseted the fiber cable => I can transfer data.

     (2) After (1), removed the fiber cable and re-inserted the fiber cable => I can transfer data, but the packet lost is increased.

    Is there any other cause?

    I have a new question.

    The datasheet of DP83822, discribed of "9.4.4.2 100BASE-FX Recieve".

    "TI recommends connecting Signal Detect pin from the Optical Transceiver to the LED_1
    pin and enable it using SD_EN bootstrap pin in 100BASE-FX mode. The LED_1 pin is not
    used in design and that, if the electrical link between the fiber module and the DP83822 is
    broken, disconnected or otherwise disrupted, the link will recover only by initiating a soft
    reset through MDIO/MDC interface."

     - "disconnected" is included removal & re-insert the fiber cable?

     - "soft reset" is "bit15: Software Reset" or "bit14: Digital Restart" of the register 0x001F?

  • Hello,

    I suspect that there is some issue related to SFP under use, LOS and SD_IN assumptions. We may have to look at the scope capture of LOS -> SD_IN connection : when the cable is connected -> when the cable is removed -> when the cable is re-connected.

    0x001F = x4000 is the soft reset/digital restart. This write only restarts the internal state machine without disturbing the loaded configuration.

    For your applicaiton is applying soft reset (0x001F = x4000) after cable re-connection a valid solution?

    --

    Regarding,

    Vikram

  • Hello.

    I will try to capture of the waveform at the LOS signal.

    But, I don't understand the specifications of DP83822HF.

    - What determines whether or not the digital restart(0x001F = x4000) is necessary?

    - Tell me about my last question at below.

     The datasheet of DP83822, discribed of "9.4.4.2 100BASE-FX Recieve".

      ...

      if the electrical link between the fiber module and the DP83822 is
    broken, disconnected or otherwise disrupted, the link will recover only by initiating a soft reset

     ...

      => disconnected" is included removal & re-insert the fiber cable?

  • Hello,

    0x001F = x4000 (digital reset or soft reset) restarts the link-up state machine. If PHY is suspected to be in an unknown state or if at application level re link-up is required then digital reset is usually used.

    Disconnected includes removal and re-insert of fiber cable.

    --

    Regards,

    Vikram