底电流分析

本文介绍了Android设备在bringup阶段如何定位功耗问题,包括底电流和VDD最小化状态的检查,以及功耗异常时的排查方法,如SMPS和LDO泄漏、GPIO配置、外围器件功耗等。同时解释了XO shutdown和VDD min的概念,并提供了功耗分析处理流程。
AI助手已提取文章相关产品:

一、什么是底电流?

底电流即机器完全睡眠时的最低电流;待机电流即机器在一段时间内的待机平均电流,通常指的就是测试机器的飞行待机电流。

一般测试机器电流,用到的工具:power monitor(功率监视器)

power monitor使用:Power monitor使用说明(非常不错).doc

二、项目bringup阶段,软件方面如何定位功耗问题

1.跟踪每天的daily版本,观察飞行待机平均电流以及电流波形,及时给予反馈;

2.查看底电流是否正常:

2.1 如果底电流电流过高(先检查是否进入最低功耗模式)

通过xo shutdown 和Vdd min的检查命令,查看是否进入系统功耗最小化状态。(如果XO shut down计数为零,VDD min计数不断增加,则已经进入了VDD min);

XO关闭和VDD最小化计数的adb shell命令
a. 输入以下命令获取RPM数据:
mount -t debugfs none /sys/kernel/debug
cat /sys/kernel/debug/rpm_stats

以下内容是以上命令的输出;计数代表XO关闭和VDD最小化出现的数量。
RPM Mode:xosd
count:0
time in last mode(msec):0
time since last mode(sec):791
actual last sleep(msec):0
client votes: 0x00020001
RPM Mode:Vdd Min
count:28
time in last mode(msec):8000
time since last mode(sec):475
actual last sleep(msec):233000
client votes: 0x00000000

b.或者检查以下RPM RAM转储的变量,以确定XO关闭和VDD最小化的计数
– sleep_stats[0] --XO关闭计数(系统进入XO关闭的次数)
– sleep_stats[1] --VDD最小化计数
注意:若系统进入VDD最小化状态,则只有VDD最小化计数会增加。VDD最小化是最低的功耗状态,包括了XO关闭。仅当系统未成功进入VDD最小化而进入XO关闭时,XO关闭计数才会增加。

 2.2 如果系统未进入VDD min,则需要检查各个子系统休眠情况,通过查看子系统sleep count命令(cat /sys/power/system_sleep/stats,cat /sys/power/rpmh_stats/master_stats)能看到ADSP MPSS APSS等子系统休眠情况,如果sleep count未发生变化,则对应的子系统未进入休眠。

ADSP:产生问题点:sensor radio audio;

解决方案:拿掉不必要的器件,定位sensor。

MPSS:产生问题点:①modem未启用;②NV未配置完善;

解决方案:①分析MPN日志;②抓取ram dump。

APSS:产生问题点:AP侧(上层)wake_lock持锁;

解决方案:①在代码中打开功耗debug,添加必要的打印log;②wakeup_sources。

 2.3 xo shutdown 和Vdd min计数最小化后就一定表示系统功耗正常了么?

不一定,若终端成功进入VDD最小化后,基底电流仍大于预期值,则可以得出结论,终端中存在一个或多个泄漏源计入总电流消耗中。泄漏可能有多处来源,例如:

(1)睡眠期间未使用但启用了的SMPS和LDO的泄漏;

定位方式:PMIC转储有助于检查SMPS和LDO 泄漏。

(2)某个或多个GPIO的最低泄漏设置不正确配置导致的GPIO管脚泄漏;

定位方式:GPIO转储有助于确定MSM™ GPIO的睡眠配置。

(3)外围和外部元器件未禁用或进行低功耗模式配置所导致的泄漏;

三、XO shutdown和VDD min是什么意思?

上面提到的XO shutdown和VDD min分别代表什么意思呢?

XO是XTAK Oscillator 石英晶体振荡器,XO提供RF平台BB(基带频率),WTR(射频收发器),NFC,GPS,FM所需的系统频率;XO shutdown即晶振关闭,这些传感器不工作。

VDD min指最小操作电压,即最低功耗模式。

四、功耗分析处理流程

分析问题 ---> 判断关机漏电流是否正常 --->飞行待机电流是否正常 --->判断场景

一般场景功耗分为以下三种:
单一场景待机电流测试:数据网络/wifi/蓝牙/GPS...待机电流是否正常?
复合场景待机电流测试:语音通话/拍照和拍照预览/录像和录像预览/浏览网页...待机电流是否正常?
高复合场景待机电流测试:DoU和类DoU续航测试/APP场景使用电流/...是否正常?

您可能感兴趣的与本文相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值