D类功放电流模式振荡器设计:从原理到实现的高PSRR解决方案
1. 项目概述为什么D类功放需要一个“稳”的振荡器在便携音频设备比如我们常用的蓝牙音箱、TWS耳机或者手机里D类音频功率放大器已经成为了绝对的主流。原因很简单它的效率极高理论上能达到100%实际也能轻松超过90%这意味着更长的续航和更小的发热。但D类功放有个核心的工作原理它不是像传统的A类或AB类功放那样线性地放大音频信号而是先把模拟音频信号转换成一系列宽度变化的脉冲PWM脉宽调制再用这些脉冲去驱动功率开关管最后通过一个低通滤波器还原出放大后的音频。这个转换过程的核心就是一个高质量的振荡器。这个振荡器需要同时产生两路信号一路是高频的三角波或锯齿波作为PWM比较器的载波另一路是与三角波同步的方波时钟。它们的质量直接决定了功放的“声音”。如果三角波的线性度不好或者频率随电源电压、温度漂移太大就会引入额外的失真和噪声直接影响音质。更麻烦的是如果振荡器产生的电磁干扰EMI过大还会影响设备里其他电路的正常工作导致收音有杂音、蓝牙断连等问题。因此设计一个高性能的振荡器是D类功放芯片设计中的关键一环。这次要聊的就是一个基于电流模式技术的振荡器设计。它最大的特点就是“稳”——输出的方波频率几乎不受电源电压变化的影响而三角波的幅度又能跟随电源电压线性变化这为后续的PWM调制提供了非常理想的条件。下面我就结合自己的设计经验把这个电路从原理到实现再到仿真调优的整个过程拆开揉碎了讲清楚。2. 核心原理电流模式如何实现“稳频”与“线性幅值”要理解这个设计首先得搞明白电流模式振荡器和传统电压模式振荡器的区别。你可以把产生三角波想象成给一个水池电容灌水和放水。电压模式相当于用一个水龙头通过调节阀门的开度电压来控制水流电流大小。但水龙头的出水压力相当于电源电压一变即使阀门开度不变水流大小也会变导致灌满一池水的时间振荡周期就变了。所以电压模式的频率对电源电压很敏感。电流模式相当于直接用两个精准的恒流源一个负责灌水充电电流IB1一个负责抽水放电电流IB2。只要恒流源的电流值稳定无论外部水压电源电压怎么轻微波动灌满或抽干一池水的时间都是固定的。这就是电流模式在电源抑制比PSRR上的天然优势。2.1 系统框图与工作流程我们设计的这个电流模式振荡器其核心框图可以简化理解为一个闭环控制系统阈值生成通过电阻分压网络从电源电压Vdd产生两个固定的阈值电压VH高阈值通常为3Vdd/4和VL低阈值通常为Vdd/4以及一个参考电压VrefVdd/2。电流生成利用运算放大器OPA和MOSFET将参考电压Vref转换为一个与Vdd成正比的参考电流IrefIref Vref / R Vdd/(2R)。这个电流再通过电流镜精确地复制出充电电流IB1和放电电流IB2。积分与比较用一个电容C作为积分器。当控制开关SW1闭合、SW2断开时恒流源IB1对电容C充电电容上的电压即三角波电压Vtri线性上升。逻辑翻转Vtri与VH、VL两个阈值进行比较。当Vtri上升到超过VH时高比较器输出翻转当Vtri下降到低于VL时低比较器输出翻转。这两个比较器的输出驱动一个RS触发器或类似的逻辑控制电路产生两路互补的方波信号CLK和CLKb。闭环反馈方波信号CLK和CLKb反过来控制开关SW1和SW2的状态切换电容的充放电过程从而形成自激振荡。由于充电电流IB1和放电电流IB2由同一个Iref镜像而来且设计为相等因此充电时间t1和放电时间t2相等最终输出的CLK方波占空比就是精确的50%。三角波的幅度就是VH与VL之差即Vdd/2其幅度自然与Vdd成正比。而振荡频率f 1/(t1t2) Iref / (C * (VH-VL)) (Vdd/(2R)) / (C * (Vdd/2)) 1/(R*C)。看这个最终公式频率f只由电阻R和电容C决定与电源电压Vdd无关这就是实现高电源抑制比PSRR的数学本质。注意这个理想公式成立的前提是电流镜完美匹配、比较器无延迟、开关无死区。在实际电路中这些非理想因素都会引入误差因此后续的电路设计核心就是围绕如何减小这些误差展开。2.2 关键公式推导与设计考量让我们再深入一层看看几个关键参数是如何确定的频率公式f 1 / (R * C)。这是选择核心器件R和C的起点。例如目标频率为250kHz若选择积分电容C为20pF片上电容的典型值则可计算出所需电阻R 1/(fC) 1/(250k20p) 200kΩ。这是一个理论值实际需要根据工艺库中的电阻种类如高阻多晶硅电阻和面积进行折中。三角波幅度Vtri_pp VH - VL Vdd/2。这意味着三角波的峰峰值始终是电源电压的一半。在PWM调制中音频信号的幅度需要与三角波幅度相匹配以达到最大的调制深度和信噪比。这个线性关系简化了系统设计。电流值计算充电/放电电流IB Iref Vdd / (2R)。当Vdd3.6VR200kΩ时IB约为9μA。这个电流值需要足够大以在合理的电容值下达到目标频率同时又要足够小以降低整个振荡器模块的功耗。通常我们会通过仿真确定一个在功耗、速度和噪声之间平衡的最佳值。3. 电路模块的详细设计与实现技巧纸上谈兵终觉浅把原理图变成可以流片的晶体管级电路才是真正的挑战。下图展示了整个振荡器的核心实现电路我们将分模块拆解。此处应插入图2振荡器实现电路图 说明由于我无法直接绘图以下描述将替代图示请读者结合文字在脑海中或纸上勾勒电路结构。3.1 阈值电压生成单元稳定性的第一道防线这个部分的任务是产生精准且干净的VH和VL。最简单的办法就是用四个等值电阻R1R2R3R4对Vdd进行分压。但直接分压存在几个问题静态功耗即使没有音频信号分压电阻网络也会持续消耗电流。对于电池供电设备这是不可接受的。噪声耦合比较器的输入端是高频切换的节点会通过MOS管的寄生电容耦合到分压节点干扰阈值电压的稳定性。我们的解决方案是增加开关管MN1用一个MOS管MN1串联在分压网络与地之间。控制信号CTRL来自芯片的数字控制模块。当无音频信号时CTRL为低MN1关闭整个分压网络断电VH和VL被拉至0V振荡器完全停止工作静态功耗几乎为零。当有信号时CTRL为高MN1导通分压网络正常工作产生VH3Vdd/4 VLVdd/4。插入缓冲器Buffer在分压点B点和C点与比较器输入端之间插入单位增益缓冲器通常由源极跟随器或高输入阻抗的运放构成。缓冲器具有高输入阻抗和低输出阻抗能有效隔离后级比较器开关噪声对前级精密分压网络的干扰就像一道“隔离墙”确保了阈值电压的纯净和稳定。实操心得缓冲器的设计不能引入太大的相位延迟或失调电压。通常采用PMOS或NMOS源极跟随器并使其工作在饱和区保证线性度。需要仔细仿真其瞬态响应确保在振荡器最高工作频率下缓冲器能跟得上电压变化。3.2 充放电电流生成单元精度与稳定性的核心这是整个电路的心脏目标是将与Vdd成正比的电压Vref转换成高度稳定的电流Iref并精确镜像出IB1和IB2。基础结构运算放大器OPA、MOS管MN2和电阻R5构成了一个经典的“电压-电流”转换器。OPA通过负反馈使其两个输入端虚短因此R5上的电压就是VrefVdd/2。于是流经MN2和R5的电流Iref Vref / R5 Vdd/(2*R5)。这个电流就是我们的“黄金标准”。第一层优化共源共栅Cascode电流镜基础电流镜如MP11镜像Iref给MP12存在一个严重问题沟道长度调制效应。MOS管在饱和区的电流公式为Ids 0.5*μ*Cox*(W/L)*(Vgs-Vth)^2*(1λ*Vds)。其中λ是沟道长度调制系数Vds是漏源电压。当MP11和MP12的Vds不同时即使Vgs相同输出的镜像电流也会因(1λ*Vds)项而产生误差。解决方法采用共源共栅结构。例如充电支路MP11和MP12构成主电流镜在其上方叠加MP13和MP14作为共源共栅管。共源共栅结构极大地提高了输出阻抗使得输出电流对输出电压即电容C上的电压的变化非常不敏感从而保证了在电容充放电过程中电流IB1的恒定。第二层优化偏置电压的生成共源共栅管如MP13, MP14, MN9, MN10的栅极需要一个稳定的偏置电压以确保它们始终工作在饱和区。电路中MN3、MN4和MP5构成一个偏置电路为PMOS共源共栅管MP12的栅极提供偏压Vbp。同样MP8、MP10和MN6为NMOS共源共栅管MN9的栅极提供偏压Vbn。这些偏置电路通常也是基于电流镜的确保偏置电压能跟随工艺和温度变化保持共源共栅结构的有效性。3.3 逻辑控制与开关单元消除“毛刺”的艺术RS触发器接收两个比较器的输出产生互补的方波CLK和CLKb。这两个信号控制着充放电开关管MP14/MN11和辅助管MP13/MN12的导通与关断。核心问题电荷注入与时钟馈通当MOS开关管如MP14的栅极电压CLKb跳变时沟道中的电荷需要被迅速抽出或注入。这部分电荷会通过寄生电容耦合到开关的源/漏端即电容C的上极板A点产生一个瞬间的电流尖峰glitch current导致三角波Vtri上出现电压尖峰spike。这就是所谓的“尖峰”现象sharp-shoot它会严重恶化三角波的线性度并可能产生高频谐波加剧EMI。巧妙的解决方案互补辅助开关管我们的设计引入了与主开关管尺寸相同、但栅极控制信号相反的辅助管。充电支路主开关是MP14CLKb控制辅助管是MP13CLK控制。放电支路主开关是MN11CLK控制辅助管是MN12CLKb控制。它的工作原理是双重的保持电流镜状态连续以充电支路为例当CLK0 CLKb1时MP14导通MP13关闭电流IB1对电容充电。当CLK跳变为1CLKb跳变为0的瞬间MP14关闭MP13导通。由于MP13始终连接在电流镜输出节点它的导通保证了MP11和MP12的漏极电压不会发生剧烈跳变迫使它们从饱和区进入深线性区从而避免了因电流镜状态突变而产生的巨大瞬态电流。电荷抵消在跳变瞬间MP14的沟道电荷被抽出产生负向电流尖峰而同时MP13的沟道正在形成需要注入电荷产生正向电流尖峰。由于两管尺寸相同且栅极信号互补这两个电流尖峰的极性相反大部分可以相互抵消。放电支路的MN11和MN12同理。这就像两个人在跷跷板的两端同时用力但方向相反结果跷跷板几乎不动。通过这种设计三角波在充放电转换点的波形变得非常平滑尖峰被有效抑制。仿真中可以看到加入辅助管前后三角波顶部的“毛刺”几乎消失。3.4 工艺修调Trimming技术应对制造偏差芯片制造存在不可避免的工艺偏差Process Variation。不同晶圆、不同批次之间MOS管的阈值电压Vth、氧化层电容Cox以及电阻的绝对值都会有所不同。这会导致根据理论公式f1/(R*C)设计的振荡器其实际输出频率偏离目标值例如250kHz。修调的本质在芯片制造完成后通过物理手段如激光熔断微调电路中某个元件的值将电路性能校准到目标值。我们的修调方案选择修调生成Iref的电阻R5。因为Iref Vdd/(2*R5)f ∝ 1/R5调整R5就能直接调整频率。修调网络结构将R5用一串多个等值小电阻如10个4.5kΩ串联实现。在每个串联节点之间通过可熔断的金属丝Fuse或反熔丝Antifuse连接。修调操作测试芯片时测量实际振荡频率。如果频率偏高说明R5偏小就通过激光熔断特定的金属丝将某段小电阻串入主通路从而增大R5总值使频率降低。例如熔断A-B间的金属丝电阻增加2.5%熔断B-C间的增加1.25%两者都熔断增加3.75%。局限性这种“熔断”式修调通常只能增加电阻值因为只能断开并联的短路路径或串联入更多电阻。若要实现双向修调需要更复杂的电阻网络如R-2R梯形网络与开关组合但会占用更大面积。注意事项修调是一次性、不可逆的操作。必须在测试阶段精确计算需要调整的量。设计修调网络时步进精度如1.25%需要根据工艺偏差的统计分布和频率精度要求来确定。步进太小修调步骤多、时间长步进太大可能无法精确校准到目标值。4. 仿真验证与性能分析设计完成后必须通过仿真验证。我们采用CSMC 0.5μm CMOS工艺库使用Cadence Spectre仿真工具进行验证。4.1 关键波形验证三角波与方波首先进行瞬态仿真Tran Simulation。三角波Vtri观察电容C上A点的电压波形。理想的三角波应该是直线上升和下降。仿真中需要重点关注两个地方一是波形的顶部和底部是否平坦有无畸变二是充放电转换点是否平滑有无尖峰。通过对比加入辅助开关管前后的波形可以直观看到尖峰被显著抑制的效果。方波CLK CLKb观察RS触发器的输出。测量其频率是否等于设计值250kHz占空比是否非常接近50%例如49.8%~50.2%。高电平和低电平的电压值应分别接近Vdd和0V且上升/下降时间要快以减少开关损耗。4.2 电源抑制比PSRR仿真这是衡量振荡器频率稳定性的核心指标。仿真方法是进行直流扫描DC Sweep或参数扫描Parametric Analysis设置电源电压Vdd作为一个变量例如从3.0V扫描到5.0V覆盖典型电池供电范围。在每个电压点进行瞬态仿真测量输出方波CLK的频率f。计算频率变化率Δf/f_typical (f_max - f_min) / f_typical。 在我们的设计中仿真结果显示在3V至5V范围内频率变化率仅为1.86%。这意味着PSRR性能非常优秀。其根本原因就在于电流模式架构和共源共栅电流镜的使用使得Iref和IB对Vdd的变化极不敏感。4.3 温度特性仿真芯片在工作时会产生温升环境温度也会变化。MOS管的载流子迁移率μ、阈值电压Vth等参数都是温度的函数这会影响电流值和开关速度。 仿真方法进行温度扫描Temperature Sweep例如从-40°C工业级低温到120°C高温结温。在每个温度点进行瞬态仿真测频。 我们的仿真结果显示在整个温度范围内频率变化率为1.93%。这个变化主要来源于电阻R5和MOS管参数随温度的变化。虽然电流模式结构对电源电压不敏感但对温度仍需通过器件模型和偏置设计来优化。1.93%的漂移对于音频应用人耳对绝对频率不敏感是可以接受的。4.4 工艺角Corner仿真这是芯片设计必须经历的“压力测试”。工艺角模拟了制造过程中可能出现的极端情况通常包括TT典型NMOS典型PMOSFF快NMOS快PMOSSS慢NMOS慢PMOSFS快NMOS慢PMOSSF慢NMOS快PMOS 需要在不同工艺角下结合电源电压和温度变化形成PVT仿真来验证振荡器频率和功能是否在所有情况下都正常。我们的设计在SS最慢和FF最快角下频率偏差可能在±10%左右这正是需要通过前述的修调技术来校准的范围。4.5 功耗仿真在典型工作条件Vdd3.6V 温度27°C下进行静态和动态功耗分析。静态功耗主要来自电阻分压网络当使能时和运放、偏置电路的静态电流。通过合理的器件尺寸设计和亚阈值区偏置可以将静态电流控制在微安级别。动态功耗主要来自电容C的充放电功耗CV^2f以及所有MOS开关管在切换过程中产生的瞬态短路电流和栅电荷充放电功耗。仿真时需要关注总功耗是否满足芯片的预算要求。5. 设计总结与实战经验分享回顾这个基于电流模式的D类功放振荡器设计其成功的关键在于对几个核心问题的系统性解决通过电流模式架构和数学推导从原理上实现了高PSRR通过共源共栅电流镜和精密偏置保证了电流的稳定性和镜像精度通过互补辅助开关管结构巧妙消除了开关瞬态引起的电压尖峰最后通过电阻修调网络为应对工艺偏差提供了校准手段。我个人在实际流片和测试中还总结出以下几点容易被忽视的经验比较器的速度与失调电压振荡器的最高工作频率不仅由RC时间常数决定还受限于比较器的响应速度。如果比较器延迟过大会导致三角波实际峰值超过阈值电压造成频率误差和占空比失真。同时比较器的输入失调电压Offset会直接等效为阈值电压的偏移影响三角波幅度的对称性和中心电平。设计时需要选用高速、低失调的比较器结构并考虑加入失调校准电路。电源噪声隔离振荡器本身是模拟电路但对电源噪声敏感。而D类功放的功率级开关会产生很大的电源地弹噪声。在版图布局时必须为振荡器模块使用独立的、干净的电源和地线Analog VDD/VSS并通过片上滤波电容进行充分去耦与数字和功率部分严格隔离。寄生参数的影响在版图实现时开关管MP14/MN11等的源/漏端到电容C的金属连线会引入寄生电阻和电容。寄生电阻会与开关管的导通电阻串联影响充放电时间常数寄生电容会与主电容C并联改变有效电容值。需要在设计后期进行寄生参数提取PEX后仿真确保频率仍在可接受范围内。启动电路上电瞬间RS触发器可能处于亚稳态或未知状态。需要设计一个简单的启动电路Power-On-Reset确保上电后逻辑控制电路被强制复位到一个确定的状态例如CLK0从而保证振荡器能够正常起振。这个振荡器设计虽然针对的是D类音频功放但其电流模式、高稳定性、低抖动的设计思想也可以广泛应用于需要高质量时钟源的其他模拟或混合信号芯片中比如开关电源控制器、模数转换器等。希望这次深入的拆解能为你理解模拟集成电路设计中的精妙之处带来一些启发。