3、EtherCAT物理层标准:100BASE-TX电气特性、MII接口信号完整性、PHY芯片选型要点

好,咱们进入第三讲。这一讲要啃的,是EtherCAT物理层的硬骨头。说白了,就是信号怎么从芯片里跑出来,经过网线,再到下一个站点的过程。很多工程师觉得协议栈难,其实我告诉你,物理层要是没整明白,现场跑起来全是坑。

我个人习惯,做EtherCAT项目,第一步不是调软件,而是先把PHY芯片和变压器这块的电路原理图过一遍。为什么?因为物理层一旦出问题,你查错的时间成本是最高的。示波器一挂,波形乱跳,你都不知道是干扰还是芯片本身没配好。

3.1 100BASE-TX电气特性:别小看那两根差分线

EtherCAT物理层用的是100BASE-TX标准,也就是百兆以太网。它的电气特性,我总结三个关键词:差分、共模、隔离。

  • 差分信号:TX+和TX-是一对,RX+和RX-是一对。电压摆幅典型值是±1V,峰峰值2V。我在项目中遇到过,有人把差分线画成了等长但没等距,结果信号反射严重,丢包率直接飙到5%。
  • 共模电压:正常工作时,差分线上的共模电压大约在1.7V到2.2V之间。如果测出来偏差太大,先查PHY芯片的偏置电阻。
  • 隔离要求:100BASE-TX要求变压器隔离,耐压至少1500Vrms。嗯,这里要注意,有些低成本方案用网络变压器省了共模扼流圈,现场一打雷就挂。

关键参数速查表

参数最小值典型值最大值单位
差分输出电压±0.95±1.0±1.05V
上升/下降时间3.04.05.0ns
时钟抖动-0.71.4ns
共模电压1.51.82.2V

你想想看,为什么EtherCAT能跑在100Mbps,而有些现场总线只能跑几M?说白了,就是差分信号抗共模干扰的能力强。但前提是,你的PCB走线得规矩。

3.2 MII接口信号完整性:PHY和MAC之间的生命线

MII(Media Independent Interface)是PHY芯片和MAC控制器之间的接口。EtherCAT从站控制器(ESC)通常集成了MAC,所以MII就是ESC和PHY之间的桥梁。

MII接口的信号,我列一下关键线:

  • TXD[3:0]:发送数据,4位并行
  • RXD[3:0]:接收数据,4位并行
  • TX_CLK:发送时钟,25MHz
  • RX_CLK:接收时钟,25MHz
  • TX_EN:发送使能
  • RX_DV:接收数据有效
  • CRS:载波侦听(半双工用,全双工可忽略)

我曾经在一个项目里,MII走线长度差了30mm,结果25MHz时钟的边沿对齐出了问题。数据采样时,时钟沿刚好落在数据跳变的位置,导致误码率居高不下。后来我把所有MII信号都做了等长处理,控制在±5mm以内,问题才解决。

我的经验:MII接口的走线,建议遵循以下原则:

  1. 所有信号线走同一层,避免过孔引入阻抗不连续
  2. TX_CLK和RX_CLK分别包地,两侧加地孔
  3. 数据线长度匹配,误差不超过10mm
  4. 串联22Ω或33Ω电阻,靠近发送端放置

还有一个容易忽略的点:MII接口的电压域。PHY芯片的MII接口通常是3.3V,但有些ESC是1.8V或2.5V。电平不匹配的话,需要加电平转换芯片。我见过有人直接硬连,结果PHY芯片烧了。

3.3 PHY芯片选型要点:别只看价格

PHY芯片选型,是EtherCAT硬件设计里最容易被低估的一环。很多人觉得,随便找个百兆PHY就能用。其实不然。EtherCAT对PHY有特殊要求,尤其是延迟和同步。

我总结几个选型要点:

  • 延迟要低:EtherCAT的从站转发延迟要求小于1μs。普通PHY的延迟可能在200-400ns,但有些工业级PHY能做到100ns以内。我推荐使用TI的DP83822或Microchip的LAN8720A,实测延迟都在150ns以下。
  • 支持MII接口:虽然有些PHY支持RMII(减少引脚数),但EtherCAT从站控制器通常只支持MII。选型时确认一下。
  • 工业温度范围:-40°C到+85°C是底线。如果现场环境恶劣,建议选-40°C到+105°C的型号。
  • 内置ESD保护:PHY芯片的差分引脚直接连到RJ45,容易受到静电放电影响。选型时看数据手册的ESD等级,至少±8kV接触放电。

避坑指南:我曾经在一个项目中选了某款消费级PHY,价格确实便宜,但现场一上电,只要旁边有变频器启动,EtherCAT就断线。后来换成工业级PHY,问题消失。省那几块钱,后面调试成本翻十倍。

另外,PHY芯片的配置方式也很重要。有些PHY通过硬件引脚配置,有些通过MDIO/MDC寄存器配置。我个人习惯用硬件引脚配置,因为上电即用,不需要软件干预。但如果你需要动态调整PHY参数(比如翻转极性、调整输出幅度),那就得用MDIO。

最后提一句,PHY芯片的电源去耦。PHY是模拟和数字混合芯片,对电源噪声敏感。我建议每个电源引脚放一个100nF电容,再在芯片附近放一个10μF钽电容。布局时,电容尽量靠近引脚,走线要短粗。

好了,这一讲的内容就这些。下一讲我们聊聊EtherCAT数据链路层的帧结构,那个才是协议的核心。