3. 工业以太网物理层与Sitara PHY配置
工业以太网能否稳定运行,往往不取决于协议栈写得多漂亮,而取决于物理层是否“干净、可靠、可诊断”。在 TI Sitara(如 AM64x/AM243x、AM335x 等)平台上,MAC 与 PHY 之间的接口、PHY 寄存器的正确配置、链路诊断手段以及 EMC 防护设计,共同决定了 100BASE-TX/1000BASE-T 链路在电磁噪声、长线缆、宽温环境下的可用性。本节围绕“接口—配置—诊断—防护”这条主线展开,重点讲清楚实际工程中该看哪些寄存器、该测哪些点、该怎样判断链路是否真正健康。
一、100BASE-TX 与 1000BASE-T 的物理层差异
100BASE-TX 使用一对差分线发送、一对差分线接收,采用 4B/5B 编码加 MLT-3 线路编码,符号率 125 MBd,占用 1 对收发通道,对线缆类别要求为 Cat5 及以上。1000BASE-T 则在同一根 4 对双绞线上同时双向传输,采用 8B/10B 加 PAM-5 编码,符号率 125 MBd,每对线承载 250 Mbps,通过回声消除与串扰抵消实现全双工。这意味着千兆链路对连接器、线序、回波损耗和共模抑制的要求显著更高。
在 Sitara 平台上,MAC 侧通常提供 RGMII 或 SGMII 接口。RGMII 是 4 位数据、双沿采样(DDR)的并行接口,1000 Mbps 时时钟 125 MHz,100 Mbps 时 25 MHz;SGMII 是 1.25 Gbps 串行接口,常与支持 SerDes 的 PHY 或光模块配合。选择哪种接口,取决于 PHY 型号、板级走线长度和是否需要光纤/背板连接。
二、RGMII 与 SGMII 接口的工程选择
RGMII 的优势是引脚少、成本低、无需 SerDes,适合板内 MAC 与 PHY 距离较近(通常小于 10 cm)的场景。但它对时序敏感:TX_CTL 与 TXD 在时钟双沿采样,若走线延时不一致,会出现建立/保持违例。DP83867 等 PHY 提供 RGMII 内部延时(TX Delay / RX Delay)配置,可通过寄存器 0x32 的 bit4/bit3 使能,从而省去外部延时线或 PCB 蛇形走线。实际调试时,若出现丢包但链路显示 Up,应优先检查 RGMII 延时是否与 MAC 侧采样方式匹配。
SGMII 使用 1.25 Gbps 串行差分对,适合背板、光模块或长距离连接。Sitara 的 CPSW/ICSSG 在 SGMII 模式下需要正确配置 SerDes 参考时钟、均衡和预加重。SGMII 自协商通过 8B/10B 码流中的配置字交换速率与双工信息,若 PHY 与 MAC 的 AN 使能不一致,会出现链路无法建立或速率降级。
三、PHY 寄存器配置的实际操作
在 Linux 下,可通过 mdio-tools 或 ethtool 访问 PHY 寄存器。以下示例读取 DP83867 的 PHYSTS(0x10)判断当前链路状态:
# 读取 PHY 地址 0 的寄存器 0x10
mdio-read /dev/mdio0 0 0x10
# 返回示例:0x796D
# bit[5:4]=10 表示 1000M,bit[3]=1 表示全双工
# bit[2]=1 表示链路 Up,bit[1]=0 表示未自协商完成
# 使能 RGMII RX 内部延时(寄存器 0x32 bit4)
mdio-write /dev/mdio0 0 0x32 0x0010
配置顺序建议为:先复位 PHY(BMCR bit15),等待自协商完成(BMSR bit5),再读取 PHYSTS 确认速率与双工,最后根据 MAC 侧采样方式设置 RGMII 延时。若使用固定速率而非自协商,需同时设置 BMCR bit13(速率)和 bit8(双工),并关闭 bit12(AN 使能),否则会出现两端速率不一致导致的持续丢包。
四、链路诊断:从寄存器到线缆
链路诊断分三个层次。第一层是寄存器状态:BMSR bit2 表示 Link Up,bit5 表示 AN Complete;PHYSTS 给出实际协商结果。第二层是 TDR(时域反射)线缆诊断,DP83867 支持通过寄存器 0x1E 启动 TDR,结果给出各对线的开路/短路状态及故障距离(单位约 0.8 m/步)。第三层是信号质量:用示波器测差分眼图,或用网络分析仪测回波损耗,判断是否满足 IEEE 802.3 模板。
一个常见排障场景:链路显示 1000M 全双工,但大流量下丢包。此时应检查 RGMII 延时是否匹配、变压器中心抽头去耦是否充分、差分对是否等长。若 TDR 报告某对线阻抗异常,则优先检查连接器和线缆。
五、EMC 与工业防护设计要点
工业现场的 EMC 威胁包括 ESD、EFT、浪涌和共模噪声。防护设计应遵循“先泄放、再滤波、后隔离”的顺序:RJ45 入口处放置 TVS 阵列,钳位电压需低于 PHY 绝对最大额定值,结电容应小于 3 pF 以免影响千兆信号;变压器提供 1.5 kV 以上隔离,中心抽头通过 75Ω 电阻加 1000 pF 电容到机壳地,形成 Bob Smith 端接,抑制共模噪声;差分对走线保持 100Ω 差分阻抗,长度匹配误差控制在 5 mil 以内,远离时钟和开关电源。
此外,PHY 的电源去耦应使用 0.1 μF 与 10 μF 组合,尽量靠近引脚;MDIO/MDC 走线避免与差分对平行;若使用屏蔽线缆,屏蔽层应在连接器侧单点接地,避免形成地环路。对于宽温工业场景,还需关注 PHY 晶振的频率稳定度(通常 ±50 ppm 以内)和变压器的工作温度范围。