用于控制元件的活动的方法、系统和处理器技术方案

技术编号:2855725 阅读:185 留言:0更新日期:2012-04-11 18:40
公开了用于控制元件的活动的方法、系统和处理器。本发明专利技术可以控制元件的功率消耗。由软件为元件发出第一功率控制命令。判断功率控制命令是否对应于如硬件所定义的该元件的允许的功率控制状态。如果功率控制命令不是该元件的允许的功率控制状态,则硬件将功率控制设置到比软件发出的功率控制状态更高的级别。软件是实时软件,软件还设置最低可以接受的活动控制状态。由软件为芯片的不同的元件定义功率消耗的层次结构,软件提供芯片上的任何元件或子元件的功率消耗的最低级别。

【技术实现步骤摘要】

一般来说,本专利技术涉及功率消耗,具体来说,涉及对多处理器系统中的处理器和子系统的功率消耗相对于它们的实时功率消耗进行个体化的控制。背景在常规技术中,有多种控制处理芯片的功率耗散的方式。例如,引入了诸如on full、on slower、clock off和chip off之类的状态。示例有PowerPC体系结构的实现方式中的“nap、doze、sleep和suspend”状态,以及处理器的增强的Intel SpeedStep功率管理中的“sleep”和“deeper sleep”状态。然而,常规技术在应用于多处理器系统时会存在许多问题。首先,在现有的系统中,功率管理模式无法通过软件进行访问。在典型的实现方式中,由系统控制器负责使用芯片的功率管理功能来进行功率管理。这是不利的,因为尽管系统控制器能够响应诸如芯片或模块温度之类的系统方面,但是系统控制器拥有的有关处理器执行的任务的信息却很有限。在某些进行模拟的微处理器中,通过向硬件模拟层提供功率管理接口,可以部分地克服此问题。Transmeta公司在处理器中完成了这项工作。由于模拟层能够观察软件活动的级别,可以响应诸如芯片温度之类的外部测量值和由模拟软件监视的软件活动来进行功率管理。这能使这样的处理器在只执行诸如DVD播放之类的比较轻的任务时节省更多的电能。然而,由于功率管理状态对操作系统或管理程序不可用,更多的功率管理机会,比如通过计划任务和多个任务的活动的级别来管理功率不会被执行。此功能在多处理器系统中特别重要,其中,操作系统或管理程序能够自由地跨多个处理器重新平衡任务(线程),以便改善整个芯片或系统中的总的功率或功率和热分布。在对称多处理器系统中,甚至存在更大的布置任务或迁移的机会,因此,存在功率平衡的机会。此外,常规技术也没有成功地实现分别针对多处理器系统的单个处理器的控制系统。虽然创建了允许在锁定步骤中用微处理芯片对整个系统进行外部控制的“全系统的”实现方式,但是,也没有针对多处理器系统中的单个处理器的控制。此外,将处理器与诸如存储器控制器和总线控制器之类的单元的芯片系统(system-on-chip)设计需要将功率管理技术扩展到处理器本身之外。此外,现代的微处理器可以允许对单处理器核心内的单元进行比较详细的功率管理。因此,需要有层次性更强的方法,其中,功率管理状态可以适用于包括处理器、和处理器的子单元的单元的集合。因此,需要一种结构化的功率控制接口,该接口可以被多处理环境中的管理程序或操作系统使用,该接口至少解决与多处理器和芯片系统(system-on-chip)环境中的常规功率管理控制关联的某些问题。进一步需要实时操作系统或管理程序,为多处理器系统内的各种设备设置最小的活动级别,以便至少解决与常规多处理器系统关联的某些问题。
技术实现思路
本专利技术可以控制多处理器或芯片系统环境中的元件的功率消耗。由软件为元件发出第一功率控制命令。判断功率控制命令是否对应于如硬件所定义的该元件的允许的功率控制状态。如果功率控制命令不是该元件的允许的功率控制状态,则硬件将功率控制设置到比软件发出的功率控制状态更高的级别。软件是实时软件,软件还设置最低可以接受的活动控制状态。附图说明为对本专利技术、它的优点有一个比较完整的了解,现在将参考下面结合附图进行的详细说明,其中图1概要描述了其中进行了功率控制的多处理环境;图2A概要描述了单个元件控制的功率状态的过渡;图2B概要描述了功率消耗和被控制的元件的各种状态之间的关系;图3概要显示了与图1关联的多处理环境的功率层次结构;以及图4概要显示了使用实时操作系统或实时管理程序来为多处理器系统内的设备设置最小功率消耗的方法。具体实施例方式在下面的讨论中,阐述了许多具体的细节以提供对本专利技术的全面的了解。然而,那些本领域技术人员将理解,本专利技术可以不用这样的具体细节来实施。在其他情况下,以示意图或方框图的形式说明了已知的元素,以便不致以不必要的细节使本专利技术变得模糊。此外,在很大程度上,涉及网络通信、电磁信号技术等等的细节基本上也被省略,因为这样的细节对于对本专利技术的完整的了解没有必要,不会妨碍对精通相关技术的人的理解。在此说明书的剩余部分,处理单元(PU)可以是设备中的计算的单独的处理器。在这样的情况下,PU通常被称为MPU(主处理单元)。处理单元也可以是根据为给定计算设备开发的某种方法或算法分担计算负载的许多处理单元中的某一个单元。在此说明书的剩余部分,除非另有陈述,所有对处理器的引用都应该使用术语MPU,不论MPU是设备中的单独的计算元件,还是与其他MPU分担计算负载。需要进一步指出的是,除非特别指明,否则这里描述的所有功能都可以以硬件或软件或者两者的组合来实施。然而,在优选的实施例中,除非特别指明,功能是由诸如计算机或电子数据处理器之类的处理器根据诸如计算机程序代码、软件之类的代码执行的,和/或被编码以执行这样的功能的集成电路执行的。现在请看图1,该图说明了可以在其中对处理器中的单个元件进行功率控制的环境100。有一个连接到处理器单元120的存储器流量控制器(MFC)105,连接到本地存储器130的SPU 125,以及SMF 140。MFC 105和PU 120构成了PPC 101。通常,每一个元件都有其自己的子元件,每一个子元件在功率状态寄存器150中都有其自己的关联的功率状态的标志。如果没有子元件,诸如SPU 125之类的元件在功率状态寄存器150内都有其自己的功率状态。在功率状态寄存器150内,存在软件值,以便确保给定元件至少在支持软件所要求的系统功能所需的功率级别运行。例如,MFC 105具有L2高速缓存106、存储器管理单元(MMU)107、非可缓存的单元(NCU)108、总线接口单元109,以及微处理器接口单元(CIU)110。PU 120具有也连接到其自己的功率状态寄存器150的PPC核心121和L1高速缓存122。SPU 125和本地存储器130也连接到功率状态寄存器150。这些元件或子元件中的每一个都连接到功率状态寄存器150。同样,SMF 140具有直接存储器存取控制器(DMAC)141、存储器管理单元(MMU)142、原子存储器单元(ATO)143和总线接口单元(BIU)144。这些元件141-144中的每一个也都连接到功率状态寄存器150。MFC 105和高速缓存140连接到宽带引擎总线160。BEB 160也连接到I/O总线180、宽带接口(BEI)170、以及存储器接口控制器(MIC)190。这两者的活动或功率消耗级别都由功率控制寄存器185进行控制,而功率控制寄存器185又由功率状态寄存器150进行编程。子元件105、120、140等等读取寄存器150中的值,并判断是处于完全活跃状态、慢状态、暂停状态、保留状态和隔离状态,或丢失状态和隔离状态,还是处于另一个功率消耗状态,作为软件写入的值的函数。对于单个单元106-110等等,这些单个软件指定的状态中的每一个状态都对应于功率消耗的增大或缩小。然而,指定的并存储在每一个寄存器150内的供系统100内的每一个元件、子元件或单元使用的功率状态,在某些实现方式中,对于要求的硬件状态,可能不会具体实现。换句话说,只有功率状态的子集会被实现。例如,本文档来自技高网
...

