尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

FPGA千兆网口硬件设计全解析:从SGMII到RJ45的完整链路

FPGA千兆网口硬件设计全解析:从SGMII到RJ45的完整链路 写硬件的人都知道网口设计看着简单真正要把一条链路从头到尾打通坑全藏细节里。最近有个项目正好在做FPGA板卡上的千兆网口从SGMII信号拉出来到PHY芯片、再经磁性变压器到RJ45整套路径踩了不少坑也积累了一些实打实的经验。这篇文章就顺着信号走的路径从FPGA管脚开始一路画到RJ45插座的金属针脚把每个环节的原理、参数和注意事项都拆开讲一遍。适合正在做FPGA板卡、或者想搞清楚SGMII到底怎么跑通的硬件工程师和嵌入式开发人员就算你是刚入门的FPGA玩家只要接触过以太网这篇也能帮你把整个链路在脑子里立起来。SGMII这名字听起来高大上说穿了就是MAC和PHY之间的一座桥。FPGA负责跑MAC逻辑PHY芯片负责把数字信号变成网线上的模拟差分信号而这座桥就是SGMII。整条链路能不能稳定跑起来取决于你从FPGA管脚到RJ45这颗物理层的每一寸铜皮处理得对不对。1. SGMII信号链路的基本盘从MAC到网线的四段旅程1.1 SGMII协议本身是什么SGMII全称Serial Gigabit Media Independent Interface就是串行千兆媒体独立接口。它和GMII是同一层的东西解决的都是MAC和PHY之间怎么传数据的问题只是方式完全不同。GMII是并行总线收发各8 bit数据线加上时钟和使能信号跑起来一大堆线SGMII则是串行差分接口收发各一对差分线总共两对线就搞定了。这差别就像绿皮火车和高铁运的东西一样效率完全不同。SGMII线速率是1.25Gbps注意这个数字比真正的千兆以太网1Gbps要高因为SGMII物理层用了8B/10B编码每8 bit有效数据要变成10 bit编码传输。简单算一下1Gbps x 8/10 1.25Gbaud所以线速率就是1.25GHz。这也是为什么SGMII的电源和走线都要按高速信号处理别把它当成普通的低频数字信号。SGMII还有一个很关键的特性它不仅能传数据还能传PHY的状态信息比如link状态、双工模式、速率协商结果。这些信息通过SGMII协议特定的控制字符在空闲时段插入到数据流里。所以FPGA只要解析SGMII链路就能知道PHY那边协商出了什么结果这个特性在做调试时特别有用。另一个常被忽略的细节是SGMII同时支持1000M、100M、10M三种速率。在1000M模式下就是1.25Gbps线速率但降到100M和10M时SGMII链路本身仍然保持1.25Gbps线速率只是MAC和PHY之间通过重复发送相同数据来实现降速。这个机制理解起来有点绕但在调试时会遇到后面讲问题排查时再说。1.2 完整路径上每一跳都在干嘛一条完整的千兆以太网链路从FPGA内部开始信号要经过这么几个环节FPGA的GTX/GTH高速收发器引脚这是SGMII信号的出生地输出一对TX差分线、接收一对RX差分线。FPGA内部跑的是MAC逻辑和SGMII控制器通常直接用Xilinx或Intel的IP核。引脚出来以后差分信号走PCB微带线或带状线到达PHY芯片。PHY芯片完成SGMII到MDIMedium Dependent Interface介质相关接口的转换也就是把数字串行信号变成符合以太网物理层规范的模拟信号再送往磁性变压器。磁性变压器一般放在PHY和RJ45之间。它负责共模抑制、阻抗变换和电气隔离没有它网线上的共模干扰会直接灌进PHY芯片雷击和浪涌也会把PHY打坏。变压器之后是RJ45连接器网线的8根线芯就插在这里面。标准千兆以太网用的是4对双绞线每对差分管一个方向的收发。但SGMII此时已经被PHY转换成MDI信号了对应的是一对TD/-、一对RD/-另外两对用于其它千兆工作模式这个后面讲RJ45定义时细说。从系统设计的角度看这条路径横跨了数字域和模拟域。FPGA到PHY的SGMII是数字编码信号PHY到RJ45的MDI则是模拟调制信号。这两段的设计约束完全不同前者更关注阻抗匹配和眼图后者更关注共模抑制和隔离度。很多新手把整条链路当成普通高速线来拉实际上MDI部分的要求和SGMII部分有很大差异这个认知能省掉很多返工。2. FPGA侧工程设计SGMII信号从哪里来、到哪里去2.1 用GTX还是用LVDS这是第一个选择题FPGA上跑SGMII首先要决定的是用哪一类引脚。很多做FPGA的人第一反应是SGMII是1.25Gbps差分信号用LVDS不行吗这个问题我当年也纠结过答案是从电气特性上勉强可以但从工程实践上强烈不建议。SGMII虽然是1.25Gbps如果只用LVDSIO buffer的驱动能力和接收灵敏度都够但问题在于FPGA的逻辑资源处理不了1.25GHz的串行数据流。你需要把串行数据变成并行数据才能交给MAC逻辑处理而串行到并行的转换必须用FPGA内置的高速收发器来完成。这个收发器在Xilinx里叫GTX/GTH在IntelAltera里叫Transceiver。如果不用高速收发器就得用分立逻辑搭一个serdes跑到1.25Gbps时序收敛和稳定性都是灾难。所以实际的SGMII设计几乎全部使用FPGA的高速收发器。以Xilinx 7系列为例GTX收发器的线速率范围大概是500Mbps到12.5Gbps覆盖SGMII的1.25Gbps绰绰有余。配置时把GTX的线速率设成1.25Gbps编码方式选8B/10B然后用Xilinx的SGMII IP核把GTX封装成标准的MAC接口这样你就能在FPGA逻辑里拿到一个类似RGMII的并行数据接口带宽也刚好是1Gbps。在引脚分配上SGMII的TX差分对和RX差分对必须分配到同一对高速收发器的通道Channel上。不同Bank的高速收发器是独立的不能一半在quad 0、一半在quad 1否则跨时钟域和布局布线都会变得非常痛苦。另外GTX的参考时钟也要仔细选通常用125MHz或156.25MHz具体看IP核配置参考时钟的质量直接影响GTX的抖动性能在原理图上就要留好干净的时钟源不要从别的高速模块里分出来凑合。2.2 电源和复位最容易翻车的两个地方SGMII链路对电源纹波极度敏感。GTX收发器的模拟电源MGTAVCC、MGTAVTT要求纹波控制在很小范围内我见过一个项目就是电源纹波超标导致SGMII偶发误码网口link起来之后跑大流量就掉包排查了很久才发现是电源的问题。后来在GTX电源管脚附近加了一级LC滤波再并上多个100nF和1uF去耦电容问题才解决。如果你的板卡空间允许GTX电源一定要从源头单独供别和FPGA核心电源完全混在一起至少也要在原理图上把磁珠和去耦结构画清楚。复位同样是个隐患。SGMII IP核的复位时序有严格要求通常要求参考时钟稳定后至少保持几个毫秒的复位信号然后才能释放。如果复位释放得太早GTX的PLL可能还没锁定链路就起不来或者起来之后状态不稳定。我习惯的做法是用一个异步复位同步释放电路再配合锁相环锁定信号来门控复位逻辑不复杂但能省掉很多诡异问题。FPGA刚起步的人特别容易忽略这一点值得注意。2.3 SGMII IP核配置和MAC层的衔接以Xilinx为例现在的Vivado里直接用SGMII IP核或者用Ethernet MAC IP核内部的SGMII接口。配置的时候重点看几个选项线速率选1.25Gbps对应千兆模式支持速率如果PHY支持自适应建议把10/100/1000都打开参考时钟按板卡实际提供的频率填准确地填接口模式SGMII IP核外部可以接RGMII、GMII或者AXI总线具体看你的MAC架构IP核生成之后顶层模块要引出TX_P、TX_N、RX_P、RX_N四根线连接到FPGA的GTX引脚。这里有个特别容易踩的坑SGMII IP核默认的TX和RX极性不一定和你板卡上的实际连接一致。如果PHY芯片那边把差分对的正负定义反了不需要改PCB直接在IP核的端口上交换TX_P和TX_N或者把RX_P和RX_N交换来做极性翻转就行。很多PHY芯片也自带极性翻转寄存器但FPGA侧处理更直接实现效率更高。MAC层衔接的时候要多想想时钟。SGMII IP核输出给MAC的逻辑时钟是125MHz这个时钟是由GTX从接收数据里恢复出来的和FPGA系统的其他时钟是异步关系。如果MAC侧用了别的125MHz时钟那就是跨时钟域传输数据会偶发出错。一定要把IP核输出的gtrxclk或者userclk作为MAC侧的实际工作时钟别偷懒用PLL自己生成的125MHz。3. PCB上的核心战场SGMII差分对从FPGA到PHY怎么走3.1 交流耦合电容怎么放才是对的SGMII链路在FPGA和PHY之间的差分线上一般都要串交流耦合电容。这个电容的作用是隔离直流分量让两端的共模电压互不影响。因为FPGA的GTX发射端和PHY芯片接收端的共模电压可能不相同如果直接直流耦合电平不匹配就会出问题串电容之后信号内的有效高频成分仍能通过直流电位各走各的互不干扰。电容的取值有讲究常见的是0.1uF或0.01uF。取0.1uF的话低频截止频率更低对8B/10B编码里低频分量的衰减更小但电容的封装寄生参数会大一些取0.01uF则寄生参数小但低频响应差一些。SGMII的8B/10B编码决定了信号低频成分不会特别低所以两种取值都能用。我的建议是0.1uF配0402封装这是Xilinx和PHY厂商应用笔记里最常见的组合。如果板卡上空间极度紧张用0.01uF也行但不能小于0.1uF之后还要注意回流路径否则会劣化眼图。电容摆放位置也常被忽略。交流耦合电容应该靠近接收端放置还是靠近发送端放置业内主流做法是靠近接收端。原因很简单如果电容靠近发送端发送端到电容之间的走线相当于一个带有低频截止特性的长段走线阻抗不连续点离发送端太近反射会更大靠近接收端则让大部分走线保持完整的差分阻抗反射也更容易被接收端吸收。具体摆放距离一般控制在接收端引脚附近不超过300mil越近越好。3.2 差分走线阻抗、等长和回流一个都不能少SGMII差分对的特性阻抗要求是100Ω这个数值是SGMII标准规定的。你在计算层叠和线宽的时候就要按100Ω差分阻抗去推不是随便给个线宽就完事。常用方法是让PCB厂商用阻抗计算软件帮你核算但你自己心里也要有个数在常见的4层板1.6mm厚度表层微带线线宽5mil、间距8mil左右具体数值要看介电常数和叠层结构每块板子都不一样。等长控制是另一个重点。SGMII的差分对内部TX_P和TX_N的长度差要求控制在5mil以内。这个等长不是越长越好的绝对等长而是说差分对内两条线的时延要基本一致。如果差值太大差分信号的共模分量会显著增加对外辐射变强接收端的差分接收器也会因共模过大而误判。RV和TX两对差分线之间的长度差理论上没有硬性要求因为SGMII本身允许RX和TX之间有一定时延差异但如果你对信号完整性有追求建议也把两对的长度控制在10mil以内省得将来调试时心里不踏实。走线时还要注意参考平面。高速差分对下方必须保证完整的地平面不能跨分割。一旦差分线跨过了地平面的分割缝回流路径被拉长回路电感剧增信号质量会明显劣化。我见过一个板卡SGMII差分线正好跨过了一条电源分割缝隙结果链接是起来了但千兆吞吐率始终上不去后来把走线改成绕行避开分割才解决。这个案例说明了一个道理高速线绕远路可以跨分割绝对不行。过孔也会对信号有影响。如果板卡层数多SGMII必须打孔换层那就要注意在过孔旁边加回流地过孔。差分对的两个孔之间最好再打一个地孔保证换层后的参考平面连续。我一般会尽量让SGMII走线在同一层解决不打孔就不打孔不是万不得已不动这个念头。3.3 串阻和端接要不要加SGMII的发射端FPGA的GTX已经做了片上端接通常不需要额外再加串阻。如果你在原理图上看到有人在差分线上加了0Ω电阻那多半是为了方便调试时断开链路用的不是必需的。PHY芯片的接收端同样有内部端接大部分PHY都支持通过寄存器配置内部的100Ω差分端接电阻不需要外部再并。这里有个细节值得注意如果你在FPGA和PHY之间加了共模扼流圈那就要小心了。共模扼流圈能抑制共模噪声但也会对差分信号引入额外的插入损耗SGMII这种1.25Gbps信号加共模扼流圈对眼图多少是有劣化的。不是所有设计都加加不加要看你板卡实际噪声情况。如果系统EMC测试过不了可以考虑加但最好先在样机上验证一下不加扼流圈的时候眼图余量够不够如果余量已经很小加了扼流圈可能直接把眼图压坏。4. PHY芯片到RJ45磁性变压器和连接器那些事4.1 PHY芯片选型快速指南市面上常见的千兆PHY芯片很多主流的有M公司、R公司、A公司这几个牌子的产品也有国产方案。选型时除了看价格和供货关键要看这几个指标接口类型必须支持SGMII而且最好支持1.25Gbps线速率MDI接口的驱动能力也就是PHY到变压器这一段能不能正常驱动1000BASE-T支持的MDI模式千兆以太网需要4对线但有些PHY支持2对线的千兆模式1000BASE-TX这个模式没普及别被忽悠标准千兆还是选4对线的1000BASE-T管理接口一般就是MDIO/MDC地址引脚要仔细核对上电时PHY芯片通过引脚电平配置默认地址别选到冲突的地址功耗和温度工业级板卡要注意工作温度范围有些PHY在高温下功耗会增大散热处理不好就降级实际项目里SGMII接口的PHY一般都是小封装BGA或者QFN焊接和布线的密度都比较高。建议拿到芯片的封装图后先把电源引脚和去耦电容的位置规划好特别是PHY有多路电源域时一定要看清数据手册上的去耦要求比如每个电源引脚要放一个100nF再在芯片附近放一个10uF这些都是硬件设计里该有的基本操作。4.2 磁性变压器到底在做什么磁性变压器也叫网络变压器、隔离变压器在PHY和RJ45之间它干的活主要有三件。第一是实现PHY芯片和网线之间的电气隔离网线另一头可能接到很远的地方双方地电位可能不同如果直接相连地环路电流就会在PHY芯片里流过轻则信号异常重则烧毁芯片。通过变压器耦合网线侧和电路板侧的直流地是完全隔开的共模干扰就不会以直流形式灌进来。第二是共模抑制。网线上的外部电磁干扰会以共模形式耦合进来变压器本身对共模信号呈现很高的阻抗对差分信号则能正常耦合这样就滤掉了绝大部分的共模噪声提高了信号的抗干扰能力。第三是阻抗变换和信号电平的适配。PHY芯片的MDI引脚需要驱动变压器初级变压器次级接网线的100Ω双绞线通过匝数比和阻抗关系完成信号从芯片到网线的功率匹配。具体匝数比和电感量PHY厂商的数据手册里都有推荐值你照着选型号就行。变压器选型要看几项参数插入损耗、回波损耗、共模抑制比和耐压值。耐压值关系到是否支持POE供电如果板卡要支持POE变压器就要选带中心抽头且耐压够的型号。普通情况下选一个标准的千兆单口网络变压器就够了很多芯片厂商的参考设计里都会给出推荐的变压器型号抄参考设计是硬件工程师最稳妥的选择。4.3 RJ45接口定义和MDI的对应关系RJ45接口大家都很熟但它的针脚定义很多人背不全。标准以太网用的RJ458根针脚里只有1、2、3、6是第一次就用来传数据的千兆千兆以太网才用到全部4对线。具体定义如下针脚信号标准MDI作用1TXMDI0发送数据对0的正端2TX-MDI0-发送数据对0的负端3RXMDI1接收数据对1的正端4空置MDI2千兆时用作另一对差分线5空置MDI2-千兆时用作另一对差分线6RX-MDI1-接收数据对1的负端7空置MDI3千兆时用作另一对差分线8空置MDI3-千兆时用作另一对差分线这里容易出问题的地方在于MDI和MDI-X的区分。直连线和交叉线你肯定知道MDI-X就是交换机的接法RJ45的1、2是接收3、6是发送。如果板卡是MDI直接接终端设备那1、2就是发送3、6就是接收。现在很多PHY芯片都支持Auto MDI/X会自动检测对端设备类型并切换收发方向但PCB设计时最好还是按数据手册的参考设计来连别指望芯片自动翻转能救一切。千兆以太网用到的4对线每对的位置在上面表格里已经写了。注意RJ45的4、5和7、8在百兆模式下确实不用但在千兆模式下必须正确连接如果硬件设计时把这四根线悬空了那千兆link就起不来最多只能协商到百兆协议。很多板卡默认只画了1、2、3、6四根线就等着出这种坑得特别留意。4.4 中心抽头的端接方案和网口ESD防护磁性变压器通常有两组中心抽头初级侧接PHY那边次级侧接RJ45那边。次级中心抽头一般通过一个大电阻和电容接到地这个参数组合的意义是给共模电流提供一个低阻抗到地的通路同时不干扰差模信号的传输。具体电阻电容的值PHY厂商有推荐常见的从几十欧到几百欧都有电容则用nF级别。抄参考设计就行别自己乱改。RJ45这边还经常被忽略的就是ESD防护。网线暴露在设备外面很可能因为人体接触或者雷击感应产生静电和浪涌。最常用的防护方案是在RJ45次级侧加TVS管摆放在RJ45和变压器之间能把多出来的能量钳位住。千兆信号频率高TVS管的结电容不能太大否则会把高速信号的高频分量吃掉一般是选择低结电容的高速TVS管原则就是不能让TVS影响眼图。PCB布局时TVS要靠近RJ45放让浪涌路径尽量短别绕一大圈再泄放。还有一个细节外壳地和信号地要分开。RJ45的金属外壳通常接到机壳地通过一个高压电容和信号地相连这样既能把高频干扰引到机壳又能避免直流地环路。有些参考设计直接用一个大电阻或者磁珠连接具体做法按产品形态来选。总之外壳地不能直接和PCB的地大面积短路否则辐射和抗扰度测试会很难看。5. 从硬件设计到调试踩过的坑和排查顺序5.1 链路上电后link不起来的排查清单板卡上电之后如果网口link不起来我会按下面的顺序排查这个方法屡试不爽第一检查PHY芯片的供电和时钟。PHY芯片一般有多个电源域比如3.3V IO电源、1.0V核心电源每个都不能少。用示波器测一下各路电源的电平和纹波看看是否在芯片要求的范围内。同时确认PHY的参考时钟有没有起振、频率对不对千兆PHY的参考时钟一般是25MHz内部PLL倍频到125MHz。时钟有问题PHY根本没法正常工作这一步没通过就先别往下走。第二检查管理接口能否读到PHY寄存器。上电后FPGA通过MDIO接口读写PHY的寄存器第一步先读PHY的ID寄存器。如果能读到正确的芯片型号和版本号说明管理通路是通的PHY本身也基本是正常的如果读不到就检查MDIO的上拉电阻和时序容易忽略的还有MDIO引脚的地址配置因为PHY地址通过外部引脚电平决定芯片地址不对你就没法在总线上找到它。第三看SGMII的signal detect信号。很多PHY芯片有SGMII signal detect输出或寄存器这个信号反映了SGMII接收端有没有检测到FPGA发送过来的有效信号。如果signal detect一直拉低说明FPGA到PHY的SGMII通路有问题要么是GTX没起来要么是差分线上的电容或者极性弄反了。用示波器在PHY的RX差分输入引脚上测一下看有没有1.25Gbps的信号波形这能帮你快速把问题定位在FPGA侧还是PHY侧。第四检查PHY协商状态。如果SGMII侧已经通了但MDI侧还是link不上就读取PHY的状态寄存器看协商状态走到了哪一步是link down还是auto-negotiation failed。用网线直连一台测试电脑或者标准的交换机这是最稳妥的验证方法。如果和电脑link不起来换一对线序交叉的网线试试排除线序问题。5.2 千兆跑不过百兆的常见原因项目里遇到过一种很典型的情况网口link起来速率协商到100M死活上不到1000M。链路本身是通的可就是速率跑不满。原因通常有这几类。第一是RJ45的四对线没全接。硬件设计时只连了1、2、3、6四根线或者焊接时把其他几根弄断。千兆以太网必须使用全部四对双绞线只要有一对没接上协商结果就回落到100M。排查时对着RJ45的焊盘和接线图一根一根量通断不麻烦但很有效。第二是PHY芯片的千兆模式配置不对。有些PHY支持通过引脚或者寄存器配置工作模式如果你把PHY强制设置成了百兆模式自然就协商不到千兆。检查数据手册里关于工作模式的寄存器位看看是不是被固件或者上拉电阻配置成了百兆。第三是板卡设计不良信号质量不满足千兆要求。虽然link能上来但千兆协商需要所有的MDI差分对都通过信号质量检测如果某一对的回波损耗太大或者串扰太强PHY就会放弃千兆回退到百兆。这种问题很难在原理图上发现只能通过改板或者测量验证。5.3 高吞吐率时掉包的信号完整性坑如果link是千兆速率也协商到了1000M但进行大流量数据传输时出现偶发掉包或者吞吐率上下波动这大概率是信号完整性问题。最常见的是SGMII差分对的眼图余量不足或者MDI部分的信号质量不达标。处理这类问题先用FPGA内部的误码率测试功能来快速定位。Xilinx GTX自带PRBS误码仪功能把GTX的TX和RX在数字侧做个环回或者外接一个SMA线把TX差分对直接连到RX差分对跑一下PRBS看误码率是多少。如果PRBS误码率很高那问题基本就在SGMII链路这一块从FPGA到PHY的差分走线要重新审视如果PRBS无误码那问题就在PHY后面的MDI段比如变压器选型不对、RJ45脚位接错、或者网线本身质量太差。眼图测试是验证信号质量最直接的办法。SGMII的差分线在PHY引脚处用示波器测量用带差分探头的高带宽示波器抓住抖动和眼高眼宽。SGMII眼图的模板可以参考IEEE 802.3标准中对1000BASE-X的规定。如果眼图张开度不够可以先看FPGA GTX的预加重和接收均衡参数Xilinx GTX里有TX pre-emphasis和RX equalizer设置适当调节可以看到明显的眼图改善。我遇到过一次眼图闭合的情况调GTX的TX驱动强度把眼高抬起来问题就解决了。MDI侧的眼图也值得测。用示波器差分探头在变压器初级的PHY引脚处量能看到1000BASE-T的复杂多电平信号。这种信号的测量和判断比SGMII难但如果SGMII侧没问题、PHY配置也对、网线也没问题MDI侧一般不会有严重问题中间还有一个变压器挡着相对安全。5.4 问题速查表建议截图保存现象排查方向常见原因PHY寄存器读不到MDIO上拉、PHY地址配置、PHY供电地址跳线错误、MDIO没上拉SGMII signal detect为低GTX时钟、SGMII差分线、极性GTX PLL未锁定、电容虚焊link起来但协商到100MRJ45四对线、PHY模式寄存器、变压器4/5/7/8脚没接好link起来但速率频繁反转PHY的Auto MDI/X和协商参数MDI/MDI-X冲突或协商超时千兆速率但掉包SGMII眼图、GTX预加重、电源纹波电源纹波大、GTX均衡参数不合适长时间运行后掉线散热、PHY过热、变压器饱和PHY散热不足、工作环境温度过高这个表是我自己调试多个网口项目后整理出来的遇到问题先对号入座能节省不少时间。6. 写在最后的一些体会做FPGA板卡上的网口设计值得投入时间理解SGMII这条完整的传输路径。很多刚入行的同事喜欢直接抄参考设计这当然省事但等到板卡出来出问题的时候如果不懂信号从FPGA管脚到RJ45是怎么走的连排查方向都找不到只能瞎换电容、瞎调寄存器最后甚至把问题归到FPGA逻辑上实际上是硬件上的焊接和布线问题。我自己的习惯是画原理图之前先在纸上画一遍信号路径图从FPGA的GTX引脚到PHY的信号引脚再标出变压器和RJ45对应的网络名和信号名。网络命名这一个小动作很关键比如TX_P、TX_N、MDI0_P谁接到哪里一眼就能看清Debug的时候也方便。画完图纸再检查一遍每一段的阻抗要求和端接方案确认无误后才开始正式画图。这个方法帮我规避了不少低级错误尤其是差分线极性接反这种问题在布局时就可以提前发现。如果你也是第一次做带SGMII网口的FPGA板卡我的建议是第一块板子尽量多留测试点把SGMII的TX和RX差分线引到可测试的过孔或测试点把PHY的MDI信号也留出量测的余地哪怕测试点多少会影响一些完整性也值得牺牲一点点性能。等板子调通了下一版再把测试点去掉做产品化设计。硬件设计是门实践的学问理论再熟悉板上见真章。踩过坑、量过波形、看过眼图之后你对这条SGMII链路的理解才会真正深进去下次再画网口就是水到渠成的事了。
返回列表