ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

USB Type-C高速差分对PCB设计:布局与阻抗控制实战

USB Type-C高速差分对PCB设计:布局与阻抗控制实战 1. 从一块翻车的板子说起为什么USB-Type-C差分对值得单独拎出来讲去年帮朋友调一块带USB-Type-C接口的数据采集板功能验证阶段一切正常插上电脑能识别低速传输也没问题。结果一跑高速批量传输误码率直接飙到没法看眼图闭合得像一条缝。折腾了整整两天最后发现问题出在差分对上——走线跨了分割地平面参考平面不连续阻抗在过孔区域突变到一百多欧姆。重新改板之后同样的芯片、同样的固件眼图张开度直接翻倍。这件事让我意识到USB-Type-C的差分对布局和阻抗控制绝对不是“连上就行”的事情。很多刚接触PCB设计的朋友画电源线、画低速信号线都很顺手一到高速差分对就开始凭感觉走线觉得“反正都是铜皮能通就行”。但高速信号的世界里铜皮不只是导体它是一条传输线每一毫米的几何形状都在决定信号能不能干净地到达对面。这篇文章想聊的就是USB-Type-C高速差分对从布局到阻抗控制的完整实战思路。我会从叠层设计开始一路讲到差分对的走线规则、过孔处理、参考平面管理再到实际案例中的参数计算和常见翻车场景。内容偏向实操适合已经画过几块板子、想把手上的USB-Type-C接口做稳的硬件工程师和PCB Layout工程师。如果你正在用SW6206这类带USB-Type-C的电源管理方案或者在做任何涉及USB 3.0及以上速率的板子这里面的细节应该能帮你少走一些弯路。2. 先搞懂USB-Type-C差分对的脾气它到底在传什么2.1 差分信号的本质不是两根线是一个系统很多人把差分对理解成“两根线传一个信号”这个说法不算错但容易让人忽略关键点。差分信号真正的工作方式是接收端只看两根线之间的电压差不看每根线对地的绝对电压。这个机制带来的好处是共模噪声会被抑制——如果两根线同时被同一个噪声源干扰接收端做减法的时候噪声就抵消了。但这个“减法”有个前提两根线受到的干扰必须尽可能一致。如果一根线靠近噪声源另一根线离得远那它们感受到的噪声就不一样减法之后残留的差模噪声就会直接吃掉信号裕量。所以差分对布局的第一原则不是“等长”而是“对称”。等长是对称的一个结果但对称还包括走线间距一致、参考平面一致、过孔结构一致、周围环境一致。USB 3.2 Gen 1的速率是5GbpsGen 2是10Gbps。在10Gbps下单位间隔UI只有100皮秒信号沿的上升时间可能只有30到50皮秒。这个时间尺度下PCB上每毫米走线的传播延迟大约是6到7皮秒也就是说两根线之间哪怕只差5毫米延迟差就接近35皮秒已经超过三分之一个UI了。这就是为什么高速差分对必须严格控制长度匹配。2.2 USB-Type-C的引脚定义与差分对分布USB-Type-C接口是全对称设计母座上有24个引脚上下两排各12个正反插都能工作。对于高速信号来说真正需要关注的是TX和RX差分对。以USB 3.2为例一组完整的超高速通道包括SSTXp1/SSTXn1发送差分对1SSRXp1/SSRXn1接收差分对1SSTXp2/SSTXn2发送差分对2SSRXp2/SSRXn2接收差分对2两组TX和RX是为了支持正反插时的通道交换。实际设计中如果只做单面插入方向可以只处理一组但大多数产品为了正反插都能跑高速会把两组都连上通过芯片内部的MUX自动切换。这里有个容易踩的坑USB-Type-C的引脚排列非常紧凑相邻引脚间距只有0.5毫米母座焊盘差分对之间的间距也很小。如果走线从焊盘引出时处理不当很容易在焊盘区域产生严重的阻抗不连续。我见过不少板子差分对在走线中间段控制得很好但一进焊盘区域就失控眼图在焊盘附近就已经烂掉了。2.3 阻抗控制的目标值为什么是90欧姆USB 3.2规范对差分阻抗的要求是90欧姆±10%这个值不是随便定的。它要和线缆、连接器、芯片收发器的阻抗匹配。如果PCB走线阻抗偏离太多信号在阻抗突变点会产生反射反射信号叠加在原信号上就会造成眼图闭合。90欧姆是差分阻抗不是单端阻抗。单端阻抗通常是45欧姆左右差分对每根线对地的阻抗两根线之间的耦合会降低整体差分阻抗。实际计算时差分阻抗约等于2倍单端阻抗减去耦合带来的修正量。这个修正量和线间距、线宽、介质厚度都有关系。很多EDA工具如Altium Designer、Cadence Allegro都内置了阻抗计算器但工具算出来的值是基于理想模型的。实际PCB加工时铜厚、介质厚度、蚀刻因子都会有偏差。所以阻抗控制不能只靠软件算还要和板厂沟通让他们提供阻抗测试报告。我一般会在发板时明确标注哪些线需要做阻抗控制要求板厂提供TDR测试数据。3. 叠层设计差分对阻抗的地基3.1 四层板与六层板的取舍做USB-Type-C高速差分对最基础的叠层是四层板顶层信号、内层地、内层电源、底层信号。这个结构下顶层和底层的差分对都可以参考内层地平面阻抗控制相对容易。但四层板有个问题电源平面和地平面之间的距离通常比较大电源平面上的噪声容易耦合到信号线上。而且四层板的信号层只有两层布线密度高的时候容易出现参考平面不连续的情况。如果预算允许我一般推荐六层板顶层信号、内层地、内层信号、内层信号、内层地、底层信号。这个结构下高速差分对可以走在顶层或底层紧邻地平面参考平面非常干净。中间两层信号可以走低速信号或电源互不干扰。对于USB 3.2 Gen 210Gbps的应用如果板子密度高、走线长六层板几乎是必须的。四层板不是不能做但需要非常小心地控制参考平面而且走线长度要尽量短。3.2 介质厚度与阻抗的关系差分阻抗和介质厚度成正比。介质越厚阻抗越高介质越薄阻抗越低。以常见的FR-4材料为例介电常数约为4.2到4.5。假设差分对走线宽度5mil线间距5mil介质厚度3.5mil用阻抗计算器算出来的差分阻抗大约在90欧姆左右。如果介质厚度增加到5mil同样的线宽线距阻抗会上升到100欧姆以上。这时候要么减小线宽要么减小线间距要么换更薄的介质。但线宽太小会增加加工难度和损耗线间距太小会增加串扰风险。所以叠层设计要在阻抗、损耗、串扰、加工能力之间找平衡。我通常的做法是先确定板厂的加工能力最小线宽、最小间距、介质厚度选项然后在这些约束下反推叠层参数。比如板厂能做3.5mil的介质厚度最小线宽4mil最小间距4mil那我就以这些参数为基础用阻抗计算器找到满足90欧姆的组合。3.3 参考平面的完整性比阻抗数值更重要阻抗控制的目标是让整条走线的阻抗保持一致。如果走线中间有一段参考平面被挖空或者跨了分割平面那一段的阻抗就会突变。这个突变点会产生反射反射信号在眼图上表现为过冲、下冲或振铃。我见过一个典型的翻车案例一块四层板USB-Type-C差分对走在顶层参考内层地平面。但内层地平面在差分对正下方有一个电源分割槽差分对有一段跨在槽上。结果就是那一段的阻抗从90欧姆突变到120欧姆以上眼图在对应位置出现明显的反射。解决方法是要么调整电源分割的位置让差分对下方始终有完整的地平面要么在分割槽附近增加缝合电容为返回电流提供低阻抗路径。但缝合电容的效果有限最好的办法还是从布局阶段就规划好让高速差分对远离分割区域。4. 差分对布局实战从芯片到连接器的每一步4.1 布局阶段的全局规划差分对的布局不是从走线开始的而是从芯片和连接器的摆放位置开始的。理想情况下USB-Type-C连接器应该尽量靠近芯片的对应引脚差分对的走线长度越短越好。走线越长损耗越大阻抗不连续的概率也越高。如果连接器和芯片之间距离较远比如超过50毫米那就需要考虑使用更低的损耗材料或者增加信号调理芯片如重驱动器。但增加芯片也会引入新的阻抗不连续点所以要在成本和性能之间权衡。布局时还要考虑差分对之间的间距。USB 3.2有两组TX和两组RX如果它们靠得太近TX的信号会串扰到RX上。一般建议不同差分对之间的间距至少是线宽的5倍以上如果空间允许10倍更安全。4.2 从焊盘引出的第一段走线差分对从芯片焊盘或连接器焊盘引出时是最容易出问题的地方。焊盘通常比走线宽很多从焊盘到走线的过渡区域阻抗会突然降低。如果处理不好这个低阻抗区域会产生反射。常见的处理方法有几种。一种是使用泪滴teardrop过渡让焊盘到走线的宽度变化更平滑。另一种是调整焊盘下方的参考平面在焊盘区域挖空一部分地平面提高该区域的阻抗补偿焊盘带来的低阻抗。还有一种是在焊盘附近使用更细的走线逐步过渡到正常线宽。我个人的经验是对于0.5毫米间距的连接器焊盘如果走线宽度是5mil焊盘宽度可能是10mil以上这时候在焊盘下方挖空地平面是必要的。挖空的尺寸需要通过仿真或阻抗计算来确定一般挖空区域比焊盘每边大2到3mil。4.3 差分对的走线规则等长、等距、对称差分对走线的核心规则可以总结为三个词等长、等距、对称。等长是指两根线的物理长度要一致。长度差一般控制在5mil以内对于10Gbps的信号最好控制在2mil以内。长度差会导致延迟差延迟差会转化为共模噪声降低接收端的信噪比。等距是指两根线之间的间距要保持恒定。间距变化会改变差分阻抗也会改变耦合程度。如果间距突然变大差分阻抗会升高间距突然变小阻抗会降低。所以走线过程中要避免间距的突变。对称是指两根线的走线路径要尽量镜像。如果一根线拐弯另一根线也要以相同的方式拐弯。如果一根线打过孔另一根线也要在相同位置打过孔。不对称的走线会导致两根线感受到的寄生参数不同破坏差分信号的平衡。实际操作中完全对称很难做到因为芯片引脚和连接器引脚的排列不一定对称。这时候就需要在走线中人为添加补偿。比如一根线比另一根线短了10mil可以在短的那根线上添加蛇形补偿把长度补回来。但蛇形补偿本身也会引入阻抗不连续所以补偿的幅度要小拐弯要圆滑。4.4 过孔的处理差分对过孔不是简单的打孔差分对换层时两根线需要各自打过孔。过孔会引入寄生电容和寄生电感破坏阻抗连续性。如果两根线的过孔结构不一致还会导致延迟差。处理差分对过孔有几个要点。第一两个过孔要尽量靠近间距和走线间距保持一致。第二过孔周围的参考平面要处理好避免过孔穿越分割平面。第三如果换层后的参考平面不同需要在过孔附近增加缝合电容或缝合过孔为返回电流提供路径。对于10Gbps以上的信号过孔的影响非常显著。我一般会使用背钻back drilling来去除过孔的 stub减少 stub 带来的谐振。背钻的深度需要根据叠层和信号速率来确定一般钻到距离信号层10到15mil的位置。如果条件允许差分对尽量少换层。每换一次层就多一次阻抗不连续和延迟差的风险。如果必须换层尽量让两根线在同一个过孔区域换层保持对称。5. 阻抗控制的参数计算与实测验证5.1 用阻抗计算器确定线宽和间距假设我们使用六层板叠层如下层类型厚度L1信号1.5mil铜介质FR-43.5milL2地平面1oz铜介质FR-48milL3信号1oz铜介质FR-48milL4信号1oz铜介质FR-48milL5地平面1oz铜介质FR-43.5milL6信号1.5mil铜差分对走在L1层参考L2地平面。介质厚度3.5mil介电常数4.3。目标差分阻抗90欧姆。用阻抗计算器如Saturn PCB Toolkit或Altium内置工具输入这些参数调整线宽和间距。假设线宽5mil间距5mil算出来的差分阻抗大约是88欧姆接近目标值。如果线宽4.5mil间距5.5mil阻抗可能上升到92欧姆。通过微调这两个参数可以精确控制阻抗。但计算器的结果是理论值实际加工后会有偏差。所以我会在板上放置阻抗测试条impedance test coupon要求板厂在出货前用TDR测试并报告实测阻抗。如果实测值偏离目标超过10%就需要调整叠层或线宽重新做板。5.2 差分对的损耗控制阻抗控制解决的是反射问题损耗控制解决的是信号幅度衰减问题。高速信号在PCB上传输时导体损耗和介质损耗都会导致信号衰减。频率越高损耗越大。对于USB 3.2 Gen 210Gbps如果走线长度超过100毫米FR-4材料的损耗可能已经让眼图闭合。这时候需要考虑更低损耗的材料如中Tg FR-4、Megtron 6或更高级的材料。这些材料的介电常数更稳定损耗因子更低但成本也更高。除了材料走线宽度也会影响损耗。线宽越宽导体损耗越小。所以在阻抗允许的范围内尽量选择较宽的走线。但线宽增加会降低布线密度需要在两者之间权衡。5.3 实测验证TDR和眼图阻抗控制的最终验证靠TDR时域反射计。TDR会向走线发送一个快速上升沿的脉冲然后测量反射信号。反射信号的幅度和极性反映了阻抗的变化。如果走线阻抗均匀TDR曲线应该是一条平坦的直线。如果某处阻抗突变TDR曲线上会出现一个尖峰或凹陷。眼图测试则是验证整个链路信号完整性的手段。眼图张开度越大信号质量越好。USB 3.2规范对眼图有明确的模板要求测试时需要使用专用的眼图模板和测试夹具。我在实际项目中一般会在首板回来后先做TDR测试确认阻抗控制是否达标。如果阻抗没问题再跑眼图测试。如果眼图不达标但阻抗没问题那可能是损耗太大或串扰太严重需要从材料和布局上找原因。6. 常见翻车场景与排查思路6.1 差分对跨分割最隐蔽的杀手跨分割是差分对最常见的翻车原因之一。走线下方参考平面不完整返回电流被迫绕远路形成大的电流环路。这个环路会辐射噪声也会让走线阻抗突变。排查方法在PCB设计软件中打开参考平面层检查差分对正下方是否有分割槽、过孔密集区或其他不连续区域。如果有尽量调整走线路径或平面分割。6.2 过孔stub过长高频下的隐形陷阱过孔stub是过孔中未被使用的部分。在低频下stub的影响可以忽略但在高频下stub相当于一个谐振腔会在特定频率产生谐振导致信号衰减和反射。排查方法计算stub长度对应的谐振频率。公式是f c / (4 * L * sqrt(εr))其中c是光速L是stub长度εr是介电常数。如果谐振频率落在信号带宽内就需要背钻。6.3 差分对间距突变阻抗不连续的元凶差分对走线过程中如果因为避让过孔或焊盘导致间距突变阻抗就会突变。这种突变在TDR曲线上表现为一个尖峰。排查方法在PCB软件中检查差分对的间距是否恒定。如果必须改变间距尽量渐变过渡避免突变。6.4 常见问题速查表问题现象可能原因排查方法解决措施眼图闭合阻抗不连续TDR测试调整线宽/间距/叠层误码率高串扰严重检查差分对间距增加差分对间距信号衰减大走线过长/材料损耗高测量插入损耗换低损耗材料/缩短走线反射明显过孔stub过长计算stub谐振频率背钻共模噪声大差分对不对称检查长度差/过孔结构补偿长度/对称过孔7. 几个容易被忽略的实操细节7.1 差分对的参考平面切换如果差分对从顶层换到底层参考平面从L2地平面变成L5地平面。这时候返回电流需要从L2流到L5如果两个地平面之间没有低阻抗路径返回电流就会绕远路。解决方法是在换层过孔附近放置缝合过孔或缝合电容把两个地平面连接起来。7.2 连接器下方的地平面处理USB-Type-C连接器的焊盘区域通常需要挖空地平面以补偿焊盘带来的低阻抗。但挖空区域不能太大否则会影响连接器的机械强度和屏蔽效果。一般挖空区域比焊盘每边大2到3mil即可。7.3 差分对的终端匹配USB 3.2的收发器通常内置终端匹配电阻不需要外部添加。但如果走线较长或损耗较大可能需要在接收端添加均衡电路。这个要根据芯片手册和实际测试结果来决定。7.4 测试点的处理如果在差分对上添加测试点测试点会引入寄生电容破坏阻抗连续性。如果必须添加尽量使用小尺寸测试点并放在走线末端或分支上减少对主走线的影响。8. 从改板到量产我的几次真实经历第一次做USB 3.0的板子用的是四层板差分对走线长度大约80毫米。首板回来后眼图勉强能看但裕量很小。后来把叠层改成六层板差分对走在顶层紧邻地平面眼图张开度明显改善。那次经历让我明白叠层设计对高速信号的影响远比想象中大。第二次是一个带USB-Type-C的电源管理方案用的是SW6206芯片。这个芯片的USB-Type-C接口速率不高但差分对仍然需要控制阻抗。当时为了省成本用了四层板差分对走在底层参考L3地平面。结果发现底层走线经过一个电源分割区域时阻抗突变严重。后来调整了电源分割的位置让差分对下方始终有完整地平面问题才解决。第三次是一个10Gbps的项目差分对走线长度超过150毫米。FR-4材料的损耗已经让眼图几乎闭合。后来换了低损耗材料同时把走线宽度从4mil增加到6mil眼图才重新张开。这次经历让我意识到材料选择和线宽优化对高速信号的重要性。这些经历让我总结出一个原则高速差分对的设计永远要在布局阶段就考虑好参考平面、叠层、走线路径和过孔结构。等到走线画完了再改成本会高很多。9. 写在最后一些个人习惯我现在画USB-Type-C差分对的时候会先做几件事。第一确认板厂的加工能力和叠层选项拿到准确的介质厚度和介电常数。第二用阻抗计算器算出满足90欧姆的线宽和间距组合并留出一定的调整余量。第三在布局阶段就把差分对的走线路径规划好避免中途跨分割或频繁换层。第四发板时明确标注阻抗控制要求并要求板厂提供TDR测试报告。还有一个小技巧在差分对走线旁边放置一些接地过孔可以改善串扰和阻抗连续性。但接地过孔的间距不能太密否则会增加走线电容降低阻抗。一般建议每5到10毫米放置一个。最后如果你正在用嘉立创EDA或Altium Designer画板记得打开差分对走线模式设置好线宽、间距和长度匹配规则。工具会自动帮你检查长度差和间距变化省去很多手动检查的时间。但工具只是辅助最终还是要靠自己对信号完整性的理解来判断。
返回列表