2、以太网基础:OSI模型、MAC与PHY的分工、以太网物理层标准(10/100/1000BASE-T)概述

以太网自诞生以来,经过四十余年的演进,已经成为有线局域网的事实标准。对于硬件工程师而言,设计PHY芯片外围电路之前,必须深刻理解以太网的分层架构。OSI参考模型将网络通信划分为七个层次,而实际工程中我们最常打交道的则是位于物理层(Layer 1)和数据链路层(Layer 2)的PHY与MAC芯片。本章将梳理OSI模型与TCP/IP模型的对应关系,明确MAC与PHY的职责边界,并重点解析10BASE-T、100BASE-TX与1000BASE-T三种经典物理层标准的技术特征与设计差异,为后续PHY外围电路(变压器、阻抗匹配、电源滤波)的设计打下坚实的理论基础。

以太网分层架构与PHY/MAC分工 OSI 七层模型 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 LLC + MAC 1 物理层 PHY + PMD 传输介质:双绞线/光纤 电气信号/光信号 编码/解码/时钟恢复 TCP/IP 模型 应用层 传输层 网络层 数据链路层 MAC 物理层 PHY 网卡/收发器 RJ45/变压器 线缆 MAC 与 PHY 的分工 MAC 芯片 · 数据帧封装/解封装 · 流量控制(PAUSE) · 地址过滤(DA/SA) PHY 芯片 · 编码/解码(4B/5B,8B/10B) · 时钟恢复/同步 · 线路驱动/接收 MII/RMII RGMII 磁性变压器 + RJ45 隔离、阻抗匹配、共模抑制 MDI 物理层标准 10BASE-T / 100BASE-TX / 1000BASE-T

上图清晰地展示了OSI模型与TCP/IP模型的映射关系,以及MAC与PHY在协议栈中的位置。从硬件设计视角看,MAC芯片负责“数据面”的帧处理,而PHY芯片负责“物理面”的信号转换。两者之间通过MII(Media Independent Interface)系列接口连接,而PHY与线缆之间则通过MDI(Medium Dependent Interface)连接。理解这条链路是设计外围电路的前提。

2.1 OSI模型与以太网分层架构

核心原理:分层的目的与边界

OSI参考模型将通信过程分解为七个层次,每一层只与相邻层通信,通过标准接口提供服务。以太网实际只实现了物理层和数据链路层,更高层由TCP/IP协议栈承载。在硬件设计中,我们关注的是Layer 1(物理层)和Layer 2(数据链路层)的边界。物理层定义了电气信号特性、线缆类型、传输速率、编码方式;数据链路层则定义了帧格式、MAC地址寻址、差错检测(FCS)。分层带来的最大好处是:更换物理层介质(如从铜缆换到光纤)时,上层协议无需改动,只需更换PHY芯片和连接器。

判断方法:如何区分MAC与PHY的职责

一个简单的判断标准是:凡是涉及比特流、信号波形、时钟恢复、线路编码的,都属于PHY;凡是涉及帧、地址、校验、流控的,都属于MAC。例如,当您调试网络不通时,如果示波器测量PHY的TX±引脚有波形但RJ45无输出,问题在PHY外围电路;如果PHY输出正常但PC无法获取IP,问题可能在MAC配置或驱动。另一个实用技巧是查看芯片手册:PHY芯片通常有MDI引脚(连接变压器)和MII/RGMII引脚(连接MAC),而MAC芯片则只有MII/RGMII接口和系统总线接口(如PCIe、AXI)。

案例拆解:一个典型的以太网接口电路

以某工业控制板卡为例,主控SoC内部集成MAC,外接一颗瑞昱RTL8211F PHY芯片。系统框图如下:

  • MAC侧:SoC通过RGMII接口输出TXD[3:0]、TX_CLK、TX_CTL,以及RXD[3:0]、RX_CLK、RX_CTL。这些信号是3.3V LVCMOS电平,速率125MHz(1000Mbps)。
  • PHY侧:RTL8211F将RGMII并行数据转换为串行差分信号,通过TXP/TXN引脚输出到网络变压器。
  • 变压器侧:网络变压器(如HX5008NL)完成电平耦合、共模抑制和电气隔离,次级中心抽头通过75Ω电阻和1000pF电容接地,用于共模端接。
  • RJ45侧:变压器次级连接到RJ45插座,线序遵循TIA/EIA-568B标准(1/2为TX+/-,3/6为RX+/-)。

调试时发现,PHY的link状态灯常亮但ping不通。用示波器测量RGMII的TX_CLK,发现频率为125MHz但占空比仅为30%,导致数据采样错误。进一步检查发现MAC侧TX_CLK走线过长且未做等长处理,与TXD[3:0]的延迟差超过2ns。将TX_CLK走线缩短并增加蛇形绕线补偿后,问题解决。这个案例说明,MAC与PHY之间的接口时序是高速设计的关键点。

常见误区与总结

误区1:认为PHY芯片包含MAC功能。实际上,除极少集成芯片外,PHY和MAC是独立器件,需要外部接口连接。
误区2:忽略MII接口的电平标准。RGMII有3.3V和2.5V两种电平,混用会导致信号损坏。
误区3:将PHY的MDI引脚直接连接到RJ45而不加变压器。这会导致共模干扰、阻抗失配,甚至损坏PHY。

2.2 MAC与PHY的分工及接口详解

核心原理:MII家族接口演进

