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.
Part Number: DP83867IS
we're developing a board with 4x DP83867IS PHYs. Of these- 3 are connected to a backplane connector through a transformer with 4 wire pairs for 1Gbit/s- 1 is connected to a backplane connector through a transformer with only 2 wire pairs for 100Mbit/s only.
Several boards will be connected in one system and we get the following connection scenarios:
- 4 wire pairs to 4 wire pairs -> works fine- 4 wire pairs to 2 wire pairs -> doesn't work- 2 wire pairs to 2 wire pairs -> doesn't work (as expected, basically same as previous scenario)
We've observed that no link is established, or a supposedly 1Gbit/s link is established, when only 2 wire pairs are used.The way I understand the datasheet using only 2 wire pairs should pose no problem and a link with 100Mbit/s should be established. Unfortunately, reality seems to disagree.
Forcing the link speed in software resolves the issue, but our customer requires a stable link-up shortly after power-up without any software involved, so this is not an option for us.
The unused MDI signals are connected to ground via 1kOhm resistors.
Can you give any advice on why the auto-negotiation doesn't work reliably or how we can improve it?
The auto-negotiation happens on the MDI side of the PHY. In other words each of the 4 individual PHYs will auto-negotiate with their corresponding processors / LAN partners on the other side of the RJ-45 connection and not with each other (they are communicating via on-board xMII).
The speed of each individual PHY is set by the external connection through which information is coming into the board. If the different PHYs are set to different speeds through auto-negotiation there will be issues with link-up.
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
In reply to Vibhu Vanjari:
it seems there was a misunderstanding regarding our setup, so I made an illustration for clarification:
The ethernet PHYs should establish a link to another PHY without the CPU involved, and even if the CPU is in reset. For cases like board 1 ETH2 to board 2 ETH1 with 4 wire pairs this works fine. But when only two wire pairs are available no link is established.
My expectation is that as soon as the system is powered up, while the CPU is still in reset- board 1 ETH4 and board 2 ETH3 establish a 100Mbit/s link- board 1 ETH3 and board 2 ETH2 establish a 100Mbit/s link- board 1 ETH2 and board 2 ETH1 establish a 1Gbit/s link
Why is it that only the 1Gbit/s link is established?
In reply to Ferdinand Grossmann:
To achieve 1G link, regardless of type of MII interface being used all 4 pairs of MDI must be used. With 2 pairs you can establish 100M/10M links.
Your expectation aligns with my thoughts on this.
However, auto-negotiation is defined to work on channels A & B of an Ethernet PHY. This is why you see that they link up at 1G, only to immediately have the link drop.
Your options are to either disable the 1G advertisement on the CFG1 register, force speed to 100M or to enable speed optimization on CFG2 register (the latter is more of a debug feature). All three options will require register programming.
I have printed out the register map from the datasheet for the PHY and there it says the default for SPEED_OPT_EN is 1.However, when I look at the newer datasheet version (I printed the one from October 2015) it says the default is 0. There is no notice on this in the revision history, though.
Could you please confirm what the default value for this bit is and if it has been changed in the datasheet update the revision history to include the info?
This is recorded in the revision history as "Changed default of bit 9 from '1' to '0' in Table 28".
The default value of SPEED_OPT_EN is 0.
Please let me know if the suggestions I've given above resolved your issue.
sorry, my mistake - I didn't catch the entry in the revision history.
Since I looked at the old version of the datasheet I always assumed that the speed optimization was enabled by default. But it isn't, and what I see is in accordance with the datasheet.That was what caused my confusion.
Now it's become clear and the I see the issue as resolved.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.