2026/10/6 1:41:35

SMIC 130nm工艺下PEX寄生参数提取全流程与后仿验证实战指南

SMIC 130nm工艺下PEX寄生参数提取全流程与后仿验证实战指南 1. 为什么PEX是模拟版图设计中最容易被低估的环节做了这么多年模拟版图我越来越觉得寄生参数提取PEX是整个流程里最容易被低估的一环。很多新手把注意力全放在DRC和LVS上觉得这两个过了就万事大吉结果流片回来一测增益掉了3dB带宽缩了一半回头查半天才发现是PEX阶段没做对。在SMIC 130nm这个节点上这个问题尤其突出因为130nm的寄生效应已经非常显著金属层间的耦合电容、通孔电阻、衬底耦合这些在更早的工艺节点上可以忽略的因素到了130nm就变成了必须认真对待的变量。我这次拿SMIC 130nm混合信号工艺的一个典型配置来展开具体工艺库是smic13mmf_1233_1P6M。这个命名本身就包含了很多信息1P6M代表1层多晶硅加6层金属1233通常对应各层金属的厚度和方块电阻配置。这个工艺在电源管理、ADC、PLL这类混合信号电路里用得非常多国内很多高校和中小设计公司都在用。Cadence Virtuoso是前端设计和版图的主力平台而PEX环节通常要借助Calibre的xRC或者Quantus QRC来完成。整个流程走下来涉及的东西比很多人想象的要复杂得多。这篇文章主要面向已经跑通DRC和LVS、准备做后仿的版图工程师和电路设计者。我会把PEX的完整流程拆开从工艺文件准备、规则文件配置、提取设置、到后仿网表生成和验证每一步都讲清楚为什么这么做、参数怎么选、容易在哪里翻车。如果你正在用smic13mmf_1233_1P6M这个工艺做设计或者用类似SMIC 130nm工艺这篇内容应该能帮你省下不少试错时间。2. PEX在SMIC 130nm工艺下的整体设计思路与方案选型2.1 为什么130nm节点的PEX不能照搬更成熟节点的做法很多人从0.18um或者0.35um转过来做130nm第一反应是PEX流程应该差不多。实际上差别很大。130nm工艺的金属层厚度和间距比例发生了变化金属线更薄、间距更小导致单位长度的耦合电容明显增大。同时这个节点开始普遍使用铜互连铜的电阻率虽然比铝低但铜扩散阻挡层占据了通孔和线条截面的相当比例导致实际有效电阻比理论值高不少。如果你用0.18um时代的提取精度去对待130nm后仿结果和实测的偏差可能大到让你怀疑人生。具体到smic13mmf_1233_1P6M这个工艺1P6M的金属堆叠意味着你有6层金属可以布线。顶层金属通常最厚用于电源和地线底层金属较薄用于局部信号互连。PEX提取时不同金属层的方块电阻和面积电容参数完全不同规则文件里会针对每一层单独定义。如果你在提取设置里偷懒把所有金属层用同一套参数处理那提取出来的寄生网表基本没有参考价值。2.2 Calibre xRC与Quantus QRC的选择逻辑在Cadence Virtuoso环境里做PEX常见的选择有两个Calibre xRC和Cadence自家的Quantus QRC。两者都能做晶体管级寄生提取但适用场景有差异。Calibre xRC的优势在于和Calibre LVS的无缝衔接LVS跑完之后直接调用xRC流程非常顺畅。而且Calibre的规则文件通常由Foundry提供经过充分验证对于SMIC 130nm这种成熟工艺Calibre xRC的规则文件质量很高。Quantus QRC的优势在于和Virtuoso的集成度更好提取设置可以在Virtuoso界面里完成后处理也更方便。但Quantus的规则文件需要额外配置有些Foundry不直接提供需要自己根据ITF文件生成。对于smic13mmf_1233_1P6M我建议优先用Calibre xRC因为SMIC对这个工艺的Calibre规则文件支持最完善踩坑概率最低。注意无论选哪个工具规则文件的版本必须和工艺库版本严格对应。我见过有人用旧版规则文件跑新版工艺库提取出来的电容值偏差超过20%后仿结果完全不可信。2.3 提取模式的选择RCCC还是RCPEX提取模式通常有三种组合只提电容C、提电阻加电容RC、提电阻加电容加耦合电容RCCC。对于SMIC 130nm工艺下的混合信号电路我的经验是低频高精度电路比如基准源、低速ADC用RC就够了高频电路比如PLL、高速比较器必须用RCCC否则耦合效应完全丢失后仿结果会过于乐观。RCCC模式下提取工具会计算每两条相邻金属线之间的耦合电容并生成对应的耦合电容元件。这会导致网表规模急剧膨胀仿真时间可能增加几倍甚至十几倍。所以你需要根据电路的实际工作频率和精度要求来权衡。我一般建议先跑一遍RC看看后仿结果和原理图仿真的偏差有多大如果偏差在可接受范围内就不需要上RCCC。如果偏差明显再升级提取模式。3. 核心细节解析与实操要点3.1 工艺文件与规则文件的准备在开始PEX之前你需要确认手头有以下几类文件工艺库文件smic13mmf_1233_1P6M的PDK通常包含器件模型、版图图层定义、参数化单元等。Calibre规则文件包括DRC规则、LVS规则和PEX规则。PEX规则文件通常命名为类似calibre.xrc或xrc.rules的形式。ITF文件Interconnect Technology File描述了金属层和介质层的物理参数。Calibre xRC需要这个文件来生成寄生提取所需的电容和电阻模型。Layer Map文件定义版图图层和提取工具内部图层编号的对应关系。这些文件的版本必须一致。我踩过的坑是PDK更新了金属层厚度参数但PEX规则文件还是旧的结果提取出来的电阻值偏小后仿增益比实测高了2dB。后来查了一整天才发现是版本不匹配。所以每次开始一个新项目第一件事就是核对所有文件的版本号和日期。3.2 Calibre xRC规则文件的关键配置项Calibre xRC的规则文件通常由Foundry提供但里面有一些配置项需要根据你的设计进行调整。以下是我在实际项目中经常需要修改的几个地方PEX提取模式设置规则文件里会有一个PEX_MODE或者类似的变量控制提取RC还是RCCC。你需要根据前面说的原则来设置。金属层电阻计算方式130nm工艺下金属电阻需要考虑宽度效应和温度系数。规则文件里通常会有RPSQ方块电阻和TC1、TC2温度系数参数。如果你做的是高精度电路建议在提取时启用温度系数这样后仿可以在不同温度下验证。耦合电容阈值RCCC模式下工具会计算所有相邻线间的耦合电容。如果线间距很大耦合电容小到可以忽略但工具仍然会提取导致网表臃肿。规则文件里通常有一个耦合电容阈值参数低于这个值的耦合电容会被忽略。我一般设置阈值为0.01fF既能保证精度又不会让网表爆炸。通孔电阻模型130nm工艺的通孔电阻不能忽略。规则文件里会定义每种通孔的电阻值包括单通孔和多通孔阵列。你需要确认规则文件里的通孔电阻参数和PDK一致。3.3 Virtuoso环境下的PEX流程配置在Virtuoso里做PEX通常有两种方式一种是在Virtuoso界面里通过菜单调用Calibre xRC另一种是直接在终端里跑Calibre命令。我倾向于后者因为命令行方式更灵活参数调整更方便而且容易集成到脚本里批量处理。如果你用Virtuoso界面调用流程大致是打开版图视图选择Calibre菜单下的Run PEX然后填写规则文件路径、输入版图文件、输出网表路径等。界面方式适合新手但参数选项藏得比较深不容易发现所有可调项。命令行方式的基本流程是先跑LVS生成svdb目录然后调用calibre -xrc命令指定规则文件和LVS结果。具体命令类似calibre -xrc -phdb -pdb -fmt PEX -rules xrc.rules -lvs lvs.result -layout design.gds -source design.spi -outdir pex_output其中-phdb和-pdb是生成寄生数据库的选项-fmt PEX指定输出格式为PEX网表。输出格式可以选择SPICE、SPEF、DSPF等。对于后仿SPICE格式最直接但文件体积大SPEF格式更紧凑但需要额外的转换步骤。3.4 提取过程中的参数计算与选择PEX提取涉及几个关键参数我逐一说明怎么算、怎么选。提取频率Calibre xRC在提取电容时默认按低频处理。如果你的电路工作在GHz级别需要设置提取频率让工具计算高频下的介质损耗和趋肤效应。对于SMIC 130nm工艺如果你的电路工作频率超过1GHz建议设置提取频率为工作频率的2到3倍。网格划分精度提取工具会把版图划分成小网格每个网格计算寄生参数。网格越细精度越高但计算时间越长。规则文件里通常有默认的网格精度对于130nm工艺默认精度一般够用。如果你发现提取结果和实测偏差大可以尝试加密网格但要注意计算资源的消耗。寄生电阻的截断阈值提取出来的寄生电阻如果阻值很小对电路影响可以忽略但会占用仿真资源。规则文件里可以设置电阻截断阈值低于这个值的电阻会被短路。我一般设置阈值为0.1欧姆对于大多数模拟电路足够。寄生电容的截断阈值类似地寄生电容低于某个值时可以忽略。我一般设置0.01fF这个值在130nm工艺下既能保证精度又不会让网表过大。4. 实操过程与核心环节实现4.1 从LVS到PEX的完整流程整个PEX流程可以拆成以下几个步骤我按实际操作顺序来讲。第一步确认LVS干净。PEX的前提是LVS必须完全通过没有未匹配的器件、没有悬空节点、没有短路。如果LVS有问题PEX提取出来的网表一定是错的。我一般会在LVS通过后再检查一遍LVS报告里的警告信息确认没有遗漏。第二步准备PEX规则文件。从Foundry提供的Calibre规则包里找到PEX规则文件通常叫xrc.rules或者calibre.xrc。检查文件里的工艺参数是否和PDK一致特别是金属层厚度、方块电阻、通孔电阻这些关键参数。第三步配置提取选项。根据电路类型选择提取模式RC或RCCC设置提取频率、网格精度、截断阈值等参数。这些参数可以写在规则文件里也可以通过命令行传递。第四步运行PEX提取。在终端里执行Calibre xRC命令等待提取完成。提取时间取决于版图规模和提取模式小规模版图几分钟大规模版图可能几小时。第五步检查提取结果。提取完成后工具会生成寄生网表文件和一个报告文件。报告文件里会列出提取的节点数、电阻数、电容数、耦合电容数等信息。你需要检查这些数字是否合理。如果节点数远大于版图实际节点数可能是提取精度设置过细如果耦合电容数为零可能是提取模式设置错了。第六步生成后仿网表。Calibre xRC输出的寄生网表通常是SPICE格式包含原理图网表和寄生元件。你需要把原理图网表和寄生网表合并生成完整的后仿网表。合并方式取决于你用的仿真器Spectre和HSPICE的合并方式略有不同。第七步跑后仿。用合并后的网表跑仿真对比原理图仿真结果。重点关注增益、带宽、相位裕度、建立时间这些关键指标的变化。4.2 后仿网表的生成与验证后仿网表的生成是PEX流程里最容易出问题的环节。Calibre xRC输出的寄生网表通常是一个独立的SPICE文件里面只有寄生电阻和电容没有晶体管。你需要把原理图网表包含晶体管和理想元件和寄生网表合并。合并的方式有两种一种是用Calibre提供的calibre -spice命令自动合并另一种是手动在原理图网表里添加.include语句把寄生网表包含进来。自动合并更方便但有时候会出问题比如节点名不匹配、子电路端口顺序不对。手动合并更可控但工作量大。我一般先用自动合并然后检查合并后的网表。检查的重点是晶体管数量是否和原理图一致、节点名是否对应、寄生元件是否连接到了正确的节点。如果发现异常再手动调整。后仿跑起来之后不要只看最终结果要逐步排查。先跑直流工作点确认所有晶体管的偏置和原理图一致。如果偏置不对说明寄生网表里的连接有问题。然后跑交流分析看增益和带宽的变化。最后跑瞬态看建立时间和过冲。每一步都确认无误后再跑完整仿真。4.3 提取结果的分析与调试PEX提取完成后你需要分析提取结果判断是否合理。我通常从以下几个方面入手寄生电容分布看看哪些节点的寄生电容最大。如果某个节点的寄生电容异常大可能是版图布线太密或者金属面积太大。这时候需要考虑优化版图比如减小金属面积、增加线间距、换用更高层金属。耦合电容分析RCCC模式下工具会输出耦合电容列表。你可以看看哪些线对之间的耦合电容最大。如果关键信号线和其他线之间的耦合电容很大需要考虑加屏蔽或者增加间距。电阻分布看看哪些路径的寄生电阻最大。电源和地线的寄生电阻如果太大会导致IR Drop和地弹。信号线的寄生电阻如果太大会影响建立时间和增益。与原理图仿真的对比把后仿结果和原理图仿真结果放在一起对比看看哪些指标变化最大。如果某个指标变化超过预期需要回到版图查找原因。5. 常见问题与排查技巧实录5.1 PEX提取失败或结果异常的典型原因在实际项目中PEX提取失败或者结果异常的情况很常见。我整理了一个速查表覆盖了大部分场景。问题现象可能原因排查方法解决方案提取报错提示找不到图层Layer Map文件不匹配检查Layer Map文件中的图层号和版图图层号是否一致更新Layer Map文件确保和PDK版本一致提取完成但网表为空LVS结果有问题检查LVS报告确认没有未匹配器件重新跑LVS修复所有错误寄生电容值异常大提取模式设置错误检查规则文件中的提取模式改为RC模式或调整耦合电容阈值后仿结果和原理图偏差大提取精度不够检查网格精度和截断阈值加密网格降低截断阈值仿真不收敛寄生网表有悬空节点检查网表中的节点连接修复悬空节点或添加大电阻到地提取时间过长版图规模大或提取模式过细检查版图规模和提取设置优化版图或降低提取精度5.2 后仿结果与原理图偏差过大的排查思路后仿结果和原理图偏差大是PEX流程中最让人头疼的问题。我一般按以下顺序排查先看直流工作点。如果直流工作点就不对说明寄生网表里的连接有问题或者晶体管的模型参数不对。检查网表里的晶体管数量、型号、尺寸是否和原理图一致。再看交流特性。如果直流对了交流不对说明寄生电容或电阻的影响超出了预期。检查关键节点的寄生电容和电阻看看是否合理。如果某个节点的寄生电容特别大可能是版图布线太密。最后看瞬态特性。如果交流和直流都对了瞬态不对说明寄生参数对时序的影响比较大。检查关键路径的寄生电阻和电容看看是否需要优化版图。对比不同提取模式的结果。如果RC模式的后仿结果和原理图偏差大试试RCCC模式。如果RCCC模式的结果更差说明耦合效应确实显著需要在版图上做屏蔽或增加间距。5.3 提升PEX效率与精度的实操心得做了这么多项目我总结了几条提升PEX效率和精度的经验版图阶段就要考虑PEX。不要等到PEX跑出来才发现寄生太大。在版图设计时关键信号线尽量走高层金属因为高层金属通常更厚、方块电阻更小。电源和地线要足够宽减小IR Drop。敏感信号线之间增加间距或者加屏蔽线。分块提取。如果整个版图太大PEX提取时间太长可以分块提取。把电路拆成几个子模块分别提取然后合并。这样既能缩短提取时间又方便定位问题。用SPEF格式做初步验证。SPEF格式的寄生网表比SPICE格式小很多仿真速度更快。可以先用SPEF做初步验证确认没有大问题后再用SPICE格式做精细仿真。保存提取设置。每次PEX提取的参数设置都保存下来下次做类似项目时可以直接复用。我一般把规则文件、命令行参数、提取报告都归档方便追溯。定期更新规则文件。Foundry会不定期更新PEX规则文件修复已知问题或提升精度。定期检查Foundry的更新通知及时更新规则文件。5.4 与Calibre LVS的衔接注意事项PEX和LVS是紧密衔接的LVS的结果直接影响PEX的准确性。以下几点需要特别注意LVS必须完全干净。任何未匹配的器件、悬空节点、短路都会导致PEX提取错误。我一般要求LVS报告里没有任何错误和警告才进入PEX阶段。LVS的网表格式要和PEX匹配。Calibre LVS输出的网表格式SPICE、SPEF等需要和PEX提取的格式一致否则合并时会出问题。LVS的器件模型要和PDK一致。如果LVS用的器件模型和PDK不一致PEX提取出来的寄生网表里的器件参数就是错的。LVS的节点命名要和原理图一致。如果LVS输出的节点名和原理图不一致后仿网表合并时会找不到对应节点。我一般会在LVS设置里指定节点命名规则确保和原理图一致。6. 从PEX到后仿的完整验证闭环6.1 后仿真的设置与技巧后仿真的设置和原理图仿真有一些区别需要特别注意。首先是仿真器的选择Spectre和HSPICE都支持后仿但Spectre对寄生网表的处理更好仿真速度更快。我一般用Spectre做后仿。其次是仿真精度的设置。后仿网表里有大量寄生元件仿真精度设置太低会导致结果不准设置太高会导致仿真时间过长。我一般用moderate精度对于关键指标再用conservative精度复跑一遍。然后是初始条件设置。后仿网表里的节点很多初始条件设置不当会导致仿真不收敛。我一般先用nodeset设置关键节点的初始电压帮助仿真器收敛。最后是仿真结果的对比。后仿结果要和原理图仿真结果逐项对比重点关注增益、带宽、相位裕度、建立时间、功耗这些指标。如果偏差超过10%需要仔细排查原因。6.2 寄生参数对电路性能的影响分析在SMIC 130nm工艺下寄生参数对电路性能的影响主要体现在以下几个方面增益下降寄生电容和电阻会形成低通滤波导致高频增益下降。对于放大器电路寄生电容会降低带宽寄生电阻会降低增益。相位裕度变化寄生电容会引入额外的极点导致相位裕度下降。如果相位裕度降到45度以下电路可能不稳定。建立时间增加寄生电阻和电容会增加RC延迟导致建立时间增加。对于开关电容电路和ADC建立时间增加会降低精度。功耗增加寄生电阻会导致IR Drop为了维持同样的性能电路可能需要更大的电流从而增加功耗。噪声增加寄生电阻会引入热噪声寄生电容会耦合噪声。对于低噪声电路寄生参数的影响不可忽略。6.3 版图优化与PEX迭代PEX不是一次性的工作而是一个迭代的过程。第一版版图跑完PEX后根据后仿结果优化版图然后再跑PEX直到后仿结果满足要求。版图优化的方向主要有减小关键节点的寄生电容减小金属面积、增加线间距、换用高层金属、加屏蔽。减小关键路径的寄生电阻增加线宽、增加通孔数量、换用高层金属。减小耦合效应增加线间距、加屏蔽线、采用差分走线。优化电源和地线增加电源和地线宽度、增加去耦电容、优化电源网格。每次优化后重新跑PEX和后仿对比优化前后的结果。如果优化效果不明显可能需要重新考虑版图布局或者电路架构。6.4 项目实战中的经验总结最后分享几条我在实际项目中的经验PEX规则文件要备份。Foundry提供的规则文件可能会更新更新后可能不兼容旧版版图。我一般把每个项目用的规则文件单独备份方便追溯。提取报告要仔细看。提取报告里有很多有用信息比如提取的节点数、元件数、提取时间、警告信息等。仔细看报告可以提前发现很多问题。后仿结果要存档。每个版本的后仿结果都存档方便对比不同版本的性能变化。我一般用表格记录每个版本的增益、带宽、相位裕度、功耗等指标。和电路设计者保持沟通。PEX和后仿的结果需要和电路设计者一起分析。版图工程师关注寄生参数电路设计者关注性能指标两边结合才能找到最优方案。不要忽视温度影响。SMIC 130nm工艺的金属电阻温度系数比较大高温下寄生电阻会明显增加。如果电路工作在宽温度范围后仿要在不同温度下验证。注意衬底耦合。130nm工艺的衬底耦合效应比较显著特别是混合信号电路。如果PEX规则文件支持衬底耦合提取建议启用。如果后仿结果里噪声指标异常衬底耦合可能是原因之一。定期校准提取精度。如果有实测数据用实测数据校准PEX提取精度。比如用环形振荡器或者传输线结构做测试对比提取结果和实测结果调整提取参数。建立自己的PEX检查清单。每个项目开始前按清单逐项检查规则文件版本、Layer Map、LVS结果、提取模式、截断阈值、仿真设置。这样可以避免遗漏提高效率。我在实际使用中发现PEX流程的很多问题其实在版图阶段就可以避免。比如关键信号线走线太密、电源地线太窄、通孔数量不够这些问题在PEX之前就可以通过DRC和版图审查发现。所以我的建议是把PEX的意识提前到版图设计阶段而不是等到PEX跑出来再回头改版图。这样既能缩短迭代周期又能提高一次流片的成功率。