☰
千兆以太网PHY硬件设计:RGMII/SGMII、电源时钟与PCB布局要点
2026/10/7 3:26:32 网站建设 项目流程

1. 千兆以太网PHY到底在做什么,硬件设计为什么要提前想清楚

1000兆以太网PHY的硬件设计,说白了一句话:让 MAC 送出来的并行数字信号,经过编码、串化、驱动、隔离、变换,最终可靠地跑到网线上,再原样从网线上收回来。这中间任何一环掉链子,表现可能是链路协商不上、1000M 降到 100M、跑大流量丢包、长时间老化偶发误码。做过几块板子的朋友大概都有体会,PHY 这东西不像 DDR 那样对布线苛刻到变态,但它对电源、时钟、参考平面、端接、防护的“综合素质”要求很高,属于那种你不重视它就阴魂不散的类型。

我自己带过好几个千兆网口项目,从工控板卡到消费级路由,也踩过不少弯路。有块板子量产前测试一切正常,客户拿去用了三个月开始批退,最后定位到是变压器中心抽头的去耦电容选型太激进,纹波在高温下恶化导致链路间歇性断开。这类问题,原理图上看不出来,仿真也未必能复现,只能靠对 PHY 工作机制的理解去反推。所以这篇内容想聊的不是“照着手册抄一遍”,而是把千兆以太网 PHY 硬件设计里那些真正容易翻车的点,一个一个小节拆开讲清楚。

适合谁看?如果你正在做一块带千兆网口的板子,手上有 MAC(可以是 MCU、FPGA、SoC 或者专用交换芯片),外部挂一颗 PHY,那这篇基本就是你要的。如果你还在纠结百兆和千兆怎么选、国产 PHY 芯片能不能用、FPGA 的 SGMII IP 核怎么配,后面的章节也会给到具体思路。我会尽量用从业者之间交流的口吻,把“为什么这么设计”讲透,而不是只丢一堆参数出来。


2. 千兆以太网 PHY 的整体架构与选型思路

2.1 从 MAC 到 PHY 再到网线,信号链路全景

先把整条链路捋一遍,后面所有设计动作都能对应到某个环节。一颗典型的千兆 PHY,内部大致分成这么几块:数字侧接口(接 MAC)、PCS/PMA 层、模拟前端(AFE)、线路驱动与接收、时钟管理。MAC 侧通常用 RGMII 或 SGMII 跟 PHY 对接;PHY 内部把 8bit 数据做 8B/10B 编码、加扰、串化成四对差分信号;再经过变压器和 RJ45,通过网线跟对端通信。

这里有几个关键概念值得先建立起来。1000BASE-T 用的是四对双绞线,每对线同时做双向收发,靠的是回声消除和自适应均衡。也就是说,PHY 的模拟前端要在同一对线上一边发一边收,把发出去的信号从接收信号里“减掉”,这对模拟电路的要求很高。正因为如此,PHY 对电源噪声、时钟抖动、参考地质量异常敏感——你稍微给它点脏电源,回声消除的精度就下降,误码随之而来。

从硬件设计角度看,我们真正能控制的就是这几个边界:MAC 到 PHY 的接口(RGMII/SGMII)、PHY 的供电与去耦、时钟源质量、复位时序、PHY 到变压器的差分走线、变压器与 RJ45 的选择、防护与端接。每一块都独立,但互相影响。选型阶段如果没想清楚,比如选了一颗只有 RGMII 但没做内部延迟的 PHY,后期布线就要额外补偿时钟,麻烦事就来了。

2.2 芯片选型时我重点看的几个硬指标

选 PHY,别只看价格和封装。我一般会按这几条优先级来筛:接口类型、内部延迟支持、电源域数量、时钟方案、封装与散热、参考设计成熟度、供货与替代性。

接口类型决定了你 MAC 侧的负担。RGMII 走的是 4bit 数据 + 控制 + 时钟,引脚少、成本低,但 1Gbps 下 125MHz 双沿采样,时序紧张,PCB 上要严格等长,还要处理 TX/RX 时钟延迟。SGMII 走的是 SerDes,差分对,速率 1.25Gbps,抗干扰和走线灵活度更好,但需要 MAC 侧有 SerDes 或者 IP 核支持,FPGA 用得多。还有 QSGMII、USXGMII 这些多口或更高速的方案,端口密集的场景才会考虑。

