CMOS电荷泵设计指南:从Dickson拓扑到参数计算与工程实战 简介CMOS电荷泵电路设计实用PPT课件面向微电子、集成电路专业学生和工程师系统讲解如何利用电容与有源器件实现低电压到高电压的变换且无需电感、便于集成。课件从电荷泵广泛应用背景切入涉及非易失性存储器编程电压产生、低压开关电容系统、数模转换器与DC-DC变换器等场景电路原理解析围绕振荡器、RS触发器、电荷泵三部分展开并附有设计与仿真结果。版图部分介绍基于Cadence VirtuosoLayout的设计布局、优化及DRC/LVS验证流程帮助读者建立从电路到版图的完整工程思路。资源共有1个pptx文件约251KB共13页适合课程教学、期末复习或自学入门。已有243人学习下载对想快速掌握CMOS电荷泵设计要点的学习者具有实用参考价值。1. 为什么偏偏是电荷泵先捋清它的生态位做电源或者混合信号电路设计的朋友应该都有这种体会系统里总是有那么几个电压不高不低电流需求也不大但就是离不开。比如NOR Flash编程要12V左右、LCD偏置要正负几伏到十几伏、静电器件或者运放供电可能要±5V。直接用Buck或者Boost方案成本、面积、EMI都不太划算用变压器更不现实。这个时候电荷泵Charge Pump就是那个性价比最合适的答案——不用电感、不用变压器靠电容的充放电就能把电压搬上去或者翻个倍。这个标题里有个很关键的限定词——CMOS。为什么要把工艺限定在CMOS里讲因为电荷泵的核心开关器件在CMOS工艺里天然就是MOS管。BJT也能做开关但静态功耗、驱动逻辑、集成度都不如CMOS来得顺手。尤其是今天大家基本都在SoC/PMIC里做片上电源MOS管开关、片上电容、死区控制逻辑全部集成在一起CMOS电荷泵就是这些模块的内核。从应用场景看电荷泵主要干三类活电压转换最常见的是倍压Doubler、降压如2:1、3:2的分数型、反压Positive to Negative比如把5V转成-5V给运放用电源轨生成LCD偏置、OLED屏供电、Flash编程电压、USB接口的Vbus供电等电流一般从几十微安到几十毫安片上辅助电源比如给I/O电平转换器供电、给低功耗待机域供电这些电流不需要很大但电压精度和纹波有要求。一句话概括电荷泵擅长的是“中等电压变换比、低到中等电流、效率不太苛刻”的场景。如果你要做的是5V转1.8V、5A级别的DC-DC请直接去看Buck别在电荷泵上耗时间——它不是干这个的料。回到“PPT课件”这个场景做课件最怕的就是把拓扑画得漂亮但讲不清原理或者把公式推导堆了一堆却没告诉学生“这个参数到底怎么取、取错了会怎么样”。所以这篇博文我尽量按一个资深工程师做内部培训的思路来拆——先讲工作原理再讲拓扑变体然后落到关键参数计算和版图/测试最后把设计流程捋一遍。这样无论你是拿去做课件还是准备自己搭一个电荷泵都能直接抄作业。顺便说一句网上搜“电荷泵”经常会带出boost升压电路、倍压整流这些词它们不是同一个东西。Boost靠电感储能倍压整流靠二极管加交流源。电荷泵核心是“开关电容网络”开关管按照固定相位的时钟切换让电容在充电相和放电相之间反复搬移电荷。这个概念是最底层的东西后面所有拓扑都绕不开它。2. 电荷泵工作的底层逻辑从Dickson架构看电荷搬移2.1 电荷泵为什么能升压核心是电荷的搬运工电荷泵能升压从本质上说不是能量凭空变多了而是把电荷在时间轴上“错峰叠加”了。给电容充电到VDD然后把它的负极抬高、接到输出正极比原来高出VDD输出自然就得到2VDD。下一拍再把这个2VDD给下一个电容充电就能得到3VDD。类似搭积木一级一级把电压往上摞。Dickson电荷泵就是这么干的它是所有现代电荷泵的鼻祖。1976年Dickson提出的经典结构是这样的一串二极管或二极管接法的MOS管串联每两级之间挂一个泵电容每一个泵电容的底极板接到一个两相不重叠时钟上。时钟为低时电容被充电二极管导通把电荷往前推时钟翻高时电容底极板被抬升顶极板电压也跟着跳上去二极管反向截止电荷就被“压”进了下一级。实际用CMOS实现时二极管一般不用PN结而是用二极管接法的NMOS栅漏短接或者用传输门加控制逻辑来实现同步整流。原因是CMOS工艺里的寄生二极管和衬底效应会让阈值损失特别明显每经过一级都要掉一个Vth级数一多电压损失就很可观。这也是Dickson结构在现代低电压工艺里不太吃香的根本原因。把Dickson公式写出来输出开路电压是[ V_{out} V_{in} N \cdot (V_{clk_high} - V_{clk_low}) - (N1) \cdot V_{drop} ]N是级数V_clk是时钟摆幅V_drop是每级二极管的导通压降。你会发现真正决定升压能力的是时钟摆幅——如果时钟摆幅等于VDD理论上每个泵电容能把电压抬一个VDD高度。但如果V_drop有0.7VVDD本身才1.8V一级大概只能净升1.1V效率损失肉眼可见。2.2 开关相位的逻辑两相不重叠时钟为什么是命根子电荷泵的开关动作全靠时钟这个时钟不是随便一个方波就行必须是两相不重叠时钟Non-overlapping Clock。也就是说充电相Phase A和放电相Phase B之间必须留出死区确保在这一瞬间没有任何路径把输入和输出直接短路。举个最简单的2倍压电路做例子一个飞跨电容Fly Capacitor简称飞容加四个开关。Phase A把飞容接到VDD和GND之间充电Phase B把飞容的正极接到VDD、负极接到输出端。如果A和B同时导通那VDD直接就通过开关连到输出这时候如果输出电容比较大瞬间电流会非常恐怖可能直接把管子烧穿。所以不重叠时钟不只是为了效率更是为了生存。实际电路里生成不重叠时钟的经典做法是一个D触发器产生50%占空比的互补信号然后每一路经过一连串反相器链再在交叉处插入“与非门RC延时”结构。目的在于让两路信号都保持一小段时间的低电平。注意这里千万不要只靠反相器固有的传输延时来“碰运气”一定要有显式的延时单元温度、电压角PVT一变化延时可能缩小到没有那就等于裸奔了。2.3 输出纹波和电容的关系指尖上做权衡电荷泵的输出本质上不是稳定的电压源而是一包一包电荷往输出电容上砸有点像用桶往水缸里倒水——倒水的时候水面上升不倒的时候水面下降水缸里的水位就是输出电压幅度波动就是纹波。因此输出纹波的大小直接由**输出电容Cout和泵频率f**决定。近似公式[ \Delta V_{out} \approx \frac{I_{load}}{f \cdot C_{out}} ]举个数负载1mA泵频率1MHz输出电容1uF纹波大概1mV。如果负载变成50mA同样的配置纹波就是50mV——很多系统就接受不了了。这时要么加大Cout要么提高频率要么用多相交错来抵消纹波。片上集成受面积限制Cout做不大那就把频率往上抬但要小心动态损耗也跟着涨。经验取值片上电容密度大概2-5 fF/μm²要集成1nF的电容就要0.2-0.5 mm²面积非常肉疼。所以在系统设计阶段就要想清楚输出电容到底放片内还是片外。放片外纹波好做、面积省但多两个引脚放片内系统集成度高但纹波和面积的账要细算。2.4 效率公式别被“高效率”三个字骗了电荷泵的损耗主要有三块开关损耗、导通损耗、驱动损耗。开关损耗来自寄生电容的充放电尤其是飞容底极板的寄生电容这是CMOS电荷泵效率的隐形杀手导通损耗来自MOS管的导通电阻和飞容的ESR驱动损耗来自时钟树翻转时的动态功耗。效率可以近似写成[ \eta \frac{V_{out} \cdot I_{load}}{V_{in} \cdot I_{in}} \approx \frac{V_{out}}{M \cdot V_{in}} ]这里的M是理想变换比。也就是说如果输入5V理想2倍压成10V但实际输出只有9V效率最多90%。这一点很反直觉——电荷泵的效率主要是被输出电压的“缩水”卡死的而不是被什么阻抗吃掉的。所以提高效率的关键不是把管子的Ron做小而是减小电压降。这也是后面要讲的交叉耦合结构、同步整流技术改进的方向。3. 拓扑变体与选型从教科书经典到工业级主力3.1 Dickson电荷泵、交叉耦合电荷泵、倍压式电路的差异课件里最常放的三个拓扑就是Dickson、交叉耦合Cross-Coupled和倍压式Voltage Doubler。表格直接对比拓扑核心特点优势劣势适用场景Dickson二极管/二极管接法MOS串联泵电容结构最简单级联容易实现高增益阈值损失累积效率随级数快速下降高电压、小电流如Flash编程电压交叉耦合PMOS/NMOS交叉连接栅极由对侧输出驱动开关管栅压可以超过VDD导通压降小效率高时序复杂需要额外的逻辑和电平移位中等电压、几十mA级负载PMIC主流倍压式2x飞容在充电和放电相之间切换四个开关构成结构清晰适合入门讲解输出纹波和开关应力需要额外注意低功耗待机电源、LCD偏置我最想强调的其实是交叉耦合结构。它为什么效率高核心在于它解决了MOS开关“导通不够彻底”的问题。普通NMOS做开关栅极要拿到比源极高足够多的电压才能完全导通。在Dickson里这个电压往往不够——因为栅极和源极之间的电压差可能不到一个VDD管子工作在饱和区或者亚阈值区导通电阻巨大。交叉耦合结构让栅极从对侧的更高电位取电开关管的栅压能抬到高于供电轨的电平管子彻底进入深线性区导通压降几乎只剩下I×R的欧姆压降没有阈值项效率自然就上去了。倍压式电路适合做第一堂课的理解模型。它没有复杂的多级反馈四个开关加一个飞容波形一拉出来学生就能看懂。但真正的产品设计里单纯用倍压式结构的已经不多更多是拿它当基础单元再叠加LDO做后级稳压。3.2 从2倍压推广到分数型为什么用1.5x而不是2x你可能要问了既然2倍压能搞定为什么产品里常见1.5倍、4/3倍、3/2倍这种奇怪的变换比原因很直接——输出精度。假设输入是锂电池工作范围3.0V到4.4V。你做2倍压输出在6V到8.8V之间乱跳这对负载完全不可用。但如果做1.5倍压输出范围就在4.5V到6.6V再用一个LDO压到5V损耗小得多。简单说变换比越贴近实际需求的电压后级LDO的压差就越小整体效率就越高。分数型电荷泵的实现思路就是让飞容在不同相位接到不同的节点实现比如“VDD0.5VDD”的效果。具体做法是把一个飞容或两个飞容在充电相充到0.5VDD放电相串到输出端输出就得到1.5VDD。这需要额外的开关网络和相位控制逻辑但换来的是供电电压的可控性和系统整体效率。这是实际产品里非常常见的做法。3.3 选型时的四条铁律选哪种拓扑不是看谁的图漂亮而是按住这四个问题逐一过滤输出电压需要多少如果输出要求几百伏量级比如MEMS驱动器那基本只有Dickson多级结构能做因为其它拓扑不可能把几十个管子叠起来。如果只有2-3倍关系交叉耦合最有竞争力。负载电流多大超过100mA的场合就要开始怀疑电荷泵是否合适了。虽然也有大电流电荷泵比如部分快充方案但整体效率和散热都不占优。毫安级别到几十毫安电荷泵最舒服。输入电压源是稳定轨还是电池电池供电意味着输入范围宽你需要自适应变换比。稳定轨则可以用固定变换比直接堆效率。系统里有没有严格禁止的噪声频段电荷泵是开关电源一定会产生开关频率及其谐波的噪声。如果给射频前端供电泵频率就必须避开射频工作频段否则会带来明显的shock noise甚至desense问题。4. 管子尺寸、飞容大小和频率参数之间怎么算4.1 关键指标拆解负载电流、输入电压范围、输出纹波开始算参数之前先把设计需求列完整。我见过太多人只写一句“输出5V/50mA”然后就开始画电路最后在测试阶段发现效率、纹波、启动时间互相打架怎么调都调不好。规范的指标表应该长这样输入电压范围比如3.0V-4.4V锂电池全生命周期输出电压/电流比如5V±3%50mA最大持续输出纹波20mV峰峰值静态功耗5uA待机模式启动时间200us到90%目标电压效率目标85%在典型输入3.7V时工作温度范围-40°C到85°C这些指标不仅是设计目标也是后面选管子尺寸、选电容、定频率的输入条件。指标表没定清楚就动手画原理图等于闭着眼睛开车。4.2 管子的宽长比W/L如何拍板导通电阻与寄生电容的对抗MOS开关的尺寸本质是导通电阻Ron和寄生电容Cpar的对弈。导通电阻公式线性区[ R_{on} \frac{1}{\mu C_{ox} \frac{W}{L} (V_{gs} - V_{th})} ]从公式看管子越宽Ron越小导通损耗越低。但是管子宽了之后栅极电容、漏源寄生电容也变大。这些寄生电容在每次开关翻转时都要充放电产生的动态损耗是[ P_{switching} f \cdot (C_{gate} C_{par}) \cdot V^2 ]所以存在一个最优尺寸点再宽一点导通损耗省不了多少但开关损耗开始线性增加再窄一点开关损耗省了但导通损耗飙升。手算这个最优值很繁琐实际工程里一般用仿真器做一个简单的扫参把W从50um扫到5000um对数扫描看效率曲线峰值。曲线的顶点就是接近最优的尺寸。这里有个容易忽略的细节同一颗电荷泵里的开关管并不需要全部做成一样大。飞容的充放电路径上走主电流的开关比如给输出电容充电的那几只要做大栅极驱动路径上的缓冲器Buffer和逻辑管不用大够驱动就行。很多初学者把四个开关做成一模一样大最后效率差了3-5个百分点还找不到原因。4.3 飞容Fly Capacitor大小怎么定电荷量的量级思维飞容的本质作用是在充电相存够足量的电荷放电相把它们全部送给输出。如果飞容太小每周期能搬运的电荷不够输出电压一上负载就垮了如果太大充电时间常数拉长充电相结束之前电容根本没充满白瞎面积。经验公式[ C_{fly} \approx 10 \times \frac{I_{load}}{f \cdot \Delta V_{fly}} ]这里ΔV_fly是充放电过程中飞容上允许的电压波动一般取输出电压的5%-10%。举个例子负载50mA、频率1MHz、允许飞容上的电压波动50mV那么C_fly ≈ 10×50mA/(1MHz×50mV) 10uF。如果你发现算出来飞容太大、片上装不下应该先提高开关频率频率翻一倍飞容就能减半。频率增加带来的开关损耗问题在前面管子尺寸那一节已经说过怎么办了。这个电容的物理类型也要注意。片上做飞容一般用MOS电容高密度或MIM电容高精度。MOS电容密度高但电压系数大——电压越高容值越小在电荷泵这种电压大幅波动的节点上会引入额外的非线性MIM电容精度好但密度低。做电荷泵的飞容我一般优先MIM或者MOM电容MOS电容留给对容值精度不敏感的退耦节点。4.4 频率选择的三个维度纹波、效率、EMI频率不是一个孤立参数它同时拉扯三条线纹波频率越高同样输出电容下纹波越小前面纹波公式里f在分母上面积频率越高飞容可以做得越小节省的面积非常可观效率频率越高开关损耗越高同时电容充放电不完全带来的损失也越大效率曲线呈倒U型EMI频率越高谐波频率越高传导发射和辐射发射的抑制难度变大。实际产品里电荷泵频率常见在100kHz到几MHz这个区间。低于100kHz飞容和输出电容的面积大到让人崩溃高于几MHz效率、EMI和驱动设计难度同时翻倍。做片内集成时建议先在1MHz左右起手仿真确认效率和纹波后再决定是否往上走。5. 仿真和测试阶段最容易踩的暗坑5.1 限流电阻和等效串联电感原理图里不会画、实测一定见的寄生我可以很负责任地说八成电荷泵测试翻车不是原理错了而是死在PCB和封装寄生上。飞容和开关管构成的充放电路径瞬间电流峰值可以非常大飞容充电瞬间几乎是短路状态。这个电流流经PCB走线的寄生电感时会在开关节点上打出很高的电压尖峰——示波器上看到的那种振铃和毛刺很大概率不是芯片哪里坏了而是寄生电感在作祟。应对方法有三条一是飞容尽量靠近芯片引脚放走线短而粗减小回路面积二是开关节点不要铺大片铜皮减少对地寄生电容三是必要时在飞容两端并联一个小阻值的RC吸收网络代价是增加一点漏电流和损耗。测试时的实测经验判断一个毛刺是芯片内在问题还是寄生问题可以用一个简单方法——把飞容从板上拆掉换成短粗导线短接引脚如果开关节点振铃明显减小基本可以锁定是飞容回路寄生电感的问题。当然这只是诊断手段不是解决方案。5.2 死区时间调不好丧钟就敲响了死区时间太小上下开关管直通电流尖峰直接打穿器件死区太大飞容充电时间不够带载能力缩水效率滑坡。这个参数需要反复仿真微调。调死区时注意一个工艺角陷阱TT角典型NMOS/典型PMOS下死区设置得舒服不代表SS角慢NMOS/慢PMOS和FF角快NMOS/快PMOS下也安全。SS角下信号变慢可能充电未完放电就开始FF角下器件变快死区被吃掉。全角仿真必须跑而且务必盯着死区相关波形的交叠情况看不要只看输出有没有短路。5.3 衬底偏置效应Dickson结构最深的坑Dickson结构里二极管接法NMOS的源极电压逐级升高但衬底一般还是接最低电位GND。源极比衬底高越多阈值电压Vth就越高——这是CMOS工艺里的衬底偏置效应Body Effect。结果就是每一级的V_drop比理论计算值更大级数越多损失累积越严重。这就是为什么Dickson在高增益场景下效率惨不忍睹的根本原因。解决思路是把管子的衬底接回它自己的源极动态衬底偏置但这对工艺有要求需要三阱工艺否则NMOS衬底无法独立偏置。或者在电路层面放弃Dickson换交叉耦合结构。从工程角度看很多情况下换拓扑比重画管子尺寸要有效得多。5.4 从仿真到流片/量产效率数字为什么会缩水Spectre/SPICE仿真里效率92%流片回来实测只有80%这种事我经历过不止一次。原因一般在三处寄生电容没提全提取版图后仿真LPE和原理图仿真差距非常大尤其飞容底极板的寄生电容直接参与损耗时钟树的动态功耗被低估栅极驱动不是零功耗的开关高速翻转时反相器链的瞬态短路电流不可忽略封装和测试电路板的额外电阻引脚和邦定线Bonding Wire有零点几欧到几欧的电阻在大电流脉冲下压降不小。所以我的建议是原理图仿真阶段效率目标至少要留3-5个百分点的裕量。另外版图完成后一定要做带寄生的后仿否则你的PPT课件里呈现的全是理想世界的童话换到现实世界就是打脸。6. 从零做一个电荷泵的流程梳理与课件结构建议最后把这套东西落成可执行的流程。不管你是自己要设计一个电荷泵还是准备把这套内容做成PPT课件去讲下面这个顺序是我觉得最顺的思路。6.1 完整设计流程六步走第一步定指标。把输入范围、输出电压电流、纹波、效率、启动时间全部写清楚这是一切后续动作的地基。第二步选拓扑。根据输出电压和电流量级确定用Dickson、交叉耦合还是倍压式。拿不准可以画个表三个拓扑各占一列把需求指标逐行打勾打叉。第三步定频率与飞容。先预估频率算出需要的C_fly。如果面积不允许把频率往上调。这步是迭代的直到面积和频率达成妥协。第四步算管子尺寸。先扫参找到效率最优区域再用蒙地卡罗或工艺角做稳健性检查。此时也要把死区时间一起仿真调好。第五步版图设计。注意开关管的阵列布局、飞容的放置位置、功率走线的宽度和间距以及时钟树的不对称性。版图阶段一个常见的做法是把功率管拆成多指结构结合金属层电流密度要求一般1mA/um算是安全的把EM风险控制住。第六步后仿与测试验证。提寄生、跑全角仿真测试阶段重点查纹波、效率和启动波形对比前仿与实测差异定位寄生损耗来源。6.2 PPT课件章节排布按原理→拓扑→参数→实战→测试如果是做课件我建议章节顺序这样排电荷泵的定位它和LDO、电感式DC-DC的分工是什么工作原理Dickson结构入门两相不重叠时钟的必要性拓扑演进从Dickson到交叉耦合从倍压到分数型参数设计飞容、管子、频率、死区每一步怎么算怎么调应用案例一个5V/50mA的完整设计case从指标到流片后测测试陷阱与常见Bug寄生电感、衬底偏置、效率缩水、EMI讲完这些学生不仅能画出一个能跑的电荷泵更重要的是形成一套“从指标到拓扑再到参数”的设计方法论。这种思维方式比记住任何一个单点公式都值钱。6.3 文献和仿真工具怎么选做电荷泵设计Razavi的《Design of Analog CMOS Integrated Circuits》里电荷泵相关章节是很好的入门讲工程细节的话David Johns和Ken Martin的《Analog Integrated Circuit Design》可以参考。真正到了要看工业界怎么做建议去扒ISSCC/JSSC里关于电荷泵或电源管理的论文尤其是那些带测量结果的文章比教科书里理想化的推导接地气得多。工具上Cadence Virtuoso做全定制设计是主流仿真器用Spectre也可以用Synopsys的Custom Compiler各有优劣按团队习惯来。如果是学生或者个人学习可以先用开源的ngspice搭一个Dickson电荷泵的网表跑一下瞬态仿真感受一下电容充放电的波形——这个动手过程比光看公式有用十倍。我自己做电荷泵这些年最深的一点体会是电荷泵这个东西看似简单——几个开关几个电容的事——但它几乎把模拟电路设计的核心题目都练了一遍开关导通与截止的细节、寄生电容与效率的博弈、时钟时序的生死攸关、版图布局对性能的直接影响。做懂一个电荷泵比做懂很多“看着复杂”的电路都更能长功力。希望这篇梳理能让你少走几步弯路。本文还有配套的精品资源点击获取