CN105378650B - 用于控制处理模块的操作模式的方法和装置 - Google Patents
用于控制处理模块的操作模式的方法和装置 Download PDFInfo
- Publication number
- CN105378650B CN105378650B CN201380078105.2A CN201380078105A CN105378650B CN 105378650 B CN105378650 B CN 105378650B CN 201380078105 A CN201380078105 A CN 201380078105A CN 105378650 B CN105378650 B CN 105378650B
- Authority
- CN
- China
- Prior art keywords
- processing module
- duration
- background task
- mode
- power mode
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Automation & Control Theory (AREA)
- Power Sources (AREA)
Abstract
一种控制至少一个处理模块的操作模式的方法。所述方法包括:接收由所述至少一个处理模块执行至少一个后台任务的指示;聚合在所述至少一个处理模块上的所述至少一个后台任务的执行持续时间;以及如果在评估时段内所述至少一个后台任务的聚合执行持续时间超过阈值持续时间,当所述至少一个后台任务被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较低功率模式。
Description
发明描述
技术领域
本发明涉及控制处理模块的操作模式的方法以及功率模式控制模块。
背景技术
使峰值和平均功率消耗二者最小化是很多信号处理应用的重要设计考虑,而且平衡性能与降低功率消耗的需求对于具有增加并行性水平的多核系统来说是复杂的,其中系统所要求的性能可以不再被看作是随时间的单一变量。此外,对于包括时间-关键处理的应用来说,需要功率降低技术,以对这些时间-关键处理产生最小的性能影响。
使用CPU较低功率模式已知是用于降低信号处理应用内的功率消耗。然而,传统技术依赖于执行专用软件来管理较低功率模式,需要软件定制,并且在执行应用代码中引入了等待时间。长的应用软件开发时间驱动了使用大量遗留软件,这就使新的、更复杂的软件控制功率消耗降低技术复杂化。
发明内容
正如随附权利要求中所描述的,本发明提供了控制至少一个处理模块的操作模式的方法、用于控制至少一个处理模块的一种操作模式的功率模式控制模块、以及包括至少一个这样的功率模式控制模块的信号处理设备。
本发明的具体实施例在从属权利要求中被陈述。
根据下文中描述的实施例,本发明的这些或其它方面将会容易理解并且被阐述。
附图说明
根据附图,仅仅通过举例的方式,本发明的进一步细节、方面和实施例将被描述。在附图中,相似的参考符号被用于表示相同或功能相似的元素。为了简便以及清晰,附图中的元素不一定按比例绘制。
图1说明了信号处理设备的一个例子的简化方框图。
图2说明了在信号处理模块内随时间而执行的时间-关键和非-时间-关键任务的一个简化例子。
图3说明了功率模式控制模块的一个例子的简化方框图。
图4说明了在信号处理模块内执行时间-关键和非-时间-关键任务的一个简化替代例子。
图5至8说明了控制至少一个处理模块的操作模式的方法的一个例子的简化流程图。
具体实施方式
参照附图描述本发明。然而,应了解本发明不限于参照附图描述的特定例子。例如,此处本发明参照微控制器单元(MCU),特别是自动MCU被描述。然而,应了解本发明不限于在这样自动MCU内被描述,并且应考虑到本发明的一些例子可以在替代信号处理设备内被实施,例如仅仅是举例而言,微处理器设备、数字信号处理器(DSP)设备等等。
此外,由于本发明说明的实施例可能大部分是通过使用本领域所属技术人员所熟知的电子组建和电路被实施,为了对本发明基本概念的理解和认识,以及为了不混淆或偏离本发明所教之内容,在细节不会在比上述所说明的认为有必要的程度更大的任何程度上进行解释。
根据本发明第一方面的一些例子,提供了一种控制至少一个处理模块的一种操作模式的方法。该方法包括:接收由所述至少一个处理模块执行至少一个后台任务的指示;聚合在所述至少一个处理模块上的所述至少一个后台任务的执行持续时间;以及如果在评估时段内所述至少一个后台任务的聚合执行持续时间超过的阈值持续时间,当所述至少一个后台任务已经被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较低功率模式。
以这种方式,通过将阈值持续时间配置为至少包括比方说给定时间段所需的处理时间的最小量,这种后台任务的执行要求可以被满足。然而,如果在聚合执行持续时间达到阈值持续时间之后另外的后台任务执行被指示,那么通过为处理模块配置较低功率模式,可以随后避免超出预定义阈值持续时间的后台任务的过度的另外执行。这样,没有益处的过度后台执行可以被避免,从而也避免了功率消耗的关联增加和由于共享资源上的增加负荷而导致的性能降低。
在一个可选例子中,至少一个后台任务的执行的指示可能包括以下至少一个:
处理标识符;
指令提取地址;以及
中断优先级水平。
在一个可选例子中,所述方法可能包括:至少部分基于以下至少一个来聚合所述至少一个后台任务的执行持续时间:
时钟周期计数值;以及
定时信号聚合器值。
在一个可选例子中,所述方法可能包括:一旦评估时段期满,就为所述至少一个后台任务重置聚合执行持续时间。
在一个可选例子中,所述至少一个处理模块的所述较低功率模式可能包括非活动模式。
在一个可选例子中,所述方法可能包括:如果所述至少一个后台任务的所述聚合执行持续时间未超过所述阈值持续时间,当所述至少一个后台任务已经被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较高功率模式。
在一个可选例子中,所述方法可能包括:如果所述至少一个后台任务的所述聚合执行持续时间超过所述阈值持续时间,当所述至少一个时间-关键任务被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较高功率模式。
根据本发明第二方面的一些实施例,提供了一种用于控制至少一个处理模块的操作模式的功率模式控制模块。所述功率模式控制模块被布置成接收由所述至少一个处理模块执行至少一个后台任务的指示;聚合在所述至少一个处理模块上的所述至少一个后台任务的执行持续时间;以及如果在评估时段内所述至少一个后台任务的聚合执行持续时间超过阈值持续时间,当所述至少一个后台任务已经被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较低功率模式。
在一个可选例子中,所述功率模式控制模块可以在集成电路设备内实施,所述集成电路设备包括位于单一集成电路封装内的至少一个管芯。
根据本发明第三方面的一些实施例,提供了一种信号处理设备,所述信号处理设备包括根据本发明第二方面所述的至少一个功率模式控制模块。
现在参照图1,图1说明了信号处理设备100,例如汽车MCU或类似物的一个例子的简化方框图。信号处理设备100可以在包括一个或多个位于单一集成电路封装内的一个或多个管芯105的集成电路设备内实施。如图所示,信号处理设备100包括多个处理模块,正如在图1中由中央处理单元(CPU)110所示的。CPU 110可操作地耦合于从属组件,例如RAM(随机存取存储器)模块120、通常在130由互连组件140所示的外围设备组件。信号处理设备100可能还包括一个或多个另外的总线主组件,例如DMA(直接存储器存取)组件150。根据本发明的一些例子,信号处理设备100还包括一个或多个功率模式控制(PMC)模块300,正如在下面更详细描述的。
对于很多应用,时间-关键任务由时间或事件触发而启动。例如,在动力系应用的情况下,时间-关键任务通常由时间或发动机位置触发而启动。相反,当未执行时间-关键任务的时候,后台任务可以连续执行。后台任务通常在连续的,也许长持续时间循环内组织。图2说明了在信号处理模块内随时间而执行时间-关键和非-时间-关键任务的一个简化例子。在所示的例子中,时间-关键任务(TCRIT)210的执行在规则间隔(例如每1ms、5ms、10ms等等)启动。此外,替代地,时间-关键任务210的执行可以在对应于特定事件的时间启动,例如在动力系应用的例子中被控制的发动机的限定位置。当没有时间-关键任务被执行的时候,例如执行非-时间-关键计算和内务功能的时候,一个或多个后台任务(BGND)220连续执行。因此,如图2所示,处理模块总是执行关键任务(210)或后台任务(220)。
通常,唯一的后台任务执行要求是在给定时间段内执行一定最小量的处理。超过这个最小量的任何后台执行是没有益处的,增加了功率消耗并且通过共享资源上的负荷增加而降低了性能。
现在参照图3,图3说明了功率模式控制(PMC)模块300(例如可以在图1的信号处理设备100内实施)的一个例子的简化方框图。在所示的例子中,功率模式控制模块300可操作地耦合于至少一个处理模块,例如CPU 110,并且被布置成接收由CPU 110执行至少一个后台任务的指示310。执行至少一个后台任务的指示310可能包括任何适合的信号/指示器,例如举例而言:
-处理标识符(PID);
-指令提取地址;以及
-中断优先级水平;
-等等。
在图3所示的例子中,功率模式控制模块300包括任务识别组件320,所述任务识别组件320被布置成接收这样指示310,以及识别CPU110何时执行后台任务并且CPU 110何时执行时间-关键任务。例如,任务识别组件320可以可操作地耦合于被布置成将任务类型识别信息存储在其中的存储元件325,并且任务识别组件320可以被布置成将由CPU 110执行任务的接收指示310和存储在存储元件325内的信息进行比较,以识别由CPU 110执行的任务是否包括后台任务或时间-关键任务。在一些例子中,存储在存储元件325内的任务类型识别信息例如可以由在信号处理设备100的CPU 110上执行的软件。任务识别组件320还被布置成给聚合器组件340输出任务类型信号330,该任务类型信号330包括由CPU 110执行任务(例如,后台或时间-关键)类型的指示。
聚合器组件340被布置成接收任务类型信号330并且聚合由CPU110执行的(或全部)后台任务的执行持续时间。例如,(一个或多个)后台任务的执行持续时间的这种聚合可以至少部分基于时钟周期计数值聚合、定时信号聚合器值等等。在一些例子中,聚合器组件340可能包括计数器,所述计数器被布置成,当任务类型信号330指示由CPU110执行后台任务的时候被‘启用’(即进行计数),而当任务类型信号330指示由CPU 110执行时间-关键任务的时候被‘禁用’。
聚合器组件340还被布置成,如果(一个或多个)后台任务的聚合执行持续时间超过阈值持续时间,当后台任务已经被分配到CPU 110以在其上执行的时候,为CPU 110配置较低功率模式。如所说明的例子,聚合器组件340被布置成,通过“等待”控制信号345来配置这样较低功率模式,所述“等待”控制信号345由聚合器组件340输出并且可以被提供给信号处理设备100的功率管理组件(未显示)。例如,这样的较低功率模式可能包括非活动模式,在其中CPU 110没有被记录时间和/或至少部分被断电。以这种方式,一旦(一个或多个)后台任务的聚合执行持续时间超过阈值持续时间,如果由任务类型信号330指示了另外的后台任务执行,则聚合器组件340可能“设定”“等待”控制信号345并且功率管理组件(未显示)可能接收“等待”控制信号345并且为CPU 110实施较低功率模式。在这样的例子中,这样的硬件功率管理(未显示)组件可能有效地强制CPU 110在下一个指令边界处模拟等待指令执行。有利的是,这样的实施基本上避免了对软件修改的任何要求。
然而,可以设想,在一些替代例子中,由聚合器组件340输出的“等待”控制信号345可以替代地被用于例如断言低优先级中断请求,其中它的中断服务例程(ISR)将明确进入“等待”模式。相比于前面段落中描述的硬件实施,这种中断-驱动的实现提供了简化硬件的优点,其中所需的软件修改能够被限于特定的中断处置器,而不是要求修改遗留软件。
聚合器组件340可以还被布置成,如果(一个或多个)后台任务的聚合执行持续时间未超过阈值持续时间,当后台任务被分配到CPU 110以在其上执行的时候,为CPU 110配置较高功率模式。例如,这样的较高功率模式可能包括活动模式,在其中CPU 110被活动地记录时间和加电,并且聚合器组件340可以被布置成,通过清除“等待”控制信号345为CPU110配置较高功率模式。
在所示的例子中,阈值持续时间可以由存储在比方说存储元件325内的值来定义。以这种方式,例如通过在信号处理设备100的CPU 110上执行的软件阈值,持续时间可以是可配置的。
以这种方式,通过将阈持续时间配置为至少包括比方说给定时段所需的处理时间的最小量,可以满足这种后台任务的执行要求。然而,如果在聚合执行持续达到阈值持续时间之后由任务类型信号330指示了另外的后台任务执行,那么通过为CPU 110配置较低功率模式,可以随后避免超出预定义阈值持续时间的后台任务的另外执行。这样,可以避免没有益处的过度后台执行,从而也避免了功率消耗的关联增加和由于共享资源上的增加负荷而导致的性能降低。
为了确保满足时间-关键任务的执行要求,聚合器组件340可以还被布置成,当时间-关键任务已经被分配到CPU 110以在其上执行的时候,不管(一个或多个)后台任务的聚合执行持续时间是否超过阈值持续时间,都为CPU 110配置较高功率模式。
在所示的例子中,功率模式控制模块300还被布置成,一旦评估时段期满,就为(一个或多个)后台任务重置聚合执行持续时间。例如,如图3所示,功率模式控制模块300可能还包括评估时段定时器组件350,所述评估时段定时器组件350被布置成,一旦每个连续评估时段期满,就输出重置信号355。重置信号355可以被提供给聚合器组件340。聚合器组件340可能因此被布置成,一旦接收到由评估时段定时器组件350输出的指示评估时段期满的每个重置信号355,就重置聚合执行持续时间。在所示的例子中,评估时段可以由存储在比方说存储元件325内的值来定义。以这种方式,例如通过在信号处理设备100的CPU 110上执行的软件,阈值持续时间可以是可配置的。
图4说明了根据本发明的一些例子的在CPU 110内执行时间-关键和非-时间-关键任务的简化替代例子。在所示的例子中,时间-关键任务(TCRIT)410的执行在规则间隔(例如每1ms、5ms、10ms等等)启动。附加地/替代地,时间-关键任务410的执行可以在对应于特定事件的时间启动,例如在动力系应用的例子中被控制的发动机的预定位置。当没有时间-关键任务被执行的时候,例如执行非-时间-关键计算和整理功能的时候,一个或多个后台任务(BGND)420连续执行。
然而,在图4所示的例子中,聚合(一个或多个)后台任务的执行持续时间,正如结合图3在上面描述的。当(一个或多个)后台任务的聚合执行持续时间超过阈值持续时间的时候,当(一个或多个)后台任务已经被分配到CPU 110以在其上执行的时候为CPU 110配置较低功率(例如,非活动)模式(LOW_PWR)。在图3和4所示的例子中,在(一个或多个)后台任务被分配到CPU 110以供执行的同时,当聚合后台任务执行持续时间超过阈值持续时间(即当计数((tA+tB+tC)>tbgnd_threshold)的时候,功率模式控制模块300设定“等待”控制信号345,将CPU 110配置为较低功率(例如,非活动)模式,正如图4中432所示。以这种方式,可以避免没有益处的过度后台执行,从而也避免了功率消耗的关联增加和由于共享资源上的增加负荷而导致的性能降低。
一旦时间-关键任务随后被分配到CPU 110以供执行,功率模式控制模块300可能例如通过‘清除’“等待”控制信号345,来为CPU 110配置较高功率模式,正如434和438所示。以这种方式,可以实现时间-关键任务的执行要求。一旦完成时间-关键任务,(一个或多个)后台任务被分配到CPU 110以供执行,在这一点,功率模式控制模块300可能例如通过重置“等待”控制信号345来为CPU 110重新配置较低功率模式(因为聚合后台任务执行持续时间超过阈值持续时间),正如436所示。
如上所述,在一些例子中,由功率模式控制模块300输出的“等待”控制信号345可以被用于断言低优先级中断请求,其中它的中断服务例程(ISR)将明确进入“等待”模式。在这样的例子中,当通过断言较高优先级水平的时间-关键任务而将时间-关键任务分配到CPU110时,通过“等待”控制信号345实施的低优先级中断请求可以被自动覆写。因此,在这样的例子中,一旦时间-关键任务随后被分配到CPU110以供执行,功率模式控制模块300不必清除“等待”控制信号345。
如先前参照图3之前描述的,聚合后台任务执行持续时间值可以定期被重置(例如,重新初始化到零值)。一旦聚合后台任务执行持续时间值被重置,功率模式控制模块300清除“等待”控制信号345,以在(一个或多个)后台任务的分配执行期间为CPU 110启用较高功率模式,直到聚合后台任务执行持续时间值再次超过阈值持续时间。
现在参照图5-8,其中说明了控制至少一个处理模块的操作模式的方法的一个例子的简化流程图500、600、700、800,例如可以通过在图3中所示的功率模式控制模块300来实施的。首先参照图5,该方法的这部分开始于510,其中调度后台任务以供处理模块执行。接着,在520处,确定聚合后台任务执行持续时间是否超过阈值持续时间值。如果聚合后台任务执行持续时间未超过阈值持续时间,该方法进入530,其中为处理模块配置了较高功率(活动)模式。后台任务执行持续时间随后在540聚合,并且该方法的这部分在560结束。返回参照520,如果聚合后台任务执行持续时间超过了阈值持续时间,该方法进入550,其中为处理模块配置较低功率(例如,非活动)模式。该方法的这部分随后在560结束。
现在参照图6,该方法的这部分开始于610,其中在执行后台任务期间,聚合后台任务执行持续时间超过阈值持续时间。一旦在执行后台任务期间聚合后台任务执行持续时间超过阈值持续时间,该方法进入620,其中为处理模块配置较低功率(例如,非活动)模式。该方法的这部分随后在630结束。
现在参照图7,该方法的这部分开始于710,其中调度时间-关键任务,一旦如此,在720为处理模块配置较高功率(活动)模式。该方法的这部分随后在730结束。
现在参照图8,该方法的这部分开始于810,其中后台任务执行评估定时器期满,并且进行到820,其中聚合后台任务执行持续时间值被重置。在830为处理模块配置较高功率(活动)模式。该方法的这部分随后在840结束。
很明显描述了用于控制处理模块的操作模式的方法和装置,其使得能够在后台任务执行期间以高度自动化和简单的方式,通过使用较低功率模式,降低了这些处理模块的功率消耗,避免或显著减少了软件定制的需要并且给时间-关键任务带来了最小或零性能影响。此外,本发明所描述的方法和装置基本上避免了执行详细的应用特性化的需要,因此相对于多个应用来说可以很容易使用。
在一些例子中,用于控制处理模块的操作模式的方法可以根据每个处理模块来实施。例如,功率模式控制模块300,正如图3所示的,可以为每个处理模块(CPU 110)来实施。替代地,功率模式控制模块300可以被布置成,在评估时段内当后台任务的聚合执行持续时间超过阈值持续时间的时候,从多个处理模块(CPU 110)接收执行后台任务的指示310,并且单独地为处理模块配置较低功率模式。
应了解,处理模块的后台任务执行持续时间的聚合可能包括将后台任务执行时间累计进行递增,由此随着(一个或多个)后台任务被执行,后台任务执行持续时间值被增大。以这种方式,功率模式控制模块300可以被布置成,当(一个或多个)后台任务的聚合执行持续时间超过正阈值持续时间值的时候,为处理模块100配置较低功率模式,其中将后台任务执行持续时间值定期地重置到比方说零值。
替代地,处理模块100的后台任务执行持续时间的聚合可能包括将后台任务执行时间累计进行递减,由此随着(一个或多个)后台任务被执行,后台任务执行持续时间值被减小。以这种方式,功率模式控制模块300可以被布置成,当(一个或多个)后台任务的聚合执行持续时间达到阈值持续时间值比方说零的时候,为处理模块配置较低功率模式,其中将后台任务执行持续时间值定期地重置到比方说正阈值持续时间值。
在前面的说明中,参照本发明实施例的特定例子已经对本发明进行了描述。然而,很明显各种修改和变化可以在不脱离附属权利要求中所陈述的本发明的宽范围精神及范围的情况下被做出。
本发明所讨论的连接可以是任何类型的连接。该连接适于将信号从或传输到各自的节点、单元或设备,例如通过穿孔中间设备。因此,除非暗示或说明,连接,例如,可能是直接连接或间接连接。连接可以被说明或描述,涉及到是单一连接、多个连接、单向连接、或双向连接。然而,不同实施例可能改变连接的实现。例如,可以使用单独单向连接而不是双向连接,反之亦然。此外,多个连接可以被替换为连续地或以时间多路复用方式传输多个信号的单一连接。同样地,携带多个信号的单一连接可以被分离成各种不同的携带这些信号的子集的连接。因此,存在传输信号的很多选项。
本发明所描述的每个信号可以被设计为正逻辑或负逻辑。在负逻辑信号的情况下,所述逻辑真状态相当于逻辑电平0的地方所述信号是低活性。在正逻辑信号的情况下,所述逻辑真状态相当于逻辑电平1的地方所述信号是高活性。注意,本发明说所描述的任何信号可以被设计为负逻辑信号或正逻辑信号。因此,在替代实施例中,那些被描述为正逻辑信号的信号可以被实施为负逻辑信号,以及那些被描述为负逻辑信号的信号可以被实施为正逻辑信号。
此外,当将信号、状态位、或类似的装置分别变为其逻辑真或逻辑假状态时,术语“断言”或“设置”以及“否定”(或“非断言”或“清除”)在本发明中被使用。如果逻辑真状态是逻辑电平“1”,逻辑假状态是逻辑电平“0”。如果逻辑真状态是逻辑电平“0”,逻辑假状态是逻辑电平“1”。
本领域所属技术人员将认识到逻辑块之间的界限仅仅是说明性的并且替代实施例可能合并逻辑块或电路元素或在各种逻辑块或电路元素上强加替代的分解功能。因此,应了解本发明描述的架构仅仅是示范的,并且事实上实现相同功能的很多其它架构可以被实现。例如,至少部分功率级,例如电流传感器可以是所说明控制器的一部分。
为实现相同功能的任何元件的排列是有效地“关联”以便所需的功能得以实现。因此,为实现特定功能,本发明中结合在一起的任何两个元件可以被看作彼此“相关联”以便所需的功能得以实现,不论架构还是中间元件。同样地,如此关联的任何两个元件还可以被认为是彼此被“可操作连接”或“可操作耦合”以实现所需的功能。
此外,本领域所属技术人员将认识到上述描述的操作之间的界限只是说明性的。多个操作可以组合成单一的操作,单一的操作可以分布在附加操作中,并且操作可以至少在时间上部分重叠被执行。而且,替代实施例可能包括特定操作的多个实例,并且操作的顺序在各种其它实施例中会改变。
又如,例子或其中的一部分可能作为物理电路的软或代码表征被实现,或作为能够转化成物理电路的逻辑表征,例如在任何合适类型的硬件描述语言中被实现
此外,本发明不限定在非程序化硬件中被实现的物理设备或单元,但也可以应用在可编程设备或单元中。这些设备或单元通过操作能够执行所需的设备功能。该执行是根据合适的程序代码,例如,主机、微型计算机、服务器、工作站、个人电脑、笔记本、个人数字助理、电子游戏、汽车和其它嵌入式系统、手机和其它无线设备,在本申请中通常表示“计算机系统”。
然而,其它修改、变化和替代也是可能的。说明书和附图相应地被认为是从说明性的而不是严格意义上来讲的。
在权利要求中,放置在括号之间的任何参考符号不得被解释为限定权利要求。单词“包括”不排除其它元素或随后在权力要求中列出的那些步骤的存在。此外,本发明所用的“a”或“an”被定义为一个或多个。并且,在权利要求中所用词语如“至少一个”以及“一个或多个”不应该被解释以暗示通过不定冠词“a”或“an”引入的其它权利要求元素限定任何其它特定权利要求。所述特定权利要求包括这些所介绍的对发明的权利元素,所述权利元素不仅仅包括一个这样的元素。即使当同一权利要求中包括介绍性短语“一个或多个”或“至少一个”以及不定冠词,例如“a”或“an”。使用定冠词也是如此。除非另有说明,使用术语如“第一”以及“第二”是用于任意区分这些术语描述的元素的。因此,这些术语不一定表示时间或这些元素的其它优先次序。某些措施在相互不同的权利要求中被列举的事实并且不表示这些措施的组合不能被用于获取优势。
Claims (10)
1.一种控制至少一个处理模块的操作模式的方法,所述方法包括:
接收由所述至少一个处理模块执行至少一个后台任务的指示;
聚合在所述至少一个处理模块上的所述至少一个后台任务的执行持续时间;
确定在评估时段内所述聚合执行持续时间是否超过阈值持续时间;
如果在评估时段内所述聚合执行持续时间超过所述阈值持续时间,切换至少一个处理模块的功率模式在较高功率模式和较低功率模式之间,其中当所述至少一个后台任务被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较低功率模式,并且当时间-关键任务被分配到至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较高功率模式;
接收响应于所述评估时段期满的重置信号,以及
响应于接收的重置信号重置所述至少一个后台任务的所述聚合执行持续时间。
2.根据权利要求1所述的方法,其中执行所述至少一个后台任务的所述指示包括以下至少一个:
处理标识符;
指令提取地址;以及
中断优先级水平。
3.根据权利要求1或2所述的方法,其中所述方法包括:至少部分基于以下至少一个来聚合所述至少一个后台任务的执行持续时间:
时钟周期计数值;以及
定时信号聚合器值。
4.根据权利要求1或2所述的方法,其中所述至少一个处理模块的所述较低功率模式包括非活动模式。
5.根据权利要求1或2所述的方法,其中所述方法包括:如果所述至少一个后台任务的所述聚合执行持续时间未超过所述阈值持续时间,当所述至少一个后台任务被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较高功率模式。
6.根据权利要求1或2所述的方法,其中所述方法包括:通过提供给硬件功率管理组件的“等待”控制信号的方式,为所述至少一个处理模块配置较低功率模式。
7.根据权利要求1或2所述的方法,其中所述方法包括:通过低优先级中断请求的方式,为所述至少一个处理模块配置较低功率模式。
8.一种用于控制至少一个处理模块的操作模式的功率模式控制模块,所述功率模式控制模块被布置成:
接收由所述至少一个处理模块执行至少一个后台任务的指示;
聚合在所述至少一个处理模块上的所述至少一个后台任务的执行持续时间;
确定在评估时段内所述聚合执行持续时间是否超过阈值持续时间;
如果在评估时段内所述聚合执行持续时间超过所述阈值持续时间,切换至少一个处理模块的功率模式在较高功率模式和较低功率模式之间,其中当所述至少一个后台任务被分配到所述至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较低功率模式,并且当时间-关键任务被分配到至少一个处理模块以在其上执行的时候,为所述至少一个处理模块配置较高功率模式;
接收响应于所述评估时段期满的重置信号,以及
响应于接收的重置信号重置所述至少一个后台任务的所述聚合执行持续时间。
9.根据权利要求8所述的功率模式控制模块,其是在集成电路设备内实施的,所述集成电路设备包括位于单一集成电路封装内的至少一个管芯。
10.一种信号处理设备,包括根据权利要求8或9所述的至少一个功率模式控制模块。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2013/055637 WO2015004500A1 (en) | 2013-07-09 | 2013-07-09 | Method and apparatus for controlling an operating mode of a processing module |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105378650A CN105378650A (zh) | 2016-03-02 |
CN105378650B true CN105378650B (zh) | 2019-02-19 |
Family
ID=52279398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380078105.2A Expired - Fee Related CN105378650B (zh) | 2013-07-09 | 2013-07-09 | 用于控制处理模块的操作模式的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9958928B2 (zh) |
EP (1) | EP3019952A4 (zh) |
CN (1) | CN105378650B (zh) |
WO (1) | WO2015004500A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320561B (zh) * | 2015-11-09 | 2019-03-08 | 深圳市万普拉斯科技有限公司 | 任务管理方法和系统 |
KR102691293B1 (ko) * | 2016-07-29 | 2024-08-05 | 삼성전자 주식회사 | 전자 장치의 전력 소모 감소를 위한 방법 및 장치 |
CN106775966A (zh) * | 2016-11-21 | 2017-05-31 | 青岛海信电器股份有限公司 | 一种用户操作任务处理方法及装置 |
JP2022037737A (ja) * | 2020-08-25 | 2022-03-09 | レノボ・シンガポール・プライベート・リミテッド | 情報処理装置及び方法 |
US20230108234A1 (en) * | 2021-09-28 | 2023-04-06 | Advanced Micro Devices, Inc. | Synchronous labeling of operational state for workloads |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101657783A (zh) * | 2007-03-29 | 2010-02-24 | 英特尔公司 | 利用低功率模式控制核工作循环的方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5396635A (en) * | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
US6965763B2 (en) * | 2002-02-11 | 2005-11-15 | Motorola, Inc. | Event coordination in an electronic device to reduce current drain |
JP3924544B2 (ja) * | 2003-02-26 | 2007-06-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、制御方法、プログラム、及び記録媒体 |
CN100378618C (zh) | 2003-03-27 | 2008-04-02 | Nxp股份有限公司 | 基于分支的活动监控 |
US7500127B2 (en) * | 2003-09-18 | 2009-03-03 | Vulcan Portals Inc. | Method and apparatus for operating an electronic device in a low power mode |
US20050125701A1 (en) | 2003-12-03 | 2005-06-09 | International Business Machines Corporation | Method and system for energy management via energy-aware process scheduling |
US7627770B2 (en) | 2005-04-14 | 2009-12-01 | Mips Technologies, Inc. | Apparatus and method for automatic low power mode invocation in a multi-threaded processor |
EP1715405A1 (en) | 2005-04-19 | 2006-10-25 | STMicroelectronics S.r.l. | Processing method, system and computer program product for dynamic allocation of processing tasks in a multiprocessor cluster platforms with power adjustment |
KR100663864B1 (ko) | 2005-06-16 | 2007-01-03 | 엘지전자 주식회사 | 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법 |
EP2038729A2 (en) | 2006-06-27 | 2009-03-25 | Koninklijke Philips Electronics N.V. | A device and a method for managing power consumption of a plurality of data processing units |
US8473724B1 (en) | 2006-07-09 | 2013-06-25 | Oracle America, Inc. | Controlling operation of a processor according to execution mode of an instruction sequence |
US8060884B2 (en) * | 2007-07-10 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Deterministic task scheduling in a computing device |
US20090150696A1 (en) * | 2007-12-10 | 2009-06-11 | Justin Song | Transitioning a processor package to a low power state |
US20090217280A1 (en) * | 2008-02-21 | 2009-08-27 | Honeywell International Inc. | Shared-Resource Time Partitioning in a Multi-Core System |
US8140876B2 (en) * | 2009-01-16 | 2012-03-20 | International Business Machines Corporation | Reducing power consumption of components based on criticality of running tasks independent of scheduling priority in multitask computer |
CN102822768A (zh) * | 2010-03-23 | 2012-12-12 | 索尼公司 | 通过从处理器性能管理系统掩蔽处理来减少功耗 |
US9374787B2 (en) * | 2011-02-10 | 2016-06-21 | Alcatel Lucent | Method and apparatus of smart power management for mobile communication terminals using power thresholds |
US8886976B2 (en) | 2011-04-11 | 2014-11-11 | Microsoft Corporation | Management of background tasks |
US8671299B2 (en) * | 2011-05-26 | 2014-03-11 | Google Inc. | Delaying the initiation of transitioning to a lower power mode by placing a computer system into an intermediate power mode between a normal power mode and the lower power mode |
US8788863B2 (en) * | 2011-08-10 | 2014-07-22 | Microsoft Corporation | System and method for restoring and/or continuing execution functionality to various processes based on predefined power classifications while transitioning a computing environment from connected standby state to execution state |
-
2013
- 2013-07-09 EP EP13889160.1A patent/EP3019952A4/en not_active Ceased
- 2013-07-09 US US14/899,190 patent/US9958928B2/en not_active Expired - Fee Related
- 2013-07-09 CN CN201380078105.2A patent/CN105378650B/zh not_active Expired - Fee Related
- 2013-07-09 WO PCT/IB2013/055637 patent/WO2015004500A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101657783A (zh) * | 2007-03-29 | 2010-02-24 | 英特尔公司 | 利用低功率模式控制核工作循环的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105378650A (zh) | 2016-03-02 |
WO2015004500A1 (en) | 2015-01-15 |
EP3019952A4 (en) | 2017-03-29 |
US9958928B2 (en) | 2018-05-01 |
US20160132093A1 (en) | 2016-05-12 |
EP3019952A1 (en) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10503549B2 (en) | Time critical tasks scheduling | |
CN105378650B (zh) | 用于控制处理模块的操作模式的方法和装置 | |
CN103440216B (zh) | 一种通过i2c从设备调试mcu的芯片及方法 | |
CN109033540B (zh) | 一种芯片随机验证过程中的激励管理方法及系统 | |
US10409936B2 (en) | Method and apparatus for modelling power consumption of integrated circuit | |
CN103412834A (zh) | 一种单soc芯片及单soc芯片多工作模式的复用方法 | |
CN104813307A (zh) | 数据处理装置、数据处理方法和程序 | |
CN104321716A (zh) | 使用装置空闲持续时间信息来优化能量效率 | |
CN102291274A (zh) | 一种实现网络测试仪表自动适配的系统及方法 | |
US8578384B2 (en) | Method and apparatus for activating system components | |
CN108121842A (zh) | 多处理器系统芯片的低功耗工作方式的验证方法和装置 | |
CN107305526A (zh) | 一种用于微控制器的调试器 | |
CN102929817A (zh) | 一种基于gpio检测的多机种机型信息自动配置的方法 | |
US10088523B2 (en) | Debug adapter | |
CN112462661A (zh) | 工业数据采集控制器及其控制方法 | |
CN104268059B (zh) | 一种智能移动终端的应用程序查找方法和系统 | |
Visconti et al. | Operation principle, advanced procedures and validation of a new Flex-SPI communication Protocol for smart IoT devices | |
US20120017100A1 (en) | Power System Optimization and Verification for Embedded System Design | |
CN102819474A (zh) | 系统操作的测试方法和装置 | |
CN115630011A (zh) | 利用cpld实现主从设备i2c总线通信的方法及装置 | |
CN105429907B (zh) | 串口自动识别装置及方法 | |
CN109934327B (zh) | 一种智能卡的计时方法及系统 | |
CN108984991B (zh) | 一种用于低功耗设计的可重用仿真验证方法 | |
Sutton | An efficient platform and communication architecture for event-triggered cyber-physical systems | |
KR101725408B1 (ko) | 실시간 운영체제의 태스크 스케줄링 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180222 Address after: Texas, USA Applicant after: NXP USA, Inc. Address before: Texas in the United States Applicant before: FREESCALE SEMICONDUCTOR, Inc. |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190219 |