晶振不起振?从负性阻抗裕度到PCB寄生参数全链路解析

发布时间:2026/9/19 19:04:43
晶振不起振?从负性阻抗裕度到PCB寄生参数全链路解析 调晶振是绝大多数硬件工程师上电之后踩的第一个坑。我以前也一样示波器往晶振脚上一搭看到频率偏了几十ppm第一反应就是回去翻手册把负载电容从22pF换到18pF再把标称频率从8MHz换成12MHz折腾一整天板子还是时不时起不来。后来带我的老工程师就丢下一句话频率参数是结果阻抗才是原因。晶振能不能起振、起振之后稳不稳、温漂大不大本质上是一个负阻抗裕度的问题——振荡电路能提供多大的负性阻抗去抵消晶体自身的等效串联电阻加上PCB上的寄生损耗。这篇东西我想把晶振稳频这条链路从头捋一遍晶振的RLC等效模型、ESR和负载电容的真实影响、负性阻抗怎么测、PCB布局里那些偷走裕度的寄生参数、包地和走线到底怎么取舍以及SI9000、板厂阻抗计算器这类工具在什么场合才该用。内容偏实操适合做过一两年硬件、被晶振坑过但没搞明白原理的人也适合刚开始画MCU最小系统板的朋友拿来对照检查。1. 频率参数为什么救不了你的晶振电路1.1 频率参数到底在描述什么阶段的晶振翻任何一份晶振规格书你能看到的一串数字大概是这样标称频率25MHz、调整频差±10ppm、温度频差±20ppm、老化率±3ppm/年、工作温度-40到85摄氏度。这些参数看起来很完整但它们全部是在一个隐含前提下测出来的这个前提就是——你的电路已经让晶振稳定振荡了并且提供的负载电容刚好等于规格书标称的那个值驱动电平也刚好在推荐范围内环境温度是25℃。换句话说频率参数描述的是正常工作之后的晶振行为它不负责告诉你这块晶振在你的板子上能不能起振。这一点特别容易混淆。新手看到温度频差±20ppm就会觉得这颗晶振很稳于是拿来就用。问题是如果你的振荡电路提供的负载电容是18pF而晶振标称负载电容是12pF那实际振荡频率会往哪偏、偏多少规格书上根本不会写。更麻烦的是起振环节起振能力跟频率参数一点关系都没有它只跟ESR、负性阻抗裕度、驱动电平有关。所以你会遇到一种非常典型的情况一颗频率参数非常漂亮、温度频差只有±10ppm的晶振在你的板子上就是起不来而随手从抽屉里翻出来的一颗老货温漂大得离谱反而稳稳当当跑了一整晚。这不是玄学这是阻抗在说话。还有一种情况更隐蔽就是能起振但裕度很低。这种板子在实验室常温下能跑一进高温箱就不启动或者手指碰到晶振外壳它就起来了。你如果一直盯着频率参数看永远找不到原因因为频率参数根本没坏坏的是裕度。1.2 不起振、起振慢、偶发停振的真实现场我遇到过几次比较典型的案例拿出来说说。第一次是STM32F103的外部HSE8MHz负载电容标称20pF我照着参考设计贴了两颗20pF。板子十块里有三块起不来剩下的起振时间也偏长大概要几毫秒。换晶振没用换批次还是没用。最后拿万用表量了一下晶振两端的实际对地电容发现走线偏长加上焊盘寄生实际等效负载已经到28pF左右了比标称大了不少。把两颗电容换成12pF十块板全部一次起振起振时间也掉到几百微秒。这个例子里晶振本身一点问题都没有问题全在寄生电容上。第二次是电源管理芯片旁边的32.768kHz晶振常温没问题一上高温就停。这颗晶振的ESR在规格书里写的是最大70kΩ实际拿了几颗测下来有几颗在90kΩ以上属于批次波动。低频晶振的ESR本来就高加上驱动器跨导不够裕度就被吃干净了。后来换了ESR保证在50kΩ以内的型号问题解决。第三次最典型一块板子怎么都不起振换晶振、换电容、换焊盘都没用。最后发现是晶振下面铺了整块铜走线从晶振一个脚绕到另一个脚长度大概三厘米等于给晶振并联了一个不小的寄生电容和一点串联电感。把晶振区域的铜挖空、走线改短到一厘米以内立刻正常。这三件事的共同点是频率参数从头到尾都合格坏的全是阻抗相关的东西。所以我现在看晶振电路第一眼看的是布局和负性阻抗第二眼看的是负载电容计算频率参数排在最后。1.3 负性阻抗裕度才是稳频的硬指标振荡电路可以等效成一个负电阻晶振等效成一个正电阻起振的条件就是负电阻的绝对值大于晶振的ESR并且要留出足够的余量。工程上的经验法则是负性阻抗的绝对值至少要达到ESR的三倍做到五倍才算稳妥。注意这里是绝对值负性阻抗越大起振越容易。为什么是三到五倍因为这个余量要覆盖三件事一是批次离散同一型号的晶振ESR有上下浮动二是温度漂移ESR会随温度上升而变大三是老化和寄生损耗PCB上的走线、焊盘、污染、湿度都会额外消耗一部分能量。如果你只做到1.2倍常温下能跑进高温箱必挂这几乎是可预测的。评估负性阻抗有实测和估算两条路。实测的土办法是把晶振拆掉在两个焊盘之间焊一个从零开始可调的可变电阻慢慢加大阻值直到电路停振记录临界值这个值就是电路能提供的负性阻抗。要求这个数大于ESR的三倍。估算法则是从振荡器的跨导出发粗略的表达式是负性阻抗约等于gm除以角频率平方再除以两端负载电容的乘积也就是 gm/(ω²·C1·C2)。这个式子只能用来判断数量级因为跨导会随温度和工艺变化实际值以实测为准。我一般先用估算选一个驱动能力足够的芯片再用可变电阻法实测一次确认两步都做心里才踏实。2. 从导纳曲线到阻抗曲线把晶振的结构拆开看2.1 五参数RLC模型晶振的身体结构图晶振不是一块简单的石英片在电路眼里它是一个五参数的RLC网络动态电阻R1也就是常说的ESR、动态电感L1、动态电容C1再加上一个并联的静态电容C0如果考虑封装和引线还有一小段寄生电感。R1、L1、C1三个串联起来构成串联谐振支路C0则是晶振两个电极和封装之间的平板电容。拿一颗25MHz的贴片晶振举例典型值是C1约10fFL1约4mHESR约30ΩC0约4pF。这几个数看着乱但它们之间有硬关系串联谐振频率fs等于1除以2π乘上L1和C1乘积的平方根。代进去算L1乘C1等于4乘10的负3次方再乘10乘10的负15次方等于4乘10的负17次方开方是6.32乘10的负9次方乘以2π是3.97乘10的负8次方取倒数正好是25.2MHz和标称频率对得上。这个验算你拿到任何一颗晶振的参数都可以自己做一遍能马上判断规格书写得靠不靠谱。品质因数Q等于ωL1除以R1代入25MHz角频率是2π乘25兆约1.57乘10的8次方乘以L1的4毫亨是6.28乘10的5次方再除以30Ω得到约21000。Q值两万是这个量级晶振的正常水平Q值越高意味着谐振峰越尖锐、频率越稳、抗干扰能力越强。选型的时候如果两颗晶振频率一样、ESR一样优先选Q值高、C1小的因为C1小意味着抗寄生电容干扰的能力更强。2.2 从导纳曲线到阻抗曲线看晶振的两个谐振点拿网络分析仪或者阻抗分析仪扫晶振你会看到一条导纳曲线在串联谐振频率fs处导纳出现峰值等效阻抗最小在并联谐振频率fa处导纳出现谷值等效阻抗最大。这两个频率之间的区间晶振表现为电感性而振荡电路要利用的正是这一段——外部负载电容和呈感性的晶振构成一个并联谐振回路整个环路的相位移满足振荡条件电路就稳定振荡。关键公式有两个。串联谐振频率fs等于1除以2π乘以L1C1乘积的平方根。带负载之后的谐振频率fL近似等于fs乘以括号一加上C1除以两倍的C0加CL之和。这里的CL就是你的负载电容。另一个是并联谐振频率fa等于fs乘以根号下一加C1比C0。这几个式子里最有价值的是fL那个。我举一组真实数字你感受一下C1取10fFC0取4pF负载电容CL取12pF那么C0加CL是16pFC1除以两倍的16pF等于10除以32000约3.125乘10的负4次方也就是312ppm。这表示从串联谐振点到带载工作点频率往上拉了312ppm这个量是晶振本身决定的。现在做对比如果因为走线寄生电容没算进去实际负载电容变成了20pF那么C0加CL是24pFC1除以两倍的24pF约等于208ppm。两种情况差了104ppm。也就是说仅仅因为负载电容估错了8pF工作频率就偏了将近105ppm这已经远远超过规格书标的±10ppm了。反过来看如果晶振的C1不是10fF而是3.5fF同样的电容误差引起的频偏只有前面的三分之一左右。这就是为什么高精度场合要选C1小的晶振——它对负载电容的变化不敏感也就是所谓的可拉性低。2.3 手把手做一次负性阻抗裕度核算先把流程说清楚再说细节。第一步选一个可调电阻量程要覆盖预期的负性阻抗范围一般从零到几千欧可调用一百欧到十千欧的十圈电位器串一个固定电阻就比较稳。第二步把晶振取下来把可调电阻焊到晶振的两个焊盘之间阻值先拧到零。第三步上电确认电路能起振这时候测量输出端或者用示波器观察振荡波形。第四步慢慢加大阻值每隔一段时间停一下等波形稳定直到振荡停止记录临界阻值这就是负性阻抗的绝对值。第五步和晶振的ESR比较比值应该大于三最好接近五。这个过程有几个坑。第一可调电阻的引线要尽量短长引线自己会引入电感和电容测出来的值不准。第二测量点不要直接用示波器探头去搭晶振脚你那根探头本身有十皮法的电容搭上去就把电路拉偏了正确的做法是在振荡器输出端或者经过一级缓冲之后测。第三加大阻值的时候要慢慢来一次调太多会跳过临界点最好用十圈电位器每圈能细分。再说估算。假设一颗皮尔斯振荡器跨导gm是5mA/V工作角频率是1.57乘10的8次方两端负载电容假设都是22pF那么ω²乘C1乘C2等于2.467乘10的16次方再乘4.84乘10的负22次方约等于1.194乘10的负5次方用gm一除得到约419Ω。这个数就是负性阻抗的数量级估计。如果这颗晶振的ESR是60Ω比值约等于7裕度很充裕。如果ESR是150Ω比值不到3就要小心了。当然这个估算忽略了很多东西比如输出阻抗、走线损耗所以只能作为初筛真正的判据还是实测值。3. PCB上那些偷偷吃掉裕度的寄生参数3.1 晶振到底要不要包地怎么包才对先给结论要包地但不能贴着包。包地的目的是给晶振提供一个局部的屏蔽和稳定的参考平面把外面的高速信号、电源噪声、开关电源的磁场挡在外面。晶振本质上是一个极高Q值的谐振器它对周围的耦合噪声非常敏感任何一点杂散能量都可能被它捕捉到表现为相位噪声变大、抖动增加严重的时候直接影响到通信误码率。正确的做法是晶振下方挖空或者至少不铺信号铜但要保留一层完整的地做参考晶振周围用一圈地过孔围起来过孔间距控制在波长的十分之一以内对于几十兆的晶振间距两毫米以内就很够用了晶振的金属外壳如果是四脚贴片封装通常有两个脚是外壳接地这两个脚一定要就近打过孔接到地晶振到MCU引脚的走线要短尽量控制在十毫米以内不要绕路不要从晶振区域正下方穿过任何其他信号。常见的错误是包地包过头。有人为了屏蔽把地环围得又近又密走线紧贴着地环走结果寄生电容猛增负载电容被拉高频率整体下移裕度也跟着下降。判断是否过头有个简单办法算一下走线和地之间的平板电容用介电常数乘真空介电常数再乘面积除以间距。举个数一毫米宽、十毫米长的顶层走线介质厚度零点二毫米FR4的介电常数取4.3那么电容约等于8.854乘10的负12次方乘4.3再乘1乘10的负5次方面积除以2乘10的负4次方算下来约1.9pF。十毫米走线就贡献将近2pF如果你把走线拉长到三十毫米那就是6pF已经能明显影响负载了。3.2 走线、焊盘、负载电容的账要一起算负载电容的标准公式是CL等于C1乘C2除以C1加C2再加上寄生电容Cs。这个Cs包括走线电容、焊盘电容、芯片引脚电容、过孔电容。经验上普通两层或四层板短走线情况下Cs取3到5pF走线偏长或者底下没有完整参考平面的要取到6到8pF。焊盘本身的电容大概每个0.3到0.5pF别忽略。举例晶振标称负载电容是12pF寄生电容按4pF估那么两颗外接电容的串联值应该是8pF。因为两颗电容通常取相同值所以C1等于C2等于16pF。如果你直接贴两颗12pF串联之后是6pF加上寄生4pF正好10pF比标称的12pF小2pF频率会往上偏偏多少要看C1。这就是为什么参考设计上写20pF你照抄可能不准因为参考设计的板子走线长度和你不一样。实操里我的做法是先按公式算出一个初值然后留两个电容位置用稍小的值上电后用频率计测实际频率如果偏正就加大电容偏负就减小电容反复一两次就能调到位。注意每次换电容之后要等几秒让电路稳定晶振的起振和稳定需要时间尤其是低频的32.768kHz稳定时间可能到一秒以上。3.3 多颗芯片共用一个晶振到底行不行这是个很实际的问题比如有些电能计量方案里几颗计量芯片想共享一个4.096MHz的晶振省成本也省空间。原理上可以做但前提是你要搞清楚谁在振荡、谁在接收。晶体本身不会自己振荡它需要配合一个反相放大器。也就是说只能有一颗芯片的振荡器电路做驱动端它的输出脚把时钟送给其他芯片其他芯片必须配置成外部时钟输入模式此时它们的反相器不能也参与振荡否则两个放大器并联驱动同一颗晶体会出现竞争、波形畸变、驱动电平超标严重时晶体发热、频偏甚至损坏。具体做法是主芯片的振荡输出脚经过一段短走线送给从芯片的时钟输入脚从芯片的振荡输出脚悬空或者按手册设置为高阻。走线要做端接通常串一个几十欧的电阻来抑制反射和过冲。还要把从芯片输入脚的电容算进总负载重新核算负载电容。如果从芯片距离比较远超过几厘米最好换成有源晶振加时钟缓冲器或者时钟分配芯片这样驱动力足够、抖动可控、负载电容也不受影响。我踩过的坑是一开始直接从主芯片振荡脚拉线到第二颗芯片的输入脚两颗芯片挨得很近看起来没问题实际上第二颗芯片的输入电容让晶振的负载变大了频率偏了几十ppm计量精度直接超标。后来中间加了一级缓冲问题彻底解决。所以我的建议是共用晶振这件事只要从芯片超过两颗或者走线超过两厘米就别省那颗有源晶振的钱了。4. 阻抗计算工具SI9000和板厂计算器怎么用才对4.1 先把特征阻抗和阻抗这两个概念分开很多人把这两个词混着用其实完全不是一回事。阻抗是某个点上电压和电流的比值它随位置和负载变化你换个负载阻抗就变了。特征阻抗是传输线自身的固有属性由线宽、介质厚度、介电常数、铜厚决定与线长无关与负载也无关。一根五十欧姆的微带线不管你接什么负载它的特征阻抗永远是五十欧姆但线上某一点的输入阻抗会因为负载和线长而千变万化。什么时候需要控特征阻抗当信号频率高到线长可以和波长相比的时候传输线效应就出来了反射、振铃、过冲都会跟着来。典型场景是射频链路的天线馈线一般控五十欧姆单端USB 2.0差分线控九十欧姆PCIe Gen3及以上差分线控八十五欧姆HDMI和以太网差分线控一百欧姆。那晶振走线需要控阻抗吗不需要。晶振是几十兆的低频线又短传输线效应可以忽略。晶振走线要控的是寄生电容和回路面积不是特征阻抗。这一点一定要分清否则你会看到有人给晶振走线画成五十欧姆微带结果线宽做得很粗寄生电容反而更大得不偿失。4.2 SI9000参数填写的一次完整演示SI9000是常用的阻抗计算工具界面不复杂难的是参数怎么填。我用一个四层板的例子走一遍。目标是顶层单端微带线特征阻抗五十欧姆。第一步选模型微带线选Surface Microstrip。第二步填参数介质厚度H也就是走线到最近参考层的距离假设是零点二毫米换算成密尔约七点九介电常数ErFR4取四点三铜厚T一盎司铜的成品厚度约三十五微米换算一点四密尔线宽W先填一个初值比如十五密尔。点击计算看结果离五十欧姆差多少。如果偏高就加宽线宽偏低就收窄。还有两个容易漏的参数。一个是阻焊层也就是绿油它的介电常数约三点三到三点八厚度约一密尔勾选之后算出来的线宽会比不勾选时窄一点因为绿油会降低有效阻抗需要更细的线来补偿。另一个是差分模型如果你要算差分线得选差分微带填线宽、线间距、介质厚度目标是差分阻抗符合要求。实操心得SI9000算出来的线宽只是一个起点实际下单的时候板厂会根据自己的叠层和工艺做调整你拿到的板子线宽可能和你算的不完全一样。所以计算的意义在于确认可行性、给出一个合理的初始值以及在下单时备注清楚你的目标和依据让板厂知道你在控什么。4.3 板厂阻抗计算器和叠层确认里最容易忽略的细节板厂的在线阻抗计算器用起来更方便因为它是绑定实际叠层和工艺参数的选好层数和板厚它直接给你线宽和间距建议。嘉立创这类平台的工具在这一点上做得比较顺手选完叠层之后能直接看到推荐线宽下单的时候还能勾选阻抗控制。但有几个坑要提前知道。第一半固化片的实际厚度有批次差异同一个叠层不同批次可能差几个百分点阻抗也就跟着动所以规格里要给正负百分之十的公差。第二成品铜厚和基铜厚度不是一回事一盎司基铜电镀之后成品会厚一些计算的时候要用成品厚度。第三多层板不同层的参考平面不一样顶层参考第二层中间层可能参考相邻的另一层报阻抗的时候要说清楚是第几层、参考哪一层。第四绿油的影响在小线宽时更明显线越细受绿油影响越大。我一般下单时的备注格式是第几层什么模型线宽线间距目标阻抗值参考层允许公差。写得越清楚板厂回复越快沟通成本越低。测回来的板子如果阻抗偏差大先确认板厂的测试方法和你的目标是不是同一套定义很多扯皮都是定义不一致引起的。5. 排查实录与常见问题速查5.1 三类故障的排查路径对照晶振相关的故障大致可以分成三类完全不起振、能起振但不稳、频率偏差超标。这三类的排查方向完全不同下面这张表是我自己整理出来平时用的。现象最可能的原因验证方法处理方向完全不起振负性阻抗不足、ESR偏大、走线过长可变电阻实测负性阻抗换低ESR晶振、缩短走线、加大驱动起振慢、偶发停振裕度勉强够、负载电容不对、电源纹波高温箱测试、看起振波形重新核算负载电容、优化去耦频率偏差大负载电容算错、寄生电容没算频率计测实际输出调整外接电容值高温下停振ESR温漂、裕度临界高温箱逐步升温观察提高裕度到三倍以上相位噪声大周围信号耦合、地不干净频谱仪看边带加屏蔽、包地、远离开关电源用表的时候注意一点不要一上来就换晶振先量、先算、先看布局。我见过太多人换了五六颗晶振都没解决问题其实在走线上。5.2 测量环节的仪器陷阱比电路本身更容易坑人测晶振的时候示波器探头是最大的敌人。普通无源探头输入电容十皮法左右你搭到晶振脚上等于给晶振并联了十皮法负载电容瞬间变了频率会偏裕度会掉有的电路直接停振。正确的做法有三种一是用低电容探头输入电容控制在两皮法以内的有源探头或者FET探头二是不要直接测晶振脚而是测振荡器输出脚或者测量经过分频、缓冲之后的信号三是如果非要测晶振脚用十倍衰减档并且地线要用最短的弹簧地针不要用那根长长的鳄鱼夹地线。频率计也有讲究。便宜的频率计输入阻抗不高直接接上去同样会拉偏电路。稳妥的做法是先用一级缓冲放大器隔离再送频率计。或者用示波器的频率测量功能但前提是探头电容足够小。还有一点测负性阻抗的时候必须把晶振拆掉用电阻替代。有人图省事直接在晶振两端并一个电阻那测出来的不是负性阻抗而是你加的那个电阻完全没意义。5.3 几个值得往深里挖的方向如果你想继续往深里走有两个方向可以考虑。一个是把阻抗谱测量用起来。晶振的导纳曲线和阻抗曲线用阻抗分析仪一扫就出来了能从曲线上反推R1、L1、C1、C0比看规格书上的最大值靠谱得多尤其是评估来路不明的晶振或者做来料检验的时候。测量原理和参数换算的公式前面已经写过套进去就行。顺带说一句别的领域也有阻抗谱这套方法比如电化学阻抗谱用来分析电池、涂层和腐蚀过程但它的模型和量级跟晶振完全不是一回事别把两边的结论互相套用。另一个方向是高频谐振器比如体声波谐振器工作频率能上到千兆赫兹Q值比石英高得多用在通信前端的滤波器和振荡器里。它的等效模型比石英晶振复杂含更多寄生支路但基本思路是一样的先看谐振点再看损耗再看怎么和外部电路匹配。你把晶振这套阻抗思维吃透往高频迁移的时候上手会快很多。最后分享一个我个人的习惯。每次画完一块带晶振的板子在发出去打样之前我一定会做三件事把晶振周围的走线长度量一遍把负载电容按公式重算一遍并核对寄生电容估计值把晶振区域的地平面和过孔检查一遍。这三件事花不到十分钟但帮我省下了无数次来回打样的时间和运费。晶振这东西频率参数只是它的名片真正决定它在你板子上表现好坏的是那条从驱动器到晶体、再回到驱动器的回路里每一个环节的阻抗是不是算明白了。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询