2、基础知识:待机功耗定义、功耗组成、sleep mode基本概念与分类
在Edge AI设备的研发与产品化过程中,待机功耗(Standby Power)往往是决定产品能否通过能效认证、延长电池续航、降低散热成本的关键指标。许多工程师在调试低功耗模式时,常常陷入“代码进了sleep但电流依然偏高”的困境,其根源在于对待机功耗的定义边界、功耗组成颗粒度以及sleep mode的分类逻辑缺乏系统认知。本章将围绕这三个基础维度展开,建立一套可量化、可拆解、可验证的功耗知识框架,为后续章节的驱动配置、时钟树裁剪与外设隔离策略打下理论基础。
2.1 待机功耗的定义与工程边界
核心原理:待机功耗并非一个单纯的物理量,而是一个与系统状态强相关的工程定义。从IEC 62301标准角度看,待机功耗指设备连接到供电电源上,但未执行任何主要功能(如AI推理、通信传输、传感器采样)时所消耗的有功功率。对于电池供电的Edge AI设备(如智能门锁、可穿戴设备、无线传感器节点),待机功耗通常以平均电流(μA)为度量单位,因为其工作电压相对固定(如3.3V或1.8V),电流更能直观反映电荷消耗速率。
工程上需要区分三个容易混淆的概念:关机功耗(Off-mode Power)、待机功耗(Standby Power)与空闲功耗(Idle Power)。关机功耗指设备完全断电(电池断开或PMIC关断)时的残余漏电;待机功耗指设备保持可唤醒状态但无任务执行时的功耗;空闲功耗则指CPU运行在低负载循环(如RTOS的IDLE任务)时的功耗。在Edge AI场景中,待机功耗的优化目标通常是将系统从空闲功耗(可能高达mA级)降至μA级甚至nA级。
2.2 功耗组成:从晶体管到系统级
核心原理:Edge AI设备的待机功耗可分解为四个层次:硅片级功耗(包括数字核心漏电、模拟IP静态电流、SRAM保持电流)、板级功耗(包括电源转换效率损耗、上拉/下拉电阻漏电、电平转换器静态电流)、外设级功耗(传感器在sleep模式下的自耗电、无线模块的深度睡眠电流)、唤醒路径功耗(RTC振荡器、GPIO中断检测电路、电源管理单元的常开电源域)。
| 功耗组成 | 典型量级(3.3V系统) | 主要影响因素 | 优化手段 |
|---|---|---|---|
| MCU Deep Sleep电流 | 1-10 μA | 工艺节点、保留RAM大小 | 选择低漏电工艺、裁剪保留内存 |
| RTC + 32.768kHz振荡器 | 0.5-3 μA | 振荡器类型(外部晶振 vs 内部RC) | 使用低功耗晶振、间歇式计时 |
| 电源管理IC静态电流 | 2-20 μA | LDO vs DC-DC、空载功耗 | 选择低Iq的PMIC、关闭不必要LDO |
| 传感器自耗电 | 0.1-10 μA | 传感器类型、sleep模式配置 | 硬件使能引脚控制、轮询供电 |
| 板级漏电(电阻/电容) | 0.1-5 μA | 上拉电阻阻值、PCB清洁度 | 使用高阻值上拉(≥100kΩ) |
操作流程:进行功耗拆解时,建议采用“逐级断开法”:① 先测量整板待机电流;② 断开传感器供电(通过跳线或GPIO控制),记录电流差值;③ 断开无线模块电源,再次记录;④ 最后仅保留MCU最小系统(MCU + RTC + 电源),得到核心待机电流。通过这种减法,可以快速定位功耗异常点。
2.3 Sleep Mode的分类与选择逻辑
核心原理:不同MCU厂商对低功耗模式命名各异(如STM32的Sleep/Stop/Standby、ESP32的Modem-sleep/Light-sleep/Deep-sleep、nRF52的System ON/System OFF),但本质上可归纳为四个等级:Sleep(浅睡)、Deep Sleep(深睡)、Hibernate(休眠)、Shutdown(关断)。分类的核心维度有三个:CPU状态、时钟状态、RAM保持能力。
- Sleep(浅睡):CPU时钟停止,但外设时钟(如定时器、UART)可继续运行,RAM完全保持。唤醒时间极短(μs级),适合需要频繁唤醒(如100ms周期)且对响应时间敏感的场景。典型功耗:mA级(取决于外设时钟频率)。
- Deep Sleep(深睡):主时钟关闭,仅保留低速时钟(如32.768kHz RTC),RAM保持但外设大部分断电。唤醒时间约几十μs至几百μs。典型功耗:μA级(1-10μA)。适合秒级唤醒周期。
- Hibernate(休眠):RAM掉电,仅保留RTC和唤醒逻辑。唤醒后系统从复位向量重新执行,需重新初始化所有外设。唤醒时间ms级。典型功耗:百nA至1μA。适合分钟级唤醒周期。
- Shutdown(关断):除唤醒引脚(如外部中断、RTC闹钟)外,所有电源域关闭。功耗最低(nA级),但唤醒后相当于冷启动。适合极低功耗且唤醒频率极低的场景(如电池供电的资产追踪标签)。
案例拆解:以一款电池供电的AI语音唤醒设备为例,其工作周期为:每200ms进行一次语音检测(每次耗时20ms,工作电流50mA),其余时间处于待机状态。若采用Sleep模式(待机电流2mA),平均功耗为:50mA×(20/200) + 2mA×(180/200) = 5mA + 1.8mA = 6.8mA。若采用Deep Sleep模式(待机电流10μA,但唤醒恢复需额外5ms,恢复期间电流为10mA),平均功耗为:50mA×(20/200) + 10mA×(5/200) + 0.01mA×(175/200) = 5mA + 0.25mA + 0.00875mA ≈ 5.26mA。虽然Deep Sleep更优,但若唤醒周期缩短至50ms,则Deep Sleep的恢复开销占比增大,平均功耗可能反超Sleep模式。因此,必须基于实际唤醒周期建立功耗模型,而非简单选择最低功耗模式。