CN103514011B - 热控制装置和方法 - Google Patents

热控制装置和方法 Download PDF

Info

Publication number
CN103514011B
CN103514011B CN201310245720.XA CN201310245720A CN103514011B CN 103514011 B CN103514011 B CN 103514011B CN 201310245720 A CN201310245720 A CN 201310245720A CN 103514011 B CN103514011 B CN 103514011B
Authority
CN
China
Prior art keywords
temperature
circuit
threshold
reading
response
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
CN201310245720.XA
Other languages
English (en)
Other versions
CN103514011A (zh
Inventor
J·J·林
K·B·卡特尔
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.)
Apple Inc
Original Assignee
Apple Computer 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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN103514011A publication Critical patent/CN103514011A/zh
Application granted granted Critical
Publication of CN103514011B publication Critical patent/CN103514011B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00369Modifications for compensating variations of temperature, supply voltage or other physical parameters
    • 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/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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

Abstract

本公开涉及热控制装置和方法。更具体而言,公开了一种热控制方法和装置的各个实施例。在一个实施例中,集成电路包括一个或多个热传感器、比较电路和控制电路。所述比较电路被配置为:从所述一个或多个热传感器接收温度读数。所述控制电路被配置为:响应于所述比较电路确定来自所述一个或多个热传感器的至少一个温度读数超过一个或多个阈值之一而降低一个或多个受控子系统的性能级别。基于软件的热控制机构也可以与所述装置同时执行。

Description

