集成图形设备的功率管理的制作方法

文档序号:6412682阅读:293来源:国知局
专利名称:集成图形设备的功率管理的制作方法
技术领域
本发明的实施方案涉及功率管理领域,尤其是涉及根据事件,例如要求和负载,来调节图形控制器的功耗。
背景技术
最近几年以来,在半导体技术方面已经出现许多进展,它们已经导致改进型图形控制器的发展,所述控制器可以在更高的频率下运行并支持附加和/或增强特征。虽然这些进展已经使硬件制造商能够设计和制造更快和更复杂的图形卡和计算机,但它们也给由电池供电的膝上型和手提式计算机带来缺点。具体地,与那些上一代的计算机相比,这些由电池供电的计算机消耗更多的能量,并且,作为副产品,发散出更多的热。
例如在图形存储控制器中心内,图形核心是它的主要功能块之一,这些功能块具有大量的门。因此,图形存储控制器中心的功耗主要与施加于所述图形核心的电压和频率有关。即,随着图形核心电压的增加,图形存储控制器中心的所消耗的功率也增加。由于图形核心的利用针对不同的应用可以显著变化,因此,当把高电压和频率信号提供到图形核心来处理具有极少图形的应用程序时,计算机会毫不必要地浪费能量,毫不必要地降低膝上型和手提式计算机的电池寿命,也使得这些计算机在毫不必要的高温下工作。


