以太网布线之差分对

我们知道,以太网PHY需要通过以太网变压器,RJ45接口与外部设备进行连接,PHY与以太网变压器之间的接口称为MDI接口,也就是介质相关接口(这与MII是相对的)。百兆以太网模式下,MDI是2对差分线,千兆模式下是4对差分线。在部分PHY芯片的Datasheet或者应用手册中会给出MII/RMM/GMII/RGMII接口,MDI接口的等长规则,但是很少有厂家提到以太网变压器与RJ45之间的差分对等长规则。

在早期的产品设计中,无需特殊关照,RJ45与以太网变压器之间的差分对长度彼此相差不多,但是在近期的几款产品设计中,需要进行以太网防浪涌设计,导致差分对长度相差很多。由于对这部分等长规则不确定,也没有相应的资料可供参考,本人尝试过等长与不等长两种情况。

RJ45–以太网变压器差分对等长

下图中的PCb走线,如果左侧的差分对不进行蛇形走线,那么这两条差分线长度会相差很多。于是,为了不出问题,本人故意使两对差分线长度一致。细心的读者可能已经发现了,走线上出现了过孔,这是千兆以太网PCB走线的大忌之一,但是面对贴装的RJ45接口,就只能这样了。

MDI-Equal-Length RJ45–以太网变压器差分对不等长

再看下面的这张图,很容易看出,以太网变压器与RJ45之间的4对差分线一定不等长,当然,差分对内的两条线还是做了等长处理。

MDI-Not-Equal-Length 以上的两个案例都是本人亲自设计的,使用iperf进行以太网吞吐量测试(我没有条件使用SmartBits),结果如下:

Item

CPU内核

CPU占用率

吞吐量

等长

MIPS 74Kc

99%

340Mbps

不等长

PowerPC e500

36.5%

940Mbps

可想而知,如果不是受到CPU处理能力的影响,RJ45–以太网变压器之间的差分对等长与否不影响实际的吞吐量。当然,从这个表格中,可以明显看出PowerPC超强的网络处理能力,36.5%的CPU占用率只用到了一个核,另外一个核完全空闲。

今天在论坛上看了一下,比较靠谱的说法是这样的:

这4对MDI信号不需要做等长处理。为保险起见需要确认你的PHY是否具有差分对之间数据的自动对齐功能,以及PHY的FIFO有多深。

现在基本上可以确定,RJ45与以太网变压器之间的差分对不需要做等长处理。

8 thoughts on “以太网布线之差分对

  1. 前辈你好:
    看到前辈的文章,受益匪浅。我是个初学者,好多基础问题不太懂,请问大侠我看你在100M时的,从物理层芯片到RJ45的引脚,分别将RD+,RD-.和TD+,TD-.做的等长,这个等长的误差大概多少MIL合适呢?我看你DDR2的用的是25MIL的,请问这个等长要控制到多少呢?谢谢前辈。

    1. 以太网口Layout最重要的就是每组差分线对中的两条线等长,我一般控制为2mil,但实际上百兆以太网情况对等长很不敏感。

  2. 啊,需要这么精确的呢。谢谢前辈,我的是四层板,我给控制到100Mil的误差了,每对实际走线都差70多mil,这下麻烦了。我用个短线试验是可以自适应到100M的,还没有试过长线的。估计在有个干扰就乱了。

    1. 这是我的个人习惯而已,差分线一视同仁,都按+/- 2mil控制。我在早期的PCB设计中也是不太注意差分线等长的,似乎也没出过什么问题,但没有进行过仪器测试。

  3. 您好:
    如果交换机出来网线到RJ45_1—–PCB上做延长—–RJ45_2再接入网络变压器,
    这种情况下,PCB上做延长处理是要注意哪些问题?差分对,等长,线径要求吗?谢谢!

    1. 一组差分线的两条线之间等长很重要,误差我一般控制在2mil之内;四组差分线能做等长就做等长,至少没有坏处;如果不是PoE供电的话,线径其实不敏感。

发表评论