MAC与PHY之间的接口经历了从并行到串行、从低速到高速的演进。最早的MII接口为4位数据总线,时钟25MHz(100Mbps);RMII将数据线减为2位,时钟50MHz,引脚数从16根减为8根;RGMII采用DDR(双沿采样),在125MHz时钟下用4位数据线实现1000Mbps传输。此外还有GMII(8位并行,125MHz)和SGMII(串行,1.25Gbps)。选择哪种接口取决于系统带宽需求和PCB布局空间。RGMII是目前最主流的选择,因为它兼顾了引脚数和速率。

判断方法:接口时序与PCB设计要求

RGMII接口的时序要求非常严格:TX_CLK与TXD[3:0]之间的延迟差必须控制在±500ps以内。为此,MAC芯片通常提供TX_CTL信号,用于指示数据有效。PHY芯片内部有延迟补偿电路,但PCB走线仍需遵循以下规则:

  1. TX_CLK与TXD[3:0]走线等长,误差不超过±5mil。
  2. RX_CLK与RXD[3:0]同样需要等长,但方向是从PHY到MAC。
  3. 所有RGMII信号线建议包地处理,避免与相邻高速信号耦合。
  4. 在PHY芯片附近放置串联电阻(22Ω~33Ω),抑制反射。

案例拆解:RGMII时序调试实录

某通信设备使用FPGA作为MAC,外接Marvell 88E1512 PHY。系统上电后,PHY能建立link,但FPGA接收到的数据出现CRC错误。使用逻辑分析仪抓取RGMII总线,发现RXD[3:0]在时钟上升沿和下降沿的数据均不稳定。进一步测量发现,PHY的RX_CLK输出延迟为2.2ns,而FPGA内部默认采样延迟为1.5ns,导致采样点落在数据跳变沿上。解决方案:在FPGA中配置IDELAY模块,将采样延迟调整为2.0ns,同时将PCB上RX_CLK走线加长300mil以增加延迟。调整后CRC错误消失。此案例表明,RGMII接口的延迟匹配需要结合芯片手册和实际测量进行微调。

常见误区与总结

经验提示:在PCB设计时,建议在MAC与PHY之间预留0欧姆电阻或RC滤波位置,便于调试时断开信号或调整时序。同时,PHY的时钟输入(通常为25MHz晶振)应靠近PHY放置,走线尽量短,避免与RGMII数据线交叉。

2.3 以太网物理层标准:10/100/1000BASE-T

核心原理:三种速率的技术差异

10BASE-T、100BASE-TX和1000BASE-T分别对应10Mbps、100Mbps和1000Mbps的传输速率,它们都使用Cat5及以上双绞线,但编码方式和线对利用完全不同。10BASE-T使用曼彻斯特编码,仅用2对线(1/2发送,3/6接收),带宽需求低。100BASE-TX采用4B/5B编码+MLT-3线路编码,同样使用2对线,但信号频率提高到125MHz。1000BASE-T则使用4D-PAM5编码,同时利用全部4对线,每对线双向传输,每对线速率250Mbps,通过回波抵消和串扰消除技术实现全双工。

参数 10BASE-T 100BASE-TX 1000BASE-T
速率 10 Mbps 100 Mbps 1000 Mbps
编码方式 曼彻斯特 4B/5B + MLT-3 4D-PAM5
使用线对 2对(1/2,3/6) 2对(1/2,3/6) 4对(全部)
信号频率 10 MHz 125 MHz 125 MHz(每对)
线缆要求 Cat3 Cat5 Cat5e
传输模式 半双工/全双工 半双工/全双工 全双工(强制)

判断方法:根据速率选择PHY芯片与外围电路

设计外围电路时,不同速率对变压器、端接电阻和PCB布线要求不同。对于10/100Mbps设计,变压器匝数比通常为1:1,中心抽头通过RC端接到电源或地;对于1000BASE-T,变压器必须支持4对线,且每对线都需要独立的共模端接。此外,1000BASE-T对回波损耗和串扰要求更高,PCB差分对间距应保持在3W原则以上(W为线宽),且需要严格控制差分阻抗为100Ω±10%。

案例拆解:从100M升级到1000M的硬件改动

某公司原有产品使用100BASE-TX PHY(如LAN8720A),现需升级到1000BASE-T。工程师最初认为只需更换PHY芯片即可,但实际测试发现link无法建立。分析原因:

  1. 原PCB只布了2对差分线,而1000BASE-T需要4对,导致另外2对信号缺失。
  2. 原变压器为2对绕组,无法传输4对信号。
  3. RJ45插座只有2对引脚连接,需要更换为8针全连接类型。

解决方案:重新设计PCB,增加2对差分走线,更换为4对绕组的网络变压器(如HX5008NL),RJ45更换为带屏蔽的8针插座。同时,在PHY芯片下方增加去耦电容(0.1μF和10μF组合),确保电源完整性。升级后,实测吞吐量达到940Mbps(线速的94%),满足设计要求。此案例说明,物理层标准的升级不仅仅是换芯片,而是整个信号链路的重新设计。

常见误区与总结

关键要点:10/100BASE-T与1000BASE-T的PHY外围电路差异巨大。设计前务必确认PHY芯片支持的速率模式,并阅读对应的变压器选型指南。对于1000BASE-T,建议使用Auto-MDIX功能,自动识别直连/交叉线缆,减少现场布线错误。