WhyCan Forum(哇酷论坛)

人过留名,雁过留声,感谢各位朋友不离不弃地支持。 QQ: 516333132, 微信: whycan_cn (哇酷网/挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2019-12-13 00:36:47

达克罗德
会员
注册时间: 2018-04-10
累计积分: 744

今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

1. 从Uboot设置的CPU频率决定了Linux启动后的频率
CONFIG_SYS_CLK_FREQ
用devmem确认Linux跑起来之后还是这个频率
2. 根据另一个帖子 https://whycan.cn/t_1949.html ,通过uboot把DRAM设置成240MHz(480M)成功跑起来
arch/arm/mach-sunxi/dram_suniv.c:
struct dram_para suniv_dram_para = {
    .size = 32,
    .clk = 156,//改这里,或者替换成CONFIG_DRAM_CLK

实测240M性能比156M有较大提高

离线

#2 2019-12-13 00:49:51

kekemuyu
会员
注册时间: 2018-12-13
累计积分: 406

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

关于cpu频率,启动内核后不是也可以设置频率吗?用devmem直接修改寄存器,当然uboot设置的是内核默认频率

最近编辑记录 kekemuyu (2019-12-13 00:50:22)

离线

#3 2019-12-13 07:56:07

达克罗德
会员
注册时间: 2018-04-10
累计积分: 744

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

kekemuyu 说:

关于cpu频率,启动内核后不是也可以设置频率吗?用devmem直接修改寄存器,当然uboot设置的是内核默认频率

对我试了用devmem也是可以设的,主要是我想看看启动Linux能快多少

离线

#4 2019-12-13 08:16:01

kekemuyu
会员
注册时间: 2018-12-13
累计积分: 406

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

不知道你们试过没有,f1c100s的cpu频率设成很小,对功耗几乎影响很小。试过把频率设成24m,核心电压设成0.9v,功耗只降低几个了ma,这不可科学呀,可能是某些外设更耗电。如果能把空载功耗控制在5mw以内就好了,现在只能是想办法把启动速度提高到1s以内,不用的时候断电以降低功耗

离线

#5 2019-12-13 08:18:48

天马行空
会员
注册时间: 2019-11-12
累计积分: 45

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

https://github.com/Lichee-Pi/u-boot/blob/nano-lcd800480/arch/arm/mach-sunxi/dram_suniv.c

struct dram_para suniv_dram_para = {
    .size = 32,
    .clk = 156,
    .access_mode = 1,
...
};

改成这样对吧? ====>

struct dram_para suniv_dram_para = {
    .size = 32,
    .clk = CONFIG_DRAM_CLK,
    .access_mode = 1,
...
};

犀利, 请问你是怎么发现的 ^_^

感觉这下跑Linux速度可以更快了.

离线

#6 2019-12-13 08:23:57

达克罗德
会员
注册时间: 2018-04-10
累计积分: 744

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

天马行空 说:

https://github.com/Lichee-Pi/u-boot/blob/nano-lcd800480/arch/arm/mach-sunxi/dram_suniv.c



改成这样对吧? ====>



犀利, 请问你是怎么发现的 ^_^

感觉这下跑Linux速度可以更快了.

试了几把发现改了没用,然后搜关键字才搜到。。
提高dram频率对有内存吞吐的APP作用很明显,几乎是50%的提高
CPU频率提高对不牵扯到大量数据的运算有用。我最高试到888mhz, bogoMIPS从300多提高到400多

离线

#7 2019-12-13 08:23:58

xgui
会员
注册时间: 2019-09-07
累计积分: 224

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

kekemuyu 说:

不知道你们试过没有,f1c100s的cpu频率设成很小,对功耗几乎影响很小。试过把频率设成24m,核心电压设成0.9v,功耗只降低几个了ma,这不可科学呀,可能是某些外设更耗电。如果能把空载功耗控制在5mw以内就好了,现在只能是想办法把启动速度提高到1s以内,不用的时候断电以降低功耗

主频24Mhz, CPU电压1.2v降到0.9v, 这样都降不下来, 看来只能进入休眠模式了。

离线

#8 2019-12-13 08:27:13

飞翔工控
会员
注册时间: 2019-11-21
累计积分: 44

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

达克罗德 说:

试了几把发现改了没用,然后搜关键字才搜到。。
提高dram频率对有内存吞吐的APP作用很明显,几乎是50%的提高
CPU频率提高对不牵扯到大量数据的运算有用。我最高试到888mhz, bogoMIPS从300多提高到400多

我貌似找到这个问题的原因了:
主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps
https://whycan.cn/t_2825.html

ffmpeg 解码涉及到大量的数据交换, 如果DRAM有瓶颈,帧率自然上不去。

离线

#9 2019-12-13 08:30:34

kekemuyu
会员
注册时间: 2018-12-13
累计积分: 406

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

xgui 说:

主频24Mhz, CPU电压1.2v降到0.9v, 这样都降不下来, 看来只能进入休眠模式了。

没有休眠模式

离线

#10 2019-12-13 08:48:30

Quotation
会员
注册时间: 2018-10-04
累计积分: 146

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

kekemuyu 说:

没有休眠模式

你可以试试用这个汇编进入类似于休眠状态,但功耗也不会非常低。

__asm__ __volatile__("mcr p15, 0, %0, c7,c0,4" :: "r"(0));

这是ARM926EJ-S手册上提到的 Dynamic power management (wait for interrupt mode) 。我只简单试了一下,在我的板子上低了10mA。没试过唤醒:D。

离线

#11 2019-12-13 08:53:47

飞翔工控
会员
注册时间: 2019-11-21
累计积分: 44

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

Quotation 说:

你可以试试用这个汇编进入类似于休眠状态,但功耗也不会非常低。

__asm__ __volatile__("mcr p15, 0, %0, c7,c0,4" :: "r"(0));

这是ARM926EJ-S手册上提到的 Dynamic power management (wait for interrupt mode) 。我只简单试了一下,在我的板子上低了10mA。没试过唤醒:D。

那可以通过IRQ唤醒吗?或者定时器唤醒?这样可以省点电。

离线

#12 2019-12-13 08:56:55

kekemuyu
会员
注册时间: 2018-12-13
累计积分: 406

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

Quotation 说:

你可以试试用这个汇编进入类似于休眠状态,但功耗也不会非常低。

__asm__ __volatile__("mcr p15, 0, %0, c7,c0,4" :: "r"(0));

这是ARM926EJ-S手册上提到的 Dynamic power management (wait for interrupt mode) 。我只简单试了一下,在我的板子上低了10mA。没试过唤醒:D。

感谢分享,我看手册上还有个Static power management (leakage control),这个试过吗?

离线

#13 2020-02-11 23:07:43

Vivian
会员
注册时间: 2019-11-27
累计积分: 3

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

请问,这是在官方的linux上吗?

离线

#14 2020-02-11 23:46:47

飞翔工控
会员
注册时间: 2019-11-21
累计积分: 44

Re: 今天确定了两件事:F1C100S的CPU频率和DRAM频率设置

Vivian 说:

请问,这是在官方的linux上吗?

不是, mainline u-boot & mainline linux

离线

页脚