ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

模拟IC设计实战:PDK、运放与仿真收敛全流程解析

2026/9/29 20:14:40 拓冰建站 浏览量
模拟IC设计实战:PDK、运放与仿真收敛全流程解析 模拟IC设计这五个字在芯片圈里提起来很多人第一反应是“难”。难在哪它不是背几个公式就能上手也不是画完原理图就万事大吉而是从器件物理、版图布局到仿真调试一环扣一环每一步都在跟“不确定性”打交道。这篇内容不打算讲成教科书而是把我自己从入门到做过几个流片项目的经验梳理出来重点说说模拟IC设计到底在做什么、PDK是怎么支撑整个设计流程的以及一个典型运放从设计规格到仿真收敛的完整路径给想入行、刚入行或者想知道芯片设计背后逻辑的朋友一个可参考的坐标。1. 模拟IC设计到底在做什么工作1.1 芯片里为什么要有“模拟半边天”先回答一个很多人问过的问题数字芯片那么强大为什么还非要模拟电路道理很简单真实世界是连续的。电压、温度、声音、加速度、光强这些物理量在自然界里没有“0”和“1”的跳变全是平滑变化的模拟信号。芯片要跟外界打交道就必须在边界处完成信号形式和幅度的转换。一块手机SoC真正占面积的可能是CPU、GPU这么大的数字模块但你把视角拉到整个系统会发现电源管理、射频前端、音频功放、传感器接口、温度检测、电池充电这些全是模拟电路。没有LDO或DC-DC数字内核拿不到稳定电压没有ADC传感器采到的模拟电压进不了数字处理器没有PLL系统就没有靠谱的时钟。可以说模拟电路是芯片的“五官”和“供电系统”负责处理真实信号也负责维持整个芯片的基本生存环境。这个分工决定了模拟IC设计在任何芯片项目里都是躲不开的也是为什么行业里一直缺人、缺有经验的工程师。我刚接触芯片设计时导师给过一个比喻数字电路像流水线上的标准零件尺寸统一、组装规整模拟电路像手工木作每一寸都要亲自打磨。这个说法有点夸张但确实点出了模拟设计的特质——它极度依赖单个晶体管的精细工作状态。1.2 模拟设计和数字设计是两条完全不同的路既然要讲“模拟IC设计”就得先把它跟数字IC设计放在一起看才能看清边界在哪。这里我列一张对比表帮助还没入门的同学建立整体感。维度模拟IC设计数字IC设计信号类型连续电压/电流离散0/1逻辑电平主要工具Virtuoso、Spectre、Hspice、CalibreDC、Genus、Innovus、PrimeTime设计方式按晶体管逐级搭电路、手工定参数写RTL代码、逻辑综合、自动布局布线关键指标增益、带宽、噪声、失调、功耗、稳定性时序、功耗、面积、可测试性误差容忍度失配和工艺偏差直接反映为性能损失有一定噪声裕度逻辑函数本身不易失真人力投入反复仿真、调参、版图匹配、后仿验证自动化工具介入深前段设计标准化程度高从这张表能看出数字设计可以靠抽象层级去屏蔽底层细节一个RTL代码写出来综合工具帮忙做逻辑映射时钟树、布线都有成熟的自动化方案。模拟做不到。晶体管的宽长比、过驱动电压、工作区、失配、寄生电容每一件事都需要工程师自己决定并亲自验证。同一个运放拓扑换一种输入管尺寸增益可能差出10dB功耗和噪声也会彻底改写。这也解释了为什么模拟工程师的成长周期比数字工程师更长。数字工程师可以用一个学期的课程加两三个项目上手模拟工程师往往需要连续做两次流片才能真切感受到“仿真通过”和“芯片能跑”之间的鸿沟。1.3 入门模拟IC设计要补哪些基础聊到学习路径不少新人上来就急着敲Virtuoso画管子这是本末倒置。我自己踩过这个坑后来补课花了更多时间。比较靠谱的顺序应该是这样第一吃透晶体管原理。MOSFET的四个工作区、饱和区电流方程、亚阈值区行为、体效应、沟道长度调制这些都是建立直觉的地基。很多人觉得这是器件物理的活儿工程师不用管实际到了项目里你面对的可能是一个弱反型输入的运放不掌握亚阈值特性就完全看不懂工作点。第二把反馈和稳定性学透。模拟IC设计可以说是“反馈工程”的集大成者。负反馈决定增益精度环路相位裕度决定稳定性。不理解极点、零点、相位裕度之间的关系连最基本的运放补偿都做不好。第三噪声和匹配的概念要早接触。噪声不是“扰动信号”而是每一个电阻本身产生的热噪声、每一个晶体管产生的闪烁噪声是性能指标的组成部分。匹配则是版图层面的概念——两边的管子不一致运放就会有失调差分结构就白搭。第四熟练一个EDA环境。Cadence的Virtuoso是模拟设计最主流的平台Spectre仿真器、ADE套件、PVS或Calibre验证这些都是日常工作的核心工具。建议新人集中一两周时间把工具链跑通不需要追求多花哨能完成原理图编辑、DC/AC/瞬态仿真、版图抽取和DRC/LVS检查就够了。基础补完之后你便会发现模拟电路的世界开始变得有条理每一个设计问题都能拆成“器件状态是否合理、环路是否稳定、噪声和失配是否收敛、版图是否实践了设计意图”四个层次。后面要讲的PDK和设计流程都建立在这些基础之上。2. PDK模拟IC设计的第一份“工艺地图”2.1 PDK到底是什么和电路设计有什么关系如果你去查“模拟ic设计pdk”这个关键词会看到资料把PDK定义为Process Design Kit工艺设计套件。我更喜欢把它称为代工厂发给设计者的一整套“施工规范 预制件”。没有PDK你连一个晶体管都画不出来因为没有人告诉你这个工艺的MOS管模型长什么样、最小沟道长度是多少、金属层有几层、能不能用某个间距走线。装修房子时你不能按自己的想法随便砸墙必须依据开发商提供的户型图和承重墙标注。PDK就是模拟IC设计里的户型图。它把代工厂的工艺能力翻译成设计者能用的格式晶体管模型、版图设计规则、参数化单元、验证命令、工艺角定义。有了PDK你才能在原理图里拉出一个PMOS改一改宽长比然后让仿真器算出它的工作点。我见过一些刚进实验室的学生拿到PDK之后第一件事是打开Virtuoso开始画版图结果发现画出来的东西过不了DRC原因就是不懂规则文件。PDK不是一份可以“以后再看”的附件文档它是你整个设计周期里每时每刻都要打交道的基础环境。越早花时间读PDK的说明手册和目录结构后面省的时间越多。2.2 PDK里常见的文件组成一句话拆开讲不同代工厂的PDK组织方式有差异但核心组成基本是固定的常用的模块大致有五块。第一块是器件模型模型库。这是整个PDK的灵魂通常包含NMOS、PMOS、电阻、电容、电感、二极管等器件的SPICE模型。仿真器在计算工作点、增益、失真时全靠这些模型语句。实际使用中要注意模型分两种给Spectre的以及给Hspice的有些PDK还会提供针对不同仿真器的优化版本。你拿着Spectre模型去跑Hspice报错是小事万一模型语法兼容不报错但结果偏差那才坑人。第二块是PCELL参数化单元。简单说这是把“画晶体管/电容/电阻”这件事做成了可以填参数的模板。你在原理图或版图里拉一个PCELL的MOS管填上沟道宽度W和长度L工具自动帮你把版图的扩散区、栅、接触孔、多层金属全部画好。PCELL省掉了大量重复劳动也是PDK“好用”和“难用”的分水岭。第三块是物理验证规则文件也就是DRC和LVS的rule deck。DRC检查版图几何尺寸是否满足工艺要求比如金属最小宽度、最小间距、栅极和扩散区的交叠关系。LVS则是把版图提取出来的电路跟原理图网表比对确保你画的东西确实是设计的东西。这两步不通过流片就是白扔钱。第四块是寄生参数提取规则也就是PEX rule。后仿之所以能反映真实性能是因为PEX把版图中的走线电阻、耦合电容、衬底寄生都提取出来再仿真。没有PEX rule你只能做前仿那在绝大多数项目里是不够的。第五块是工艺角定义和数字库。工艺角定义了TT、SS、FF、FS、SF这些管子速度波动的上下限以及温度范围和电压范围。数字库则用于混合信号芯片里的数字部分让数字里的标准单元能跟模拟部分同平台验证。有的PDK还附带IO库、ESD器件、dummy器件和guard ring模板这些属于加分项项目流片时基本都要用到。2.3 怎么用好PDK从加载到工艺角配置拿到一个新PDK不要急着画电路。我会先做三件事把安装说明从头到尾读一遍把PDK包里自带的example跑起来把模型文件的corner名抄到笔记里。这个习惯帮我避开了很多“低级但致命”的错误。第一步是在Cadence环境里配置PDK。通常安装脚本会将PDK数据放在指定目录你需要在启动目录下配好cds.lib和lib.defs。cds.lib负责告诉Virtuoso哪些库可以被引用lib.defs记录库的物理路径。配错一个路径Virtuoso打开原理图就会显示cellview not found。别小看这个问题项目组里几乎每个月都会有人因为机器切换、环境变量没同步而卡在这。第二步是确认工艺角和温度设置。有些同学从头到尾只用“tt”模型仿完就提交这在中高低端消费类芯片里风险极大。正确的做法是在仿真前主动检查模型库的名称和corner定义。我后面会单独讲工艺角怎么跑这里先提醒一句PDK里的corner名未必都叫“tt”有的叫“typical”有的叫“nom_tt”千万别想当然。第三步是验证PCELL用法。打开PDK自带的testcell看看它的CDF参数里尺寸单位是um还是nm衬底接法怎么填finger和multiplier有什么区别。很多新手在PCELL里把finger和multiplier混用导致版图晶体管画出来并不是自己想要的那样前仿和后仿对不上排查起来非常费劲。我给一个非常具体的建议每次拿到新PDK花一天时间把“加载PDK - 新建testbench - 跑一个1uA电流镜DC - 跑一个5-stage ring oscillator瞬态”整个流程跑通。这个过程既验证了环境配置也验证了模型库和仿真器兼容性。看起来慢实际是后面所有项目的“启动保障”。3. 实操流程从一张空白原理图到可交付的设计3.1 设计指标怎么定规格书长什么样很多初学者拿到任务就急着画管子这是错误习惯。模拟IC设计的第一步永远是定规格也就是把“要设计的电路”翻译成可验证的指标。我做过的项目里最典型的模拟模块就是运算放大器。这里拿一个目标明确的低功耗两级运放做例子规格如下参数设计目标备注工艺/电源0.18μm CMOS / 1.8V经典成熟工艺负载电容2pF含下级输入栅电容直流开环增益≥ 60dB保证反馈精度单位增益带宽GBW≥ 10MHz决定小信号速度相位裕度≥ 60°保证闭环稳定压摆率SR≥ 20V/μs决定大信号速度静态功耗≤ 0.5mW含偏置电路输出摆幅0.2V~1.6V至少达到轨到轨的88%为什么选两级密勒补偿结构而不是单级因为1.8V下单级共源放大器的增益大致等于gm乘ro在长沟道工艺里要做到60dB以上输出摆幅会很紧张。两级结构把增益分配开第一级差分输入做电压放大第二级共源级做增益叠加和输出摆幅中间加一个密勒电容完成极点分裂这是教科书里最经典、也最稳妥的运放架构。规格书不是敷衍了事写几句话就完事。真正交付的设计规格表每一项指标后面都要带上测试条件、目标和容差。比如GBW的负载电容是多少、共模输入范围是多少、温度范围是-40°C到85°C还是工业级到125°C。这些不写清楚后面仿真没法定标准评审过不了流片回来也没法验收。3.2 两级运放设计实操步骤和关键参数实际动手画电路时步骤很多但真正决定性能的其实就是几个关键参数的选择。我把过程拆开讲。第一步定拓扑。输入级用PMOS差分对负载用NMOS电流镜输出级用PMOS驱动、NMOS做有源负载中间加Cc补偿电容。选PMOS输入的好处是输入共模范围可以覆盖到地这在低电压应用里很关键。第二步做电流预算。总功耗0.5mW电源1.8V总电流预算大约278μA。留出余量把尾电流设在40μA第二级镜像电流设在150μA其余留给偏置和辅助电路。这个分配不是拍脑袋而是先看输出级的摆率需求SR等于第二级电流除以补偿电容如果Cc取1pF要20V/μs的SR第二级电流至少要20μA。留出设计余量到150μA是合理的。第三步算输入管的跨导。单位增益带宽由第一级跨导gm1和密勒补偿电容Cc决定公式是GBW gm1 / (2π × Cc)。目标GBW是10MHz取Cc1pF反推得到gm1约等于0.63mA/V。也就是说输入对的等效跨导必须在630μS以上。第四步根据gm算尺寸。在饱和区近似下gm 2 × ID / Vov。输入对每边电流取20μA要达到0.63mSVov大约在0.13V左右这个数字在0.18μm工艺下是合理的。然后用平方率公式算宽长比W/L 2×ID / (μp·Cox·Vov²)。PMOS在这个工艺的μp·Cox大约在50~60μA/V²的范围取55μA/V²算W/L大约在110左右可以拆成W40μm、L0.36μm或者W20μm、L0.18μm多指并联。这里我强调一下手算只是给初始值实际工程里更多使用gm/Id方法查表因为平方率公式在短沟道器件里误差很大。但初值推导用平方率公式能帮你迅速锁定合理的量级。第一步到第四步要反复迭代。把初值填入原理图跑DC仿真查看输入管是否处在饱和区、每个管子的Vds是否比Vov大一些。如果某个管子的工作点不对大概率是偏置给错了而不是尺寸问题。第五步加补偿。两级运放最麻烦的是第二级会引入一个极点相位裕度不足就必须用Cc把主极点往低频推。密勒补偿会产生一个右半平面零点为了不让它破坏稳定性通常在Cc通路上串一个调零电阻Rz阻值约等于1/gm2即第二级跨导的倒数。调零电阻在工艺实现上常做成工作在深线性区的MOS管或者poly电阻设计时留出可调范围方便后期corner优化。第六步搭偏置电路。用电流镜复制基准电流给尾电流源和第二级注意电流镜的Vds要尽量一致减小沟道长度调制的影响。低功耗芯片里常见用自偏置结构但一定要加启动电路否则上电后可能停在零电流状态。我遇到过不止一次因为没有启动电路仿真里电路怎么都不出工作点。3.3 三个必看的仿真结果DC、AC、瞬态原理图搭好、尺寸填好接下来就是仿真验证。我建议所有新手养成固定流程先DC再AC再瞬态。DC仿真的任务不是“看结果”而是“看工作状态”。过一遍所有管子确认它们都在饱和区看输入共模范围是否覆盖目标区间看总电流是否在预算内再顺手查一下各节点的电压有没有异常。如果发现某个管子Vds还不到Vov的0.5倍那它很可能在深线性区增益会大幅缩水这时候不是继续调后续指标而是回去改管子尺寸或偏置。AC仿真最核心的看点是环路增益曲线和相位曲线。具体操作上把运放接成单位增益缓冲器在输入端加交流小信号然后看输出端到输入负端的环路特性。低频增益要超过60dB0dB增益交点频率就是实际GBW相位在0dB处的读数是相位裕度。若相位裕度只有40°那么瞬态方波响应一定会有明显振铃。一个常见问题是很多人在初版仿真里相位裕度只有35°左右此时先别急着宣布设计失败试着增大Cc同时适当降低GBW要求往往能换来20°以上的裕度提升。瞬态仿真用来验证大信号行为。给输入端加一个方波或斜坡观察输出摆率、过冲、建立时间。压摆率的实测值是输出端从10%到90%所需时间内完成的变化量理论上C×SR决定了这个斜率。过冲过大基本锁定为相位裕度不足建立时间过长可能是尾电流限制了第一级充放电速度。这里有个技巧瞬态仿真时输入信号上升沿和下降沿时间要设定得比目标压摆率更快否则测出来的压摆率其实是输入源的上限而不是电路的真实能力。在闭环稳定性更严格的场合建议用Spectre里的stb分析。stb直接计算环路增益和相位裕度比在单位增益缓冲器里粗略看更容易在复杂反馈网络中定位问题。中高级工程师做PLL环路滤波器、LDO环路补偿时都用stb两级运放虽说不一定需要但养成习惯没坏处。3.4 工艺角与蒙特卡洛分析在单点TT模型下仿真全绿只能算完成一半。芯片流片后一批晶圆上不同位置的晶体管性能是有差异的同一颗芯片内相邻的管子也会有失配。工艺角仿真就是看你的设计在最坏条件下还能不能满足指标。常见的五个工艺角含义如下工艺角含义典型影响TT典型NMOS/典型PMOS性能居中推广基准SS慢NMOS/慢PMOS速度最慢、Vth可能偏高FF快NMOS/快PMOS速度最快、电流偏大、功耗可能超标FS快NMOS/慢PMOS常用于包含PMOS或NMOS性能匹配的模块SF慢NMOS/快PMOS同样检验特定器件组合的失配角实际仿真中还要叠加温度。常见做法是每个工艺角至少跑三档温度-40°C、27°C、85°C。所以光corner就有15个组合。如果你做的模块对电压敏感比如LDO、bandgap还要把电源从1.62V到1.98V拉一遍。这么跑一轮下来一张表格里列出所有corner下的DC增益、GBW、相位裕度、功耗、压摆率哪个指标在哪组corner下爆掉一目了然。蒙特卡洛分析和corner的关系用一个比喻来说corner看的是“同一条生产线不同批次的整体偏移”蒙特卡洛看的是“同一片晶圆上相邻器件之间的随机失配”。对运放来说最致命的是随机失配导致的输入失调电压。仿真时要把工艺全局变化和局部失配都打开跑200到500个样本统计失调均值、方差和良率。跑完之后会发现TT corner下很好看的直流增益在mismatch下可能出现严重的输入失调尤其输入对和电流镜负载对不匹配时。给新手一个经验值corner仿真最好严谨跑但蒙特卡洛可以先跑100~200个点估算趋势等设计基本定稿再拉大到500个点。不要每次都跑1000个样本时间和服务器资源都不划算。4. 常见问题与排查技巧实录4.1 仿真不收敛最常见的“卡死”现场模拟仿真里最浪费时间的问题就是“不收敛”。Spectre报一句“DC convergence failure”或者“tran failed to converge”第一次遇到的人往往手足无措。我自己推bandgap启动时曾反复卡在这个问题上折腾了大半天才解决。不收敛的本质是仿真器在每个时间步找不到满足电路方程的电压电流解。常见诱因有三个一是电路本身就存在强烈正反馈比如bandgap的启动阶段或振荡器的起振二是信号源跳变太陡让仿真器无法在单位步长内收敛三是模型在某个区间存在强非线性仿真器迭代发散。排查办法我按推荐顺序列出来先把激励源的上电时间拉长。给VDD加一个0到1.8V的斜坡上升时间至少1μs起甚至10μs。很多不收敛是“上电瞬间太猛”引发的。给关键节点加初始电压。在仿真设置里对差分输出节点、bandgap的正反馈节点用IC指定初值让电路一开始就处在合理工作点附近。先跑DC扫描找到每个节点的静态电压。再阅读收敛报错信息里的节点名看看是不是某个已知悬空节点的问题。调节仿真器收敛参数。Spectre里可以适当放宽dc的迭代次数上限dciter或改变收敛判定算法。注意这是最后的招不建议一上来就动全局精度设置。检查电路有没有悬空节点。原理图里漏接的栅极、悬空的电容端都可能让矩阵出现奇异。有一个偏方法论的经验不收敛时别硬调参数死磕先怀疑电路本身。把拓扑简化成一个明显稳定的小电路比如纯电阻网络确认工作正常后再一点点把非线性器件加回来。这样做能快速定位哪一步引入的问题。4.2 仿真结果忽大忽小精度和收敛容差设置有时候仿真能跑完但结果怎么看都不对波形毛刺多、数值不干净。这类问题多半是精度设置不匹配电路特性。Spectre默认的精度模式分为conservative、moderate、liberal三级。做运放AC分析用moderate基本没问题但瞬态仿真里要关注maxstep这个参数。如果信号上升沿只有1ns而maxstep设成了100ns仿真器大概率会漏掉关键斜率波形看起来就会“钝”或者出现不正常的阶梯。经验做法是把maxstep设为目标信号周期的1/50到1/100比方说一个10MHz的时钟信号周期100nsmaxstep就设在1ns到2ns。另一个常被忽略的是strobeperiod。如果你在瞬态仿真的输出设置里让结果每50ns保存一次却想观察一个5ns宽的毛刺那这个毛刺根本不会出现在波形文件里。初看以为是电路bug实际是采样点不够。遇到“莫名其妙多了一个尖峰或丢失一个尖峰”的情况先去看仿真步长设置。还有一组参数是reltol、vntol、iabstol它们控制电压和电流的绝对/相对误差容限。默认值在大多数场景够用但如果你的电路有一路电流只有nA量级而iabstol设成了1μA这个小电流路径的计算精度就会很差。仿真结果明显不合理时把容差收紧一个量级重跑往往会发现问题消失。4.3 版图后仿比前仿差很多寄生和对称性问题很多新手第一次做后仿看到结果比前仿差一截第一反应是“为什么”。后仿性能下降是正常的问题在于下降多少属于合理。走线金属有电阻两条长并行走线之间有耦合电容这些都必然存在。增益下降10%、GBW微降、相位裕度少5°这些常见但可控。如果GBW直接砍半、相位裕度从60°掉到20°那就不是“寄生难免”而是版图设计出了问题。高频性能劣化通常来自三个方向。一是关键信号走线太长太细。比如运放输出走线横跨整个模块寄生电容可能直接额外加了0.5pF负载你的负载假设就失效了。处理办法是缩短输出走线加大金属宽度或者让输出走线远离敏感输入节点。二是匹配器件没有做到对称。差分输入对如果一左一右间距不同、周围环境不同失配会直接导致失调和后仿AC结果的非对称。匹配不是“画得看起来一样”而是要在版图上做common centroid交叉布局并在两端放dummy管让每个管子的周边环境一致。三是敏感节点缺guard ring。对有源负载、高阻节点周围如果紧挨着抖动的大电流走线噪声会通过衬底耦合进去。后仿里看不出噪声但流片回来静态电流、失调就都变了。版图阶段给敏感模块加一圈接地guard ring成本不高效果很好。后仿结果开始不对劲时先别急着改版图或者电路。把抽取出来的寄生网表打开看看哪些节点的寄生电容/电阻异常大直接按数值反推版图中的位置。这个“按图索骥”的过程尽管繁琐但比盲改要高效得多。4.4 其他踩坑记录PCELL参数填错、库路径错误、温度设置等最后汇总几条高频踩坑记录都是我亲眼见过或亲手踩过的。PCELL尺寸单位问题。某个PDK的PCELL默认长度单位是nm宽度单位是um新人拿着“W2、L180”填进去管子画出来是2μm宽、180nm长看着合理但换一个PDK默认全是um同样的“L180”就变成180μm荒谬到一眼能看出问题可放到复杂原理图里就不容易察觉。填完PCELL参数后务必用version check或layout简单看一下管子实际尺寸。模型库路径缺失。换一台机器跑仿真报“model not found”或“cell nch not defined”十有八九是cds.lib里没引用PDK库或者环境变量指向了旧版本的PDK路径。解决方案是把PDK配置写成一个source脚本每次开新终端先source一下。不能指望自己记住也别指望别人。温度被全局设置覆盖。有的仿真环境在model setup里写了固定温度又有人在ADE里设置了温度两层设置冲突时结果可能莫名其妙。排查时直接打印仿真日志里的temperature参数确认实际跑的是多少度。我在一次仿真里明明设置-40°C结果日志显示27°C原因是环境变量里默认覆盖了ADE设置。模型corner选错。一个PDK里可能同时存在tt、typ、typical等好几个“看起来像典型”的模型定义但它们对应的工艺条件可能并不一样。严谨的工程师会到模型文件里看corner定义的条件而不是猜名字。这个习惯能避免很多“为什么别人跑出来和我差这么多”的困惑。问题现象可能原因处理办法仿真报model not found模型库路径未配置或库名不对检查cds.lib和环境变量source PDK配置文件原理图找不到celllib.defs路径错误核对库物理路径重新配置library manager瞬态波形粗钝maxstep太大设置maxstep为关心信号的1/50~1/100后仿性能大幅下降关键走线过长、匹配不好、guard ring缺失根据寄生提取结果反查版图高寄生节点同一电路不同机器结果不同仿真器版本、模型版本不一致统一工具版本和PDK版本记录环境指纹回到开头那句话模拟IC设计确实难但这种难不是“无迹可循”的难。它更像一门手艺靠的是对器件原理的理解、对仿真结果的敏感以及一次次踩坑后沉淀下来的直觉。我自己的切身体会是能力提升最快的阶段不是跟着教程一步步跑通的时候而是碰到一个怪异现象花两天时间定位根因最后发现是某个PCELL参数填错时的那种“原来如此”。如果你正准备入行或者刚迈过门槛不用怕慢扎实把每个仿真的读数为何是这样讲清楚经验自然就攒下来了。做模拟IC设计最值钱的不是会画电路而是会判断“这个结果不可信”的能力。