简介:面向射频微波与高速电路设计者的ADS电感、变压器建模专题文档,聚焦片上螺旋电感与变压器从参数定义到Pcell生成、电磁仿真的完整链路。内容涵盖外径、线宽、间距、圈数等设计参数,基板电阻率、金属层与过孔层等工艺选项,以及单端、差分、巴伦结构,方形与正八边形、对称与非对称、抽头等版图形态;同时讲解品质因数、自谐振频率、2-port转差分1-port等性能指标,并给出Coilsys快速生成与AEL宏自定义两条实现路径,配合Momentum完成寄生与耦合验证。资源包为1个PDF文件,约3.1MB,便于按章节查阅。已有9448人学习下载,适合需要把电感、变压器模型落到ADS工程中的读者参考;其中对变压器结构相对固定、难以直接生成任意初、次级感值的局限也有说明,可作为选型与二次开发的判断依据。
1. 电感建模:为什么“画个螺旋”这件事,在仿真里从来不是画个螺旋
很多人第一次在版图里画片上螺旋电感,都觉得这是射频设计里最没技术含量的活:画几圈金属,拉两根引线,完事。可真把版图丢进电磁仿真跑一遍,S 参数出来,自谐振频率对不上、Q 值峰值位置偏了一大截,回头改尺寸又变成另一种错——这种撞墙体验,做射频 IC 的人基本都经历过。
问题出在:螺旋电感的性能不取决于你“看到”的那几圈金属,而取决于由外径、线宽、间距、圈数以及金属层、过孔、衬底电阻率、氧化层厚度共同决定的一组寄生网络。低频电感 Ls、金属与趋肤效应带来的串联电阻 Rs、交叉下层走线形成的电容 Cs、螺旋对衬底的电容 Cox、衬底损耗 Rsi 与衬底电容 Csi,这六项一起决定了 Q 和自谐振频率。理解这份“利用 ADS 建立电感及变压器模型”的资料,价值不在于学会点几个菜单,而在于搞清一个螺旋结构如何被拆成可参数化的 P-cell、如何被电磁求解器离散、以及为什么同一个几何用不同求解设置会跑出不同的 Q。底层机制一旦打通,玄学就变成了工程。
2. 从几何到等效网络:六个寄生项怎么把 Q 值“吃掉”
2.1 设计参数与工艺参数是两组独立的旋钮
螺旋电感的第一层认知,是把“我能改的”和“工艺给我的”分开。前者是设计参数:外径 D、金属宽度 W、相邻圈间距 S、圈数 N;后者是工艺参数:衬底电阻率、金属选项、顶层金属厚度、用哪一层金属成螺旋。这两组参数在 ADS 里对应完全不同的入口——设计参数是 P-cell 的输入变量,工艺参数是库(Library)绑定的 technology 定义,层名与单位在库这一级就固定死。
这个分层不是软件洁癖,而是有物理含义的。D、W、S、N 改变的是磁通闭合路径与电流分布,直接决定 Ls 和 Rs 的量级;衬底电阻率、金属厚度改变的是损耗通道,主要影响 Q 的上限和 Fsr。把两组混着调,就会出现“改了圈数 Q 反而掉”的困惑,其实是衬底损耗在低阻衬底上本来就把 Q 压在低位,几何优化根本没有发挥空间。所以工艺先行——先确认你这版工艺的顶层金属厚度和衬底电阻率,再谈几何。
2.2 六元件集总模型:每个元件对应一段真实物理
资料里那张 IMPACTS OF EACH COMPONENT 的图,本质是把一个分布式结构压成六元件集总网络。各元件的物理来源如下:
| 元件 | 物理来源 | 主要受什么影响 |
|---|---|---|
| Ls | 螺旋导体的低频电感 | D、N、W、S、金属层 |
| Rs | 金属欧姆损耗与趋肤效应 | W、金属厚度、频率 |
| Cs | 交叉下层与螺旋本体的交叠电容、圈间横向电容 | 交叉结构、S、氧化层厚度 |
| Cox | 螺旋与衬底之间的电容 | 金属到衬底距离、面积 |
| Rsi | 衬底损耗 | 衬底电阻率 |
| Csi | 衬底电容 | 衬底电阻率、衬底厚度 |
提示:Cs 是这六项里最容易被忽略的一项。它由“交叉下层(cross-under)”与螺旋本体的交叠产生,横向的圈间电容也算在内。交叉走线一旦画宽或者位置放错,Cs 会显著抬高,Fsr 直接被拉低,而你从版图外观上完全看不出问题。
把这些元件摆成网络,就能理解 Q 的表达式为什么长那样。资料给出的单端形式是 Q = imag(Z11)/real(Z11),差分形式则要先做 2-port 到差分 1-port 的转换:Zdiff = Z11 + Z22 − Z12 − Z21。这个转换不是数学游戏,它对应测试时的实际接法——差分电感的两个端口在物理上对称,但中间存在磁耦合与容性耦合,Z12、Z21 就是把这些耦合折算进来的项。忽略它,你用单端 Q 去评估一个差分电感,会得到偏乐观的结论。
2.3 Q 与 Fsr:两个互相拉扯的指标
Q 的峰值与 Fsr 是一对矛盾体。增大 W 能降 Rs、抬 Q,但同时增大对衬底面积、抬 Cox,衬底损耗通道更通畅,且 Cs 也随交叠面积上升,Fsr 下移。增加 N 能抬 Ls,但 Rs 随长度线性上升、Cox 随面积上升,Q 峰值往往在中低圈数就饱和甚至回落。这就是为什么片上电感的圈数普遍不多——不是不想做高感值,而是高感值在给定工艺下 Q 会先崩。
资料里把单端与差分分别给出 Q 和 Fsr,这个区分在工程上很关键:差分电感的有效 Q 通常优于单端,因为差分激励下衬底损耗的一部分被共模抑制,但这依赖对称性。对称结构(symmetric)与非对称结构(asymmetric)、方形与正八边形、是否带中心抽头(tapped),这些几何选项在 P-cell 里都是可切换的参数,切换的不只是形状,而是整个寄生网络的平衡关系。正八边形相对方形在同样 D 下拐角更平滑,电流路径更接近圆形,Rs 略低;对称结构保证 Z11 = Z22,差分转换后退化项少。
2.4 用一段代码把“参数到指标”的链路说清
实际的 ADS 流程里,几何参数最终要落到可计算的表达式上。P-cell 的 AEL 宏或表达式优化的本质,就是把下面这种计算链写成可执行的形式:
import math def spiral_inductance(d_out, w, s, n, mu0=4e-7 * math.pi): """简化的一阶电感估算:用于给优化器一个合理初值,不作为最终结果。 d_out: 外径(m) w: 线宽(m) s: 间距(m) n: 圈数 """ d_avg = d_out - n * (w + s) # 平均直径,随圈数收缩 rho = (d_out - d_avg) / (d_out + d_avg) # 填充比,衡量绕线疏密 # 经典一阶拟合形式:L 与 n^2、d_avg 成正比,与填充比弱相关 return 2.34 * mu0 * n**2 * d_avg / (1 + 2.75 * rho) def q_single_ended(z11): """单端 Q:虚部比实部,注意 z11 为复数""" return z11.imag / z11.real def z_to_diff(z11, z22, z12, z21): """2-port 转差分 1-port,对称结构下 z11==z22、z12==z21""" return z11 + z22 - z12 - z21这段代码里第一项的意义在于“给初值”:Coilsys 合成或表达式优化都需要一个起点,直接拿闭合公式估一个 Ls,可以避免优化器在错误区间里乱跑。第二、三项才是评估的核心——单端 Q 只看 Z11,差分 Q 必须先把四端口参数折算成差分阻抗。注意 z_to_diff 里 Z11 与 Z22 是相加,Z12 与 Z21 是相减,符号错了 Q 会算成负数,这是排查时第一个要看的地方。
3. Coilsys 与 AEL 宏:同一条参数化链路,两种自动化深度
3.1 P-cell 的本质是“参数化版图生成器”
理解 ADS 里这条建模路径,关键在 Workspace / Library / Cell / View 四级结构:Workspace 是工程目录,可容纳多个 Library;Library 绑定特定 technology,层定义与单位在这一级固定;Cell 是库内的一个设计或测试台;View 是同一 Cell 的不同表达形式,比如 schematic、layout、emModel。P-cell 是 Cell 的一种特殊形态——它的 layout 不是画出来的,而是由一组参数在打开时实时生成。
这个设计的动机很直接:电感版图有几十个尺寸变量,手工画一遍,改一次参数就得重画,且极易出现圈间距不一致这种隐性错误。P-cell 把“几何生成规则”固化成一个可执行单元,调用者只需要给 D、W、S、N、金属层、过孔层,版图按规则自动铺出来。参数变了,几何跟着变,这是后面所有仿真与优化的前提——没有 P-cell,参数扫描根本无从谈起。
3.2 Easy Way:Coilsys 的合成、查找与模型生成
资料把 Coilsys 这条路称为 Easy Way,其流程是三步:合成(Synthesis)、查找(Finder)、AMC 模型生成。合成是给定目标 L 和 Q,反推几何参数组合;查找是在工艺允许的几何范围内筛出满足指标的候选;AMC 则把选中的几何转换成可用于电路仿真的模型。
这条路的价值在于“把电磁问题转成查表问题”。对大多数常规电感,工艺厂或工具内置的库已经覆盖了常用几何,直接查表比每次跑 Momentum 快几个数量级。代价是:查表结果受限于库的覆盖范围,几何稍微跳出预设区间(比如你做的是非对称差分电感或带抽头结构)就可能查不到,只能退回硬路。
注意:Coilsys 首次使用时 ADS 需要重启一次,目的是加载必需的脚本。这一步在自动化环境里容易被忽略,表现为 P-cell 菜单里选项缺失或生成失败。
3.3 Hard Way:用 AEL 宏把生成规则写成脚本
硬路的本质是把 P-cell 的生成逻辑自己写出来。资料给的步骤是:在文本编辑器里写 AEL 脚本,为库创建 boot.ael,在 boot.ael 里加载脚本,然后配置 P-cell 的 layout。boot.ael 是库启动时自动执行的入口文件,把自定义脚本挂在这里,库一打开你的 P-cell 就注册好了。
这条路的收益是自由度:支持任意多层结构、任意几何拓扑,能生成 Coilsys 覆盖不到的非对称、抽头、多圈变宽结构。成本是你要自己维护几何规则的正确性——圈与圈不能重叠、交叉下层要落在合法金属层、过孔位置要满足工艺设计规则。资料里的 User_Input.ael 是个值得注意的细节:层名大小写敏感。这一点在跨工艺迁移时是高频翻车点,同一个层在不同工艺库里可能叫 M6 也可能叫 m6,脚本里写死一个大小写,换个库就报错。
3.4 变压器:结构固定是当前方案的边界
摘要里那句“缺点是变压器结构比较固定,无法生成任意的初、次级线圈感值”,其实点出了这条链路的真实能力边界。变压器在 ADS 里通常由两个耦合的螺旋构成,P-cell 能参数化的是几何,但初、次级之间的感值配比、耦合系数 k、漏感,是由两个线圈的相对位置与圈数共同决定的,自由度不如单独电感那么直接。想拿到特定的初次级感值组合,往往得靠表达式与优化反复迭代,而不是一次生成。
这也解释了资料里为什么把“表达式与优化”列为 Hard Way 的另一半:当几何生成规则给不出你要的电气指标时,就把指标写成目标函数,让优化器去搜参数空间。这条路能走通,但要知道代价——每次迭代都可能触发一次电磁仿真,收敛速度取决于初值质量,前面那段一阶电感估算就是为此存在的。
4. Momentum 仿真:为什么同样的版图,换个设置 Q 就变了
4.1 平面 EM 求解器的三个前提假设
Momentum 是 3D 平面电磁求解器,它的“平面”二字有明确代价。资料列出的约束值得逐条读:介质层在横向延伸到无穷;同一 Z 坐标上不支持不同材料;任意导体跨层穿越不被支持。这三条不是软件缺陷,而是求解器把三维问题降成二维多层问题所必须的前提。
理解这三条,能解释很多“仿真结果和实测对不上”的抱怨。比如你的版图里有一块局部金属只在某个区域存在,而它与另一层金属在同一高度平面内不连续,这在 Momentum 里就属于“同 Z 坐标不同材料”,要么改几何,要么接受近似。再比如跨层走线如果不在过孔位置严格连接,求解器会按它自己的网格离散,耦合结果和你想象的不同。
4.2 厚金属的三种导体设置:3D、2D 与 Sheet
对片上电感来说,最有实际影响的是导体厚度设置。资料给了三种:
| 设置 | 电流建模方式 | 适用情形 |
|---|---|---|
| 3D Distributed | 顶面、底面、侧壁电流密度全部考虑 | 推荐设置,厚金属电感首选 |
| 2D Distributed | 侧壁只考虑垂直方向电流 | 特定条件,精度与速度折中 |
| Sheet | 不考虑侧壁电流 | 网格屏蔽地、慢波地、图案化地等 |
为什么 3D Distributed 被标为推荐?因为片上电感的顶层金属往往有几微米厚,趋肤效应在中高频下让电流向表面和侧壁集中,侧壁电流对 Rs 的贡献不可忽略。用 Sheet 设置等于把金属当零厚度薄片,Rs 会偏小、Q 偏乐观,Fsr 也会偏移。而侧壁耦合效应在密集绕线里同样存在——相邻两圈的侧壁之间是有容性耦合的,这正是 Cs 里“圈间横向电容”那部分的来源。
4.3 网格与边界:结果不可复现的两个常见源头
资料提到 Open Boundary 与 ground plane 的 top、bottom、sidewall 设置。这些是求解器的边界条件:开放边界意味着场可以辐射/延伸到计算域外,适合孤立电感;一旦你加了理想地平面,边界反射会改变 S 参数,尤其是低频段。
真正让结果不可复现的,通常是网格。Momentum 的自适应网格会依据当前几何与频率自动加密,两次运行如果频率点设置不同、或者几何有微小改动,网格分布就变了,Q 的峰值位置就能挪几个百分点。这不是 bug,是离散误差的正常表现。工程上的做法是固定频率扫描范围与网格设置,做对比时只改一个变量,否则你无法判断差异来自设计还是来自数值噪声。
4.4 仿真设置落地成一段可复用的配置
把推荐设置固化下来,比每次手动点菜单可靠。下面这段是配置文件风格的示意,用于说明哪些项必须显式写死:
# emSetup 推荐配置(示意,字段名依实际环境调整) substrate: layers: [passivation, oxide, silicon] silicon_resistivity: 10 # ohm-cm,必须与工艺一致,不能沿用默认 conductor: model: 3d_distributed # 厚金属电感必须用 3D,不能用 sheet thickness: 3.0um # 与工艺顶层金属厚度对齐 mesh: frequency_plan: [1GHz, 10GHz, 40GHz] # 固定频点,保证多次运行可比 adaptive: true boundary: type: open # 孤立电感用开放边界这份配置里最容易出错的是 substrate 的电阻率——很多翻车案例是把默认值留着没改,跑出来的 Q 与实测差一倍。其次是 conductor 的 thickness,如果工艺顶层金属是电镀加厚的,实际厚度可能远大于 nominal 值,仿真里填小了 Rs 就偏大。mesh 的 frequency_plan 建议覆盖你关心的整个频段,并且每次对比都保持同一组频点。
5. 避坑与排查:五条血泪经验
5.1 层名大小写不一致导致 P-cell 生成失败
现象:AEL 脚本在原来的库里跑得好好的,换到新工艺库后 P-cell 生成报错或生成的版图为空。 原因:层名大小写敏感,不同工艺库对同一金属层的命名大小写不一定统一,脚本里写死的字符串匹配不上。 解决:把层名做成配置项,从库的 technology 定义里读取,而不是在脚本里硬编码;迁移时先打印实际层名列表核对一遍。
5.2 交叉下层放错金属层,Fsr 莫名其妙偏低
现象:几何尺寸完全按目标设计,仿真出来 Q 峰值位置对,但自谐振频率比预期低很多。 原因:交叉下层(cross-under)用了一层离螺旋很近的金属,交叠面积大,Cs 被显著抬高。 解决:交叉走线尽量用低层金属并减小交叠宽度,同时把 Cs 作为显式检查项——在等效网络里单独看这一项的贡献,别只看总 Q。
5.3 用单端 Q 评估差分电感,结论偏乐观
现象:差分电感按单端方式仿真,Q 看着很漂亮,实测差一截。 原因:没有做 2-port 到差分 1-port 的转换,Z12、Z21 的耦合项被忽略,衬底损耗的一部分被错误地算作有效。 解决:统一用 Zdiff = Z11 + Z22 − Z12 − Z21 折算后再算 Q;对称结构下确认 Z11 与 Z22、Z12 与 Z21 是否真的一致,不一致说明版图对称性没做到位。
5.4 导体厚度用 Sheet 设置,Q 虚高
现象:仿真 Q 比流片实测高出一大截,且频率越高差距越大。 原因:Sheet 设置不考虑侧壁电流,厚金属在高频下的趋肤效应没有被建模,Rs 被低估。 解决:厚金属电感一律用 3D Distributed;如果为了速度临时用 2D,至少在最终验证时切回 3D 复核一次。
5.5 变压器硬凑初次级感值,优化不收敛
现象:想同时满足初级、次级两个目标感值,表达式优化跑很久还在震荡。 原因:变压器的几何自由度不足以独立控制两个感值,两个目标耦合在一起,优化器在矛盾的目标间来回摆。 解决:先放宽其中一个目标,用耦合系数与漏感作为中间变量分步调;或者接受 P-cell 的结构约束,把初次级配比交给版图微调而非纯参数优化。
6. 参数化建模的取舍:自由度、精度与可复现性之间的三角
把这条链路走完,会发现所有设计决策最后都收敛到一个三角关系上:几何自由度、仿真精度、结果可复现性,三者很难同时拉满。Coilsys 那条路牺牲自由度换速度和一致性,查表结果稳定、可复现,但跳不出预设几何;AEL 宏换来自自由度,代价是每一步几何规则的正确性都得自己担保,一个层名大小写就能让整条链路失效;Momentum 的 3D Distributed 设置换来精度,代价是网格敏感、仿真时间成倍上升。
我一般的判断顺序是:先用 Coilsys 合成拿到一个合理初值,确认这个工艺下 L 和 Q 的大致上限;几何跳出预设范围时再转 AEL,把生成规则显式写出来,并在脚本里把层名、金属层、过孔层都做成配置而非硬编码;最终验证阶段一定用 Momentum 的 3D Distributed 加固定频点网格跑一遍,只改一个几何变量做对比。这套顺序的价值不在流程本身,而在于每一步都知道自己在为什么付代价。
验证方法上,有几个可复现的检查点值得固定下来:一是把衬底电阻率、金属厚度与工艺文档对齐后写进配置,不依赖默认值;二是对比仿真时锁死频点与网格,避免离散误差伪装成设计差异;三是差分结构必须做 Zdiff 折算,对称性用 Z11 与 Z22 的偏差来量化,而不是目测版图;四是把 Cs 单独拎出来看贡献,交叉走线的改动往往在这一项上留下痕迹。这四条做完,Q 值从“玄学”变成可解释的量。
变压器那一块的能力边界也要认。结构相对固定、无法生成任意初次级感值,这是当前参数化方案的现实,硬用优化去凑两个耦合目标,收敛性和结果可信度都会打折。更稳的做法是把变压器拆成“几何可参数化 + 电气指标靠分步调”的两段式,先保证几何合法、寄生可解释,再谈指标匹配。
从那以后我每次开新工艺的电感建模,都强制先跑一遍“层名核对 + 衬底参数对齐 + 单端/差分口径确认”这三步,再动几何。这三步花不了几分钟,但省下的返工时间是以天计的。资料里那条从 Coilsys 到 AEL 再到 Momentum 的完整链路,配合本文说的这些检查点,足够你把片上电感和变压器从画图变成真正的参数化设计,希望帮到你。
本文还有配套的精品资源,点击获取