时钟源切换方法和系统的制作方法

文档序号:9261030阅读:805来源:国知局
时钟源切换方法和系统的制作方法
【技术领域】
[0001]本发明涉及电子设备领域,特别是涉及一种时钟源切换方法和系统。
【背景技术】
[0002]由于电子设备需要随时随地处在可用的状态,因此其续航时间尤为重要。为了提升电子设备的续航时间,研发人员对电子设备系统的动态功耗和静态功耗做了大量的研究工作。其中,静态功耗主要通过待机功耗和唤醒速度进行表征。
[0003]通常,对电子设备系统的静态功耗的提升主要通过以下几个方案平衡静态功耗中的待机功耗和唤醒速度。其一,为Standby(待机):系统的运行现场被保存至存储单元,DRAM(Dynamic Random Access Memory,动态随机存取存储器)和CPU (中央处理器)均进入WFI(Wait For Interrupt,等待中断)状态,电子设备系统等待唤醒事件的唤醒,此时,CPU保持供电状态,电子设备的唤醒速度很快,但待机功耗较大;其二,为Suspend (暂停):系统的运行现场同样被保存在存储单元,DRAM和CPU均进入power off (断电)状态,外部控制单元通过检测唤醒事件,唤醒电子设备系统,此时,电子设备的待机功耗很低,但是外部控制单元通过检测唤醒事件唤醒电子设备系统需要恢复CPU的运行现场,因此,电子设备的唤醒速度较慢;其三,为Hibernat1n (睡眠):系统的运行现场同样被保存至存储单元,Nand闪存和CPU均处于power off状态,同样通过外部控制单元通过检测唤醒事件唤醒电子设备系统,由于Nand闪存和CPU均处于power off状态,此时,电子设备的待机功耗极低,但是采用该方案唤醒电子设备系统,需要恢复DRAM的数据,同时还需要恢复CPU的运行现场,因此电子设备的唤醒速度很慢。

【发明内容】

