CN100447709C - 根据能量指示符进行动态程序节流的会聚设备 - Google Patents

根据能量指示符进行动态程序节流的会聚设备 Download PDF

Info

Publication number
CN100447709C
CN100447709C CNB2004800325154A CN200480032515A CN100447709C CN 100447709 C CN100447709 C CN 100447709C CN B2004800325154 A CNB2004800325154 A CN B2004800325154A CN 200480032515 A CN200480032515 A CN 200480032515A CN 100447709 C CN100447709 C CN 100447709C
Authority
CN
China
Prior art keywords
program
capacity
nonessential
processor
power supply
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB2004800325154A
Other languages
English (en)
Other versions
CN1961278A (zh
Inventor
冈特·温伯格
C·约翰·格洛斯纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Sandbridge Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sandbridge Technologies Inc filed Critical Sandbridge Technologies Inc
Publication of CN1961278A publication Critical patent/CN1961278A/zh
Application granted granted Critical
Publication of CN100447709C publication Critical patent/CN100447709C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

用于在会聚设备中通过控制程序执行来节约能量的技术,所述会聚设备包括电池或其它电源以及至少一个处理器。该处理器被配置成执行与语音呼叫通信功能相关的处理操作并且执行与数据通信功能相关的处理操作,并且该处理器可操作用以执行关键性程序和非关键性程序。所述会聚设备为与数据通信功能相关联的多个非关键性程序中的至少给定的一个非关键性程序存储至少一个替代容量程序的标识符,该替代容量程序能够执行与所述给定程序基本相同的功能,但是其具有与其相关联的不同的电源容量。至少部分地基于表示电源的剩余容量或其它特性的能量标识符来将执行给定程序替换成执行替代容量程序,以便增加可用于语音呼叫通信功能的电源容量的量。

Description

根据能量指示符进行动态程序节流的会聚设备
技术领域
本发明总体上涉及基于处理器的通信设备,更具体地说,涉及一种会聚(convergence)设备,其可以包括被配置成用于处理语音、数据、音频、视频和通过各种不同介质进行通信的其它信息的通信设备。
背景技术
会聚设备一般结合有各种不同的通信和多媒体数据处理功能。这种设备的一个例子是所谓的“智能”电话,其通常包括处理器,该处理器能够运行多媒体应用程序或与数据通信功能相关的其它程序,以及与蜂窝语音呼叫通信功能相关的程序。举例来说,给定的智能电话可以被配置成允许用户检索电子邮件、浏览因特网、管理个人信息以及使用文本消息,同时它还提供对于传统蜂窝电话语音呼叫的支持。
这种类型的会聚设备的一个更具体的例子是最近开发的高速CDMA通信系统的无线移动单元;所述高速CDMA通信系统例如在通过引用结合与此的第三代合作伙伴计划(3GPP)技术规范TS 25.1xx中描述的3GPP宽带CDMA(WCDMA)系统。除蜂窝通信功能之外,或者取代蜂窝通信功能,会聚设备还可以包括符合IEEE 802.11标准或其它适用的无线网络标准的无线网络功能,其中,IEEE 802.11标准被通过引用结合与此。
会聚设备往往需要执行多种不同类型的代码,包括与信号处理操作相关的数字信号处理器(DSP)代码以及用Java或其它面向对象编程语言编写的高级程序应用代码。
在于2002年10月11日提交的、名称为“Multithreaded Processor WithEfficient Processing For Convergence Device Applications”、序列号为10/269,372的美国专利申请中描述了特别适合在会聚设备中使用的多线程处理器,该申请被随本申请共同转让,并且被通过引用结合与此。如在序列号为10/269,372的美国专利申请中所描述的,多线程处理器的一个示例性实施例能够执行基于RISC的控制代码、DSP代码、Java代码和网络处理代码。该处理器包括单指令多数据(SIMD)向量单元、精简(reduction)单元和长指令字(longinstruction word,LIW)混合指令执行。
会聚设备一般被配置成使用电池能量工作。在这种设备中,通常都期望在电池容量降低时维持特定的最小语音呼叫通信能力。一般来说,与数据通信功能相关的处理,例如多媒体应用处理,所要求的计算能力要比蜂窝语音呼叫通信高得多,因此其所花费的电池能量也比蜂窝语音呼叫通信多。
不幸的是,传统的能量节约(conservation)技术不是为了适应会聚设备的特定配置和功能而设计的,从而无法在这种设备中提供最佳的性能。因此出现了对于可在会聚设备中使用的改进的能量节约技术的需要。
发明内容
本发明提供一种改进的技术,用于在基于处理器的会聚设备中节约来自电池或其它电源的能量。
根据本发明的一个方面,提供用于通过在会聚设备中控制程序执行来节约能量的技术,所述会聚设备包括电池或其它电源以及至少一个处理器。所述处理器可以包括多线程处理器或其它类型的处理器。所述处理器被配置成执行与数据通信功能相关的处理操作,并且可操作用以执行关键性(critical)程序和非关键性(noneritical)程序。
关键性程序可以包括例如可被利用来实现在处理器上运行的操作系统、会聚设备的图形用户界面和一个或多个语音呼叫通信功能中的至少一个的程序。
最好基于电源容量将非关键性程序分成至少两个类别,包括第一容量的类别和第二容量的类别,该第一容量是低于第二容量的容量。至少多个非关键性程序的子集中的每一个非关键性程序可以处于多个状态之一,所述多个状态至少包括执行状态、挂起状态和休眠状态。
在操作中,会聚设备为与数据通信功能相关的多个非关键性程序中的至少给定的一个非关键性程序存储至少一个替代(alternate)容量程序的标识符,所述替代容量程序能够执行与给定的程序基本上相同的功能,但是具有与其相关的不同的电源容量。至少部分地根据表示电源的剩余容量或其它特性的能量指示符来将执行给定程序替换成执行替代容量程序,以便增加可用于语音呼叫通信功能的电源容量的量。例如,如果能量指示符低于第一阈值,则将执行给定的非关键性程序替换成执行替代容量非关键性程序,其中,与所述替代容量非关键性程序相关的电源容量低于所述给定程序。类似地,如果所述能量指示符不低于第一阈值,则将执行给定非关键性程序替换成执行替代容量非关键性程序,与所述替代容量非关键性程序相关的电源容量高于给定程序。
在示例性实施例中,数据通信功能可以包括一个或多个功能,所述功能与一个或多个指定数据速率、指定刷新速率和指定显示分辨率的多媒体处理相关。给定程序可以以指定数据速率、刷新速率或显示分辨率来执行多媒体处理,并且在这种情形下,执行与该给定程序基本上相同功能的替代容量程序可以以与给定程序不同的数据速率、刷新速率或显示分辨率来执行多媒体处理。
根据本发明的另一个方面,如果能量指示符低于比第一阈值低的第二阈值,则将每一个给定非关键性程序和替代非关键性程序都设置成休眠状态。或者,如果能量指示符不低于所述第二阈值,则将任何处于休眠状态的非关键性程序设为挂起状态。所述第二阈值可以表示用于继续一个或多个语音呼叫通信功能的最小可接受容量。
优点在于,本发明的技术能够实质地增加对于给定电池容量水平会聚设备提供语音呼叫通信功能的时间段。
附图说明
图1是示例性的实现本发明的基于处理器的会聚设备的方框图。
图2是图1的会聚设备的多线程处理器的示例性实施例的更具体的方框图。
图3是示出对于特定通信功能示例处理器的百分比利用率的图表。
图4是根据本发明在图1的会聚设备中实现的动态程序节流(throttle)处理的流程图。
具体实施方式
下面将说明在被配置成包括多线程处理器的示例的会聚设备中实现的本发明。但是应该理解,本发明并不要求使用示例性实施例的特定会聚设备和多线程处理器,而是更广泛地适用于任何期望提供改进的电池能量或其它类型能量的节约的基于处理器的会聚设备。此处所使用的术语“会聚设备”旨在包括而不限于移动电话、个人数字助理(PDA)、便携式计算机或其它类型的结合了语音呼叫通信功能和数据通信功能的基于处理器的通信设备。
图1示出了根据本发明示例性实施例的会聚设备100。该会聚设备包括连接到主存储器104的处理器102。同样连接到处理器102的还有一个或多个收发机105、一个或多个网络接口106和监视电池108的容量的电池监视器107。
举例来说,收发机105可以与诸如WCDMA通信功能的蜂窝通信功能相关联,或者与在会聚设备中实现的其它类型的语音呼叫通信功能相关联。再例如,网络接口106可以与无线网络功能,例如IEEE 802.11无线网络功能相关联,或者与在会聚设备中实现的其它类型的数据通信功能相关联。
电池监视器107和电池108可以完全采用传统的设计,并且这种元件的多种可能的实现对于本领域技术人员来说都是直接且显而易见的。一般来说,电池监视器107生成至少一个电池指示符信号,该信号也可被称为电池指示符,它可以指示电池容量剩余的百分比,或者其它类型的电池108的剩余能量水平或其它容量水平。电池指示符是此处被更一般地称为能量指示符的一个例子。本发明并不要求使用任何特定类型的能量指示符,而是可以被直接配置成利用本领域技术人员所熟知的多种此类指示符中的任何一种来工作。并且,本发明也可以与除电池之外的其它电源一起使用。
会聚设备100可以被配置成利用例如在J.Glossner、D.Iancu、J.Lu、E.Hokenek,和M.Moudgill,“A Software Defined Communications BasebandDesign”,IEEE Communications Magazine,Vol.41,No.1,第120-128页,2003年1月,以及J.Glossner,E.Hokenek,和M.Moudgill,“Proceedings of the 2002Software Defined Radio Technical Conference”,Volume I,第195-199页,2002年11月11-12日,San Diego,California中所描述的软件无线电(softwaredefined radio,SDR)技术,以上两篇文章被通过引用结合与此。
在上面引用的参考文献中描述的用来实现SDR技术的示例的集成电路产品是美国纽约White Plains的Sandbridge Technologies,Inc.的SB9600TM基带处理器。
图2示出了处理器102的一个可能的实施例的更具体的视图。尽管如上面所指出的,本发明并不要求使用多线程处理器,但是在该例子中还是将处理器102实现为多线程处理器。该多线程处理器包括多线程高速缓冲存储器(cache memory)110、数据存储器112、高速缓存(cache)控制器114、指令解码器116、寄存器(register)文件118以及一组算术逻辑单元(ALU)120。这里也将多线程高速缓冲存储器110称为多线程高速缓存。
多线程高速缓存110包括多个线程高速缓存110-1、110-2、......、110-N,其中N一般表示多线程处理器102所支持的线程数。因此,在多线程高速缓存110中,每个线程都具有一个与其相关联的线程高速缓存。类似地,数据存储器112包括N个不同的数据存储器实例,如图所示,表示为数据存储器112-1、112-2、......、112-N。
多线程高速缓存110中的每个线程高速缓存可以包括具有一组或多组存储器位置的存储器阵列(array)。已知的线程高速缓存还可以包括或关联有线程标识符寄存器,用于存储相关的线程标识符。
线程高速缓存110经由高速缓存控制器114与主存储器104连接。高速缓存控制器114保证来自主存储器104的适当的指令被加载到多线程高速缓存110。在本示例性实施例中的高速缓存控制器114与和各个线程高速缓存110-1、110-2、......、110-N相关联的逻辑电路或其它处理元件协同工作,可以实现诸如全相联映射、直接映射或组相联映射的地址映射技术中的至少一部分技术。
在同于2002年6月4日提交的序列号为10/161,774和10/161,874的美国专利申请中描述了适合与本发明协同使用的示例性的组相联映射技术;以上两个申请都被与本申请共同转让,并且都被通过引用结合与此。
一般来说,多线程高速缓存110被用来存储将由多线程处理器102执行的指令,而数据存储器112存储由所述指令在其上进行操作的数据。指令解码器116从多线程高速缓存110取出指令,并与寄存器文件118和ALU 120协同工作来以传统方式对指令的执行进行控制。诸如116、118和120的多线程处理器元件的操作在本领域中是被熟知的,因此在这里不再具体描述。
数据存储器112通常被直接连接到主存储器104,尽管这一连接没有在图中明确地示出。
存储器104、110和112中的一个或多个可以分别被配置成包括多个存储器组(bank)或其它指定部分。举例来说,每个存储器组可以被看作是由一个或多个存储器模块构成的,或者是由单个存储器模块的指定部分构成的。
在于2002年10月11日提交的、名称为“Method and Apparatus forThread-Based Memory Access in a Multithreaded Processor”、序列号为10/269,247的美国专利申请中描述了与多线程处理器相关的这些或其它存储器的基于线程的存储器分组(banking)技术,该申请被与本申请共同转让,并且被通过引用结合与此。
此处所使用的术语“存储器”旨在被广义地理解,从而包含内部或外部存储器、高速缓冲存储器、数据存储器或其它数据存储元件的安排(arrangement)。本发明并不限于任何特定的存储器类型、结构或应用。然而需要注意的是,在处理器领域中,存储器通常被理解为是与寄存器,例如图2中那些包括寄存器文件118的寄存器不同的。
在于2002年10月11日提交的名称为“Method and Apparatus for RegisterFile Port Reduction in a Multithreaded Processor”、序列号为10/269,373的美国专利申请中描述了基于线程访问寄存器文件的技术,该申请被与本申请共同转让,并且被通过应用结合于此。
需要注意的是,图1和2中所示的特定安排是为了示例的清楚而被简化了的,其还可以包括没有被明确示出的其它元件或可替代元件,这对于本领域技术人员来说将是显而易见的。
还需要强调的是,本发明并不要求图2所示的特定多线程处理器结构。本发明可以在大量其它多线程或非多线程处理器结构中实现。
在上面引用的序列号为10/269,372的美国专利申请中描述了图2所示的那种类型的、且适合与本发明结合使用的多线程处理器的例子。
多线程处理器102可以被配置成利用被称为令牌触发线程化(tokentriggered threading)的线程化方法或者其它适用的线程化技术。流水线也最好与这种线程化协同使用。在于2002年10月11日提交的、名称为“Method andApparatus for Token Triggered Meltithreading”、序列号为10/269,245的美国专利申请中描述了适合与本发明一起使用的线程化和流水线技术的例子,该申请被与本申请共同转让,并且被通过引用结合与此。
在多线程处理器中,已知的线程通常被看作是硬件和软件方面的线程。与给定线程相关联的特定处理器硬件线程往往被更具体的称为硬件线程单元,或被简称为“上下文(context)”。此处所使用的术语“线程”旨在包括软件或者硬件线程,或者它们两者。
根据本发明的一个方面,本发明提供一种用于在图1的会聚设备100中进行能量节约的改进技术。更具体地说,在示例性实施例中的本发明提供一种用于根据由电池监视器107生成的能量指示符来进行动态程序节流的技术。
如之前在本文中所指出的,通常都期望在电池容量降低时在诸如设备100的会聚设备中维持特定的最小语音呼叫通信能力。并且,多媒体应用处理或其它类型的与数据通信相关的处理所要求的计算容量要远远大于语音呼叫蜂窝通信,因此也要花费更多的电池能量。
本发明的技术可以被用于例如保证对于给定电池容量在尽可能长的时间段内提供蜂窝语音呼叫能力。在这种方案中,处理器102被配置用来至少部分地根据能量指示符来对非关键的程序进行节流,从而防止执行这样的程序。
图3是示出对于特定数据通信功能示例处理器的百分比利用率的图表。在该情形中,处理器是上面提到的Sandbridge Technologies SB9600TM基带处理器。该处理器包括多个多线程处理器核,总共提供每秒96亿次(9.6billion)累乘(multiply-accumulate,MAC)运算,并且该处理器还能够被用来实现与多个不同的通信协议相关的基带处理。
图中的图表示出了SB9600TM基带处理器在不同比特率下对于使用两种蜂窝协议,即WCDMA和通用无线分组业务(GPRS)中的每一种以及一种无线局域网协议,即IEEE 802.11b协议的数据通信的百分比利用率。需要注意的是,任意蜂窝协议中的语音呼叫所要求的百分比利用率都比该图表中示出的任何数据通信要低。这是非常重要的,因为利用率越高,能量消耗就越高,而电池寿命也就越短。
SB9600TM基带处理器是处理器的例子,在这样的处理中,语音呼叫通信和多媒体数据处理两者或者其它数据通信功能都主要以运行在多线程处理器核中的软件来实现。
在语音呼叫通信和数据通信操作都以软件实现的会聚设备中,随着关键性电池资源的减少,特别期望能够控制由数据通信功能所消耗的能量。更有利地是,这使得语音呼叫通信能力的最小功能能够持续特定时间量。
举例来说,一般的会聚设备电池在完全充电时可以持续八小时用于语音呼叫通信,而可以持续两个小时用于数据通信。如果已经发生了一个小时的数据通信,则这也会将剩余的语音呼叫通信容量减小为四个小时。
使用本发明的动态程序节流技术,当电池容量降到低于指定水平时,数据通信可以被有利地控制,从而能够使基本的语音通信功能被保持的时间段比其它情况下可能的时间段要长得多。
现在将参照图4说明示例的动态程序节流技术。图4示出了在本发明的示例性实施例中的动态程序节流处理的流程图400。
在下面的描述中,非限制地假定在处理器102上执行一系列指令构成过程(procedure),而向其施加指令的数据总体上构成任务(task)。给定的过程和任务可以被看作是被更一般地称为程序的例子。因此,此处所使用的术语“程序”旨在包括任何指令组和其它类型的代码。会聚设备100被非限制地假定为执行与语音呼叫通信相关的业务以及与多媒体处理和涉及数据通信的其它类型的处理相关的业务。
一般来说,在执行图4的动态程序节流处理之前,任务被分类成至少两类。虽然也可以使用其它的分类,但是在本示例性实施例中,任务被分类成两类,也就是关键性的和非关键性的。
关键性任务是那些无论是否剩余足够的电池容量都必须一直运行的任务。关键性任务的例子包括在处理器102上执行的操作系统,会聚设备100的图形用户接口以及和语音呼叫相关的处理任务。
还可以依照容量将非关键性任务分类。非关键性任务的一个例子是多媒体处理,或与可以以多种刷新率和显示分辨率工作的数据通信相关的其它类型的处理。更具体的例子是涉及每秒30帧、分辨率为640×480的MPEG视频相对于每秒10帧、分辨率为240×180的MPEG视频的处理。另一个例子是64kbps或192kbps的单声道或立体声的音频。再一个例子是可以在多数据速率工作的数据通信处理,例如1、2、5.5或11Mbps的802.11b。这些组非关键性任务的区别特征在于计算要求随着质量或性能而改变,但是基础软件除容量要求之外不变。
在处理器102的内部存储器中、主存储器104中或在会聚设备的其它地方维护非关键性任务的列表。还可以维护关键性任务的列表。可以至少部分地根据由任务执行所消耗的电池容量的量来将非关键性任务至少规定为低容量或高容量。也可以使用基于容量将非关键性任务分成不同类别的其它组织方法。
此处相对于给定任务或其它程序所使用的术语“容量”旨在包括但不限于该程序的容量利用率,或任何其它指定该程序的、与容量相关的特性的信息。因此与给定程序相关联的电源容量可以是指例如由该程序所使用的电源容量的量、该程序所要求的最小或最佳电源容量的量、或可能分配给包含该程序的容量类别的其它类型的容量标签。
给定的非关键性任务可以具有多个与其相关的不同状态设置之一,状态设置的例子可以包括执行、挂起和休眠。处于执行状态的任务是激活的(active)且在处理器上正在运行的。处于挂起状态的任务尚未被执行,但是一旦可获得足够的处理器资源就将被允许运行。休眠的任务是被加载到处理器存储器但在操作系统改变其状态之前不允许转换到挂起状态的任务。
但是应该理解,结合图4所描述的具体任务或程序配置、容量水平和状态设置仅仅是例子,在替代实施例中也可以使用其它方案(arrangement)。
现在参照流程图400,在步骤402检查电池指示符。如上面所提到的,电池指示符可以表示电池容量剩余的百分比,或者可以是可以指示电池容量的其它适当的格式。一般来说,如果电池容量低于规定的阈值,此处表示为阈值1,并且存在实质上满足与当前执行的非关键性任务相同功能但容量较低的替代非关键性任务,则将当前执行的较高容量的任务替换成该较低容量的任务。以类似的方式,如果电池容量高于阈值1并且对于当前执行的较低容量任务存在替代的较高容量任务,则该较低容量任务被替换成较高容量的任务。
在图中的步骤404到416实现动态程序节流处理的这个部分。需要注意的是,单个正在执行的任务可以被替换成多个替代容量任务,或者多个正在执行的任务可以被替换成单个替代容量任务,只要适合用来保持实质相同的功能同时还节约电池能量。
更具体地说,如果在步骤404确定电池容量低于阈值1,则步骤406检查非关键性任务列表,步骤408确定是否存在任何满足相同功能的替代容量非关键性任务和任务组,并且如果存在则步骤410从非关键性任务列表加载指定的(identified)一个或多个低容量任务,以代替一个和多个当前执行的任务来执行。类似的,如果步骤404指示电池容量没有低于阈值1,则步骤412检查非关键性任务列表,步骤414确定是否存在任何满足相同功能的替代容量非关键性任务或任务组,并且如果存在,则步骤416从非关键性任务列表加载指定的一个或多个任务,以代替一个和多个当前执行的任务来执行。如果在步骤408或414确定不存在满足当前执行的任务的功能的替代容量任务,则步骤410和416分别被绕过,并且处理移动到步骤418。否则,处理在执行了步骤410或步骤416后移动到步骤418。
如上面所指出的,在步骤404到416所执行的处理部分仅使用单个阈值,也就是阈值1来控制被基于容量分成两类的非关键性任务的执行。但是,在其它的实施例中随着容量类别的相应增加,也可以使用多个阈值。
在步骤418,对于电池容量是否低于第二阈值进行确定,这里将该第二阈值表示为阈值2。该第二阈值通常指示最小可接受容量,并且举例来说可以被确定为允许会聚设备中的语音呼叫能力持续规定时间段的容量。通常,如在步骤418到424所示出的,如果电池容量低于最小可接受容量,则基于阈值2的处理部分将所有非关键性任务设置成休眠状态。
更具体地说,如果步骤418确定电池容量低于阈值2,则在步骤420检查非关键性任务的列表,并且如在步骤422所指示的将该列表中的所有非关键性任务设置成休眠状态。否则,如果电池容量不低于阈值2,则在步骤424将所有休眠的任务设置成挂起状态。在执行了步骤422或424之后,处理返回到步骤402,并且可以以这种方式连续地或以规定的预定间隔所述处理。一旦任务被设置为休眠状态,则在处理的后续重复中如果电池容量再次返回高于阈值2,该任务也只能被设置成挂起。
可以使用任何数目的不同技术来直接确定上述处理中所使用的阈值。
作为一个例子,在能量指示符包括模拟电压信号的实施例中,阈值1可以近似为2.5伏特,而阈值2可以近似为1.5伏特。当然,这些具体的值仅仅是作为示例性的例子提出的,在其它实施例中也可以使用其它信号值来作为阈值,只要其适合于具体的电源和其它设备参数。
再例如,能量指示符可以包括数字信号,诸如两比特数字信号,给定阈值1的值为“01”并且给定阈值2的值为“10”。在其它实施例中也可以使用多于两比特。并且,可以使用模拟和数字信号的组合来提供能量指示符。如上面所提到的,本发明并不要求使用任何特定类型的能量指示符。
图4的处理是根据本发明的多级动态程序节流处理的例子。如上所述,该处理在适当的时候利用第一阈值在适当的时候用较低容量的非关键性任务来置换较高容量的非关键性任务,反之亦然,并且该处理利用低于第一阈值的第二阈值来控制非关键性任务在挂起和休眠状态之间的转换。如之前所指出的,其它实施例可以使用不同的阈值、任务状态和其它参数。并且,在替代实施例中还可以除在图中具体示出的那些处理步骤之外的处理步骤。
本发明的动态程序节流技术与传统技术相比具有显著的有点。例如,在上述示例性实施例中描述的本发明提供对会聚设备中的电池能量的改进的节约,从而保证用户将可以在给定的一组工作条件下可行的尽可能长的时间段内访问语音呼叫通信功能。
本发明的上述实施例的本意仅仅是示例性的,并且对于本领域技术人员来说,在所附权利要求范围内的多种替代实施例都将是显而易见的。例如,在其它实施例中可以改变所示的特定会聚设备和处理器结构。并且,如上面所指出的,可以改变诸如阈值、非关键性任务类别和任务状态的参数以及相关处理步骤的安排以适应给定应用的具体需要。

Claims (18)

1、一种用于通过在会聚设备中控制程序执行来节约能量的方法,所述会聚设备包括电源和至少一个处理器,处理器被配置成执行与语音呼叫通信功能相关的处理操作以及执行与数据通信功能相关的处理操作,所述处理器可操作用以执行关键性程序和非关键性程序,所述方法包括下列步骤:
为与数据通信功能相关的多个非关键性程序中的至少给定的一个非关键性程序存储至少一个替代容量程序的标识符,所述替代容量程序执行与给定的程序相同的功能,但是具有与该给定的程序相关的不同的电源容量;以及
至少部分地根据表示电源特性的能量指示符,来将所述多个非关键性程序的至少一个子集设置成处于执行状态、挂起状态和休眠状态中的一个状态;此外,至少部分地根据所述能量指示符,来将执行处于执行状态的给定程序仅替换成执行处于挂起状态的替代容量程序,以便增加可用于语音呼叫通信功能的电源容量的量。
2、如权利要求1所述的方法,其中,所述电源包括电池。
3、如权利要求2所述的方法,其中,所述能量指示符表示电池的剩余容量。
4、如权利要求1所述的方法,其中,如果所述能量指示符低于第一阈值,则将执行给定非关键性程序替换成执行替代容量的非关键性程序,其中,与所述替代容量的非关键性程序相关联的电源容量低于所述给定程序。
5、如权利要求1所述的方法,其中,如果所述能量指示符不低于第一阈值,则将执行给定非关键性程序替换成执行替代容量的非关键性程序,其中,与所述替代容量的非关键性程序相关联的电源容量高于所述给定程序。
6、如权利要求1所述的方法,其中,所述语音呼叫通信功能包括一个或多个与蜂窝语音呼叫通信相关联的功能。
7、如权利要求1所述的方法,其中,所述数据通信功能包括一个或多个与一个或多个指定数据速率、指定刷新速率和指定显示分辨率的多媒体处理相关联的功能。
8、如权利要求7所述的方法,其中,所述给定程序以指定数据速率执行多媒体处理,并且所述的执行与该给定程序相同功能的替代容量程序以与该给定程序不同的数据速率执行多媒体处理。
9、如权利要求7所述的方法,其中,所述给定程序以指定刷新速率执行多媒体处理,并且所述的执行与该给定程序相同功能的替代容量程序以与该给定程序不同的刷新速率执行多媒体处理。
10、如权利要求7所述的方法,其中,所述给定程序以指定显示分辨率执行多媒体处理,并且所述的执行与该给定程序相同功能的替代容量程序以与该给定程序不同的显示分辨率执行多媒体处理。
11、如权利要求1所述的方法,其中,所述关键性程序包括用来实现在处理器上运行的操作系统、会聚设备的图形用户界面和一个或多个语音呼叫通信功能中的至少一个的程序。
12、如权利要求1所述的方法,其中,所述多个非关键性程序根据电源容量分成至少两个类别,所述两个类别包括第一容量的类别和第二容量的类别,所述第一容量是比第二容量低的容量。
13、如权利要求4所述的方法,其中,如果所述能量指示符低于比所述第一阈值低的第二阈值,则将给定非关键性程序和替代非关键性程序设置成休眠状态。
14、如权利要求13所述的方法,其中,如果所述能量指示符不低于所述第二阈值,则将任何具有休眠状态的非关键性程序设为挂起状态。
15、如权利要求13所述的方法,其中,所述第二阈值表示用于继续一个或多个语音呼叫通信功能的最小可接受容量。
16、如权利要求1所述的方法,其中,所述处理器可操作用以为一个或多个非关键性程序存储具有相关容量的非关键性程序的列表。
17、如权利要求1所述的方法,其中,所述处理器包括多线程处理器。
18、一种会聚设备,包括:
电源;和
至少一个处理器,其被配置成执行与语音呼叫通信功能相关的处理操作以及执行与数据通信功能相关的处理操作,所述处理器可操作用以执行关键性程序和非关键性程序;
所述会聚设备为与数据通信功能相关的多个非关键性程序中的至少给定的一个非关键性程序存储至少一个替代容量程序的标识符,所述替代容量程序执行与给定的程序相同的功能,但是具有与该给定的程序相关的不同的电源容量;
其中,至少部分地根据表示电源特性的能量指示符,来将所述多个非关键性程序的至少一个子集设置成处于执行状态、挂起状态和休眠状态中的一个状态;此外,至少部分地根据所述能量指示符,将执行处于执行状态的给定程序仅替换成执行处于挂起状态的替代容量程序,以便增加可用于语音呼叫通信功能的电源容量的量。
CNB2004800325154A 2003-10-31 2004-10-25 根据能量指示符进行动态程序节流的会聚设备 Active CN100447709C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/699,022 2003-10-31
US10/699,022 US7251737B2 (en) 2003-10-31 2003-10-31 Convergence device with dynamic program throttling that replaces noncritical programs with alternate capacity programs based on power indicator

Publications (2)

Publication Number Publication Date
CN1961278A CN1961278A (zh) 2007-05-09
CN100447709C true CN100447709C (zh) 2008-12-31

Family

ID=34550821

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800325154A Active CN100447709C (zh) 2003-10-31 2004-10-25 根据能量指示符进行动态程序节流的会聚设备

Country Status (7)

Country Link
US (1) US7251737B2 (zh)
EP (1) EP1678861B1 (zh)
JP (1) JP2007510370A (zh)
KR (1) KR101056322B1 (zh)
CN (1) CN100447709C (zh)
TW (1) TW200530797A (zh)
WO (1) WO2005046109A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102576244A (zh) * 2009-10-07 2012-07-11 思科技术公司 自动亮度控制

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257112B2 (en) * 2003-11-28 2007-08-14 Texas Instruments Incorporated Receiver directed power management for WLAN receiver
US8074051B2 (en) 2004-04-07 2011-12-06 Aspen Acquisition Corporation Multithreaded processor with multiple concurrent pipelines per thread
TW200625097A (en) * 2004-11-17 2006-07-16 Sandbridge Technologies Inc Data file storing multiple date types with controlled data access
US20060279256A1 (en) * 2005-06-10 2006-12-14 Media Lab Power management system for multi-function battery-operated device
US7962182B2 (en) * 2006-08-25 2011-06-14 Qualcomm Incorporated Method and apparatus for content delivery to devices
US7694160B2 (en) * 2006-08-31 2010-04-06 Ati Technologies Ulc Method and apparatus for optimizing power consumption in a multiprocessor environment
US7716500B2 (en) * 2006-08-31 2010-05-11 Ati Technologies Ulc Power source dependent program execution
EP2069947A4 (en) * 2006-09-26 2013-10-09 Qualcomm Inc APPLICATION OF MATRIX INVERSION SOFTWARE IN A WIRELESS COMMUNICATION SYSTEM
KR101545357B1 (ko) * 2006-11-10 2015-08-18 퀄컴 인코포레이티드 파이프라인 컴퓨터 처리의 병렬화를 위한 방법 및 시스템
US8001400B2 (en) * 2006-12-01 2011-08-16 Apple Inc. Power consumption management for functional preservation in a battery-powered electronic device
WO2009061547A1 (en) * 2007-11-05 2009-05-14 Sandbridge Technologies, Inc. Method of encoding register instruction fields
US8539188B2 (en) * 2008-01-30 2013-09-17 Qualcomm Incorporated Method for enabling multi-processor synchronization
EP2245529A1 (en) * 2008-02-18 2010-11-03 Sandbridge Technologies, Inc. Method to accelerate null-terminated string operations
KR20100133964A (ko) * 2008-03-13 2010-12-22 아스펜 액퀴지션 코포레이션 유효 어레이를 비활성화함으로써 전력을 절약하기 위한 방법
US20090300399A1 (en) * 2008-05-29 2009-12-03 International Business Machines Corporation Profiling power consumption of a plurality of compute nodes while processing an application
US8195967B2 (en) * 2008-05-29 2012-06-05 International Business Machines Corporation Reducing power consumption during execution of an application on a plurality of compute nodes
US8458722B2 (en) 2008-06-09 2013-06-04 International Business Machines Corporation Thread selection according to predefined power characteristics during context switching on compute nodes
US8296590B2 (en) 2008-06-09 2012-10-23 International Business Machines Corporation Budget-based power consumption for application execution on a plurality of compute nodes
US8291427B2 (en) * 2008-06-09 2012-10-16 International Business Machines Corporation Scheduling applications for execution on a plurality of compute nodes of a parallel computer to manage temperature of the nodes during execution
US8250389B2 (en) * 2008-07-03 2012-08-21 International Business Machines Corporation Profiling an application for power consumption during execution on a plurality of compute nodes
WO2010017263A1 (en) 2008-08-06 2010-02-11 Sandbridge Technologies, Inc. Haltable and restartable dma engine
US8281159B1 (en) * 2008-09-11 2012-10-02 Symantec Corporation Systems and methods for managing power usage based on power-management information from a power grid
JP4564560B2 (ja) * 2008-11-21 2010-10-20 株式会社東芝 サーバ装置
GB2465599B8 (en) * 2008-11-24 2010-11-10 1E Ltd Power management of computers.
US8484652B2 (en) 2009-07-31 2013-07-09 Dell Products L.P. Systems and methods for task execution on a managed node
US9176562B2 (en) * 2009-11-18 2015-11-03 Aktiebolaget Skf System and method for selecting and executing a task based upon a measured amount of energy
US8436720B2 (en) 2010-04-29 2013-05-07 International Business Machines Corporation Monitoring operating parameters in a distributed computing system with active messages
US9552234B2 (en) * 2011-01-31 2017-01-24 Nokia Technologies Oy Method and apparatus for energy optimization in multi-level distributed computations
US20120210150A1 (en) * 2011-02-10 2012-08-16 Alcatel-Lucent Usa Inc. Method And Apparatus Of Smart Power Management For Mobile Communication Terminals
US9374787B2 (en) * 2011-02-10 2016-06-21 Alcatel Lucent Method and apparatus of smart power management for mobile communication terminals using power thresholds
US10134314B2 (en) * 2011-11-30 2018-11-20 Intel Corporation Reducing power for 3D workloads
US8768419B2 (en) * 2012-01-26 2014-07-01 Verizon Patent And Licensing Inc. Mobile battery partitioning system and method
CN103902010A (zh) * 2012-12-26 2014-07-02 联想(北京)有限公司 一种降低功耗的方法及电子设备
US8972760B1 (en) 2013-12-20 2015-03-03 Futurewei Technologies, Inc. Method and apparatus for reducing power consumption in a mobile electronic device using a second launcher
CN108322249B (zh) * 2018-01-22 2020-09-08 新疆联海创智信息科技有限公司 面向任务驱动的可重构星座卫星入网决策方法及系统
CN109343691A (zh) * 2018-08-28 2019-02-15 维沃移动通信有限公司 一种移动终端的控制方法及移动终端
US10873949B1 (en) * 2019-10-22 2020-12-22 Link Labs, Inc. Battery watchdog system and methodology
US11800343B2 (en) * 2021-11-29 2023-10-24 International Business Machines Corporation Emergency monitoring application mobility management

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5552736A (en) * 1995-04-19 1996-09-03 Hewlett-Packard Company Power supply detect circuit operable shortly after an on/off cycle of the power supply
US6003139A (en) * 1996-09-26 1999-12-14 Compaq Computer Corporation Computer system including power supply circuit with controlled output power
CN1369128A (zh) * 2000-06-09 2002-09-11 三菱电机株式会社 便携电话机的外部电源控制方式
CN1434934A (zh) * 1999-12-23 2003-08-06 英特尔公司 具有数字能量调节的微处理器

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5719800A (en) * 1995-06-30 1998-02-17 Intel Corporation Performance throttling to reduce IC power consumption
US5701337A (en) * 1995-12-27 1997-12-23 Telefonaktiebolaget Lm Ericsson (Publ) System and method for implementing a combined mobile phone and pager in a telecommunications network
JPH10304578A (ja) * 1997-04-21 1998-11-13 Canon Inc 電気機器及び電気機器の運用制御方法
US6314308B1 (en) * 1998-07-02 2001-11-06 Snaptrack, Inc. Method and apparatus for providing reserve power in a cellular telephone
US6415388B1 (en) * 1998-10-30 2002-07-02 Intel Corporation Method and apparatus for power throttling in a microprocessor using a closed loop feedback system
JP3297389B2 (ja) * 1998-12-07 2002-07-02 インターナショナル・ビジネス・マシーンズ・コーポレーション 消費電力制御方法および電気機器
JP2001186251A (ja) * 1999-12-27 2001-07-06 Nec Corp 携帯情報端末装置及び電源電力供給制御方法
KR20010091049A (ko) * 2000-04-07 2001-10-22 오카베 히로무 부가기능을 가진 배터리-전원공급 이동전화
JP3700595B2 (ja) 2000-04-07 2005-09-28 株式会社デンソー 携帯電話
JP3430119B2 (ja) * 2000-04-17 2003-07-28 埼玉日本電気株式会社 携帯電話装置
US6799279B1 (en) * 2000-06-21 2004-09-28 Matsushita Electric Industrial Co., Ltd. Method and apparatus for stopping supply of power to a specific function for playing contents stored on media in response to a low battery level
JP2002064596A (ja) 2000-08-21 2002-02-28 Matsushita Electric Ind Co Ltd 携帯電話装置
GB2368495B (en) * 2000-10-23 2004-06-30 Ericsson Telefon Ab L M Monitoring circuit
US6697953B1 (en) * 2000-11-15 2004-02-24 Ericsson Inc. Method for reducing power consumption in battery powered devices
JP2002176493A (ja) 2000-12-05 2002-06-21 Matsushita Electric Ind Co Ltd 消費電流削減機能付き携帯電話機
JP3718448B2 (ja) 2001-05-23 2005-11-24 株式会社ケンウッド 携帯電話機
US6968445B2 (en) * 2001-12-20 2005-11-22 Sandbridge Technologies, Inc. Multithreaded processor with efficient processing for convergence device applications
US7003658B2 (en) * 2002-02-21 2006-02-21 Inventec Corporation Method for user setup of memory throttling register in north bridge via BIOS to save power
JP3692089B2 (ja) * 2002-04-02 2005-09-07 株式会社東芝 消費電力制御方法及び情報処理装置
US6948082B2 (en) * 2002-05-17 2005-09-20 International Business Machines Corporation Method and apparatus for software-assisted thermal management for electronic systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5552736A (en) * 1995-04-19 1996-09-03 Hewlett-Packard Company Power supply detect circuit operable shortly after an on/off cycle of the power supply
US6003139A (en) * 1996-09-26 1999-12-14 Compaq Computer Corporation Computer system including power supply circuit with controlled output power
CN1434934A (zh) * 1999-12-23 2003-08-06 英特尔公司 具有数字能量调节的微处理器
CN1369128A (zh) * 2000-06-09 2002-09-11 三菱电机株式会社 便携电话机的外部电源控制方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102576244A (zh) * 2009-10-07 2012-07-11 思科技术公司 自动亮度控制
CN102576244B (zh) * 2009-10-07 2015-11-25 思科技术公司 自动亮度控制

Also Published As

Publication number Publication date
US20050097376A1 (en) 2005-05-05
US7251737B2 (en) 2007-07-31
WO2005046109A2 (en) 2005-05-19
CN1961278A (zh) 2007-05-09
TW200530797A (en) 2005-09-16
WO2005046109A3 (en) 2006-06-22
KR20060092253A (ko) 2006-08-22
EP1678861A2 (en) 2006-07-12
EP1678861A4 (en) 2011-06-01
EP1678861B1 (en) 2013-08-28
JP2007510370A (ja) 2007-04-19
KR101056322B1 (ko) 2011-08-11

Similar Documents

Publication Publication Date Title
CN100447709C (zh) 根据能量指示符进行动态程序节流的会聚设备
US20080320203A1 (en) Memory Management in a Computing Device
US8438409B2 (en) Operating system (OS) virtualisation and processor utilization thresholds for minimizing power consumption in mobile phones
CN107924225B (zh) 用于动态地调整存储器状态转变定时器的系统和方法
US20130191541A1 (en) Background task resource control
US6438557B1 (en) System and method for performing context switching and rescheduling of a processor
CN107122249A (zh) 一种基于边缘云定价机制的任务卸载决策方法
CN100547520C (zh) 计算机系统及计算机系统的电源管理方法
EP2260388B1 (en) Systems and methods for cache line replacement
CN103037109B (zh) 多核设备能耗管理方法及装置
JP2004252937A (ja) アプリケーション実行のエネルギーを重視したスケジューリング
US8806028B2 (en) System and method for accessing data and applications on a host when the host is in a dormant state
CN101739359B (zh) 存储装置、移动终端及数据访问方法、调频方法
CN101799772A (zh) 内核调度方法、内核备份方法和多核处理器
US7930572B2 (en) Method and apparatus for reducing memory current leakage a mobile device
CN103051793A (zh) 一种移动终端控制数据传输模式的方法及装置
CN109101316B (zh) 一种能效相关的云计算平台资源调度方法
CN109765986A (zh) 省电模式控制方法、终端设备及计算机可读存储介质
CN102467410B (zh) 一种通用流程调度引擎的控制方法、装置及终端
CN102438230A (zh) 终端和数据业务处理方法
CN105828421A (zh) 一种终端及终端省电的方法
CN105846867A (zh) 基于多基站CoMP和休眠技术的动态簇划分方法
Goyal Power Management in Mobile Devices by Various Protocols
Gokuldev et al. Range smart cluster monitor based guesstimate approach for resource scheduling in small size clusters
CN117111712A (zh) 工作状态控制系统、方法、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: ASPEN REAL ESTATE COMPANY

Free format text: FORMER OWNER: SANDBRIDGE TECHNOLOGIES INC.

Effective date: 20101210

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: NEW YORK STATE, UNITED STATES TO: CALIFORNIA STATE, UNITED STATES

TR01 Transfer of patent right

Effective date of registration: 20101210

Address after: American California

Patentee after: Aspen home company

Address before: American New York

Patentee before: Sandbridge Technologies Inc

ASS Succession or assignment of patent right

Owner name: QUALCOMM INCORPORATED

Free format text: FORMER OWNER: ASPEN REAL ESTATE COMPANY

Effective date: 20121119

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20121119

Address after: American California

Patentee after: Qualcomm Inc.

Address before: American California

Patentee before: Aspen home company