内部延迟支持这一点特别重要。RGMII 标准里其实没规定 PHY 要不要给时钟加延迟,导致很多板子出现 MAC 侧采样窗口对不齐的问题。好的 PHY 会提供 RGMII-ID(Internal Delay)选项,通过寄存器或 strapping 引脚配置,让 TXC/RXC 相对数据有固定延迟。选型时如果不确认这一点,后期可能要靠 PCB 绕线或者调 MAC 时序来补,量产一致性很差。

电源域数量直接影响 BOM 和布线复杂度。有的 PHY 核心 1.0V、IO 1.8V/2.5V/3.3V 可配、SerDes 单独 1.2V,一路都不能少;有的做了集成 LDO,外围简洁。对于成本敏感项目,我会倾向选电源域少、内置稳压的型号,但对噪声敏感的高端场景,反而愿意用独立 LDO 逐路供给。

关于国产百兆/千兆 PHY,这几年进步确实明显。选国产替代时,我会重点核对三样:寄存器兼容性(尤其是 RGMII delay 配置)、参考原理图是否完整、以及 EMC 测试有没有现成数据。有些型号 pin-to-pin 兼容但寄存器行为有差异,直接替换容易翻车,最好拿到原厂的应用笔记再动手。

提示:选型阶段一定要把“这颗 PHY 的 RGMII 是否支持内部延迟”写进选型报告,最好让供应商书面确认,别等到打板才发现。


3. MAC 与 PHY 接口设计的关键细节

3.1 RGMII 时序、延迟与走线约束

RGMII 是千兆 PHY 里最常用的 MAC 接口。它的特点是数据线 4 根(TXD[3:0]/RXD[3:0]),控制线 TX_CTL/RX_CTL,加一对收发时钟 TXC/RXC,总共 14 根信号。1Gbps 时时钟 125MHz,数据在时钟双沿传输,所以一个时钟周期传 8bit,正好对应 GMII 的 8bit 宽度。

时序上的核心矛盾在于:数据和时钟必须满足建立/保持时间。标准 RGMII 规定数据相对时钟的偏移很小,如果 PHY 和 MAC 都没有内部延迟,采样点就落在数据跳变附近,非常危险。行业里通行的做法是:要么 PHY 侧加内部延迟(RGMII-ID),要么 MAC 侧加,二者只加其一,绝不两边都加,否则偏移翻倍同样采不准。

延迟补偿的量级通常是 1.5ns 到 2ns 左右,对应到 125MHz 周期(8ns)里大约四分之一周期。这个数字不是拍脑袋来的,而是为了保证采样点落在数据眼图中心。实际调试时,我会先用示波器量 TXC 和 TXD 的相位关系,确认延迟是否生效,再决定要不要动寄存器。

PCB 走线方面,同一组数据和控制线必须等长,一般要求 ±50mil 以内,严格的板子会卡 ±25mil。TXC/RXC 时钟线要单独包地,尽量短,避免跨分割。RGMII 走线虽然速率不算特别高,但边沿快,仍然是传输线,超过一定长度就要考虑端接。经验上,超过 3000mil 的 RGMII 走线最好加串联电阻或者做阻抗匹配。

注意:RGMII 的 4 根数据线不要和时钟线分层走,尽量同层同参考平面,减少层间过孔带来的延迟差。

3.2 SGMII 与 IP 核配置模式的那些坑

如果你用的是 FPGA,SGMII 几乎是绕不开的选择。SGMII 把 GMII 的 8bit 数据串化成 1.25Gbps 的差分信号(含 8B/10B 开销,实际数据 1Gbps),一根收发差分对就搞定,走线灵活,抗干扰好。

