S3C2410时钟电源管理

惭愧,很久没看书,居然忘了大半。哎,看样子得努力哦,不然真要全忘完了。

我们在移植程序时要考虑CPU的频率,在S3C2410中,支持200~266MHz,当然,频率越高速度是会快的,功耗也会越高,不过至少要保证兼容性的前提下做。
在程序中,经常看到如下代码:

#define FCLK_SPEED 1

#if FCLK_SPEED==0  /* Fout = 203MHz, Fin = 12MHz for Audio */
#define M_MDIV 0xC3
#define M_PDIV 0x4
#define M_SDIV 0x1
#elif FCLK_SPEED==1  /* Fout = 200MHz */
#define M_MDIV 0x5c
#define M_PDIV 0x4
#define M_SDIV 0x0
#endif

其实就是设置的MPLL控制寄存器(MPLLCON)以200MHz为例,即MPLLCON=0x5c040。
查看数据手册便知,MPLLCON寄存器位【12:19】为MDIV设置值,位【4:9】为PDIV设置值,位【0:1】为SDIV设置值。
Fout=((MDIV+8)*Fin)/((PDIV+2)*2^SDIV) 即 0x5c=92 计算为((92+8)*12)/((4+2)*2^0)=1200/6=200MHz

与时钟电源有关的寄存器有6组:
LOCKTIME   PLL锁定时间寄存器
MPLLCON    MPLL配置寄存器
UPLLCON    MPLL配置寄存器
CLKCON     时钟控制寄存器
CLKSLOW    慢时钟控制寄存器
CLKDIVN    时钟比控制寄存器

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值