CN108292159A - 用于控制核数以转换操作状态的方法和装置 - Google Patents

用于控制核数以转换操作状态的方法和装置 Download PDF

Info

Publication number
CN108292159A
CN108292159A CN201680068760.3A CN201680068760A CN108292159A CN 108292159 A CN108292159 A CN 108292159A CN 201680068760 A CN201680068760 A CN 201680068760A CN 108292159 A CN108292159 A CN 108292159A
Authority
CN
China
Prior art keywords
core
clock signal
convert requests
electronic equipment
cores
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.)
Pending
Application number
CN201680068760.3A
Other languages
English (en)
Inventor
V·拉马穆尔蒂
R·达斯
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN108292159A publication Critical patent/CN108292159A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • 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/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Abstract

可提供一种电子设备,其包括逻辑,该逻辑至少一部分是硬件,用于在可配置移动时间段内接收多个转换请求,并基于接收到的转换请求阻止到多个核中的一个或多个的时钟信号。

Description

用于控制核数以转换操作状态的方法和装置
背景技术
1.技术领域
实施例可涉及控制可配置移动时间窗期间转换操作状态的核的数量。
2.背景技术
电子器件可以包括具有多个核的集成电路。每个核可以在不同的状态或操作模式之间转换。但是,这可能导致功率递送/管理问题。
附图说明
各实施例可参照以下附图被具体描述,其中相似的参考标记指代相似的元件,在附图中:
图1示出根据示例实施例的电子系统;
图2示出根据示例实施例的集成电路;
图3示出根据示例实施例的用于控制核的转换的硬件;
图4是根据示例实施例的示出信号的状态转换的状态图;以及
图5是示出根据示例实施例的控制核的操作状态的流程图。
具体实施方式
在此说明书通篇中对“一个实施例”或“实施例”的任何引用意味着结合该实施例描述的特定特征、结构或特性被包含于至少一个实施例中。因此,在本说明书各处出现的短语“在一个实施例中”和“在实施例中”不一定全部指向同一实施例。此外,不同实施例可以与其他实施例结合。
实施例可涉及控制移动时间窗期间转换操作状态的计算核(下文称为核)的数量。计算机核是读取并执行指令或进行固定处理的任何处理引擎,诸如GPU核、图形核等。
图1示出根据示例实施例的电子系统;还可提供其他的实施例和配置。
图1示出了包括处理器110、电源120、显示器125和存储器130的电子系统100。处理器110可以包括例如算术逻辑单元和内部高速缓存。处理器110可以通过使用接收到的指令(诸如经由计算机可读介质(或机器可读介质)接收的指令)来执行操作。处理器110可以对应于任何先前描述的处理器。
上述特征可被设置在图1所示的电子系统100内。
系统100还可以包括可以并入在网络接口170内的图形接口140、芯片组150、高速缓存160、网络接口170和无线通信单元180。可选地或附加地,无线通信单元190可以耦合到处理器110,并且存储器130和处理器110之间可以存在直接连接。
处理器110可以是中央处理单元(CPU)、微处理器或任何其他类型的处理或计算电路,并且可被包括在芯片管芯上,其中其余特征的全部或任何组合,或其余特征中的一个或多个可以通过已知的连接和接口来电耦合到微处理器管芯。所示的连接仅仅是说明性的,因为例如在芯片平台、功能或应用需求上可能存在所示元件之间或之中的其他连接。
在至少一个实施例中,处理器110可以被设置在诸如片上系统之类的芯片上。处理器可以包括诸如存储器控制器和图形设备等的部件。该芯片可以是多核芯片。例如,芯片可能包含四个独立的核。
在至少一个实施例中,计算机可读介质(或机器可读介质)可以存储用于控制不同核的操作状态的程序。该程序可包含指令或代码。
图2示出根据示例实施例的集成电路。还可提供其他的实施例和配置。
图2示出集成电路200。集成电路200可以是管芯或芯片。集成电路可以包括多个核。每个核可以对应于单独的中央处理单元(CPU)或单独的处理器。
图2示出集成电路200包括四(4)个核,即核0 202,核1 204,核2 206和核3 208。其他数量的核也可以被提供。
集成电路200还可以包括控制逻辑220和非核逻辑230。如下面将要描述的,控制逻辑200可以与核202、204、206、208一起使用。例如,控制逻辑220可被用于控制核202、204、206、208的操作。在至少一个实施例中,控制逻辑220可以控制核的操作状态。在至少一个实施例中,控制逻辑可以基于对转换请求的总数的确定来确定是否阻挡到核之一的时钟信号。
在至少一个实施例中,控制逻辑220可以包括锁相环(PLL)电路,该锁相环(PLL)电路向核202、204、206、208中的每一个提供单独的时钟信号。时钟信号允许核中的每一个操作。控制逻辑也可以称为处理器控制单元(PCU),其可以控制提供给核(或处理器)的时钟信号。在至少一种布置中,多个PLL电路可以是时钟生成单元(或块)的一部分。在至少一种布置中,PLL电路(具有时钟生成方案)可以被提供至核(或处理器)的本地,以帮助减少的时钟偏斜。
控制逻辑220可以包括逻辑,该逻辑的至少一部分是硬件。非控制逻辑220可以包括逻辑,该逻辑的至少一部分是硬件。
非核逻辑230可以用于其他操作。非核逻辑230可以包括用于监视或控制针对核(或处理器核)的时钟(或时钟信号)、输入-输出(IO)设备(诸如PCIe根复合体、系统DMA引擎、电压、温度、功率和能量管理等)的逻辑。
在操作期间,核可以在不同的操作状态或模式(诸如空闲模式(时钟门控或C1)和活跃模式(C0))之间转换。例如,基于CPU核利用的操作系统(OS)可以确定特定核可以转换到低功率状态并发出触发非核逻辑(或处理器控制单元(PCU))中的功率管理单元进入低功率状态的特殊CPU指令。退出低功率状态可以通过中断(诸如定时器、设备等)来完成。
核中的每一个可分别在状态/模式之间转换。在一个示例中,核202可从空闲状态转换到活跃状态。在另一个例子中,核202可以从活跃状态转换到空闲状态。每个核的转换可以是独立的并且可以随时发生。
然而,当在特定且短的时间段期间多个核在不同操作状态之间转换时,可能会出现瞬态步进(step)负载(或者步进负载瞬态)。例如,大瞬态步进负载可能是当多个核在短时间段(诸如几百纳秒)内从空闲状态转换到活跃状态时发生的大电流汲取。当多个核在短时间段内从活跃状态转换到空闲状态时,也可能发生大的瞬态步进负载。
例如,当核(即处理器核)工作(即执行指令)时,则逻辑状态的变化可能发生在标准单元中,导致从电源中汲取所需的电流。电流汲取可以被称为负载。当多个核同时从空闲转换(到活跃)时,则可能发生大的步进负载(或从电源汲取电流)。
例如,从空闲转换到活跃的单个核可能在200纳秒的短时间段内导致大约~10A的电流步进。如果多个核在同一时间段(200纳秒)内进行转换,那么步进负载的幅度可能与正在转换的核数成正比。由于电源可能不会很快作出响应,因此来自电源的大且快速的步进负载(即,电流汲取)可能导致电压下垂(droop)。由于晶体管对于转换状态具有最小电压,所以电压下垂可能导致硅(或管芯)中的逻辑故障。电源可以设计为在给定的时间窗内针对给定电流汲取保持电压稳定。为了处理大电流汲取,电压调节器可能不得不被过度设计,并由此增加成本。
实施例可通过限制在时间窗(或移动时间窗)内转换的核的总数来控制功率递送步进负载电流。例如,CPU功率管理单元(PCU)可以限制在时间窗(或移动时间窗)期间从空闲(时钟门控)转换为活跃(C0)的核的总数。例如,控制逻辑可以将200纳秒(即,移动时间窗)内的核转换的总数限制为2个核。移动时间窗的持续时间是可配置的,并且可因平台设计或通过BIOS或OS的配置设置而有所不同。
另外地和/或替代地,CPU PCU(或控制逻辑)可以限制在时间窗(或移动时间窗)期间从活跃(CO)转换到空闲(时钟门控-C1)的核的总数。
通过限制在预定移动时间窗期间转换的核的总数,步进负载电流(di/dt)的幅度可以减小。
对移动时间窗内转换的核的总数的限制可以基于功率递送步进负载(di/dt)设计限制来确定。
实施例可以提供监视可编程移动时间窗内请求在空闲与活跃之间转换(或反之亦然)的核的总数的硬件(和/或其部分是硬件的逻辑)。如果请求转换的核的总数超过可编程阈值,则硬件(和/或其逻辑是部分硬件)可以防止(或阻止)更多核中的一个在时间窗内转换。通过阻挡到(多个)核的时钟信号,可以防止核转换。这些特征也可以通过限制转换的核的总数的程序来执行。
图3示出根据示例实施例的用于控制核的转换的硬件。还可提供其他的配置和实施例。
图3中所示的元件可被设置在(图2的)集成电路200上。
图3示出了四(4)个核,即核0 202、核1 204、核2 206和核3 208。每个核可以被分别操作。每个核可以分别且独立地请求转换(到不同的操作状态)。基于CPU核利用的操作系统(0S)可以确定特定核可以转换到低功率状态并且发出触发非核控制逻辑(或处理器控制单元(PCU))中的电源管理单元(PMU)进入低功率状态的特殊CPU指令。退出低功率状态可以通过中断(诸如定时器、设备等)来完成。
图3还示出了控制逻辑300、锁相环(PLL)设备350和逻辑与(AND)门302、304、306、308、312、314、316和318。
每个核可以分别向控制逻辑提供时钟请求CLK_REQ(时钟_请求),以请求从空闲转换到活跃。时钟请求仅当针对特定核需要转换时才提供。在接收到时钟请求信号之际,控制逻辑可以确定移动时间窗内请求转换的核的总数。如果所确定的核数超过可编程阈值,则可(基于阈值)防止来自PLL设备350的时钟信号驱动至少一个核。这可以防止(或阻止)至少一个核在时间窗内转换。
例如,核0 202可以沿着信号线将时钟请求信号Core0_CLK_REQ(核0_时钟_请求)提供到控制逻辑300。核1 204可以沿着信号线将时钟请求信号Corel_CLK_REQ(核1_时钟_请求)提供到控制逻辑300。核2 206可以沿着信号线将时钟请求信号Core2_CLK_REQ((核2_时钟_请求))提供到控制逻辑300。核3 208可以沿着信号线将时钟请求信号Core3_CLK_REQ((核3_时钟_请求))提供到控制逻辑300。因此,每个核可以分别向控制逻辑300通知相应的核期望何时转换。
响应于从特定核接收到时钟请求CLK_REQ,控制逻辑300可以为相应核提供使能(EN)信号CLK_Enable(时钟_使能)。例如,响应于接收到时钟请求信号Core0_CLK_REQ,控制逻辑300可以将使能信号ENO提供给门302。响应于接收到时钟请求信号Core1_CLK_REQ,控制逻辑300可以将使能信号EN1提供给门304。响应于接收到时钟请求信号Core2_CLK_REQ,控制逻辑300可以将使能信号EN2提供给门306。响应于接收到时钟请求信号Core3_CLK_REQ,控制逻辑300可以将使能信号EN3提供给门308。
如果提供时钟请求转换,则控制逻辑300还可以基于所有屏蔽信号(与多个核有关)的当前状态以及允许转换的核的总数的可配置策略来提供屏蔽信号。例如,可以基于有限状态机提供屏蔽信号。被允许在时间窗内允许转换的核的总数可被预编程到控制逻辑中,或者可以由固件或软件设置来配置。
屏蔽信号可用于确定是否启用时钟。例如,如果使能信号为高且屏蔽位为0(或低),则时钟可被禁用。屏蔽比特可以在每个时钟周期基于有限状态机生成,其是根据平台策略和屏蔽比特的先前状态以及时钟请求信号状态。有限状态机可以部分地基于逻辑表来操作。
控制逻辑300可以提供与核0 202有关的屏蔽信号屏蔽0。控制逻辑300可以提供与核1204有关的屏蔽信号屏蔽1。控制逻辑300可以提供与核2 206有关的屏蔽信号屏蔽2。控制逻辑300可以提供与核3 208有关的屏蔽信号屏蔽3。
门302可以接收屏蔽0信号和ENO信号。门302可以基于屏蔽0信号和ENO信号执行逻辑与操作,并且将输出信号322提供给时钟缓冲器312。门304可以接收屏蔽1信号和EN1信号。门304可以基于屏蔽1信号和EN1信号执行逻辑与操作,并且将输出信号324提供给时钟缓冲器314。门306可以接收屏蔽2信号和EN2信号。门306可以基于屏蔽2信号和EN2信号执行逻辑与操作,并且将输出信号提供给时钟缓冲器316。门308可以接收屏蔽3信号和EN3信号。门308可以基于屏蔽3信号和EN3信号执行逻辑与操作,并且将输出信号328提供给时钟缓冲器318。
因此,相应门302、304、306和308的输出是基于屏蔽信号和时钟请求信号。然后可以使用相应的输出来阻止针对核中的相应一个的时钟信号。
图3示出了提供时钟信号的PLL设备350。时钟信号可以分别提供给核中的每一个。然而,可以提供时钟缓冲器以阻止时钟信号到达相应的核。
例如,时钟缓冲器312可以接收(来自PLL设备150的)时钟信号和来自门302的输出信号322。时钟缓冲器312可以对两个输入执行逻辑与操作并将输出信号332提供给核0202。时钟缓冲器314可以接收(来自PLL设备150的)时钟信号和来自门304的输出信号334。时钟缓冲器314可以对两个输入执行逻辑与操作并将输出信号334提供给核1 204。
时钟缓冲器316可以(来自PLL设备150的)接收时钟信号和来自门306的输出信号326。时钟缓冲器316可以对两个输入执行逻辑与操作并将输出信号336提供给核2 206。时钟缓冲器318可以接收(来自PLL设备150的)时钟信号和来自门308的输出信号328。时钟缓冲器318可以对两个输入执行逻辑与操作并将输出信号338提供给核3 208。
总之,如果针对相应核的屏蔽信号是0,则时钟缓冲器可以阻止时钟信号被提供给相应核。另一方面,如果针对相应核的屏蔽信号是1并且使能信号EN是1,则可以通过时钟缓冲器将时钟信号提供给相应核。核然后可以执行其适当转换并执行其他核操作。
当请求转换的核数下降到移动时间窗的阈值以下时,控制逻辑可以对一个或多个核的屏蔽信号解除断言(de-assert)。例如,如果三个核在时间t0请求从空闲转换到活跃状态,并且策略是在200纳秒移动时间窗中仅允许两(2)个核,则在时间t0,仅两个核被允许(即,屏蔽是1)。对于下一个窗口(或200ns),第三核被阻止。在200纳秒(t0+200纳秒)之后,控制逻辑可以对屏蔽解除断言并且第三核可以退出空闲状态以进入活跃状态。
图4是示出在示例实施例中发送的信号的状态转换的图。还可提供其他的实施例。将关于从空闲到活跃的转换描述图4。然而,可以关于从活跃到空闲的转换来提供实施例(和关于图4的描述)。
图4示出了在涉及四个核的示例性实施例中传送的信号的状态转换以及其中在200ns的移动时间窗内只有两个核可以从空闲状态转换到活跃状态的策略。假定在时间t0=0之前没有来自任何核的CLK_REQ信号被断言。
在时间t0=0,核0通过断言时钟请求Core0_CLK_REQ信号来请求从空闲转换到活跃。响应于接收到Core0_CLK_REQ信号,控制逻辑300提供使能信号ENO。因为其余核中少于两个核(此时,没有核)已经在200ns的移动时间窗内断言它们各自的CLK_REQ信号,所以控制逻辑300提供信号屏蔽0。
在时间t0+30ns,核1通过断言时钟请求Core1_CLK_REQ信号来请求从空闲转换到活跃。响应于接收到Core1_CLK_REQ信号,控制逻辑300提供使能信号EN1。因为其余核中少于两个核(此时,仅核0)已经在200ns的移动时间窗内断言它们各自的CLK_REQ信号,所以控制逻辑300提供信号屏蔽1。
在时间t0+50ns,核2通过断言时钟请求Core2_CLK_REQ信号来请求从空闲转换到活跃。响应于接收到Core2_CLK_REQ信号,控制逻辑300提供使能信号EN2。因为其余核中的两个(此时,核0和核1)已经在200ns的移动时间窗内断言了它们各自的CLK_REQ信号,所以控制逻辑300不提供信号屏蔽2直到存在其中少于两个CLK_REQ信号在先前200ns内已被断言的条件。由于这种条件在时间=t0+200ns之前不存在,所以控制逻辑在时间=t0+200ns时提供信号屏蔽2。
在时间t0+90ns,核3通过断言时钟请求Core3_CLK_REQ信号来请求从空闲转换到活跃。响应于接收到Core3_CLK_REQ信号,控制逻辑提供使能信号EN3。因为其余核中的三个核(此时,核0、核1和核2)已经在200ns的移动时间窗内断言了它们各自的CLK_REQ信号,所以控制逻辑300不提供信号屏蔽3直到存在其中少于两个CLK_REQ信号在先前200ns内已被断言的条件。由于这种条件在时间=t0+230ns之前不存在,所以控制逻辑在时间=t0+230ns时提供信号屏蔽3。
图5是示出根据示例实施例的控制核的操作状态的流程图。其他操作、操作次序和实施例也可以被使用。
更具体地,操作402包括向多个核提供时钟。例如,时钟设备可以向多个核中的每一个提供时钟信号。
操作404包括操作多个核。例如,核可以操作以执行它们各自的操作。
操作406包括提供转换请求。例如,如果核要在空闲与活跃之间转换,则多个核中的任何一个可提供转换请求。
操作408是对转移请求的总数是否大于规定数量的确定。例如,控制逻辑可以确定接收到的转换请求的总数(在移动时间窗内)是否超过规定数量。规定数量可以被预先编程。在至少一个实施例中,控制逻辑可以维持空闲至活跃与活跃至空闲转换之间的转换的净和,并且仅使用转换的净和来确定它是否超过规定数量。
如果在操作408中确定为“否”,则操作可以进行到操作404。例如,如果确定为“否”,则可能发生转换并且核可以相应地操作。
如果在操作408中确定为是,则在操作412中可以从核中阻止时钟信号。例如,如果在操作408中确定为“是”,则可以从核中的一个阻止所生成的时钟信号。如此,核在相应的时间窗内将不能转换。时间窗期满之后,即使时钟没有变化,时钟请求位也会变高,并允许使能EN和屏蔽。
操作414包括对是否超过时间窗的确定。如果确定为“否”,则操作继续直到确定为“是”。如果确定为“是”,则核可以相应地操作。
上述实施例可以在逻辑内发生,该逻辑至少一部分是硬件。另外地和/或可替代地,指令或代码可以从机器可读介质或经由远程连接(例如在网络上经由天线和/或网络接口)可访问的外部存储设备提供给存储器,从而提供对一个或更多电子可访问介质等的访问。机器可读介质可以包括以机器(例如,计算机)可读形式提供(即,存储和/或发送)信息的任何机制。例如,机器可读介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、磁或光存储介质、闪存设备、电、光、声或其他形式的传播信号(例如载波、红外线信号、数字信号)等。在替代实施例中,可以使用硬连线电路来代替指令或代码或与指令或代码组合,并且因此实施例不限于硬件电路和软件指令的任何特定组合。
该程序可以包括用于执行在上面先前讨论的实施例中执行的任何操作或功能的代码或指令。
上述实施例的特征可以以代码段或指令提供以执行任务。代码段或任务可以存储在处理器可读介质(或机器可读介质)中或通过计算数据信号通过传输介质或通信链路在载波中发送。处理器可读介质、机器可读介质和/或计算机可读介质可以包括可以存储或传输信息的任何介质。
以下示例涉及进一步的实施例。
示例1是一种电子设备,包括:逻辑,该逻辑的至少一部分是硬件,该逻辑用于在可配置移动时间段内接收来自多个核的多个转换请求,以及用于基于接收到的转换请求阻止到多个核中的一个或多个的时钟信号。
在示例2中,示例1的主题可以可选地包括时钟设备,该时钟设备用于向多个核中的每一个核提供时钟信号。
在示例3中,示例1-2中的任何一个的主题可以可选地包括用于确定可配置移动时间段内的转换请求的总数的逻辑。
在示例4中,示例1和示例3的主题可以可选地包括用于在确定转换请求的总数超过规定阈值时阻止到多个核中的一个或多个核的时钟信号的逻辑。
在示例5中,示例1和示例4的主题可以可选地包括规定阈值是可编程的。
在示例6中,示例1的主题可以可选地包括用于在转换请求的总净和超过规定阈值时阻止到多个核中的一个或多个核的时钟信号的逻辑。
在示例7中,示例1-6中的任何一个的主题可以可选地包括多个核中的一个或多个核用于在从多个核中的一个或多个阻止时钟信号时执行到不同操作状态的转换。
在示例8中,示例1和示例7的主题可以可选地包括转换从活跃状态到空闲状态。
在示例9中,示例1和示例7的主题可以可选地包括转换从空闲状态到活跃状态。
在示例10中,示例1-9中的任何一个的主题可以可选地包括在集成电路上设置逻辑。
示例11是一种电子系统,包括:用于供电的电源;以及具有多个核和控制逻辑的集成电路,所述控制逻辑用于在可配置移动时间段内接收多个转换请求,以及用于基于接收到的转换请求阻止到多个核中的一个或多个核的时钟信号。
在示例12中,示例11的主题可以可选地包括:集成电路包括时钟设备,该时钟设备用于向多个核中的每一个核提供时钟信号。
在示例13中,示例11-12中的任何一个的主题可以可选地包括用于确定可配置移动时间段内的转换请求的总数的控制逻辑。
在示例14中,示例11和示例13的主题可以可选地包括用于在确定转换请求的总数超过规定阈值时阻止到多个核中的一个或多个核的时钟信号的控制逻辑。
在示例15中,示例11的主题可以可选地包括用于在转换请求的总净和超过规定阈值时阻止到多个核中的一个或多个核的时钟信号的控制逻辑。
在示例16中,示例11-15中的任何一个的主题可以可选地包括多个核中的一个或多个用于在从多个核中的一个或多个阻止时钟信号时执行到不同操作状态的转换。
在示例17中,示例11和示例16的主题可以可选地包括转换从活跃状态到空闲状态。
在示例18中,示例11和示例16的主题可以可选地包括转换从空闲状态到活跃状态。
示例19是一种电子设备,包括:多个核;接收装置,用于在可配置移动时间段内从多个核接收多个转换请求;以及阻止装置,用于基于多个转换请求阻止到多个核中的一个或多个核的时钟信号。
在示例20中,示例19的主题可以可选地包括时钟控制装置,用于向多个核中的每一个提供时钟信号。
在示例21中,示例19-20中的任何一个的主题可以可选地包括确定装置,用于确定可配置移动时间段内的转换请求的总数。
在示例22中,示例20和示例21的主题可以可选地包括该阻止装置用于在确定转换请求的总数超过规定阈值时阻止到多个核中的一个或多个核的时钟信号。
在示例23中,示例19的主题可以可选地包括该阻止装置用于当转换请求的总净和超过规定阈值时阻止到多个核中的一个或多个核的时钟信号。
在示例24中,示例19-23中的任何一个的主题可以可选地包括多个核中的一个或多个核用于在从多个核中的一个或多个阻止时钟信号时执行到不同操作状态的转换。
在示例25中,示例19和示例24的主题可以可选地包括转换从活跃状态到空闲状态。
在示例26中,示例19和示例24的主题可以可选地包括转换从空闲状态到活跃状态。
示例27是一种控制电子设备的方法,包括:在可配置移动时间窗内从多个核接收多个转换请求;以及基于所接收的多个转换请求来阻止到所述多个核中的一个或多个核的时钟信号。
在示例28中,示例27的主题可以可选地包括向多个核中的每一个核提供时钟信号。
在示例29中,示例27-28中的任何一个的主题可以可选地包括确定可配置移动时间段内的转换请求的总数。
在示例30中,示例27和示例29的主题可以可选地包括:阻止时钟信号包括在确定转换请求的总数超过规定阈值时阻止到多个核中的一个或多个核的时钟信号。
在示例31中,示例27的主题可以可选地包括:阻止时钟信号包括在转换请求的总净和超过规定阈值时阻止到多个核中的一个或多个核的时钟信号。
在示例32中,示例27-31中的任何一个的主题可以可选地包括:多个核中的一个或多个核用于在阻止时钟信号到诸核中的另一个核时执行转换。
在示例33中,示例27和示例32的主题可以可选地包括转换从活跃状态到空闲状态。
在示例34中,示例27和示例32的主题可以可选地包括转换从空闲状态到活跃状态。
示例35是机器可读介质,其包括一条或多条指令,当执行所述一条或多条指令时,所述一条或多条指令使处理器执行一个或多个操作,用于:在可配置移动时间窗内从多个核接收多个转换请求;以及基于所接收的多个转换请求来阻止到所述多个核中的一个或多个核的时钟信号。
在示例36中,示例35的主题可以可选地包括所述一个或多个操作用于进一步将时钟信号提供给多个核中的每一个核。
在示例37中,示例35-36中的任何一个的主题可以可选地包括所述一个或多个操作用于确定可配置移动时间段内的转换请求的总数。
在示例38中,示例35和示例37的主题可以可选地包括:阻止时钟信号包括在确定转换请求的总数超过规定阈值时阻止到多个核中的一个或多个核的时钟信号。
在示例39中,示例35的主题可以可选地包括:阻止时钟信号包括在转换请求的总净和超过规定阈值时阻止到多个核中的一个或多个核的时钟信号。
在示例40中,示例35-39中的任何一个的主题可以可选地包括:多个核中的一个或多个核用于在阻止时钟信号到诸核中的另一个核时执行转换。
在示例41中,示例35和示例40的主题可以可选地包括转换从活跃状态到空闲状态。
在示例42中,示例35和示例40的主题可以可选地包括转换从空闲状态到活跃状态。
本申请文件中通篇对“一个实施例”、“实施例”、“示例实施例”等的任何引用意指结合该实施例描述的特定的特征、结构或特性被包括在至少一个实施例中。此类短语在说明书中的出现不必要全部指同一实施例。进一步,当结合任何实施例描述特定特征、结构或特性时,认为在本领域技术人员见识范围内,可以结合其他实施例影响这样的特征、结构或特性。
尽管已参照数个示例性实施例描述了实施例,但是应当理解本领域技术人员可设想将落在本公开的原理的精神和范围内的众多其他更改和实施例。更具体而言,对落在本公开、附图和所附权利要求书的范围内主题组合布置的组件部分和/或布置的各种改变和更改是可能的。除了对组件部分和/或布置的改变和更改之外,替代性使用对于本领域技术人员而言也是显而易见的。

