CN102077271A - 图形处理单元的热管理 - Google Patents

图形处理单元的热管理 Download PDF

Info

Publication number
CN102077271A
CN102077271A CN200980125004XA CN200980125004A CN102077271A CN 102077271 A CN102077271 A CN 102077271A CN 200980125004X A CN200980125004X A CN 200980125004XA CN 200980125004 A CN200980125004 A CN 200980125004A CN 102077271 A CN102077271 A CN 102077271A
Authority
CN
China
Prior art keywords
clock signal
original clock
signal
gpu
processing engine
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.)
Granted
Application number
CN200980125004XA
Other languages
English (en)
Other versions
CN102077271B (zh
Inventor
I·亨德利
A·G·萨姆皮特
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 CN102077271A publication Critical patent/CN102077271A/zh
Application granted granted Critical
Publication of CN102077271B publication Critical patent/CN102077271B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/18Timing circuits for raster scan displays
    • 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/08Clock generators with changeable or programmable 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/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1431Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using a single graphics controller
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Power Sources (AREA)
  • Multi Processors (AREA)

Abstract

某些实施例包括具有热管理能力的图形处理。该图形处理单元包括显示控制器,耦连到显示控制器的微处理引擎;和耦连到显示控制器和微处理引擎的时钟电路。该时钟电路可以进一步包括耦连到显示控制器的原始时钟信号,耦连到原始时钟信号的分频器,和耦连到分频器的多路复用器。分频器可以生成原始时钟信号的分频版本,该分频版本可被与原始时钟信号一起耦连到多路复用器。多路复用器可以向微处理引擎选择性地提供原始时钟信号和/或该时钟信号的分频版本,从而微处理引擎可以接收独立于图形处理单元的工作的定时信号,并且导致更少的假信号。

Description

图形处理单元的热管理
相关申请的交叉引用
本申请根据35U.S.C.§119(e)要求提交于2008年5月15日的题目为“Thermal Management of Graphics Processing Units”的美国临时专利申请No.61/053,519,以及提交于2008年9月18日的题目为“Thermal Management of Graphics Processing Units”的美国非临时专利申请No.12/212,805的优先权,通过引用将其完整结合在此。
技术领域
本发明一般地涉及电子设备的热管理,并且更具体地涉及提供图形处理单元的热管理。
背景技术
电子设备普遍存在于社会中,并且可见于从腕表到计算机的任意物品。这些电子设备的复杂度和精巧性通常随着每代增加,结果,较新的电子设备通常比其先辈消耗更多的功率量。随着功耗的增加,电子设备内的电路可能生成更大程度的热量,这对于电路的工作可能是有害的。
现代电子设备的趋势是使得每一代更小巧,这加剧了这个问题。结果,来自相继各代电子设备的每单位体积的温度可能上升到对用户或设备本身有潜在危险的水平。出于这个原因,可以给微处理器和其它电路配备散热器和/或风扇,以便将热量传出芯片并将微处理器保持在安全操作范围内。还可以实施附加的热管理技术,诸如选择性地关闭电子设备的特别耗电的元件。
除了具有增加的功耗之外,许多现代设备还具有比其先辈更强大的图形能力。个人计算机尤其如此,用户可能为每个计算机使用多个监视器,每个监视器可能能够呈现复杂的计算机图形图像。然而,许多现代计算机的热管理技术可能阻碍计算机系统提供复杂图形能力的能力。例如,当微处理器进入低功率模式时,由于处理器未在执行指令,可能呈现一个或多个屏幕假信号(glitch)。在具有多个显示器的计算机系统和/或正在播放电影的计算机系统中尤其如此。
因此,需要向计算机系统提供防止屏幕假信号的热管理。
发明内容
某些实施例包括具有热管理能力的图形处理单元(GPU)。该GPU可以包括显示控制器,耦连到显示控制器的微处理引擎,和耦连到显示控制器和微处理引擎的时钟电路。该时钟电路还可以包括:耦连到显示控制器的原始时钟信号;耦连到原始时钟信号的分频器;和耦连到分频器的多路复用器。该分频器可以生成原始时钟信号的分频版本,该分频版本可与原始时钟信号一起耦连到多路复用器。多路复用器可以选择性地向微处理引擎提供原始时钟信号或该时钟信号的分频版本,从而微处理引擎可以接收独立于GPU的操作的定时信号,并且导致更少的假信号。
其它实施例可以包括控制GPU的方法,该方法包括如下动作:向显示控制器提供原始时钟信号;生成原始时钟信号的分频版本;和向微处理引擎提供选择性地包括原始时钟信号或原始时钟信号的分频版本的定时信号。以这种方式,微处理引擎可以以减小的速率执行操作,而显示控制器以基本上相同的执行速率操作。
其它实施例可以包括具有热管理能力的计算机系统。该计算机系统可以包括中央处理单元(CPU);耦连到CPU的GPU;耦连到GPU的一个或多个显示器;和耦连到GPU的调节器(regulator)。该GPU可以包括:显示控制器;耦连到显示控制器的微处理引擎;和耦连到显示控制器和微处理引擎的时钟电路。该时钟电路还可以包括:耦连到显示控制器的原始时钟信号;耦连到原始时钟信号的分频器;和耦连到分频器的多路复用器。分频器可以生成原始时钟信号的分频版本,该分频版本与原始时钟信号一起耦连到多路复用器。多路复用器可以向微处理引擎选择性地提供原始时钟信号或该时钟信号的分频版本,从而微处理引擎可以接收独立于GPU的操作的定时信号,并且导致在一个或多个显示器上更少的假信号。
附图说明
图1示出了示例的计算机系统;
图2示出了实施热管理的示例GPU;
图3A示出了示例的脉冲宽度调制信号;
图3B示出了可以由图3A的脉冲宽度调制信号引起的示例时钟;
图3C示出了可以由图3A的脉冲宽度调制信号引起的另一个示例时钟。
在不同附图中使用的相同参考标号表示类似或相同的项。
具体实施方式
下面的讨论描述了在防止屏幕假信号的同时,向图形处理单元提供热管理的各种实施例。虽然可能详细描述了这些实施例中的一个或多个,但是公开的实施例不应当被解释为或用于限制本公开的范围,包括权利要求的范围。另外,本领域的技术人员将会理解,下面的描述具有广泛的应用。因此,对任意实施例的讨论仅仅意图示例,而不旨在表示包括权利要求在内的本公开的范围被局限于这些实施例。
某些实施例包括具有热管理能力的图形处理单元(GPU)。该GPU可以包括显示控制器,耦连到显示控制器的微处理引擎,和耦连到显示控制器和微处理引擎的时钟电路。该时钟电路还可以包括:耦连到显示控制器的原始时钟信号;耦连到原始时钟信号的分频器;和耦连到分频器的多路复用器。分频器生成原始时钟信号的分频版本,该分频版本可与原始时钟信号一起耦连到多路复用器。多路复用器可以向微处理引擎选择性地提供原始时钟信号或该时钟信号的分频版本,从而微处理引擎可以接收独立于GPU的操作的定时信号,并且导致更少的假信号。
图1示出了可以在一个实施例中实施的示例计算机系统100。在探究图1的细节之前,应当注意在图1中列出并且在下面提及的组件仅是一种可能的实现的例子。可以在其它实现中使用其它组件、总线和/或协议,而不脱离该详细描述的精神和范围。
现在参考图1,计算机系统100包括中央处理单元(CPU)102,CPU 102可通过CPU总线电耦连到桥逻辑器件106。桥逻辑器件106有时根据其相对于其它系统组件(诸如南桥119)的位置而被称为“北桥”。北桥106可以通过存储器总线电耦连到主存储器阵列104,并且还可以通过高级图形端口(AGP)总线电耦连到GPU 108。一般地,AGP总线是给计算机系统100的主板附加图形功能的工业标准方法。北桥106还可以通过例如主扩展总线(BUS A),诸如PCI总线或EISA总线,将CPU 102、存储器104和GPU 108耦连到该系统中的其它外设。
使用BUS A的总线协议操作的各种组件可以存在于该总线上,诸如音频设备110、IEEE1394接口设备112和网络接口卡(NIC)114。这些组件可被集成到PCB上,或它们可被插入连接到BUS A的扩展槽118中。如果计算机系统100中提供了别的次扩展总线,可以使用另一个桥逻辑器件119将主扩展总线BUS A电耦连到次扩展总线(未示出)。如上所述,由于其相对于其它系统组件的位置,桥逻辑器件119有时被称为“南桥”。
在某些实施例中,图1所示的两个或更多个组件可被实现为单个组件。例如,在某些实施例中,GPU可与北桥106或计算机系统100的任何其它组件集成在一起。
计算机系统100可以通过GPU 108耦连到一个或多个显示单元120。以这种方式,计算机系统100可以支持向一个或多个显示单元120呈现计算机生成的图形图像。在某些实施例中,诸如在膝上型计算机系统的情况下,所述一个或多个显示单元120中的至少一个显示单元可以集成到计算机系统100中。
如虚线指示的,计算机系统100可包含在机壳122内。另外,机壳122可能具有有限的热容量或预算。例如,在某些实施例中,机壳122的热预算可以是32瓦。如前面所述,许多电子设备,诸如计算机系统100,被制造为位于越来越小的机壳122内,从而设备的热预算可能随着相继的产品代而减小。
通过实施一个或多个功率调节电路124或方案,计算机系统100可以确保其不会超出其热预算。一个或多个功率调节电路124可以采取温度监视设备的形式。在某些实施例中,功率调节电路124的温度监视设备可以是一个或多个基于硅的二极管(未示出),其可以具有近似-2mV/℃的温度系数。随着温度上升,这些二极管上的电压可能下降。类似地,随着温度下降,这些二极管上的电压可能上升。功率调节电路124可以监视这种变化的电压,以便确定功率调节电路124和/或计算机系统100的工作温度。
特别地,这些系统中的GPU可以具有很宽的工作功率变化,并且可能是计算机系统100内功耗最大的组件之一。例如,CPU 102可能消耗30瓦的最大功率量,而GPU 108可能消耗范围从5到18瓦的第二大功率量。在这个相同例子中,存储器104可能消耗近似3到4瓦的功率,而北桥106可能消耗2到4瓦的功率。
由于GPU 108可能是计算机系统100中功耗最大的组件之一,常规的计算机系统通常试图对GPU 108执行热管理功能。不幸的是,在常规计算机系统上实施的热管理功能通常导致显示在一个或多个显示器120中至少一个显示器上的图像中的假信号。这些假信号可能是由于常规热管理电路通常仅具有用于控制计算机系统100内任意特定组件生成的热量的少数选项。例如,一个这种热管理选项是降低CPU 102的速度以使它仅消耗最少的功率量。这可以通过降低CPU的工作速度来实现,然而,由于可能不具有可用的足够处理能力来以及时的方式传递图像以便显示运动图形,这种行为通常在正由CPU呈现的图像中引入假信号。这些假信号可能影响基于运动的图形项的运行,诸如在计算机系统100上播放影片。
根据至少某些实施例,功率调节电路124可以在计算机系统100上实施热管理功能,而不引起在一个或多个显示器120上显示的图像中的假信号。图2示出了具有这种热管理方案的GPU 108。参考图2,GPU108可以通过AGP总线接收数据,以及处理并且在一个或多个显示器120上显示该数据。另外,如图所示,GPU 108可以从功率调节电路124接收GPU ENABLE信号(下面参考图3A更详细描述)。
存储器202可耦连到GPU 108。在某些实施例中,存储器202可以与计算机系统100中的存储器104相同。在其它实施例中,存储器202可以是专用视频存储器,诸如与存储器104相分离的视频随机访问存储器(VRAM)。在工作期间,存储器202可以存储由GPU 108操作的数据。
如图2所示,GPU 108可以包括显示控制器204、微处理引擎206和时钟电路208。通过将图片格式数据转传递到一个或多个显示器120,显示控制器204可以在一个或多个显示器120上呈现图像。在某些实施例中,用于在显示控制器204和一个或多个显示器120之间传递视频数据的格式是数字视频接口(DVI)标准。在其它实施例中,该格式是视频图像阵列(VGA)标准。包括DVI和/或VGA的实施例仅是例子,实际上,在替换实施例中可以使用其它标准和/或视频标准。微处理引擎206可以耦连到显示控制器204,并且可以提供原始图像数据,显示控制器204然后将原始图像数据格式化为可被一个或多个显示器120显示的数据。
操作系统(OS)驱动程序209可以耦连到GPU 108,并且指挥应用在GPU 108上的执行。在计算机系统100上实现的实际OS驱动程序209可以是各种各样的。在某些实施例中,OS驱动程序209可以是来自苹果公司的Mac OS驱动程序。在其它实施例中,该OS驱动程序可以是来自微软公司的基于Windows的驱动程序。另外,应当理解,OS驱动程序209可以是来自任意适合的OS的任意适合的OS驱动程序。
关于GPU 108的功耗,显示控制器204可以消耗相对恒定的功率量,而微处理引擎206可以具有随着正被执行的特定应用而变化的功耗。以这种方式,当OS驱动程序209指示微处理引擎206执行图形密集应用时,微处理引擎206可能消耗GPU 108的大部分功率。例如,显示控制器204可以占用4瓦的相对恒定的功耗,而微处理引擎206可能占用1到18瓦的可变功耗。因此如果机壳122的热预算是18瓦,并且显示控制器204和微处理引擎206正在消耗最大的功率量,则机壳的热预算可能超出近似22%。这仅是为什么可能希望实施GPU 108的热管理的一个例子。另外,实施GPU 108的热管理可以使得整个计算机系统100更有能量效率。
组件(例如GPU 108)的可能变化的功耗可能给具有较小机壳的消费电子设备尤其带来挑战。由于许多计算机系统的微型化,机壳122(图1所示)可能具有比较大机壳更小的热预算。结果,较小的电子设备通常在所消耗功率和/或所生成热量的可变量方面具有更小的超额裕度。例如,如果计算机系统100是台式计算机,其机壳122可能具有比类似配置(例如,类似处理器速度、存储器容量等)的膝上计算机更大的热预算,并且膝上计算机可能不能承受由于变化的功耗引起的功率超额。由于这些电子设备可能具有较小的热预算以及功耗方面较小的超额裕度,可能希望控制可能引起这种超额的可变功耗。
可以部分地通过时钟电路208提供对可变功耗的控制。时钟电路208可以包括耦连到振荡电路212的晶体210。虽然晶体210被示出为耦连在GPU 108的两个端子之间,其它实施例可以采用单端子布置中的晶体210,其中晶体210耦连在GPU 108的单个端子和地之间。振荡电路212可以是任意的类型,并且还可以包括时钟树和/或频率调制电路,诸如锁相环(PLL)。
从振荡电路212得到的信号可以是可耦连到显示控制器204的原始(RAW)时钟信号。原始时钟信号还可耦连到分频器214,在分频器214处,该原始时钟信号被一个除数修改,然后被提供给多路复用器216。原始时钟信号可以是来自晶体振荡器的频率合成信号。例如,在某些实施例中,原始时钟信号可以来自PLL,PLL合成来自晶体振荡器的相对频率稳定的时钟信号。其它实施例可以采用延迟锁定环(DLL)以实现相同功能。原始时钟频率范围的例子包括从大约100MHz到大约1GHz。
分频器214可以提供具有比原始时钟信号更低频率的原始时钟信号的下分频版本。在某些实施例中,分频器214的分频值可以包括2到32。在其它实施例中,可以设置分频值以使得分频器的定时信号可以具有非常低的频率,并且在某些情况下,可以接近零。因此如果分频器214是能够将值设置在从2到256的范围的3位分频器,则分频器214可被配置为具有256的分频值,从而生成非常低的频率(在下面的图3E中以308示出)。
在某些实施例中,微处理引擎206消耗的功率与来自分频器214的频率近似成比例,并且因此,可以通过控制分频器214的分频值来控制微处理引擎206消耗的功率。因此,在来自分频器214的定时信号的频率基本上为零的实施例中,微处理引擎206消耗的功率可以比定时信号不是基本上为零时要低。
在工作过程中,多路复用器216可以在来自振荡电路212的原始时钟和来自分频器214的该原始时钟的下分频版本之间进行选择。多路复用器216可以基于来自功率调节电路124的GPU_ENABLE信号进行这种选择。GPU_ENABLE信号可用于控制多路复用器在来自振荡电路212的原始时钟和来自分频器214的该原始时钟的下分频版本之间的选择,其中可以基于GPU_ENABLE信号的脉冲宽度来改变其中任一信号可被选择的时间段(如下面在图3A的情形中描述的)。作为在原始时钟或该原始时钟的下分频版本之间选择性地挑选的结果,提供给微处理引擎206的时钟信号在时间上可以是两种时钟速率的工作周期加权平均(duty-cycle weighted-average)。在某些实施例中,多路复用器216对多于两种信号进行平均。
通过选择性地应用原始时钟和其下分频版本,从多路复用器216提供给微处理引擎206的总时钟信号可以被配置为使得可以积极主动地(proactively)控制微处理引擎206的执行速度。即,可以触发微处理引擎206内的逻辑块(未示出)以根据来自多路复用器216的信号中的转变(transition)而操作(术语“转变”可用于指信号从高到低的运动和/或信号从低到高的运动)。这些逻辑块消耗一定的功率量,并且随着每次转变生成一定的热量。由于原始时钟或该原始时钟的下分频版本的平均可能包含较少的转变,因此GPU 108生成的热量可以减少。
在某些实施例中,GPU_ENABLE信号可以是图3A所示的脉冲宽度调制(PWM)信号的形式。如图所示,PWM信号可以是具有如图3A的双端箭头所示的变化的脉冲宽度的信号。这些变化的脉冲宽度可以导致GPU_ENABLE的一个或多个不同周期,诸如图3A所示的周期A和/或周期B。在某些实施例中,PWM信号的宽度可以基于功率调节电路124内的预定算法而变化。在其它实施例中,PWM信号的宽度可以基于来自OS驱动程序209的输入而变化。其它实施例可以采用具有模拟电平或寄存器设置形式的GPU_ENABLE信号。
当GPU_ENABLE信号为低时,多路复用器216可以选择性地将来自分频器214的原始时钟的下分频版本耦连到微处理引擎206。类似地,当GPU_ENABLE信号为高时,多路复用器216可以选择性地将来自振荡电路212的原始时钟耦连到微处理引擎206。图3B示出了示例性的所得到的提供给微处理引擎206的时钟信号302。由于GPU_ENABLE的脉冲宽度在周期B中比在周期A中宽,所以时钟信号302中可能发生更多数目的转变。在这个例子中,周期A被示出为包括总共12个转变,其中8个来自原始时钟,4个来自分频器214。另一方面,周期B被示出为包含总共18个转变,其中12个来自原始时钟,6个来自分频器214。结果,时钟信号302在周期B期间比在周期A期间具有更高的平均频率,并且GPU 108可能在周期B期间比在周期A期间工作于更高的温度。
可以用其它方式修改提供给GPU 108的时钟信号。在某些实施例中,发生在由多路复用器216提供的信号中的转变的平均数目可保持相对恒定,并且GPU_ENABLE信号的脉冲宽度可保持相对恒定,而这些转变的整体分布可以改变。图3C表示具有这些特性的示例信号304。
参考图3C,可以理解,通过改变原始时钟的频率(例如,通过调整PLL输出),以及改变来自分频器214的信号的频率(例如,通过调整分频值),可以获得不同的转变分布。比较信号302和304,它们在周期A和周期B期间分别具有相同数目的转变,并且因此GPU 108可以在周期A和周期B期间分别执行近似相同数目的操作。虽然信号302和304的任意给定周期期间的转变总数可能是相同的,但是转变的分布可以改变。即,在周期A期间,信号304可以包含较多的来自原始时钟的转变以及较少的来自分频器214的转变。结果,与如果将信号302提供给GPU 108相比,当将信号304提供给GPU 108时,GPU 108可以在周期A的原始时钟部分中执行更多指令。类似地,在周期B期间,虽然在两个信号302和304中发生了相同数目的转变,但是在信号304的原始时钟部分期间发生了比信号302更多的转变。因此,即使GPU 108可能执行相同数目的操作,对于信号302和304,同样时间内GPU 108生成的热量也可能不同。如果GPU 108的封装改变(例如,由于在制造过程中的某个后来时间的成本决策),并且导致GPU 108散热的能力改变,则可能希望具有上述特征。
在某些实施例中,还可以通过延长提供给微处理引擎206的原始时钟的一些部分,实现可替换的转变分布。图3D示出了具有这种转变分布的示例定时信号306。
在其它实施例中,还可以通过将分频器214编程为使得原始时钟具有基本上为零的频率的分频值,来实现可替换的分布。例如,图3E示出了示例定时信号308,其中原始时钟在信号周期的至少一部分上具有基本上为零的频率。
通过将信号302-308提供给微处理引擎206,可以通过独立于显示控制器204的操作来修改在微处理引擎206上执行的应用的执行速率,从而更精细地控制微处理引擎206的可变功耗要求。如果信号302-308被施加到显示控制器204,这可能导致一个或多个显示器120上的假信号。
另外,由于可以在微处理引擎206可能正在执行来自OS驱动程序209的命令的同时将信号302-308施加到微处理引擎206,这可以使得在一个或多个显示器120上显示的图像中有更少的假信号。如果不向微处理引擎206提供信号302-308,在微处理引擎206可以实施热管理机制之前,OS驱动程序209可能需要等待微处理引擎206完成任何特定的指令集。换言之,如果不提供信号302-308,OS驱动程序209可能必须将时钟修改放置在微处理引擎206的处理中断内。即使功率调节电路124可能指示需要实施热管理,在实施热管理技术之前等待处理中断发生可能使得微处理引擎206的温度继续升高。当功率调节电路124能够实施某种形式的热管理时(即,在处理中的下一个中断处),GPU 108可能已经消耗了如此多的功率以至于可能需要采取激烈的措施,诸如完全关闭GPU 108。例如,如果GPU 108消耗太多功率,并且OS驱动程序209不能实施热管理,计算机系统100可能简单地关闭GPU 108以防止灾难性的损坏。
以这种方式关闭GPU 108可能导致呈现在一个或多个显示器120上的图像中的假信号。通过向微处理引擎206提供信号302,由于微处理引擎206的功率可被主动地(与被动地相反)控制,因此可以防止这些假信号出现,从而最小化了GPU 108被灾难性关闭的次数。在便携系统中(其中热预算相对较小)可能特别希望实施这种热管理方案,这些便携系统支持多个显示器,并且可能需要由微处理引擎206进行附加处理(并且因此生成附加的热量)。
在某些计算机系统中,被称为“热病毒”的应用可被恶意执行。这些热病毒的代码中蓄意不包含处理中断,从而计算机系统将由于热超载而关闭。通过实施信号302,由于功率调节电路124可以控制生成的热量而不用考虑OS驱动程序209必须等待处理中断,这些热病毒的影响可被克服。
在某些实施例中,振荡电路212可以沿着定时路径在各个时间点处对一个或多个定时信号进行偏斜消除(de-skew)。例如,从分频器214到多路复用器216的信号可能被路由到GPU 108各处,从而引入时钟偏斜。在这些情况下,通过例如通过连接218将被怀疑的信号与由振荡电路212生成的信号进行比较,振荡电路212可以利用PLL消除这种偏斜。应当注意,连接218仅是能够向微处理引擎206提供定时信号的电路的一个代表,还可以使用更复杂的电路。

Claims (43)

1.一种图形处理单元(GPU),包括:
显示控制器;
耦连到显示控制器的微处理引擎;
耦连到显示控制器和微处理引擎的时钟电路,该时钟电路进一步包括:
耦连到显示控制器的原始时钟信号;
耦连到原始时钟信号的分频器,其中分频器生成原始时钟信号的分频版本;
耦连到分频器和原始时钟信号的多路复用器,其中多路复用器向微处理引擎选择性地提供原始时钟信号或原始时钟信号的分频版本作为定时信号。
2.如权利要求1所述的GPU,其中,基于脉冲宽度调制(PWM)信号的脉冲宽度,多路复用器向微处理引擎选择性地提供原始时钟信号或原始时钟信号的分频版本。
3.如权利要求1所述的GPU,其中分频器被调整,以使得原始时钟信号具有基本上为零的频率。
4.如权利要求1所述的GPU,其中微处理引擎以减小的执行速率执行操作,而显示控制器以基本上相同的执行速率操作。
5.如权利要求1所述的GPU,其中提供给微处理引擎的定时信号表现为原始时钟信号和原始时钟信号的分频版本的平均。
6.如权利要求4所述的GPU,还包括提供给多路复用器的至少一个附加时钟信号,其中提供给微处理引擎的定时信号表现为原始时钟信号、原始时钟信号的分频版本和该至少一个附加时钟信号的平均。
7.如权利要求4所述的GPU,其中使用提供给多路复用器的PWM信号来修改以定时信号表示的平均值。
8.如权利要求6所述的GPU,其中所述PWM信号基于对GPU温度变化的测量结果。
9.如权利要求7所述的GPU,其中所述PWM信号基于二极管结的温度变化。
10.如权利要求1所述的GPU,其中所述定时信号包括的源于原始时钟信号的转变的数目多于源于原始时钟信号的下分频版本的转变的数目。
11.如权利要求9所述的GPU,其中在GPU正在执行指令时,修改源于原始时钟信号的转变与源于原始时钟信号的下分频版本的转变之间的比例。
12.如权利要求10所述的GPU,其中定时信号内的转变总数基本上恒定,而不论它们之间的比例被如何修改。
13.如权利要求10所述的GPU,其中所述定时信号在连续的时间段内的转变总数根据从由PWM信号、变化的电平或寄存器设置组成的组中选择的信号而改变。
14.如权利要求1所述的GPU,其中所述定时信号被反馈给时钟电路,以对定时信号进行偏斜消除。
15.如权利要求1所述的GPU,其中独立于微处理引擎正在执行的代码内的中断,修改所述定时信号。
16.如权利要求1所述的GPU,其中在保持微处理引擎执行的操作的总数的同时,修改定时信号的转变分布。
17.一种控制GPU的方法,包括以下动作:
向显示控制器提供原始时钟信号;
生成原始时钟信号的分频版本;和
向微处理引擎提供定时信号,所述定时信号选择性地包括原始时钟信号或原始时钟信号的分频版本;
其中微处理引擎以减小的速率执行操作,而显示控制器以基本上相同的执行速率操作。
18.如权利要求14所述的方法,其中定时信号表现为原始时钟信号和原始时钟信号的分频版本的平均。
19.如权利要求14所述的方法,其中原始时钟信号的分频版本被调整,以使得原始时钟信号的频率基本上为零。
20.如权利要求14所述的方法,还包括以下动作:基于从由PWM信号、变化的电平、或寄存器设置组成的组中选择的信号,改变定时信号的组成。
21.如权利要求14所述的方法,还包括以下动作:在定时信号内包括数目比源于原始时钟信号的下分频版本的转变数目多的源于原始时钟信号的转变。
22.如权利要求19所述的方法,还包括以下动作:在GPU正在执行指令时,修改源于原始时钟信号的转变与源于原始时钟信号的下分频版本的转变之间的比例。
23.如权利要求20所述的方法,其中定时信号内的转变总数基本上恒定,而不论它们之间的比例被如何修改。
24.如权利要求20所述的方法,其中独立于微处理引擎正在执行的代码内的中断,发生修改动作。
25.如权利要求22所述的方法,还包括以下动作:停止热病毒的操作。
26.如权利要求16所述的方法,还包括以下动作:在保持微处理引擎执行的操作的总数的同时,修改定时信号的转变分布。
27.一种计算机系统,包括:
中央处理单元(CPU);
耦连到CPU的GPU;
耦连到GPU的一个或多个显示器;和
耦连到GPU的调节器;
其中GPU还包括:
显示控制器;
耦连到显示控制器的微处理引擎;
耦连到显示控制器和微处理引擎的时钟电路,该时钟电路进一步包括:
耦连到显示控制器的原始时钟信号;
耦连到原始时钟信号的分频器,其中分频器生成原始时钟信号的分频版本;
耦连到分频器和原始时钟信号的多路复用器,其中多路复用器向微处理引擎选择性地提供原始时钟信号或原始时钟信号的分频版本作为定时信号。
28.如权利要求25所述的计算机系统,其中,基于PWM信号的脉冲宽度,多路复用器向微处理引擎选择性地提供原始时钟信号或原始时钟信号的分频版本。
29.如权利要求26所述的计算机系统,其中所述分频器被调整,以使得原始时钟信号具有基本上为零的频率。
30.如权利要求26所述的计算机系统,还包括操作系统(OS)驱动器,其中OS驱动器控制PWM信号的脉冲宽度。
31.如权利要求26所述的计算机系统,其中所述调节器内的预定算法控制PWM信号的脉冲宽度。
32.如权利要求25所述的计算机系统,其中微处理引擎以减小的执行速率执行操作,而GPU的一部分以基本上相同的执行速率操作。
33.如权利要求29所述的计算机系统,其中微处理引擎以减小的执行速率执行操作,而显示控制器以基本上相同的执行速率操作。
34.如权利要求25所述的计算机系统,其中使用提供给多路复用器的PWM信号来修改以定时信号表示的平均值。
35.如权利要求30所述的计算机系统,其中所述PWM信号基于对计算机系统中的温度变化的测量结果。
36.如权利要求31所述的计算机系统,其中所述PWM信号基于二极管结的温度变化。
37.如权利要求25所述的计算机系统,其中所述定时信号包括的源于原始时钟信号的转变的数目多于源于原始时钟信号的下分频版本的转变的数目。
38.如权利要求33所述的计算机系统,其中在GPU正在执行指令时,修改源于原始时钟信号的转变与源于原始时钟信号的下分频版本的转变之间的比例。
39.如权利要求34所述的计算机系统,其中定时信号内的转变总数基本上恒定,而不论它们之间的比例被如何修改。
40.如权利要求25所述的计算机系统,其中独立于微处理引擎正在执行的代码内的中断,修改所述定时信号。
41.如权利要求36所述的计算机系统,其中所述计算机系统是便携式的。
42.如权利要求37所述的计算机系统,其中所述计算机系统包括至少两个显示器。
43.如权利要求25所述的计算机系统,其中在保持微处理引擎执行的操作的总数的同时,修改定时信号的转变分布。
CN200980125004.XA 2008-05-15 2009-04-22 图形处理单元的热管理 Active CN102077271B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US5351908P 2008-05-15 2008-05-15
US61/053,519 2008-05-15
US12/212,805 2008-09-18
US12/212,805 US8525840B2 (en) 2008-05-15 2008-09-18 Thermal management of graphics processing units
PCT/US2009/041446 WO2009140037A2 (en) 2008-05-15 2009-04-22 Thermal management of graphics processing units

Publications (2)

Publication Number Publication Date
CN102077271A true CN102077271A (zh) 2011-05-25
CN102077271B CN102077271B (zh) 2013-09-25

Family

ID=41315732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980125004.XA Active CN102077271B (zh) 2008-05-15 2009-04-22 图形处理单元的热管理

Country Status (5)

Country Link
US (1) US8525840B2 (zh)
EP (1) EP2294572B1 (zh)
CN (1) CN102077271B (zh)
HK (1) HK1155270A1 (zh)
WO (1) WO2009140037A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104584436A (zh) * 2012-08-21 2015-04-29 阿尔卡特朗讯 用于产生系统时钟的系统及温度梯度检测系统

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7433191B2 (en) * 2005-09-30 2008-10-07 Apple Inc. Thermal contact arrangement
US9063713B2 (en) 2008-10-28 2015-06-23 Apple Inc. Graphics controllers with increased thermal management granularity
US8924752B1 (en) 2011-04-20 2014-12-30 Apple Inc. Power management for a graphics processing unit or other circuit
US8477490B2 (en) 2011-05-02 2013-07-02 Apple Inc. Cooling system for mobile electronic devices
CN103106637A (zh) * 2011-11-11 2013-05-15 辉达公司 标准gpu模块、包含模块的系统和用于驱动系统的方法
US8856566B1 (en) 2011-12-15 2014-10-07 Apple Inc. Power management scheme that accumulates additional off time for device when no work is available and permits additional power consumption by device when awakened
US9035956B1 (en) 2012-05-08 2015-05-19 Apple Inc. Graphics power control with efficient power usage during stop
US9390461B1 (en) * 2012-05-08 2016-07-12 Apple Inc. Graphics hardware mode controls
US9250665B2 (en) 2012-06-07 2016-02-02 Apple Inc. GPU with dynamic performance adjustment
US9125299B2 (en) 2012-12-06 2015-09-01 Apple Inc. Cooling for electronic components
US9223167B2 (en) 2013-06-26 2015-12-29 Apple Inc. Liquid crystal switching barrier thermal control
US9389029B2 (en) 2013-09-30 2016-07-12 Apple Inc. Heat transfer structure
US9674986B2 (en) 2015-08-03 2017-06-06 Apple Inc. Parallel heat spreader
US11895588B2 (en) * 2020-08-05 2024-02-06 Analog Devices, Inc. Timing precision maintenance with reduced power during system sleep

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4104523A (en) 1976-10-06 1978-08-01 Martin Marietta Corporation Electronic alpha particle counter
US4620248A (en) 1984-09-04 1986-10-28 Magnetic Peripherals Inc. Apparatus for controlling humidity in a disk drive
US4614528A (en) 1985-06-24 1986-09-30 System Development Corp. Dry air breather assembly
US4863499A (en) 1988-07-29 1989-09-05 Donaldson Company, Inc. Anti-duffusion chemical breather assembly for disk drives
US4982783A (en) 1988-11-22 1991-01-08 Varian Associates, Inc. Self-tightening heat sink
US5025336A (en) 1989-11-06 1991-06-18 Prairietek Corporation Disk drive apparatus
US5148337A (en) 1990-09-20 1992-09-15 Multiform Desiccants, Inc. Controlled rate adsorbent and disc drive stabilizing unit
US5392177A (en) 1991-10-04 1995-02-21 International Business Machines Corporation Sealed DASD having humidity control and method of making same
US5440172A (en) 1993-06-28 1995-08-08 Sundstrand Corporation Integral heat sink interface
JP3075957B2 (ja) 1995-05-30 2000-08-14 株式会社東芝 コンピュータシステム
US5822596A (en) * 1995-11-06 1998-10-13 International Business Machines Corporation Controlling power up using clock gating
US5745344A (en) 1995-11-06 1998-04-28 International Business Machines Corporation Heat dissipation apparatus and method for attaching a heat dissipation apparatus to an electronic device
JPH09305569A (ja) * 1996-01-17 1997-11-28 Texas Instr Inc <Ti> Cpuの動作特性に応じてコンピュータの動作を制御する方法と装置
US5781768A (en) 1996-03-29 1998-07-14 Chips And Technologies, Inc. Graphics controller utilizing a variable frequency clock
US6286212B1 (en) 1996-05-29 2001-09-11 Manford L. Eaton Thermally conductive material and method of using the same
US6143058A (en) 1997-03-17 2000-11-07 Donaldson Company, Inc. Adsorbent construction and method
JPH10268963A (ja) 1997-03-28 1998-10-09 Mitsubishi Electric Corp 情報処理装置
US6400361B2 (en) * 1998-04-23 2002-06-04 United Technologies Dearborn, Inc Graphics processor architecture employing variable refresh rates
TW406219B (en) * 1998-08-26 2000-09-21 Via Tech Inc PLL clock generation circuit that is capable of programming frequency and skew
US6624816B1 (en) 1999-09-10 2003-09-23 Intel Corporation Method and apparatus for scalable image processing
US6407595B1 (en) * 2000-04-04 2002-06-18 Silicon Integrated Systems Corp. Digital clock throttling means
US6504243B1 (en) 2000-04-07 2003-01-07 Advanced Micro Devices, Inc. Removable heat transfer apparatus for a pin grid array (PGA) device, and associated installation and removal methods
US6462410B1 (en) 2000-08-17 2002-10-08 Sun Microsystems Inc Integrated circuit component temperature gradient reducer
US7190585B2 (en) 2000-09-29 2007-03-13 Intel Corporation Thermal heat spreaders designed for lower cost manufacturability, lower mass and increased thermal performance
CN1151416C (zh) * 2000-12-18 2004-05-26 联想(北京)有限公司 根据cpu的利用率调节cpu频率的方法
US6555486B2 (en) 2001-07-12 2003-04-29 Cool Shield, Inc. Thermally conductive silk-screenable interface material
US6886625B1 (en) 2001-08-23 2005-05-03 Cool Options, Inc. Elastomeric heat sink with a pressure sensitive adhesive backing
US6896045B2 (en) 2001-10-24 2005-05-24 Cool Shield, Inc. Structure and method of attaching a heat transfer part having a compressible interface
JP2003173173A (ja) * 2001-12-07 2003-06-20 Rohm Co Ltd 液晶ドライバ装置
US6618249B2 (en) 2002-02-05 2003-09-09 Quantum Corporation Thermal cooling system for densely packed storage devices
US6832410B2 (en) 2002-04-23 2004-12-21 Hewlett-Packard Development Company, L.P. High performance cooling device with side mount fan
US7149909B2 (en) 2002-05-09 2006-12-12 Intel Corporation Power management for an integrated graphics device
US6891724B2 (en) 2002-06-12 2005-05-10 Intel Corporation Increasing thermal conductivity of thermal interface using carbon nanotubes and CVD
JP3885670B2 (ja) 2002-06-19 2007-02-21 松下電器産業株式会社 半導体装置
US7882369B1 (en) * 2002-11-14 2011-02-01 Nvidia Corporation Processor performance adjustment system and method
JP4526771B2 (ja) 2003-03-14 2010-08-18 株式会社半導体エネルギー研究所 半導体装置の作製方法
US6987671B2 (en) 2003-06-26 2006-01-17 Intel Corporation Composite thermal interface devices and methods for integrated circuit heat transfer
US7451332B2 (en) * 2003-08-15 2008-11-11 Apple Inc. Methods and apparatuses for controlling the temperature of a data processing system
US20050077614A1 (en) 2003-10-10 2005-04-14 Chengalva Suresh K. Semiconductor device heat sink package and method
US7125433B2 (en) 2003-12-31 2006-10-24 Donaldson Company, Inc. Dual diffusion channel filter
US7006353B2 (en) 2004-03-11 2006-02-28 International Business Machines Corporation Apparatus and method for attaching a heat sink to an integrated circuit module
EP1589637B1 (en) * 2004-04-22 2009-09-23 Sony Ericsson Mobile Communications AB Cooling system for a mobile terminal for wireless communication
CN100462896C (zh) * 2004-05-19 2009-02-18 鸿富锦精密工业(深圳)有限公司 Cpu工作电压调整系统
US7085135B2 (en) 2004-06-21 2006-08-01 International Business Machines Corporation Thermal dissipation structure and method employing segmented heat sink surface coupling to an electronic component
US7454316B2 (en) * 2004-10-08 2008-11-18 International Business Machines Corporation Method and apparatus for monitoring and enhancing on-chip microprocessor reliability
US20060120051A1 (en) 2004-12-03 2006-06-08 Chris Macris Liquid metal thermal interface material system
US7045885B1 (en) 2004-12-09 2006-05-16 Hewlett-Packard Development Company, L.P. Placement of absorbing material in a semiconductor device
US7269015B2 (en) 2005-02-01 2007-09-11 Tyco Electronics Corporation Heat sink interface insert
US7730336B2 (en) 2006-05-30 2010-06-01 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
US7401243B2 (en) * 2005-06-21 2008-07-15 Dell Products L.P. Demand-based dynamic clock control for transaction processors
US7433191B2 (en) 2005-09-30 2008-10-07 Apple Inc. Thermal contact arrangement
EP1785982A1 (en) * 2005-11-14 2007-05-16 Texas Instruments Incorporated Display power management
US7750912B2 (en) * 2005-11-23 2010-07-06 Advanced Micro Devices, Inc. Integrating display controller into low power processor
US7440281B2 (en) 2006-02-01 2008-10-21 Apple Inc. Thermal interface apparatus
TW200803409A (en) * 2006-06-23 2008-01-01 Delta Electronics Inc Fan with vibration reminding function
US9063713B2 (en) 2008-10-28 2015-06-23 Apple Inc. Graphics controllers with increased thermal management granularity

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104584436A (zh) * 2012-08-21 2015-04-29 阿尔卡特朗讯 用于产生系统时钟的系统及温度梯度检测系统

Also Published As

Publication number Publication date
WO2009140037A3 (en) 2010-04-08
CN102077271B (zh) 2013-09-25
WO2009140037A2 (en) 2009-11-19
US20090284534A1 (en) 2009-11-19
EP2294572A2 (en) 2011-03-16
US8525840B2 (en) 2013-09-03
EP2294572B1 (en) 2013-06-05
HK1155270A1 (en) 2012-05-11

Similar Documents

Publication Publication Date Title
CN102077271B (zh) 图形处理单元的热管理
US7149909B2 (en) Power management for an integrated graphics device
US8095818B2 (en) Method and apparatus for on-demand power management
US7730334B2 (en) Method and apparatus for on-demand power management
JP4112494B2 (ja) 表示制御装置
JP4684919B2 (ja) スペクトラム拡散クロック制御装置及びスペクトラム拡散クロック発生装置
KR102105873B1 (ko) 디스플레이 시스템
US20130033213A1 (en) Fan controlling circuit for server computer
US20170060221A1 (en) Power-control devices
US11088557B2 (en) Motherboard with a charging function
JP2000089848A (ja) プロセッサの処理速度の動的制御方法及びシステム
CN115933855A (zh) 自适应时钟调制
US20130219199A1 (en) Clocking a processor
US20150263709A1 (en) Electronic device and method for generating clock signals with and without frequency jitter for one source clock signal generated by a single narrow-band source clock signal
US8731042B2 (en) Generating pulse width modulated signals
US20170068295A1 (en) Electronic System and Related Clock Managing Method
EP3609047A1 (en) Motherboard with a smart charging function
TW201413437A (zh) 多階段降低cpu能耗的節能裝置
US11962509B2 (en) Spread spectrum high-speed serial link
WO2012067211A1 (ja) 情報処理装置、電子機器、コンピュータプログラム記憶媒体、および、性能と電力の制御方法
KR100964516B1 (ko) 디지털 디스플레이 장치에서 emi를 감소하기 위해 직접적 디지털 신서사이저 및 확산 스펙트럼 기술을 이용하는 방법 및 장치
CN110858093A (zh) 具有充电功能的主机板
CN110825202A (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