[原创] S5pv210 不同主频功耗对比测试

Wince.Android   2013-10-30 09:44 楼主
被测对象:S5pv210 +512M DDR2(4*128M) 为核心的一个手持设备
输入电压 10V
uboot 下主频设置 #define CONFIG_CLK_1000_200_166_133
CPU:  S5PV210@1000MHz(OK)
        APLL = 1000MHz, HclkMsys = 200MHz, PclkMsys = 100MHz
        MPLL = 667MHz, EPLL = 80MHz
                       HclkDsys = 166MHz, PclkDsys = 83MHz
                       HclkPsys = 133MHz, PclkPsys = 66MHz
                       SCLKA2M  = 200MHz
210ma@10V
uboot 主频设置#define CONFIG_CLK_800_200_166_133

CPU:  S5PV210@800MHz(OK)
        APLL = 800MHz, HclkMsys = 200MHz, PclkMsys = 100MHz
        MPLL = 667MHz, EPLL = 80MHz
                       HclkDsys = 166MHz, PclkDsys = 83MHz
                       HclkPsys = 133MHz, PclkPsys = 66MHz
                       SCLKA2M  = 200MHz
依然是210ma@10V  
囧!主频降低了200M,功耗一点也没降低,难道这个MPLL才是关键?

APLL 降低到400M 试试!看还低不低。

[ 本帖最后由 Wince.Android 于 2013-10-30 09:50 编辑 ]
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460

回复评论 (7)

再看看800M下降低总线时钟
uboot 设置
#define CONFIG_CLK_800_100_166_133 (200---》100
CPU:  S5PV210@800MHz(FAIL)
        APLL = 800MHz, HclkMsys = 100MHz, PclkMsys = 50MHz
        MPLL = 667MHz, EPLL = 80MHz
                       HclkDsys = 166MHz, PclkDsys = 83MHz
                       HclkPsys = 133MHz, PclkPsys = 66MHz
                       SCLKA2M  = 100MHz
功耗依然没什么变化,只是少了几个ma
205ma@10V
囧死了,看来降低频率,不降低电压,是没法节省功耗的。
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460
点赞  2013-10-30 09:54
6.7.4.1  Clock Divider Control Register (CLK_DIV0, R/W, Address = 0xE010_0300)
CLK_DIV0  Bit  Description  Initial State
Reserved  [31]  Reserved  0
PCLK_PSYS_RATIO  [30:28]  DIVPCLKP clock divider ratio,
PCLK_PSYS = HCLK_PSYS / (PCLK_PSYS_RATIO + 1)
0x0
HCLK_PSYS_RATIO  [27:24]  DIVHCLKP clock divider ratio,
HCLK_PSYS = MOUT_PSYS / (HCLK_PSYS_RATIO + 1)
0x0
Reserved  [23]  Reserved  0
PCLK_DSYS_RATIO  [22:20]  DIVPCLKD clock divider ratio,
PCLK_DSYS = HCLK_DSYS / (PCLK_DSYS_RATIO + 1)
0x0
HCLK_DSYS_RATIO  [19:16]  DIVHCLKD clock divider ratio,
HCLK_DSYS = MOUT_DSYS / (HCLK_DSYS_RATIO + 1)
0x0
Reserved  [15]  Reserved  0
PCLK_MSYS_RATIO  [14:12]  DIVPCLKM clock divider ratio,
PCLK_MSYS = HCLK_MSYS / (PCLK_MSYS_RATIO + 1)
0x0
Reserved  [11]  Reserved  0
HCLK_MSYS_RATIO  [10:8]  DIVHCLKM clock divider ratio,
HCLK_MSYS = ARMCLK / (HCLK_MSYS_RATIO + 1)
0x0
Reserved  [7]  Reserved  0
A2M_RATIO  [6:4]  DIVA2M clock divider ratio,
SCLKA2M = SCLKAPLL / (A2M_RATIO + 1)
0x0
Reserved  [3]  Reserved  0
APLL_RATIO  [2:0]  DIVAPLL clock divider ratio,
ARMCLK = MOUT_MSYS / (APLL_RATIO + 1)
0x0
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460
点赞  2013-10-30 11:44