热控制装置和方法
技术领域
本发明涉及电子系统,更具体地说,涉及电子系统的热控制。
背景技术
随着晶体管实现的集成电路(IC)的数量增加,管理与温度有关的问题在重要性方面也增加。在很多IC中,同时操作的大量晶体管可能产生明显的热量。如果保持不检查,则IC的晶体管的操作所产生的热量可能导致错误操作或永久损坏。
温度传感器得以在很多不同类型的IC上实现。一个或多个温度传感器可以放置在IC管芯上,并且可以用于确定其上各个位置处的温度。温度传感器可以测量温度信息并且将其报告给其它电路(例如一个或多个寄存器)。在一些IC(例如各种类型的处理器和片上系统(SOC))中,可以执行监控寄存器的软件。如果检测到超过预定阈值的温度,则软件可以发起动作以关闭IC的一个或多个部分。
发明内容
公开了一种热控制方法和装置的各个实施例。在一个实施例中,集成电路包括一个或多个热传感器、比较电路和控制电路。所述比较电路被配置为:从所述一个或多个热传感器接收温度读数。所述控制电路被配置为:响应于所述比较电路确定来自所述一个或多个热传感器的至少一个温度读数超过一个或多个阈值之一而降低一个或多个受控子系统的性能级别。
在一个实施例中,所述比较电路和所述控制电路可以与在处理器上执行的软件温度控制例程并行地操作。因此,该系统可以包括硬件和软件热监视控制机构。硬件机构(包括例如比较电路)可以比软件机构更频繁地监控从一个或多个温度传感器接收的温度读数。如果所述硬件机构确定温度读数超过温度阈值,则所述硬件机构可以产生对于IC的至少对应功能单元的性能级别的对应降低。性能级别方面的这种降低可以允许在报告传感器处的温度在由软件机构检查之前回落到温度阈值之下。
在一个实施例中,可以使用多个温度阈值。例如,所述控制电路可以响应于确定对应温度值已经超过第一阈值而将受控子系统的性能降低第一量,或响应于确定所述对应温度值已经超过第二阈值而降低第二量。所述第二阈值可以大于所述第一阈值。如果对应温度读数超过所述第二阈值,则所述软件机构可以关闭所述受控子系统(以及在一些实施例中,集成电路的其它部分)。在一些实施例中,在确定温度读数超过所述第一阈值时,所述软件机构可以不采取动作。因此,可以对所述硬件机构允许用于将所述集成电路的各个子系统的温度保持在安全限度之内的机会,而无需执行完全关闭。在所述硬件机构不再能够将各个温度保持在安全限度之内之后,所述软件机构可以执行一个或多个受控子系统的关闭。
所述硬件机构的不同实施例中的控制电路可以执行各种类型的性能降低。例如,在一个实施例中,可以响应于温度读数超过阈值而降低提供给受控子系统的时钟信号的频率。其它类型的性能降低可以包括操作电压降低、带宽限制、对另一子系统的工作负载的重新分配(例如从一个处理器内核到另一处理器内核)等。
附图说明
以下详细描述参照附图,现简要描述附图。
图1是集成电路的一个实施例的框图。
图2是基于硬件的热控制装置的一个实施例的框图。
图3A和图3B是示出基于硬件的热控制装置的一个实施例的操作中的迟滞(hysterisis)的时序图。
图4是示出结合基于软件的热控制机构的一个实施例的基于硬件的热控制机构的一个实施例的组合操作的流程图。
图5是系统的一个实施例的框图。
虽然本发明容易经受各种修改和替换形式,但其特定示例性实施例在附图中通过示例的方式示出并且将在此详细描述。然而,应理解,附图及其详细描述并非意图将本发明限制为所公开的特定形式,而是相反,本发明覆盖落入所附权利要求所限定的本发明的精神和范围内的所有修改、等同物以及替换。在此所使用的标题仅用于组织的目的,而不是意图用于限制本发明的范围。如贯穿本发明所使用的那样,词语“可以”用在宽泛的意义上(即意指具有潜能),而不是强制意义(即意指必须)。相似地,词语“包括”、“包含”以及“含有”意指包括,但不限于此。
各个单元、电路或其它组件可以描述为“被配置为”执行一个或多个任务。在这些情况下,“被配置为”是通常意指“具有在操作期间执行一个或多个任务的电路”的结构的宽泛陈述。故此,甚至当单元/电路/组件当前并不打开时,单元/电路/组件也可以被配置为执行任务。通常,形成与“被配置为”对应的结构的电路可以包括硬件电路和/或存储可执行以实现操作的指令的存储器。存储器可以包括易失性存储器(例如静态或动态随机存取存储器)和/或非易失性存储器(例如光盘或磁盘存储、闪存、可编程只读存储器)等。相似地,为了便于描述,各个单元/电路/组件可以描述为执行一个或多个任务。这些描述应解释为包括短语“被配置为”。陈述被配置为执行一个或多个任务的单元/电路/组件明确地并非意图对于该单元/电路/组件援引35U.S.C.§112,段落六解释。
具体实施方式
现参照图1,示出集成电路(IC)的一个实施例的框图。在所示实施例中,IC10是包括处理器内核12和14、图形单元16以及片上存储器18的片上系统(SoC)。所示实施例中的存储器18可以是只读存储器(ROM)、闪存、随机存取存储器或任何其它合适的存储器类型。IC10还包括各个热控制机构,以在操作期间监控并且调节其温度。在该示例中,处理器内核12和14以及图形单元16分别包括温度传感器11。温度传感器11中的每一个耦合到跳变点电路13,其被配置为:对从热传感器中的每一个所接收到的读数与一个或多个阈值进行比较。IC10还包括热控制电路15,其耦合为从跳变点电路13接收比较信息。在该特定实施例中,热控制电路15可以通过改变各个接收时钟信号的频率来调整IC10的各个功能单元(或子系统)的性能级别。热控制电路15可以执行其它控制动作以调整各个性能级别的实施例也是可能的并且预期的。这些动作可以包括电压调整、带宽调整、工作负载分配/重新分配等,但不限于此。
跳变点电路13和热控制电路15可以包括基于硬件的热控制机构。也就是说,使用IC10的硬件电路来实现所示实施例中的基于硬件的热控制机构。该实施例中的IC10还被配置为:实现可以与基于硬件的热控制机构并行运行并且与基于硬件的热控制机构互补的基于软件的热控制机构。更具体地说,在该实施例中,用于实现基于软件的热控制机构(SWTCM)19的指令存储在存储器18中。处理器内核12可以存取SWTCM19的指令,处理器内核12可以执行指令以执行基于软件的热控制例程。在执行SWTCM19的指令期间,处理器内核12可以存取来自跳变点电路13的温度比较结果,并且可以基于此而采取热控制动作。
如上所述,跳变点电路13可以对接收温度读数与一个或多个温度阈值进行比较。这些阈值可以是可编程的,或可以硬引线到跳变点电路13中。在两种情况之一下,可以按预定间隔来执行将比较结果报告给热控制电路15。与基于硬件的热控制机构的操作同时,处理器12所执行的SWTCM19的指令可以按其自身的预定间隔从跳变点电路13存取比较结果。在所示实施例中,跳变点电路13将比较结果报告给热控制电路15的间隔在持续期上可以短于SWTCM19从跳变点电路13存取比较信息的间隔。因此,热控制电路15可以比处理器内核12所执行的SWTCM19的指令接收比较信息更频繁地接收所更新的比较信息。
所示实施例中的热控制电路15耦合为接收三个不同的时钟信号CPU1Clk、CPU2Clk和图形时钟。对应输出时钟信号Clk1、Clk2和Clk3分别从热控制单元15提供给处理器内核12、处理器内核14和图形单元16。输入时钟信号可以基本上充当用于它们对应输出时钟信号的完全频率基准时钟信号。该特定实施例中的热控制电路15可以通过将输入时钟信号分频以产生处于降低后的频率的各个输出时钟信号来降低处理器内核12和14以及图形单元16中的任一的性能。在该实施例中,时钟信号可以彼此独立地分频,从而一些单元可以在降低性能模式下操作,而其它单元可以在完全(正常)性能模式下操作。
由于基于硬件的热控制机构按比基于软件的热控制机构更频繁的间隔来更新,因此基于硬件的机构可以对于IC10提供更精细粒度的热控制功能。相应地,如上所述,基于硬件的热控制机构可以响应于特定比较结果而对IC10执行各种类型的性能调整。例如,如果温度读数超过第一温度阈值,则热控制电路15可以将与报告温度传感器11关联的功能单元的性能降低第一量。如果温度读数超过第二温度阈值,则热控制电路可以将与报告温度传感器关联的功能单元的性能降低第二量。使用时钟频率的示例,如果超过第一温度阈值则热控制电路15可以将对应时钟信号的频率降低第一量,并且如果超过第二温度阈值则将对应时钟信号的频率降低第二量。在该特定示例中,仅关于与报告温度传感器关联的功能单元而执行热控制动作。然而,可以响应于温度读数超过各阈值之一而对附加功能单元执行性能降低的实施例是可能的并且预期的。还应注意,响应于温度读数落入各阈值之一之下,性能可以恢复到它们先前被降低的值。
硬件热控制机构可以在其操作中包括迟滞。热控制电路15可能并不立即响应于来自特定温度传感器11的温度读数超过阈值的初始指示而降低功能单元中的一个或多个的性能级别。反之,热控制电路15可能等待预定时间。如果在预定时间已经过去之后,来自特定温度传感器11的的温度读数仍大于阈值,则热控制电路15可以执行热控制动作(例如对至少对应功能单元降低时钟频率)。另一方面,如果在预定时间已经过去之前来自特定温度传感器11的温度读数落回到阈值电压之下,则热控制电路15可以将对应功能单元的性能级别保持在其当前级别。
当温度落入温度阈值之下时,也可以在提升性能级别中使用迟滞。在所示实施例中,热控制单元15可以在对应温度读数已经落入给定阈值之后等待另一预定时间以提升功能单元的性能。如果预定时间过去,并且温度仍然在阈值之下,则热控制电路15可以通过例如增加其时钟频率来提升对应功能单元的性能。另一方面,如果温度未在阈值之下持续预定时间的持续期,则热控制单元15可以将对应功能单元保持在降低性能级别。注意,(当温度落入阈值之下时)增加性能并且(当温度大于阈值时)降低性能所需的预定时间可以彼此不同。此外,这些预定时间可以是可编程的。
如上所述,当在处理器内核12中执行其对应指令时,SWTCM19可以按比基于硬件的热控制机构更不频繁的间隔来存取温度比较结果。此外,SWTCM19可以响应于温度读数超过阈值而采取不同的动作。在该特定实施例中,响应于来自特定温度传感器11的温度读数超过最大温度阈值,处理器内核12可以执行用于SWTCM19的指令以至少关闭对应功能单元。典型地,由于基于硬件的热控制机构更频繁地更新,因此其可能经常能够将温度保持在所规定的限度内。SWTCM19确定温度超过最大阈值可以指示基于硬件的热控制机构并未成功地将温度保持在所规定的限度内,因此可以执行关闭以防止对IC10的电路的潜在损坏。关闭的程度可以基于特定情况而变化。例如,如果仅与一个功能单元关联的热传感器正报告比最大阈值更大的温度,则可以仅关闭该功能单元。在另一示例中,如果与多个功能单元关联的热传感器正报告温度超过最大阈值,则可以关闭整个IC10。还要注意,如果在所示实施例中处理器内核12待关闭,则处理器内核14可以承担执行用于SWTCM19的指令的角色。
除了最大温度阈值之外,跳变点电路还可以对接收温度读数与其它阈值进行比较。通过实现小于最大值的附加阈值,在潜在地防止SWTCM19进行关闭的同时,可以将IC10的热输出(并且因此温度)及其各个功能单元保持在限度内。
现参照图2,示出基于硬件的热控制装置的一个实施例的框图。更具体地说,图2示出跳变点电路13和热控制电路15中的每一个的一个实施例的细节。在该示例性实施例中,基于硬件的热控制装置被配置为对于两个不同功能单元(在此情况下处理器内核和图形单元)基于两个不同阈值来监控两个温度传感器11。然而,对于多于两个的功能单元监控多于两个的温度传感器11所报告的温度的实施例是可能的并且预期的(包括图1所示的实施例)。此外,虽然在该示例中针对两个不同阈值进行比较,但针对多于两个的阈值的比较对于各个实施例也是可能的并且预期的。被配置为仅针对单个温度阈值监控仅单个温度传感器11和/或用于仅控制单个功能单元的实施例也是可能的并且预期的。
在所示实施例中,跳变点电路13被耦合包括四个分离的比较器21A-21D。比较器中的每一个耦合为从温度传感器11A或11B之一接收温度读数。跳变点电路13还包括阈值寄存器22和23,其分别被配置为存储第一温度阈值和第二温度阈值。在所示实施例中,温度阈值是可编程的。替代寄存器,在其它实施例中,可以实现可以存储温度阈值的其它存储设备。
比较器21A和21C在所示实施例中耦合到阈值寄存器22,而比较器21B和21D耦合到阈值寄存器23。比较器21A和21B耦合为从温度传感器11A接收温度读数,而比较器21C和21D耦合为从温度传感器11B接收温度读数。该实施例中的比较器21A和21C被配置为对温度读数与阈值寄存器22中所存储的温度阈值进行比较。相似地,该实施例中的比较器21B和21D被配置为对温度读数与阈值寄存器23中所存储的温度阈值进行比较。
所示实施例中的OR门27A耦合为从比较器21B和21D接收比较结果。如果来自比较器21B或21D之一的比较结果指示对应接收温度读数大于阈值寄存器23中所存储的温度阈值,则OR门27A可以输出逻辑1。否则,如果比较器21B或21D都不指示各个接收温度读数超过阈值寄存器23中所存储的温度阈值,则OR门27A可以输出逻辑0。所示实施例中的OR门27B耦合为从比较器21A和21C接收比较结果。如果比较器21A或21C之一指示接收温度读数超过阈值寄存器22中所存储的温度阈值,则OR门27B可以输出逻辑1。如果比较器21A或21C都不指示接收温度读数超过阈值寄存器22中所存储的温度阈值,则OR门27B可以输出逻辑0。
所示实施例中的计数器/选择器24A耦合到OR门27A的输出。相似地,计数器/选择器24B耦合到OR门27B的输出。所示实施例中的计数器/选择器中的每一个可以响应于其分别耦合的OR门的输出的转变而发起计数。此外,每个计数器/选择器也可以生成用于设置用于给定功能单元的性能级别的选择代码。虽然图2中未明确示出,但每个计数器/选择器也可以耦合为从比较器21A-21D中的每一个接收信息,以确定温度传感器11A和/或11B中的哪一个正报告超过温度阈值之一的温度。这可以进而允许热控制电路15独立于彼此而控制对应的所耦合的功能单元的各个性能级别。
在所示实施例中,计数器/选择器24A被配置为基于接收温度读数与阈值寄存器23中所存储的温度阈值的比较而操作。响应于(例如归因于一个或两个比较器指示温度读数超过阈值寄存器23中所存储的阈值的)OR门27A的输出的状态的改变,计数器/选择器24A可以发起计数。计数可以继续,直到达到预定计数值,或直到OR门27A的输出再次改变状态,无论谁首先产生。预定计数值可以与预定时间对应。因此,如果达到预定计数,则计数器/选择器24A可以改变输出代码,以产生对一个或多个功能单元的性能级别的改变。如果在OR门27A的输出再次改变状态之前没有达到预定计数,则计数器/选择器24A可以保持其当前输出代码,由此使得IC10的功能单元能够保持它们的目前性能级别。计数器/选择器24B可以关于OR门27B以相似的方式而操作。改变性能级别可以包括:(例如通过降低各个接收时钟信号的频率来)降低性能级别或(例如通过增加各个接收时钟信号的频率来)增加性能级别。性能级别降低可以响应于确定温度读数超过阈值之一而出现。性能级别增加可以响应于确定温度读数已经落入先前所超过的温度阈值之下而出现。
复用器31A和31B可以在选择输入处接收计数器/选择器24A和24B所提供的输出代码。在一个实施例中,复用器31A和31B可以独立地受控。在其它实施例中,复用器31A和31B可以彼此协同地操作。复用器31A和31B中的每一个耦合为接收除数值作为输入。时钟分频器32A可以接收复用器31A所选择的除数值,而时钟分频器32B可以接收复用器31B所选择的除数。所示实施例中的复用器31A和31B中的每一个耦合为接收三个除数输入:完全频率(即除以1)、除数1和除数2。后两个除数可以使得接收分频器32A和32B之一对其各个接收到的输入时钟信号进行分频,从而产生具有更低频率的输出时钟信号。例如,如果除数1=2,则当分频器32A接收时,Clk1输出信号将具有输入时钟信号CPU Clk1的一半的频率。
因此,该特定示例中的热控制电路15可以通过控制提供至其的时钟信号的频率来控制处理器内核和图形单元的性能级别。从完全频率切换到除数1可以将时钟信号中的所分频的时钟信号的频率降低第一量。切换到除数2可以将所分频的时钟信号的频率降低第二量。通过改变分频器32A和32B所接收的除数,可以根据接收温度读数来控制IC10的功能单元的时钟频率和对应性能级别。虽然在所示实施例中经由时钟频率来控制性能级别,但应注意,使用不同方法来控制性能级别的实施例是可能的并且预期的。例如,在各个实施例中,可以改动供电电压、工作负载、带宽以及其它参数来控制性能。此外,调整多个参数以根据接收温度读数来控制性能的实施例是可能的并且预期的。
图3A和图3B是示出基于硬件的热控制装置的一个实施例的操作中的迟滞(hysterisis)的时序图。注意,虽然如上所述,实施例对于具有多个性能级别的多个阈值是可能的并且预期的,但仅对于单个阈值和两个性能级别给出这些示例。
图3A示出响应于温度读数穿过温度阈值而改变性能级别的迟滞。图3A所示的示例开始于所接收到的温度在阈值之下。在(A)处,确定温度级别已经超过阈值。对于此后的时间T1,将性能保持在其当前级别。当T1已经过去时(例如,如例如以上参照图2所讨论的计数器/选择器所指示的那样),温度仍然大于阈值,则功能单元的性能从其正常级别下降到降低级别。
在(B)处,温度已经再次落入阈值级别之下。对于此后的时间T2,功能单元的性能级别保持在降低级别。当T2已经过去时,温度仍在阈值之下,因此功能单元的性能级别恢复为其正常级别。注意,在该特定实施例中,时间T1和T2是不同的。然而,这些值相同的实施例也是可能的。此外,在一些实施例中,这些值是可以可编程的。
在图3B中,温度再次开始于小于阈值的级别。在(C)处,温度被确定为大于阈值。计数器于是可以开始计数以敲响(toll)时间。然而,在此情况下,在时间T1已经过去之前,温度落回阈值之下。由于在T1已经过去之后不再超过阈值,因此性能级别得以保持。
通过在基于硬件的热控制机构中使用迟滞,可以实现热控制与性能之间的平衡。更具体地说,将迟滞加入到基于硬件的热控制机构的操作在允许足够的时间来确定是否期望改变性能级别的同时防止对于超过或小于阈值的短暂温度改变的性能级别改变方面可以是有用的。
图4是示出结合基于软件的热控制机构的一个实施例的基于硬件的热控制机构的一个实施例的组合操作的流程图。可以使用上述硬件和软件实施例的各种组合来执行所示实施例中的方法400,或可以使用在此未明确讨论的其它实施例来实现方法400。在此所描述的方法针对单个温度传感器。然而,如上所述,可以同时对于具有基于硬件和软件的热控制机构的任何数量的传感器执行该方法。
方法400开始于监控从IC上或系统内的温度传感器接收到的温度读数(块405)。可以同时通过基于硬件的热控制机构和基于软件的热控制机构来执行监控。基于硬件的热控制机构可以按第一长度的间隔来监控温度,而基于软件的热控制机构可以按第二长度的间隔来监控温度。基于硬件的热控制机构可以比基于软件的热控制机构更频繁地监控温度读数。
在监控来自温度传感器的温度读数期间,可以执行温度读数与第1温度阈值的比较。如果温度读数不超过第1阈值(块435,否),则对应功能单元或其它受控子系统的操作可以保持在正常(例如完全)性能级别。如果温度读数超过第1温度阈值(块410,是)但不超过第2温度阈值(块415,否),则功能单元的性能可以设置为第1降低级别(块420)。在一个实施例中,操作第1降低级别可以包括:相对于在正常操作期间的完全频率而降低时钟信号的频率。降低功能单元的性能的其它方法也是可能的并且预期的,包括改变两个或更多个操作参数的方法。
如上所述,可以通过基于硬件和软件的热控制机构两者来执行温度读数的监控。在该实施例中,基于软件的热控制机构可以忽略温度读数与第1阈值的比较,反而关注于温度读数与第2阈值的比较。该实施例中的第2阈值大于第1阈值。因此,如果比较确定温度读数大于第2阈值(块415,是),则取决于基于硬件的热控制机构还是基于软件的热控制机构利用比较信息来执行后续动作。当基于硬件的热控制机构确定温度读数超过第2阈值时(块425,HW),功能单元的性能可以设置为第2降低级别。
如果基于软件的热控制机构确定温度读数超过第2阈值(块425,SW),则至少功能单元(如果不是IC/系统自身)可以被关闭(块440)。由于基于硬件的热控制机构比基于软件的热控制机构更频繁地监控相对于温度阈值的温度读数,因此基于软件的热控制机构确定读数超过第2阈值可以指示硬件机构不能使得功能单元(或作为整体的IC/系统)的温度在控制之下。相应地,可以执行关闭,以防止损坏系统的可能性。此外,由于基于硬件的机构比基于软件的热控制机构更频繁地监控相对于温度阈值的温度读数,因此温度读数超过第2阈值的可能性降低,该结果将由基于软件的机构检测的可能性亦如此。
当在降低性能级别之一进行操作时,基于硬件的机构可以继续每块405相对于阈值而监控温度读数。当在第2降低性能级别进行操作时,检测到小于第2阈值的温度读数可以最终导致基于硬件的机构将性能级别增加回到第1降低性能级别。如果后续温度读数指示温度已经落入第1阈值之下,则基于硬件的机构可以进一步将性能级别增加回到正常性能级别。在降低和增加性能级别中,可以采用迟滞,从而不会由于并非增加或降低温度的趋势的部分的简短温度改变而降低或增加性能级别。这进而可以允许基于温度改变的总趋势来更长期的优化性能级别。
接下来参照图5,示出系统150的一个实施例的框图。在所示实施例中,系统150包括耦合到一个或多个外围154和外部存储器158的(例如实现图1的处理器10的)IC5的至少一个实例。还提供电源156,其将供电电压提供给IC10,并且将一个或多个供电电压提供给存储器158和/或外围154。在一些实施例中,可以包括多于一个的IC10的实例(并且同样可以包括多于一个的外部存储器158)。
取决于系统150的类型,外围154可以包括任何期望的电路。例如,在一个实施例中,系统150可以是移动设备(例如个人数字助理(PDA)、智能电话等),外围154可以包括用于各种类型的无线通信的设备(例如Wifi、蓝牙、蜂窝、全球定位系统等)。外围154可以还包括附加存储,包括RAM存储、固态存储或盘存储。外围154可以包括用户接口设备,例如显示屏(包括触摸显示屏或多点触摸显示屏)、键盘或其它输入设备、麦克风、扬声器等。在其它实施例中,系统150可以是任何类型的计算系统(例如台式个人计算机、膝上型设备、工作站、网本等)。
外部存储器158可以包括任何类型的存储器。例如,外部存储器158可以是SRAM、动态RAM(DRAM)(例如同步DRAM(SDRAM))、双数据率(DDR、DDR2、DDR3、LPDDR1、LPDDR2等)SDRAM、RAMBUS DRAM等。外部存储器158可以包括存储器设备安装到的一个或多个存储器模块(例如单内联存储器模块(SIMM)、双内联存储器模块(DIMM)等)。
一旦充分理解以上公开,大量变形和修改将对于本领域技术人员变得清楚。所附权利要求意图解释为包括所有这些变形和修改。