通过参考下面的描述和附图可以最好地理解本发明,附图用来图解本发明的实施例。
图1是在计算设备内使用的逻辑的示例性实施方案。
图2是图形存储控制器中心(GMCH)的第一示例性实施方案,所述图形存储控制器中心与时钟发生器协作来控制核心频率和/或电压。
图3是图形存储控制器中心(GMCH)的第二示例性实施方案,所述图形存储控制器中心与时钟发生器协作来控制显示器使用的频率和/或电压。
图4是GMCH的活动控制电路的示例性实施方案,尤其是图2和图3的状态定序器(state sequencer)和活动指示器(activity indicator)电路。
图5A是空闲状态页(ISP)寄存器的示例性实施方案,所述空闲状态页寄存器由图4的活动控制电路使用。
图5B是空闲控制及状态(ICS)寄存器的示例性实施方案,所述空闲控制及状态(ICS)寄存器由图4所示的活动控制电路使用。
图6是图4的活动控制电路的空闲检测器的示例性实施方案。
图7A和7B是一个流程图的示例性实施方案,所述流程图概述图4的活动控制电路从“快”频率到“慢”频率的一般频率切换操作。
图8是一个流程图的示例性实施方案,所述流程解图4的活动控制电路的频率切换单元的操作。
图9是图形存储控制器中心(GMCH)的第三示例性实施方案,所述图形存储控制器中心与时钟发生器协作来控制显示器使用的频率和/或电压。
图10是图9的同步器逻辑的示例性实施方案。
图11是软件模块的示例性实施方案,所述软件模块控制GMCH的频率和电压节流。
图12是图11软件模块的示例性一般操作图。
图13是第一图形用户界面的示例性实施方案,所述第一图形用户界面编程策略以控制计算设备的操作行为。
图14是第二图形用户界面的示例性实施方案,所述第二图形用户界面编程策略以控制计算设备的操作行为。
具体实施例方式
通常,本发明的各种实施方案描述一种装置和方法,用于通过电压和频率调节来控制电子设备的功耗。作为一个实施方案,这个电压和频率控制应用于图形存储控制中心(GMCH)。
主要按照方块图和流程图呈现下面的详细说明,以便共同图解本发明的各个实施方案。不再详细论述公知的电路或过程操作以避免不必要地混淆对本说明书的理解。
某个术语被用来描述本发明的某些特征。例如,“计算设备”可以是带有图形存储控制器中心的任何电子产品,例如计算机(如桌上型、膝上型、手提式、服务器、大型机等),或者也许是机顶盒,用户电子设备(如电视机),游戏控制台(game console),或类似物。
通常,计算设备包括内部逻辑,即硬件、固件、软件模块或者它们的任何组合。“软件模块”是一系列指令,它们在执行时完成某一功能。软件模块的实施例包括操作系统,应用程序,小应用程序,程序或甚至例程。一个或多个软件模块可以存储在机器可读介质中,所述机器可读介质包括但不局限于电子电路,半导体存储设备,只读存储器(ROM),闪存,可擦写可编程只读存储器类型(EPROM或EEPROM),软盘,致密盘(compact disk),光盘,硬盘,或类似物。术语“逻辑高”和“断言的(asserted)”(或其任何时态)意思是信号进入第一状态,或许在某一电压之上或之下。术语“逻辑低”和“解断言的(deasserted)”(或其任何时态)意思是信号进入不同于第一状态的新状态。
I、总体结构参考图1,图示了在计算设备100内使用的电路的示例性实施方案。计算设备100包括处理器110、时钟发生器120、存储器130和集成设备140(例如图形存储控制器中心(GMCH))。GMCH 140经由总线150和160分别耦合到处理器110和存储器130。如下所述,GMCH 140从时钟发生器120接收参考时钟信号,从电压调节器170接收调节电压(regulated voltages)。尽管未图示,计算设备100可以由一个或多个内置电池供电,或者通过从电源插座经由连接线的交流(AC)电源来进行供电。
在这里,处理器110可以是微处理器,数字信号处理器(DSP),专用集成电路(ASIC),微控制器,或类似物。GMCH 140经由总线150(例如前侧总线)耦合到处理器110,以接收要处理并随后要保存在存储器130内或要显示在显示单元180上的信息,所述显示单元与计算设备100相关联。显示单元180可以是计算设备100的整体部件,或者如图所示是与计算设备100分开并在其外部的外围设备。
时钟发生器120位于计算设备100的内部。然而,设想时钟发生器120可以位于计算设备120的外部。时钟发生器120给处理器110提供第一时钟(HOST_CLK)信号190,并且给GMCH 140提供一个或多个时钟信号。例如,HOST_CLK信号190和次要时钟(CLK2)信号195可以供给GMCH 140,其中CLK2信号195具有比HOST_CLK信号190更低的频率。在一个实施方案中,HOST_CLK信号190和CLK2信号195的频率可以分别是约66兆赫(66MHz)和48兆赫(48MHz)。
II、图形存储控制器中心的实施方案现在参考图2,图示了图形存储控制器中心(GMCH)140的第一示例性实施方案,所述图形存储控制器中心与时钟发生器120协作来控制核心频率和/或电压的使用。对于本实施方案而言,GMCH 140包括图形核心200、一个或多个时钟源210和215(如锁相环“PLL”电路)、可选分频器电路220、存储控制器225、显示端口230和活动控制电路235。活动控制电路235包括状态定序器240、活动指示器电路245、电压调节控制电路250和核心PLL电路255。
如图2中所示,图形核心200对输入数据执行图形计算,并且经由显示端口230把上述数据输出给图1的显示单元180。图形核心200接收从图1的时钟发生器120产生的参考时钟信号。对于本实施方案而言,GMCH 140接收HOST_CLK信号190,并且把这个时钟信号路由给PLL电路210以及或许路由给分频器电路220。PLL电路210根据HOST_CLK信号190产生存储时钟(MCLK)信号260。与HOST_CLK信号190不同,MCLK信号260是可编程的。MCLK信号260由存储控制器225使用,所述存储控制器控制对图1的存储器130的访问。
分频器电路220在执行时调节HOST_CLK信号190的频率,并且把调节时钟信号(adjusted clock signal)265传递给核心PLL电路255。核心PLL电路255根据输入的调节时钟信号265产生可编程的绘制(rendering)时钟(CRCLK)信号270,并且为了定时目的,把CRCLK信号270提供给图形核心200。
还参考图2,对于本发明的这个实施方案而言,活动控制电路235包括活动指示器电路245,所述活动指示器电路监视GMCH 140的数据处理活动。可以通过检测图形核心200何时是活动的(处理数据)或空闲的来实现上述监视。例如,当图形核心200正在积极处理数据时,由活动指示器电路245检测的控制信号(未图示)被断言(asserted)(例如用于选择极性的逻辑高)。否则,控制信号被解断言(用于选择极性的逻辑低)。通过周期性地采样这个控制信号,可以确定图形核心活动的百分比。根据所述百分比,状态定序器240可以确定CRCLK信号270的频率是否合适或需要改变。
设想除了时钟频率或施加于图形核心200的电压之外,可以配置活动控制电路235来控制计算设备的其他操作行为。实施例包括时钟速度比、时钟调节百分比(clock throttlingpercentages)、刷新率、背后照明光亮度等等。然而,仅仅为了说明的目的,讨论了频率和调节。
如果核心PLL电路255只支持两个不同时钟频率,则状态定序器240给核心PLL电路255提供断言的控制信号241,以选择较高频率的时钟信号(称为“‘快’频率信号”)。否则,给核心PLL电路255提供解断言的控制信号,以选择较低频率的时钟信号(称为“‘慢’频率信号”)。如果核心PLL电路255支持两个以上不同时钟频率,则状态定序器240可以适合于提供多个控制信号,它们对应于图形核心200的多个时钟频率之一。例如,两个控制信号(00,01,10,11)可以支持四个不同变频时钟。
依据对图形核心200的频率改变,状态定序器240还给电压调节器控制电路250提供控制信号242,所述控制电路250给图1的电压调节器(170)发送信号以调节供应给图形核心200的电压。例如,这个电压可以从约1.5V变化到约0.9V或更小。电压调节可以对应于频率变化,并且上述电压调节可以发生在闭锁(ungating)所述的调节时钟信号之前。
参考图3,图示了图形存储控制器中心(GMCH)140的第二示例性实施方案,所述图形存储控制器中心与时钟发生器120协作来控制核心频率和/或电压。对于本实施方案而言,GMCH 140排除了调节施加于显示端口230的时钟信号频率的PLL电路215。但GMCH 140以其他部件为特征,例如上面所述的图形核心200,PLL电路210,可选分频器电路220,存储控制器225,显示端口230以及活动控制电路235。
III、活动控制电路的实施方案A、活动控制电路的示例性逻辑现在参考图4,图示了活动控制电路235的示例性实施方案,尤其是图2和图3的状态定序器240和活动指示器电路245。通常,上述电路包括空闲检测器300、空闲监视器310、减法器350、选择元件(例如多路复用器)360-364、逻辑门370-377以及下面详述的频率切换单元380。通常,频率切换单元380起图2的状态定序器240的作用,而所述电路的其余部分起活动指示器电路245的作用。
在本发明的一个实施方案中,为了维持功耗和性能之间的平衡,活动控制电路235支持图1中GMCH 140使用的CRCLK信号270的频率切换。为了消除任何可能的性能损失,空闲监视器310适合于测量图1中GMCH 140的绘制引擎的空闲状态(idleness)。
具体地,对于本发明的一个实施方案而言,CRCLK信号270被配置成在达到空闲状态的一个特定阈值(Tf2s)时从“快”频率(Ff)切换到“慢”频率(Fs)(其中Ff>Fs)。称为“快到慢(F2S)状态阈值”的这个阈值可以是静态的,或者可以在上电状态期间通过计算设备的基本输入输出系统(BIOS)或者或许通过访问特定存储位置或寄存器的内容可编程地设定。这个阈值可以表示为如图4所示的位值(例如32位值)。
CRCLK信号还被配置成在活动等级增加时从慢频率切换到快频率,从而超过特定活动阈值,称为“慢到快(S2F)状态阈值”(Ts2f)。类似地,可以预置S2F状态阈值,并且用位值表示(例如32位值)。只有CRCLK信号频率可以按照要求动态变化,所有其他时钟将在启动(boot)之后保持不变。
除了在测的空闲状态(measured idleness)之外,通过软件控制可以引发其他频率切换事件。例如,可以检测AC电源中断(如通过从电源插座移走它的AC插头而引起连接器线中断),并且使软件例程把CRCLK信号切换到较慢的频率设定,以延长电池寿命。
为了在相同负载下减少不必要的来回切换,可以提供滞后。一种实现此功能的方式是通过确保启动高到低频率转换所需的繁忙等级相当地低于启动低到高频率转换的繁忙等级。频率、系统功率和滞后之间的关系由公式(1)给出(1)Tf2s<Is-((If-Tf2s)*Ff*Is)/(If*Fs)其中Tf2s=F2S状态阈值;Ts2f=S2F状态阈值;Is=慢状态间隔;If=快状态间隔;Fs=慢频率;Ff=快频率。
下面如图4所示,活动控制电路235的操作部分基于各种控制状态信号。这些控制状态信号包括,但不局限于,GMCH的期望状态(DSTATE)、当前状态(CSTATE)、基于空闲监视器硬件的转变频率请求(HW_CH_FREQ)、和/或基于硬件、软件或热状态的转变频率请求(CH_FREQ_REQ)。
更具体地,“DSTATE”表示用于电子设备的期望频率状态等级。DSTATE的值可以保存为空闲状态页(ISP)寄存器390的位(例如ISP[1]),或许位于如图5A所示的GMCH的存储器(未图示)内。ISP寄存器为软件和硬件提供活动和温度信息,以便做出频率和电压调节决策。在这里,对于本发明的这个实施方案而言,断言DSTATE(DSTATE=逻辑“高”)以把CRCLK信号设定和维持在“快”频率水平下。解断言DSTATE(DSTATE=逻辑“低”)以把CRCLK信号设定和维持在“慢”频率水平下。通过硬件或软件可以确定DSTATE。
当通过硬件确定时,响应图5B中空闲控制和状态(ICS)寄存器395的硬件使能转换位设定(EN_HW_TRAN=ICS[30]=逻辑“高”),与减法器350输出相关联的最高有效位(MSB)等于DSTATE值。否则,当通过软件确定时,DSTATE通常等于软件重置到慢(SWRST2S)信号的反相值(inverted value)(例如ICS[28])。
在本发明的一个实施方案中,“CSTATE”表示CRCLK信号的当前状态。CSTATE的值可以保存为ISP寄存器390的位(例如ISP
)。断言CSTATE以把CRCLK信号选择在“快”频率下。解断言CSTATE以选择“慢”频率。所有领域活动停止之后,通过把DSTATE值指定为CSTATE值,将切换CRCLK的频率(例如从快到慢)。
当断言时,“HW_CH_FREQ”表示硬件确定的转变频率事件(“快”到“慢”或“慢”到“快”)。HW_CH_FREQ是基于空闲监视器的操作。例如,当CRCLK信号在快频率下操作(CSTATE=逻辑“高”)和采样的空闲数量大于F2S状态阈值(Tf2s)时,断言HW_CH_FREQ(HW_CH_FREQ=逻辑“高”)。当CRCLK信号在慢频率下操作(CSTATE=逻辑“低”)和采样的空闲数量小于S2F状态阈值(Ts2f)时,断言HW_CH_FREQ。
“CH_FREQ_REQ”通常是基于硬件或软件引起的事件和热读数。当断言CH_FREQ_REQ时,它表示针对频率切换单元380的变换频率请求(可以是从快到慢或者从慢到快)。确定CH_FREQ_REQ值以响应两个标准。第一个标准确定是否将提供硬件或软件请求。上述确定是基于EN_HW_TRAN值的(当将提供硬件确定的转变频率请求时,断言EN_HW_TRAN)。
第二个标准根据检测到的GMCH温度(TRR[7:0])确定是否需要转变频率请求,GMCH温度可以保存在ISP寄存器390内(例如ISP[9:2])。对于本发明的这个实施方案而言,当检测到的温度在规定阈值之上时,一个THERMALHOT参数设被定为逻辑“1”。然而,即使检测到的温度在规定阈值之上,还允许CRCLK信号从“快”频率发生变化。否则,在断言CSTATE的地方,断言SWITCH_TO_SLOW_IF_HOT(例如IC[29])和THERMALHOT参数,这使得CH_FREQ_REQ被解断言,表示频率水平没有变化。总之,如果检测到的GMCH温度在设定阈值之上,第二个标准用来防止慢到快的频率切换转换。
如图4中所示,当某些单元空闲时,空闲检测器300产生有效整体(Global)空闲(GIDLE)信号309。对于本实施方案而言,这些单元可以包括一个或多个下述单元MPEG压缩/解压缩单元(MPEG_DONE 302空闲时)、三维绘制单元(3D_DONE 304空闲时)、二维绘制单元或位块传输器(BLT_DONE 306空闲时)和/或硬件组合(hardware binning)单元(HB_DONE 308空闲时)。通过ICS寄存器395内的记录位可以对每个“DONE”信号302,304,306和/或308进行屏蔽(masked)或不进行屏蔽(unmasked),用于测试和提供灵活的活动计数策略。
例如,如图6中所示,ICS寄存器395(ICS[11:8])的四个位400-403唯一地对应于DONE信号302,304,306和308。因此,ICS[11]的设定使第一逻辑门410(例如或门)中的有效信号被输出,以屏蔽MPEG_DONE 302(例如处于断言的逻辑“高”状态)。类似地,ICS[10:8]的设定使从其他逻辑门420,430和440(例如或门)中产生有效信号,以使3D_DONE、BLT_DONE和HB_DONE信号304,306,308也被屏蔽。
返回来参考图4,空闲监视器310适合于在预设时间间隔内确定绘制引擎的空闲率。根据这些空闲测量,空闲监视器310可以产生DSTATE信号和CH_FREQ_REQ信号。软件也可以设定DSTATE信号和CH_FREQ_REQ信号。由于GIDLE 309在每个CRCLK270周期被采样,并且在CRCLK周期内间隔计数器340也正在计数,因此空闲监视器310在CRCLK域中运行。
空闲监视器310包括空闲计数器320和间隔计数器340。空闲计数器320包括多个输入321-323。对于本发明的这个实施方案而言,在上电时一旦接收到复位信号(IMrst),清除(CLR)输入321就使空闲计数器320复位。时钟(CLK)输入323允许空闲计数器320通过CRCLK信号270进行计时。一旦接收到断言信号,使能(EN)输入322使空闲计数器320开始计数。如图所示,使能(EN)输入322被耦合到第一逻辑门370(例如与门),当GIDLE信号309被断言并且组合逻辑单元330中的输出被断言时,第一逻辑门370开始计数过程。
如图所示,组合逻辑单元330包括第二逻辑门371(例如与门功能性),其具有第一输入和第二输入,第一输入从软件接收ICS寄存器(ICS[31])的空闲监视器使能位的值,第二输入耦合到逻辑门372和373(例如与门372和反相器373)的汇集处。组合逻辑单元330输出有效信号以响应(i)间隔计数器340在倒计数顺序期间不越过零(间隔计数器340的最高有效位“IntMSG”被解断言“0”)和(ii)已经断言了开始计数(START_CNT)信号以开始计数顺序。
空闲计数器320还包括输出324以把空闲计数传达至ISP寄存器390。对于本实施方案而言,输出是二进制值,其保存在ISP寄存器390的多个位(例如ISP[30:10])内。
另外,间隔计数器340包括多个输入341-344。对于本实施方案而言,间隔计数器340由CRCLK信号计时,所述CRCLK信号被提供给时钟(CLK)输入端341。负载(LOAD)输入342使间隔计数器340一旦复位就经由数据进入(DIN)输入343加载两个值中的一个。基于CSTATE 347的值,通过选择元件360输出一个值,即快状态间隔(If)345或慢状态间隔(Is)346,CSTATE 347是GMCH的CRCLK信号正在运行的当前状态。使能(EN)输入344一旦接收到断言信号就使间隔计数器340开始计数。如图所示,EN输入344耦合到组合逻辑单元330。
一旦间隔计数器340越过零,就断言输出(例如最高有效位的整数值“IntMSB”)348。对于本实施方案而言,这使空闲计数器320和间隔计数器340都停止,因为逻辑门371中的输出被解断言。由空闲计数器320产生的空闲计数然后与CSTATE 347的值一起被采样。空闲计数与S2F状态阈值(Ts2f)351或F2S状态阈值(Tf2s)352进行比较,这些阈值是通过由CSTATE 347控制的选择元件361来输出的。
当采样空闲计数(sampled idle count)超过或者或许等于选择的状态阈值并断言CSTATE 347时,解断言输出信号(MSB)353,并将其路由给逻辑门374(例如异或“XOR(异或)”门)。逻辑门374的输出等于HW_CH_FREQ信号365,即如公式(2)中所示(2)HW_CH_FREQ=CSTATEMSB如果由GMCH的硬件确定频率状态,则断言EN_HW_TRAN(ICS[30])以便减法器350中的MSB353从选择元件362输出,并且,因此等于DSTATE_391的值。HW_CH_FREQ信号365经由选择元件363被路由进入选择元件364。
如果检测到的GMCH温度不超出特定阈值,所述GMCH温度作为热值(thermalvalue)保存在ISP寄存器的位中(例如ISP[9:2]),如果CRCLK信号目前运行在“快”频率下,则断言CH_FREQ_REQ信号381并应用于频率切换单元380。可选择地,如果目前运行在“慢”频率下,则解断言CH_FREQ_REQ信号381。
如果检测的温度超出特定阈值,则断言THERMALHOT信号并且断言选择元件364的控制信号。因此,如果CRCLK信号的当前频率位于“慢”频率水平(CSTATE=逻辑“低”),则解断言CH_FREQ_REQ信号。然而,如果CRCLK信号的当前频率位于“快”频率水平(CSTATE=逻辑“高”),则断言CH_FREQ_REQ信号381,以允许CRCLK频率降低。
如果由软件确定频率状态,则解断言EN_HW_TRAN(例如ICS[30])以便SWRST2S的相反状态设定DSTATE 349的值,该值是由逻辑门375生成的。然后通过由逻辑门376提供的SWRST2S和CSTATE的XOR(异或)结果对频率切换单元380进行有效设定。由逻辑门377提供相同的温度检测替换值(override)。
B、活动控制电路的示例性操作现在参考图7A和7B,图示了流程图的示例性实施方案,所述流程图概述图4活动控制电路从“快”到“慢”频率的一般频率切换操作。在这个操作期间,空闲和间隔计数器被初始化(框500),以响应被软件使能。由于断言了CSTATE,第一预置时间间隔在上电时载入间隔计数器(框505)。对于这个具体说明性的实施方案而言,第一预置时间间隔等于快状态间隔。同样,快到慢的阈值载入减法器(框510)。
当断言START_CNT信号时,空闲和间隔计数器将开始计数(框515和520)。当间隔计数器从第一预置时间间隔倒计数时,为CRCLK信号的每一周期断言GIDLE。一旦间隔计数器计数越过零,就断言控制信号,使两个计数器停止(框525和530)。采样空闲计数器的值,CSTATE,DSTATE和确定GMCH当前温度的热值(框535)。
如果DSTATE由硬件确定(例如断言EN_HW_TRAN),则在HW_CH_FREQ信号上路由的值等于CSTATEDSTATE(框540和545)。因此,如果DSTATE与CSTATE不同,并且GMCH的检测温度小于特定阈值,则GMCH的CRCLK信号将经历频率切换操作,该操作对用户是透明的(框550和560)。然而,如果检测温度大于特定阈值,则如果期望转换是到更低的频率,则频率切换操作可能还出现(框550和555)。如果期望转换是到更高的频率,则没有频率切换操作会出现(框560和565)。
如果DSTATE由软件确定(例如解断言EN_HW_TRAN),则如框570中所示,软件转变频率信号(SWCHFREQ)的值等于公式(3)(3)SWCHFREQ=[CSTATESWRST2S]#,其中“#”表示XOR结果的反相。
因此,如果GMCH的检测温度小于特定阈值,则GMCH的CRCLK信号将经历频率切换操作,该操作对用户是透明的(框555和575)。然而,如果检测温度大于特定阈值,则如果期望转换是到更低的频率,并且断言了SWCHFREQ,则频率切换操作可能还出现(框580)。如果期望转换是到更高的频率,则没有频率切换操作会出现(框565)。
IV、频率切换单元的示例性操作现在参考图8,图示了图解频率切换单元操作的流程图的示例性实施方案。频率切换单元监视CH_FREQ_REQ信号以及CSTATE和DSTATE的值(框600)。一旦断言了CH_FREQ_REQ信号,并且DSTATE不等于CSTATE,就使能频率切换单元(框605和610)。设想如果断言了CH_FREQ_REQ信号但DSTATE等于CSTATE,则频率切换操作最近已经出现了,从而所述请求被忽视。
频率切换单元已经被使能之后,假如绘制硬件暂时继续操作直到未决命令的处理已经结束,则某些硬件(例如命令解析器等)操作可以停止以使绘制硬件空闲(框615和620)。此后,选通CRCLK信号(框625)。
已经选通CRCLK信号之后,频率切换单元通过把DSTATE值分配给CSTATE来更新CSTATE值(框630)。此后,闭锁CRCLK信号,并且所述某些硬件和绘制引擎继续操作(框635和640)。这允许频率切换单元在被启动时服务下一个转变频率请求。当然,代替选通CRCLK信号,通过其他方法(例如等待状态)可以实现从一个时钟频率到另一个的平滑转换。如果没有选通CRCLK信号,则在频率切换期间绘制还是可能的,因为不需要等待未决命令结束。
参考图9,图示了GMCH的第三示例性实施方案,所述GMCH与时钟发生器协作来控制显示器使用的频率和/或电压。对于本实施方案而言,GMCH 140使用与同步器逻辑710结合起来操作的单个PLL电路700,例如,PLL电路700给图形核心200和存储控制器225提供不同频率的时钟信号。如图所示,同步器逻辑710支持多个时钟频率水平(CLK)。
同步器逻辑710在传输过程中(on the fly)使能频率切换而不需要PLL电路再锁定以及时钟线上的时钟假信号(glitches)。这样的频率切换是出现在从具有快频率(Ff)的时钟信号(CHCLK)到存储时钟频率(MCLK)和从存储时钟频率(MCLK)到具有慢频率(Fs)的时钟信号(CLCLK)。通常,它提供连续的采样方案以允许在交叉定时的逻辑间的确定性的数据传递。
更具体地,如图10中所示,同步器逻辑710的示例性实施方案包括同步器控制逻辑800和同时同步器850。同步器控制逻辑800包括多个采样电路811,812和多个选择元件820(例如多路复用器)。选择元件820交叉连接到采样电路811,812。同步器850包括多个触发器861,862和多个选择元件870-872。
每个采样电路采样两个进来的信号的边沿以产生发送(XMIT)信号840和接收(RCV)信号841。这可以通过第一采样电路811采样CHCLK信号830和滞后MCLK信号831的上升沿来实现,以计算XMIT信号840的断言部分。对CHCLK信号830和MCLK信号831的下降沿采样可以被用来计算RCV信号841的解断言部分。类似地,第二采样电路812执行MCLK信号831和滞后CLCLK信号832的边沿采样。
响应解断言的CSTATE值,转换是从慢频率(Fs)到与MCLK相关的中间频率(Fm,这里Fm>Fs)。对于本发明的这个实施方案而言,转换可以通过用CLCLK832来定时图形核心200以及同步器控制逻辑800用同步器850的触发器861和862来控制数据锁存来实现。第一触发器861用CLCLK_832定时,第二触发器862用MCLK_831定时。而且,XMIT信号840和RCV信号841通过选择元件870-871控制数据从图形核心200到存储控制器225的传播。
对于从快频率(Ff)到存储控制器频率(Fm,这里Ff>Fm)的转换而言,转换可以通过用CHCLK定时第一触发器861和用MCLK_831定时第二触发器862来实现。此外,XMIT控制信号840和RCV控制信号841通过选择元件870和871控制数据从图形核心200到存储控制器225的传播。旁路信号880控制选择元件872以使数据能绕过第一触发器861。
对于GMCH而言,使用多个时钟域。时钟域频率对不同的界面是不同的,其中这些频率间没有好的比率。为了允许在不同频率域运行的逻辑间的确定性传递,已经开发了同步器逻辑710。多路复用器放在触发器前面。同步器控制逻辑将采样时钟边沿,并基于CLCLK和MCLK或CHCLK和MCLK之间的定时边缘(timing margin)(排除设置时间)产生XMIT和RCV信号。同步器810然后将使用这些控制信号。当允许发送时,断言XMIT信号,并且数据穿过多路复用器到达第二触发器。同样的情况应用于接收侧。
现在参考图11,图示了软件模块的示例性实施方案,所述软件模块保存在计算设备的机器可读介质900中,所述软件模块控制GMCH的频率和电压调节。可以配置多个软件模块905以根据多种事件改变频率或电压等级。
例如,第一软件模块910可以基于活动(例如绘制引擎的空闲率)增加或降低施加于图形核心的绘制时钟(CRCLK)频率和电压。第二软件模块915可以基于电池功率水平以及计算设备是否连接到AC电源口来改变频率和电压。降低绘制时钟频率来响应减小了的功率水平,所述减小了的功率水平是针对计算设备的一个或多个电池所测得的。第三软件模块920可以基于在围绕所述计算设备的逻辑的外壳内测量的或在计算设备的某些硬件部件上测量的热温度,来改变频率和电压。降低绘制时钟频率来响应这样的热读数(thermal reading),即所述读数超出由用户或制造商设定的预定热限制。
如图12中所示,图示了软件模块905的示例性总操作,用于通过应用于GMCH的频率和电压调节来进行功率保持。根据选择的功率保持策略950,响应事件955(例如活动/空闲率、功率或热水平等等),可以配置软件905以改变施加于GMCH 140的频率和电压。所述改变是基于“限制”960(例如预选的阈值参数)和“要求”965的。
在这里,对于本发明的某一实施方案而言,存在两种控制计算设备操作行为的一般策略类型主动的(proactive)和反应的(reactive)。主动的策略针对另一个采取一个策略。例如,如果用户指示一种偏好,即相对性能的最长电池寿命,则软件可以主动地降低功率(例如降低绘制时钟频率),而不需从GMCH接收一个信号。反应策略包括对事件的响应,例如AC连接器的撤除以及平衡用户偏好。
如图13和14中所示,用户通过由计算设备生成的图形用户界面1000可以设定这些策略。如图13中所示,用户可以基于计算设备是用电池操作还是接收AC电源来选择不同策略1010。这些策略可以包括例如最大电池寿命1020、最高性能1030或偏向最大电池寿命或最高性能的自适应策略1040。如图14中所示,可以依据“反应”策略条件1060和/或“主动”策略条件1070配置图形用户界面1050。
在本发明的一个实施方案中,基于被处理的要求以及要求中的趋势来设计自适应策略,以来进行操作中的转换。基于对事件(例如空闲率、要求、温度)的瞬时测量值以及趋势(例如与事件相关的当前数据样本与一个或多个以前数据样本一起的组合)或历史平均可以计算所述“要求”。另外,自适应策略可以包括进行转换的成本计算(例如每瓦特功率获取的每秒兆位数量)。
虽然根据几个说明性实施方案已经对本发明进行了描述,但这中描述不是想要被解释为限制性的。这些说明性实施方案以及本发明其他实施方案的各种修改被视为落入附属权利要求书的精神和范围之内。
权利要求
1.一种图形存储控制器中心,包括图形核心;以及电路,改变提供给所述图形核心的绘制时钟信号频率,所述电路监视所述图形核心的空闲状态,如果所述空闲状态超出确定的时间百分比,则降低所述绘制时钟信号的频率水平。
2.如权利要求1所述的图形存储控制器中心,其中所述电路包括耦合到所述图形核心的核心锁相环(PLL)电路,所述核心PLL电路提供所述绘制时钟信号;以及控制所述核心PLL电路输出的活动控制电路。
3.如权利要求2所述的图形存储控制器中心,还包括分频器电路,提供时钟信号给所述核心PLL电路,所述时钟信号用来产生所述绘制时钟信号。
4.如权利要求3所述的图形存储控制器中心,还包括显示端口,所述显示端口适合于从所述图形核心接收输出;以及锁相环电路,给所述显示端口提供时钟信号。
5.如权利要求2所述的图形存储控制器中心,其中所述活动控制电路还包括活动指示器电路,所述活动指示器电路通过监视所述图形核心的数据处理活动来确定所述图形核心的空闲状态;以及状态定序器,所述状态定序器耦合到所述活动指示器电路和所述核心PLL电路,所述状态定序器响应由所述活动指示器电路做出的决定,信令调节所述绘制时钟信号的频率水平。
6.如权利要求5所述的图形存储控制器中心,其中所述活动指示器电路包括空闲检测器,当多个单元中的每个单元空闲时所述空闲检测器产生有效整体空闲(GIDLE)信号,所述多个单元包括以下单元中的至少两个压缩/解压缩单元(MPEG_DONE)、三维绘制单元(3D_DONE)、二维绘制单元(BLT_DONE)和硬件组合单元(HB_DONE)。
7.如权利要求6所述的图形存储控制器中心,其中所述活动指示器电路还包括寄存器,所述寄存器具有至少一个唯一地对应于多个单元中的每个单元的位,以便与多个单元中的所选单元有关的位的设定起到屏蔽的作用,使得所述所选单元相对所述空闲检测器显示为空闲。
8.如权利要求2所述的图形存储控制器中心,还包括时钟发生器,所述时钟发生器生成至少一个时钟信号提供给所述核心PLL电路,所述绘制时钟信号是基于所述时钟信号的。
9.如权利要求5所述的图形存储控制器中心,其中所述活动控制电路还包括电压调节器电路,所述电压调节器电路耦合到所述活动指示器电路,所述电压调节器电路调节供给所述图形核心的电压。
10.一种用于在内部控制图形存储控制器中心计时频率的电路,包括第一计数器,所述第一计数器在检查所述图形存储控制器中心的空闲状态之前,设定许多绘制时钟信号周期;第二计数器,当所述图形存储控制器中心空闲时,所述第二计数器在每个绘制时钟信号周期被递增;减法器,所述减法器比较第二计数器的计数值和确定的阈值;以及频率切换单元,如果所述计数值大于所述确定的阈值,则所述频率切换单元调节所述绘制时钟信号的频率。
11.如权利要求10所述的电路,其中所述第一计数器是递减计数器。
12.如权利要求11所述的电路,其中所述第二计数器是递增计数器。
13.如权利要求10所述的电路,还包括空闲检测器电路,所述空闲检测器电路耦合到所述第二计数器的使能输入端。
14.如权利要求10所述的电路,还包括多路复用器,所述多路复用器耦合到所述减法器的输入端,所述多路复用器输出快频率阈值和慢频率阈值中的一个。
15.如权利要求14所述的电路,其中所述多路复用器的输出由所述电路的当前状态(CSTATE)确定。
16.如权利要求10所述的电路,其中所述减法器的输出是所述电路的理想状态(DSTATE)。
17.如权利要求16所述的电路,其中如果CSTATE和DSTATE的异或(XOR)结果使信号被断言,则所述频率切换单元接收信号以改变绘制时钟信号的频率水平。
18.如权利要求17所述的电路,其中如果图形核心的温度水平超出确定的热值,则所述频率切换单元阻止改变绘制时钟信号的频率水平。
19.如权利要求18所述的电路,其中,即使当所述图形核心的温度水平超出所述确定的热值时,所述频率切换单元使所述绘制时钟信号的所述频率水平降低。
20.一种集成设备,包括图形核心;以及电路,所述电路监视与所述图形核心操作行为有关联的事件,并且一旦检测到所述事件,就信令所述图形核心,以对所述图形核心的所述操作行为进行调节。
21.如权利要求20所述的集成设备,其中由所述电路监视的事件是空闲百分比,所述空闲百分比与所述图形核心进行的非数据处理活动的总运行时间有关。
22.如权利要求21所述的集成设备,其中所述电路包括时钟源电路,所述时钟源电路耦合到所述图形核心,所述时钟源电路给所述图形核心提供绘制时钟信号;以及活动控制电路,如果空闲状态超出预定时间百分比,则所述活动控制电路降低供给所述图形核心的所述绘制时钟信号的频率水平。
23.如权利要求22所述的集成设备,其中如果空闲百分比降到所选阈值之下,则所述活动控制电路增加绘制时钟信号的频率水平。
24.如权利要求20所述的集成设备,其中由所述电路监视的事件包括时钟速度比。
25.如权利要求20所述的集成设备,其中由所述电路监视的事件包括时钟调节百分比。
26.如权利要求20所述的集成设备,其中所述操作行为是施加于所述图形核心的电压水平。
27.一种计算设备,包括处理器;以及图形存储控制器中心,所述图形存储控制器中心耦合到所述处理器,所述图形存储控制器中心包括图形核心和电路,以改变绘制时钟信号的频率和供给所述图形核心的电压,如果已经超出一个测得的图形核心空闲状态,则所述电路降低所述绘制时钟信号的频率水平。
28.如权利要求27所述的计算设备,其中所述图形存储控制器中心的电路包括活动指示器电路,所述活动指示器电路通过监视所述图形核心进行的数据处理活动来确定空闲状态;以及状态定序器,所述状态定序器耦合到所述活动指示器电路,所述状态定序器基于由所述活动指示器电路确定的空闲状态的量,信令调节所述绘制时钟信号的频率水平的。
29.如权利要求28所述的计算设备,其中所述活动指示器电路包括空闲检测器,当多个单元中的每个单元空闲时所述空闲检测器生成有效整体空闲(GIDLE)信号,所述多个单元包括以下单元中的至少两个压缩/解压缩单元(MPEG_DONE)、三维绘制单元(3D_DONE)、二维绘制单元(BLT_DONE)和硬件组合单元(HB_DONE)。
全文摘要
在本发明的一个实施方案中,描述了使用一种机制的集成设备,所述机制通过对从时钟发生器(120)接收的时钟信号的电压和频率调节来控制图形存储控制器中心(GMCH)(140)的功耗。GMCH(140)包括图形核心(200)和电路(235),以改变操作行为,例如供给所述图形核心(200)的绘制时钟信号频率(270)。所述电路(235)适合于监视图形核心(200)的空闲状态,如果空闲状态超出确定的时间百分比,则降低绘制时钟信号(270)的频率水平。
文档编号G06F1/04GK1666166SQ03816213
公开日2005年9月7日 申请日期2003年4月2日 优先权日2002年5月9日
发明者崔颖, 埃里克·萨姆森, 阿里尔·贝尔科维茨, 阿迪特亚·纳维尔, 戴维·怀亚特, 莱斯利·克莱因, 约瑟夫·曾, 马克·布莱克, 戴维·波伊斯纳, 小威廉·史蒂文斯, 维贾·萨尔-德赛 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1