一种定时器、基带芯片及其睡眠状态切换方法与流程

文档序号:12184174阅读:514来源:国知局
一种定时器、基带芯片及其睡眠状态切换方法与流程

本发明涉及多模通信技术领域,特别涉及一种定时器、基带芯片及其睡眠状态切换方法。



背景技术:

在4G移动通信系统中,有多种无线接入模式并存,例如GSM(全球移动通信系统)、TD-SCDMA(时分同步码分多址)、WCDMA(宽带码分多址)和LTE(长时演进)等。各模式均有一套特有的计时装置,记为RAT-Timer(Radio Access Technology Timer,无线接入技术计时器)。考虑到移动终端的省电需要,一个模式的RAT-Timer需在该接入模式不工作的时间段内切换到低功耗状态(睡眠模式),也能从睡眠模式切换到工作模式(正常计数状态)。

对于多模通信系统中,有多种接入模式并存,每个模式下通常有一个定时器来提供所需的定时信息。通信终端会在系统不工作的时候,尽量多时间的关闭系统的快时钟(相对于RTC(实时时钟)慢时钟而言)以及大部分模块的电源,将系统进入低功耗状态,以增加电池的续航时间。通常在定时器中增加睡眠的功能,即定时器可以切换到低功耗状态。如图1所示,计时器包括三个功能模块:时钟模块、定时模块和CPU(中央处理单元)。下面以LTE模式为例来介绍定时器的工作原理。由于LTE模式定时的要求,需要最低30.72MHz的时钟精度,此时钟信号由定时模块生成。系统中包括两个时钟源:32K(RTC:Real Time Clock)慢时钟和快时钟(如26MHz)。LTE定时模块会提供给CPU如下的信息:LTE模式需要的定时信息、定时器的状态, 以及定时中断;CPU也可以配置LTE定时器的参数。

下面重点介绍LTE的定时模块。定时模块中主要是由计数器(未示出)组成,并由相应的比较器(未示出)和锁存器(未示出)来产生定时中断和提供定时信息。计数器的工作状态分成正常计数状态(使用30.72M时钟计数),睡眠状态(使用32K时钟计数)和切换状态(快慢时钟都在工作,是一个过渡状态)。当计数器在工作状态时,一个快时钟的输入,计数器加1,当工作在睡眠模式下,计数器会使用32K时钟源来计数,计数器会根据RTC时钟和30.72M时钟的频率比例来增加计数值。为了降低系统成本,通常采用未经过校准的DCXO(Digital Control Oscillator,数位控制震荡器)的RTC时钟源,RTC的精度较低,而且受温度的影响较大。为了保证无线系统的定时的精度的要求,即使在使用慢时钟计时的时候,也需要定时器能够提供较高的定时精度。为解决此问题,通常在定时模块内部采用快时钟校准慢时钟的校准单元,来提高慢时钟计数时的定时精度。在快时钟存在时,定时模块使用快时钟来测量慢时钟,也就是用快时钟对慢时钟进行校准。校准的过程由硬件模块自动完成,校准的结果代表一个RTC时钟时长等于多少个快时钟的时长,此结果中包含小数部分。小数部分的进位可以采用一定的方法,比如采用累计后的最后结果的小数部分再处理,可按照四舍五入或者直接舍弃的方法,这样,就能将计数的精度控制在一定的范围内,当然这里还是有计算精度的损失。

基带芯片会根据每个模式定时器的状态(是否进入睡眠状态)、各个CPU是否进入睡眠模式,以及其他的模块(如DMA(Direct Memory Access,直接内存访问)、HWA(Hardware Accelerator,硬件加速器)等)是否进入空闲状态,来判断基带芯片和其他模块(如电源模块、射频模块、音频模块等),是否进入低功耗状态(记为深度睡眠状态)。深睡状态下,整个系统关闭输入快时钟,以及将与快时钟相关功能模块下电,以达到深度省电的目的。

