Q:如何判断camera功耗是否偏高?
A:camera功耗包含平台基础值、屏幕、模组、马达、feature、算法、camera app等部分,我们的camera在MTK原生的camera基础上做了硬件和软件的更改,硬件上手机厂商自己选材,如屏幕、camera模组等,软件上会添加新功能和算法(美颜,超像素等),功能增加会导致APP本身功耗和内存开销增加,每个部分都会有功耗的波动,整体数值加一起波动范围就会比较大。
总功耗=平台基础功耗+屏幕 +camera模组+马达+feature+算法+app
注:其他影响因素:整机系统功耗优化方案(如Lucid等);CPU和GPU频率是否限制;
1. 评判标准:
主要的评判标准是竞品机和用MTK原生值建立基准功耗;
1.1 竞品机:测试竞品在各个camera模式下的功耗值,对比差异;
1.2 基准功耗:即整理出平台基础值、硬件(屏幕、模组、马达)、软件(feature、算法、APP)功耗,进行累加,和测试的总功耗结果对比,找出功耗差异较大的项。
2. 功耗拆解:
2.1 简单的拆解和判断方法(测试完成):
测试排除功耗的差异主要集中在软件合入以及主要的耗电硬件,以下以XXX举例:
主要的功耗影响是屏幕和软件(APP、feature、算法);
软件功耗 = 正常模式预览模式下的总功耗 - 亮屏待机的功耗(包含平台功耗、屏幕功耗)
注:模组和马达功耗对整体的影响偏小,姑且先忽略
算法功耗 = 美颜预览总功耗(或者其他模式预览) - 正常模式预览功耗
注:以上的测试注意整机优化方案(lucid)的影响
根据以上公式 ,以XXX为例,
例子1:
XXX的数据如下:
在调整单反模式的VSDOF设置后,测试单反模式的数据如下:
XXX HiOS |
|||
关闭AAL |
普通模式 |
单反模式 |
帧率 |
亮屏待机 |
322.17 |
相机:24 |
|
预览 |
819.58 |
1204.91 |
软件功耗=正常模式预览模式下的总功耗 - 亮屏待机的功耗 = 819.58 – 322.17
算法功耗= 单反预览总功耗- 正常模式预览功耗 = 1204.9 –819.58
例子2:
如果在不同机器或者和原生版本对比时差异较大,如下所示,Hios版本和driver only版本的普通模式预览功耗差异较大,亮屏待机功耗相当,说明可能是feature合入导致功耗偏高了,就需要进一步的分析feature合入和硬件的功耗。
XXX HiOS |
XXX_H571_driver only |
帧率 |
|||
关闭AAL |
普通模式 |
单反模式 |
普通模式 |
单反模式 |
|
亮屏待机 |
322.17 |
319.53 |
相机:24 |
||
单反预览 |
819.58 |
1204.91 |
755.09 |
1096.43 |
2.2 功耗硬件分解(研发完成):
通过上面的功耗分解大概的就能分解出功耗差异点,当与对比机对比的时候,在去除屏幕后的软件功耗(APP、feature、模组、马达)可能仍然比竞品机高,所以需要更进一步的分析模组和马达的功耗,
摄像头中有中三处工作电路:AF(马达)、AVDD、DVDD,硬件分解的时候一般会将算法和feature去除,而APP和平台基础功耗较小,得到如下:
Camera预览总功耗 = 屏幕 + AF(马达) + 模组(AVDD +DVDD)
注:马达在对焦的时候会不断的调整camera焦距,功耗波动较大,此处测试是在稳定的情况下的马达功耗
AF、AVDD 和 DVDD 两个电路的电流无法直接测试,需要在每个电路上单独进行飞线测试(预览功耗),然后和通过假电池对每个电路测试的结果(包含了AF和预览功耗)做差值;
版本:XXXd,VSDOF 开启 frontbinning,最大亮度,近景 |
|||||||
关闭AAL |
M1_AF |
M1_AVDD |
M1_DVDD |
M2_AF |
M2_AVDD |
M2_DVDD |
帧率30fps |
home idle |
319.53 |
30 |
|||||
原电压 |
2.807 |
2.797 |
1.1 |
2.807 |
2.796 |
0.997 |
|
外灌电压 |
2.908 |
2.908 |
1.205 |
2.9 |
2.908 |
1.128 |
|
原单反预览 |
1091.4 |
1095.99 |
1102.88 |
1068.73 |
1096.37 |
1078.15 |
|
外灌单反预览 |
1075.25 |
1051.68 |
1075.29 |
1018.12 |
1054.35 |
1027.21 |
|
差值 |
16.15 |
44.31 |
27.59 |
50.61 |
42.02 |
50.94 |
231.62 |
外灌电流 |
17 |
42 |
65 |
53 |
41 |
132 |
|
Camera模组总耗流 |
164.86 |
||||||
马达耗流 |
66.76 |
版本:xxos,VSDOF 开启 frontbinning,最大亮度,近景 |
|||||||
关闭AAL |
M1_AF |
M1_AVDD |
M1_DVDD |
M2_AF |
M2_AVDD |
M2_DVDD |
帧率30fps |
home idle |
322.17 |
30 |
|||||
原电压 |
2.807 |
2.797 |
1.1 |
2.807 |
2.796 |
0.997 |
|
外灌电压 |
2.918 |
2.918 |
1.233 |
2.918 |
2.918 |
1.124 |
|
原单反预览 |
1211.33 |
1211.2 |
1214.16 |
1210.05 |
1217.53 |
1212.9 |
|
外灌单反预览 |
1197.76 |
1172.47 |
1180.87 |
1155 |
1178.02 |
1156.15 |
|
差值 |
13.57 |
38.73 |
33.29 |
55.05 |
39.51 |
56.75 |
236.9 |
外灌电流 |
18 |
41 |
89 |
51 |
41 |
140 |
|
Camera模组总耗流 |
168.28 |
||||||
马达耗流 |
68.62 |
通过以上的分解,camera硬件相关的功耗都能弄清楚了,硬件的基础功耗确定后,再追层加上软件相关的功耗
音频 = 平台基础功耗 + 音效 + PA
PA分为普通PA和smartPA,功耗值根据不同的器件不一样,以选材器件表为准;
音效功耗:需要用合入和未合入的专项版本测试,做差值。