功耗预算实战示例:从「用三年」倒推每一微安
更新时间:2026-09-15。本文是「集成电路大类 · 低功耗设计与验证」入门层系统篇第 44 篇,也是入门收官的实战篇。前面 43 篇讲了器件、架构、流程、测量、趋势;这一篇把它们用在一个工程师最常接到的任务上:产品经理说「这颗纽扣电池要撑三年」,你怎么把这句话变成每个模块的电流指标、再变成可验收的预算表?我们用一个贯穿全文的虚拟项目完整走一遍。系统地图见低功耗导读。
项目设定
- 产品:室内环境传感器节点(温湿度+按键),一颗 CR2477 纽扣电池供电;
- 功能:每 10s 采样一次温湿度;每 60s 攒批后 BLE 广播上报一次;任意时刻按键可唤醒;
- 寿命目标:≥3 年;工作温度 0~40°C;
- 待选硬件(数据按常见低功耗器件手册量级取,仅教学):MCU 跑 1MHz 时 active 1.2mA、deep sleep(RAM retention+RTC)1.2µA;温湿度传感器转换中 210µA、待机 0.1µA;BLE 芯片发射平均 6mA(0dBm)、睡眠 0.9µA;LDO 静态电流 Iq 0.6µA。
第一步:从寿命倒推总平均电流预算
CR2477 标称容量约 1,000mAh,但工程上不能用满:
- 自放电与日历衰减、低温容量缩水、电池电压跌到截止电压前的可用比例,合计打八折,取有效 800mAh;
- 3 年 = 3×365×24 = 26,280 小时;
- 允许的平均电流 = 800mAh ÷ 26,280h ≈ 30.4µA。
这就是总预算。再预留约 20% 给板级漏电、离散性和后期功能膨胀,工程内部分配目标 ≈ 24µA。注意:能量与功率讲过的口径在这里体现为——电池按容量(电荷量)卖,寿命由时间平均电流决定,峰值本身不直接耗寿命,但峰值的积分和它引发的电池压降会。
第二步:把每个事件折成平均电流
预算表的核心公式只有一个:事件平均电流 = 事件电流 × 事件时长占空比;常驻电流直接全时计入。先按功能需求列首版时间线:
| 项目 | 电流 | 单次时长/频率 | 占空比 | 折合平均电流 |
|---|---|---|---|---|
| MCU active(采样+打包) | 1.2mA | 5ms / 10s | 0.0005 | 0.60µA |
| 传感器转换 | 210µA | 2ms / 10s | 0.0002 | 0.042µA |
| 传感器待机 | 0.1µA | 常驻 | 1 | 0.10µA |
| BLE 发射(广播+连接) | 6mA | 3ms / 60s | 0.00005 | 0.30µA |
| BLE 睡眠 | 0.9µA | 常驻 | 1 | 0.90µA |
| MCU deep sleep(retention+RTC) | 1.2µA | 常驻 | 1 | 1.20µA |
| LDO Iq | 0.6µA | 常驻 | 1 | 0.60µA |
| 板级漏电/上拉(估) | 0.5µA | 常驻 | 1 | 0.50µA |
合计 ≈ 4.24µA——看起来远低于 24µA?先别高兴,这里埋了新手最常犯的错误,下一步专门拆。
第三步:把「看不见的固定开销」补回来
上表只算了理想波形,真实 BLE 栈和系统有大量固定成本被漏掉:
- BLE 不是发完就睡:每次广播事件有前置的晶振起振、射频预热、协议栈在主 MCU 上的运行(保守按每次事件附加 MCU active 10ms、BLE 接收窗 2ms@3mA):60s 一次折合 (1.2mA×10ms+3mA×2ms)/60s = 0.30µA。
- RTC/看门狗/ brown-out 等常规模拟:低功耗 MCU 数据手册的 1.2µA 通常只覆盖特定配置;开着 BOR、多个定时器、LDO 高模式时常涨到 2~3µA,按 2.2µA 重列(多 1.0µA)。
- 按键检测上拉/分压:若用 100kΩ 电阻对 3V 常耗 30µA——一项就能打死全部预算。必须改成按键一端接地、内部上拉仅在睡眠前短暂使能,或用专用低功耗按键 IC(修正为 0.1µA)。
- 传感器供电直挂电池:待机 0.1µA 尚可,但若选了待机几 µA 的型号,必须加负载开关(见外设功耗),不用时断电。
- 制造公差与温度:40°C 下漏电/Iq 普遍翻倍,最差角预算要单列。
- 电池有效容量随平均电流变化:纽扣电池在持续小电流下容量较好,但若系统频繁脉冲抽取,有效容量还会再降;且脉冲瞬间电池内阻+接触电阻会造成压降(见实测篇的 shunt 与电压跌落讨论),可能触发 BOR 复位——要在储能电容(10~47µF)上验证。
重算后典型角约 5.8µA、最差角(高温+公差)约 9µA,仍在 24µA 目标内——这个设计的能效瓶颈不在「干活」,而在睡眠和外设选型,这是占空比类产品的普遍规律(参见 MCU 低功耗的睡眠电流主导论断)。
第四步:反向验算寿命与最差角
把最终预算代入寿命方程复核:
- 典型角平均 ≈ 5.8µA → 800mAh÷0.0058mA ≈ 137,931h ≈ 15.7 年(远超标,说明这个功能负载对 CR2477 其实轻松;真实产品此时常会被追加功能——更频繁上报、屏幕、更大电池缩成本——预算表正是谈判依据);
- 最差角(高温漏电×2、公差、上拉修正后)按 9µA → 约 10 年,仍满足;
- 做一个更激进版本的假设:若 BLE 每分钟还要维持一次连接事件(接收窗口大增)、并增加每秒采样,重算可能跳到 35~50µA——此时 800mAh 只够 1.8~2.6 年,不达标,必须改功能或换电池,这就是预算表在项目早期拦住架构返工的价值。
峰值校验:BLE 6mA 脉冲下,纽扣电池内阻+走线+保险电阻合计若 150Ω,压降达 0.9V,可能从 3.0V 跌到 2.1V 触发 BOR。对策:并 22~47µF 储能电容提供瞬态电流(电容提供 Q=CΔV:47µF×0.3V=14µC,对 6mA×3ms=18µC 的脉冲勉强,需要实测微调),或在发射瞬间软件先把其他负载暂停。平均电流过了但峰值复位,是电池类产品极常见的首发问题。
第五步:预算表怎么写成团队契约
一张能落地的功耗预算表至少包含这些列:
| 列 | 内容 |
|---|---|
| 模块/模式 | 如 MCU sleep(retention)、BLE TX |
| 典型值/最差值 | 引用数据手册页码与测试条件(电压、温度、频率) |
| 触发频率与时长 | residency/占空比假设,注明由谁保证(固件/OS) |
| 折合平均电流 | 公式可追溯,别只填结论 |
| 责任方 | 芯片/板级/固件/系统,超标时知道找谁 |
| 验收方式 | 实测点、电流探头量程、统计窗口(见功耗怎么测) |
配套纪律:
- 预算评审与功能评审同步冻结,功能增删必须重算预算行;
- 区分典型角(25°C、新电池)与保证角(高温、老化、低电量),规格承诺基于保证角;
- residency 假设要变成固件里可读的计数器(各低功耗态驻留时间、发射次数),实测对账(方法见功耗异常排查);
- 硅前用 DPA/emulator 对芯片侧行项给早期数字,板级行项(漏电、上拉)只能靠经验和实测。
第六步:预算超标时的砍价顺序
当真要从 50µA 砍到 24µA,按「性价比」排序(综合低功耗手段全景):
- 杀常驻漏电(收益线性、无功能代价):换低 Iq LDO、加负载开关掐传感器待机、审查每一颗上拉/分压——本例中一个电阻就能差 30µA;
- 拉长事件周期/合并事务:上报间隔翻倍直接砍半事件能量,代价是数据新鲜度,产品决策;
- 加深睡眠档:retention 范围缩到最小、关 BOR/模拟模块、停 PLL(代价见各模式分析待机睡眠模式);
- 降频降压跑活动态:活动占空比低时收益小(本例 MCU 干活只贡献 0.6µA),别在这浪费时间——先砍大头是预算工程的第一直觉;
- 换电池/换能量来源:规格实在放不下时升级到 CR123/AA,容量可达数倍;或评估能量采集(见能量采集入门)。
七、硅前预算与硅后对账:数字从哪来
预算表里每行数字在项目不同阶段由不同来源填,理解成熟度曲线才能正确使用它们:
| 阶段 | 芯片侧数字来源 | 可信度 | 用法 |
|---|---|---|---|
| 架构/投标 | 上代芯片实测、供应商参考、电子表格模型 | ±50% | 定电池容量和功能边界 |
| RTL 冻结 | 综合功耗估算+向量翻转率(低功耗 RTL验收报告) | ±30% | 冻结睡眠态配置和门控目标 |
| 门级/物理 | 门级 DPA(DPA)、带 SPEF 的签核分析 | ±15% | 确认硅内各模式电流 |
| 长软件场景 | emulator 活动率回注(仿真器功耗) | 趋势可信 | residency 设计、固件策略 |
| EVB/回片 | 电源分析仪实测(功耗怎么测) | 金标准 | 预算表逐行签收 |
经验:板级漏电、外设待机、Iq 这三行在硅前几乎无法精确预测,预算阶段应给保守上限;芯片数字反而通常是最早收敛的。
八、一个简化预算模板(可直接改用)
项目:____ 电池:____ 标称 ____ mAh / 有效系数 ____ / 有效容量 ____ mAh
目标寿命:____ 年(____ h)→ 平均电流预算 Iavg = ____ µA;内部目标(×0.8):____ µA
| 模块·模式 | I典型 | I最差(高温/老化) | 时长/频率 | 占空比 | 平均电流(典型) | 平均电流(最差) | 责任方 | 验收来源 |
|-----------|-------|-----------------|-----------|--------|----------------|----------------|--------|----------|
| | | | | | | | | |
合计(典型/最差):________
峰值事件校验:Ipeak=____,回路电阻=____,ΔV=____ vs BOR/截止电压裕量 ____
结论:□ 达标 □ 需优化,超支行:________,砍价措施:________填表纪律:所有数字带单位和条件;公式格保留(=I*duty),禁止只填结论;每次硬件/固件里程碑复测重签。
九、这个例子的变奏
同一套方法换场景时只改三类参数:
- 可充电设备(手表/耳机):容量换成「日均耗电预算」=电池容量/期望充电周期,峰值校验加上充电热限制;
- 手机级产品:预算按场景拆(待机、亮屏、视频、游戏、通话),每行是组件功耗×场景 residency,汇总出小时续航,residency 假设来自真实用户日志而非想象(方法见 CPU 电源管理);
- 市电设备/数据中心:电流预算变成功率预算并沿供电链乘效率、乘 PUE(见数据中心功耗);
- 无电池设备:容量换成日均采集能量,约束变成能量中性(见能量采集入门)。
预算思维的内核不变:从一个硬约束(寿命/充电周期/供电配额/日采集量)出发,把总预算分到可负责的最小单元,再用实测闭环。
- 直接拿标称容量除电流:不扣自放电、低温、截止电压,寿命估算虚高 20%~40%。
- 只算平均不算峰值:电池内阻压降导致复位;脉冲负载容量折减也被忽略。
- 手册最小值当典型值:数据手册常给「所有外设关闭」的精选配置,实际工程配置要自己实测。
- 占空比算错 1000 倍:ms/s、µA/mA 混用是预算表最高发算术事故,公式列必须保留单位。
- 预算写完锁进抽屉:不与实测对照、不随功能更新的预算表没有任何约束力;每次大版本都应复测平均电流并对账。
- 漏算软件栈成本:协议栈、RTOS tick、日志打印(尤其是串口)常带来没写进预算的毫安级脉冲;UART 打日志在 bring-up 后必须默认关闭或降频,这是实测超预算的高频原因。
- 只在常温验证:低温下电池内阻升高数倍、容量缩水,峰值复位和寿命缩短都先在低温暴露;验收必须覆盖规格温度端点。
十、预算瀑布图:把推导链画出来

