高压双输出降压电荷泵设计:从原理到调试全复盘

📅 发布时间:2026/8/27 8:39:31
高压双输出降压电荷泵设计:从原理到调试全复盘 做电源的人都知道电荷泵这种电路听起来简单但真正把一个“High-Voltage, Dual-Output Step-Down Charge Pump”做到能稳定量产里面的门道远比教科书上的几行公式多。尤其是当输入电压拉到12V甚至24V以上还要同时输出正负两路低压轨时你再去看那些简单的倍压、反相电路几乎都会踩到效率、纹波或者启动冲击的坑。所以我这次把整个设计过程完整复盘了一遍从拓扑选择、参数计算、器件选型到PCB布局和实际的调试记录一次性整理成下面这篇文章。无论你是刚接触DC-DC的嵌入式工程师还是想给音频运放或传感器模组补一套双电源的老手这篇文章应该都能给你省下不少走弯路的时间。1. 项目概述一个能输出正负两路且不用电感的降压方案1.1 这个电荷泵项目解决了什么问题先解释一下标题里的每个关键词避免刚入门的同学被“High-Voltage”和“Dual-Output”吓到。Charge Pump中文一般叫电荷泵也叫开关电容转换器它依靠开关管和电容的把电荷从一个节点“搬”到另一个节点实现电压变换。和传统的电感式Buck电路相比它最大的特点是整个功率路径上没有电感这带来两个很实际的好处电磁干扰源更少电路厚度和占板面积也更小。那为什么还需要“高压”和“双输出”呢因为在很多工业、汽车和仪器仪表场景里输入电压往往是12V、24V甚至更高但负载端需要的却是低压的双极性电源比如给运算放大器提供±5V、给LCD/OLED提供正负偏压、给传感器信号调理电路提供低噪声的双轨。传统的电感式Buck只能得到一个正电压如果想要负电压通常还要再接一级反相拓扑成本和体积都会翻倍。用电荷泵实现则可以在一个较小的功率范围内用简单的开关和电容同时生成正负两路这就是这个项目最有价值的地方。我自己的经验是这种方案特别适合两三百毫安以内的负载场景。如果电流超过500mA电荷泵的效率优势会明显下降此时老老实实用电感式同步整流更划算。所以看标题里写着“Step-Down Charge Pump”第一反应不应该是“它能替代一切降压方案”而是“它在低功率、低EMI、低高度要求下是真香”。这决定了后续所有设计决策的基调。1.2 哪些场景适合用这个方案如果读者正在纠结“到底用Buck还是电荷泵”可以先从三个需求维度来判断第一你面前的空间是否极其紧张电感式Buck需要至少一个功率电感电感本身的高度和面积往往占了电源BOM里很大一块。电荷泵可以用小体积的陶瓷电容替代整体高度能压到1mm以内对便携设备很友好。第二你的电磁干扰预算是否苛刻没有电感意味着没有开关节点的持续磁场辐射EMI测试里的某些频段会好过很多。当然这不代表电荷泵没有噪声只是噪声形态不同后面我会详细讲。第三你的正负输出精度要求高不高电荷泵的输出等效电阻相对大电压调整率不够好但如果后续接一级LDO整机指标也会很漂亮。比如这个项目最终正负5V的精密稳压交给LDO电荷泵只负责把电压抬进LDO的净空以内这样设计起来压力小很多。我实际接触的应用包括音频前置放大器、压控振荡器、以及一些需要输出负压给LCD偏置的仪表。这类负载普遍是几十到几百毫安正好是电荷泵的舒适区。如果看这篇博文的你也在做类似产品继续往下看就能照着做。2. 核心原理拆解先懂电荷泵再谈“高压”和“双输出”2.1 电荷泵的基本工作一次“搬家”过程很多人第一次看电荷泵时序图容易被一堆MOS管的导通序列绕晕。其实物理图像特别简单飞跨电容就是一个“水桶”开关管就是水龙头。第一个阶段把电容接在输入电源两端让它充满电荷第二个阶段把电容断开输入重新接到输出端把电荷倒进输出电容和负载里。不断地“舀水、倒水”输出电容上的电压就能稳定在一个值附近。在降压型电荷泵里最经典的拓扑是2:1结构。以输入12V为例飞跨电容充电阶段被充电到接近12V放电阶段它和输入电源串联还是并联决定了输出是高压还是低压。2:1降压的接法是把充电后的电容两端并联到输入端和输出端之间让输出电容分到一半电荷最终稳态输出电压接近输入电压的一半。这里的“一半”不是精确的数学一半因为开关管有导通电阻电容有ESR负载也在持续抽走电荷。所有非理想因素汇总后可以看作输出节点上存在一个等效输出电阻R_eq负载电流一上去输出电压就会比理想值下降一些。理解了这一点后面计算电容容量和选开关管时自然知道该往哪个方向改正。2.2 降压电荷泵的拓扑与输出公式一个完整的2:1降压电荷泵功率级需要4个开关管。假设输入是Vin输出是Vout飞跨电容是Cf。四管开关的两种状态如下状态AS1和S4导通S2和S3关断。飞跨电容一端接Vin一端接地充电到近似Vin。状态BS1和S4关断S2和S3导通。飞跨电容一端接Vout一端接地电荷转移给输出电容和负载。由于输出电容上电荷收支平衡稳态时Vout约等于Vin/2。考虑非理想因素后设计时要用的工程估算公式是Vout ≈ Vin / 2 - Iout × R_eq其中R_eq是等效输出电阻粗略估算可以写成R_eq ≈ 1 / (2 × f_sw × C_f) 2 × R_SW R_ESRf_sw是开关频率R_SW是单个开关管的平均导通电阻R_ESR是飞跨电容和输出电容串联等效电阻贡献的损耗。从公式里能看出提高频率或加大电容都能降低等效内阻但开关频率提高又会带来开关损耗所以实际设计必须折中。我在做仿真时通常建议先用这个公式粗算一遍再用电路仿真校准。不要一上来就靠仿真软件瞎试参数否则调半天都不明白为什么输出带载后掉电压。公式只是骨架但足够让你知道一颗螺丝应该拧在哪里。2.3 双输出是怎么来的正负双轨拓扑标题里的Dual-Output最常见的是正负双轨输出也就是同时输出Vout和-Vout。电荷泵做负压很顺手因为飞跨电容充电后把接地点换到另一侧就能把输出电容接到输入端下方让输出点对地呈现负电位。在实际项目里我倾向于把两级分开来看。第一级是2:1降压电荷泵把12V输入变成约6V的正压。第二级再用一个反相电荷泵把第一级的6V当作“输入”反转出一个约-6V的负压。之后如果负载要求精确的±5V就在后面各加一颗LDO。两级串联看似绕路其实很聪明。因为它让每级的电压应力都控制在低水平第一级开关管耐压只要考虑12V输入第二级开关管耐压只看6V左右。这对元器件的选型、成本以及可靠性都非常有利尤其是当系统输入电压可能波动到24V时拆成两级可以避免所有功率管都承受24V的冲击。当然双输出还有一种设计思路是用同一个飞跨电容轮流给两路输出供能。这种方法能省开关管数量但两路负载的动态响应会互相干扰。我做过对比只要有任何一路负载突变另一路就能看到明显的电压波动。所以除非成本极度敏感否则我更建议正负两路各自独立飞跨电容只在输入侧共用电源端口这是我在这个项目中坚持的原则。2.4 高压设计的关键点耐压、开关时序与寄生电容当输入电压达到24V甚至60V级别“高压”这个标签会带来三类让人头疼的问题。第一是电容耐压。陶瓷电容耐压越高同等容量下体积越大。更坑的是X7R等二类介质陶瓷电容在施加直流偏压后有效容量会大幅缩水如果选择了额定电压只比输入电压高一点点的电容实测容量可能只有标称的50%甚至更低。我一般要求电容额定电压至少是输入电压的1.5到2倍比如12V输入就选25V或50V的X7R电容。输入24V以上时干脆上50V或100V规格。第二是开关管的耐压和驱动电平。高压输入意味着功率MOS管的漏源电压要留足裕量同时栅极驱动电压必须稳定。如果驱动不够MOS管只处于半导通状态导通电阻飙升发热立刻变得不可接受。所以高压电荷泵很少直接用普通逻辑电平驱动多用专门的半桥驱动或自举驱动电路。第三是开关节点的寄生电容。高压开关节点一高一低跳变时PCB铜皮对地形成的寄生电容会反复充放电直接变成开关损耗。这个损耗和频率成正比频率越高越致命。很多人测效率觉得比理论低不少问题可能就出在这。处理办法是优化PCB layout尽量减小开关节点铜皮面积而不是盲目把电容加得特别大。重要提示下面这张表是我设计时反复对照的检查清单建议直接保存在项目文档里。设计点主要风险常见对策飞跨电容耐压击穿或有效容量下降选额定电压≥1.5倍输入的X7R瓷片电容开关管耐压雪崩击穿、失效留出50%以上的电压裕量栅极驱动电平半导通、热失控使用半桥驱动或自举驱动开关节点寄生电容高频开关损耗增加缩小开关节点铜皮面积远离地平面死区时间上下管直通驱动信号加死区或选用带死区控制的驱动芯片3. 实操设计从参数计算到器件选型3.1 先定负载需求一个12V转±5V的实例参数计算不能悬空我以自己最近调试的一块板子为例输入12V直流实际允许范围9V到16V模拟汽车蓄电池波动输出要求是5V和-5V各200mA纹波要求小于50mVpp开关频率定为1MHz工作温度范围-40到85℃。先看整体架构第一级2:1电荷泵把12V降压到大约6V第二级反相电荷泵以第一级输出为输入产生-6V然后正负6V各接一颗LDO稳压到±5V。这样做的好处是LDO压差只有1V左右功耗可控稳压精度也高。如果直接从12V降到5V2:1分压只能得到6VLDO压差1V正好合理但如果想要更低的输出电压就得考虑改用3:1或4:1分压拓扑那属于扩展话题了。负载电流上每个输出按200mA设计。但要注意LDO本身的静态电流以及反馈电阻的电流会叠加到电荷泵负载上所以我给电荷泵预留了30%余量按每个输出260mA做计算。这一点很容易被新手忽略最后实测发现LDO输出正常但电荷泵带载能力接近极限纹波超标才回头检查为什么。3.2 飞跨电容的容量计算飞跨电容容量的估算公式很简单C_f ≥ Iout / (f_sw × ΔV_f)其中ΔV_f是允许的飞跨电容电压纹波。这个纹波数值没有统一标准我一般控制在输出电压目标的5%以内。在这个项目中每个输出电流取260mA开关频率1MHz允许纹波取30mV那么C_f 0.26 / (1 × 10^6 × 0.03) ≈ 8.7μF实际选型取标称值10μF。因为X7R电容在12V偏压下有效容量可能会下降到70%左右我再把电容加大一档最终选了22μF/25V。有人可能会觉得这是浪费但多出来的容量换来的是更低的等效电阻和更稳的反馈环路从工程可靠性角度看是划算的。第二级反相电荷泵的飞跨电容同样计算。它工作的输入电压是第一级输出的约6V输出电流也是260mA所以同样选择22μF/50V。这里额定电压选择50V不是因为需要50V而是为了保持温度特性和直流偏置特性比较好成本差价很小不值得在电源核心路径上省。3.3 输出电容与纹波控制输出电容一般取飞跨电容的2到5倍这样电荷泵转移过来的电流冲击会被输出电容充分吸收。我们取两个47μF分别放在正负输出端耐压都选50V。输出纹波可以分解成两部分纹波1是电荷以脉冲形式注入输出电容造成的电压波动约等于Iout / (f_sw × C_out)。以260mA、1MHz、47μF为例这个值只有约5.5mV。纹波2是输出电容ESR上的电压降约等于Iout × ESR。陶瓷电容的ESR通常只有几毫欧所以这部分很小。但实际示波器上看到的纹波往往比这两个值大很多原因主要来自PCB走线寄生电感和探针的地线夹引入的噪声。所以测纹波时示波器探头地线要尽量短最好用接地弹簧直接点到输出电容两端。否则你测到的大部分“纹波”是空气噪声不是真实电源纹波。3.4 开关管选型与驱动设计这个项目里开关管我选了低压侧用N-MOS高压侧用P-MOS因为输入电压高达16V用P-MOS做高边可以简化驱动电路。N-MOS低边驱动可以直接用栅极驱动芯片也可以通过一个小变压器隔离驱动但为了布局简单我直接用了一颗半桥驱动芯片内部集成了自举二极管和电平移位省事很多。开关管的导通电阻要尽量低因为它直接进入等效输出电阻R_eq。以我们的输出电流260mA计算如果单个开关管的导通电阻是100mΩ每次电荷转移经过两个开关管总共约200mΩ在260mA下就会产生约52mV的压降已经接近允许的纹波量级。所以我选了导通电阻30mΩ左右的MOS管让这部分压降控制在10mV以内。频率和死区也不能忽略。1MHz开关频率下死区时间如果过长会明显降低有效占空比并增加损耗如果过短又可能上下管直通。我用的驱动芯片死区时间可调最后调到约40ns在波形上能看到一个几乎不可见的平台既安全又高效。开关节点爬坡速度也建议控制一下栅极电阻取2到5Ω比较合适太小则di/dt过高EMI变差太大则开关损耗增加。4. 电路实现与调试过程实录4.1 原理图与PCB布局要点原理图按功能块划分输入EMI滤波和防反接放在最前面第一级2:1电荷泵功率级第二级反相电荷泵功率级两路LDO以及输出保护。所有逻辑和驱动信号都用低噪声电源轨供电避免功率开关动作通过供电网络耦合进控制电路。PCB布局上我的经验可以浓缩成几句话。飞跨电容必须紧挨着对应的开关管和输出电容让功率充放电路径的包围面积最小。因为面积越大回路电感越大开关瞬间的振铃和EMI越强。正负两路输出建议放置成镜像对称让它们的回路电流不交叉。地平面尽量完整但开关节点下方的铜皮要挖空一些减小寄生电容。还有一点要特别提醒驱动电路的地和功率地可以在布局上分开走然后在输入电容的负端单点汇合。这样驱动电流和功率电流不会共享同一段地线能明显降低控制芯片的干扰风险。我第一版就是偷懒没分开结果开关管每次换向PWM波形上就出现一个毛刺排查了整整一天。4.2 样机调试步骤拿到第一批贴片样板后不要直接上电严格按照下面的顺序做第一步目检和万用表检查。重点看功率MOS管方向、电解电容极性本设计全用陶瓷电容就省心一些、飞跨电容焊接是否翘起。用万用表二极管档测输入到地的正反向压降确认没有明显短路。第二步空载上电。我用可编程电源设置输入限流200mA电压从0V缓慢加到12V。此时可编程电源显示电流应该很小只有控制芯片静态电流。然后测量正负输出应该在接近6V或-6V的位置但空载时可能偏高。第三步查看开关节点波形。用差分探头或两个普通探头测高边和低边开关节点确认频率是1MHz死区正常。如果方波有明显振荡先不要动电路有可能是探头地线太长带来的测量假象。第四步带载测试。正负输出各接电子负载从0mA开始逐步增加到100mA、200mA、260mA。记录输出电压、纹波和效率。每个电流点至少稳定一分钟观察有无热漂移。第五步动态响应测试。用电子负载的瞬态功能让负载在10%和90%之间切换观察输出波形有没有过冲或者低频振荡。这个项目因为后面接了LDO动态性能主要由LDO决定比较省心。这几步走完基本可以判定方案是否可行。如果某一步不合格回到参数计算和布局层面找原因别急着调环路电荷泵本身没有复杂环路八成问题出在器件应力或者寄生参数上。4.3 用LTspice仿真验证关键波形实际打板前我建议先搭一个简单的开关电容仿真模型用来验证稳态电压和瞬态电流。LTspice里不需要花哨的东西用四个理想开关加电容电阻就能搭出2:1电荷泵。开关驱动用脉冲电压源控制频率设置成1MHz占空比略小于50%留出死区。仿真重点看两个地方一是飞跨电容的充放电电流峰值这能帮你估算MOS管的峰值电流应力二是开关节点的电压斜率虽然理想开关没有斜率但你可以串联一个小电感模拟寄生电感观察振铃频率和幅度。我这个项目通过仿真发现如果把飞跨电容放在离开关管5mm之外寄生效应对波形的影响很明显后来就把布局改成了紧凑型。另一个实用技巧是在LTspice里加上输出电容ESR用0.01Ω到0.1Ω分别跑一遍看看纹波变化幅度。这能直观告诉你ESR对纹波贡献有多大比盲目加电容要靠谱得多。仿真文件我一般会保存成可复用的子电路库方便下一个项目直接调用。5. 常见问题与避坑技巧5.1 输出带载后电压掉太多这是我在调试中最常遇到的问题。现象是空载输出6V一带上200mA就掉到5V以下。原因通常有三个飞跨电容太小、工作频率太低、开关管导通电阻偏大。处理顺序建议是先用示波器测量飞跨电容两端纹波如果纹波幅度超过你计算允许值飞跨电容容量不够如果纹波不大但输出跌落依然明显重点检查开关管导通电阻和驱动电压是否达标。驱动电压不足MOS管没全导通电阻会比规格书标称值大很多此时换更大的MOS管也没用必须先把驱动电平做好。5.2 纹波大得像锯齿波锯齿波形状的纹波常见原因是飞跨电容充电电流在输出电容上产生的纹波没有被有效过滤。这种纹波频率和开关频率一致幅度随着负载增加明显变大。优化方向是加大输出电容同时检查输出电容的介质类型。X5R/X7R的容量偏压特性好一些Y5V则会随电压增加容量急剧下降纹波表现就差。假如你同时看到较高的尖刺振铃那多半是PCB回路电感太大不是单纯电容问题需要调整布局。5.3 上电瞬间电流尖峰电荷泵刚上电时输出电容电压为零开关管第一次导通时相当于对地电容直接充电瞬时电流相当大。这个尖峰如果超过输入电源限流阈值系统就无法正常启动更严重的还会导致输入电压跌落影响同一电源轨上的其他芯片。解决办法是在输入端加一个软启动电路比如串联一个NTC热敏电阻或者用数字软启动信号控制输入开关管的导通斜率。我在方案上直接用了驱动芯片的软启动引脚把启动过程拉长到约2ms实测输入电流尖峰降低了差不多60%。另外输出电容的值也不要取得过大够用就好否则每次上电都像一次小短路。5.4 高压输入下的效率损失做高压输入时效率会比低压输入低几个百分点。原因之一是开关节点寄生电容损耗随电压平方增加和频率成正比。你可以把开关频率适当降低来换效率但要注意频率低了飞跨电容要加大。原因之二是反向恢复损耗。如果开关管体二极管参与了电流导通二极管反向恢复电荷会在切换瞬间造成额外损耗。高压MOS管的体二极管反向恢复特性一般比低压MOS管差所以条件允许时尽量用同步整流结构让电流走沟道而不是体二极管。如果结构限制必须依靠二极管续流选择Fast Recovery二极管或肖特基二极管会好很多。我把高频高压电荷泵的几个常见故障列成了一张速查表调试时可以直接对号入座现象可能原因排查方向带载电压跌落飞跨电容太小或频率低测飞跨电容纹波按公式重算容量锯齿波纹波大输出电容不足或介质差换大容量X7R确认ESR上电电流尖峰无软启动增加软启动电路或拉长启动时间效率无故偏低寄生电容或体二极管损耗优化开关节点layout检查驱动电平开关节点振铃PCB寄生电感和探头接地缩小回路面积改善测量方式6. 针对更高输入电压的一点扩展思路如果你的输入电压不是12V而是48V甚至更高整个设计还需要再往前一步。普通的2:1电荷泵在输入电压超过40V时功率MOS管和飞跨电容的耐压成本会迅速上升效率和可靠性的矛盾也会更突出。一个常见的扩展方案是多级电荷泵串联比如先把48V用2:1降到24V再用24V降到12V逐级降压。这样每一级的器件应力都被控制在较低水平总损耗摊到每一级。代价是级数增多启动时序和环路稳定性需要更仔细处理。另一个方案是先用一级电感式Buck把高压降到12V或15V然后再用电荷泵做正负双输出这在很多工业传感器板卡上是最成熟的做法。如果你已经对纯电荷泵方案产生了兴趣我建议你顺着这个方向再研究一下“多相电荷泵”和“有源钳位电荷泵”。多相电容泵能显著降低输入输出纹波有源钳位则能回收寄生电容的部分能量效率可以做到比传统电荷泵高不少。不过这些都属于进阶优化先把本文的基础方案吃透后续再升级会轻松很多。我在实际使用中还有一个体会这类电源电路最费时间的往往不是原理设计而是调试时的耐性。飞跨电容容量、开关频率、死区时间、布局寄生参数它们彼此牵制牵一发而动全身。遇到问题不要急着一次把所有参数都改掉每次只动一个变量记录下来前后对比这样最快能找到问题根源。希望我这篇复盘能让你少踩几个坑把时间花在更有价值的地方。