在當前的嵌入式系統設計趨勢中,MAC功能普遍被整合至CPU內核,形成一種高度集成的網絡功能模塊。與此同時,PHY芯片作為獨立器件,專注于應對物理層錯綜復雜的電氣特性和信號轉換需求。為了確保PHY芯片能夠在所需的各種網絡模式和參數設定下精確運作,業界廣泛采用了MDIO(Management Data Input/Output)管理總線進行配置和調控。通過MDIO總線接口,開發工程師能夠深入訪問并靈活調整PHY芯片內部的寄存器設置,進而實現實時的自適應速率調整、全雙工與半雙工模式切換等多種關鍵功能。
針對ELF 1開發板的具體架構,其PHY芯片與內置MAC控制器間的數據傳輸互動是借助RMII(Reduced Media Independent Interface)高效接口技術來完成的。RMII標準因其精簡的引腳數量和高效的傳輸速率,顯著減少了電路板布局的復雜度,節約了系統硬件資源,并提升了以太網數據的傳輸速度。得益于這一接口技術,ELF 1開發板成功地實現了從物理層到數據鏈路層的平滑過渡和完美融合,從而有力支持了基于TCP/IP協議棧的各類應用程序在嵌入式環境中的穩定高效運行。
了解MDIO總線
MDC是開漏(OD)輸出,只能輸出低電平,因此需要上拉處理,為MDIO提供時鐘信號;MDIO管理接口數據傳輸格式及含義如下表所示:

需要注意的是,TA在讀操作和寫操作兩種狀態下數據位不同,TA是介于寄存器地址和寄存器數據之間的2個bit位,用來轉換數據傳輸方向。讀操作時,地址傳輸和數據傳輸控制方不同,設置2bit TA的目的就是為了防止MDIO總線上產生競爭。TA的第1位z,PHY和MAC均釋放總線控制輸出高阻,且后面MAC一直保持高阻態狀態,第2位0由PHY提供。第2位相當于一個應答信號,如果第2位為高電平,PHY無應答。除此之外,Idle為空閑狀態,此時MDIO無源驅動,處高阻狀態,但一般用上拉電阻使其處在高電平。

關于網絡信號模式
常見網絡信號模式包含:MII、RMII、GMII、RGMII、SGMII。每種模式包含的信號線數量和控制線數量各不相同,通訊速度也不相同:MII、RMII為百兆網絡,GMII、RGMII、SGMII為千兆網絡,區別和關系參考表以下圖表。

網絡變壓器
ELF 1開發板使用的RJ45內部集成了網絡變壓器,其4、5腳位中心抽頭引腳,該引腳有兩種接法:電流型,中心抽頭直接接電源;電壓型,中心抽頭通過100nF電容接地(ELF 1開發板的接法,引腳4、5接100nF電容C87和C88)。實際使用中需要如何處理中心抽頭需要根據PHY芯片的驅動類型確定。
PHY芯片電路原理說明
ELF 1開發板最多支持兩路百兆網口,底板和擴展板上各一路。開發板使用兩個KSZ8081RNB型號的PHY芯片實現網絡通信,KSZ8081RNB是通過MDIO總線掛載到EL開發板上,MDIO總線對應芯片的11、12引腳主要負責通過配置PHY芯片KSZ8081RNB的寄存器控制PHY芯片的網口速率、網口雙工模式、自協商使能等功能。KSZ8081RNB的數據接口是通過RMII和開發板連接,并傳輸網絡數據的。
ENET_PHYAD0、ENET_PHYAD1和ENET_RXD1在芯片上電復位時會鎖存一個電平狀態作為芯片的PHY地址,在芯片上電后,其數據被鎖存到相應寄存器中,而后恢復芯片的默認功能,不會影響通信。由于該款芯片有三條地址線,因此理論上同一塊板卡最多可以掛載7顆(001—111。000作為廣播地址,是不可以被使用的)。
ENET_CRS_DV、ENET_CFG1、ENET_CFG0是芯片接口模式選擇, ELF 1開發板設置為100。


