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.

DP83867IR: DP83867IR: TEST Flow and Register Settings for Near-end loopback mode (Analog or PCS)

Part Number: DP83867IR
Other Parts Discussed in Thread: DP83867IS

Tool/software:

Dear team,

I would like to know the flow for operating the 1G Near-END Loopback for the DP83867IS IC.

The flow I have in mind is as follows:

  1. Connect RJ45 to the BD configured with MAC + PHY IC as shown below.

  2. Power on.

  3. Set the register as shown below. (I chose Analog Loopback as it has more steps than other Near-END Loopback modes, which I believe will make it more reliable.)

            

Q1. With this method, will the Analog Loopback work correctly?
Q2. After performing the loopback, how can we check if there is any damaged data during packet transmission?
Do we need to implement a separate message window?

Please let me know if there are any parts that need modification.

Thank you.

  • Hi Si Yoon Kim!

    Thank you for submitting your query! I will gladly assist with it.

    May I ask why you want to perform a loopback test? Are there any issues with your system, i.e. link drop, packet loss, etc?

    Connect RJ45 to the BD configured with MAC + PHY IC as shown below.

    The cable you have created here is exactly as you circled, this would be useful for external loopback. This will work for 10Base-TE and 100Base-TX but not for 1000Base-T.

    If the goal is to evaluate the MAC interface, any Near-end loopback will do (MII, PCS, Digital, and Analog). When using a near-end loopback, the PHY will return packets received from the MAC. Here the MAC will need to check if Data sent = Data received. A combination of ping and tcpdump (is using linux) can be used to achieve this.

    Regards,

    Alvaro

  • Dear Team,

    I appreciate your reply. However, I still have some questions.

    1. You asked me about the reason for performing the Loopback test. This is part of the reliability testing in our product development stage. As you mentioned, it aligns with the purpose of evaluating the MAC interface.

    2. Regarding your response, "This will work for 10Base-TE and 100Base-TX but not for 1000Base-T," I have a question. I am currently attempting to test PCS or analog LoopBack. As far as I know, for the 1 Gigabit Ethernet Near-End Loop test, this involves creating a physical loop by inserting the cable into the RJ45. Does this mean that it’s not possible to perform the Near-End Loopback under the 1000Base-T condition?

    3. I plan to proceed with the Analog Loopback flow as outlined below. Could you confirm if the flow is correct?

    1. Connect RJ45 to the BD configured with MAC + PHY IC as shown below.

    2. Power on.

    3. Set the register as shown below. (I chose Analog Loopback as it has more steps than other Near-END Loopback modes, which I believe will make it more reliable.)

                

    Thank you.

  • Hi Si Yoon Kim,

    2. Regarding your response, "This will work for 10Base-TE and 100Base-TX but not for 1000Base-T," I have a question. I am currently attempting to test PCS or analog LoopBack. As far as I know, for the 1 Gigabit Ethernet Near-End Loop test, this involves creating a physical loop by inserting the cable into the RJ45. Does this mean that it’s not possible to perform the Near-End Loopback under the 1000Base-T condition?

    The cable you created will not be necessary for near-end loopbacks. You can perform MII, PCS, Digital, and Analog loopback through register setting alone, without the need for the cable.

    For Analog Loopback, please use the following script:

    PhyWrite(0x000D, 0x001F) //Write Reg 0xFE = 0xE720
    PhyWrite(0x000E, 0x00FE)
    PhyWrite(0x000D, 0xE720)
    PhyWrite(0x000E, 0x401F)
    
    PhyWrite(0x0000, 0x0140) //Disable Auto-negotiation
    PhyWrite(0x0010, 0x5008) //Force MDI
    PhyWrite(0x0016, 0x0008) //Enable Analog Loopback

    Regards,

    Alvaro

  • Dear Team,

    I appreciate your response.

    I would like to ask how we can visually confirm that the loopback is functioning correctly after entering the script.

    Are Ping or tcpdump the only methods available?

    In our case, we monitor data input/output using UART. Would it be possible to confirm the loopback using this method as well?

    Thank you.

  • Hi Si Yoon Kim,

    For loopback testing, we want to confirm that Data Sent = Data received. If you are able to monitor the data using the UART then this is okay.

    Regards,

    Alvaro