☰
基于RTL8367RB与立创EDA的5口千兆交换机设计实战
2026/10/6 6:50:19 网站建设 项目流程

1. 为什么我要用RTL8367RB-VB-CG做一台5口千兆交换机

去年年底整理工作室的时候,发现角落里堆了好几台百兆交换机,要么是接口不够用,要么是跑满带宽时发热严重。当时正好在调一个多网口边缘计算网关的方案,需要一台体积小、功耗低、能稳定跑满千兆的5口交换板,市面上成品要么尺寸不合适,要么价格虚高,索性决定自己画一块。

选芯片的时候其实纠结了一阵。市面上常见的千兆交换芯片有几家,Realtek的RTL8367系列算是资料相对丰富、外围电路也不算太复杂的一档。我最终锁定的是RTL8367RB-VB-CG,QFN-128封装,支持5个10/100/1000M自适应端口,内置RGMII接口可以外挂主控,也支持无管理模式的即插即用。对于我这种不需要VLAN和网管功能、只要求稳定转发的场景来说,它的性价比非常合适。

整个项目从原理图到PCB打样再到上电调试,前后大概花了三周时间,中间踩了不少坑,也积累了一些在常规教程里看不到的经验。这篇文章我会把立创EDA(我用的是专业版)画原理图和PCB的全过程、关键电路的设计考量、布线时的取舍、以及上电后遇到的各种问题,尽可能完整地记录下来。如果你也在用立创EDA做千兆交换机或者类似的网络硬件设计,这篇内容应该能帮你少走一些弯路。

需要提前说明的是,RTL8367RB-VB-CG这颗芯片的完整数据手册需要签NDA才能拿到,网上能找到的公开资料比较有限。我下面涉及到的寄存器配置和部分引脚定义,一部分来自公开的参考设计,一部分是我自己实测验证的结果,如果你要直接复现,建议先用万用表和示波器把关键节点确认一遍再上电。

2. 整体方案设计与关键器件选型

2.1 系统框图与供电架构

整块板子的核心思路很清晰:RTL8367RB-VB-CG作为交换核心,负责5个端口的PHY和交换逻辑;外部只需要给它提供稳定的电源、时钟和必要的配置引脚电平,它就能独立工作,不需要额外的MCU干预。这也是我选它的一个重要原因——无管理模式下外围电路极简,对于我这种只想做一块“哑交换机”的需求来说,少一个主控就少一堆麻烦。

供电方面,RTL8367RB-VB-CG需要三路电压:3.3V(IO和部分模拟电路)、1.8V(部分内部电路)、1.0V(核心电压)。三路电压的上电时序有要求,一般是1.0V先上或者和1.8V同时上,3.3V最后上,具体顺序在数据手册里有明确说明。我一开始想用三颗LDO分别供电,后来算了一下电流,1.0V核心电压在满载时大概需要1.2A左右,LDO的压差损耗太大,发热扛不住,最后改成了DC-DC降压+ LDO的混合方案。

具体来说,输入是12V DC,先用一颗同步降压芯片降到3.3V,然后再从3.3V分别用LDO降到1.8V和1.0V。3.3V这一路电流最大,用DC-DC效率能到90%以上;1.8V和1.0V的电流相对小一些,用LDO纹波更干净,对PHY的模拟电路更友好。这个取舍在后面调试的时候证明是对的,PHY的误码率一直很稳定。

2.2 关键器件选型与BOM控制

除了主芯片,几个关键器件的选型也直接影响性能和成本:

  • 晶振:RTL8367RB-VB-CG需要一颗25MHz的无源晶振,精度要求±50ppm以内。我选的是3225封装的贴片晶振,负载电容12pF。这里要注意,晶振的负载电容必须和芯片内部电容匹配,不然起振会不稳定。
  • 网络变压器:每个端口都需要一颗千兆网络变压器,我选的是内置共模电感的型号,可以省掉外部共模电感,PCB面积能小一圈。
  • RJ45连接器:带变压器的集成式RJ45虽然方便,但价格贵不少,而且高度固定。我最后用的是分离式方案,RJ45座子+独立变压器,布局更灵活。
  • 去耦电容:这颗芯片的电源引脚非常多,每个电源引脚旁边都要放0.1uF的去耦电容,1.0V核心电源还需要额外加10uF的钽电容或者陶瓷电容做储能。我数了一下,整块板子用了将近60颗去耦电容,这个数量不能省。

BOM成本算下来,主芯片大概占总成本的一半左右,变压器和RJ45占三成,剩下的电源和阻容占两成。小批量打样的话,单板成本能控制在合理范围内,比买成品交换机便宜不了太多,但胜在尺寸和接口布局完全按自己的需求来。

