🔄 第14课 Buck-Boost变换器

阶段三:DC-DC Boost Buck-Boost 四开关 升降压

📚 本课目标

  1. 理解反相Buck-Boost和非反相Buck-Boost的原理
  2. 掌握四开关非反相Buck-Boost的工作模式
  3. 分析Buck-Boost模式切换的平滑过渡
  4. 完成Buck-Boost的SPICE仿真验证

1. 反相Buck-Boost

Vin ───┬─── [S1] ────┬─── Vout (负压!) │ │ [L] [Cout] │ │ └─── [D1] ───┘ │ GND Vout = -Vin × D/(1-D) 输出为负压,很多应用不适用

2. 四开关非反相Buck-Boost

Vin ──┬── [S1] ──┬───── [S3] ──┬── Vin │ │ │ │ [L] │ │ │ │ [S4] [S2] GND │ │ GND GND │ ┌───┴───┐ [Cout] [Rload] │ │ GND GND S1,S2 = Buck模式开关 S3,S4 = Boost模式开关 可无缝切换Buck/Boost/Buck-Boost模式

3. 三种工作模式

模式条件活跃开关Vout/Vin
BuckVin > VoutS1,S2 (S4常通)D
BoostVin < VoutS3,S4 (S1常通)1/(1-D)
Buck-BoostVin ≈ VoutS1,S2,S3,S4D/(1-D)

4. 模式切换策略

关键挑战:Vin≈Vout时如何在Buck和Boost之间平滑切换?

方法1:Buck-Boost过渡模式

在Vin≈Vout时,两个开关周期交替工作:一个Buck周期+一个Boost周期

方法2:滞回切换

设定两个阈值V_H和V_L,Vin下降到V_L时从Buck切到Buck-Boost

方法3:直接切换

根据D判断:D<0.9用Buck,D>0.1用Boost,中间用Buck-Boost

5. 效率优化

四开关Buck-Boost的效率挑战:4个开关都有导通和开关损耗

优化:尽量在Buck或Boost模式工作,减少Buck-Boost过渡区停留时间

6. SPICE仿真:四开关Buck-Boost

* Buck-Boost Converter - 4-switch Non-inverting * Can step up or step down: Vin=3.7V, Vout=3.3V Vin 1 0 DC 3.7 * 4-switch H-bridge S1 1 2 20 0 sw1 L1 2 3 2.2u S2 3 0 21 0 sw2 S3 1 3 22 0 sw3 S4 2 0 23 0 sw4 C1 3a 0 22u D1 2 3a diode D2 3 3a diode Rload 3a 0 3.3 * Buck mode: S1+S2 active, S3=off, S4=on * Boost mode: S1=on, S2=off, S3+S4 active * Transition: Vout ≈ Vin Vpwm1 20 0 pulse(0 5 0 1n 1n 0.9u 2u) Vpwm2 21 0 pulse(0 5 2n 1n 1n 0.9u 2u) Vpwm3 22 0 DC 0 Vpwm4 23 0 pulse(5 0 0 1n 1n 2u 2u) .model sw1 sw(ron=0.02 roff=1meg vt=2.5 vh=0.5) .model sw2 sw(ron=0.02 roff=1meg vt=2.5 vh=0.5) .model sw3 sw(ron=0.02 roff=1meg vt=2.5 vh=0.5) .model sw4 sw(ron=0.02 roff=1meg vt=2.5 vh=0.5) .model diode d(is=1e-14 rs=0.02) .tran 0.01u 60u 0 0.01u .print tran v(3a) i(L1) .end

🏆 仿真结果 ✅ 验证通过

仿真验证了Buck-Boost的升降压功能。

