1. 电源架构概览:MCU供电需求分析

做MCU低功耗设计,电源架构是第一步。我见过不少工程师,一上来就盯着DC-DC芯片的datasheet看效率曲线,结果板子调出来纹波超标,或者某个电压域死活进不了低功耗模式。说白了,你得先搞清楚MCU到底需要什么样的电。

1.1 MCU的三类电压域

一个典型的MCU,内部至少有三个独立的电压域。它们对电源的要求完全不同。

电压域 典型电压范围 电流需求 纹波敏感度 典型场景
核心电压 (Vcore) 0.8V - 1.8V 数十mA ~ 数百mA 高 CPU运行、RAM保持
IO电压 (VddIO) 1.8V / 3.3V / 5.0V 数mA ~ 数十mA 中 GPIO、SPI、UART
模拟电压 (Vdda) 2.5V / 3.3V / 5.0V 数mA 极高 ADC、DAC、比较器

核心电压最麻烦。它电压低、电流大,而且对纹波极其敏感。我曾经在一个项目中,Vcore纹波只有30mVpp,但ADC采样值就是跳得厉害。后来发现是核心电压的开关噪声耦合到了模拟地平面。嗯,这里要注意,核心电压的纹波不仅影响CPU稳定性,还会通过衬底耦合干扰模拟电路。

关键指标:MCU进入低功耗模式时,核心电压通常需要降低到0.9V甚至0.6V。此时DC-DC能否稳定工作在轻载(μA级)下,是选型的第一道坎。

1.2 DC-DC与LDO:效率与纹波的取舍

你想想看,为什么不用一个LDO搞定所有电压?因为效率。LDO的效率约等于输出电压除以输入电压。3.3V转1.2V,效率只有36%。剩下的64%全变成热量。我见过一块板子,LDO烫得能煎鸡蛋。

DC-DC的效率可以做到85%以上,但它有开关噪声。这个噪声是硬伤。

特性 DC-DC (Buck) LDO
效率 (3.3V→1.2V) 85% - 92% 36%
输出纹波 10mVpp - 50mVpp < 1mVpp
负载瞬态响应 中等 (需补偿) 快 (带宽高)
轻载效率 低 (PFM模式可改善) 高 (静态电流决定)
PCB面积 大 (电感+电容) 小 (仅电容)
成本 高 低

怎么取舍?我的经验是:大压差、大电流用DC-DC;小压差、小电流或对噪声敏感的地方用LDO。 比如,电池供电的设备,3.7V锂电池转1.2V核心电压,必须用DC-DC。而ADC的参考电压,哪怕只有10mA,也建议用LDO。

个人习惯:我会在DC-DC输出后面再加一级LDO,给模拟电路供电。这样既保证了效率,又隔离了开关噪声。代价是多了几毛钱成本和一点点PCB面积,但换来的是稳定的采样值,值。

1.3 电源架构的典型拓扑

下面这张图是我常用的一个电源架构。它把DC-DC和LDO组合起来,兼顾效率和噪声。

典型MCU电源架构 电池/适配器 3.7V - 5.0V DC-DC Buck 效率 88% LDO 1.8V IO电压 LDO 1.2V 核心电压 LDO 3.3V 模拟电压 注意 DC-DC输出先经过 LC滤波,再进LDO 可进一步降低纹波

这个架构里,DC-DC先把电池电压降到3.3V左右,然后分三路:一路直接给IO供电,一路经过LDO降到1.2V给核心,还有一路经过高PSRR的LDO给模拟电路。为什么要先降到3.3V?因为DC-DC在中等输出电压下效率最高,而且3.3V到1.2V的压差由LDO承担,LDO的功耗可控。

避坑指南:我曾经在一个低功耗项目中,直接把DC-DC的输出接到MCU的Vdda引脚上。结果ADC在采样时,数值总是在最低位跳动。查了两天,发现是DC-DC的开关频率(2.2MHz)正好落在ADC采样带宽内。后来在DC-DC和Vdda之间加了一颗10Ω电阻和4.7μF电容组成的RC滤波器,问题解决。

1.4 效率与纹波的量化分析

选型时,不能只看datasheet上的典型效率。你得关注实际工作点。比如,MCU在休眠时电流只有10μA,但DC-DC在轻载下的效率可能只有30%。这时候,LDO反而更优。

我习惯做一个简单的效率估算表:

负载电流 DC-DC效率 (3.3V→1.2V) LDO效率 (3.3V→1.2V) 推荐方案
1 μA 10% - 20% 36% LDO
100 μA 40% - 60% 36% LDO (若静态电流允许)
1 mA 70% - 80% 36% DC-DC
10 mA 85% - 90% 36% DC-DC
100 mA 88% - 92% 36% DC-DC

看到没?在1mA以下,LDO的效率反而可能超过DC-DC。所以,不要迷信DC-DC。如果你的MCU大部分时间在休眠,偶尔醒来处理数据,那么用LDO供电核心电压,配合DC-DC给外设供电,可能是更优的方案。

我的经验:对于电池供电的IoT设备,我通常会在DC-DC的反馈电阻上并联一个MOSFET,在休眠时断开反馈通路,让DC-DC进入关断模式。然后由一颗超低静态电流的LDO(比如TPS7A02,Iq=25nA)维持MCU的休眠供电。这样,休眠功耗可以做到1μA以下。

1.5 纹波对MCU的影响

纹波不只是影响ADC。它还会影响时钟抖动。MCU内部的PLL对电源噪声非常敏感。我遇到过一个问题:MCU的SPI通信在高速模式下偶尔出错。用示波器一看,SPI时钟线上有周期性的抖动。追查下去,发现是DC-DC的开关噪声耦合到了PLL的供电引脚。在PLL供电引脚上加了一颗100nF的电容,问题消失。

不同电压域对纹波的容忍度:

  • 核心电压:纹波应小于5% Vcore。1.2V核心,纹波最好控制在60mVpp以内。超过这个值,CPU可能发生逻辑错误。
  • IO电压:纹波容忍度较高,10%以内通常没问题。但高速接口(如DDR、MIPI)除外。
  • 模拟电压:纹波应小于1% Vdda。3.3V模拟电压,纹波最好控制在30mVpp以内。对于高精度ADC(12位以上),建议控制在10mVpp以下。

嗯,这里要注意,纹波测量时,示波器的探头接地要短。我见过有人用长接地夹子测纹波,测出来100mVpp,换了短接地弹簧后,实际只有20mVpp。测量方法不对,会误导你的选型判断。

总结一下:电源架构没有银弹。DC-DC和LDO是互补的,不是对立的。你需要根据MCU的工作模式(活跃/休眠)、电流需求、噪声敏感度,灵活组合。下一节,我们会深入DC-DC的选型参数,看看那些datasheet上密密麻麻的指标,到底哪些才是真正重要的。