这里有个高频踩坑点:当 SGMII IP 核与外部 PHY 芯片配合使用时,IP 核应该配置成 MAC 模式,而不是 PHY 模式。为什么?因为 FPGA 里的 IP 核在整条链路里扮演的是 MAC 的角色,它发出的是待发送的数据,外部 PHY 芯片负责把这些数据编码、串化、送到网线。如果你把 IP 核配成 PHY 模式,它就期望对端是 MAC,方向就反了,链路根本起不来,或者表现为能协商但传不了数据。

我在一个项目里就遇到过这个,当时两边的开发者都以为对方是 PHY,结果谁也没起来,查了两天才发现是 IP 核模式配反了。判断方法其实简单:看谁是“想发数据的一方”,谁就是 MAC。FPGA 想发数据,那 IP 核就是 MAC 模式;外部 PHY 芯片接网线,它就是 PHY 模式。这个逻辑理清楚,配置就不会错。

SGMII 的差分对走线,阻抗控制到 100Ω 差分,等长要求比 RGMII 严格,一般要 ±10mil 以内。交流耦合电容通常放 0.1uF,位置靠近接收端。还有一个细节:SGMII 的自协商和速率切换要靠 IP 核的寄存器配置,别指望硬件自动搞定,上电初始化流程里必须写进去。

3.3 MDIO/MDC 管理接口别当摆设

MDIO/MDC 是 MAC 读写 PHY 寄存器的通道,用来配置速率、自协商、读取链路状态、查看误码计数等。很多新手觉得这只是调试接口,板子上随便连一下就行,结果量产时发现读不到状态,排查半天。

MDC 是时钟,通常由 MAC 提供,频率一般不超过 2.5MHz,不要图快往高了跑。MDIO 是数据线,它是双向的,需要上拉电阻,典型 1.5kΩ 到 10kΩ,具体看 PHY 手册。多颗 PHY 挂在同一组 MDIO/MDC 上时,靠 PHYADDR 引脚区分地址,地址不要重复,strapping 电阻要按手册接准。

我的习惯是:MDIO/MDC 走线尽量短,远离高速差分对,避免被干扰导致读写失败。另外在原理图上留出测试点,调试时方便接逻辑分析仪抓取寄存器读写时序。很多链路问题最后都是通过读 PHY 的状态寄存器定位的,这个接口的价值远超它的成本。

接口类型信号数量速率走线难度典型场景
RGMII约 14 根125MHz DDR中等,需等长MCU/SoC 直连,成本敏感
SGMII1 对差分收 + 1 对差分发1.25Gbps较高,需阻抗控制FPGA、多口交换
QSGMII差分5Gbps高多口密集设计
RMII约 9 根50MHz低百兆场景

4. 电源、时钟与复位:最容易翻车的三件套

4.1 多路电源域与去耦设计怎么做才稳

PHY 的电源设计是硬件里最容易被低估的部分。一颗典型千兆 PHY 可能有这么几路电:核心 1.0V 或 1.1V、数字 IO 1.8V/2.5V/3.3V(看 MAC 电平)、模拟前端和 SerDes 1.2V、内部 PLL 单独供电。每一路都要干净,尤其是模拟和 PLL 部分,纹波要求通常几十毫伏以内。

先说去耦。常规做法是每个电源引脚旁边放 0.1uF,靠近引脚放置,回路面积越小越好。模拟和 PLL 电源我会额外加 0.01uF 甚至更小,再配 1uF 电解或钽电容做低频储能。别把所有容量都堆在电源入口,那样高频去耦就失效了。布局上,去耦电容的地过孔要单独打,尽量靠近器件地焊盘,避免和信号地混在一起形成共阻抗。

再说电源来源。噪声敏感的项目,我会给模拟和 SerDes 用独立 LDO,数字部分用 DCDC 或 LDO 都行。DCDC 的开关频率要避开 PHY 的敏感频段,输出纹波控制在合理范围。如果板子空间紧张只能用一颗 DCDC 分多路,那至少要保证分路后每路有 LC 滤波。高温老化测试时候要专门盯电源纹波,很多偶发断链都是纹波在温度升高后恶化引起的。

