用于控制处理器时钟频率的设备和方法

文档序号:6431136阅读:146来源:国知局
专利名称:用于控制处理器时钟频率的设备和方法
技术领域
本发明的实施例总体上涉及一种控制处理器时钟频率的设备和方法。


图1示出了根据本发明的一个实施例的设备的方框图。图2以流程图的形式示出了根据本发明的一个实施例的控制处理器时钟频率的方法。图3示出了根据本发明的实施例的蜂窝调制解调器的数据平面体系结构。图4示出了根据本发明的一个实施例的被适配于(adapt to)基于先入先出 (FIFO)的数据接口的设备的方框图。图5示出了根据本发明的一个实施例的被适配于基于共享存储器的数据接口的设备的方框图。在附图中,相同的附图标记在不同视图中一般指代相同的部件。附图不一定是按比例绘制的,相反其重点一般在于说明本发明的原理。
具体实施例方式下面的详细描述将解释本发明的示例性实施例。在适当情况下,对于方法实施例的描述被视为还描述相应的设备实施例的功能,反之亦然。下面的描述不应被视为做出限制,而是仅仅为了说明本发明的一般原理。但是本发明的范围仅由权利要求书限定,而不应由下面所描述的示例性实施例限制。在图1中示出了根据本发明的一个实施例的设备的方框图。对于中央处理单元(CPU)的时钟频率的动态缩放(scaling)是一种功率管理机制,其可以被用于嵌入式系统并且特别可以被用于电池供电的装置。进一步研究移动电话装置的技术领域可以发现,一般性的CPU性能需求以及还有针对充分动态的CPU性能缩放的需求变得越来越严格,这例如是因为对于诸如LTE (长期演进)之类的蜂窝无线电网络来说,其是以非常高的数据速率和低等待时间为目标的。出于以上原因以及其他原因,希望可以尽可能早地预测(或估计)所需求的CPU性能(与时间相关的性能要求),以便满足处理时间需求并且同时仍然实现充分动态的CPU时钟缩放。根据本发明的一个实施例,一种设备包括硬件计数器110以用来在预定时间段期间计数对存储器缓冲器120的写访问。所述设备还包括硬件比较器130以用来把由硬件计数器110所计数的写访问的次数与至少一个预定阈值进行比较。硬件比较器130还被配置成生成控制信号140,该控制信号140取决于由硬件计数器110所计数的写访问的次数与至少一个预定阈值的比较的结果,其中所述比较由硬件比较器130执行。所述设备还包括时钟频率设定电路150以用来根据控制信号140设定处理器160的时钟频率。根据本发明的一个实施例,提供一种硬件(HW)机制,其通过计数对一个或多个存储器缓冲器的写访问来跟踪(ke印track of )当前数据速率,并且根据所监视的数据速率发出一个或多个控制信号。所述一个或多个控制信号被用作针对动态CPU时钟缩放的输入,以便实现低等待时间的、与数据速率相关的CPU性能缩放。这样做的效果是可以更好地估计所需求的CPU性能,其中考虑到早期可用的存储器缓冲器状态信息以作为可变数据速率的一种度量。由于CPU时钟频率缩放由硬件(冊)直接发起,所以避免了由软件(SW)而导致的等待时间(延迟),并且可以在任意时间点以高准确度瞬时地提供当前所需要的处理器性能水平。这样做的另一方面的效果在于,即使是在处理器时钟被设定到非常低频率的时间段内出现的非常苛刻的实时要求也可以得到满足。在图2中以流程图200的形式示出了根据本发明的一个实施例的控制处理器时钟频率的方法。根据本发明的一个实施例,执行以下方法。在210处,在预定时间段期间由硬件计数器计数对存储器缓冲器的写访问。在220处,由硬件比较器把所计数的写访问的次数与至少一个预定阈值进行比较。在230处,由所述硬件比较器生成取决于在220处执行的比较的结果的控制信号。 还可以实施多个控制信号,其可以被用来从所支持的若干种CPU时钟设定当中选出一种。在240处,根据所述控制信号来设定处理器的时钟频率。在图3中示出了根据本发明的实施例的蜂窝调制解调器的数据平面体系结构。在这里示意性地图示出典型的蜂窝调制解调器或无线无线电调制解调器配置(其包括专用调制解调器和应用处理器)的示例性数据流程和示例性数据处理体系结构。对于这样的调制解调器,CPU时钟缩放可能是有利的,因为这种情况是嵌入式和电池供电的装置的一个实例。应当注意的是,所述调制解调器不限于蜂窝或无线无线电调制解调器,并且本发明的实施例还可以被应用于其中数据速率可能发生改变并且CPU性能与数据速率相关的任何其他种类的数据平面处理。关于动态CPU时钟缩放的重要设计目标在于,当前所应用的CPU时钟频率必须高到足以满足由当前工作负荷和所施加的实时要求所给出的瞬时CPU性能需求,且另一方面,CPU时钟频率应当尽可能地受到限制以便最小化系统的功率消耗。根据一种替换方案,对于CPU性能需求的预测和/或对于CPU性能(即CPU时钟频率)的缩放可以基于被用于预测CPU负荷的针对CPU利用率的持续监视,并且可能还与某种平均(averaging)相结合(其通常由CPU作为背景活动来执行)。该替换方案的缺陷主要在于,这种针对CPU时钟缩放的一般背景机制具有特定的最小等待时间,因此对于快速改变的CPU性能需求(非常动态的数据速率)连同严厉的实时约束来说是不足够的。根据另一种替换方案,对于CPU性能需求的预测和/或对于CPU性能(即CPU时钟频率)的缩放可以基于由各个SW模块所提交的明确的CPU性能需求(其例如可以从协议栈状态导出)。该替换方案的主要缺陷在于,通常需要涉及SW,因此一个结果是在SW可以控制对于CPU时钟频率的缩放之前其必须首先知晓当前的数据速率,这导致延迟发起由于数据速率改变而进行的必要的CPU性能缩放。在处理数据平面业务时,对于调制解调器处理器的CPU性能需求在很大程度上取决于上行链路方向和下行链路方向的数据速率。因此,所提出的方法使用存储器缓冲器状态信息来控制CPU时钟缩放。该信息可以在早期获得,这是因为存储器缓冲器将在协议栈第2层数据平面功能的实际处理发生之前被填充。从图3可以看出,来自应用处理器310的上行链路IP (网际协议)分组305正在应用处理器接口 320处进入调制解调器处理器域315。在该接口的上行链路输入缓冲器325 处可观测到的所接收到的上行链路IP数据量将被用作控制信息以用于生成控制信号,所述控制信号用于对与上行链路处理相关的CPU性能进行缩放。还可以实施多个控制信号, 其可以被用来从所支持的若干种CPU时钟设定当中选出一种。因此,协议栈第2层数据平面 330的功能对这些上行链路数据的处理可以在经过相应地调节的调制解调器处理器时钟频率下进行。在该处理之后,上行链路传输块335被传递到物理层接口 340并且从该处进一步被传递到物理层345,在所述物理层中进行基带信号处理。最后,通过空中接口 350发送上行链路数据。同样地,通过空中接口 350接收到的下行链路数据在物理层345中被处理。此后, 来自物理层345的下行链路传输块355在物理层接口 340处进入调制解调器处理器域315, 并且在该接口的下行链路输入缓冲器360处可观测到的所接收到的下行链路传输块数据的量将被用作控制信息以用于生成控制信号,所述控制信号用于对与下行链路处理相关的 CPU性能进行缩放。还可以实施多个控制信号,其可以被用来从所支持的若干种CPU时钟设定当中选出一种。因此,协议栈第2层数据平面330的功能对这些下行链路数据的处理可以在经过相应地调节的调制解调器处理器时钟频率下进行。在该处理之后,下行链路IP分组365被传递到应用处理器接口 320并且从该处进一步被传递到应用处理器310。取决于所实施的应用处理器接口 320和/或物理层接口 340的种类,所述输入存储器缓冲器(上行链路输入缓冲器325、下行链路输入缓冲器360)在基于共享存储器的接口的情况下可以是专用的共享存储区域,或者在另一类通信链路(例如快速串行连接)的情况下是FIFO (先入先出)类型的存储器缓冲器。在图4中示出了根据本发明的一个实施例的被适配于基于先入先出(FIFO)的数据接口的设备的方框图。在这里示意性地图示出所提出的HW电路的一个实例,其在把基于FIFO的类型的接口用于向数据处理链(数据平面冲馈送数据的情况下实现与数据速率相关的CPU性能缩放。—般来说,由传入数据410强加在数据处理链上的当前应用的数据速率直接映射在每个时间段对FIFO缓冲器420的FIFO写访问的次数上。在每一个评估时间段期间,由硬件计数器430计数对FIFO缓冲器420的写访问。 在每一个评估时间段边界处,即在评估时间段定时器440终止时,锁存当前的写访问计数器值并且重新开始写访问计数。随后在450处由硬件比较器460把锁存的写访问计数器值与所配置的一个或多个阈值进行比较。每当阈值被超出时,由硬件比较器460在470处激活相应的控制信号480。在这里,超出阈值意味着两种情况,即计数器值变为高于阈值以及计数器值变为低于阈值。可以配置一个或多个阈值上限,其在一个评估时间段期间的写访问的次数不断增多的情况下触发对于CPU时钟频率的(一个或多个)放大(up-scaling)步骤。同样地,一个或多个阈值下限控制对于CPU时钟频率的(一个或多个)缩小(down-scaling)步骤。可以实施针对控制信号激活的若干种选项。如果CPU时钟缩放由SW执行,则所述控制信号是中断信号,其向正由调制解调器处理器执行的SW指示需要执行CPU时钟频率改变。如果CPU时钟缩放由HW执行,则所述(一个或多个)控制信号是HW控制信号,其向 CPU时钟缩放HW功能指示需要执行特定的CPU时钟频率改变。还可以实施多个控制信号,其可以被用来从所支持的若干种CPU时钟设定当中选出一种。在图5中示出了根据本发明的一个实施例的被适配于基于共享存储器的数据接口的设备的方框图。在这里示意性地图示出所提出的HW电路的一个实例,其在把共享存储器类型的接口用于向数据处理链(数据平面冲馈送数据的情况下实现与数据速率相关的CPU性能缩放。其基本原理与前面已经参照图4描述过的基于FIFO的类型的接口的情况相同。在当前的实例中,正如可以从图5看出的那样,对于共享存储器类型的接口还附加地使用地址比较器510,以便能够检测被用于处理器间通信的特定存储器地址区域内的写访问。这意味着将传入数据410写入到共享存储器530的专用共享存储区域520中的 (每时间段)写访问被检测到,所述写访问映射在被强加在数据处理链上的当前所应用的数据速率。在每一个评估时间段期间,由硬件计数器430计数对共享存储器530的专用共享存储区域520的写访问。在每一个评估时间段边界处,即在评估时间段定时器440终止时, 锁存当前的写访问计数器值并且重新开始写访问计数。随后在450处由硬件比较器460把锁存的写访问计数器值与所配置的一个或多个阈值进行比较。每当阈值被超出时,由硬件比较器460在470处激活相应的控制信号480。在这里,超出阈值意味着两种情况,即计数器值变为高于阈值以及计数器值变为低于阈值。可以配置一个或多个阈值上限,其在评估时间段期间的写访问的次数不断增多的情况下触发对于CPU时钟频率的(一个或多个)放大步骤。同样地,一个或多个阈值下限控制对于CPU时钟频率的(一个或多个)缩小步骤。在当前的实例中,同样可以实施针对控制信号激活的若干种选项。如果CPU时钟缩放由SW执行,则所述控制信号是中断信号,其向正由调制解调器处理器执行的SW指示需要执行CPU时钟频率改变。如果CPU时钟缩放由HW执行,则所述(一个或多个)控制信号是HW控制信号,其向 CPU时钟缩放HW功能指示需要执行特定的CPU时钟频率改变。还可以实施多个控制信号,其可以被用来从所支持的若干种CPU时钟设定当中选出一种。根据本发明的一个实施例,蜂窝无线电调制解调器包括根据本发明的一个实施例的设备。
6
根据本发明的另一个实施例,蜂窝无线电调制解调器被配置成实施根据本发明的一个实施例的方法。根据本发明的另一个实施例,由其中一项权利要求限定的任意实施例可以与由对应的一项或多项其他权利要求限定的任意一个或多个其他实施例相结合。
权利要求
1.一种设备,包括硬件计数器,其用来在预定时间段期间计数对存储器缓冲器的写访问;硬件比较器,其用来把由所述硬件计数器所计数的写访问的次数与至少一个预定阈值进行比较;所述硬件比较器还用来生成控制信号,该控制信号取决于由所述硬件计数器所计数的写访问的次数与至少一个预定阈值的比较的结果,其中所述比较由所述硬件比较器执行; 以及时钟频率设定电路,其用来根据所述控制信号设定处理器的时钟频率。
2.如权利要求1所述的设备,所述时钟频率设定电路还用来在由所述硬件计数器所计数的写访问的次数高于所述至少一个预定阈值的情况下将所述时钟频率设定到更高值。
3.如权利要求1所述的设备,所述时钟频率设定电路还用来在由所述硬件计数器所计数的写访问的次数低于所述至少一个预定阈值的情况下将所述时钟频率设定到更低值。
4.如权利要求1所述的设备,其中,所述至少一个预定阈值包括至少两个预定阈值。
5.如权利要求4所述的设备,所述时钟频率设定电路还用来在由所述硬件计数器所计数的写访问的次数高于所述至少两个预定阈值当中的较低一个并且低于所述至少两个预定阈值当中的较高一个的情况下将所述时钟频率保持恒定。
6.如权利要求1所述的设备,其中,所述硬件计数器包括地址比较器。
7.如权利要求1所述的设备,其中,所述控制信号包括用来触发软件中断的信号。
8.如权利要求1所述的设备,其中,所述控制信号包括用来控制时钟缩放硬件的信号。
9.如权利要求1所述的设备,其中,所述处理器受到实时约束。
10.如权利要求1所述的设备,其中,所述处理器包括无线调制解调器处理器。
11.如权利要求1所述的设备,其中,所述处理器用来根据蜂窝无线电协议栈处理数据。
12.如权利要求1所述的设备,其中,所述存储器缓冲器用来缓冲将根据蜂窝无线电协议栈进行处理的数据。
13.如权利要求1所述的设备,其中,所述存储器缓冲器包括先入先出类型的缓冲器。
14.如权利要求1所述的设备,其中,所述存储器缓冲器包括专用共享存储区域。
15.一种控制处理器时钟频率的方法,其包括在预定时间段期间由硬件计数器计数对存储器缓冲器的写访问;由硬件比较器把所计数的写访问的次数与至少一个预定阈值进行比较;由所述硬件比较器生成控制信号,该控制信号取决于所述比较的结果;以及根据所述控制信号设定处理器的时钟频率。
16.如权利要求15所述的方法,其还包括在由所述硬件计数器所计数的写访问的次数高于所述至少一个预定阈值的情况下,将所述时钟频率设定到更高值。
17.如权利要求15所述的方法,其还包括在由所述硬件计数器所计数的写访问的次数低于所述至少一个预定阈值的情况下,将所述时钟频率设定到更低值。
18.如权利要求15所述的方法,其还包括如果所述至少一个预定阈值包括至少两个预定阈值,并且由所述硬件计数器所计数的写访问的次数高于所述至少两个预定阈值当中的较低一个并且低于所述至少两个预定阈值当中的较高一个,则将所述时钟频率保持恒定。
全文摘要
本发明涉及用于控制处理器时钟频率的设备和方法。提供了一种用于控制处理器时钟频率的设备和方法。所述设备包括硬件计数器,其用来在预定时间段期间计数对存储器缓冲器的写访问;硬件比较器,其用来把由所述硬件计数器所计数的写访问的次数与至少一个预定阈值进行比较;所述硬件比较器还用来生成控制信号,该控制信号取决于由所述硬件计数器所计数的写访问的次数与至少一个预定阈值的比较结果,其中所述比较由所述硬件比较器执行;以及时钟频率设定电路,其用来根据所述控制信号设定处理器的时钟频率。
文档编号G06F1/04GK102375471SQ20111023976
公开日2012年3月14日 申请日期2011年8月19日 优先权日2010年8月19日
发明者希尔德布兰 U. 申请人:英特尔移动通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1