網口電路設計指南
(1)ELF 1開發板可支持兩路百兆網。
(2)設計網口電路時8081的10號引腳必須連接6.49K_%1精度的電阻,否則可能會影響網口正常工作出現芯片無法掛載、網口不Link等問題。
(3)MDIO以及RMII接口的引腳要注意電平匹配,核心板為3.3V電平。
(4)MDIO總線上需要加上拉電阻,阻值可以根據實際情況調整。
網口PCB設計指南
(1)MDIO總線上掛載多個PHY芯片時,使用串聯方式,不要分叉布線。
(2)RGMII接口分為發送信號,接收信號和控制信號,各組阻抗控制在50Ω±10%。
(3)發送信號和接收信號,布線長度不超過100mm,組內信號長度誤差不超過2.54mm。
(4)時鐘預留對地電容,方便后期調試。
(5)MDI接口采用差分布線,阻抗100Ω±10%。
(6)MDI組內差分誤差不超過0.12mm。
(7)芯片內部DCDC連接的功率電感要靠近芯片保證回路最短,并且保證地回路的完整。
(8)數據線上預留的串聯電阻需要靠近源端放置。
(9)保護器件建議放置在變壓器內側,在變壓器和PHY之間,靠近變壓器。
(10)供電部分要考慮電流的大小,線寬盡量寬一點。要有足夠的載流能力,濾波電容的位置盡量靠近芯片。
(11)網口 RJ45 在布線時要注意進行隔離地。
網口問題排查思路
在遇到網口問題時排查網口問題首先要明確問題點,網口不通的情況下首先要看 PHY 有沒有成功掛載上,可通過是否可以啟動網卡來判斷,如果根本看不到設備節點或者在輸入啟動網卡的命令后報錯,找不到 PHY 芯片說明 PHY 芯片沒有成功掛載。如果可以正常啟動網卡說明 PHY 可以成功掛載。
如果 PHY 沒掛載上排查思路如下:
(1)首先看是否有缺件、少件,原件焊接錯誤的情況,PHY 芯片焊接是否過關等。
(2)檢查各路供電是否正常,電源是否穩定,是否有明顯壓降、跌坑現象。濾波電容容量是否達標。
(3)檢查復位電路是否有復位動作,復位后是否可以正常抬起復位信號,復位信號低電平的維持時間是否滿足 PHY 的要求。
(4)檢查芯片的時鐘頻率、幅值、以及信號質量是否滿足手冊要求。不同類型的時鐘輸入方式原理是否正確。
(5)檢查 PHY 芯片的地址、模式、電平配置等參數設置的上下拉電阻是否正常。
(6)檢查 MDIO 總線的波形幅值、斜率、是否正常,振鈴是否嚴重,是否有下降沿壓降不到0的現象,在 MDC 的上升沿來臨時 MDIO 的電平維持時間是否滿足硬件資料里網口芯片手冊要求等問題。
先將芯片成功掛載后再看網口通不通。如果經過以上檢測排查成功將 PHY 芯片掛載但是網口還是不通,那就需要繼續檢查數據接口部分。根據不同接口的規定來對數據接口的總線進行檢查。
(1)按照具體的接口形式檢查數據線連接是否正確,在使用MII,RMII,GMII,RGMII時的線序,檢查參考時鐘波形是否正常。
(2)檢查網絡變壓器的中心抽頭的接法是否與PHY 規定的網絡變壓器的驅動類型相對應。
以上就是對ELF 1開發板網口組件中的幾個核心概念做了講解。然而,“實踐出真知”,我們誠摯建議各位小伙伴在理論學習之余,更要親自進行實踐操作,如測試、故障排查等,以便深入理解和掌握網口模塊的內在機制。唯有親手實踐,才能使知識領悟更為深刻全面。
倘若在嵌入式學習探索過程中遇到任何疑問或難題,歡迎各位小伙伴與ElfBoard的技術支持團隊進溝通交流。我們堅信,通過共同探討與分享,定能助力您的嵌入式學習之路更上一層樓,一同見證彼此的進步與發展。
-
嵌入式
+關注
關注
5147文章
19627瀏覽量
316722 -
Linux
+關注
關注
87文章
11506瀏覽量
213436 -
開發板
+關注
關注
25文章
5647瀏覽量
104003
發布評論請先 登錄
ELF 1技術貼|開發板底板電源電路講解

ElfBoard技術貼|如何在NXP源碼基礎上適配ELF 1開發板的UART功能

ElfBoard技術貼|ELF 1開發板適配攝像頭詳解

鴻蒙官方開發板功能講解

關于ELF1/ELF1S開發板的音頻接口,你需要知道的都在這!

ELF 1技術貼|在NXP源碼基礎上適配ELF 1開發板的LED功能

學習筆記分享|使用C庫函數控制ELF 1開發板的LED

ELF 1技術貼|如何將Python3.6.9移植到開發板上

ELF技術貼|如何在開發板上實現對Java的支持

ElfBoard技術貼|在NXP源碼基礎上適配ELF 1開發板的按鍵功能

ElfBoard技術貼|如何在ELF 1開發板上搭建流媒體服務器

ElfBoard技術貼|如何在ELF 1開發板上交叉移植Qt

評論