现在在调C6670的网口通信,一直不通,serdes配置正确,SGMII的status寄存器的link up在配置serdes之后是置1的,说明已连接,但在配置SGMII为AutoNogation、slave模式后,link up变0,程序进入死循环,并且SGMII的link partner advertise ablitily寄存器一直是0,读不回phy的信息。代码是开发板的程序,已反复确认过phy相关电路、电阻、电容,与开发板配置一样。另外通过MDIO读取了phy的一些寄存器,感觉没太大问题。
请问有可能是哪的问题?另外serdes0和serdes1是否完全相同,连接哪个都行吗?serdes连线时差分对的电容靠近tx,而不是rx有无太大的问题?
急等回复,谢谢!
Zhan Xiang:
你serdes锁相环的配置是怎样的,建议将锁相环倍频到2.5G通过linkrate将速率配置到1.25G再试试。另外可以试试用phy当master来协商。
serdes0和serdes1应该是相同的,没有区别。布线时,ac耦合电容最好靠近rx端,如果怀疑信号质量,可以测试下眼图。
Tina Sun:
hello, ji wang
我也遇到了相同的问题,请问该问题您目前解决了吗?如何解决的?希望分享您的经验,谢谢!