Claims (20)

1.一种热控制装置,包括:
一个或多个热传感器;
热跳变点电路,耦合到所述一个或多个热传感器,并且被配置为检测所述一个或多个热传感器的各个输出已经超过一个或多个温度阈值;
热控制电路,被配置为通过跟踪已经超过一个或多个温度阈值的时间量来响应于所述热跳变点电路指示已经超过所述一个或多个温度阈值,并且进一步被配置为响应于已经超过所述一个或多个温度阈值至少预定量时间的初始指示来执行所述装置中的一个或多个受控子系统的性能级别的初始降低,并且进一步被配置为在超过所述一个或多个温度阈值小于所述预定量时间的情况下禁止执行所述性能级别的初始降低。
2.如权利要求1所述的热控制装置,其中,所述热控制电路被配置为通过降低提供给所述一个或多个受控子系统的时钟信号的频率来执行所述装置中的所述一个或多个受控子系统的性能的初始降低。
3.如权利要求1所述的热控制装置,其中,所述热控制电路被配置为通过降低提供给所述一个或多个受控子系统的供电电压来执行所述装置中的所述一个或多个受控子系统的性能的初始降低。
4.如权利要求1所述的热控制装置,其中,所述热控制电路被配置为:在所述热跳变点电路指示已经超过一个或多个温度阈值之后的预定时间,响应于热跳变点电路指示已经超过一个或多个温度阈值。
5.如权利要求1所述的热控制装置,其中,所述热控制电路被配置为:在所述热跳变点电路指示所述一个或多个热传感器的输出不再超过所述温度阈值中的一个或多个之后的预定时间,不继续所述一个或多个受控子系统的性能降低。
6.一种热控制方法,包括:
使用热跳变点电路来确定从一个或多个热传感器接收的各个输出是否已经超过一个或多个热阈值;
响应于所述热跳变点电路提供已经超过一个或多个热阈值至少预定量时间的初始指示而执行集成电路的一个或多个受控子系统的性能级别的初始降低,其中,由热控制电路执行所述降低;以及
在超过所述一个或多个热阈值小于所述预定量时间的情况下对于所述一个或多个受控子系统继续以当前性能级别进行操作。
7.如权利要求6所述的热控制方法,其中,执行所述性能级别的初始降低包括:所述热控制电路降低提供给所述一个或多个受控子系统中的至少一个的时钟信号的频率。
8.如权利要求6所述的热控制方法,还包括:响应于确定已经超过所述一个或多个热阈值至少持续第一预定时间,所述热控制电路执行所述受控子系统中的至少一个的性能级别的第二降低。
9.如权利要求8所述的热控制方法,还包括:在降低所述受控子系统中的至少一个的性能级别之后,响应于确定来自所述热传感器中的至少一个的输出小于所述热阈值中的至少一个至少持续第二预定时间而增加所述受控子系统中的至少一个的性能。
10.如权利要求6所述的热控制方法,还包括:
处理电路执行被配置为监控从一个或多个热传感器接收的各个输出是否已经超过所述一个或多个热阈值的软件热控制程序的指令,其中,所述软件热控制程序监控来自所述一个或多个热传感器的输出的间隔比所述热跳变点电路监控来自所述一个或多个热传感器的输出的间隔更不频繁;以及
响应于所述软件热控制程序确定已经超过所述一个或多个热阈值之一而关闭所述受控子系统中的至少一个。
11.一种集成电路,包括:
多个功能单元,包括至少一个处理器内核;
多个温度传感器,分别与所述多个功能单元中的各个功能单元关联;
比较器电路,被配置为:确定从所述温度传感器的任何一个接收到的温度读数是否超过一个或多个温度阈值中的至少一个,所述一个或多个温度阈值包括第一温度阈值和第二温度阈值;
控制电路,被配置为:响应于所述比较器电路初始确定对应的温度读数超过所述温度阈值中的至少一个至少预定量时间而引起提供给所述多个功能单元中的一个或多个的时钟频率的初始降低,其中所述控制电路进一步被配置为在逝去所述预定量时间之前所述温度读数降到第一温度阈值以下的情况下禁止执行提供给所述多个功能单元中的所述一个或多个的时钟频率的初始降低;
其中,所述至少一个处理器内核被配置为:执行温度控制例程的指令,其中,所述温度控制例程包括当由所述至少一个处理器内核执行时监控来自所述多个温度传感器的温度读数并且响应于确定所监控的温度读数超过所述温度阈值中的至少一个而关闭所述多个功能单元中的至少一个的指令。
12.如权利要求11所述的集成电路,其中,所述处理器内核被配置为:执行所述温度控制例程的指令以利用第一周期对所监控的温度读数与所述一个或多个温度传感器进行比较,并且其中,所述比较器电路被配置为:利用小于所述第一周期的第二周期对来自所述多个温度传感器的温度读数与所述一个或多个温度阈值进行比较。
13.如权利要求11所述的集成电路,其中,所述控制电路被配置为:响应于确定来自所述多个温度传感器的至少一个温度读数超过第一温度阈值而将所述时钟频率降低第一量,并且还被配置为:响应于确定来自所述多个温度传感器的至少一个温度读数超过第二温度阈值而将所述时钟频率降低第二量,其中,所述第二温度阈值大于所述第一温度阈值。
14.如权利要求13所述的集成电路,其中,所述温度控制例程包括当由所述处理器执行时响应于确定对应温度读数超过所述第二温度阈值而关闭所述多个功能单元中的至少一个的指令。
15.如权利要求13所述的集成电路,其中,所述控制电路被配置为:在所述比较器电路确定来自所述第一温度传感器和所述第二温度传感器的温度读数已经小于所述第一温度阈值持续第二持续期之后,增加所述时钟频率。
16.一种热控制方法,包括:
于在集成电路上所实现的处理器上执行软件温度控制例程的指令,其中,所述执行包括:以第一持续期的间隔从至少一个热传感器获取温度读数;
温度比较电路,以第二持续期的间隔从所述至少一个热传感器获取温度读数,其中,所述第二持续期小于所述第一持续期;
温度控制电路,响应于所述温度比较电路初始获取超过一个或多个温度阈值之一的温度读数并且确定所述温度读数持续超过所述一个或多个温度阈值至少预定时间,而执行所述集成电路的一个或多个功能单元的性能测度的初始降低,并且在逝去所述预定时间之前所述温度读数停止超过所述一个或多个温度阈值中的任何一个的情况下禁止执行性能的所述初始降低;以及
所述处理器执行所述软件温度控制例程的指令以响应于获取超过一个或多个温度阈值之一的温度读数而关闭所述一个或多个功能单元中的至少一个。
17.如权利要求16所述的热控制方法,还包括:
所述处理器执行所述指令,以响应于所述温度读数超过第一温度阈值而关闭所述一个或多个功能单元中的至少一个;
所述温度控制电路响应于所述温度比较电路获取超过第二温度阈值的温度读数而降低所述集成电路的一个或多个功能单元的性能测度,其中,所述第二温度阈值小于所述第一温度阈值。
18.如权利要求17所述的热控制方法,还包括:温度控制电路响应于所述温度比较电路获取超过所述第二温度阈值的温度读数而将提供给所述一个或多个功能单元的时钟信号的频率降低第一量。
19.如权利要求18所述的热控制方法,还包括:温度控制电路响应于所述温度比较电路获取超过所述第一温度阈值的温度读数而将所述时钟信号的频率降低第二量。
20.如权利要求16所述的热控制方法,还包括:
所述温度控制电路响应于所述温度比较电路获取超过一个或多个温度阈值之一的温度读数持续第一预定时间而降低所述集成电路的一个或多个功能单元的性能测度;以及
所述温度控制电路响应于所述温度比较电路获取小于一个或多个温度阈值之一的温度读数持续第二预定时间而增加所述集成电路的一个或多个功能单元的性能测度。
CN201310245720.XA 2012-06-21 2013-06-20 热控制装置和方法 Active CN103514011B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/529,202 US9383789B2 (en) 2012-06-21 2012-06-21 Thermal control apparatus and methodology
US13/529,202 2012-06-21