2.3 立创EDA专业版的项目初始化

我用的立创EDA专业版,版本是V2.x。新建工程的时候有几个设置建议提前做好:

  • 图纸尺寸:原理图用A3,PCB用四层板(顶层、内层1、内层2、底层)。千兆交换机的信号完整性要求比较高,四层板是最低配置,两层板我试过,差分线的阻抗根本控不住。
  • 层叠设置:在立创EDA的层管理器里,把内层1设为GND平面,内层2设为电源平面。信号层走顶层和底层,这样差分线可以参考完整的地平面,阻抗一致性会好很多。
  • 设计规则:提前把线宽、间距、过孔尺寸设好。差分线我设的是6mil线宽、6mil间距,过孔用0.3mm孔径、0.6mm外径。这些参数后面布线的时候会反复用到,提前设好能省很多事。

提示:立创EDA专业版的层叠管理器里可以设置阻抗模板,但实际阻抗还是取决于板厂的工艺。打样前最好和板厂确认一下层叠结构和阻抗控制能力,不然算出来的线宽可能和实际对不上。

3. 原理图设计与核心电路解析

3.1 主芯片最小系统电路

RTL8367RB-VB-CG的最小系统包括几个部分:电源引脚、晶振电路、复位电路、配置引脚和RGMII接口(如果不用可以悬空)。

电源部分是重点。芯片的电源引脚按功能分成了好几组,每组都要单独去耦。我在原理图里把每一组电源引脚都画了独立的去耦电容组,0.1uF的小电容尽量靠近引脚放置,10uF的储能电容放在电源入口附近。这里有个细节:1.0V核心电源的电流比较大,走线要尽量宽,我在PCB上用的是20mil的线宽,从电源芯片到芯片引脚全程加粗。

晶振电路比较简单,25MHz晶振两端各接一个12pF的电容到地,然后直接连到芯片的XI和XO引脚。需要注意的是,晶振下面不要走任何信号线,PCB上要挖空或者铺地隔离,不然会引入噪声导致时钟抖动。

复位电路我用了一颗专用的复位芯片,输出低电平复位信号给芯片的RST引脚。RTL8367RB-VB-CG的复位引脚是低电平有效,复位时间要求至少10ms。我一开始想用RC复位电路,后来算了一下,RC的复位时间受温度和电压影响太大,不够可靠,还是用了专用芯片。

配置引脚决定了芯片的工作模式。RTL8367RB-VB-CG有一组配置引脚,通过上下拉电阻来设定端口数量、PHY地址、工作模式等。我这里是5口全启用、无管理模式,所以按照数据手册的推荐值配置了上下拉。这些电阻在PCB上要靠近芯片放置,走线尽量短,避免引入干扰。

3.2 千兆PHY接口与网络变压器电路

每个端口的PHY接口都是标准的千兆差分对:TX+/TX-、RX+/RX-,共四对差分线。RTL8367RB-VB-CG的PHY接口是电压驱动型,不需要外部上拉电阻,直接连到网络变压器的初级线圈就行。

网络变压器的作用有三个:电气隔离、共模抑制和阻抗匹配。我选的变压器是1:1的匝比,初级中心抽头接3.3V(通过一个0.1uF电容到地),次级中心抽头通过一个75欧姆电阻和一个1000pF电容到地。这个75欧姆电阻和1000pF电容组成的RC网络是Bob Smith端接电路的一部分,主要用来抑制共模噪声。

这里有个容易忽略的细节:变压器初级和次级之间的隔离带在PCB上要保证足够的爬电距离。我一开始布局的时候没注意,变压器下面的走线离焊盘太近,后来检查的时候发现爬电距离不够,重新调整了布局。一般建议隔离带宽度至少2mm,高压测试要求高的场合还要更宽。

RJ45连接器这边,每个差分对要尽量等长,差分阻抗控制在100欧姆±10%。我在立创EDA里用差分对布线功能,设置好线宽和间距后,软件会自动帮你保持等长。但要注意,RJ45座子内部的走线长度是固定的,所以从变压器到RJ45的差分线要尽量短,减少不匹配。

3.3 电源树设计与上电时序控制

电源树的设计前面提过,12V输入,先降到3.3V,再降到1.8V和1.0V。这里重点说一下上电时序。

RTL8367RB-VB-CG要求1.0V和1.8V先上,3.3V后上,或者三者同时上但3.3V不能早于1.0V。我一开始没注意这个要求,直接三路同时上电,结果芯片偶尔起不来,复位后也不稳定。后来查了数据手册才发现时序问题。

解决方案有两种:一种是用带时序控制的电源芯片,另一种是用简单的RC延时电路控制使能引脚。我用的是第二种,在3.3V的使能引脚上加了一个RC延时,让3.3V比1.0V晚大概5ms上电。实测下来这个延时足够了,芯片每次都能正常启动。

