• 正文
    • ? MDIO信號反射導致網(wǎng)絡卡死分析
  • 相關推薦
申請入駐 產(chǎn)業(yè)圖譜

ZLG嵌入式筆記(連載11) | 為什么你的網(wǎng)卡工作會不正常?(中)

2024/12/25
1181
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

導讀

網(wǎng)絡故障困擾重重?本文聚焦客戶網(wǎng)卡故障的兩種特殊情形:低溫運行與信號干擾下的網(wǎng)絡卡死。看似簡單卻歷經(jīng)波折的解決過程,帶你深入剖析排查中陷入的誤區(qū)。

? MDIO信號反射導致網(wǎng)絡卡死分析

客戶反饋網(wǎng)卡故障表現(xiàn)有兩種情形:在低溫情況下運行一段時間后,容易出現(xiàn)網(wǎng)絡卡死,必須重啟才能恢復;外界稍微有點信號干擾就有可能引起網(wǎng)絡卡死。

問題的解決方法看似很簡單,但解決過程卻頗費周章,花費了很多的精力。排查出原因是MDIO的時鐘信號在低溫情況振鈴增強或受到干擾時,信號產(chǎn)生毛刺,導致寄存器被寫入了錯誤的值,PHY進入了異常狀態(tài)無法工作。最終解決的方法是在MDC信號靠近源端串聯(lián)22歐電阻。下面進行分析。

首先問題的現(xiàn)象是低溫工作一段時間后出現(xiàn),雙網(wǎng)口的板卡只有其中一個網(wǎng)口會出現(xiàn)該問題,且網(wǎng)絡一旦卡死,必須重啟才能恢復,所以開始認為是走線問題或電源問題誘發(fā)的MAC或PHY卡死。

另一個陷阱是PHY寄存器有兩部分,由于MDIO協(xié)議定義的register address位寬為5bit,對PHY來說是不夠用的,所以原廠將其分成了一般寄存器和擴展寄存器兩部分。

以裕泰微的YT8531為例,通過一般寄存器的0x1E和0x1F間接地讀寫擴展寄存器,地址大于0x1F的寄存器都需要通過0x1E和0x1F作為入口,參考圖1。初次檢查寄存器的時候只讀出了一般寄存器的值,檢查對比異常時和正常時沒有區(qū)別就認為寄存器沒有問題了。后期又仔細核對發(fā)現(xiàn)出問題在擴展寄存器,才又將調試方向糾正過來。測試MDIO波形發(fā)現(xiàn)原本應該只在初始化過程中配置好的地址,正常通信過程中也在不停的覆寫,最終在反復的“嘗試”后,終于等到MDC毛刺,成功將錯誤值寫入了寄存器。最終也通過示波器測到了MDC上的毛刺,測量得到的波形如圖2所示。

圖1 YT8531擴展寄存器入口

圖1 示波器協(xié)議解析功能測量MDIO波形

MDIO是以太網(wǎng)電路中十分重要的部分,配置模式、調整性能都離不開MDIO,很多以太網(wǎng)故障都與MDIO有關。MDIO協(xié)議規(guī)定是可以多個網(wǎng)口使用同一個總線的,PHY芯片基本也都留有設置PHY地址的上下拉電阻,但很多主控芯片原廠還是會不建議一對多的設計。MDIO看似和I2C很像,但實際還是與I2C有很大區(qū)別,它的協(xié)議時序不同,速率也比I2C高很多,沒有應答位,所以MDIO的上拉電阻不能用阻值太小的,信號走線也需要注意抗干擾阻抗匹配

關注我們,下期繼續(xù)講解:以太網(wǎng)Link Down問題排查題排查及其他容易忽略的問題。

AM335x升級之選

2路千兆以太網(wǎng)

3路CAN FD

支持GPMC

參考價格:319元起

致遠電子

致遠電子

廣州致遠電子股份有限公司成立于2001年,注冊資金5000萬元,國家級高新技術認證企業(yè),廣州市高端工控測量儀器工程技術研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。

廣州致遠電子股份有限公司成立于2001年,注冊資金5000萬元,國家級高新技術認證企業(yè),廣州市高端工控測量儀器工程技術研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。收起

查看更多

相關推薦