Claims (25)

1.一种电子设备,包括:
逻辑,所述逻辑的至少一部分是硬件,用于在可配置移动时间段内接收来自多个核的多个转换请求,以及用于基于所接收的转换请求阻止到所述多个核中的一个或多个核的时钟信号。
2.如权利要求1所述的电子设备,进一步包括时钟设备,所述时钟设备用于向所述多个核中的每一个核提供所述时钟信号。
3.如权利要求1-2中任一项所述的电子设备,其中,所述逻辑用于确定所述可配置移动时间段内的转换请求的总数。
4.如权利要求3所述的电子设备,其中,所述逻辑用于在确定所述转换请求的总数超过规定阈值时阻止到所述多个核中的所述一个或多个核的所述时钟信号。
5.如权利要求4所述的电子设备,其中,所述规定阈值是可编程的。
6.如权利要求1所述的电子设备,其中,所述逻辑用于在所述转换请求的总净和超过规定阈值时阻止到所述多个核中的所述一个或多个核的所述时钟信号。
7.如权利要求1-6中任一项所述的电子设备,其中,所述多个核中的一个或多个核用于在从所述多个核中的一个或多个核阻止所述时钟信号时执行到不同操作状态的转换。
8.如权利要求7所述的电子设备,其中,所述转换是从活跃状态到空闲状态。
9.如权利要求7所述的电子设备,其中,所述转换是从空闲状态到活跃状态。
10.如权利要求1-9中任一项所述的电子设备,其中,所述逻辑被设置在集成电路上。
11.一种电子系统,包括:
电源,所述电源用于供电;以及
集成电路,所述集成电路具有多个核和控制逻辑,所述控制逻辑用于在可配置移动时间段内接收多个转换请求,以及用于基于所接收的转换请求阻止到所述多个核中的一个或多个核的时钟信号。
12.如权利要求11所述的电子系统,其中,所述集成电路包括时钟设备,所述时钟设备用于向所述多个核中的每一个核提供所述时钟信号。
13.如权利要求11-12中任一项所述的电子系统,其中,所述控制逻辑用于确定所述可配置移动时间段内的转换请求的总数。
14.如权利要求13所述的电子系统,其中,所述控制逻辑用于在确定所述转换请求的总数超过规定阈值时阻止到所述多个核中的所述一个或多个核的所述时钟信号。
15.一种电子设备,包括:
多个核;
接收装置,所述接收装置用于在可配置移动时间段内接收来自所述多个核的多个转换请求;以及
阻止装置,所述阻止装置用于基于所述多个转换请求阻止到所述多个核中的一个或多个核的时钟信号。
16.如权利要求15所述的电子设备,进一步包括时钟控制装置,所述时钟控制装置用于向所述多个核中的每一个核提供所述时钟信号。
17.如权利要求15-16中任一项所述的电子设备,进一步包括确定装置,所述确定装置用于确定所述可配置移动时间段内的转换请求的总数。
18.如权利要求17所述的电子设备,其中,所述阻止装置用于在确定所述转换请求的总数超过规定阈值时阻止到所述多个核中的一个或多个核的所述时钟信号。
19.一种控制电子设备的方法,包括:
在可配置移动时间窗内接收来自多个核的多个转换请求;以及
基于所接收的多个转换请求阻止到所述多个核中的一个或多个核的时钟信号。
20.如权利要求19所述的方法,进一步包括向所述多个核中的每一个核提供所述时钟信号。
21.如权利要求19-20中任一项所述的方法,进一步包括确定所述可配置移动时间段内的转换请求的总数。
22.如权利要求21所述的方法,其中,阻止所述时钟信号包括在确定所述转换请求的总数超过规定阈值时阻止到所述多个核中的所述一个或多个核的所述时钟信号。
23.一种包括一条或多条指令的机器可读介质,所述一条或多条指令在被执行时使处理器执行一个或多个操作,用于:
在可配置移动时间窗内接收来自多个核的多个转换请求;以及
基于所接收的多个转换请求阻止到所述多个核中的一个或多个核的时钟信号。
24.如权利要求23所述的机器可读介质,其中,所述一个或多个操作用于进一步确定所述可配置移动时间段内的转换请求的总数。
25.如权利要求24所述的机器可读介质,其中,用于阻止所述时钟信号包括用于在确定所述转换请求的总数超过规定阈值时阻止到所述多个核中的所述一个或多个核的所述时钟信号。
CN201680068760.3A 2015-12-24 2016-11-23 用于控制核数以转换操作状态的方法和装置 Pending CN108292159A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/757,561 US20170185128A1 (en) 2015-12-24 2015-12-24 Method and apparatus to control number of cores to transition operational states
US14/757,561 2015-12-24
PCT/US2016/063638 WO2017112311A1 (en) 2015-12-24 2016-11-23 Method and apparatus to control number of cores to transition operational states

