ZHCAEL2 October 2024 AM3351 , AM3352 , AM3354 , AM3356 , AM3357 , AM3358 , AM3359 , AM4372 , AM4376 , AM4377 , AM4378 , AM4379 , AM620-Q1 , AM623 , AM625 , AM625-Q1 , AM62A1-Q1 , AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM62P , AM6411 , AM6412 , AM6421 , AM6422 , AM6441 , AM6442
在兩個鏈路伙伴之間建立以太網鏈路后,即可跟蹤數(shù)據包從 DUT 發(fā)送到鏈路伙伴,然后從鏈路伙伴發(fā)送回 DUT 的步驟。僅當在鏈路兩端都可以訪問以太網 MAC 統(tǒng)計信息的情況下才有效。如果網絡拓撲包含直接連接(如圖 3-1 所示),還可以進一步簡化。
如節(jié) 8 中所述,無需設置 IP 地址即可啟動網絡通信。如果在 DUT 上使用 TI 默認文件系統(tǒng),則會在檢測到鏈路后嘗試獲取 IP 地址。此網絡通信足以跟蹤是否成功接收到從 DUT 發(fā)送到鏈路伙伴的數(shù)據包。來自鏈路伙伴的廣播數(shù)據包足以證明在 DUT 上未接收到損壞的數(shù)據包。
在 DUT 和鏈路伙伴之間連接以太網電纜之前,請使用 ethtool 驗證以太網 MAC 統(tǒng)計信息中的 RX 和 TX 計數(shù)器是否為 0。建議在鏈路伙伴平臺上使用 Linux? 操作系統(tǒng) (OS)。這個平臺可以是另一個正常工作的 EVM 或 Ubuntu PC。ethtool 僅適用于運行 Linux 操作系統(tǒng)的平臺。
如圖 9-1 所示,首先檢查鏈路伙伴是否接收到從 DUT 發(fā)送的數(shù)據包,方法是在鏈路伙伴上使用 ethtool 并檢查 RX 計數(shù)器。如果鏈路伙伴未運行于 Linux 操作系統(tǒng)上,則 ethtool 不可用。RX 計數(shù)器可以顯示接收到多少個正常幀,更重要的是接收到多少個損壞的幀。如果接收到的數(shù)據包沒有錯誤,則表示 DUT 發(fā)送路徑可以正常工作。如果鏈路伙伴上的 RX 錯誤計數(shù)器為非零值(例如,RX CRC 錯誤),則可以得出結論:DUT 的發(fā)送路徑存在問題,需要進行調查。
作為接收方的鏈路伙伴通常可以觀察到兩個問題:未接收到數(shù)據包或 CRC 錯誤。如果鏈路伙伴未接收到任何數(shù)據包,則表明從 DUT 發(fā)出的以太網幀受到了損壞,以至于 MAC 接口無法識別該幀。當未檢測到數(shù)據包或檢測到 CRC 錯誤時,需要更仔細地檢查 DUT 上的 MAC 或 PHY 連接。
調試建議:
分析 DUT 接收路徑與分析 DUT 發(fā)送路徑的方式類似。觀察 圖 9-2 中的接收數(shù)據包計數(shù)和可能發(fā)生的一些錯誤。如前文所述,當錯誤計數(shù)器為零并且接收到的正常幀計數(shù)增加時,表示接收路徑工作正常。在此層級,數(shù)據包的類型無關緊要,只接收數(shù)據包而不檢測錯誤數(shù)據包。
當以太網 MAC 接收錯誤計數(shù)器不為零時,通常有兩種可能的原因。最常見的原因是 PHY 接口模式為 RGMII 時的 RX 時鐘時序不正確。第二常見的原因是硬件問題,例如不正確的內聯(lián)電阻值或電路板布局布線問題。
如果分析 DUT 發(fā)送和接收路徑的錯誤計數(shù)器為零,則表示基本以太網數(shù)據包的發(fā)送和接收沒有錯誤。此時,可以添加 DHCP 服務器來為 DUT 動態(tài)分配 IP 地址,也可以在 DUT 上使用 ip addr add <ip address/subnet mask> dev <interface name> 來分配靜態(tài) IP 地址。但是,執(zhí)行此步驟后,如果在檢測到鏈路正常時仍然沒有分配 IP 地址,并且以太網 MAC 統(tǒng)計信息沒有顯示任何錯誤,那么下一步是考慮可能存在網絡原因。請查看節(jié) 10中的網絡問題示例。
章節(jié)摘要: