拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

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

Sigrity Special Void深度解析:从回流路径到TDR仿真实战

Sigrity Special Void深度解析:从回流路径到TDR仿真实战 做高速仿真的朋友对 Sigrity 应该不陌生PowerSI 里的叠层编辑、平面切割和 S 参数提取几乎天天都在碰Speed2000 也经常用来跑时域波形和 TDR 阻抗。但我说句实在话真正让新手卡住半天的往往不是仿真流程本身而是个看起来不起眼的功能——Special Void。很多人把 Special Void 和普通 Void 混为一谈画了个框却发现平面层根本没挖空或者挖错了层最后仿真结果跟实际板子对不上排查来排查去浪费一整天。这篇文章我就把 Special Void 的前因后果、PowerSI 和 Speed2000 里的完整设置方式、以及它和 TDR 仿真之间的关系一次讲清楚适合刚接触 Sigrity、正在做高速差分对仿真或者被过孔阻抗突变折磨的朋友阅读看完你至少能少踩三个坑。1. Special Void 是什么新手最容易翻车的重灾区1.1 先从回流路径说起为什么“挖铜”会影响信号要理解 Special Void先得建立一条基本认知高速信号的回流电流并不是沿着地平面直线走回来的而是会紧贴着信号走线下方的参考平面选择一条阻抗最低、环路面积最小的路径往回返。正常情况下信号正下方就是完整铜皮回流路径自然、连续整个回路的电感也很小。但一旦在参考平面上开了一个槽、一个洞回流电流就不得不绕着这个洞边缘走相当于人为把回路面积撑大了局部电感随之上升表现出来的就是阻抗突变、谐振以及 TDR 波形上某个位置出现明显的尖峰或凹陷。很多设计里工程师确实需要在平面上开洞比如让高速过孔的焊盘避开平面、给某个器件底下做净空、或者切割参考层来控制噪声耦合。普通 Void 就是干这个的它像一个挖空工具直接在指定平面层上抠掉一块铜。Special Void 也是挖铜但它在 Sigrity 里是一类更精细的建模对象可以跨越多层做“空间定义”还能影响仿真区域的边界条件。如果说普通 Void 是“哪里碍事挖哪里”那 Special Void 更接近“我提前规划好回流路径的走向让仿真环境跟着真实板卡走”。这个区别对新手特别重要因为你一旦把 Special Void 当成普通平面挖空来用设置时就会漏掉最关键的部分它到底作用在哪一层、影响哪些网络、跟旁边的反焊盘怎么配合。漏掉任何一个仿真模型就跟实际 PCB 对不上。1.2 Special Void 和普通 Void 的本质区别我第一次用 PowerSI 的时候也以为两者的区别就是叫法不同后来在几个项目里来回对比才摸清楚。普通 Void 一般挂在某个具体平面层上比如 GND02 层某个坐标范围内没有铜它的作用范围非常直接你打开叠层剖面图就能看到那个层有个缺口。Special Void 则更像一个“三维空间上的净空区域”你可以在布局编辑器里画一个闭合多边形然后指定它影响哪个层、或者某一段叠层范围内的哪些金属对象。它未必是单纯把一个平面层切个口子反而经常用来在走线层上方或下方挖掉参考铜皮从而改变局部区域的回流路径和阻抗特性。最典型的场景是差分过孔换层处信号从 L1 换到 L3回流电流要在 GND02 和 GND04 之间通过过孔旁的返回路径切换如果这段区域没有做特殊净空回流路径就会乱竄TDR 上就是一连串的阻抗毛刺。我用一张对比表把两者的关系整理清楚方便你后续设置时对号入座对比项普通 VoidSpecial Void主要作用在单个平面层挖空铜皮在指定区域做净空定义可跨层影响设置位置通常跟随具体平面层布局编辑器中单独创建指派目标层典型用途避让过孔焊盘、开隔离槽控制回流路径、调整过孔阻抗、净空敏感区常见坑挖错层、尺寸偏移没指派到目标层、轮廓不闭合、影响范围超出预期仿真影响直接改变该层平面完整性通过改变回流路径间接影响 TDR/S 参数1.3 它到底能解决哪些实际设计问题从项目经验看Special Void 用得最多的场景有三个。第一个是高速差分对换层过孔的反焊盘延伸区域优化。差分管脚从表层进入内层时参考平面的焊盘开窗大小直接决定过孔残桩的阻抗和模式转换大小用 Special Void 把反焊盘周边再挖一块可以明显压低 TDR 曲线上的过孔阻抗尖峰改善高频插损。第二个是给敏感时钟线或者射频走线做局部净空。有些信号对参考平面的完整性极其敏感正好下方有其他走线层密密麻麻布满了铜局部净空反而能减少寄生电容让走线的目标阻抗更稳定。第三个是电源平面分割和去耦电容摆放分析。Special Void 可以模拟电源平面上的隔离槽观察不同电源域之间通过地平面耦合带来的噪声路径变化。简单说这个东西不是“为了让仿真能跑起来”而存在的而是为了让仿真模型更接近真实物理设计。你把它设置对了PowerSI 提取出来的 S 参数才可信Speed2000 里看到的 TDR 波形才和实测有对应关系。2. 动手前的三板斧叠层、单位和材料必须优先确认2.1 单位不统一Special Void 画得再漂亮都没用刚开始学 Sigrity 的人很容易忽略工程单位但单位恰恰是 Special Void 设置里最隐蔽的坑。从 Allegro 或者其他 PCB 工具导入时文件可能默认使用 mil而你在 PowerSI 的结构编辑器里看到的坐标和尺寸却可能显示成毫米。这个时候如果直接照着叠层表上的毫米数值去画 Void哪怕只是小数点后一位的误差在高速仿真里都会变成几十个 mil 的偏差挖空位置完全偏离目标网络。我的建议是导入后第一时间打开设置面板确认当前使用的单位是 mm 还是 mil跟原始 PCB 设计文件保持一致。如果中途切换单位软件虽然会自动换算数值但手工输入坐标和尺寸时会极其容易出错。而且 Special Void 的尺寸往往跟过孔焊盘、反焊盘尺寸相关这些数据在 PCB 工具里一般都以 mil 为单位你最好全部统一换算好后再开始画。2.2 叠层参数怎么填才不心虚叠层是 Sigrity 仿真的地基Special Void 挖在哪一层、影响哪一段回流路径完全取决于叠层顺序和厚度。导入 PCB 后不要急着画 Void先把叠层编辑窗口打开逐层核对层名、层类型Signal、Dielectric、Plane、厚度、介电常数 Dk、损耗角正切 Df。特别是 Plane 层和 Signal 层的顺序一旦叠层顺序错了你辛辛苦苦画的 Special Void 可能作用在完全错误的物理位置上。有个小技巧是直接切换到叠层剖面视图把每一层的厚度和材料名称跟原始叠层表逐行对照。剖面图里能直观看到铜箔厚度、介质厚度还有阻焊层的位置Special Void 在后续设置时要选择的“目标层”跟这里的层名必须完全一致。如果项目里有两层都叫 GND名字一样但物理位置差很远那画 Void 的时候非常容易选错建议在导入阶段就把层名改得足够有辨识度比如 GND02_ART、GND04_PWR 这种。2.3 材料参数千万不敢凭感觉填高速仿真对材料参数极其敏感尤其是 Df损耗角正切和铜箔粗糙度。这两个参数直接影响 S 参数的插损和回损曲线而 Special Void 区域周围的回流损耗也随之变化。许多新手习惯用软件默认的 FR4 材料Dk 填 4.4、Df 填 0.02结果仿出来的 TDR 阻抗整体偏低、插损虚大跟实测对不上。严格的做法是从板厂拿到真实的叠层和材料参数至少确认核心介质层和半固化片的 Dk、Df 是否随频率变化。PowerSI 里支持频变材料模型如果手里有供应商提供的宽频测试数据务必导入进去。铜箔粗糙度也要单独设置特别是内层走线和平面层粗糙度会显著影响趋肤效应下的高频损耗。Special Void 的边缘在高频下会有边缘场效应材料参数越真实边界附近的阻抗计算结果越准确。3. PowerSI 里设置 Special Void 的完整流程拆解3.1 在 Structure Editor 里先定位目标层PowerSI 的建模环境以结构编辑器为核心打开一个已经导入好的设计后你会看到 2D 布局视图和叠层剖面视图。设置 Special Void 的第一步不是急着绘图而是先在叠层剖面图里确定“这一刀要切在哪一层”。选中目标层后布局视图会自动高亮该层的铜皮形状这样你后续画出来的 Void 才会落在正确位置。这里有个新手容易搞混的地方Special Void 虽然叫 Void但它在某一层上的表现形式是“没有铜的区域”所以画的时候你其实是在目标层上画一个闭合边界边界内部代表净空。我一般习惯先把无关层关闭只显示目标层和相邻的走线层避免其他层的图形干扰定位。你可以通过右侧图层控制面板的可见性勾选来完成操作方式和 Allegro 的显示控制差不多熟悉 PCB 工具的人几分钟就能上手。3.2 绘制闭合轮廓并指派属性核心操作步骤在 PowerSI 的布局视图中新建 Special Void 的入口一般在 Place 菜单或者右键快捷菜单里不同版本叫法略有不同有的叫 Add Special Void有的叫 Place Special VoidPowerSI 2019 之后基本统一到 Structure Editor 的 Place 菜单下。点击后先选择要挖空的目标层再选择绘制形式矩形、圆角矩形、多边形都可以根据实际净空区域形状来定。绘制过程里最重要的一个原则是轮廓必须闭合。很多人画多边形时最后一条边和第一条边的端点没有精准吸附到同一个坐标上软件并不会弹窗报错但生成的 Void 根本不会参与仿真计算。你放大视图后可能肉眼都能看到端点之间有微小的断开但在缩放缩得很小的时候完全发现不了。所以我画完轮廓后一定会双击检查闭合属性或者用软件的测量工具量一下起始终点坐标是否一致确保闭合无误。轮廓画完后还要在属性面板里确认几个关键项。Shape Type 要选 Void 或者 CutoutLayer 必须是刚才选择的目标层如果你希望这个净空同时影响相邻的多个层则要看版本是否支持 Affected Layers 之类的选项。这一步特别容易因为默认设置导致 Void 没生效所以画完之后一定要回头检查属性表而不是画完就赶紧去跑仿真。3.3 关键选项逐个解释别被面板里的英文术语吓住设置面板里的英文术语看着唬人但逐个拆开其实很直白。Layer 表示这个 Void 所在的物理层这是最重要的一个选项选错全盘皆输。Net 或 Shape 属性表示这个净空区域是否属于某个网络一般净空区域不属于任何网络保持默认即可。个别版本还有 Clearance 选项用来设置 Void 边缘到相邻铜皮之间的最小间距这个值最好跟 PCB 设计规则里的安全间距一致避免建模时出现物理上不可能的重叠。还有一类选项关系到仿真边界条件比如是否考虑 Void 边缘的辐射效应是否在 S 参数提取时把 Void 区域视为理想开路。这类选项新手可以先保持默认等熟悉了再逐步调整。我的建议是第一次上手时只改必填项记录每一步修改遇到仿真结果异常时先把关键参数恢复成默认值排查而不是同时改动一大堆高级选项。3.4 检查、保存与导出画完不等于结束确认设置完成后不要立刻关掉编辑器。建议使用软件的 Check 功能做一次几何检查确认没有悬空线段、没有重叠的重复 Void、没有超出设计边界。部分版本还可以运行 DRC 检查叠层上的 Void 是否跟过孔、焊盘冲突。检查通过后再保存工程文件有些公司使用 ODB 或 ANF 中间格式交接务必确认导出时勾选了包含 Void 形状选项否则同事拿到手就是一份丢了关键净空信息的模型。4. Speed2000 里的差异化设置以及和 TDR 仿真怎么联动4.1 Speed2000 设置入口和 PowerSI 有什么不同Speed2000 和 PowerSI 虽然是同一套底层建模内核但面向的仿真类型不同。PowerSI 偏频域提取 S 参数、看插损回损Speed2000 偏时域跑 TDR、瞬态波形、电源噪声。Special Void 在两者之间的设置方式大体一致因为都依赖结构编辑器里的 Void 对象但 Speed2000 里更关注时域边界条件和激励设置。进入 Speed2000 时你可以直接打开已有的 Sigrity 工程或者从 PCB 文件重新导入。之后找到 TDR 仿真菜单启动后需要选择目标网络、设置端口。注意 Speed2000 的 TDR 仿真对端口的定义方式和频域的 Port 不太一样它关心的是激励源的位置和参考路径而 Special Void 恰好会影响参考路径的完整性所以你会发现同一个设计中有没有 Special VoidTDR 曲线差异非常明显。4.2 Special Void 如何“悄悄”改变你的 TDR 波形TDR 的原理看起来简单入射阶跃波沿传输线传播遇到阻抗不连续点产生反射反射系数换算后就能得到位置-阻抗曲线。Special Void 本身不直接出现在 TDR 电路原理图里但它的存在改变了回流路径的局部电感等效到传输线上就变成一个串联电感点在 TDR 曲线上表现为正向尖峰。如果挖空区域过大导致信号下方没有完整参考平面阻抗会突然抬高波形上出现明显的台阶。如果挖空位置刚好配合反焊盘设计则可能把过孔处过大的寄生电容和寄生电感调整到更均衡的状态TDR 曲线反而更平缓。所以你在分析 TDR 上某个位置的异常突变时除了看走线宽度、过孔残桩还要怀疑一下附近的 Special Void 是不是尺寸不合适、位置偏移、或者多挖了不该挖的区域。实测中我见过一个案例差分对上一处 TDR 尖峰怎么调走线都压不下去最后发现是一位工程师把 Special Void 从 GND02 层复制到 GND04 层时坐标没有相应偏移导致本应净空的区域偏了 0.3mm恰好让回流路径绕了一个大弯。4.3 一个完整的 TDR 仿真验证小例子从设置到看结果直接给你一套可以照着走的流程。假设手头有一块 8 层板一对 100 欧姆差分线从 L1 表层换到 L3 内层过孔附近就是那个疑似阻抗突变点。先在结构编辑器里确认 GND02 和 GND04 上是否已经有 Special Void没有的话依照前面第 3 节的方式画一个包裹住过孔反焊盘区域的净空。进入 Speed2000 后选择 TDR 仿真激励设置为差分模式上升时间建议先按实际驱动器的 Tr 设置比如 50ps 或者 100ps时窗长度要足够覆盖整段走线和过孔区域一般设 3ns 到 5ns。运行完成后观察阻抗剖面图横轴是时间或距离纵轴是差分阻抗。你会看到进过孔前的一段阻抗保持在 100 欧姆附近进入过孔区域后出现一个尖峰如果加了 Special Void 之后尖峰幅度明显降低说明净空尺寸和位置基本合理。如果尖峰反而更高说明净空区域过大或位置偏离回到结构编辑器修改边界的尺寸再重新仿真。整个过程像调琴一样一次改一个参数TDR 结果就是你的听感配合起来就能很快定位问题。4.4 根据 TDR 结果反推 Special Void 的修改方向这是比较进阶的用法。TDR 曲线上每一个阻抗突变点的位置换算成物理距离后可以精确对应到布局里的坐标。你用测量工具量出突变点到过孔、到连接器、到走线拐角的距离再去布局里找那个位置上的元素往往能直接发现是某个 Special Void 边界压在走线上方、还是反焊盘开窗和 Void 重叠了。修改的原则是每次只改一处改完记录 TDR 曲线变化别一次同时改好几个区域否则你根本不知道是谁起作用。5. 新手五连坑这些问题我几乎每周都见5.1 坑一Void 画了却“没生效”表现是仿真结果跟没画时一模一样查遍叠层视图也看不出异常。最常见的原因是 Special Void 属性里的 Layer 没有正确指派或者 Affected Layers 范围没包含你期望的层。检查手段很简单选中那个 Void 对象看属性面板里显示的层名再切到叠层剖面视图确认目标层高亮两相对照就能发现问题。5.2 坑二轮廓没闭合软件不报错这个坑最阴间因为 Sigrity 不像普通画图软件那样会在你画完开口图形时强烈提示画出一个几微米断口时看起来跟闭合图形没有区别。解决办法是绘制时开启“捕捉到端点”选项或者画完后用几何属性工具查看闭合状态。实在不放心可以把图形放大到极限倍数沿轮廓走一圈虽然慢但绝对有效。5.3 坑三叠层顺序错挖掉了不该挖的信号层从第三方工具导入的叠层信息经常出现顺序错乱或者重复定义比如 GND02 和 GND04 名字搞反。这时你画 Special Void 时以为挖的是 GND04实际生效的却是 GND04 对应的物理层参考平面可能变成信号层回流路径彻底乱了。应对方法是导入后尽快人工复核每一层的类型和顺序尤其关注靠近高速层的参考平面。5.4 坑四和过孔反焊盘打架反焊盘本身就是一个圆形挖空区域Special Void 再叠加一个多边形挖空两者重叠后建模时会生成非常复杂的边界网格剖分困难且容易产生虚假谐振。建议让 Special Void 的边缘和反焊盘之间至少保持 0.2mm 以上的距离如果设计上必须重叠仔细检查仿真频率范围内是不是有异常谐振峰再继续。5.5 坑五网格不够密结果抖得像心电图小尺寸的 Special Void 在高频仿真时对网格密度非常敏感网格太粗会导致边界被近似成锯齿状TDR 或 S 参数曲线上出现非物理抖动。建议在 Void 边界附近设置局部网格细化保证边缘至少被 2 到 3 个网格节点覆盖。软件没报错不代表结果没问题曲线平滑度就是最直观的试金石。6. 实操心法效率翻倍的小技巧6.1 把常用区域的 Special Void 模板化如果是做一整套多层板很多区域的高速过孔结构是重复的。我习惯把设置好的差分过孔 Special Void 区域保存成一个模板直接在结构编辑器里复制粘贴到其他位置再根据坐标平移微调。这样不仅节省时间还能保证同一批次过孔的建模高度一致仿真结果的对比性更好。要注意复制后逐项确认 Layer 属性没被改掉很多版本粘贴后默认沿用到当前活动层容易暗藏隐患。6.2 导入 PCB 之后先做三件事再动手我自己每拿到一个新设计导入 PCB 后先做三件事。第一确认单位和叠层第二把所有已有 Void 列成清单看看源设计里已经有哪些平面挖空避免跟接下来要建的 Special Void 重复或冲突第三跑一次最简单的空白仿真作为 baseline比如不设置任何 Special Void 直接提取 S 参数后面改了任何净空再做对照这种差分对比的思路能帮你快速确认每一步修改的效果。6.3 团队协作时怎么传递 Special Void 信息Special Void 这种对象很容易在文件转换过程中丢失尤其是从 Allegro 导出 ODB 再导入 Sigrity 的流程。交接时我一般会在工程说明里专门写一段贴图加列表标明每个 Special Void 所在层、坐标范围、净空用途并且把导出的中间文件勾选上包含形状属性的选项。团队里如果有人更新了 PCB 设计最好重新同步一次 Special Void 清单否则旧模型和新版图之间会产生看不见的偏差。我从踩过几次坑之后现在每个项目都会在启动阶段建一张“净空区域登记表”把 Special Void 当作和走线、过孔一样需要版本管理的对象来维护这习惯帮我省掉了很多沟通成本。
返回列表