[0004]基于此,有必要针对保持电子设备的待机功耗较低的同时,不能有效提升电子设备的唤醒速度的问题,提供一种时钟源切换方法和系统。
[0005]为实现本发明目的提供的一种时钟源切换方法,包括如下步骤:
[0006]接收到休眠信号时,控制时钟源切换至高频晶振,并存储第一休眠时间点,等待接收唤醒信号;
[0007]当接收到所述唤醒信号时,存储第一唤醒时间点,并根据所述第一休眠时间点和所述第一唤醒时间点,获取休眠时间;
[0008]根据所述休眠时间,实时控制所述时钟源进行切换。
[0009]作为一可实施例,所述根据所述休眠时间,实时控制所述时钟源进行切换,包括如下步骤:
[0010]检测所述休眠时间;
[0011]当所述休眠时间大于预设时间时,控制所述时钟源切换至低频晶振;
[0012]当所述休眠时间小于或等于所述预设时间时,控制所述时钟源切换至PLL。
[0013]较优的,所述当所述休眠时间小于或等于所述预设时间时,控制所述时钟源切换至PLL,包括如下步骤:
[0014]启动定时器,检测唤醒源;
[0015]当所述唤醒源为所述定时器时,控制所述时钟源切换至所述低频晶振,并返回所述等待接收所述唤醒信号的步骤;
[0016]当所述唤醒源不是所述定时器时,控制所述时钟源切换至所述PLL。
[0017]作为一可实施例,所述当所述唤醒源不是所述定时器时,控制所述时钟源切换至所述PLL,包括如下步骤:
[0018]当所述唤醒源不是所述定时器时,控制所述时钟源切换至所述PLL,并唤醒设置所述时钟源的电子设备;
[0019]根据:预设时间=所述第一唤醒时间点一所述第一休眠时间点,计算并更新所述预设时间;
[0020]检测是否存在所述休眠信号,当存在所述休眠信号时,接收所述休眠信号,并返回所述等待接收所述唤醒信号的步骤;
[0021]当不存在所述休眠信号时,控制所述电子设备在操作系统的调度下运行,响应所述操作系统的操作请求,并返回所述检测是否存在所述休眠信号的步骤。
[0022]值得说明的是,所述预设时间大于等于15s且小于等于45s。
[0023]相应的,为实现上述时钟源切换方法,本发明还提供了一种时钟源切换系统,包括唤醒信号接收模块、运算逻辑模块和控制模块,所述运算逻辑模块与所述控制模块电连接,其中:
[0024]所述唤醒信号接收模块,用于接收到休眠信号时,控制时钟源切换至高频晶振,并存储第一休眠时间点,等待接收唤醒信号;
[0025]所述运算逻辑模块,用于当接收到所述唤醒信号时,存储第一唤醒时间点,并根据所述第一休眠时间点和所述第一唤醒时间点,获取休眠时间;
[0026]所述控制模块,用于根据所述休眠时间,实时控制所述时钟源进行切换。
[0027]作为一可实施例,所述控制模块包括第一检测单元、第一控制单元和第二控制单元,其中:
[0028]所述第一检测单元,用于检测所述休眠时间;
[0029]所述第一控制单元,用于当所述休眠时间大于预设时间时,控制所述时钟源切换至低频晶振;
[0030]所述第二控制单元,用于当所述休眠时间小于或等于所述预设时间时,控制所述时钟源切换至PLL。
[0031]较优的,还包括定时器和第一检测模块,所述第一检测模块包括第二检测单元、第三控制单元和第四控制单元,其中:
[0032]所述定时器,用于设置并存储所述预设时间;
[0033]所述第二检测单元,用于当启动所述定时器时,检测唤醒源;
[0034]所述第三控制单元,用于当所述唤醒源为所述定时器时,控制所述时钟源切换至所述低频晶振,并发送返回所述唤醒信号接收模块指令;
[0035]所述第四控制单元,用于当所述唤醒源不是所述定时器时,控制所述时钟源切换至所述PLL。
[0036]作为一可实施例,还包括第二检测模块,其中:
[0037]所述第二检测模块,用于所述第一检测模块处于断电状态时,当启动所述定时器后,在所述预设时间内接收到所述唤醒信号时,检测所述唤醒信号的所述唤醒源。
[0038]作为一可实施例,所述第四控制单元包括第一控制子单元、第一计算子单元、第一检测子单元、第二控制子单元和第三控制子单元,其中:
[0039]所述第一控制子单元,用于当所述唤醒源不是所述定时器时,控制所述时钟源切换至所述PLL,并唤醒设置所述时钟源的电子设备;
[0040]所述第一计算子单元,用于根据:预设时间=所述第一唤醒时间点一所述第一休眠时间点,计算并更新所述预设时间;
[0041]所述第一检测子单元,用于检测是否存在所述休眠信号;
[0042]所述第二控制子单元,用于当存在所述休眠信号时,接收所述休眠信号,并发送返回所述唤醒信号接收模块指令;
[0043]所述第三控制子单元,用于当不存在所述休眠信号时,控制所述电子设备在操作系统的调度下运行,响应所述操作系统的操作请求,并发送返回所述第一检测子单元指令。
[0044]本发明提供的时钟源切换方法和系统,通过当接收到休眠信号时,控制时钟源切换至高频晶振,并存储第一休眠时间点;当接收到唤醒信号时,存储第一唤醒时间点,同时,根据第一休眠时间点和第一唤醒时间点,获取休眠时间;根据获取的休眠时间,实时控制时钟源进行切换。其通过根据获取的休眠时间,判断电子设备的使用场景,并根据在不同的使用场景下,对待机功耗和唤醒速度的需求不同,实时动态切换时钟源,有效地解决了在保持较低的待机功耗的同时,不能有效提升唤醒速度的问题。
【附图说明】
[0045]图1为本发明的时钟源切换方法一具体实施例流程图;
[0046]图2为本发明的时钟源切换方法又一具体实施例流程图;
[0047]图3为本发明的时钟源切换系统一具体实施例结构示意图。
【具体实施方式】
[0048]为使本发明技术方案更加清楚,以下结合附图及具体实施例对本发明做进一步详细说明。
[0049]参见图1,一种时钟源切换方法,包括如下步骤:
[0050]步骤S100,接收到休眠信号时,控制时钟源切换至高频晶振,并存储第一休眠时间点,等待接收唤醒信号;
[0051]步骤S200,当接收到唤醒信号时,存储第一唤醒时间点,
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1