简介: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}) - (N+1) \cdot V_{drop} ]
N是级数,V_clk是时钟摆幅,V_drop是每级二极管的导通压降。你会发现,真正决定升压能力的是时钟摆幅——如果时钟摆幅等于VDD,理论上每个泵电容能把电压抬一个VDD高度。但如果V_drop有0.7V,VDD本身才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的压差就越小,整体效率就越高。
分数型电荷泵的实现思路,就是让飞容在不同相位接到不同的节点,实现比如“VDD+0.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电荷泵的网表,跑一下瞬态仿真,感受一下电容充放电的波形——这个动手过程比光看公式有用十倍。
我自己做电荷泵这些年,最深的一点体会是:电荷泵这个东西看似简单——几个开关几个电容的事——但它几乎把模拟电路设计的核心题目都练了一遍:开关导通与截止的细节、寄生电容与效率的博弈、时钟时序的生死攸关、版图布局对性能的直接影响。做懂一个电荷泵,比做懂很多“看着复杂”的电路都更能长功力。希望这篇梳理,能让你少走几步弯路。
本文还有配套的精品资源,点击获取