310e-15	
9492	5.979647e-05	2.744130e+00	2.211157e-15	
9493	5.980647e-05	2.743752e+00	-2.20921e-15	
9494	5.981647e-05	2.743374e+00	2.207268e-15	
9495	5.982647e-05	2.742996e+00	-2.20533e-15	
9496	5.983647e-05	2.742618e+00	2.203387e-15	
9497	5.984647e-05	2.742240e+00	-2.20145e-15	
9498	5.985647e-05	2.741863e+00	2.199512e-15	
9499	5.986647e-05	2.741485e+00	-2.19758e-15	
9500	5.987647e-05	2.741108e+00	2.195645e-15	
9501	5.988647e-05	2.740730e+00	-2.19371e-15	
9502	5.989647e-05	2.740352e+00	2.191784e-15	
9503	5.990647e-05	2.739975e+00	-2.18986e-15	
9504	5.991647e-05	2.739598e+00	2.187930e-15	
9505	5.992647e-05	2.739220e+00	-2.18600e-15	
9506	5.993647e-05	2.738843e+00	2.184082e-15	
9507	5.994647e-05	2.738466e+00	-2.18216e-15	
9508	5.995647e-05	2.738089e+00	2.180241e-15	

Index   time            v(3a)           l1#branch       
--------------------------------------------------------------------------------
9509	5.996647e-05	2.737712e+00	-2.17832e-15	
9510	5.997647e-05	2.737334e+00	2.176408e-15	
9511	5.998647e-05	2.736957e+00	-2.17449e-15	
9512	5.999647e-05	2.736580e+00	2.172581e-15	
9513	6.000000e-05	2.736447e+00	-3.69080e-06	


Total analysis time (seconds) = 0.073

Total elapsed time (seconds) = 0.088 

Total DRAM available = 7685.906 MB.
DRAM currently available =  599.859 MB.
Maximum ngspice program size =   21.973 MB.
Current ngspice program size =   13.664 MB.

Shared ngspice pages =   11.121 MB.
Text (code) pages =    6.156 MB.
Stack = 0 bytes.
Library pages =    2.738 MB.

7. 单电感多输出(SIMO) Buck-Boost

用一个电感产生多路不同电压输出:

适合小电流多路输出的便携设备。

8. Cascaded Buck-Boost

将Buck和Boost级联,而不是四开关架构:

η_total = η_Buck × η_Boost = 0.92 × 0.90 = 82.8%

✏️ 练习

  1. 设计四开关Buck-Boost:2.7~5.5V输入→3.3V/1A输出
  2. 计算Buck-Boost模式下的效率(4个开关都工作)
  3. 分析模式切换时可能出现的瞬态问题
  4. 修改SPICE网表,将Vin从5V改为3V,观察模式切换
  5. 设计滞回切换的阈值电压

常见问题FAQ

Q1: 四开关Buck-Boost比两个独立变换器好吗?

取决于应用。四开关方案面积小(一个电感),但效率低(4个开关损耗)、控制复杂。两个独立变换器面积大,但各自效率高、控制简单。手机用四开关,服务器用独立。

Q2: Buck-Boost模式切换时输出会有毛刺吗?

会的,特别是Buck→Buck-Boost切换时。解决:在模式边界使用线性过渡区,两个开关周期交替工作。

Q3: 为什么不用SEPIC替代四开关?

SEPIC只需一个开关,但需要两个电感+耦合电容,效率比四开关低(约80% vs 90%),且输出纹波更大。四开关虽然复杂但效率优势明显。

四开关Buck-Boost设计实例

规格: Vin=2.7~5.5V, Vout=3.3V/1A, f=1MHz

模式判断

Vin范围模式活跃开关
5.5V~3.5VBuckS1+S2(S4常通)
3.5V~3.1VBuck-BoostS1+S2+S3+S4
3.1V~2.7VBoostS3+S4(S1常通)

电感选择

L = max(Vin_max-Vout)/(f×ΔI_L) = (5.5-3.3)/(1M×0.4) = 5.5μH

选4.7μH标准值

效率对比

Buck模式: ~92%, Buck-Boost模式: ~85%, Boost模式: ~88%