Publications (1)

Publication Number Publication Date
CN108292159A true CN108292159A (zh) 2018-07-17

Family

ID=59087067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680068760.3A Pending CN108292159A (zh) 2015-12-24 2016-11-23 用于控制核数以转换操作状态的方法和装置

Country Status (5)

Country Link
US (1) US20170185128A1 (zh)
EP (1) EP3394704A4 (zh)
CN (1) CN108292159A (zh)
SG (1) SG10201609844SA (zh)
WO (1) WO2017112311A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114527829A (zh) * 2020-11-23 2022-05-24 Oppo广东移动通信有限公司 时钟门控电路、芯片和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060282692A1 (en) * 2005-06-10 2006-12-14 Lg Electronics Inc. Controlling power supply in a multi-core processor
CN101101504A (zh) * 2007-08-16 2008-01-09 中国科学院计算技术研究所 一种处理器及其降频装置和方法
CN101241390A (zh) * 2007-02-07 2008-08-13 华硕电脑股份有限公司 多核心处理器的效能调整方法
US8156362B2 (en) * 2008-03-11 2012-04-10 Globalfoundries Inc. Hardware monitoring and decision making for transitioning in and out of low-power state
EP2843551A2 (en) * 2013-08-28 2015-03-04 VIA Technologies, Inc. Multi-core synchronization mechanism
CN105183128A (zh) * 2014-06-06 2015-12-23 英特尔公司 强制处理器进入低功率状态

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050310A1 (en) * 2003-07-15 2005-03-03 Bailey Daniel W. Method, system, and apparatus for improving multi-core processor performance
US7451333B2 (en) * 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
JP5235870B2 (ja) * 2007-04-09 2013-07-10 パナソニック株式会社 マルチプロセッサ制御装置、その制御方法および集積回路
US20110213998A1 (en) * 2008-06-11 2011-09-01 John George Mathieson System and Method for Power Optimization
US8291249B2 (en) * 2009-09-25 2012-10-16 Advanced Micro Devices, Inc. Method and apparatus for transitioning devices between power states based on activity request frequency
US9104411B2 (en) * 2009-12-16 2015-08-11 Qualcomm Incorporated System and method for controlling central processing unit power with guaranteed transient deadlines
US8635476B2 (en) * 2010-12-22 2014-01-21 Via Technologies, Inc. Decentralized power management distributed among multiple processor cores
US8966305B2 (en) * 2011-06-30 2015-02-24 Advanced Micro Devices, Inc. Managing processor-state transitions
US8943340B2 (en) * 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US8874893B2 (en) * 2012-03-26 2014-10-28 International Business Machines Corporation Effect translation and assessment among microarchitecture components
US20130311804A1 (en) * 2012-04-30 2013-11-21 Vivek Garg Master slave qpi protocol for coordinated idle power management in glueless and clustered systems
US20140095896A1 (en) * 2012-09-28 2014-04-03 Nicholas P. Carter Exposing control of power and clock gating for software
US9360918B2 (en) * 2012-12-21 2016-06-07 Advanced Micro Devices, Inc. Power control for multi-core data processor
US9377841B2 (en) * 2013-05-08 2016-06-28 Intel Corporation Adaptively limiting a maximum operating frequency in a multicore processor
US9304573B2 (en) * 2013-06-21 2016-04-05 Apple Inc. Dynamic voltage and frequency management based on active processors
US9495001B2 (en) * 2013-08-21 2016-11-15 Intel Corporation Forcing core low power states in a processor
US9535488B2 (en) * 2013-08-28 2017-01-03 Via Technologies, Inc. Multi-core microprocessor that dynamically designates one of its processing cores as the bootstrap processor
US10088891B2 (en) * 2013-09-23 2018-10-02 Cornell University Multi-core computer processor based on a dynamic core-level power management for enhanced overall power efficiency
US9494998B2 (en) * 2013-12-17 2016-11-15 Intel Corporation Rescheduling workloads to enforce and maintain a duty cycle
US20150323975A1 (en) * 2014-05-12 2015-11-12 Qualcomm Innovation Center, Inc. SYNCHRONIZATION OF ACTIVITY OF MULTIPLE SUBSYSTEMS IN A SoC TO SAVE STATIC POWER
GB2532210A (en) * 2014-11-11 2016-05-18 Ibm System and method for controlling idle state exits to manage DI/DT issues
JP6418056B2 (ja) * 2015-05-01 2018-11-07 富士通株式会社 演算処理装置及び演算処理装置の制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060282692A1 (en) * 2005-06-10 2006-12-14 Lg Electronics Inc. Controlling power supply in a multi-core processor
CN101241390A (zh) * 2007-02-07 2008-08-13 华硕电脑股份有限公司 多核心处理器的效能调整方法
CN101101504A (zh) * 2007-08-16 2008-01-09 中国科学院计算技术研究所 一种处理器及其降频装置和方法
US8156362B2 (en) * 2008-03-11 2012-04-10 Globalfoundries Inc. Hardware monitoring and decision making for transitioning in and out of low-power state
EP2843551A2 (en) * 2013-08-28 2015-03-04 VIA Technologies, Inc. Multi-core synchronization mechanism
CN105183128A (zh) * 2014-06-06 2015-12-23 英特尔公司 强制处理器进入低功率状态

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114527829A (zh) * 2020-11-23 2022-05-24 Oppo广东移动通信有限公司 时钟门控电路、芯片和电子设备
CN114527829B (zh) * 2020-11-23 2024-01-30 Oppo广东移动通信有限公司 时钟门控电路、芯片和电子设备