Publications (2)

Publication Number Publication Date
CN103514011A CN103514011A (zh) 2014-01-15
CN103514011B true CN103514011B (zh) 2016-12-28

Family

ID=48628311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310245720.XA Active CN103514011B (zh) 2012-06-21 2013-06-20 热控制装置和方法

Country Status (8)

Country Link
US (1) US9383789B2 (zh)
EP (1) EP2685632B1 (zh)
JP (1) JP5638110B2 (zh)
KR (1) KR101526051B1 (zh)
CN (1) CN103514011B (zh)
BR (1) BR102013015444B1 (zh)
TW (1) TWI594115B (zh)
WO (1) WO2013191816A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063727B2 (en) * 2012-08-31 2015-06-23 Intel Corporation Performing cross-domain thermal control in a processor
KR20140062766A (ko) * 2012-11-15 2014-05-26 삼성전자주식회사 모바일 장치 및 모바일 장치의 반도체 집적 회로의 데이터 통신 방법
US9785209B2 (en) * 2015-03-31 2017-10-10 Qualcomm Incorporated Thermal management in a computing device based on workload detection
US10237918B2 (en) 2015-07-15 2019-03-19 Adrian M. ADAMSON Apparatus for temperature measurement and control using two wires per thermal zone and methods of use
WO2017141277A1 (en) * 2016-02-15 2017-08-24 Politecnico Di Milano Electronic device to control temperature and computing performance of at least one processing unit and system and method thereof
CN106055237B (zh) * 2016-05-31 2017-11-17 广东欧珀移动通信有限公司 一种滑动加速响应方法、及设备
US10216249B2 (en) * 2016-09-27 2019-02-26 Cisco Technology, Inc. Electrical power control and fault protection
US9753773B1 (en) 2016-10-19 2017-09-05 International Business Machines Corporation Performance-based multi-mode task dispatching in a multi-processor core system for extreme temperature avoidance
US9747139B1 (en) * 2016-10-19 2017-08-29 International Business Machines Corporation Performance-based multi-mode task dispatching in a multi-processor core system for high temperature avoidance
US11016545B2 (en) * 2017-03-29 2021-05-25 Western Digital Technologies, Inc. Thermal throttling for memory devices
CN107395148B (zh) * 2017-07-31 2020-06-09 中国电子科技集团公司第二十九研究所 一种tr组件的温补均衡电路
EP3547076A1 (en) * 2018-03-28 2019-10-02 Advanced Digital Broadcast S.A. System and method for adjusting performance of components of a multi-component system
US10928870B2 (en) * 2018-05-29 2021-02-23 Marvell Asia Pte, Ltd. Apparatus and methods for temperature-based memory management
US11545418B2 (en) * 2018-10-24 2023-01-03 Texas Instruments Incorporated Thermal capacity control for relative temperature-based thermal shutdown
CN109739279A (zh) * 2018-12-26 2019-05-10 深圳云天励飞技术有限公司 温度控制方法、装置、电子设备及存储介质
CN112034902B (zh) * 2019-06-03 2024-03-19 阿里巴巴集团控股有限公司 调整芯片性能的方法及装置
US11231731B2 (en) * 2019-06-28 2022-01-25 Intel Corporation System, apparatus and method for sensor-driven and heuristic-based minimum energy point tracking in a processor
US11347198B2 (en) 2020-09-04 2022-05-31 Apple Inc. Adaptive thermal control system
CN112650128A (zh) * 2020-12-29 2021-04-13 无锡众星微系统技术有限公司 芯片过热自动保护方法和装置
CN114489235A (zh) * 2022-01-18 2022-05-13 上海天数智芯半导体有限公司 一种用于异常温度处理的芯片频率动态调节方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622046A (zh) * 2003-11-24 2005-06-01 顺德市顺达电脑厂有限公司 计算机系统之中央处理器散热控制方法
CN1934701A (zh) * 2004-03-19 2007-03-21 索尼计算机娱乐公司 电路的发热控制方法、装置和系统
CN101256432A (zh) * 2007-02-27 2008-09-03 鸿富锦精密工业(深圳)有限公司 散热模组
CN101482757A (zh) * 2008-01-07 2009-07-15 联想(北京)有限公司 一种温度控制的方法、系统及硬件装置
CN102014201A (zh) * 2010-09-29 2011-04-13 中兴通讯股份有限公司 一种数据卡温度控制方法及装置

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5451892A (en) 1994-10-03 1995-09-19 Advanced Micro Devices Clock control technique and system for a microprocessor including a thermal sensor
DE19531706A1 (de) 1995-08-28 1997-03-06 Helmut Roppelt Verfahren und Vorrichtung zur Steuerung eines Rechners, insbesondere eines IBM-kompatiblen Personal Computers
US5940786A (en) 1996-11-22 1999-08-17 Eaton Corporation Temperature regulated clock rate for microprocessors
US6789037B2 (en) 1999-03-30 2004-09-07 Intel Corporation Methods and apparatus for thermal management of an integrated circuit die
US6442700B1 (en) 1999-08-10 2002-08-27 Intel Corporation Thermal control within systems having multiple CPU performance states
KR20040008948A (ko) 2002-07-19 2004-01-31 박상래 블랙박스 기능을 포함하는 자동차용 dvr
US7657772B2 (en) 2003-02-13 2010-02-02 International Business Machines Corporation Thermally aware integrated circuit
US6974252B2 (en) 2003-03-11 2005-12-13 Intel Corporation Failsafe mechanism for preventing an integrated circuit from overheating
US8237386B2 (en) 2003-08-15 2012-08-07 Apple Inc. Methods and apparatuses for operating a data processing system
US7451332B2 (en) 2003-08-15 2008-11-11 Apple Inc. Methods and apparatuses for controlling the temperature of a data processing system
KR20050080822A (ko) 2004-02-11 2005-08-18 이삼주 컴퓨터용 수냉식 냉각 장치 및 그것의 냉각 제어 방법
JP4343007B2 (ja) 2004-04-01 2009-10-14 株式会社東芝 情報処理装置
US7386737B2 (en) * 2004-11-02 2008-06-10 Intel Corporation Method and apparatus to control temperature of processor
US7149645B2 (en) 2004-12-30 2006-12-12 Intel Corporation Method and apparatus for accurate on-die temperature measurement
US7878016B2 (en) * 2004-12-30 2011-02-01 Intel Corporation Device and method for on-die temperature measurement
US7454640B1 (en) 2005-08-18 2008-11-18 National Semiconductor Corporation System and method for providing a thermal shutdown circuit with temperature warning flags
JP2007109085A (ja) 2005-10-14 2007-04-26 Sony Computer Entertainment Inc 発熱制御方法、装置およびシステム
US7376532B2 (en) * 2005-11-29 2008-05-20 International Business Machines Corporation Maximal temperature logging
US7565258B2 (en) 2006-03-06 2009-07-21 Intel Corporation Thermal sensor and method
JP2008026948A (ja) 2006-07-18 2008-02-07 Renesas Technology Corp 半導体集積回路
US20100073068A1 (en) * 2008-09-22 2010-03-25 Hanwoo Cho Functional block level thermal control
US8306772B2 (en) 2008-10-13 2012-11-06 Apple Inc. Method for estimating temperature at a critical point
US8254200B2 (en) 2009-09-11 2012-08-28 Sherif Eid System and method to compensate for process and environmental variations in semiconductor devices
CN201656433U (zh) 2010-02-05 2010-11-24 国基电子(上海)有限公司 过热保护电路及使用其的电子设备
US8768530B2 (en) 2010-06-04 2014-07-01 Apple Inc. Thermal zone monitoring in an electronic device
US8452463B2 (en) 2010-06-04 2013-05-28 Apple Inc. Adjusting the thermal behavior of a computing system using indirect information about ambient temperature
US8793512B2 (en) 2010-10-29 2014-07-29 Advanced Micro Devices, Inc. Method and apparatus for thermal control of processing nodes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622046A (zh) * 2003-11-24 2005-06-01 顺德市顺达电脑厂有限公司 计算机系统之中央处理器散热控制方法
CN1934701A (zh) * 2004-03-19 2007-03-21 索尼计算机娱乐公司 电路的发热控制方法、装置和系统
CN101256432A (zh) * 2007-02-27 2008-09-03 鸿富锦精密工业(深圳)有限公司 散热模组
CN101482757A (zh) * 2008-01-07 2009-07-15 联想(北京)有限公司 一种温度控制的方法、系统及硬件装置
CN102014201A (zh) * 2010-09-29 2011-04-13 中兴通讯股份有限公司 一种数据卡温度控制方法及装置

