4、LDO核心电路设计(二):误差放大器(EA)设计、频率补偿策略(Miller补偿、零点补偿)、功率管尺寸计算
好,咱们接着聊LDO的核心。上一章我们把基准源和反馈网络理清了,这一章要啃的,是LDO真正的心脏——误差放大器(EA),以及让这颗心脏稳定跳动的频率补偿策略。最后,我们还得算算功率管该做多大。
说实话,这三块内容,任何一个没做好,你的LDO流片回来大概率就是个振荡器。我当年第一次独立设计LDO,EA的增益和带宽没匹配好,结果补偿网络调了整整两周,最后还是靠加了个零点才稳住。嗯,这些坑,今天咱们一次性说清楚。
4.1 误差放大器(EA)设计
误差放大器,说白了就是个高增益的差分放大器。它的任务很简单:把反馈电压VFB和基准电压VREF的差值放大,然后去驱动功率管。
但简单归简单,设计时有几个关键点你必须盯死:
- 增益(Av):决定了LDO的直流精度。增益不够,负载调整率和线性调整率都会变差。我个人习惯,EA的直流增益至少做到60dB以上,最好能到80dB。
- 带宽(GBW):决定了LDO的瞬态响应速度。带宽太窄,负载跳变时输出电压会掉得很惨。
- 摆率(SR):大信号响应能力。负载电流突变时,EA需要快速给功率管栅极充放电。摆率不够,输出会过冲或下冲。
- 输入共模范围:必须覆盖VREF和VFB的电压范围。
我常用的EA结构是折叠共源共栅(Folded Cascode)。为什么选它?因为它能在低电源电压下提供高增益,而且输出摆幅大。你想想看,现在的工艺电压越来越低,1.8V甚至1.2V,传统的套筒式共源共栅输出摆幅太小,根本没法用。
下面是一个典型的折叠共源共栅EA电路示意图:
// 简化版折叠共源共栅EA(NMOS输入对)
// M1, M2: 输入差分对
// M3, M4: 负载电流源
// M5, M6: 共源共栅管
// M7, M8: 尾电流源
VDD ----+----+----+----+
| | | |
M3 M5 M6 M4
| | | |
+----+ +----+
| | | |
M1 M7 M8 M2
| | | |
INN BIAS BIAS INP
| | | |
+----+----+----+
|
M9 (尾电流源)
|
GND
设计时,我会先定尾电流。尾电流决定了功耗和摆率。比如,如果LDO的负载电流最大是100mA,EA的尾电流我通常会取10-20µA。太小了,摆率不够;太大了,功耗受不了。
然后算输入对管的跨导gm。gm越大,增益越高,但寄生电容也越大,会影响带宽。这里有个trade-off,需要根据系统要求反复迭代。
4.2 频率补偿策略
LDO是一个多极点系统。EA的输出阻抗、功率管的栅极电容、输出电容和负载电阻,都会贡献极点。如果不做补偿,环路相位裕度很可能不够,LDO就会振荡。
我见过太多新手,LDO流片回来一上电,输出就在那抖啊抖的。一测相位裕度,只有20度。嗯,这就是没做好补偿的后果。
常用的补偿策略有两种:Miller补偿和零点补偿。很多时候,我们需要两者结合。
4.2.1 Miller补偿
Miller补偿的原理,是在EA的输出端(高阻抗节点)和功率管的输出端之间跨接一个电容Cc。这个电容会把EA输出端的极点往低频推(主极点),同时把功率管输出端的极点往高频推(次极点)。
说白了,就是把两个极点拉开。主极点变低,次极点变高,这样在单位增益带宽内,系统就只有一个主导极点,相位裕度自然就上去了。
Miller电容Cc的值怎么选?我有个经验公式:
Cc ≈ (gmp / gmea) * CL
其中:
- gmp:功率管的跨导
- gmea:EA的跨导
- CL:输出电容
这个公式能保证次极点大约在主极点的10倍频率以上。当然,这只是个起点,具体值还需要仿真微调。
4.2.2 零点补偿
零点补偿,就是人为地在环路中引入一个零点,来抵消掉一个极点,或者提高相位裕度。
常见的零点补偿方法有:
- ESR零点:输出电容的等效串联电阻(ESR)会引入一个零点。这个零点如果设计得当,可以很好地补偿次极点。但ESR受温度、工艺影响很大,不稳定。我建议不要完全依赖ESR零点。
- 调零电阻:在Miller电容Cc的路径上串联一个电阻Rz。这个电阻可以把RHP零点移到左半平面,甚至变成一个LHP零点,用来补偿次极点。
- 前馈电容:在反馈电阻Rf1上并联一个电容Cff。这个电容会在高频时短路反馈电阻,引入一个零点,提高高频增益和相位裕度。
我个人最喜欢的是调零电阻+Miller电容的组合。这个组合非常灵活,可以通过调整Rz和Cc的值,精确控制零点和极点的位置。
下面是一个带调零电阻的Miller补偿示意图:
EA输出 ---[Cc]---Rz--- 功率管栅极
|
GND
调零电阻Rz的值怎么算?
Rz ≈ 1 / (2 * π * fz * Cc)
其中fz是你想引入的零点频率。通常我会把零点放在次极点频率附近,或者略高一点。
4.3 功率管尺寸计算
功率管是LDO里最大的器件,没有之一。它的尺寸直接决定了LDO的驱动能力、压差电压(Dropout Voltage)和效率。
功率管通常用PMOS,因为它的压差小。NMOS也可以,但需要电荷泵升压,增加了复杂度。
计算功率管尺寸,核心是算宽长比(W/L)。公式如下:
Iout_max = (1/2) * μp * Cox * (W/L) * (Vgs - Vth)^2
其中:
- Iout_max:最大负载电流
- μp:空穴迁移率
- Cox:单位面积栅氧化层电容
- Vgs:栅源电压(通常等于VDD - Vout)
- Vth:阈值电压
但实际设计中,我们更关心压差电压Vdropout。压差电压就是功率管进入线性区时的最小VDS。对于PMOS功率管,Vdropout ≈ VSD,sat = VSG - |Vth|。
举个例子:如果VDD=3.3V,Vout=2.8V,那么VSG = VDD - Vout = 0.5V。假设|Vth|=0.4V,那么Vdropout = 0.5 - 0.4 = 0.1V。这个压差已经很小了。
但问题是,0.5V的VSG,功率管能提供足够的电流吗?我们来算一下:
假设 Iout_max = 100mA
μp * Cox = 50 μA/V^2 (典型值)
Vgs - Vth = 0.5 - 0.4 = 0.1V
W/L = (2 * Iout_max) / (μp * Cox * (Vgs - Vth)^2)
= (2 * 0.1) / (50e-6 * 0.1^2)
= 0.2 / (50e-6 * 0.01)
= 0.2 / 5e-7
= 400,000
W/L = 400,000!这个数字很大。如果L取0.5µm,那么W = 200mm。这在实际芯片里是很大的面积。
所以,功率管通常需要分叉(Finger)设计,把一个大管子拆成很多个小管子并联,以减小栅极电阻和寄生电容。
另外,功率管的栅极电容Cgg也很大,会严重影响EA的带宽和功耗。Cgg ≈ W * L * Cox。对于上面的例子,Cgg ≈ 200mm * 0.5µm * 5fF/µm² = 500pF。这个电容,EA要驱动它,功耗小不了。
所以,设计功率管时,我通常会先根据压差要求算出一个最小W/L,然后仿真验证,如果带宽不够,就适当减小W/L(牺牲一点压差),或者增大EA的偏置电流。
下面是一个功率管尺寸设计的流程总结:
1. 确定最大负载电流 Iout_max
2. 确定允许的最大压差 Vdropout_max
3. 根据 Vdropout_max 计算 Vgs_min
4. 用饱和区电流公式计算最小 W/L
5. 考虑工艺角和温度,留 20-30% 的余量
6. 分叉设计,优化栅极电阻和寄生
7. 仿真验证:压差、带宽、瞬态响应
8. 如果带宽不够,增大 EA 电流或减小 W/L
好了,这一章的内容就到这。下一章我们聊聊LDO的噪声分析和PSRR优化,那又是另一番天地。