ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

BUCK电路CCM/BCM/DCM模式详解:从原理到选型与调试

BUCK电路CCM/BCM/DCM模式详解:从原理到选型与调试 看到有人问BUCK电路的CCM、BCM、DCM怎么选我就想起早几年调一个POE供电模组的经历。12V转5V/3A满载跑得好好的负载降到100mA后电感电流波形变得断断续续示波器里还能听到轻微的“嘶嘶”声。绝大多数教程只讲“BUCK就是把方波滤波成直流”但真正上手后才知道光一个工作模式就能决定板子的效率、纹波、EMI和环路稳定性选错了轻则性能不达标重则直接振荡啸叫。这篇就把BUCK电路三种工作模式CCM、BCM、DCM的物理过程、边界条件、选型计算和调试注意事项一次讲透已经懂基础的可以直接跳到第3节看算例刚入门建议从头往下看。1. 三种工作模式的核心差异先从物理本质说起1.1 一个开关周期内电感电流的三种状态BUCK电路的本质是一个快速的能量搬运系统核心元件只有四个高边开关管同步BUCK里还有低边开关管、电感L、输出电容C和负载。高边管以固定频率fsw开关导通时间为Ton周期为T占空比D Ton / T。高边管导通时输入通过电感向输出供电电感两端电压是Vin - Vout电感电流线性上升高边管关断后电感续流路径导通异步BUCK走二极管同步BUCK走低边MOSFET电感两端电压是-Vout电流线性下降。关键在于电感电流在开关周期结束时有没有回到零。如果还没降到零下一个周期又从非零值开始爬升就是连续导通模式CCM如果刚好降到零下一瞬间马上进入新的开关周期就是临界导通模式BCM如果降到零后要停一小段等下一周期到来前电流始终是零就是断续导通模式DCM。这就像推一辆很重的推车。CCM是推车一直在往前走你只在它还没停下来时继续推BCM是推车刚好要停的那一刻你恰巧推了下一把DCM是推车早就停下你歇了一会儿才迈出下一步。推车的“速度”就是电感电流推车“停下来”就是电感电流归零。物理上电感电流不能突变是因为电感储存的磁场能量不能瞬间消失。相同占空比下电感值L越大电流变化率越小越难跌到零负载电阻R越大也就是输出电流越小电感平均电流越小也越容易跌到零。所以工作模式本质上由L、fsw、Vout、Iout这几个参数共同决定而不是由芯片的“工作模式标志位”直接决定。很多芯片虽然标称支持DCM或CCM但那只是控制策略上的选择物理模式是由外部参数自然形成的。1.2 边界条件与r参数一个公式看懂临界判断三种模式最实用的工具是电感电流纹波率r。定义如下r ΔIL / IL_avg其中ΔIL是电感电流的峰峰值纹波IL_avg是电感电流平均值。稳态下输出电容的平均电流为零所以电感电流平均值恰好等于负载电流Iout。当r 2时ΔIL 2 × Iout意味着纹波的下沿正好等于0这就是临界点。r 2时纹波下沿大于0工作在CCMr 2时纹波下沿小于0实际物理上电感电流不可能反向异步BUCK或受负电流限制同步BUCK因此电流会被钳在0工作在DCM。把BUCK的电感电流纹波公式代进去ΔIL (Vin - Vout) × D / (L × fsw)再结合稳态关系 Vout Vin × D可以得到临界电感公式Lcrit Vout × (1 - D) / (2 × fsw × Iout)这个公式是设计选型时最常用的起点。注意这里的Iout是判断哪个负载点需要临界如果你要保证满载时在CCM就要把Iout_max代入算临界电感然后取更大的值如果你希望轻载时进入DCM就把Iout_min代入算临界电感然后取更小的值。同一颗电感在同一输入输出电压和频率下临界负载电流Icrit Vout × (1 - D) / (2 × fsw × L)负载超过Icrit就CCM低于Icrit就DCM。1.3 从波形特征快速识别三种模式真正看波形比算公式更直观。用示波器电流探头测电感电流波形三种模式一眼就能分辨。CCM的电感电流是一个完整的三角形波形底边始终在零轴上方上升沿和下降沿斜率分别由(Vin - Vout) / L和Vout / L决定BCM的三角形波底边刚好落在零轴上波形“尖顶触底”但没有平段DCM在三角波之后有一段完全水平的零电流平台这一段占整个周期的比例越大DCM越深。还有一个容易忽略的细节异步BUCK在DCM下续流二极管不会导通因为电感电流已经归零此时输出完全由电容维持。同步BUCK如果芯片做过零检测并关闭低边管同样会进入DCM如果芯片允许负电流电感电流会持续下降到负值这属于CCM的一种非典型状态叫“反向电流导通模式”很多强制PWM芯片在轻载时就是这种状态效率很低。2. 三种模式各自的脾气秉性优缺点与适用场景2.1 CCM大电流应用的常青树纹波和效率都稳CCM在中等以上负载时几乎是唯一合理的选择。电感电流连续输出电容只需要处理一个三角形纹波电流而不是脉冲电流输出纹波电压小在同样的平均电流下CCM的电流有效值比DCM低铜损和导通损耗更小控制上无论电压模式还是峰值电流模式都有成熟的小信号模型和补偿设计流程。但CCM有个天然短板轻载效率差。固定的开关频率意味着开关损耗基本恒定而负载电流很小时电感平均电流虽然小续流路径的损耗和驱动损耗并没有按比例下降。更麻烦的是CCM下如果使用二极管续流二极管反向恢复电荷会在高边管导通瞬间产生尖峰电流EMI和开关损耗都变大。所以大电流DCDC一般用同步整流替代二极管目的就是降低续流损耗。CCM通常用于CPU供电、通信设备、工业电源这些满载时间长、瞬态响应要求高的地方。我自己的体会是CCM是“下限有保障”的模式只要电感取值够大波形不会乱环路补偿参数也有一堆现成的设计工具调试成本最低。如果你不想在模式切换上花太多精力那就把整个负载范围都设计在CCM内代价是电感和电容的体积会偏大。2.2 BCM临界点上的变频高手效率和EMI的平衡BCM严格说起来不是一种可以保持恒频工作的模式。当电感电流降到零时新的开关周期必须立刻开始否则就滑入了DCM。如果固定开关频率BCM只存在于一个负载点想要在整个负载范围内都保持BCM就必须变频控制负载变轻时频率下降负载变重时频率上升。BCM最大的优势是“零电流开通”。电感电流为零时打开高边管理论上没有反向恢复和开通电流尖峰开关损耗很小配合谷值开关检测还能实现准谐振效果EMI明显改善。因此BCM经常用在临界模式PFC中电感电流呈正弦包络三角波功率因数高。在DCDC轻载优化中很多芯片使用恒定导通时间COT控制让系统在轻载时自然工作在BCM附近既保持较小纹波又能提高效率。BCM的缺点也很明显频率随负载和输入电压变化EMI滤波器要按最低频率设计磁芯损耗在高频段可能激增而且电感值必须精确匹配不同工况设计余量不好把控。实际产品里BCM往往不是主导模式而是工作在一个比较窄的负载窗口比如10%到30%额定负载之间配合PFM控制实现效率曲线的峰点。2.3 DCM轻载场景的灵活选择小功率动态响应快DCM最吸引人的地方是轻载效率。电感电流从零开始增加高边管的开通损耗小芯片还可以进一步降低开关频率或采用脉冲串模式待机功耗可以压得非常低。再加上DCM下电感中没有持续循环的磁场能量负载突变时电感电流能迅速跟上动态响应表现不错。代价是纹波大。DCM下电感电流是脉冲串输出电容必须独自维持一次充电之间的所有负载电流输出纹波电压除了ESR压降还要加上电容充放电起伏比CCM大一个量级。同时峰值电流高会让电感磁芯更早饱和EMI也更难看。还有一个很少提但很实际的问题如果开关频率掉到20kHz以内DCM下的脉冲周期可能落在音频范围电感啸叫、陶瓷电容压电效应都会出来消费者电子产品对这类“吱吱叫”极度反感。所以DCM通常作为轻载辅助模式存在比如手机快充适配器在低功率阶段、辅助电源待机模式、电池供电设备的待机状态。真正的设计难点在于模式切换从DCM切到CCM或从CCM滑到DCM需要避免环路震荡和啸叫这部分我放在第4节具体讲。3. 实操中到底怎么选从需求到计算的完整思路3.1 拿到设计需求后先别急着选IC很多工程师一上来就打开选型手册挑芯片这其实顺序反了。正确的做法是先列需求表至少包括输入电压范围、输出电压、负载范围重点是最小负载和最大负载、允许的输出纹波、目标效率、是否要求低静态电流、工作环境温度、是否有EMI认证要求。这些参数决定工作模式的选择而不是让芯片决定电路。一个简单的判断逻辑是如果负载范围很窄且满载时间长比如通信设备电源优先保证全程CCM电感往大了取强制PWM控制如果负载范围跨度很大且强调轻载效率比如电池供电设备就要允许轻载DCM芯片选带PFM或者轻载模式切换功能的如果目标是功率因数校正前面加一级临界模式PFC后级BUCK固定CCM。实际操作中还需要考虑是否支持异步还是同步。异步BUCK用肖特基二极管续流DCM模式下没有反向恢复问题成本低同步BUCK的低边管在CCM下必须严格控制死区防止直通但只要控制好了效率比异步高不少。我的建议是2A以下可以用异步BUCK2A以上尽量选同步BUCK轻载效率表现会好很多。3.2 电感值计算的完整推导与算例用一个具体算例讲清楚整个过程。假设输入Vin 12V输出Vout 5V开关频率fsw 500kHz最大负载Iout_max 2A最小负载Iout_min 0.1A输出纹波要求小于20mV。先算占空比D Vout / Vin 5 / 12 ≈ 0.417。再算满载时的临界电感。把Iout_max代入临界电感公式Lcrit_max Vout × (1 - D) / (2 × fsw × Iout_max) 5 × 0.583 / (2 × 500kHz × 2A)算出来约1.46µH。这只是满载维持CCM的理论下限工程上还要留余量。通常让满载时的纹波率r控制在0.3到0.5之间较为合理。取r 0.4则ΔIL 0.4 × Iout_max 0.8A。根据纹波公式反推需要的电感L (Vin - Vout) × D / (ΔIL × fsw) 7 × 0.417 / (0.8 × 500kHz) ≈ 7.3µH。这个电感值下满载是CCM纹波率0.4纹波电流0.8A输出纹波主要由输出电容ESR决定。但是轻载时会怎样呢在0.1A负载下电感电流平均值只有0.1A而纹波电流还是0.8A纹波率r 0.8 / 0.1 8远超2所以0.1A时一定是DCM。实际临界负载电流为Icrit (Vin - Vout) × D / (2 × fsw × L) 7 × 0.417 / (2 × 500kHz × 7.3µH) ≈ 0.4A。也就是说负载大于0.4A时CCM小于0.4A时DCM。如果你希望全程CCM包括0.1A时也不断流那么电感值需要Lcrit_min Vout × (1 - D) / (2 × fsw × Iout_min) 5 × 0.583 / (2 × 500kHz × 0.1A) ≈ 29.15µH。这个电感体积会大很多动态响应也变差。大部分设计不会这么干而是允许轻载进入DCM换取电感和体积的优势。给一个快速经验值如果选型不确定先从满载纹波率r在0.3到0.5之间反推电感然后计算临界负载电流看它落在负载范围的什么位置如果临界点太高意味着大部分负载区间都在DCM需要增大电感如果临界点太低意味着轻载DCM会很深需要考虑最小负载时的输出电压纹波是否超标。按这个流程走一遍电感基本就定下来了。3.3 器件选型的连锁反应从电感看到MOS管和电容电感确定后下一步不是直接下单买电感而是算峰值电流和RMS电流这些值会决定电感饱和电流、MOS管电流定额、输出电容ESR等一堆参数。电感峰值电流IL_peak Iout_max ΔIL / 2。以上面例子2A 0.4A 2.4A。电感饱和电流至少留20%到30%余量取3A以上比较安全。要注意饱和电流的测试条件很多国产电感标称饱和电流对应的电感下降量是30%这个余量要考虑进去。开关管的电流定额主要看峰值电流和结温还要注意高边管在DCM模式下每次开通都是从零电流开始不存在体二极管反向恢复问题但峰值电流大导通损耗按RMS电流算IL_rms ≈ sqrt(D × (IL_peak² IL_peak×ΔIL/3 ΔIL²/12) (1-D) × ...)。实际工程中用示波器或仿真器看灌电流波形更直观不需要手算这么详细。输出电容的选择要分情况看。CCM下纹波电压主要由ESR决定公式近似为ΔVout ≈ ΔIL × ESR但还要叠加电容充放电的积分纹波DCM下纹波由脉冲间隔内的电容放电决定计算复杂很多但ESR仍是主要部分。选电容时除了容值和耐压要看纹波电流额定值陶瓷电容和高分子钽电容在这方面表现好普通铝电解在DCM大纹波下容易过热。同步整流MOS管的死区时间也很关键。CCM下低边管导通时电流可能是负流向输入如果死区过长电流走体二极管反向恢复损耗很大死区太短又可能直通烧管。好在现代控制芯片内部都做了自适应死区选型时确认最低工作电压下的死区时序不矛盾即可。3.4 控制环路设计CCM和DCM补的是两套逻辑控制环路是很多人选完电感、电容之后才发现的问题。CCM下BUCK电路的小信号模型包含LC二阶极点电压模式控制的传递函数有一个双极点需要Type II或Type III补偿网络单位增益带宽一般取开关频率的1/10到1/5。峰值电流模式会把电流环等效成一阶系统补偿起来简单一些但要注意次谐波振荡问题一般需要斜坡补偿。DCM下电感电流在每个周期从零开始模式本质上是单极点系统低增益、大相位裕量环路更容易稳定但并环频率点和CCM完全不同。麻烦的是电路中同时存在两种模式满载时运行在CCM轻载时进入DCM如果补偿网络只按CCM设计切到DCM后环路特性变化可能导致输出瞬态响应变差严重时在模式切换点附近出现低频振荡。解决思路有三种。第一种是强制PWM通过芯片的FPWM模式让轻载时也保持CCM牺牲轻载效率换来环路一致性第二种是接受DCM但补偿网络要在两种模式下都能稳定最常用的方法是压低调零频率或者用COT控制芯片让控制环路对模式不敏感第三种是用变频控制芯片DCM和BCM下环路特性天然简单只在满载CCM附近稍微注意相位裕量。我实测下来COT控制芯片在DCM/CCM切换时表现最省心恒频PWM芯片则要花更多时间调环路参数。4. 常见问题与排查技巧实录4.1 模式判断的三个常见误区第一个误区是只看电感电流平均值是否大于零就判断CCM。实际判断必须看纹波电流是否触及零轴平均值大于零不代表整个周期内电流都大于零。最稳妥的办法是用电流探头直接观察电感电流波形或者用带DC偏置的罗氏线圈配合示波器看。第二个误区是认为同步BUCK一定工作在CCM。同步BUCK既可以通过过零检测进入DCM也可以强制让续流管继续导通产生负电感电流后者依然算CCM但电流是双向的。很多新手在轻载调FPWM模式时看到电感电流有负向部分以为电路出错了实际上这是正常现象。第三个误区是忽略启动阶段的模式变化。BUCK启动时输出电压很低占空比饱和电感电流很大可能从DCM直接冲进CCM甚至过流保护此时模式判断公式中稳态Vout关系不成立不能拿正常工作时的公式去套启动波形。我建议用示波器在启动瞬间同时抓Vin、Vout、电感电流防止启动尖峰把后级打坏。4.2 从CCM滑入DCM背后的环路稳定性问题这种问题最常见的场景是设备满载稳定运行突然把负载卸载到接近空载然后输出出现周期性波动或者听到啸叫。本质原因是模式切换点附近的环路增益和相位发生了剧烈变化还可能叠加PFM脉冲串和环路带宽的相互作用。排查时先确认是否真的滑入了DCM用电流探头看电感电流波形同时看开关节点SW的波形。如果SW波形出现“打嗝”式丢脉冲说明已经触发轻载模式。然后看输出纹波是高频纹波还是低频振荡高频纹波多半是PFM模式本身的特性低频振荡才需要考虑环路补偿。解决低频振荡一般从三处入手增大输出电容、降低环路带宽、或者开启强制PWM模式。如果是COT芯片适当增大电感可以减小纹波电流让临界负载点下移也能缓解模式切换带来的扰动。我曾经调试一块板卡轻载下输出一直在5V上下波动摆幅有80mV查了半天发现是补偿网络里的零点电阻取值过小导致模式切换后带宽升高调节改大一倍后稳定了。那种情况下加载到2A后方波加载测试完全正常但空载就露馅说明补偿参数要特别关注轻载工况。4.3 模式切换点与音频噪声的实战处理DCM模式下的音频噪声通常来自两类电感磁致伸缩和陶瓷电容压电效应。模式切换点设计得好不好直接决定轻载时会不会“吱吱叫”。一个非常实用的办法是在控制芯片允许的范围内调整模式切换阈值让它高于音频频率范围对应的负载值避免脉冲频率落在20Hz到20kHz之间。另一个办法是给模式切换加滞回窗口。如果没有滞回负载在切换点附近小范围波动时系统会频繁进出DCM和CCM可能引发周期性的脉冲群正好落在音频带听起来像呼吸灯一样循环叫。很多芯片的PFM电压阈值内部已经做了滞回但外部电路也要避免在反馈分压电阻上并联过大电容否则反馈延迟会让滞回失效。如果上面办法都解决不了还可以考虑使用非同步BUCK的肖特基二极管续流它的正向压降能起一点钳位作用DCM下电感电流归零后不会出现负电流振荡听感上往往比同步BUCK更安静。当然效率会有些损失看产品定位取舍。4.4 仿真和实测对照电感电流波形怎么看才准仿真阶段推荐用LTspice搭一个同步BUCK模型MOSFET用理想开关模型加上死区时间电感、电容用真实型号参数输入BUS电容放在靠近板端的地方。观察电感电流波形时把仿真时间设得足够长等电路进入稳态再看单个开关周期避免把启动瞬间的电流当成稳态波形。实测时最容易出的问题来自测量环路。普通示波器探头的地线夹直接接到开关节点附近会引入很大的地环路电感测出来的纹波波形全是尖刺根本看不出真实模式。测量SW节点电压用10×探头把接地弹簧夹到探针尖端测量输出纹波用同轴电缆过隔直电容或者用差分探头直接跨在输出电容两端。电流波形最好用电流探头如果实验室没有可以在电感引脚串一个小采样电阻但要注意采样电阻的寄生电感在高频下会影响波形真实性。仿真和实测对照时要注意仿真模型里的ESR值。很多仿真库里的理想电容ESR是零算出来的输出纹波会远小于实际值输出电容的ESR要按器件手册输入具体值才能让纹波波形和实测接近。把电感的DCR、电容ESR都补上仿真和实测通常能对到大概80%的水平剩下的差异一般来自PCB走线寄生参数。最后再分享一个小技巧拿到一颗BUCK IC先看它的负载电流范围和推荐感值再翻datasheet里关于轻载模式的部分确认它是强制PWM还是自动PFM。根据产品需求确定要不要允许DCM然后回过头用临界电感公式校验一遍绑定负载点和目标纹波。我在大量板上踩过坑之后形成的一个习惯是把电感取值和模式切换点写在设计评审表的第一页无论谁接手这板子都能快速搞清楚当时的设计意图。
返回列表