通信基础(五)之一文搞懂 GMII 与 RGMII 📅 发布时间:2026/8/28 5:09:25 👁 浏览次数: 欢迎关注飞翔硬件杂谈如果你在做千兆以太网相关的硬件设计一定绕不开两个名字GMII和RGMII。它们都是 MAC 与 PHY 之间的接口标准一个引脚多但简单直白一个引脚少却暗藏玄机。RGMII 到底省在了哪里又是如何做到少一半引脚同样的带宽的本文带你一次看透。一、先说背景MAC 和 PHY 之间聊什么在以太网硬件架构中MAC媒体访问控制层负责数据链路层的协议处理PHY物理层芯片负责物理信号的编解码和线路驱动。两者之间需要一个接口来传递数据和控制信号。这个接口需要解决三个问题传数据TX 方向发出去的数据RX 方向收进来的数据传时钟双方需要一个共同的时钟节拍来对齐数据传控制告诉对方数据有效出错了等状态信息GMII 和 RGMII 就是两种不同的接线方案解决的是同一个问题但思路不同。二、GMIIIEEE 标准的正经方案GMIIGigabit Media Independent Interface是 IEEE 802.3 标准中定义的千兆以太网 MAC-PHY 接口。核心参数参数值数据位宽8 bit时钟频率125 MHz信号方式SDR单沿采样仅上升沿带宽125 MHz × 8 bit 1 Gbps引脚数数据控制约 24 pin速率支持10 / 100 / 1000 Mbps引脚构成以 TX 侧为例TXD[7:0] 8 条数据线TX_CLK发送时钟TX_EN发送使能高电平表示数据有效TX_ER发送错误高电平表示数据出错RX 侧对称RXD[7:0]、RX_CLK、RX_DV数据有效、RX_ER接收错误。再加上管理接口 MDC/MDIO总共约 24 个引脚。GMII 的特点优点时序简单只在时钟上升沿采样建立/保持时间窗口充足整个周期 8nsPCB 布线约束宽松。缺点引脚多。TX 侧 11 个信号引脚RX 侧 11 个加上管理接口一共二十多个。对于引脚紧张的主控芯片来说这是个不小的负担。三、RGMIIHP 提出的精简方案RGMIIReduced Gigabit Media Independent Interface由惠普HP提出是目前千兆以太网中最广泛使用的 MAC-PHY 接口。它不是 IEEE 正式标准而是行业事实标准。核心参数参数值数据位宽4 bit时钟频率125 MHz信号方式DDR双沿采样上升沿下降沿带宽125 MHz × 4 bit × 2 1 Gbps引脚数数据控制约 12 pin速率支持10 / 100 / 1000 Mbps引脚构成以 TX 侧为例TXD[3:0]4 条数据线TX_CLK发送时钟TX_CTL发送控制一根线复用 EN 和 ERRX 侧对称RXD[3:0]、RX_CLK、RX_CTL。加上 MDC/MDIO总共约 12 个引脚。引脚数直接砍掉一半。问题是少了一半的引脚带宽怎么没变四、核心揭秘RGMII 如何用更少引脚实现相同功能RGMII 省引脚靠的是两大机制DDR 双沿采样 控制信号复用。机制一DDR 双沿采样——数据线减半8→4这是省引脚的主要原因TXRX 合计省下8 个引脚。GMII 的做法SDR 单沿时钟 125 MHz每个周期 8ns。GMII只在时钟上升沿采样一次每次采 8 bit。所以一个周期传 8 bit需要 8 条数据线。TX_CLK: ___|‾‾‾‾|____|‾‾‾‾|____|‾‾‾‾|___ ↑ 采样 ↑ 采样 TXD[7:0]: | D0[7:0] | D1[7:0] |RGMII 的做法DDR 双沿同样的 125 MHz 时钟但 RGMII上升沿和下降沿各采样一次。每次采 4 bit一个周期采 2 次 4 × 2 8 bit。TX_CLK: ___|‾‾‾‾|____|‾‾‾‾|____|‾‾‾‾|___ ↑ ↓ ↑ 上升沿 下降沿 上升沿 TXD[3:0]: |D0[3:0]|D0[7:4]|D1[3:0]|一个 8 bit 字节怎么拆上升沿采样低 4 位D[3:0]下降沿采样高 4 位D[7:4]两半拼起来正好是完整的 8 bit 字节。时钟频率没变数据线少了一半但每个周期传输的数据量完全一样。通俗类比GMII 是一条 8 车道公路每个绿灯放行一次RGMII 是一条 4 车道公路但每个绿灯和红灯切换时都放行一次。同样的时间段内通过的车辆数相同。机制二控制信号复用——控制引脚合并2→1这个机制省下2 个引脚TX 侧 1 个 RX 侧 1 个。GMII 的做法TX_EN发送使能和TX_ER发送错误是两个独立引脚各自独占一根线电平始终有效。TX_EN: ─────████████████────── ← 独占引脚 1 TX_ER: ─────────────────────── ← 独占引脚 2RGMII 的做法合并为一根TX_CTL线利用 DDR 的思路分时复用上升沿时刻TX_CTL的值 TX_EN下降沿时刻TX_CTL的值 TX_ERTX_CTL: ────████────████────── ← 合为 1 根引脚 ↑EN1 ↓ER0 ↑EN1 上升沿 下降沿 上升沿RX 侧同理RX_DVRX_ER→ 合并为RX_CTL一根线。五、引脚账本到底省了多少下面以 TXRX 合计不含 MDC/MDIO 管理接口做一笔账信号类别GMIIRGMII节省省引脚机制数据线TXDRXD1688DDR 双沿采样控制线EN/ER DV/ER422上升沿/下降沿复用时钟线TX_CLKRX_CLK220不变合计221210—一个千兆以太网接口从 22 个引脚降到 12 个省了将近一半。对于多网口设备如交换机、路由器这个节省更加可观。8 口交换机就能省下 80 个引脚直接降低芯片封装成本和 PCB 层数。六、RGMII 的代价不是免费的午餐RGMII 省了引脚但也带来了额外约束1. 需要 2ns 时钟延迟DDR 要求在数据信号的中间采样因此时钟需要相对数据延迟约 2ns四分之一周期。这个延迟可以通过两种方式实现PHY 芯片内部延迟大多数 PHY 芯片支持内部延迟模式设备树中配置为rgmii-id或rgmii-txid/rgmii-rxid这是最常用的方式PCB 走线延迟绕线约1.5~2 英寸≈3.8~5cm对应延迟约 1.5~2nsFR4 板材信号速度≈15cm/ns物理上实现延迟2. 时序约束更严格双沿采样意味着建立/保持时间窗口只有半个周期约 4ns对 PCB 布线等长控制和信号完整性要求更高。数据线和时钟线需要严格等长走线长度差通常控制在 ±50mil 以内。3. 不是 IEEE 正式标准RGMII 由 HP 提出最新规范为 RGMII v2.02002属行业事实标准GMII 定义于 IEEE 802.3z-1998 Clause 35Wikipedia4. 10/100M 模式下的退化在 100 Mbps 和 10 Mbps 模式下RGMII 退化为 SDR 模式只在上升沿采样数据速率减半以匹配较低带宽需求时钟分别降到 25 MHz 和 2.5 MHz。七、实际选型建议场景推荐原因新设计千兆以太网RGMII引脚少主流 PHY 均支持是当前行业标准引脚非常充裕追求最简时序GMII无需时钟延迟布线约束最宽松需要兼容老芯片看 MAC 支持部分早期 MAC 只支持 GMII多网口设备交换机等RGMII引脚节省效果成倍放大八、总结RGMII 就是 GMII 的精简版——用 DDR 双沿采样把数据线砍掉一半再通过控制信号分时复用合并掉冗余引脚在引脚数减半的前提下实现了和 GMII 完全相同的千兆带宽。维度GMIIRGMII数据位宽8 bit4 bit信号方式SDR 单沿DDR 双沿引脚数~24~12时钟延迟无需需 2ns时序复杂度简单较高标准来源IEEE 802.3行业事实标准应用现状早期芯片主流方案欢迎关注