Also Published As

Publication number Publication date
WO2017112311A1 (en) 2017-06-29
EP3394704A4 (en) 2019-08-07
SG10201609844SA (en) 2017-07-28
US20170185128A1 (en) 2017-06-29
EP3394704A1 (en) 2018-10-31

Similar Documents

Publication Publication Date Title
US9703313B2 (en) Peripheral clock management
US9800243B2 (en) Clock circuit and clock signal transmission method thereof
CN104049713B (zh) 使用时钟级联互补开关逻辑的集成时钟选通器(icg)
KR102384347B1 (ko) 클록 관리 유닛을 포함하는 시스템 온 칩 및 그 동작방법
US8769332B2 (en) Regional clock gating and dithering
ES2874025T3 (es) Multiplexación de potencia con una carga activa
CN101133375B (zh) 用于时钟分配的设备、方法和系统
CN105425928A (zh) 电力管理集成电路、电力管理方法和移动设备
US9684367B2 (en) Power trace port for tracing states of power domains
EP3851933B1 (en) Non-linear clamp strength tuning method and apparatus
CN103765345A (zh) 用于降低平台中空闲链路功率的方法和装置
JP2015094945A (ja) ディスプレイパネルをディスプレイ送信エンジンに接続する物理層インターフェースについての電力管理
CN108141205B (zh) 具有触发器的电源管理
KR102165265B1 (ko) 하드웨어 전력 관리 유닛을 이용하여 클락 신호를 조절할 수 있는 애플리케이션 프로세서와 이를 포함하는 장치들
EP2523349B1 (en) Systems and methods for configuring an SOPC without a need to use an external memory
CN103730149A (zh) 一种双端口存储器的读写控制电路
CN110226148B (zh) 时钟分频器装置及其方法
WO2021040947A1 (en) Low power clock gate circuit
US7669072B2 (en) Clock circuitry architecture to improve electro-magnetic compatibility and optimize peak of currents in micro-controller
CN108292159A (zh) 用于控制核数以转换操作状态的方法和装置
Yadav et al. LAURA-NoC: Local automatic rate adjustment in network-on-chips with a simple DVFS
WO2020264558A1 (en) Selectable input buffers of general purpose inputs and microcontrollers having the same
US10903838B1 (en) Integrated circuit clock management during low power operations
Gupta Clock power analysis of low power clock gated arithmetic logic unit on different FPGA
CN105850047A (zh) 正交分频器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180717