建议把这张图放在预算文档首页:让每个填数字的人都看得见自己那一行与「三年寿命」之间的推导关系,评审时也能快速区分争议发生在假设层(容量折损、占空比)还是测量层(峰值、温度)。
- 上游/总纲:低功耗手段全景给措施,MCU 低功耗给模式,能量与功率给口径。
- 本片:把全套概念装进一张从寿命倒推、可验收、可砍价的预算表。
- 下游:实测用功耗怎么测,超支排查用功耗异常排查;系统级架构背景见 SoC 电源架构。
结语:入门 45 篇的收束
从什么是功耗的 ½CV²f 出发,这个入门系列一路走过翻转率与漏电、时钟门控与 DVFS、电源域与 UPF、保持隔离与电平转换、IR-drop 与电源网格、测量与排查、FPGA/DPA/emulator、存储器/时钟树/毛刺/外设、验证与格式,直到趋势、数据中心、能量采集和这份预算实战。功耗预算表就是所有这些知识的汇流点:它一端写着产品承诺(用三年),另一端逼着每个人——架构、RTL、物理、固件、板级、测试——对自己那一行数字负责。低功耗工程的本质,从来不是某个省电神技,而是把一笔谁也赖不掉的能量账,从第一天就算清楚。
一句话收口:续航不是测出来的惊喜,而是算出来的工程——先从寿命倒推微安,再把微安分到每个模块、每种状态、每个责任方,最后用实测和 residency 数字逐行签收。
总结
功耗预算的正确流程是:先把电池标称容量扣掉自放电、低温衰减和截止电压折成有效容量,从寿命目标反推允许的时间平均电流并留约两成裕量;再用「事件平均电流=电流×占空比、常驻项全时计入」逐行列表,关键是把协议栈起振预热、BOR、按键上拉等新手必漏的固定开销补回来,并分典型/最差角反算寿命、用储能电容校验峰值压降会不会触发 BOR。预算表必须带条件、可追溯公式、责任方和验收来源,随里程碑实测重签,本质是把产品承诺变成可负责、可砍价的团队契约。