如上所述,在基带芯片深睡的必要条件中,有各个模式定时器是否进入睡眠状态,也就是判断定时器是否使用RTC时钟来计数。一种接入模式在一定时间段内没有任务时,例如待机状态,需要CPU来配置定时器,以切换到睡眠模式,直到预期有任务的时刻点,定时器在计数期满后自动切换到工作状态。定时器在睡眠模式下,使用RTC时钟计数,虽然慢时钟是经过了快时钟校准的,但是这里存在两个问题,会影响到睡眠状态下定时器的定时精度。一是由于快计数器校准慢计数器会有一定的校准精度,一般的校准电路的实现是使用定点计算,一定存在一定的计算的精度损失。另外,定时器在校准过程中和睡眠过程中RTC的时钟会有变化,这个变化尤其对温度变化敏感。若要保证高的RTC精度,就必须在两个方面有较高的要求,一是提高RTC校准电路计算精度,这样会增加硬件实现的复杂度;另外,提高校准的频率,尤其是在温度变化较快的时候,增大RTC校准的频度,这种的做法会对温度检测,软件控制策略,以及基带芯片的功耗都有比较大的影响。

下面针对上述的第二个问题进行分析。由于温度对RTC时钟的影响最大,故若要达到较好的RTC校准效果,通常板卡中增加温度检测电路,实时检测板卡(尤其是RTC周围)温度变化,当温度变化率达到一定的门限的时候,就启动RTC校准。这样势必需要额外增加温度校准电路,以及检测温度带来的功耗。另外,由于RTC校准的策略相对复杂,与终端的工作状态,协议栈软件的流程,以及终端的物理特性相关,尤其在多模多待(待机)的系统中,此校准就会更加复杂。仅仅依靠软件启动校准电路来消除RTC的不稳定性,在实际应用过程中是非常困难的。再次,RTC校准模块在工作的时候需要快时钟,当系统达到睡眠条件的时候,系统本可以进入深睡模式,但是由于校准电路在工作,导致整个系统无法进入深睡。RTC校准模块一次校准时长大约在百ms(毫秒)量级,所以对系统的功率的消耗是有很大的影响。若此校准电路在系统正常工作期间(非深睡状态),那么额外的功耗就是校准电路的开销,那么基本可以忽略。但若在系统深睡过程中校准,或者是系 统深睡的其他条件都满足,只有校准电路工作导致系统无法深睡,那么就会增加额外的功耗,例如在系统待机的时候,大多数情况下系统进入深睡的功耗大约在5~8mw左右(以目前的LTE多模智能手机为例),若系统无法深睡,那么最低功耗也在60mw以上。校准电路的工作频度和软件校准策略有关,同时也和网络环境,以及系统使用环境相关。要使校准后时钟达到更高的定时精度就需要有相对更加频繁的启动校准电路,那么额外引入的功耗对系统的待机功耗影响还较大,按照实际测试的结果,在一定的网络环境下,会增加2~5%左右的待机功耗。

当系统中有一个接入模式在工作状态,其对应的定时器是工作在正常计数状态,那么其他模式的定时器即使切换到睡眠状态,整个系统仍然不能进入深睡状态。此时快时钟是存在的,且与网络是同步的,其精度是有保证的。使用未校准的RTC时钟的定时精度最大偏差大致在+/-20ppm(parts per million,百万分之一),经过快时钟校准后的定时器的计时精度在1~4ppm(百万分之一)左右,而使用快时钟作为定时器的时钟源,精度通常可以达到0.1ppm。非工作模式的定时器切换到睡眠模式,使用慢时钟作为计数时钟源,那么其时间精度就由校准后的RTC时钟精度来决定了,和快时钟计数相比,那么必然存在上述描述中分析的计时精度的损失。



技术实现要素:

本发明解决的问题在于提供一种定时器、基带芯片及其睡眠状态切换方法,可以提高多模系统非业务模式的定时同步的精度;可以有效减少RTC校准的频度,从而让系统尽可能多的进入深睡状态下,降低系统待机功耗;可以降低多模系统RTC时钟校准功能的软件实现复杂度;还可以在定时同步精度要求的范围内,选择更加低成本的RTC时钟源,从而降低系统的硬件成本。

为解决上述技术问题,本发明的实施方式提供了一种基带芯片,应用于 多模通信系统,包含:睡眠控制模块、中央处理单元CPU与各模式的定时模块;

所述CPU,用于在检测到所述定时模块满足退出工作状态的条件时将所述定时模块配置为预切换状态;其中,所述定时模块在预切换状态下采用快时钟进行计数;

所述睡眠控制模块,用于在所述各模式的非定时模块处于睡眠状态或者空闲状态时,产生所述睡眠请求信号,并输出至各模式的定时模块;其中,所述非定时模块包含除定时模块以外的所有模块;