注意:上电时序这个问题在调试初期很容易被忽略,因为有时候芯片能起来,有时候起不来,看起来像是随机故障。如果你遇到芯片时好时坏的情况,先检查一下上电时序。

3.4 立创EDA原理图绘制技巧

用立创EDA画原理图有几个技巧可以提升效率:

  • 多用网络标签:千兆交换机的原理图连接比较多,用网络标签代替长走线,图纸会清爽很多。立创EDA支持全局网络标签,同名标签自动连接。
  • 元件分组:把去耦电容、配置电阻这些重复性高的元件做成一个分组,复制粘贴的时候一起复制,不容易漏。
  • DRC检查:画完原理图后一定要跑一遍DRC,检查有没有未连接的引脚、重复的位号、电源冲突等问题。我这次就发现了一个电源引脚悬空的问题,DRC直接报出来了。

原理图完成后,导出BOM和网表,就可以开始PCB布局了。

4. PCB布局布线与信号完整性实战

4.1 四层板层叠结构与阻抗控制

四层板的层叠结构我前面提过,顶层信号、内层1地平面、内层2电源平面、底层信号。这个结构的优点是信号层都有完整的参考平面,差分线的阻抗容易控制。

具体的层叠参数(和板厂确认过的):

层材料厚度
顶层铜铜箔1oz
介质FR-40.2mm
内层1铜铜箔1oz
介质FR-41.0mm
内层2铜铜箔1oz
介质FR-40.2mm
底层铜铜箔1oz

按照这个层叠,用立创EDA的阻抗计算器算出来,6mil线宽、6mil间距的差分线阻抗大概在100欧姆左右,和板厂确认后误差在可接受范围内。

4.2 主芯片布局与去耦电容放置

主芯片放在板子中央,5个RJ45座子沿着板边排列,这样差分线的走线最短。去耦电容的放置是布局阶段最耗时的部分,因为数量太多了。

我的做法是:先把芯片的所有电源引脚标出来,然后在每个引脚旁边放一个0.1uF的电容,尽量靠近引脚,走线最短。10uF的储能电容放在芯片的四个角附近,通过过孔直接连到内层的电源平面。这里要注意,去耦电容的接地端要通过过孔直接连到地平面,不要用长走线绕。

实操心得:去耦电容的放置顺序建议先放0.1uF的,再放10uF的。0.1uF的电容对位置最敏感,必须紧贴引脚;10uF的电容位置可以稍微宽松一些。

4.3 差分线布线与等长匹配

千兆差分线的布线是整个PCB设计中最关键的部分。我的布线策略是:

  • 优先布差分线:先把5个端口的差分线布完,再布其他信号线。差分线走顶层和底层,尽量不换层,如果必须换层,要在换层过孔附近加回流地过孔。
  • 等长匹配:每对差分线内部的P和N要等长,误差控制在5mil以内。不同差分对之间的长度差异可以放宽一些,但最好也控制在50mil以内。
  • 远离干扰源:差分线要远离晶振、电源电感、时钟线等噪声源,间距至少3倍线宽。

立创EDA的差分对布线功能可以自动保持等长,但有时候自动布线会绕远路,我最后还是手动调整了几对。手动调整的时候可以用软件里的等长调谐功能,它会显示当前的长度差,方便你调整。

4.4 星型接地与电源平面分割

接地是千兆交换机PCB设计的另一个重点。我用的是星型接地的思路:数字地和模拟地在芯片下方分开,最后在一点汇合。具体做法是:

  • 内层1的地平面在芯片下方分成数字地和模拟地两个区域,中间用一条窄桥连接。
  • 每个端口的变压器下方铺模拟地,芯片的数字部分铺数字地。
  • 电源平面在内层2,3.3V、1.8V、1.0V各自独立分割,避免相互干扰。

星型接地的核心思想是让模拟电流和数字电流各自回流,最后在一点汇合,避免数字噪声串到模拟电路里。实测下来,PHY的误码率比不分地的时候低了一个数量级。

4.5 立创EDA布线效率提升技巧

立创EDA专业版在布线效率上做了不少优化,我常用的几个功能:

  • 交互式布线:按W键切换线宽,按Tab键切换过孔尺寸,布线的时候不用频繁打开设置面板。
  • 差分对布线:选中差分对后按快捷键,软件会自动保持等长和间距。
  • 铺铜:布线完成后铺铜,立创EDA支持动态铺铜,修改走线后铜皮会自动更新。
  • DRC检查:布线完成后跑DRC,检查线宽、间距、过孔等是否符合设计规则。