S5pv210跑400M 跑的速度和以前的2440 有点像

我晕,
这个400M是800M 基础上再分频的。所以肯定不会降低功耗了,不过...........系统真的变慢了,S5pv210跑400M 跑的速度和以前的2440 有点像,囧
******** System Clock Info **********
[OAL] APLL_CLK    :  800000000 Hz
[OAL] MPLL_CLK    :  667000000 Hz
[OAL] EPLL_CLK    :   80000000 Hz
[OAL] VPLL_CLK    :   54000000 Hz

[OAL] ARM_CLK     :  400000000 Hz
[OAL] HCLK_MSYS   :  200000000 Hz
[OAL] PCLK_MSYS   :  100000000 Hz
[OAL] HCLK_DSYS   :  166750000 Hz
[OAL] PCLK_DSYS   :   83375000 Hz
[OAL] HCLK_PSYS   :  133400000 Hz
[OAL] PCLK_PSYS   :   66700000 Hz


#if defined(CONFIG_CLK_667_166_166_133)
#define APLL_MDIV       0xfa
#define APLL_PDIV       0x6
#define APLL_SDIV       0x1
#elif defined(CONFIG_CLK_533_133_100_100)
#define APLL_MDIV       0x215
#define APLL_PDIV       0x18
#define APLL_SDIV       0x1
#elif defined(CONFIG_CLK_800_200_166_133) || \
        defined(CONFIG_CLK_800_100_166_133) || \
        defined(CONFIG_CLK_400_200_166_133) || \
        defined(CONFIG_CLK_400_100_166_133)
#define APLL_MDIV       0x64 //100
#define APLL_PDIV       0x3
#define APLL_SDIV       0x1
#elif defined(CONFIG_CLK_1000_200_166_133)
#define APLL_MDIV       0x7d //125  1GHZ=125*(24/0x3/(1<<(0x1-1)))=125*8
#define APLL_PDIV       0x3
#define APLL_SDIV       0x1
#endif
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460
点赞  2013-10-30 12:18
囧,得出悲催的事实结论:
降低ARMCLK和MCLK 都会使系统变慢,但是功耗却降低很少,降低100M主频仅仅是降低05ma 左右的电流,这样降低频率没任何意义。真是悲催的人生啊。
这个其实是PLL 的一个控制而已,所以根本不是降低频率的根本,这个主要还是要降低电压,个才是比较关键的。不过我记得以前测试过2416 ,只要降低2416 的主频,对降低功耗是很明显的,为啥到了这个高级货S5pv210 就不行了呢!!!!!


[ 本帖最后由 Wince.Android 于 2013-10-30 14:54 编辑 ]
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460
点赞  2013-10-30 14:39
这个内存的时钟有点奇怪
DMC0 和DMC1 有点不一样的。
DMC0_SEL  [25:24]  Control MUXDMC0, which is the source clock of DMC0
(00:SCLKA2M, 01:SCLKMPLL, 10:SCLKEPLL, 11:SCLKVPLL)
DMC0_RATIO  [31:28]  DIVDMC0 clock divider ratio,
SCLK_DMC0 = MOUTDMC0 / (DMC0_RATIO + 1)


CLK_DMC1  [1]  Gating all clocks for DMC1   
(0: mask, 1: pass)
ACLK_DMC1
PCLK_DMC1
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460
点赞  2013-10-31 14:43
不知道这个测试是否还有后文。
如果不能通过降低主频降低功耗,核心板用在手持设备上会有很大的局限性。
点赞  2014-1-16 23:45
引用: bitiwindy 发表于 2014-1-16 23:45
不知道这个测试是否还有后文。
如果不能通过降低主频降低功耗,核心板用在手持设备上会有很大的局限性。

我看人用的可以做到。不知道哪里没设置对。嘿嘿。
如果对linux,Android,wince 等嵌入式底层有兴趣的,请加这个QQ群吧,群号:27100460
点赞  2014-1-17 15:44
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复