所述定时模块,用于在预切换状态下接收到所述睡眠请求信号时切换至睡眠状态;

所述睡眠控制模块在所有模式的定时模块均进入睡眠状态时将所述多模通信系统切换至深睡眠状态。

本发明的实施方式还提供了一种基带芯片的睡眠状态切换方法,应用于多模通信系统,所述基带芯片包含:睡眠控制模块、中央处理单元CPU与各模式的定时模块;

所述基带芯片的睡眠状态切换方法包含以下步骤:

所述CPU在检测到所述定时模块满足退出工作状态的条件时将所述定时模块配置为预切换状态;其中,所述定时模块在预切换状态下采用快时钟进行计数;

所述睡眠控制模块在所述各模式的非定时模块处于睡眠状态或者空闲状态时,产生所述睡眠请求信号,并输出至各模式的定时模块;其中,所述非定时模块包含除定时模块以外的所有模块;

所述定时模块在预切换状态下接收到所述睡眠请求信号时切换至睡眠状态;

所述睡眠控制模块在所有模式的定时模块均进入睡眠状态时将所述多模通信系统切换至深睡眠状态。

本发明的实施方式还提供了一种定时器,应用于多模通信系统,所述定时器在满足退出工作状态的条件时进入预切换状态,并在预切换状态下接收到睡眠请求信号时切换至睡眠状态;其中,所述定时器在所述预切换状态下采用快时钟进行计数。

本发明实施方式相对于现有技术而言,CPU在检测到定时模块满足退出工作状态的条件时将定时模块配置为预切换状态,且定时模块在预切换状态下采用快时钟进行计数,这样,就能保证尽可能地使用快时钟计数,进而保证了定时的精度,同时也没有增加额外的功耗;而且,在各模式的定时模块退出工作状态之后且在多模通信系统进入深睡眠状态之前,采用快时钟进行计数,可以有效减少RTC校准的频度,从而让系统尽可能多的处于深睡状态下,降低系统待机功耗;睡眠控制模块只有在各个模式的非定时模块都处于睡眠状态或者空闲状态时,即系统不需要运行在工作状态时,才产生睡眠请求信号,并通过睡眠请求信号控制所有模式的定时模块均进入睡眠状态,进而促使多模通信系统进入深睡眠状态,将系统功耗最大程度降低;此外,由于定时模块尽可能长时间(包括在预切换状态到切换状态的期间内)使用快时钟计数,也就是尽可能短时间地采用慢时钟(实时时钟)计数,那么在系统定时要求不变的情况下,就可以降低慢时钟源的要求,以及采用复杂度低的校准软件算法,即可以降低多模系统RTC时钟校准功能的软件实现复杂度,且在定时同步精度要求的范围内,选择更加低成本的RTC时钟源,从而降低系统的硬件成本。

另外,所述睡眠控制模块为包含与门的逻辑电路;所有模式的非定时模块的空闲信号通过所述与门相与后产生所述睡眠请求信号。通过与门实现的逻辑电路可以保证只有当所有模式的非定时模块都进入空闲状态时才产生睡 眠请求信号。

另外,所述睡眠控制模块还包含输出端口;所述输出端口与所述逻辑电路相连;所述输出端口,用于输出所述睡眠请求信号至各模式的定时模块。为睡眠控制模块增设一个用于输出睡眠请求信号的输出端口,保证了本就发明实施方式的可行性。

附图说明

图1是根据现有技术中的定时器的结构示意图;

图2是根据本发明第一实施方式中的基带芯片的原理框图;

图3是根据本发明第一实施方式的定时模块的状态切换示意图;

图4是根据现有技术中的定时器的状态切换示意图;

图5是根据本发明第一实施方式中的睡眠控制模块的逻辑电路示意图;

图6是根据本发明第一实施方式中的CPU的逻辑电路示意图;

图7是根据本发明第三实施方式的基带芯片的睡眠状态切换方法流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。

本发明的第一实施方式涉及一种基带芯片,应用于多模通信系统,具体 如图2所示,包含:睡眠控制模块、各模式的中央处理单元(CPU)与各模式的定时模块。