整个PCB布线大概花了三天时间,主要是差分线的调整比较耗时。布线完成后导出Gerber文件,发给板厂打样。

5. 打样、焊接与上电调试实录

5.1 PCB打样与SMT贴片注意事项

板子是在嘉立创打的样,四层板,沉金工艺,5片起打。打样前我把Gerber文件在立创EDA里预览了一遍,确认没有明显的错误。打样周期大概三天,收到板子后检查了一下外观,没有明显的划痕或者变形。

焊接方面,QFN-128封装的芯片手工焊接难度比较大,我用了钢网+热风枪的方案。具体步骤:

  1. 在PCB焊盘上涂锡膏,用钢网对准后刮平。
  2. 用镊子把芯片放到焊盘上,注意对齐第一脚。
  3. 热风枪调到280度左右,从芯片上方均匀加热,看到锡膏融化后停止。
  4. 冷却后用放大镜检查焊点,特别是芯片四周的引脚有没有虚焊或者连锡。

注意:QFN封装的芯片底部有散热焊盘,焊接前要在焊盘上涂适量锡膏,确保散热焊盘和PCB焊盘充分接触。如果散热焊盘虚焊,芯片满载时会过热。

5.2 上电前检查与首次上电

上电前我做了几项检查:

  • 用万用表测各路电源对地的阻抗,确认没有短路。
  • 检查芯片的电源引脚和地引脚有没有连锡。
  • 确认晶振、复位电路、配置电阻都焊接正确。

首次上电我用的是可调电源,限流设在500mA,电压从0慢慢往上调。调到12V后,电流稳定在300mA左右,没有异常发热。然后用万用表测各路电压:3.3V、1.8V、1.0V都正常,纹波在50mV以内。

接下来测晶振,用示波器探头点在XI引脚上,能看到25MHz的正弦波,幅度大概1Vpp,起振正常。复位引脚在上电后大概10ms从低电平变成高电平,时序也对。

5.3 端口连通性测试与速率协商

上电正常后,我用网线把电脑和交换板的一个端口连起来,电脑显示网络已连接,速率是1.0Gbps。然后依次测试了5个端口,都能正常协商到千兆。

接下来做吞吐量测试,用iperf3在两台电脑之间跑数据,中间经过交换板。实测下来,单向吞吐能跑到940Mbps左右,双向同时跑也能维持在900Mbps以上,基本跑满了千兆的带宽。这个结果比我预期的好,说明差分线的阻抗控制和接地设计是有效的。

5.4 常见问题与排查技巧实录

调试过程中遇到了几个问题,这里整理成速查表:

问题现象可能原因排查方法解决方法
芯片上电后不启动上电时序不对用示波器测各路电压的上电顺序调整使能引脚的RC延时
某个端口不亮差分线虚焊或变压器损坏用万用表测变压器初级次级通断重新焊接或更换变压器
速率只能协商到百兆差分线阻抗不匹配用TDR测差分线阻抗调整线宽和间距
跑满带宽时丢包电源纹波太大用示波器测电源纹波增加去耦电容或更换LDO
芯片发热严重散热焊盘虚焊用手触摸芯片表面重新焊接散热焊盘

实操心得:调试的时候建议先测电源,再测时钟,最后测信号。电源和时钟没问题,信号的问题一般都能通过示波器和万用表定位。

6. 写在最后的一些个人体会

这块板子从设计到调试完成,前后大概三周时间,中间有差不多一周是在等打样和排查问题。回过头来看,最耗时的部分不是画原理图或者布线,而是调试阶段的各种意外。上电时序、差分线阻抗、散热焊盘这些问题,在原理图阶段很难发现,只有实际跑起来才会暴露。

如果让我重新做一遍,我会在以下几个方面做得更好:一是提前和板厂确认层叠结构和阻抗控制能力,避免打样后才发现阻抗对不上;二是在PCB上多留一些测试点,调试的时候方便测量;三是去耦电容的布局再紧凑一些,特别是1.0V核心电源的去耦,对稳定性影响很大。

立创EDA专业版在这个项目里的表现整体让我满意,差分对布线和动态铺铜功能省了不少事。当然它也有一些不足,比如阻抗计算器的精度有限,复杂封装的引脚管理不如Altium方便。但对于中小规模的硬件设计来说,它已经足够用了,而且免费版的功能对个人开发者来说基本够用。

这块交换板现在还在我工作室里跑着,带了三台服务器和两台工作站,连续运行了几个月没出过问题。后面我打算在这个基础上加一个RGMII接口,外挂一颗MCU做简单的端口状态监控和VLAN配置,把它变成一台可管理的交换机。到时候如果有新的经验,再整理出来分享。

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

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

立即咨询