资讯详情

2.4GHz锁相环频率综合器设计:从PFD/CP到VCO的Cadence Virtuoso完整搭建与仿真实战

📅 2026/10/5 17:59:13 | 华诺云谱 👁 阅读
2.4GHz锁相环频率综合器设计:从PFD/CP到VCO的Cadence Virtuoso完整搭建与仿真实战
从Wi-Fi到蓝牙手里这两颗芯片的射频前端都离不开一个核心模块——2.4GHz锁相环频率综合器。我做过几款这个频段的收发机坦白讲PLL做得好不好直接决定了收发链路的信噪比和杂散表现。用Cadence Virtuoso从零搭一个完整的2.4GHz锁相环这件事看起来门槛高拆开看无外乎PFD、CP、VCO这几个模块的设计与联调。这篇就按我实际流片和测试的经验把整个搭建过程、模块设计思路、仿真陷阱完整走一遍。这个内容适合三类人看正在做课设或毕设的学生刚接手射频PLL设计的新人工程师以及所有想搞明白“锁相环各模块到底怎么配合”的硬件开发者。我不讲空泛的理论所有内容都能直接落到Cadence Virtuoso的操作层面从新建cellview到跑完一次锁定transient仿真照着走就能复现。1. 锁相环频率综合器整体架构与指标规划1.1 2.4GHz频段对频率综合器的核心要求蓝牙和Wi-Fi都挤在2.4GHz ISM频段这个频段的PLL频率综合器一般都采用整数N或小数N架构。我这里讲的是整数N结构因为它的控制逻辑简单分频器只做固定整数分频规避了小数杂散问题非常适合作为入门到流片的第一款PLL。2.4GHz频率综合器最核心的指标有三个相位噪声、参考杂散和锁定时间。相位噪声直接影响蓝牙GFSK解调的误码率Wi-Fi OFDM的高阶QAM调制对相位噪声要求还要更高。参考杂散决定了带外频谱是否满足发射模板锁定时间则影响跳频速度——蓝牙经典模式跳频率是1600跳每秒理论上每跳间隔625微秒但实际留给锁定的时间窗口只有一两百微秒。先定整体架构。一个标准的电荷泵锁相环由PFD、CP、环路滤波器、VCO和可编程分频器组成。频率综合器的工作逻辑是TCXO或晶振产生参考频率PFD比较参考时钟与分频器反馈时钟的相位差输出UP或DN脉冲CP根据脉冲方向往环路滤波器充放电环路滤波器的控制电压再去调VCO的振荡频率最终让VCO输出频率稳定在N倍参考频率上。我这边设计目标是输出频率2.4GHz到2.4835GHz覆盖蓝牙全信道参考频率12MHz分频比N从200到207。环路带宽取200kHz左右这是经典的选择——既保证足够的锁定速度又能有效压制VCO带内噪声。1.2 从系统指标到模块指标的拆解很多人一上来就画电路忽略了指标拆解这一步。实际上系统指标落到各模块才能知道自己该在哪个模块花功夫。相位噪声预算是最重要的一环。带内相位噪声主要由PFD和CP决定带外则几乎全部由VCO决定。2.4GHz蓝牙系统通常要求100kHz频偏处相位噪声优于-90dBc/Hz1MHz处优于-110dBc/Hz。我的经验做法是环路带宽以内PFD/CP贡献的带内噪声做到-95dBc/Hz以上VCO在1MHz频偏处做到-115dBc/Hz左右这样系统整体就能留出足够的余量。CP电流与环路参数是相互绑定的。电荷泵电流Ip决定环路增益选定环路带宽ωc后环路滤波器的电容电阻参数由Ip、Kvco和N共同决定。综合稳定性和锁定速度我把CP电流取为200微安VCO调谐增益Kvco设计在30MHz/V到50MHz/V之间。分频器是很多人容易轻视的模块。2.4GHz下用标准数字分频器直接分频肯定不行常规做法是先用高速CML结构做2分频或4分频预分频把频率降下来后再用标准CMOS数字逻辑做后面的分频。我这次用了一个双模预分频器加计数器组合分频比覆盖200到207具体实现不展开但PFD和CP仿真时需要给它留一个理想分频器模型跑系统级验证。1.3 Cadence Virtuoso环境与PDK准备Cadence Virtuoso里搭PLL第一步不是画原理图而是确认PDK和仿真模型齐全。我用的工艺是0.18微米RF CMOS这个工艺节点做2.4GHz的VCO很成熟MOS管的fT足够高电感Q值也能做到15以上。新建工程的时候注意library设置analogLib和RF PDK的lib都要建好。VCO里的电感需要PDK提供专门的RF器件模型普通电感模型在高频下精度不够。变容管也要用PDK里的varactor模型因为它包含C-V特性和寄生参数直接影响到VCO的调谐范围。仿真器选spectreCadence里跑PLL这种带振荡器的电路spectre的harmonic balance和transient都能用但锁定过程看transient最直观。2. PFD鉴频鉴相器设计死区消除与相位噪声影响2.1 PFD工作原理与三态输出PFD的功能是同时比较频率和相位。经典三态PFD由两个D触发器加一个与门构成参考信号ref和分频反馈信号div分别触发两个DFF当两个DFF均输出高电平时与门产生复位信号将两个触发器清零。这样输出UP和DOWN的三种状态Ref超前时UP输出宽度正比于相位差的脉冲Div超前时DOWN输出脉冲相位相等时两个输出都是低电平。三态PFD的一个关键特性是鉴相增益Kpfd Ip/2π在锁定状态下即使相位差很小PFD也会周期性产生窄脉冲通过这个窄脉冲控制CP充放电来维持锁定。但这里有个致命问题——PFD的复位延迟和DFF的建立时间决定了它存在一个最小可检测相位差如果相位差小于这个值PFD来不及响应环路就失去了纠偏能力这就是所谓的死区。死区会直接导致锁定后的控制电压出现周期性纹波VCO被周期性扰动后产生参考杂散和相位噪声恶化。消除死区有几种方案最常用的是在复位路径上刻意加入延迟单元让复位脉冲拉长保证即使相位差接近零UP和DOWN都能输出一个最小宽度的脉冲到CP端去“短接”一下避免PFD盲区。2.2 延迟单元设计与死区消除我用的是反相器链做延迟单元。在复位与门后面接几个反相器每个反相器的延迟大约在50到100皮秒要多少延迟就串几个。注意延迟不能太大延迟太大意味着每次比较周期内PFD输出的无效脉冲变长虽然消了死区但给CP带来了额外的开关动作和噪声注入。延迟时间怎么选有个经验公式延迟需要大于PFD到CP的关断时间和CP电流源开关时间之和。我实际用spectre跑PFD的transient测出从复位沿到CP开关完全关断大约在1.2纳秒所以复位延迟我取了2纳秒左右留足裕量。PFD的另一个指标是最高工作频率。PFD在工作频率过高时复位脉宽本身就可能占满一个周期导致鉴相能力下降。12MHz参考频率下这个指标压力不大但如果参考频率打算用更高的比如26MHzPFD的复位逻辑延迟就需要重新调整。2.3 PFD电路搭建与仿真验证在Virtuoso里搭建PFD从analogLib调出D触发器用标准数字单元库或者自己画交叉耦合的同步置位触发器。数字D触发器在PFD里的关键路径是复位反馈链所以复位信号驱动的逻辑门尺寸要适当加大。搭建完成后先跑一个单独的PFD功能仿真。输入给一个固定频率差的ref和div信号观察UP和DOWN波形是否正确输出再看复位信号宽度。比如ref是12MHzdiv是11.9MHzPFD应该输出随相位差周期性展宽的脉冲。功能验证完再看PFD输入参考杂散相关的问题。PFD在锁定状态下的输出是周期性的窄脉冲串这个脉冲串的频率就是参考频率。它在CP输出端会被环路滤波器低通滤掉大部分但剩余的控制电压纹波会调制VCO产生参考杂散。想压这个杂散除了PFD本身还要靠后面的CP和滤波器设计配合。3. 电荷泵CP设计电流匹配与电荷注入效应3.1 上下电流源匹配问题电荷泵是整个PLL里除了VCO之外最影响性能的模块。它的基本功能是根据PFD输出的UP/DOWN信号决定向环路滤波器注入还是抽取电流。理想状态下UP和DOWN的电流大小完全相等这样锁定后控制电压纹波最小。但真实的MOS电流源存在失配P沟管的电流和N沟管的电流很难完全一致。失配会造成一个直接后果锁定点偏移。锁相环为了维持电荷平衡会主动把VCO控制电压调整到某个值让PFD输出的UP和DOWN脉冲宽度不等来补偿CP电流失配这个补偿的过程会在环路滤波器上产生额外的直流误差和纹波。改善匹配的标准做法是电流源MOS管使用足够大的沟道长度比如取最小长度10倍以上这能显著降低沟道长度调制效应。同时上下电流源要共用同一组偏置电路用一个高精度电流镜把参考电流复制到上管和下管。我在设计时把上管的偏置电压通过一个放大器做负反馈钳位确保该偏置点不受输出电压影响。CP电流源管的尺寸选择有个技巧用大栅过驱动电压配合大尺寸让管子工作在饱和区中部这样输出摆幅变化对电流的扰动相对较小。沟道长度L取了0.5微米W根据电流密度和过驱动电压算出来最终让Vov在200毫伏左右。3.2 开关位置与电荷共享效应CP的开关连接位置决定了电荷注入和时钟馈通的表现这一点新手很容易踩坑。常见的结构是电流源串接在输出端做开关开关在电流源和输出节点之间这种结构结构简单但每次开关动作都会在输出节点注入电荷导致控制电压毛刺。更稳妥的做法是使用源极开关结构让开关管接在电流源的源极方向工作时开关管的源漏电压基本恒定注入到输出端的电荷量大幅减小。不过源极开关需要额外的控制电压电路复杂度高一些。还有一个经典问题是电荷共享。当UP和DOWN都关断时输出节点处于高阻态但电流源管的漏极寄生电容上还存着电荷。下一次开关导通瞬间这些电荷会重新分配到输出节点产生一个短暂的控制电压扰动。消除电荷共享的常规方案是在上下电流源管漏极各接一个开关让它们在不工作时先与其他节点短接来放电但这会引入更多寄生。我在实际设计里采用了一种折中方案输出级加上一个单位增益缓冲放大器把输出节点和电流源内部节点隔离开。放大器消耗一些功耗但换来的是控制电压稳定性的显著提升。3.3 CP电路搭建与瞬态仿真搭建CP时从analogLib调出PMOS和NMOS器件设置好宽长比然后添加一个运放作为输出级的反馈钳位。我习惯先把CP单独做一个testbench给UP和DOWN加固定脉宽的脉冲观察输出节点电流的方向和大小。仿真设置上用spectre跑transient仿真时间看输出稳定情况。CP的仿真重点关注几个点上下电流绝对值是否差异输出节点电压在开关瞬间的毛刺幅度这个直接影响VCO控制电压的纹波以及电荷泵在输出摆幅范围内的线性度。CP的充放电电流不平衡会导致环路的参考杂散升高。对于2.4GHz的蓝牙应用参考杂散要低于-50dBc。如果CP电流匹配精度做到1%以内配合合理的环路滤波器这个指标通常能实现。3.4 环路滤波器参数计算与实现环路滤波器的参数直接决定环路的稳定性。我用的是经典二阶无源滤波器结构是串联R再并联C2C1并联在控制电压节点形成一个二阶极点加一个零点。三阶版再多加一个RC极点做杂散抑制但这里按下不表。计算办法是按上述系统参数代入环路方程。给定了环路带宽200kHz相位裕度取55度电荷泵电流200微安Kvco取40MHz/V分频比204则环路滤波器的C1、R和C2由以下三式联解可以得到我们需要的线性R和C值。实际PDK电容阻值会跟理想值有偏差所以我直接给出算完的结果供参考。在PDK里实现时电容用MIM电容阻值用高阻多晶电阻。实际值跟理想值有偏差时只需保证R*C的乘积基本符合即可因为环路稳定性主要由这个乘积决定。布板时电容要尽量靠近CP输出引脚地回路要干净避免数字开关噪声串入控制电压。4. VCO压控振荡器设计LC振荡器架构与相位噪声优化4.1 2.4GHz LC-VCO架构选择VCO是整个PLL里最有技术含量也最难做的模块。2.4GHz频率下环形振荡器基本不考虑因为相位噪声太差LC振荡器是标准选择。LC振荡器的核心是一个LC谐振腔和一个负阻补偿电路谐振腔由电感和变容管构成负阻用交叉耦合MOS对实现。交叉耦合结构有两种选择NMOS对和互补CMOS对。NMOS交叉耦合噪声性能好但需要额外的电流源电压余量消耗大互补CMOS对也就是两个MOS做成反相器形式交叉耦合的优点是不需要额外电流源就能自己建立直流工作点同样的电流下可以提供更大的跨导相位噪声更有优势。我在2.4GHz VCO上选了互补结构虽然功耗略高但调节起来简单。另外一个重要的架构取舍是电流偏置方式。VCO的偏置电流可以用尾电流源强制设定但尾电流管本身会引入噪声并且限制了电压摆幅。我在设计中让VCO工作在电流限制区而不是电压限制区通过优化交叉耦合对管尺寸来保证起振条件同时把电压摆幅控制在安全范围内避免进入电压限制区后相位噪声突然恶化。4.2 电感与变容管设计2.4GHz的LC谐振腔需要的电感值不大大约在3纳亨到5纳亨之间。电感设计的关键指标是Q值。理想情况下VCO的相位噪声与电感Q值成反比Q值越高相同功耗下的相位噪声越好。PDK里的螺旋电感Q值能到12到15已经够用。如果流片预算紧张也可以利用封装键合线电感但那只能做验证量产不现实。电感选型要注意自谐振频率。2.4GHz工作时电感的自谐振频率必须远高于工作频率建议至少5GHz以上否则电感呈现出电容特性振荡器根本无法谐振。我选的PDK电感自谐振频率大约在7GHz左右满足要求。变容管是关键中的关键。在2.4GHz VCO里一般用MOS变容管工作在积累区电容随控制电压变化比较陡峭可以覆盖足够宽的调谐范围。单片变容管的变化范围有限所以常规做法是并联多个变容管。调谐范围的确定原则是覆盖目标频率范围的同时留出工艺角余量。2.4GHz到2.4835GHz约3.5%的带宽加上温度和工艺偏差后我把调谐范围设计在12%左右。Kvco不能太大Kvco和调谐范围之间是矛盾的——调谐范围宽Kvco自然高但Kvco过高会把控制电压上的任何微小噪声都放大成大的频率扰动恶化相位噪声。可变电容阵列切换式调谐即用数字控制位切换不同容值的电容组可以有效缓解这个矛盾。我在VCO里加了一个2位的开关电容阵列用来做频带粗调变容管只负责细调这使Kvco从80MHz/V降到了40MHz/V相位噪声得到了明显改善。4.3 相位噪声优化与前仿真相位噪声是VCO最重要的指标。优化的核心思路是提高谐振腔Q值保证交叉耦合管的跨导足够且不过量降低尾电流源的噪声贡献。在设计时我计算了一下起振判据。负阻需要至少3到4倍于谐振腔等效并联电阻。取电感Q15等效并联电阻大约1.8千欧交叉耦合管的跨导需要约为1.1毫西门子。我留了5倍余量把每管跨导设计到约5毫西门子确保所有工艺角都能起振。跑VCO前仿真时用spectre的PSS周期稳态分析加PNOISE周期噪声分析。PSS设置里快门控信号的基频设为振荡频率让仿真器自己找稳态周期PNOISE测VCO输出端1MHz频偏的相位噪声。实测结果我的VCO在1MHz频偏处实现了约-118dBc/Hz这比前面的预算值略好一点给系统留了余量。起振时间是VCO的一个动态指标但它在系统级仿真里才会体现。单独仿真时可以用初始化命令给VCO的谐振腔一个初始电流或电压扰动否则spectre会因为电路完全对称而无法激励起振荡。这一点非常重要很多新手跑VCO瞬态仿真发现输出是零就是忘了加初始条件或激励。5. 系统级联与整体行为验证5.1 分频器和整体前仿真的准备把PFD、CP、环路滤波器和VCO单独仿真通过后就可以在顶层把它们连起来。分频器在还没有完成高速版设计之前可以用Virtuoso的functional建模方式用一个verilog行为模型或者自带的可配置分频器单元来替代。这是工程上很效率的做法先把顶层锁相环行为验证通过再去专注优化分频器的数字实现。顶层仿真我直接用spectre跑transient。仿真时间根据期望锁定时间来定一般设置到30微秒步长不能太大要能分辨出VCO的高频振荡波形——2.4GHz对应周期才0.4167纳秒步长至少取0.5皮秒。这样30微秒的瞬态仿真理论网格量非常大实际跑起来非常缓慢。所以工程上通常分两步第一步把VCO和分频器都拿来做简化等效模型跑行为级锁定验证第二步再把真实模块替换进去做小块验证。5.2 闭环锁定过程的瞬态仿真在进行第一轮真实电路级联时我把分频器先用行为模型替代。这样可以规避分频器带来的巨大仿真负担把焦点集中在验证整个PLL的环路带宽、锁定时间以及PFD/CP/VCO各真实模块协同工作的正确性。瞬态仿真时观察VCO的控制电压波形。控制电压从初始值出发逐渐收敛到一个稳定电压同时VCO输出频率锁定到目标值。锁定后控制电压仍然会有微小纹波这个纹波的频率等于参考频率幅度取决于环路滤波器的抑制能力和PFD的延迟配置经验上纹波控制在几毫伏以内为佳。锁定时间的判断标准是控制电压进入最终稳定值±1%范围内所需的时间。我的系统设计中锁定时间要求是小于100微秒实际电路仿真结果锁定时间约为60到80微秒满足蓝牙跳频的要求。这个指标如果超标一般是通过增大CP电流或环路带宽来改善但这同时会带来杂散和噪声问题需要权衡。跑完瞬态仿真最好再跑一次PSS和Pnoise来分析系统的闭环相位噪声。在Virtuoso里对PLL整体做PSS仿真需要选择合适的仿真方式我用的是beat frequency设为参考频率12MHz的PSS再测VCO输出端的相位噪声曲线。结果能看到带内相位噪声平台和带外VCO噪声滚降的典型形状。5.3 参考杂散的仿真预测参考杂散仿真比相位噪声仿真更麻烦因为杂散是由周期性的控制电压纹波导致的VCO调频在频谱上表现为偏离载频整数倍参考频率处的频谱成分。瞬态仿真后可以对VCO输出波形做FFT用calculator里的dft功能在频域上查看杂散幅度。FFT的分辨率受限于仿真时间长度想分辨12MHz处的杂散仿真时间至少要覆盖多个12MHz周期实际建议仿真到至少2到3微秒的锁定后波形。窗口函数选Hann窗减小频谱泄漏。我的仿真结果显示参考杂散约为-52dBc满足-50dBc的设计指标。如果杂散超标排查方向通常是CP电流失配是否足够小PFD复位延迟是否合适环路滤波器是不是可以增加一个极点还有VCO的Kvco是否过大。6. 常见问题与调试技巧实录6.1 锁定失败的排查清单我做好了以后第一次上电仿真就遇到了一个锁定失败的情况VCO控制电压一直在震荡始终不收敛。经过排查后发现问题不在模块本身而是PFD在锁定条件下产生不了足够窄的校正脉冲环路始终因死区问题无法锁定。加大PFD复位延迟后问题解决。如果你的环路锁不住我建议按这个顺序排查先用理想模型把环路收敛性确认好再逐个替换真实模型。每替换一个模块都确认该模块接口的直流工作点是否正常。VCO在工作中没有输出振荡信号多半是起振条件不满足或者初始条件没设置好。CP的充放电方向接反会很直接地让环路正反馈振荡把UP和DOWN的接线调换即可验证。6.2 相位噪声指标不合格的调试思路相位噪声如果带内偏高问题集中在PFD和CP的噪声贡献上如果带外偏高则问题基本都在VCO。带内噪声优化手段加大CP电流能提高PFD/CP的信噪比但注意电流加大后控制电压纹波同步上升降低PFD复位延迟能减少无效脉冲带来的额外噪声注入确保CP电流源工作在饱和区不要在临界状态。带外噪声的优化手段就是我前面说的提高VCO谐振腔Q值、优化交叉耦合管尺寸和尾电流源。还有一个容易被忽视的点是电源去耦VCO电源引脚上加一个大的片上去耦电容能有效抑制电源噪声耦合到VCO输出上。我遇到过一例带内相位噪声始终偏高的情况排查了半天最后发现是PFD复位信号和CP开关信号之间的时序搭配不合理导致CP每次动作都会产生额外的毛刺。修正后噪声大幅改善。这类时序问题单看模块仿真不一定能发现必须到整体瞬态仿真里去观察。6.3 版图设计阶段的注意事项仿真全部通过后进入版图阶段PLL版图设计有几个地方必须高度重视关键模拟节点的寄生提取、数字开关噪声的隔离、以及电感附近的金属摆放规则。VCO电感周围的金属走线要净空或者说要遵守PDK规定的间距要求任何靠近电感的金属都会改变电感值和Q值。PFD和CP这种数字和模拟混合的地方要做电源域隔离数字部分电源和模拟部分电源分开走线地也要用隔离环围起来。CP的输出节点是高压阻节点对寄生电容特别敏感面积不要画太大周围不要走横穿的信号线。我一般会做两版版图第一版做小规模验证版第二版才做最终量产版。小验证版主要看寄生提取后的控制电压纹波是否还在指标内如果不行就微调CP输出级和环路滤波器的布局。6.4 一个容易被忽视的坑电源上电时序PLL的电源上电时序会影响锁定后的性能。如果VCO的电源先于CP的电源上电VCO在环路还没有建立闭环时自由振荡电荷泵电源慢热会出现电流源偏置建立不到位的情况导致实际电荷泵电流与设计值差异大环路带宽随温度漂移。理想上电顺序是VCO电源和CP电源同开或者CP先开。在实际测试时也可以通过加一个上电复位电路来解决让PFD在电源稳定后再开始工作。这个设计细节虽然不直接影响仿真结果但对流片后的芯片行为有实质性影响值得重视。做PLL设计最快的成长路径就是多跑几次不通过的仿真多排查几次别人没遇见过的问题。我上面写到的所有经验都是一个个测试失败和流片回片后记录下来的。按照这个流程走一款2.4GHz锁相环频率综合器是可以稳定实现的。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