各模式的CPU在检测到对应的定时模块满足退出工作状态的条件时将定时模块先配置为预切换状态,具体如图3所示,定时模块在预切换状态下接收到睡眠请求信号时再经切换状态切换至睡眠状态;其中,定时模块在预切换状态下采用快时钟进行计数;301为正常计数状态切换到预切换状态,302为预切换状态切换至切换状态,303为切换状态切换至睡眠状态,304为唤醒定时器时定时器由睡眠状态切换至切换状态,305为由切换状态切换至正常计数状态。

与现有技术(如图4所示,定时模块在退出工作状态时,直接经切换状态切换至睡眠状态;其中,401为定时模块先由正常计数状态切换至切换状态,303为由切换状态切换至睡眠状态)相比,可以保证尽可能地使用快时钟计数,也就保证了采用该定时器的通信模式的定时的精度,同时也没有增加额外的功耗。而且,在采用该定时模块的通信模式的定时模块退出工作状态之后且在多模通信系统进入深睡眠状态之前,仅采用快时钟进行计数,可以有效减少RTC校准的频度,从而让系统尽可能多的处于深睡状态下,降低系统待机功耗。

具体地说,各模式的定时模块均包含一寄存器;各模式的CPU在检测到对应的定时模块满足退出工作状态的条件时触发寄存器将对应的定时模块配置为预切换状态。其中,寄存器内存储有定时模块预切换状态的配置信息。

睡眠控制模块在各模式的非定时模块处于睡眠状态或者空闲状态时,产生睡眠请求信号,并输出至各模式的定时模块;其中,非定时模块包含除定时模块以外的所有模块,比如,CPU、DMA以及HWA等。

具体地说,睡眠控制模块为包含与门的逻辑电路,睡眠控制模块上还增设了一个输出端口,该输出端口与逻辑电路相连。下面以非定时模块仅包含 CPU、DMA以及HWA为例进行举例说明。具体如图5所示,本实施方式中的逻辑电路包含6个与门501~506。

其中,与门501的输入端用于输入各模式计时模块的状态信号,计时模块的状态信号包含睡眠状态与非睡眠状态,其中,睡眠状态可以定义为状态1,非睡眠状态可以定义为状态0,经过与门后,只有所有模式的定时模块的状态全为睡眠状态时,与门501才输出状态1,即代表所有模式的定时模块均进入睡眠状态。

与门502的输入端用于输入各模式的CPU的状态信号,CPU的状态信号包含空闲状态与非空闲状态,其中,空闲状态可以定义为状态1,非空闲状态可以定义为状态0,经过与门后,只有所有模式的CPU的状态全为空闲状态时,与门502才输出状态1,即代表所有模式的CPU均进入空闲状态。比如,本实施方式中的多模通信系统包含3种通信模式,则本实施方式中的与门502如图6所示,包含3个输入端,每个输入端输入一种通信模式的CPU状态信号,其中,CPU的空闲状态对应状态1,非空闲状态对应状态0,只有与门601~603均输出状态1时与门502才输出状态1。总而言之,只有当所有模式的CPU均处于空闲状态时,与门502才输出状态1。

同理,与门503的输入端用于输入各模式的DMA的状态信号,DMA的状态信号包含空闲状态与非空闲状态,其中,空闲状态可以定义为状态1,非空闲状态可以定义为状态0,经过与门后,只有所有模式的DMA的状态全为空闲状态时,与门503才输出状态1,即代表所有模式的DMA均进入空闲状态。

同理,与门504的输入端用于输入各模式的HWA的状态信号,HWA的状态信号包含空闲状态与非空闲状态,其中,空闲状态可以定义为状态1,非空闲状态可以定义为状态0,经过与门后,只有所有模式的HWA的状态全为空闲状态时,与门504才输出状态1,即代表所有模式的HWA均进入 空闲状态。

由图5可知,只有与门502~504的输出端与与门506的输入端连接,且只有与门502~504的输出端输出均为状态1时,与门506才输出状态1,其中,与门506输出的状态1代表睡眠请求信号,即与门506只有在非定时模块均进入睡眠状态或者空闲状态时才输出睡眠请求信号,也就是,所有模式的非定时模块的空闲信号通过与门506相与后产生睡眠请求信号。

睡眠控制模块上新增的输出端口输出上述睡眠请求信号至各模式的定时模块。各模式的定时模块在预切换状态下接收到睡眠请求信号时从预切换状态经切换状态切换至睡眠状态。

