4. 高速网络与器件模型导入
在 SIwave 的签核流程里,导入环节决定了后续所有分析的可信度。如果 PCB 几何被错误简化、高速网络被漏识别、器件模型接错引脚,后面无论怎么加密网格、怎么调求解设置,得到的眼图或阻抗曲线都只是"看起来像结果"的数字。本节围绕三件事展开:把版图正确读进来、把真正需要分析的高速网络挑出来、把 IBIS/SPICE/S 参数模型挂到正确的网络与端口上。
一、版图导入:三种格式的取舍
SIwave 支持 ODB++、IPC-2581、Allegro BRD 以及 Ansys 自家的 EDB 等入口。它们并不是等价的,导入前要清楚各自的"信息完整度"。
ODB++ 是业界最通用的交换格式,几乎任何 EDA 工具都能导出。它包含叠层、铜箔、过孔、阻焊、钻孔等制造信息,但网络名与器件引脚映射往往依赖导出时的选项。若导出时未勾选网络与元件属性,导入后会出现大量"未命名网络",需要手工补网表。
IPC-2581 是较新的开放标准,优势在于把叠层、网络、元件、钻孔、甚至部分器件属性统一在一个 XML 结构中,网络与引脚对应关系通常比 ODB++ 更完整,适合需要保留网表语义的场合。缺点是部分老版本工具导出支持不完善。
Allegro BRD 直接读取 Cadence 原生数据库,保真度最高,能保留约束管理器中的差分对、拓扑、Xnet 等信息,是 Cadence 流程下的首选。但它要求 SIwave 与 Allegro 版本匹配,且需要正确的 license 与 skill 环境。
导入后第一件事不是急着切网络,而是核对叠层。打开 Layer Stack 面板,逐层确认介质厚度、Dk/Df、铜厚、以及铜箔是信号层还是平面层。常见错误是介质厚度单位被当成 mil 而实际是 mm,导致整块板的阻抗偏了 25 倍。建议把叠层参数与 PCB 厂提供的叠层表逐项对照,并把 Dk/Df 按实际板材(如 FR4 的 Dk≈4.2、M6 的 Dk≈3.6)填入。
二、高速网络识别:从"全部网络"到"待分析网络"
一块服务器主板可能有上万条网络,真正需要 SI 分析的可能只有几百条。识别逻辑可以按下面的判据逐层过滤:
- 按信号类型:DDR、PCIe、USB、SATA、以太网、SerDes、时钟等接口网络优先。
- 按速率:上升时间 Tr 小于 1 ns,或数据率高于 1 Gbps 的网络必须纳入。
- 按拓扑:点对点、菊花链、T 型分支、星型等不同拓扑对反射与串扰的敏感度不同。
- 按参考平面:跨分割、参考平面切换的网络要重点标记。
实际操作中,可以在 SIwave 的 Nets 面板里用通配符批量选择,例如 DDR*、PCIE*、CLK_*,再结合差分对自动识别(按命名规则如 _P/_N、+/-)生成差分网络组。识别完成后建议导出网络清单,与原理图或约束管理器交叉核对,避免漏掉关键网络。
三、器件模型导入:IBIS、SPICE 与 S 参数
网络识别完成后,需要为驱动端与接收端挂上模型。三类模型的适用场景不同:
IBIS 适合数字 I/O 缓冲器,描述的是 V-I 曲线与 V-t 波形,不暴露内部电路,仿真速度快,是 DDR、PCIe 等并行/串行接口的常用选择。导入时要注意 .ibs 文件中的 model 名与器件引脚对应关系,以及是否包含 package 的 RLC 参数。
SPICE 适合需要精确晶体管级行为的场合,例如 SerDes 的驱动器、时钟缓冲器。它精度高但仿真慢,且需要正确的工艺角与温度设置。
S 参数 适合无源互连,例如连接器、电缆、封装、过孔阵列。导入时要检查端口数、参考阻抗(通常 50 Ω 或 100 Ω 差分)、频率范围与是否包含 DC 点。若 S 参数缺少 DC 点,SIwave 会外推,可能引入误差。
模型挂载时最容易出错的是引脚映射。IBIS 的 pin 名与 PCB 网络名往往不一致,需要建立映射表。建议在导入后逐条检查关键网络的模型是否挂上,并确认 buffer 的 enable 状态、驱动强度、上升时间等参数与设计一致。
四、端口设置:把物理结构变成电路接口
端口是 SIwave 与电路求解器之间的桥梁。端口设置的核心是:位置、参考、阻抗、类型。
位置:端口应放在实际测量或关注的参考面上,例如 BGA 焊球下方、连接器引脚处、或芯片 die 的 bump 位置。不要随意放在走线中间。
参考:单端端口需要一个参考地,差分端口需要正负两个节点。参考地应选择与信号同层的最近平面,避免跨分割。
阻抗:单端通常 50 Ω,差分通常 100 Ω(USB、PCIe)或 85 Ω(部分 DDR)。阻抗设置错误会直接导致 S11 曲线整体偏移。
类型:Circuit 端口用于电路求解,Wave 端口用于全波提取 S 参数。签核流程中通常先用 Wave 端口提取通道 S 参数,再在 Circuit 中挂 IBIS 做眼图。
端口设置完成后,建议先跑一次快速扫描,检查 S 参数是否满足无源性(|S11|≤1)与因果性。若出现 |S11|>1,通常是端口参考或阻抗设置错误。
五、导入后的自检清单
完成上述四步后,建议按下面的清单做一次快速自检,确认导入环节没有留下隐患:
| 检查项 | 判断依据 | 常见问题 |
|---|---|---|
| 叠层参数 | 与 PCB 厂叠层表一致 | 单位混淆、Dk/Df 用默认值 |
| 网络完整性 | 关键网络无"未命名" | 导出时未勾选网络属性 |
| 差分对识别 | 命名规则匹配,正负成对 | 命名不规范导致漏识别 |
| 模型挂载 | 关键网络均有 buffer | 引脚映射错误、模型缺失 |
| 端口设置 | 位置、参考、阻抗正确 | 参考跨分割、阻抗设错 |
| S 参数质量 | 无源性、因果性通过 | 缺 DC 点、端口数不匹配 |
导入环节做扎实,后续的通道提取、眼图仿真、阻抗扫描才有意义。实际项目中,建议把上述检查项固化成一份导入检查表,每次新版本 PCB 导入时逐项打勾,避免因版本迭代引入新的导入问题。