Also Published As

Publication number Publication date
BR102013015444A2 (pt) 2015-06-23
CN103514011A (zh) 2014-01-15
JP5638110B2 (ja) 2014-12-10
US9383789B2 (en) 2016-07-05
BR102013015444B1 (pt) 2020-12-08
EP2685632A3 (en) 2014-05-21
US20130345892A1 (en) 2013-12-26
KR101526051B1 (ko) 2015-06-04
WO2013191816A1 (en) 2013-12-27
JP2014006905A (ja) 2014-01-16
TW201407346A (zh) 2014-02-16
EP2685632B1 (en) 2016-08-03
TWI594115B (zh) 2017-08-01
KR20130143529A (ko) 2013-12-31
EP2685632A2 (en) 2014-01-15

Similar Documents

Publication Publication Date Title
CN103514011B (zh) 热控制装置和方法
KR102194768B1 (ko) 반도체 메모리 장치 및 반도체 메모리 시스템
US9658634B2 (en) Under voltage detection and performance throttling
JP5997029B2 (ja) 機能ブロックを含むSoCのクロック制御方法、それを具現したSoC、及びそれを含む半導体システム
US9318182B2 (en) Apparatus, method and system to determine memory access command timing based on error detection
US8762656B2 (en) Temperature alert and low rate refresh for a non-volatile memory
US9076499B2 (en) Refresh rate performance based on in-system weak bit detection
CN107646106B (zh) 具有每个活动加权和多个节流下降阈值的功率管理电路
NL2029034B1 (en) Adaptive internal memory error scrubbing and error handling
EP3262508B1 (en) Patrol scrub periods based on power status
CN109219806B (zh) 低功率存储器节流
US20140189433A1 (en) Memory subsystem performance based on in-system weak bit detection
US8937511B2 (en) Frequency scaling of variable speed systems for fast response and power reduction
WO2018038805A1 (en) Low power data transfer for memory subsystem
US8884683B1 (en) Semiconductor integrated circuit and operating method of semiconductor integrated circuit
US11474746B2 (en) Refresh management for DRAM
US20240112722A1 (en) Directed refresh management for dram
CN114402271B (zh) 用于将电池与堆叠式集成电路管芯元件集成的系统和方法
JP2022128621A (ja) データ制御装置、データ制御方法、データ制御システム、およびデータ制御プログラム

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