电源域典型电压噪声敏感度建议供电方式
核心1.0V/1.1V中LDO 或 DCDC
数字 IO1.8V/2.5V/3.3V低DCDC 或 LDO
模拟/AFE1.2V/2.5V高独立 LDO
PLL1.2V/1.0V极高独立 LDO + RC 滤波

4.2 时钟方案与抖动预算

千兆 PHY 的时钟源一般是 25MHz 晶振,PHY 内部倍频到 125MHz 供 RGMII,或者再倍频给 SerDes。有些设计用 125MHz 差分时钟直接输入。无论哪种,时钟质量都是链路稳定的前提。

我选晶振时会看三个指标:频率精度、老化率、相位抖动。对于千兆应用,相位抖动通常要求 RMS 小于 1ps 级别,具体看 PHY 手册。太便宜的晶振抖动大,短期内跑得动,长时间或者满流量就出误码。

布局上,晶振要尽量靠近 PHY 的时钟输入引脚,走线短且直,下方铺完整地平面,周围用包地过孔隔离。晶振的负载电容按手册取值,两个电容要对称,容差选 5% 以内。晶振下方不要走任何信号,尤其是开关电源的走线。

还有一个容易忽略的点:如果 PHY 和 MAC 共用一个时钟,或者从同一个时钟源分频,要确认时钟域之间的关系,避免出现采样相位漂移。用示波器测时钟眼图,看抖动是否在允许范围,这一步花不了多少时间,但能省掉很多后期扯皮。

4.3 复位时序别拍脑袋

复位看似简单,实则讲究。大部分 PHY 有一个 RESET_N 引脚,低电平复位。手册一般会给一个最短复位脉宽,比如 10ms 或更长,上电后必须保持这段时间才能释放。有些工程师图省事,直接把复位接到上电复位芯片上,结果脉宽不够,PHY 内部寄存器没初始化完就工作了,表现为链路时好时坏。

我一般的做法是:用专用复位芯片或者 MCU 的 GPIO 控制,确保上电后先让电源稳定,再延时给复位,复位保持时间留足余量,比如手册要求 10ms,我给 50ms。复位释放最好和时钟稳定同步,如果 PHY 需要时钟才能完成初始化,那就在时钟稳了之后再释放复位。

另外,strapping 引脚(用来配 PHYADDR、RGMII delay、速率模式等)的电平是在复位期间锁存的,所以上下拉电阻必须接准,复位期间不能被干扰。有的板子上电时序不对,strapping 引脚在复位前就被拉偏了,配置进去就是错的。调试时如果发现配置不对,先查 strapping,再看寄存器,十有八九是这里的问题。


5. PCB 布局布线:千兆信号的成败全在细节

5.1 差分对与阻抗控制

PHY 到变压器的四对差分线,是千兆以太网硬件里最需要精细处理的走线。阻抗要求 100Ω 差分,这个值要和变压器、RJ45、网线的标称阻抗匹配。单端算下来大约 50Ω,具体按叠层算。

差分对内部两根线要等长,一般要求 ±5mil 到 ±10mil,越短越好。走线尽量同层、平行、近距离,保持差分阻抗恒定。如果必须换层,两个过孔要对称,最好在旁边加地过孔给返回电流提供路径。交叉、跨分割、直角走线都要避免,这些都会破坏差分对的完整性。

长度匹配方面,四对差分线相互之间也要等长,通常要求 ±50mil 以内,严格的板子卡 ±25mil。因为 1000BASE-T 的四对线同时收发,对间偏斜过大可能影响回声消除。走线总长度没有硬性上限,但太长会带来损耗,一般控制在几千 mil 以内比较稳妥。

参考平面上,差分对下方必须是完整的参考地,绝不能有一根线悬空在分割区上方。分割会导致返回电流绕路,等效阻抗突变,反射随之而来。如果板子必须分区域,记得在分割处加缝合电容,让高频返回电流有路可走。

5.2 变压器、RJ45 与 Bob Smith 终端电路