【技术保护点】
一种控制元件的活动的方法,包括:由软件为系统的元件发出活动控制命令;判断活动控制命令是否对应于如硬件所定义的该元件的允许的活动控制状态,如果是,则将活动级别设置为由软件所定义的级别;如果活动控制命令不是该元件的允许的 活动控制状态,则通过硬件将活动控制设置为比软件发出的活动控制状态级别高的下一个允许的较高的级别,其中,软件是实时软件,软件还设置最低可以接受的活动控制状态。

【技术特征摘要】
US 2004-8-5 10/912,4811.一种控制元件的活动的方法,包括由软件为系统的元件发出活动控制命令;判断活动控制命令是否对应于如硬件所定义的该元件的允许的活动控制状态,如果是,则将活动级别设置为由软件所定义的级别;如果活动控制命令不是该元件的允许的活动控制状态,则通过硬件将活动控制设置为比软件发出的活动控制状态级别高的下一个允许的较高的级别,其中,软件是实时软件,软件还设置最低可以接受的活动控制状态。2.根据权利要求1所述的方法,其中,将活动控制设置到比由软件发出的活动控制命令级别高的较高级别的步骤是由硬件来执行的。3.根据权利要求1所述的方法,其中,发出第一活动控制命令的操作进一步包括设置活动级别。4.根据权利要求1所述的方法,其中,将活动控制设置在比由软件发出的活动控制命令级别高的较高级别的步骤进一步包括将活动控制设置到次最高级别。5.根据权利要求1所述的方法,进一步包括在活动层次结构内定义元件。6.根据权利要求5所述的方法,进一步包括为活动层次结构内的元件选择活动状态。7.根据权利要求6所述的方法,进一步包括从层次结构中的一个元件将活动状态继承到层次结构的第二元件。8.根据权利要求1所述的方法,进一步包括发出对多处理器系统的元件的活动控制命令,以分别控制多处理器系统的每一个元件。9.根据权利要求1所述的方法,其中,活动控制命令包括“活跃状态”活动命令。10.根据权利要求1所述的方法,其中,活动控制命令包括“慢状态”活动命令。11.根据权利要求1所述的方法,其中,活动控制命令包括“暂停状态”活动命令。12.根据权利要求1所述的方法,其中,活动控制命令包括“保留和隔离状态”活动命令。13.根据权利要求1所述的方法,其中,活动控制命令包括“丢失和隔离状态”活动命令。14.根据权利要求1所述的方法,其中,由软件发出活动控制命令进一步包括由实时操作系统发出活动控制命令。15.根据权利要求1所述的方法,其中,由软件发出活动控制命令进一步包括由实时管理程序发出活动控制命令。16.一...

【专利技术属性】
技术研发人员:杰弗里道格拉斯布朗迈克尔诺曼戴哈姆彼得霍福斯迪查尔斯雷约翰斯詹姆斯艾伦卡尔王帆
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1