再回到图5,由图5可知,与门501~504的输出端均与与门505的输入端连接,只有与门501~504的输出端均输出状态1时,与门505才输出状态1,其中,与门505输出的状态1代表可以使系统进入深睡眠状态的系统睡眠使能信号也就是说,只有各模式的定时模块均进入睡眠状态,且非定时模块也都进入空闲状态,与门505才产生系统睡眠使能信号,也就是说,基带芯片的睡眠控制模块在所有模式的定时模块均进入睡眠状态时才将多模通信系统切换至深睡眠状态。

需要说明的是,在基带芯片中可以仅包含一个CPU,用来控制多个模式的定时模块,也可以是多个CPU来分别控制各个定时模块,在本发明的实施方式中不做限制。

与现有技术相比,CPU在检测到定时模块满足退出工作状态的条件时将定时模块配置为预切换状态,且定时模块在预切换状态下采用快时钟进行计数,这样,就能保证尽可能地使用快时钟计数,进而保证了定时的精度,同时也没有增加额外的功耗;而且,在各模式的定时模块退出工作状态之后且在多模通信系统进入深睡眠状态之前,采用快时钟进行计数,可以有效减少RTC校准的频度,从而让系统尽可能多的处于深睡状态下,降低系统待机功 耗;睡眠控制模块只有在各个模式的非定时模块都处于睡眠状态或者空闲状态时,即系统不需要运行在工作状态时,才产生睡眠请求信号,并通过睡眠请求信号控制所有模式的定时模块均进入睡眠状态,进而促使多模通信系统进入深睡眠状态,将系统功耗最大程度降低;此外,由于定时模块尽可能长时间(包括在预切换状态到切换状态的期间内)使用快时钟计数,也就是尽可能短时间地采用慢时钟(实时时钟)计数,那么在系统定时要求不变的情况下,就可以降低慢时钟源的要求,以及采用复杂度低的校准软件算法,即可以降低多模系统RTC时钟校准功能的软件实现复杂度,且在定时同步精度要求的范围内,选择更加低成本的RTC时钟源,从而降低系统的硬件成本。

本发明的第二实施方式涉及一种定时器,应用于多模通信系统,该定时器在满足退出工作状态(正常计数状态)的条件时进入预切换状态,并在预切换状态下接收到睡眠请求信号时再切换至睡眠状态;其中,定时器在预切换状态下采用快时钟进行计数。

与现有技术相比,可以保证尽可能地使用快时钟计数,也就保证了采用该定时器的通信模式的定时的精度,同时也没有增加额外的功耗。而且,在采用该定时器的通信模式的定时模块退出工作状态之后且在多模通信系统进入深睡眠状态之前,仅采用快时钟进行计数,可以有效减少RTC校准的频度,从而让系统尽可能多的处于深睡状态下,降低系统待机功耗。

需要说明的是,定时器和目前已有的装置的配置兼容,无需额外的修改,就能有效提升定时同步的性能。

本发明第三实施方式涉及一种基带芯片的睡眠状态切换方法,如图7所示,包含以下步骤:

步骤701,CPU检测定时模块是否满足退出工作状态的条件。若是,则 执行步骤702,否则,继续执行步骤701。

步骤702,CPU将定时模块配置为预切换状态。其中,定时模块在预切换状态下采用快时钟进行计数。具体而言,CPU在检测到定时模块满足退出工作状态的条件时触发定时模块内的寄存器将定时模块配置为预切换状态。其中,寄存器内存储有定时模块预切换状态的配置信息。

步骤703,睡眠控制模块在各模式的非定时模块处于睡眠状态或者空闲状态时,产生睡眠请求信号,并输出至各模式的定时模块;其中,非定时模块包含除定时模块以外的所有模块。在本步骤中,模式的非定时模块的空闲信号通过睡眠控制模块中的与门相与后产生睡眠请求信号。

步骤704,定时模块在预切换状态下接收到睡眠请求信号时切换至睡眠状态。在本步骤中,通过睡眠控制模块的输出端口输出睡眠请求信号至各模式的定时模块。

步骤705,睡眠控制模块在所有模式的定时模块均进入睡眠状态时将多模通信系统切换至深睡眠状态。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

不难发现,本实施方式为与第一实施方式相对应的方法实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏 离本发明的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1