S3C2440(1) Clock&Power Management

来源:互联网 发布:罗技鼠标mac用法 编辑:程序博客网 时间:2024/05/15 08:05

先解释几个名词:

Crystal[ˈkristəl]:晶振,其作用在于产生原始的时钟频率,这个频率经过频率发生器的放大或缩小后就成了电脑中各种不同的总线频率

Oscillation[ˌɔsəˈleɪʃən]:振荡器,用来产生重复电子讯号(通常是正弦波或方波)的电子元件


Clock和Power Management由三部分组成:Clock control, USB control,Power control

S3C2440A中的时钟控制逻辑能够产生系统需要的时钟信号,包括为CPU产生FCLK信号,为AHB总线的外围设备产生HCLK信号,为APB总线的外围设备产生PCKL信号。

S3C2440A有两个锁相环:一个用于FCLK,HCLK,PCLK,另外一个是USB模块专用(48MHz)。

时钟控制逻辑能够在没有PLL的情况下,降低时钟信号,并且能够通过软件控制给外围设备模块连接时钟信号或者断开外围设备的时钟信号,这样可以降低电源消耗。


对于电源控制逻辑,S3C2440A有多种电源管理机制使得对于给定的任务保持最佳的电源消耗。S3C2440A中的电源管理模块能够工作在四种模式:NORMAL模式,SLOW模式,IDLE模式,SLEEP模式。

NORMAL模式:电源模块同时给CPU和外围设备提供时钟信号,这种模式下,如果所有的外围设备都打开,电源消耗是最大的,这种模式下,可以通过软件控制外围设备,例如,如果一个定时器不需要,可以断开定时器的时钟信号,降低电源消耗。

SLOW模式:无PLL模式。SLOW模式直接使用外部时钟信号(XTIpll or EXTCLK)作为FCLK,这种模式下,电源消耗仅由外部时钟的频率决定,排除由于PLL的电源消耗。

IDLE模式:电源模块断开对CPU core的时钟信号FCLK,但是保持对其它外围设备的时钟信号连接。IDLE模式致使减少CPU core的电源消耗。对CPU任意的中断请求都会从IDLE模式唤醒。

SLEEP模式:电源模块断开internal power,因此,CPU和除wake-up逻辑之外的其它内部逻辑都不会有电源消耗。触发SLEEP模式,需要两个独立的电源源,一个给wake-up逻辑供电,另外一个给其它的internal logics,包括CPU,供电,并且能够控制power on或者power off。在SLEEP模式,给CPU和internal logics供电的电源将被关闭,从SLEEP模式中唤醒,可以通过EINT[15:0]或者RTC alarm中断。


如图所示,S3C2440A的时钟信号可以通过两种方式提供:XTIpll或者EXTCLK,到底是使用哪个作为时钟源,是通过OM[3:2]决定的,OM[3:2]的状态,在系统复位上升沿的时候,将OM3和OM2引脚的值锁存(The OM[3:2] status is latched internally by referring the OM3 and OM2 pins at the rising edge of nRESET)。

振荡器连接到外部晶振

包含两个锁相环



注意:

1、虽然在复位后,MPLL就开始工作,但是MPLL的输出(Mpll)并不被用作系统时钟信号,直到软件向MPLLCON寄存器中写入有效的设置。在向MPLLCON寄存器中写入有效设置之前,外部晶振或者EXTCLK的时钟信号会被直接用作系统时钟信号,因此,即使不想改变MPLLCON寄存器的默认值,也应该向MPLLCON寄存器写入相同的值。

当MPLLCON未有效之前,CPU的工作时钟信号FCLK的工作频率是极低的,直接使用外部晶振或者外部时钟的时钟信号。


时钟控制逻辑决定使用的时钟源,如PLL时钟或者直接外部时钟(XTIpll或者EXTCLK)。当PLL被设置为一个新的频率值时,时钟控制逻辑禁止FCLK信号直到PLL输出信号稳定,经过PLL locking time。时钟控制逻辑也会被触发在power on reset和wakeup from power-down模式。


Power-On Reset(XTIpll)


上电复位后,晶体振荡器在几毫秒种后开始震荡




原创粉丝点击