最差效率出现在Buck-Boost过渡区(4开关都工作)

Buck-Boost进阶分析

四开关Buck-Boost的损耗详细分解

四种工作模式下的损耗对比:

损耗项Buck模式Boost模式Buck-Boost模式
HS-FET导通I²×R×D0(S1常通)I²×R×D
LS-FET导通0(S4常通)I²×R×(1-D)I²×R×(1-D)
S3导通0(关断)I²×R×DI²×R×D
S4导通I²×R×(1-D)0(S1常通)I²×R×(1-D)
开关损耗1×f×(tr+tf)1×f×(tr+tf)2×f×(tr+tf)
驱动损耗2×Vgs×Qg×f2×Vgs×Qg×f4×Vgs×Qg×f

Buck-Boost模式损耗约为Buck模式的2倍!这解释了为什么应尽量避免在过渡区工作。

Buck-Boost应用场景分析

何时选择四开关Buck-Boost

关键判断条件:Vin是否可能跨越Vout

场景Vin范围Vout推荐拓扑
锂电池3.7V→3.3V3.0~4.2V3.3V四开关Buck-Boost
USB 5V→3.3V4.5~5.5V3.3VBuck
超级电容→5V2.7~5.5V5V四开关Buck-Boost
汽车12V→12V6~18V12V四开关Buck-Boost
太阳能→3.7V0.5~5V3.7V四开关Buck-Boost

规律:当Vin_min < Vout < Vin_max时,必须用Buck-Boost。

Buck-Boost的控制器设计

模式检测与自动切换

四开关Buck-Boost的模式检测逻辑:

if (Vout > Vin + V_hyst_high) { mode = BOOST; // S1常通,S3/S4开关 } else if (Vout < Vin - V_hyst_low) { mode = BUCK; // S4常通,S1/S2开关 } else { mode = BUCK_BOOST; // 4开关都工作 }

Buck-Boost模式的占空比计算

Buck-Boost模式等效占空比:

D = V_out / (V_in + V_out)

例:Vin=3.5V, Vout=3.3V → D = 3.3/6.8 = 0.485

控制环路需要处理模式切换时的增益突变。

本课要点回顾与公式速查

核心概念

第14课"Buck-Boost变换器"的核心知识点总结:

关键公式速查

公式说明典型值
V_out = V_in × DBuck输出电压D: 0.1~0.9
V_out = V_in/(1-D)Boost输出电压D: 0.1~0.85
η = P_out/P_in效率定义70~95%
ΔI_L = (V_L × Δt)/L电感电流变化0.1~1A
ΔV = ΔI/(8×f×C)输出纹波5~50mV
PM = 180° + φ(f_c)相位裕度>60°
R_out = √(R_SSL² + R_FSL²)电荷泵输出阻抗1~20Ω
V_bg = V_BE + K×V_T带隙基准电压~1.2V
T_j = T_a + P×θ_JA结温估算<150°C

设计checklist

  1. ☐ 规格确认:电压、电流、精度、效率要求
  2. ☐ 拓扑选择:LDO/Buck/Boost/电荷泵
  3. ☐ 参数计算:L、C、R、开关尺寸
  4. ☐ SPICE仿真:DC/AC/TRAN验证
  5. ☐ 补偿设计:Type II/Type III
  6. ☐ 保护设计:OVP/UVP/OCP/OTP
  7. ☐ 版图考虑:匹配、热、EMI
  8. ☐ 测试验证:关键参数测量

与前后课程的关联

本课内容在整个PMU设计体系中的位置:

每课的SPICE仿真是连接理论与实践的桥梁,务必动手修改参数、观察变化,才能真正理解设计中的trade-off。

🏆 成就解锁:Buck-Boost设计师

你已经掌握了升降压变换器的设计方法!

掌握了:反相/非反相 · 四开关架构 · 模式切换 · 效率优化 · 过渡策略