变压器(网络隔离变压器/磁性元件)负责隔离和共模抑制。选型时要看匝比、共模扼流特性、插入损耗、耐压等级。千兆变压器通常集成共模扼流圈,能有效抑制共模噪声。变压器中心抽头一般要接去耦电容到地,接收侧中心抽头通常接一个电容到地,发射侧中心抽头接电源或通过电容到地,具体以 PHY 和变压器手册为准。

RJ45 要选带屏蔽或者不带屏蔽,看应用环境。带屏蔽的网口需要正确的接地策略,屏蔽壳一般通过高压电容和电阻接机壳地,不是直接连信号地。有些设计直接连信号地,导致共模噪声全进板子,EMC 一测就爆。

Bob Smith 终端是千兆网口的经典电路,四对线的每对“空闲端”通过 75Ω 电阻汇到一起,再经过一个高压电容(通常 1000pF/2kV)接到机壳地。它的作用是给共模信号提供泄放路径,改善 EMI 表现。这个电路看着简单,但电阻精度和电容耐压都要选对,电容要能耐住隔离测试电压。

注意:Bob Smith 终端的地一定要接机壳地而不是信号地,这是它发挥作用的前提,接错了等于没做。

5.3 ESD 与防护设计

网口是板子对外最脆弱的接口之一,静电、浪涌都从这里进来。防护器件一般放在变压器和 RJ45 之间,或者变压器靠近 RJ45 的一侧。选 TVS 时,关键指标是结电容——千兆信号频率高,结电容太大直接吃掉信号。一般要求单通道结电容在几个 pF 以内,越低越好。

防护路径要短,TVS 到被保护线、TVS 到地的走线都要尽可能短,让瞬态电流快速泄放。防护器件的接地要接到机壳地或专门的防护地,不能随便接信号地。有的设计防护做了但走线绕了一大圈,浪涌还没到 TVS 就先打坏了 PHY,那就白做了。

另外,变压器本身也有一定隔离和耐压能力,配合 TVS 能形成多级防护。做过网口的朋友应该知道,隔离耐压测试、浪涌测试是必过的,防护设计要在原理图阶段就规划好,后期补救很被动。


6. 常见问题与排查技巧实录

6.1 链路协商不上或者降速

这是最常见的现象:链路灯不亮,或者亮了但速率只有 100M。排查顺序我会这样走:先量电源和时钟,确认 PHY 基本工作条件;再读 MDIO 寄存器,看链路状态和自协商结果;然后量差分信号,看有没有正常波形。

降速到 100M 的常见原因有几种:某对差分线虚焊或走线断裂,1000BASE-T 需要四对全通,100BASE-TX 只用两对,所以坏一对就会降速;变压器某路绕组开路;PHY 内部某个通道损坏。用万用表测变压器绕组通断,用示波器看四对线的收发波形,基本能定位。

还有一种情况是自协商能力配置不对。有些 PHY 默认只开 100M,需要在寄存器里打开千兆能力,或者通过 strapping 引脚配置。这种问题一读寄存器就现形了,属于配置层面。

6.2 满流量丢包与偶发误码

链路能起来、能 ping 通,但一跑大流量就丢包,这种最磨人。原因可能是电源纹波、时钟抖动、阻抗不匹配、回声消除未收敛等。我的排查思路是:先在低速率下跑压力测试,再切到千兆,看丢包是否和速率相关;用 PHY 的误码计数寄存器看误码率,判断是物理层问题还是上层问题。

物理层误码往往和电源、时钟挂钩。我会抓电源纹波,看满流量时是否有明显波动;测时钟眼图,看抖动是否超标;检查差分对的阻抗和端接。回声消除未收敛通常需要几秒到几十秒的收敛时间,如果是一直丢包,那更像硬件问题;如果是刚开始丢、后来变好,可能是收敛过程,属于正常现象。

还有一种隐蔽情况是散热。PHY 满负载时温度上升,某些器件参数漂移导致误码。可以用热风枪局部加热复现,或者做高温老化测试。不少量产问题都是高温下才暴露的。

