第一章 从buck开始的DCDC学习之路
前言
文如其名,广义的DCDC泛指一切直流转直流电源(即Direct Current)。不过为了区分线性电源LDO(low dropout regulator),狭义上又将DCDC代指开关电源,被最基本的分成了降压(Buck)、升压(boost)两种的拓扑。尽管网络上有很多详细的文章对其进行了分析推导,但对于一些细节总是有种似是而非的感觉,还是决定从头推导记录下,不足之处希望大家多多指正了!
–
一、buck基本原理
为什么叫作Buck型拓扑呢?从网上搜到buck down有降压之意,倒也恰如其分了。不过说到降压,其实可以直接用两个电阻进行分压的,为什么还要多此一举再设计出这样的结构呢?想到了电阻虽然实现了分压,但同时也消耗了能量,作为热量耗散出去。与之相对,理想的电感电容以及作为理想开关的MOS或晶体管则不会消耗能量,而是作为电磁能向下一级传递过去;尽管不存在理想的元器件,它们总是会不可避免的存在着寄生效应,但只要合理的设计(包括工艺制造和具体的电路),是可以很大程度上避免能量的消耗进而提高效率的。
而最基本的buck型大致如图一所示,当Q1导通时,Vin便从MOS经L1到输出端(红圈1);当Q1关闭时,由于电感电流不能突变,便经过D1形成回路(绿圈2)。只要给开关管合适的周期性信号,便能够得到想要的输出了,怎样才是合适的呢?以一个周期T为例,记Q1导通的时间为ton,关断的时间为toff,便有:
T = ton + toff (1)
电感特性方程,即V = L*di/dt;而对于稳定的电路,就像水管一样,输入多少,就流出多少,那么在开启与关闭MOS阶段,便有一个伏秒平衡的关系了:
(Vin - Vo) * ton = (Vo + Vd) * toff (2)
即 ton / T = (Vo + Vd) / (Vi + Vd) (3)
如此看来输出电压,就只和占空比有关了,且因为占空比小于1,便只能实现降压了。
图一
二、凭芯而论
尽管从未进行过流片,却总是禁不住想去知道它到底是怎么产出的。所以决定尝试着不考虑工艺的情况下,怎样将上面简单的原理一步步扩充为一个能够使用的芯片的,就以之前用过的一款长工微的芯片扩充的引脚来浅浅的尝试一下吧(图二):
图二
1.同步与异步
从输入端Vin到输出端Phase之间的MOS对应了图一中的Q1,没有电感是因为没有内部集成,变需要额外去选取。再往GND来看也是一个MOS,并不是图一中的二极管,为什么要这么设计呢?
首先是二极管导通时会有0.4V左右的压降,一旦后端电流较大,其损耗会比较大;用MOS则因为导通时的低电阻,毫欧级别,从而提高了效率。而且当输出电压越小时,二极管的导通时间越长,这种效率的差异越明显。当二极管替换后,则公式(3)便成为:
*ton / T = Vo / Vi *(4)
此时就区分出了同步和异步两种概念,个人理解其差别其实就在于是否同步控制两个开关管,二极管跟MOS控制方式不同所以有二极管的为异步,全MOS的为同步。而对于同步电路,高边管和低边管会有同时导通的可能性,相当于对地短路进而导致MOS损坏;为规避这种问题,设计上一般会让上管和下管导通存在延时,这段时间就是“死区时间”。具体的一种实现方式可参考下面的文章
用于降压型DCDC转换器的死区时间控制电路
2.电容电感选取
2.1自举电容
看框图发现在驱动电路还向外引出了一个BST引脚,它和脚Phase通常会被推荐加的电容,便被称为自举电容,目的就是举高电压,维持高边MOS的导通。
如果没有这个电容会怎么样呢?假定某时刻给上边MOS高电平的脉冲,下边MOS则处于截止状态,前者源极便处于悬浮状态,上管导通的瞬间就会使源极电压达到和漏极近似的幅值,这样就导致上管开启的状态无法保持。而自举电容则利用电容两端电压不突变的原理,实现了“举高”栅极电压以保持高管开启的作用。至于低边管则因为源极电压为零,只需要驱动电压大于阈值就可以保证打开了。
一般情况下手册上都会写有自举电容的值,在纳法到微法之间,这个值怎么算出的呢?对电容特性方程有i = C*dv/dt,且因为要保持MOS的导通,则栅源间的电压需满足dv >= Vt,则电容必有一个上限;在器件选型时,芯片的通流能力也很关键,即电流有一个最小值,则电容便有一个下限。事实上对于DCDC电源,电压与电流取值基本都在零点几到十几之间,而频率则从几K到一兆之间,所以电容的选取则主要跟频率相关了。当然具体的值也可以根据手册中提供的门极电荷曲线图,由其中的电压电荷直接计算。
以上内容是建立在两个MOS都是N型的情况,想来也可以将高管换成PMOS而略去自举电容的选取。
2.2输出电容
既然提到自举电容,不妨将DCDC中另外两处用到的电容一起回顾下。电源芯片作为一个中转站,既要考虑其输入侧对内部电路的影响,也要尽可能输出稳定的信号给负载;针对这两种情况,在电容上的设计便可分成输入电容和输出电容,分别由输入、输出侧电流和对应变化的电压ΔV(也叫作纹波电压)来确定。
从理论上讲,电容的实际等效模型如下:
图三
记ic为电容的平均电流,则有
ΔV = Q / C + ic * ESR (5)
从电源芯片的输出端来看,当负载R确定后,输出的平均电流就能确定下来即Io=Vo/R;而因为MOS不停开关,将会引起电流的变化(记为Δi),且根据伏秒平衡关系得到
Δi = (Vin - Vo) * ton / L (6)
结合公式(4)可推导出:
Δi = Vo / Vi * T * (Vin - Vo) / L (7)
根据KCL,输出电容的平均电流Δi /2;且稳定情况下,电容的充电电荷必然等于放点电荷量,即电容的等效平均电流为零,则必然有Q =1/2* ic * T/2 = Δi * T / 8(8)
一般情况下,输出电压变化值要根据其后端输入的电压变化要求,或者没要求时取输出电压的3%~5%,记为ΔVomax,则对输出电容Co和其寄生电阻ESRo来说需满足:
Co > Vo * (Vin - Vo) * T^2 / (8 * ΔVomax * Vin) (9)
ESRo < ΔVomax * Vin * L / (Vo * T * (Vin - Vo)) (10)
2.3输入电容
从输入端来看,当Q1关闭时,输入电容充电;反之,则电容放电。又因为电路稳定时,电容的充电量必然等于放电量,则只需要较为简单的Toff时间段了。取输入侧平均电流为Ii,输出侧电流为Io(一般根据后端芯片输入要求来确定),芯片的工作效率为η(一般能根据手册中的曲线图得到),则有
Ii = Vo * Io / (Vi *η)(11)
根据式4可得到 Toff = (Vi - Vo) * T / Vi (12)
记输入侧最大电压变化量为ΔVimax,再结合电容特性方程和式(5)可以得到输入电容Ci和其寄生电阻ESRi需满足:
Ci > Vo * Io * (Vi- Vo) *T /(Vi^2 * η * ΔVimax) (13)
ESRi < ΔVimax * Vi * η / (Vo * Io) (14)
从结果来看,不管是输入侧还是输出侧所需的电容都应该满足“大容量,小ESR”这两个特点。而由于实际的电容还要受温度等诸多环境因素的影响,在设计中自然需要留有裕量,除非是板子尺寸很小,否则多放几个电容对电源的稳定性总是有些好处的。不过是否会出现过犹不及的情况呢?目前还未遇到过,毕竟在成本、尺寸的限制下,设计上一般不可能出现过量的情形,如果真遇到,后面再分析记录下吧。
2.4前馈电容
关于前馈电容的介绍可以看这篇文章DCDC电路中的前馈电容。
这里顺便记录下自己之前遇到的一个问题:当时用的一款芯片给usb供电,但插上去负载设备却开不了机,去除了前馈电容便正常了。
2.4电感
由于电感的特性,变化的电流Δi满足:
Vi - Vo = L * Δi / Ton(15)
因为芯片手册对纹波电流有一个最大的要求,记为Δimax,则电感应满足:
L >= (Vi - Vo) * Vo * T / Δi * Vi(16)
另外选型电感时还有要考虑的一点是它的通流能力,以避免其达到饱和导致电感量下降而导致电流变化过快,要么会烧坏芯片,要么会导致负载芯片出现各种奇怪的问题。
3、反馈控制
此引脚通过两个电阻(去上端电阻为R2,下端为R1)来实现对输出电压的控制,即:
Vo = Vfb* (1 + R2 / R1)
当第一次看到这个关系时,很奇怪Vfb为什么是一个恒定值,或者说运放反向端为什么会有一个不变的Vref,后面查资料了解到带隙基准电路利用半导体自身的特性实现了这种功能。另一个好奇的点是R1和R2究竟该取多大的值,首先考虑到反馈回路会消耗能量,那么电阻值就不能太小,而如果无限大等同于开路必然也不能实现控制输出的功能,则电阻必有一个区间。但总不能以如说的态度来做设计,看前人的经验基本都建议取值要满足50KΩ≤R1+R2≤500KΩ,根据一般是来自数据手册中的曲线图。