分类: 嵌入式
2013-03-30 18:18:54
原文地址:s3c2410时钟电源管理 作者:lantianyu520
概要
Clock&power management 模块包含了3部分:Clock控制、USB控制、POWER控制.
时钟控制逻辑单元能够产生2410需要的时钟信号,包括CPU使用的主频FCLK,AHB总线设备使用的HCLK,以及APB总线设备使用的
PCLK.2410内部有2个PLL(锁相环):一个对应FCLK,HCLK,PCLK,另外一个对应的是USB使用(48MHz)。.时钟控制逻辑单元
可以在不使用PLL情况下降低时钟CLOCK的频率,并且可以通过软件来驱使时钟和各个模块的连接/切断,这样做可以减少电源消耗。
对于电源控制逻辑单元,2410有许多钟电源管理方法来针对不用任务保持相应的电源消耗。电源管理模块包含了4种方式:NORMAL、SLOW,IDLE,SLEEP。
NORMAL:这个模块支持CPU时钟以及2410相应的外围设备时钟。这个模式下,电源消耗是最大的。它允许通过软件编程来控制外部设备的操作。例
如,如果一个定时器Timer不需要时,那么用户可以通过CLKCON寄存器来关闭时钟和Timer相连,来降低电源消耗。
SLOW模式:又叫NON-PLL模式,不同于Normal模式,这个模式使用的时一个外部时钟来直接驱动2410的主频FCLK,不通过PLL,在这个模式下,电源的消耗仅仅和外部时钟频率有关,电源同PLL有关的消耗可以忽略。
IDLE模式:这个模式下CPU的时钟FCLK北关闭,而其他外围设备的时钟还继续工作。因此空闲模式的结果只是能够降低CPU核的电源消耗。注意,任何中断请求都能够将CPU唤醒。
Sleep模式:这个模式关闭了内部电源。因此CPU内部的逻辑单元都没有电源消耗,除了工作在这个模式下的一个wake-up
时钟概要:
FCLK是CPU时钟。
HCLK用于AHB总线时钟,这是由CPU为核心,内存控制器,中断控制器,用于液晶显示器控制器,DMA和USB主机块。
PCLK时钟,用于APB总线,它是由诸如看门狗,IIS和的I2C,PWM定时器,MMC接口的外设使用,ADC和UART,GPIO的,实时时钟和SPI。
一、时钟模式控制
控制时钟模式,主要是由时钟控制寄存器控制的,以下是s3c2410的CLOCK CONTROL REGISTER (CLKCON):
另外在slow模式下,是由慢速控制寄存器控制:
二、锁相环(时钟发生器)控制
PLL时钟发生器,作为一个集成电路,作用是同步输出信号以及输入信号的频率和相位。
Mpll=( 2 * m * Fin ) / ( p * 2 s )
m=M(分频器M的值)+8, p=P(分频器P的值)+2
Upll时钟发生器的内部也和Mpll类似
下面是s3c2410主频一览表
三、时钟分频控制器