现象可能原因排查手段
链路不亮电源/时钟/复位异常量电压、测时钟、读寄存器
降速到 100M差分对断线/变压器开路测通断、看波形
满流量丢包电源纹波/时钟抖动/阻抗失配抓纹波、测眼图、查阻抗
高温偶发断链器件参数漂移/去耦不足高温老化、局部加热复现
寄存器读不到MDIO 上拉/地址配置错误查上拉、查 PHYADDR

6.3 一个很实用的调试顺序

踩了这么多坑,我总结出一套相对固定的调试顺序,基本能覆盖大多数网口问题。第一步,确认电源每一路电压和纹波,别跳过。第二步,测时钟频率和抖动,晶振有没有起振。第三步,量复位时序,确认脉宽和释放时机。第四步,读 MDIO 寄存器,看 PHY 是否被正确识别、配置是否符合预期。第五步,接网线看链路状态和协商速率。第六步,跑流量测试,观察丢包和误码计数。这套顺序从下往上,逐层排除,效率很高,比东一榔头西一棒子强多了。

另外,留好测试点是关键。MDIO/MDC、时钟、复位、差分对附近都留上测试焊盘或者过孔,调试时不用飞线。这个习惯我在早期项目里没养成,后来吃过亏,现在画板子第一件事就是把调试点规划好。


7. SGMII IP 核与外部 PHY 联调时的几点经验

前面提过 SGMII IP 核要配成 MAC 模式,这里再展开一点实际联调的细节。FPGA 侧用 SGMII IP 核接外部 PHY,本质上 IP 核是 MAC,PHY 芯片是物理层。配置时除了模式,还要注意几个参数:速率要设成 1000M,自协商使能选项要和 PHY 侧匹配,参考时钟频率要和板上的晶振一致。

联调时我一般先用回环测试验证 IP 核本身工作正常,再把 PHY 接上。回环测试能排除 IP 核配置和数据通路的问题,把问题范围缩小到 PHY 和链路。如果回环通过但接 PHY 不通,那问题大概率在 SGMII 差分信号、PHY 配置或者自协商上。

SGMII 的差分信号质量也要关注,1.25Gbps 的速率对走线和端接有要求。用示波器或者高速探头看信号眼图,确认幅度和抖动在范围内。有的板子差分对太长或者阻抗不对,IP 核和 PHY 能协商上但误码率高,跑一段时间就断。

还有一点,SGMII 和 RGMII 的切换要设计时就决定,别指望后期改。两种接口的走线、端接、IP 核配置完全不同,混在一起会增加复杂度。如果 MAC 侧两种都支持,我会根据板子布局和速率需求二选一,尽量不在一颗 PHY 上同时用两种接口。


8. 最后聊聊我在千兆 PHY 硬件设计里的一些体会

做千兆以太网 PHY 硬件设计,最大的感受是:它没有 DDR 那种“参数即真理”的绝对,更多是一种综合平衡。电源、时钟、走线、端接、防护,每一项都不算特别难,但叠加在一起,任何一项偷懒都可能在某个环节爆发。我见过太多“原理图没问题、Layout 也没大错,就是不稳定的板子”,最后查出来往往是一个不起眼的去耦电容、一段没包地的时钟线、或者一个接错地的防护器件。

给刚入行的朋友一个建议:原理图阶段就把 PHY 手册的“Layout Guidelines”章节通读一遍,把里面提到的每一个约束都落实到叠层和约束管理器里,别指望 Layout 工程师替你想。调试阶段养成先量电源和时钟的习惯,这两个稳了,剩下的问题才有排查的基础。真遇到偶发问题,别急着改代码,先怀疑硬件,用高温、满流量、长时间老化去复现,把偶发变成必现,问题就好解了。

至于选型,别迷信进口,也别盲从国产。把接口类型、内部延迟、电源域、参考设计这几点核对清楚,拿得到的样品先做一块验证板,跑通再量产。PHY 这东西,验证板花的时间,绝对比量产翻车后返工省得多。我自己的项目里,每一颗新用的 PHY 都会单独做一块最小验证板,测完电源、时钟、链路、老化、EMC 预测试,确认没问题再上正式板,这个流程坚持下来,网口相关的量产问题基本清零。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询