
拆了三个车载以太网转换盒聊聊百兆100Base-T1转TX的硬件选型与避坑附芯片方案对比手里正好攒了三个不同来源的车载以太网转换盒都是把100Base-T1转成普通100Base-TX网口的设备。趁着周末全拆了一遍照着PCB走线和芯片型号逐一核对了方案。说实话这三个盒子价位差了三倍内部设计思路和使用体验的差距比我想象中要大得多。这篇就围绕拆解结果把T1转TX的硬件选型、桥接架构、电源处理、PCB布线这些环节一次聊透尤其会把那些容易让人翻车的细节单独拿出来讲。先给没接触过车载以太网的朋友快速交代一下背景。100Base-T1是汽车行业里专门为ECU、摄像头、域控制器之间通信设计的物理层标准一对双绞线就能跑100Mbps比传统100Base-TX少了一对线重量轻、连接器小电磁辐射也被压得很低。但问题在于实验室里的电脑、示波器、协议分析仪几乎全是RJ45网口走的是100Base-TX两边物理层完全不同不能直接插在一起。这时候就需要一个物理层转换盒把T1那一侧的差分信号转成标准以太网信号让普通PC能直接抓包、刷写、跑测试。下面直接从拆解开始讲。1. 拆机前必须先搞懂的T1和TX到底差在哪很多人在选型阶段就被绕晕了因为两款PHY芯片接口看起来都一样都是RMII/MII接MAC但物理层协议完全不同。搞不清这些差异后面排查问题基本靠猜。1.1 物理层差异决定了转换盒不可能“免驱直连”先看一张对比表这是我在做转换盒需求分析时反复对照的核心参数。对比项100Base-T1100Base-TX传输介质单对非屏蔽双绞线两对双绞线2对5类线编码方式PAM33电平脉冲幅度调制MLT-33电平归零编码传输距离15米实际设计建议留余量100米连接器非标汽车连接器H-MTD/MQS等RJ45自协商不支持传统自协商采用主从同步支持Auto-Negotiation电磁发射专门优化满足车载EMC要求通用EMC无车载特殊要求典型唤醒/诊断支持部分网络唤醒无T1最核心的设计目标是让一对线同时承载数据和电源域唤醒信号同时对EMI要求极苛刻所以它用了PAM3编码把信号能量尽量压到低频段。TX则是用了两对线通过电压幅值的跳变来传数据。这两者之间没有直接兼容的可能必须经过MAC层转发或者交换芯片桥接这就是转换盒存在的原因。1.2 转换盒的应用场景和真实需求我在实验室和产线接触过不少T1转换需求总结下来就三个方向实车或台架测试ECU上的T1调试口要接到电脑上跑Wireshark抓包或者做DoIP刷写这种场景要求转换盒尽量透明延迟越低越好。产线检测总装线上要检测T1链路是否正常需要稳定长时间运行不能频繁掉线。车载以太网测试专项要测PHY的信号质量、SQI、丢包率、时间同步等这种就必须用支持寄存器配置、好带旁路功能的设备。不同需求直接决定选什么桥接方案。如果只是测试用MCU做MAC桥就够了灵活但延迟偏高如果是产线交换机芯片方案更稳如果要做时间敏感型测试那FPGA和专用时间戳就绕不开。这三类思路刚好对应我拆的三台盒子。2. 三台转换盒的拆机实录不同的设计思路同样的目标2.1 第一台入门级MCU桥接方案双PHY加STM32第一台盒子是最常见的小体积金属壳大概名片大小背面一个T1专用双芯接口正面一个RJ45。拆开之后PCB板很小双面布局没有屏蔽罩电源部分也比较简单。核心芯片组T1侧PHYNXP TJA1101单端口100Base-T1 PHYRMII接口TX侧PHYMicrochip LAN8720A单端口100Base-TX PHY桥接MCUSTM32F407VGT6内置两个独立MAC各接一个RMII接口电源12V输入MP1584降压到5V再经LDO降到3.3V给PHY和MCU供电这套方案的思路很清楚用一颗带双以太网MAC的MCU做透明网桥。STM32启动后把两个MAC都配成100Mbps全双工CPU轮询DMA接收描述符从T1侧收进来的帧原封不动写到TX侧发送缓冲区反过来也一样。固件里就是一段几百行的MAC桥代码看起来简单但实际转发时CPU中断压力很大。我测了一下这台盒子的延迟ping车载ECU网关平均在0.5ms到0.8ms之间波动。其实对普通调试和DoIP刷写来说完全够用但如果要跑IEEE 802.1AS时间同步这个抖动就太明显了几百微秒到毫秒级的变化会直接毁掉时间同步精度。还有一个细节LAN8720A的RMII REF_CLK必须要由外部提供50MHz时钟或者由MCU输出50MHz时钟给PHY而TJA1101的RMII时钟方向默认是可以由PHY输出的。两边时钟方向不统一的时候如果MCU代码只写了一边另一个PHY就起不来这在现场踩坑概率非常高。2.2 第二台交换芯片桥接方案明显看出厂家的功底第二个盒子价格贵了一倍外壳是压铸铝带安装耳体积大一圈。拆开后发现PCB是四层板接地过孔分布非常密集电源和信号区域有明显分割T1侧连接器旁边专门留了共模电感和滤波电容的位置一看就是按车载EMC标准设计过的。核心芯片组T1侧PHYNXP TJA1101和第一台同型号但外围电路完整非常多交换芯片Microchip LAN9303I三端口二层交换芯片内置两个10/100M以太网PHY一个RMII/MII主机端口其中LAN9303的内置PHY直接引出到两个RJ45网口其中一个用于级联主机RMII端口接到TJA1101这种架构和我前面说的“双PHY加MCU”有一个本质区别数据平面不再经过CPU而是由ASIC交换芯片直接硬件转发。LAN9303内部维护MAC地址表端口之间搬运帧几乎不占用处理器资源延迟非常稳定。我实测这台盒子ping网关的抖动基本在0.1ms上下连续跑24小时也不掉包。另外LAN9303自带MII/RMII端口镜像功能可以很方便地设置端口镜像抓包不需要在MCU代码里动刀调试体验好很多。不过交换芯片方案的坑也不小配置比较复杂LAN9303上电后需要通过I2C或MDIO写入寄存器群包括端口VLAN模式、MAC地址老化时间、风暴抑制等等配置错了要么端口不通要么出现广播风暴。厂家在出厂固件里做了很多polyfill普通用户倒是看不出来。2.3 第三台带旁路和时间戳的专业测试设备第三台严格来说已经不算“转换盒”了更像是一个小型车载以太网测试仪。外壳是标准仪表壳正面带OLED屏支持USB-C和RJ45背面是一个T1输入、一个T1输出可以串联在真实链路上做“边到边”监测。核心芯片组T1侧PHYTI DP83TC811R带电缆诊断、SQI信号质量指示TX侧PHYRealtek RTL8211F100/1000M自适应FPGALattice ECP5负责帧解析、时间戳、旁路转发主控Cortex-M7 MCU负责人机交互和与FPGA协同这台盒子最大的特点是支持物理层透明旁路也就是说T1信号进来之后FPGA可以做分光复制一个副本直接原样转发到输出口另一个副本做时间戳后通过TX口送到PC。这样就不需要在真实ECU链路里额外插入设备可以把测试点做成在线监测不会影响原有通信。DP83TC811这颗PHY也很有意思它的寄存器里自带线路质量诊断信息可以读出差分信号幅度、SQI等级、线缆长度估算这在产线检测里非常实用。实际测试中我拿一条8米长、手工压接的线缆做诊断它给出的SQI数值和用商用示波器量出来的信号质量结果趋势完全一致。2.4 三台盒子方案对比速览对比项目盒子1 MCU桥接盒子2 交换芯片盒子3 FPGA测试仪T1 PHYTJA1101TJA1101DP83TC811TX/交换方案STM32F407LAN8720LAN9303I内置PHYRTL8211FECP5 FPGA转发方式CPU软件转发ASIC硬件转发FPGA硬件转发延迟0.5~0.8ms0.1ms稳定0.1ms以内旁路监测不支持不支持支持时间戳无无硬件时间戳适用场景简单调试、刷写常规测试、多端口扩展车载以太网专项测试看完了三套方案可以明显得出一个结论转换盒的成本和性能差距并不仅体现在PHY选型上桥接架构才是决定延迟、稳定性、高级功能的关键。3. 芯片方案选型T1 PHY怎么选桥接用哪种思路拆机只是表象真正有价值的是总结出一套选型逻辑。下面我从PHY和桥接两个维度详细分析。3.1 T1 PHY芯片的核心选型指标目前市场主流的100Base-T1 PHY有NXP TJA1101/TJA1102、Marvell 88EA1512、TI DP83TC811它们都能满足基本通信要求差异主要体现在接口形式、诊断能力、时间戳和车规等级。芯片型号接口诊断功能时间戳典型温度范围备注TJA1101RMII/MII链路诊断、SQI无-40~105℃出货量大资料多88EA1512RMII/MII/SGMII高级电缆诊断支持-40~105℃双端口版本可做T1和TXDP83TC811RMII/MII/SGMIISQI、线缆长度可选-40~105℃寄存器诊断功能丰富如果只是做通用转换盒TJA1101是最稳的选择参考设计多、驱动代码容易找、开发社区活跃。如果要做测试仪器DP83TC811的SQI诊断和线缆诊断非常加分。88EA1512的优势是单芯片方案就可以内置两个端口T1和TX都在一颗芯片内设计更紧凑但采购成本和配置难度都更高。需要注意一个很多人忽略的点T1 PHY的“主从模式”。100Base-T1链路两侧必须一个配置为主节点Master另一个配置为从节点Slave。不像100Base-TX有自协商可以自动搞定T1的主从是通过寄存器或者硬件引脚强制配置的两侧都配成Master或者都配成Slave链路直接起不来。这也是转换盒和ECU对接时最常见的建链失败原因之一。3.2 桥接方案怎么选三种思路逐一拆解桥接是整个转换盒的灵魂选型直接决定延迟、转发能力和可扩展性。我把见过的方案归成三类方案AMCU双MAC软件桥这是成本最低的方案一颗带两个MAC的MCU加两颗PHY就能搞定。优点是开发灵活代码改起来方便缺点也明显CPU中断频繁延迟抖动大带宽跑满时丢包风险高而且不支持802.1AS这样需要硬件时间戳的协议。适合只做简单调试工具或者产品目标是把物料成本压到最低。方案B交换芯片ASIC桥用带交换功能的芯片做数据平面比如LAN9303、KSZ8863这类三层口交换芯片MAC地址表学习、转发都是硬件完成。延迟稳定、多端口扩展方便很多还能支持端口镜像对调试特别友好。缺点是需要初始化一堆交换寄存器而且芯片价格比普通MCU贵几十块。方案CFPGA可编程桥FPGA可以做到真正的线速转发并且支持自定义帧处理逻辑、硬件时间戳、多通道旁路、在复杂测试场景下几乎就是唯一选择。但FPGA开发周期长成本高对团队数字逻辑设计能力要求高。一般产品很少用测试仪器、产线专用设备才会选。三套方案我的建议是做产品设计尤其是准备量产卖钱的设备直接选方案B交换芯片省下的调试时间足以抵消芯片价格。如果只是自己开发板做实验方案A完全能跑。方案C留给有明确时间同步、在线监测需求的人。3.3 TX侧PHY和网口变压器的选型TX侧PHY选择相对轻松市面上成熟的RMII百兆PHY都能用比如LAN8720A、RTL8201F、IP101GRI。需要注意三点一是供电电压是1.2V内部核心还是3.3V统一供电二是RMII参考时钟方向是否可配置三是驱动资料是否齐全。LAN8720A因为STM32生态配套多用的最多。网口变压器也不建议省。T1侧看起来只有两根线但引脚上仍然需要共模扼流圈和滤波电容建议直接用支持100Base-T1的共模电感比如TDK、Murata对应型号而不是拿普通网口变压器硬凑。TX侧的RJ45变压器就选11的常见百兆隔离变压器注意抽头接法要和PHY厂商参考设计一致。4. 硬件设计避坑这些细节才是真正决定成败的地方拆机过程中我看了很多转换盒内部走线也踩过不少自己做板时的坑。下面这些细节我认为每个准备做T1转TX硬件的人都应该先看一遍。4.1 T1 PHY的主从配置和PHY地址冲突T1 PHY上电后第一件事就是读硬件配置引脚决定了PHY地址、主从模式、RMII时钟方向、接口模式。很多问题直接从这儿来。主从模式TJA1101的寄存器0x0133里第0位控制主从1为主0为从。转换盒通过寄存器配置为主节点ECU侧配置为从节点这样才能建链。如果接了个第三方ECU最好通过MDIO/SPI把PHY寄存器读出来看看当前是什么模式而不是盲改。PHY地址RMII/MDIO总线上如果有多个PHY地址冲突会导致读出来的寄存器完全是错的。转换盒上基本一个PHY挂在一条MDIO上但如果你把两个PHY挂同一总线一定要确认地址不重复。复位时序TJA1101的复位低电平时间要求至少10us释放后要等晶振稳定、PHY内部校准完成通常要给100ms以上延时再操作寄存器。我看过有产品把PHY复位和MCU复位连在一起MCU启动快PHY还没好就去写寄存器结果全写失败链路根本建不起来。4.2 共模电感、差分阻抗和PCB布线100Base-T1物理层对信号质量要求比普通100M以太网高得多因为只有一对线收发都在同一对线上回波和串扰控制非常关键。差分线对必须严格等长、等间距差分阻抗控制在100Ω±10%。用四层板时T1差分对走顶层底层铺完整GND参考平面不要跨越分割槽。T1 PHY与连接器之间要加共模扼流圈位置靠近连接器并且共模电感到PHY之间的走线越短越好。很多便宜的转换盒只用两层板T1侧走线没有参考平面信号质量差线缆稍长一点就丢包。拆的第二台盒子是四层板T1差分对旁边地孔密密麻麻这就是能跑24小时不掉包的原因。注意T1的两根线是不能交叉的行业内叫“A/B极性”。如果两根线接反链路不会协商成功测试时经常遇到那种“明明线序看着对就是不通”的情况拿万用表量一下连接器极性立刻见分晓。4.3 电源设计和车载瞬态防护车载环境电源非常恶劣12V电瓶在启动瞬间可以掉到6V抛负载时可能冲到60V甚至更高。转换盒如果直接用普通LDO降压分分钟烧。我拆的三台盒子第一台电源只有MP1584加一个TVS管用料很省第二台有三重防护反接保护二极管、TVS、共模电感和LC滤波依次排列第三台测试仪更是直接用的宽压DCDC模块。做车载转换盒的电源部分我建议至少包含输入端防反接二极管或P-MOS防反接电路TVS管选型要按PKE/抛负载标准选比如SMBJ16A或SM6T系列DCDC输入耐压至少40V以上推荐用MP1584、TPS5430这类车规级常用料PHY的数字和模拟供电要分开滤波尤其T1 PHY的VDD和VDDIO如果有独立引脚每个引脚都放0.1uF加1uF组合电容并尽量靠近引脚曾经有同事做了一版转换盒自己在实验室用稳压电源供电一切正常拿到车上刚一启动直接白屏查了半天就是电源入口没有加TVS抛负载瞬间把LDO击穿了。这个教训非常典型。4.4 RMII时钟拓扑最容易被忽略的“隐形杀手”RMII接口需要50MHz参考时钟但时钟来源有两种方式一种是PHY输出REF_CLK叫时钟源模式另一种是外部晶振或MCU输出叫时钟输入模式。不同PHY的默认方向还不一样而且部分PHY可以通过寄存器翻转方向。转换盒这种同时接两颗PHY的设计必须保证两边的RMII时钟都能正确同步到同一个MAC侧。我见过最惨的情况是TJA1101配置成了输出50MHzLAN8720A配置也输出50MHz两个PHY在RMII总线上都试图驱动时钟线结果是总线电平冲突网口彻底烧死而用万用表量电压居然还是正常。这类问题排查非常费时建议设计阶段就把时钟来源画成一个明确表格写清楚每个PHY的REF_CLK方向、电压域和上下拉配置。另外RMII的CRS_DV和RXD[1:0]这些信号上时序要求比较严格走线要等长尽量控制在±5mil以内。MCU的RMII接口和PHY之间不要经过太长的过孔线特别是在双面板上一不小心就会形成巨大的stub信号完整性问题立刻显现。4.5 ESD和EMC实测车载以太网连接器裸露在车内ESD防护不能省。推荐在T1连接器信号线上加TI TPD4E05U06或类似车规ESD防护器件钳位电压低结电容小不影响信号质量。RJ45侧虽然通常有变压器隔离但金属外壳接地处理也需要注意防止共模电流进入主板。我自己做EMC摸底测试时发现T1转换盒最容易高频辐射超标的点就在T1差分对和共模电感之间那段走线。处理方法是在连接器周围加围地差分对穿地孔阵列尽量压缩高频回流路径的面积。5. 实测数据与调试经验把盒子上电后的那些事说透硬件做出来只是第一步调试才是真正耗费精力的部分。分享几个实测数据和我在调试过程中总结的排查方法。5.1 三台盒子的吞吐量和延迟实测测试环境很简单T1侧接到一个车载以太网交换机模组TX侧接PC用iPerf3跑TCP和UDP单向流量同时用ping统计RTT延迟。测试项目盒子1盒子2盒子3TCP吞吐量94.1 Mbps94.8 Mbps95.1 MbpsUDP吞吐量97.2 Mbps98.3 Mbps98.6 Mbps平均ping延迟0.6 ms0.1 ms0.1 ms连续运行6小时丢包率0.02%0%0%从数据看三台盒子跑满百兆带宽都没什么问题差距主要体现在延迟和长时间稳定性。纯软件桥的盒子短时间跑也能到94Mbps以上但时间一长在CPU中断密集的瞬间偶尔就会丢包软件栈的抖动是硬伤。5.2 PC端配置的几种实用技巧把T1转换盒插到电脑上以后很多人会遇到“网络图标显示未识别网络”的情况这是因为PC网卡和转换盒TX侧PHY之间没协商出正确的双工模式。调试时建议手动把PC网卡强制成100M全双工避免自动协商的奇奇怪怪状态。Linux下可以用ethtool快速确认sudo ethtool eth0 # 查看支持的模式和当前协商状态 sudo ethtool -s eth0 speed 100 duplex full autoneg off # 强制100M全双工Wireshark抓包时如果发现STP/RSTP报文很频繁也不用慌这是LAN9303这类交换芯片默认跑了生成树协议转换盒非管理型产品一般没必要开STP可以在交换配置里关掉。5.3 常见问题与排查速查表现象可能原因处理方法T1链路建不起来主从模式配置错误读PHY寄存器确认主从强制设置正确模式指示灯亮但ping不通PHY地址冲突或RMII_RX信号接反核对MDIO地址、RMII信号顺序链路正常但丢包严重差分阻抗不匹配或共模电感选错检查PCB阻抗、更换符合TC2要求的共模电感接车载12V烧保险电源入口缺TVS或反接保护加TVS、防反接电路检查DCDC耐压范围运行一段时间后死机电源纹波过大或PHY过热加强滤波、加散热片或降额使用RMII时钟波形异常REF_CLK方向冲突或电压域不匹配按设计表逐项核对时钟来源和电平5.4 一个让我记忆深刻的调试案例有段时间我拿到一块自己设计的T1转TX板子怎么调都无法和ECU建立链路。用示波器量TJA1101的MDI引脚信号幅值正常差分波形也对可就是link不上。后来慢慢排查发现问题出在共模电感的封装上我选的共模电感通流能力不够长时间通电后温度升高电感值漂移导致信号反射变大。这个案例说明T1侧的无源选型不能只看尺寸和阻抗一定要关注额定电流和温漂曲线。车载环境温度本身就可能到85℃加上设备自身发热元器件参数容差会被迅速放大。现在我做T1相关设计无源器件一律要求供应商提供温漂和耐久性数据不再只看常温参数。6. 个人经验总结什么时候选哪种方案做了这么多转换盒相关的拆解和自研我对T1转TX硬件选型有了一套比较明确的判断标准。如果只是自己调试ECU或者公司内部做个测试小工具MCU双PHY方案完全足够STM32F407加TJA1101加LAN8720总物料成本能控制在150元以内功能基本够用。缺点是延迟大、不支持时间同步后期维护成本高。如果是要做商用产品或者对稳定性和抓包能力有明确要求直接上LAN9303这类交换芯片加TJA1101物料成本多花几十块却能把转发延迟砍到0.1ms量级还能带端口镜像、VLAN隔离。量产产品我基本都是这么选的。如果是做车载以太网专项测试设备那FPGA加DP83TC811的路子是避免不了的因为很多测试场景要求在线旁路、硬件时间戳、低延迟转发这些已经超出普通PHY桥接的能力范围。实话说第三台盒子里的FPGA方案目前自己公司还没完全吃透但拆完以后让我对未来的产品规划有了清晰的思路。另外想补充一个容易被忽略的点转换盒的固件和上位机工具链同样是选型的一部分。MCU方案需要自己维护一整套网络转发代码桥接芯片方案至少要能处理厂商提供的驱动库FPGA方案更是要有硬件工程师长期维护。选型时别只盯着芯片价格一定要把开发维护成本算进去。最后再分享一个小经验做T1转TX转换盒第一版打样回来别急着接ECU先用两台转换盒对跑T1口对T1口TX口分别接两台电脑先把链路稳定性验证透了再接真实ECU这样能省掉很多“到底是我盒子问题还是对端问题”的扯皮时间。拆了三台盒子看完三种方案我对T1转TX这个“小品类”算是摸得比较透了。这东西看似简单内部牵扯到物理层协议、桥接架构、电源防护、信号完整性一大堆知识任何一个环节掉链子都会让调试变成灾难。希望这篇文章能帮你避开那些我踩过的坑也欢迎在评论区聊聊你手头T1设备遇到过的奇怪问题。