專利名稱:在基于rdram的系統(tǒng)中實(shí)現(xiàn)acpi(高級(jí)配置與電源接口)c3狀態(tài)的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及計(jì)算機(jī)系統(tǒng)領(lǐng)域。更具體地說(shuō),本發(fā)明涉及節(jié)約計(jì)算機(jī)系統(tǒng)內(nèi)的功耗。
背景技術(shù):
隨著更多的系統(tǒng)變成便攜式,必然越來(lái)越依賴便攜式電源,特別是電池。隨著工業(yè)界致力于最大化電池壽命,降低處理器功耗變得越來(lái)越重要。即使在固定系統(tǒng)中,過(guò)高的功耗也會(huì)導(dǎo)致較高的運(yùn)行成本。此外,越來(lái)越嚴(yán)格的政府要求和環(huán)境標(biāo)準(zhǔn)努力在可能的情況下降低計(jì)算機(jī)系統(tǒng)中消耗的功率。
隨著每一代新的處理器時(shí)鐘頻率的增加,這些處理器的功耗隨著時(shí)鐘速率的增加而增加。因此,當(dāng)處理器消耗了大量的功率時(shí),處理器的溫度升高了。當(dāng)處理器溫度升高時(shí),處理器的可靠性降低了。此外,為了優(yōu)化高性能處理器的輸出,應(yīng)該使用如儲(chǔ)存器控制中心的高性能協(xié)處理器。結(jié)果是,使用快速處理器的高性能系統(tǒng)通常消耗了大量地功率。
然而,比如許多文字處理應(yīng)用程序并不要求系統(tǒng)滿功率運(yùn)行,因?yàn)榈湫偷奈淖痔幚沓绦虿豢赡苁褂靡粋€(gè)典型的高性能處理器所提供的所有的資源或能力。因此,沒(méi)有必要保持一個(gè)高性能系統(tǒng)總是滿功率運(yùn)行,因?yàn)闈M功率運(yùn)行不僅減短電池壽命,還影響整個(gè)系統(tǒng)的可靠性。
過(guò)去,高級(jí)配置與電源接口(ACPI)的方法已經(jīng)被用來(lái)減少系統(tǒng)中的功耗。但是,ACPI還從沒(méi)有在使用RDRAM的系統(tǒng)或類似的基于DRAM的系統(tǒng)中應(yīng)用過(guò)。
依據(jù)下面給出的詳細(xì)描述和本發(fā)明各種實(shí)施例的相應(yīng)附圖,可以更全面地理解本發(fā)明,但是,這不應(yīng)被認(rèn)為是把本發(fā)明限于特定實(shí)施例,而應(yīng)僅是為了說(shuō)明和理解。
圖1是說(shuō)明功耗狀態(tài)的一個(gè)實(shí)施例的狀態(tài)圖。
圖2是說(shuō)明有四個(gè)狀態(tài)的功耗狀態(tài)的一個(gè)實(shí)施例的狀態(tài)圖。
圖3是說(shuō)明具有RDRAM的系統(tǒng)的一個(gè)實(shí)施例的框圖。
圖4是說(shuō)明用于從C0模式切換到C3模式的過(guò)程的一個(gè)實(shí)施例的流程圖。
圖5是說(shuō)明用于從C3狀態(tài)切換到C0狀態(tài)的過(guò)程的一個(gè)實(shí)施例的流程圖。
圖6是說(shuō)明用于進(jìn)入低功耗狀態(tài)的過(guò)程的一個(gè)實(shí)施例的流程圖。
圖7是說(shuō)明用于進(jìn)入高功耗狀態(tài)的過(guò)程的一個(gè)實(shí)施例的流程圖。
圖8說(shuō)明了與本發(fā)明原則一致的系統(tǒng)的一個(gè)實(shí)施例。
圖9,10和11是說(shuō)明通過(guò)本發(fā)明執(zhí)行的轉(zhuǎn)換序列的時(shí)序圖。
發(fā)明內(nèi)容
下面描述了一種用于節(jié)約系統(tǒng)功耗的方法和裝置。
在下面的描述中,為說(shuō)明的目的,給出許多特定細(xì)節(jié),以便給出本發(fā)明一個(gè)詳盡的理解。但是,對(duì)于本領(lǐng)域技術(shù)人員而言,顯然沒(méi)有這些特定細(xì)節(jié)也能夠?qū)嵤┍景l(fā)明。在其他例子中,公知的結(jié)構(gòu)和設(shè)備以框圖的形式示出以避免模糊本發(fā)明。
下面的詳細(xì)描述的某些部分用算法和計(jì)算機(jī)存儲(chǔ)器內(nèi)對(duì)數(shù)據(jù)位操作的符號(hào)表示的形式給出。這些算法描述和表示是數(shù)據(jù)處理領(lǐng)域技術(shù)人員用來(lái)向本領(lǐng)域其他技術(shù)人員最有效地傳達(dá)他們工作內(nèi)容的工具。在這里以及一般的情況下,算法被認(rèn)為是一個(gè)導(dǎo)致期望結(jié)果的自洽步驟序列。這些步驟是那些要求物理量的物理處理的步驟。一般,雖然并非必要,這些量是能被存儲(chǔ)、傳輸、合并、比較和以其他方式處理的電或磁信號(hào)。主要是為通常使用的原因,有時(shí)把這些信號(hào)稱為位、值、單元、符號(hào)、字符、項(xiàng)、數(shù)字或類似(術(shù)語(yǔ))已經(jīng)被證明是方便的。
然而應(yīng)該銘記,所有這些和類似術(shù)語(yǔ)是與恰當(dāng)?shù)奈锢砹肯嚓P(guān)的,并且僅僅是用于這些量的方便標(biāo)記。除非特別闡明,否則在下面的討論中,貫穿本發(fā)明,采用諸如“處理”或“計(jì)算”或“運(yùn)算”或“判定”或“顯示”或其他類似術(shù)語(yǔ)的討論,應(yīng)該被理解為是指計(jì)算機(jī)系統(tǒng)或類似的電子計(jì)算設(shè)備的動(dòng)作和處理。即,該設(shè)備是指把計(jì)算機(jī)系統(tǒng)內(nèi)寄存器和存儲(chǔ)器中用物理(電子)量表示的數(shù)據(jù)處理和變換成計(jì)算機(jī)系統(tǒng)內(nèi)存儲(chǔ)器、寄存器中用物理量類似表示的其他數(shù)據(jù)的設(shè)備,或其他這樣的信息存儲(chǔ)、傳輸或顯示設(shè)備。
本發(fā)明還涉及用于執(zhí)行此處這些操作的裝置。該裝置可以根據(jù)所需目的專門(mén)構(gòu)建,或者它可以包含一個(gè)由存儲(chǔ)在計(jì)算機(jī)內(nèi)的計(jì)算機(jī)程序選擇性地啟動(dòng)或重新配置的通用計(jì)算機(jī)。這樣一個(gè)計(jì)算機(jī)程序可以被存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,例如,但不限于,任何一種類型的盤(pán)片,包括軟盤(pán)、光盤(pán)、CD-ROM和磁光盤(pán)、只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、EPROM、EEPROM、磁或光卡,或任何類型的適于存儲(chǔ)電子指令的介質(zhì),并且每一個(gè)都被耦合到計(jì)算機(jī)系統(tǒng)總線。
這里給出的算法和顯示并不固定地涉及任何特定計(jì)算機(jī)或其他裝置。各種通用系統(tǒng)可以依照此處原則和程序一起使用,或者構(gòu)建一個(gè)更專用的裝置以完成所需方法步驟可能是更方便的。用于這些系統(tǒng)的所需結(jié)構(gòu)將在下面的描述中看出。此外,本發(fā)明并非是依照任何特定的編程語(yǔ)言來(lái)描述的。應(yīng)該理解,為了實(shí)現(xiàn)如這里描述的本發(fā)明的教導(dǎo),可以使用各種編程語(yǔ)言。
綜述公開(kāi)了一種使用多個(gè)功耗狀態(tài)以節(jié)約系統(tǒng)功耗的方法和裝置。在一個(gè)實(shí)施例中,為了節(jié)約功耗,具有多RambusTM動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(RDRAM)的系統(tǒng)實(shí)現(xiàn)了高級(jí)配置與電源接口(ACPI)C3狀態(tài),其也被稱為深度睡眠狀態(tài)。在該實(shí)施例中,為了節(jié)約功耗,時(shí)鐘合成器產(chǎn)生的不同的時(shí)鐘頻率被分配給不同部件,包括中央處理單元(CPU)和RDRAM。
在另一個(gè)實(shí)施例中,系統(tǒng)包括處理器,存儲(chǔ)器和存儲(chǔ)器控制中心(MCH),在該系統(tǒng)中存儲(chǔ)器和MCH被耦合到處理器。在該實(shí)施例中,該MCH能在至少兩種功耗狀態(tài)之間切換以優(yōu)化功耗。在另一個(gè)實(shí)施例中,處理器能被關(guān)閉以節(jié)省功耗。例如,時(shí)鐘合成器能暫停CPU時(shí)鐘信號(hào)以關(guān)閉處理器。
圖1是狀態(tài)圖100,該圖說(shuō)明了功耗狀態(tài)的一個(gè)實(shí)施例。狀態(tài)圖100包含一個(gè)高功率狀態(tài)102和一個(gè)低功率狀態(tài)104。高功率狀態(tài)102表示高時(shí)鐘頻率和高工作電壓,而低功率狀態(tài)104表示低時(shí)鐘頻率和低工作電壓。例如,高功率狀態(tài)102可以在700兆赫茲(MHz),1.8伏特(v)的工作電壓下運(yùn)行,而低功率狀態(tài)104在400MHz,1.3v的工作電壓下運(yùn)行。在一個(gè)實(shí)施例中,為了節(jié)約功耗,系統(tǒng)或CPU可以根據(jù)應(yīng)用程序所需的計(jì)算功率在高功率狀態(tài)102和低功率狀態(tài)104之間動(dòng)態(tài)地轉(zhuǎn)換。
在另一個(gè)實(shí)施例中,系統(tǒng)在高功率狀態(tài)102和低功率狀態(tài)104之間動(dòng)態(tài)地切換,而沒(méi)有用戶的干預(yù)。例如,在高功率狀態(tài)102和低功率狀態(tài)104之間的多次轉(zhuǎn)換可以在擊鍵間發(fā)生。在一個(gè)實(shí)施例中,在高功率狀態(tài)102期間,CPU消耗了全功率,并能夠執(zhí)行全部功能。但是,在一個(gè)實(shí)施例中,在低功率狀態(tài)104期間,CPU消耗較少的功率,僅能執(zhí)行一些功能。注意,高功率狀態(tài)102可以消耗低功率狀態(tài)104兩倍或三倍的功率。
功耗能夠根據(jù)電壓和頻率計(jì)算出來(lái)。功耗的數(shù)學(xué)方程式列出如下。
P∝CV2f其中,P表示功率而C表示一個(gè)常數(shù)。此外,V表示電壓而f表示頻率。例如,如果高功率狀態(tài)102在700MHz、電壓1.8v下運(yùn)行,則高功率狀態(tài)的功耗PH將為PH∝CV2f=C×(1.8)2×700=2268C如果低功率狀態(tài)104在400MHz、電壓1.3v下運(yùn)行,則低功率狀態(tài)的功耗PL將為PL∝ CV2f=C×(1.3)2×400=676C這樣,PH消耗了比PL的三倍還多的功率。
圖2是狀態(tài)圖200,該圖說(shuō)明了具有四種狀態(tài)的功耗狀態(tài)的一個(gè)實(shí)施例。狀態(tài)圖200包含C0 202,C1 204,C2 206和C3 208狀態(tài)。此外,也可以增加狀態(tài),但是它們對(duì)于理解本發(fā)明并不重要。
在一個(gè)實(shí)施例中,C0 202狀態(tài)是激活功耗狀態(tài),在該狀態(tài)下,CPU執(zhí)行全部功能和消耗全功率。在C0 202狀態(tài)期間,用于節(jié)約功率的電源管理并沒(méi)有使用。在一個(gè)實(shí)施例中,C1 204狀態(tài)是自動(dòng)停止功耗狀態(tài),該狀態(tài)中用于節(jié)約功率的高級(jí)電源管理(APM)可以被執(zhí)行。運(yùn)行于C1 204狀態(tài)的CPU通常比運(yùn)行于C2 202狀態(tài)的CPU消耗更少的功率。例如,在C1204狀態(tài)期間,指令通常不被執(zhí)行,且指令高速緩存通常是空的。
在一個(gè)實(shí)施例中,C2 206狀態(tài)是一個(gè)停止給予(stop_grant)功耗狀態(tài),在該狀態(tài)下,在C2 206狀態(tài)下消耗的功率比在C0 202狀態(tài)或C1204狀態(tài)下消耗的功率都要少。例如,在C2 206狀態(tài)期間,給CPU的時(shí)鐘信號(hào)可能被停止。在另一個(gè)實(shí)施例中,CPU被部分關(guān)閉。例如,CPU的主要部分被關(guān)閉而CPU的巡視(snoop)部分仍然是激活的,用于監(jiān)控前端總線。
在一個(gè)實(shí)施例中,C3 208狀態(tài)被稱為深度睡眠狀態(tài),在該狀態(tài)下,系統(tǒng)的一些元件,包括CPU,被關(guān)閉。在該實(shí)施例中,CPU被完全關(guān)閉以便在C3 208狀態(tài)下時(shí)鐘頻率可以被改變。在一個(gè)實(shí)施例中,為進(jìn)入C3 208狀態(tài),CPU被配置成在進(jìn)入C3 208狀態(tài)前先進(jìn)入C2 206狀態(tài)。在另一個(gè)實(shí)施例中,CPU能直接從C0 202狀態(tài)切換到C3 208狀態(tài)。在一個(gè)實(shí)施例中,C0 302,C1 304,C2 306和C3 308都為ACPI(高級(jí)配置及電源接口)狀態(tài)。
圖3是框圖300,該圖說(shuō)明了具有RDRAM的數(shù)字處理系統(tǒng)的一個(gè)實(shí)施例??驁D300包括時(shí)鐘合成器304,CPU302,MCH310,高級(jí)圖像處理器(AGP)330,ICH340和至少一個(gè)RDRAM350。此外,時(shí)鐘合成器304包括時(shí)鐘306和直接RambusTM時(shí)鐘發(fā)生器(DRCG)308.MCH310也包括主機(jī)接口316,AGP接口320,中心接口318,邏輯塊320,兩個(gè)PLL312,314和一個(gè)RambusTM存儲(chǔ)器控制(RMC)或RambusTM基本單元(RAC)316。此外,RMC/RAC316或RMC316包括相校準(zhǔn)器318。其他塊也能被添加到框圖300中,但是它們對(duì)理解該公開(kāi)的系統(tǒng)并不相關(guān)。
在一個(gè)實(shí)施例中,時(shí)鐘合成器304有兩個(gè)狀態(tài),分別是激活狀態(tài)和時(shí)鐘停止?fàn)顟B(tài)。在激活狀態(tài)期間,時(shí)鐘合成器304給包括RDRAM350的不同的部件分配不同的時(shí)鐘信號(hào)。但是,在時(shí)鐘停止?fàn)顟B(tài)期間,為節(jié)約功耗時(shí)鐘合成器304暫停一些時(shí)鐘信號(hào)。在另一個(gè)實(shí)施例中,時(shí)鐘合成器304包含兩個(gè)主要部件,即時(shí)鐘發(fā)生器306和DRCG308。
在一個(gè)實(shí)施例中,時(shí)鐘發(fā)生器306是一個(gè)為CUP302提供時(shí)鐘信號(hào)360和為PLL312提供時(shí)鐘信號(hào)362的時(shí)鐘振蕩器。時(shí)鐘發(fā)生器306還為ADP330,PLL314,和ICH340分配時(shí)鐘信號(hào)364。在一個(gè)實(shí)施例中,RDCG308接收來(lái)自時(shí)鐘發(fā)生器306的時(shí)鐘信號(hào),并產(chǎn)生用于RDRAM350的專門(mén)的存儲(chǔ)時(shí)鐘368。在該實(shí)施例中,時(shí)鐘信號(hào)368也被稱為回送(loop-back)時(shí)鐘,用于在MCH310關(guān)閉時(shí)刷新RDRAM350。
在一個(gè)實(shí)施例中,時(shí)鐘發(fā)生器306提供多個(gè)不同時(shí)鐘頻率的時(shí)鐘信號(hào)。例如,時(shí)鐘信號(hào)360可以比時(shí)鐘信號(hào)362有更高的頻率。在另一個(gè)實(shí)施例中,時(shí)鐘信號(hào)能不同的頻率下進(jìn)行時(shí)鐘同步(Clock)。例如,時(shí)鐘信號(hào)360可以在激活狀態(tài)或高功耗狀態(tài)期間在700MHz的速率下進(jìn)行時(shí)鐘同步,時(shí)鐘信號(hào)360也可以在睡眠狀態(tài)或低功耗狀態(tài)期間在400MHz的速率下進(jìn)行時(shí)鐘同步。
在一個(gè)實(shí)施例中,框圖300實(shí)現(xiàn)了如圖2所示的C0,C1,C2和C3狀態(tài),其中C3也被稱為深度睡眠狀態(tài)。在一個(gè)實(shí)施例中,在C3狀態(tài)期間,時(shí)鐘信號(hào)360和362被暫?;蛲V?。在另一個(gè)實(shí)施例中,在C3狀態(tài)期間,時(shí)鐘信號(hào)360被暫停,而時(shí)鐘信號(hào)362繼續(xù)進(jìn)行時(shí)鐘同步。
在一個(gè)實(shí)施例中,CPU302接收來(lái)自時(shí)鐘合成器304的時(shí)鐘信號(hào)360,并根據(jù)時(shí)鐘信號(hào)360執(zhí)行指令。在該實(shí)施例中,當(dāng)時(shí)鐘信號(hào)360停止時(shí)鐘同步時(shí),CPU302能被關(guān)閉。例如,當(dāng)時(shí)鐘信號(hào)360停止時(shí)鐘同步時(shí),CPU02停止指令執(zhí)行。在一個(gè)實(shí)施例中,一旦CPU302被關(guān)閉或暫停,當(dāng)時(shí)鐘信號(hào)恢復(fù)時(shí)鐘同步時(shí),CPU302能隨后恢復(fù)執(zhí)行,該時(shí)鐘信號(hào)可以有著與CPU302暫停前不同的時(shí)鐘頻率。當(dāng)處理器,如CPU302,在較低的時(shí)鐘速率或頻率下行時(shí),消耗較低的功率。
在一個(gè)實(shí)施例中,MCH310包含一個(gè)主機(jī)接口316,PLL312,AGP接口320,PLL314,中心接口318和邏輯塊320和RMC316。主機(jī)接口316負(fù)責(zé)MCH310與CPU302之間的通信。AGP接口320負(fù)責(zé)MCH310與AGP330之間的通信。中心接口318負(fù)責(zé)MCH310與ICH340之間的接口,RMC316負(fù)責(zé)MCH310與RDRAM350之間的接口。
在一個(gè)實(shí)施例中,在C3狀態(tài)期間,當(dāng)時(shí)鐘信號(hào)362被暫停時(shí),MCH310能被關(guān)閉。在該實(shí)施例中,中心接口318和AGP接口320仍然是激活的,因?yàn)樗鼈兺ㄟ^(guò)來(lái)自PLL314的時(shí)鐘信號(hào)進(jìn)行時(shí)鐘同步。于是,如果MCH310的相當(dāng)一部分被關(guān)閉,則在AGP和ICH之間的接口保持激活以監(jiān)測(cè)I/O命令。在一個(gè)實(shí)施例中,RMC316還包含相校準(zhǔn)器318,該相校準(zhǔn)器用來(lái)在來(lái)自PLL312的時(shí)鐘信號(hào)和時(shí)鐘信號(hào)368之間合成信號(hào)。
在一個(gè)實(shí)施例中,RDRAM350可以包含多個(gè)存儲(chǔ)體(memory backs)并能工作在四個(gè)不同的狀態(tài),分別是激活狀態(tài),待機(jī)狀態(tài),睡眠狀態(tài)和停機(jī)狀態(tài)。激活狀態(tài)消耗大量功率,而停機(jī)狀態(tài)消耗最少的功率。應(yīng)該理解RDRAM是高性能的存儲(chǔ)設(shè)備,它們能夠被類似的高性能DRAM所代替,而不用改變上述功能。此外,在一個(gè)實(shí)施例中,RDRAM能被高性能的SRAM替換。在一個(gè)實(shí)施例中,在激活狀態(tài)或C0狀態(tài)期間,AGP330能存取RDRAM350,而不用CPU302的干預(yù)。
AGP330控制圖形實(shí)現(xiàn)。ICH340控制從處理器單元到外部設(shè)備之間的I/O接口,外部設(shè)備可以是主存儲(chǔ)器,輸入設(shè)備和系統(tǒng)總線。在另一個(gè)實(shí)施例中,ICH340控制多個(gè)總線判別器,其連接多個(gè)外部總線。
圖4是流程圖400,該圖說(shuō)明了用于從C0模式切換到C3模式的過(guò)程的實(shí)施例。過(guò)程從起始?jí)K開(kāi)始,前進(jìn)到塊402。在塊402,第3級(jí)指令被提取并執(zhí)行。在塊402后,過(guò)程前進(jìn)到塊404。在塊404,過(guò)程停止CPU執(zhí)行。在塊404后,過(guò)程前進(jìn)到塊406,允許CPU進(jìn)入C2狀態(tài)。在塊406后,過(guò)程前進(jìn)到塊408。在塊408,過(guò)程準(zhǔn)備系統(tǒng)進(jìn)入C3模式。系統(tǒng)進(jìn)入C3狀態(tài)的準(zhǔn)備包括廢能AGP判別器,聲明內(nèi)部序列,擦寫(xiě)緩沖區(qū),執(zhí)行溫度和電流校準(zhǔn),廣播關(guān)機(jī)消息等等。在塊408后,過(guò)程前進(jìn)到塊410,這里發(fā)出確認(rèn)(acknowledge)C3狀態(tài)的信號(hào)。在塊410后,過(guò)程前進(jìn)到塊412。在塊412,處理器時(shí)鐘被暫停并進(jìn)入C3狀態(tài)。在塊412后過(guò)程結(jié)束。
圖5是流程圖500,該圖說(shuō)明了用于從C3狀態(tài)切換到C0狀態(tài)的過(guò)程的實(shí)施例。過(guò)程從起始?jí)K開(kāi)始,前進(jìn)到塊502。在塊502,過(guò)程接收激活C0信號(hào)。在塊502后,過(guò)程前進(jìn)到塊504,過(guò)程允許CPU進(jìn)入C0狀態(tài)。在塊504后,過(guò)程前進(jìn)到塊506。在塊506,過(guò)程準(zhǔn)備系統(tǒng)進(jìn)入C0狀態(tài)。系統(tǒng)進(jìn)入C0狀態(tài)的準(zhǔn)備包括通知RCG系統(tǒng)準(zhǔn)備進(jìn)入C0狀態(tài),但不限于此。同時(shí),RAC的狀態(tài)從非激活狀態(tài)轉(zhuǎn)換為激活狀態(tài),RDRAM的狀態(tài)從關(guān)機(jī)狀態(tài)轉(zhuǎn)換到待機(jī)狀態(tài)或睡眠狀態(tài)。此外,MCH發(fā)出溫度/電流校準(zhǔn),存儲(chǔ)器應(yīng)該被刷新。在AGP被使能后,過(guò)程從塊506前進(jìn)到508。在塊508,過(guò)程進(jìn)入C0狀態(tài)并恢復(fù)執(zhí)行。在塊508后,過(guò)程結(jié)束。
圖6是流程圖600,該圖說(shuō)明了用于進(jìn)入低功耗狀態(tài)的過(guò)程的實(shí)施例。過(guò)程開(kāi)始于塊602,過(guò)程接收準(zhǔn)備進(jìn)入低功耗狀態(tài)的消息。在塊602后,過(guò)程前進(jìn)到塊604。在塊604,過(guò)程準(zhǔn)備用于進(jìn)入低存儲(chǔ)器功耗狀態(tài)的RDRAM。在一個(gè)實(shí)施例中,在低存儲(chǔ)器功耗狀態(tài)期間,存儲(chǔ)器設(shè)備,如RDRAM,僅執(zhí)行刷新功能。在塊604后,過(guò)程前進(jìn)到塊606。在塊606,過(guò)程暫停用于時(shí)鐘同步CPU的時(shí)鐘信號(hào)。在塊606后,過(guò)程前進(jìn)到塊608。在塊608,過(guò)程進(jìn)入低功耗狀態(tài)。在塊608后,過(guò)程結(jié)束。
圖7是流程圖700,該圖說(shuō)明了用于進(jìn)入高功耗狀態(tài)的過(guò)程的實(shí)施例。過(guò)程開(kāi)始于塊702,過(guò)程接收進(jìn)入高功耗狀態(tài)的消息。在塊702后,過(guò)程前進(jìn)到塊704。在塊704,過(guò)程準(zhǔn)備用于進(jìn)入高存儲(chǔ)器功耗狀態(tài)的RDRAM。在一個(gè)實(shí)施例中,在高存儲(chǔ)器功耗狀態(tài)期間,存儲(chǔ)器設(shè)備執(zhí)行全部存儲(chǔ)器功能。在塊704后,過(guò)程前進(jìn)到塊706。在塊706,過(guò)程恢復(fù)用于時(shí)鐘同步CPU的時(shí)鐘信號(hào)。在塊706后,過(guò)程前進(jìn)到塊708。在塊708,過(guò)程進(jìn)入高功耗狀態(tài)。在塊708后,過(guò)程結(jié)束。
圖8說(shuō)明了與本發(fā)明原則一致的系統(tǒng)800的實(shí)施例。計(jì)算機(jī)系統(tǒng)800包含處理器812,時(shí)鐘830,存儲(chǔ)器804,存儲(chǔ)器控制器850,圖形控制器852和輸入和輸出(I/O)控制器840。圖形控制器852被耦合到顯示器821。I/O控制器840被耦合到鍵盤(pán)822,硬拷貝設(shè)備824和光標(biāo)控制設(shè)備823。
處理器812包括但不限于一個(gè)微處理器,例如一個(gè)由本發(fā)明的共同受讓人、加州Santa Clara英特爾公司制造的英特爾體系結(jié)構(gòu)微處理器。處理器812還可能是其他處理器,例如PowerPCTM、AlpahTM等。
在一個(gè)實(shí)施例中,存儲(chǔ)器控制器850控制存儲(chǔ)器804并且存儲(chǔ)器804可以是隨機(jī)存取存儲(chǔ)器(RAM)或其他用于存儲(chǔ)信息和指令的動(dòng)態(tài)存儲(chǔ)設(shè)備。在處理器812執(zhí)行指令期間,存儲(chǔ)器804也可以被用于存儲(chǔ)臨時(shí)變量或其他中間信息。計(jì)算機(jī)系統(tǒng)800也可以包含只讀存儲(chǔ)器(ROM)和/或其他用于存儲(chǔ)處理器812的靜態(tài)信息和指令的靜態(tài)存儲(chǔ)設(shè)備。
圖形控制器852控制用于向計(jì)算機(jī)用戶顯示信息的顯示器821,如陰極射線管(CRT)或液晶顯示器(LCD)。在一個(gè)實(shí)施例中,I/O控制器840通過(guò)存儲(chǔ)器控制器850耦合到處理器812。I/O控制器840控制輸入和輸出設(shè)備,如鍵盤(pán)822,光標(biāo)控制設(shè)備823和硬拷貝設(shè)備824。光標(biāo)控制設(shè)備823可以是鼠標(biāo)、軌跡球、軌跡板、指示筆或光標(biāo)方向鍵,用于向處理器812傳遞方向信息和命令選擇,并用于控制顯示器821上光標(biāo)的移動(dòng)。
硬拷貝設(shè)備824可以被用于在介質(zhì),如紙張、膠片或類似類型的介質(zhì)上打印指令、數(shù)據(jù)或其他信息。此外,聲音記錄和播放設(shè)備,如揚(yáng)聲器和/或麥克風(fēng)可以被選擇性地耦合到I/O控制器840,用于與計(jì)算機(jī)系統(tǒng)800進(jìn)行音頻接口。時(shí)鐘830用于給不同元件,如處理器812、存儲(chǔ)器控制器850等提供各種時(shí)鐘信號(hào)。
在一個(gè)實(shí)施例中,處理器812、圖形控制器852和存儲(chǔ)器控制器850可以被集成到單個(gè)芯片上。在另一個(gè)實(shí)施例中,處理器812、圖形控制器852、I/O控制器840和存儲(chǔ)器控制器850可以被集成到單個(gè)芯片上。應(yīng)該注意,系統(tǒng)800的任一或全部元件和相關(guān)硬件可以在本發(fā)明中使用。但是應(yīng)該理解,計(jì)算機(jī)系統(tǒng)的其他配置可以包括這些設(shè)備中的一些或全部。
圖9是時(shí)序圖900,該圖說(shuō)明了用于為節(jié)約功耗而執(zhí)行C0-C3-C0狀態(tài)轉(zhuǎn)換的轉(zhuǎn)換序列。在狀態(tài)902,CPU廢能ICH中的判別器并讀取第3級(jí)寄存器。在一個(gè)實(shí)施例中,第3級(jí)寄存器包含用于啟動(dòng)該轉(zhuǎn)換的信息。接下來(lái),ICH發(fā)出一個(gè)停止時(shí)鐘(STPCLK)信號(hào)以停止CPU指令流。緊接著發(fā)出STPCLK后,CPU通過(guò)在CPU FSB上發(fā)出一個(gè)停止給予信號(hào)(Stop_Grant)910以執(zhí)行一個(gè)停止給予周期。
MCH隨后將stop_grant信號(hào)910傳遞到ICH,該ICH觸發(fā)C2狀態(tài)904。于是ICH返回一個(gè)消息給MCH,表示準(zhǔn)備進(jìn)入C3狀態(tài)906。MCH廢能AGP判別器,清空所有的內(nèi)部序列并擦寫(xiě)緩沖區(qū)。接下來(lái),MCH給所有的RDRAM存儲(chǔ)體(memory bank)發(fā)出自刷新和電流校準(zhǔn)命令。當(dāng)MCH關(guān)閉所有的頁(yè)并設(shè)置RDRAM進(jìn)入待機(jī)狀態(tài)時(shí),它通過(guò)一個(gè)頻道廣播關(guān)機(jī)命令。在一個(gè)實(shí)施例中,RDRAM處于關(guān)機(jī)自刷新模式。從C2狀態(tài)904到C3狀態(tài)906的轉(zhuǎn)換發(fā)生。
在C3狀態(tài)906,RAC被置于睡眠狀態(tài),執(zhí)行RAC DLL刷新。MCH隨后發(fā)出一個(gè)確認(rèn)消息給ICH,以表明轉(zhuǎn)換到C3狀態(tài)908。在ICH接收該確認(rèn)消息后,它施加用于減少CPU功率的STP_CPU信號(hào)。從C2狀態(tài)904到C3狀態(tài)906的轉(zhuǎn)換發(fā)生。在C3狀態(tài)906期間,MCH通過(guò)施加STOPB控制DRCG時(shí)鐘發(fā)生器。
圖10為說(shuō)明從C3到C0狀態(tài)的轉(zhuǎn)換的時(shí)序圖。當(dāng)ICH檢測(cè)到中斷事件920時(shí),其解除STP_CPU信號(hào)。在一個(gè)實(shí)施例中,C3狀態(tài)在一個(gè)中斷信號(hào)920結(jié)束。ICH給MCH發(fā)出信號(hào),請(qǐng)求轉(zhuǎn)換到C0狀態(tài)1002。在MCH解除給DRCG的STOPB信號(hào)后,RAC將從睡眠模式轉(zhuǎn)換到激活模式。一旦再次獲得DRCG相,RDRAM設(shè)備將從關(guān)機(jī)狀態(tài)轉(zhuǎn)換到待機(jī)或激活狀態(tài),接著轉(zhuǎn)換到睡眠狀態(tài)。接下來(lái),MCH發(fā)出溫度和電流校準(zhǔn)并刷新存儲(chǔ)體。在恢復(fù)AGP判別器后,ICH解除STPCLK信號(hào)。從C3到C0的轉(zhuǎn)換完成。
圖11是時(shí)序圖1100,該圖說(shuō)明了在用于節(jié)約功率的功耗狀態(tài)之間的轉(zhuǎn)換。在ICH檢測(cè)到中斷事件1120后,ICH解除STP_CPU信號(hào)。在一個(gè)實(shí)施例中,STP_CPU信號(hào)并不局限于激活和非激活。因?yàn)镾TP_CPU信號(hào)被連接到DRCG的STOPB管腳,它使DRCG從停止時(shí)鐘模式轉(zhuǎn)換到正常模式。接下來(lái),ICH給MCH發(fā)送一條表明準(zhǔn)備轉(zhuǎn)換到C0狀態(tài)的消息。
在MCH接收到該消息后,它通知RAC從關(guān)機(jī)狀態(tài)轉(zhuǎn)換到激活狀態(tài)。一旦溫度和電流校準(zhǔn)被執(zhí)行,相校準(zhǔn)器的輸出沒(méi)有被控制(gate)。接下來(lái),時(shí)鐘和時(shí)鐘發(fā)生器被校準(zhǔn)。RDRAM設(shè)備隨后被從關(guān)機(jī)狀態(tài)切換到待機(jī)/激活狀態(tài),接著轉(zhuǎn)換到睡眠狀態(tài)。接著,MCH發(fā)出存儲(chǔ)器刷新和校準(zhǔn)命令。當(dāng)AGP判別器被恢復(fù)和使能時(shí),ICH解除停止時(shí)鐘信號(hào)。從C3狀態(tài)到C0狀態(tài)的轉(zhuǎn)換完成。
在另一個(gè)實(shí)施例中,從C0狀態(tài)到C3狀態(tài)的轉(zhuǎn)換可從廢能ICH中的判別器的步驟開(kāi)始。在CPU讀取啟動(dòng)轉(zhuǎn)換的第3級(jí)寄存器后,ICH施加STPCLK信號(hào)以停止CPU指令流。緊接著施加STPCLK后,CPU通過(guò)在CPUFSB上發(fā)出stop_gtant信號(hào)1110,執(zhí)行停止給予周期。
MCH隨后將停止給周期傳送到ICH,ICH觸發(fā)C2狀態(tài)1104。接著,ICH發(fā)出信號(hào)通知MCH進(jìn)入C3狀態(tài)1106。MCH清空所有內(nèi)部序列并擦寫(xiě)緩沖區(qū)。MCH隨后廢能AGP判別器。當(dāng)MCH關(guān)閉所有的頁(yè)和設(shè)置RDRAM為待機(jī)狀態(tài)時(shí),它通過(guò)一個(gè)頻道廣播關(guān)機(jī)命令。在一個(gè)實(shí)施例中,RDRAM處于關(guān)機(jī)自刷新模式。接下來(lái),MCH控制(gate)相校準(zhǔn)器的輸出。RAC從C2狀態(tài)1104轉(zhuǎn)換到C3狀態(tài)1106或關(guān)機(jī)狀態(tài)。
在MCH發(fā)出信號(hào)通知ICH以切換到C3狀態(tài)后,ICH施加STP_CPU信號(hào),這使得減少CPU的功耗。在一個(gè)實(shí)施例中,電壓轉(zhuǎn)換可以在計(jì)算機(jī)的主板上執(zhí)行。在另一個(gè)實(shí)施例中,STP_CPU信號(hào)被連接到DRCG的STOPB管腳,它使DRCG處于停止時(shí)鐘模式。
在上述詳細(xì)的說(shuō)明中,根據(jù)其中詳盡的典型實(shí)施例對(duì)本發(fā)明的方法和裝置進(jìn)行了說(shuō)明。然而,很清楚在不背離本發(fā)明的更寬的精神和范圍的條件下,能對(duì)其做出各種修改和變化。因此,本詳細(xì)說(shuō)明和圖應(yīng)被視為說(shuō)明性的而不是限制性的。
于是,使用多個(gè)功耗狀態(tài)以節(jié)約功耗的方法和系統(tǒng)就已經(jīng)被說(shuō)明了。
權(quán)利要求
1.一種系統(tǒng),包括處理器;耦合到所述處理器的存儲(chǔ)器;和存儲(chǔ)器控制中心(MCH),耦合到所述處理器并被配置為在至少兩個(gè)功耗模式之間切換,以節(jié)約功耗。
2.如權(quán)利要求1所述的系統(tǒng),其中,所述存儲(chǔ)器是RambusTM直接隨機(jī)存取存儲(chǔ)器(RDRAM),該存儲(chǔ)器能在多于一種功耗模式下運(yùn)行。
3.如權(quán)利要求1所述的系統(tǒng),還包括耦合到所述MCH并被配置為允許所述處理器在至少兩種功耗模式之間進(jìn)行切換的輸入和輸出控制器中心(ICH)。
4.如權(quán)利要求1所述的系統(tǒng),還包括耦合到所述MCH并被配置來(lái)傳送數(shù)據(jù)到所述存儲(chǔ)器的高級(jí)圖形處理器(AGP)。
5.如權(quán)利要求1所述的系統(tǒng),還包括耦合到所述處理器并被配置來(lái)產(chǎn)生多個(gè)時(shí)鐘信號(hào)以節(jié)約功耗的時(shí)鐘合成器,其中,所述時(shí)鐘合成器還包括RambusTM時(shí)鐘發(fā)生器,其具有時(shí)鐘停止模式。
6.如權(quán)利要求1所述的系統(tǒng),其中,所述MCH還包括RambusTM存儲(chǔ)器控制器和RambusTMASIC單元(RAC)。
7.如權(quán)利要求1所述的系統(tǒng),其中,為了節(jié)約功耗所述的處理器能在高時(shí)鐘頻率和低時(shí)鐘頻率之間切換。
8.如權(quán)利要求1所述的系統(tǒng),其中,為了節(jié)約功耗所述MCH從高時(shí)鐘頻率切換到低時(shí)鐘頻率。
9.如權(quán)利要求1所述的系統(tǒng),其中,所述MCH還執(zhí)行電流和溫度校準(zhǔn),其中,所述電流和溫度校準(zhǔn)使所述處理器在功耗級(jí)別之間切換。
10.一種方法,包括接收用于準(zhǔn)備進(jìn)入低功耗狀態(tài)的消息;準(zhǔn)備用于進(jìn)入低存儲(chǔ)器功耗狀態(tài)的RambusTM動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(RDRAM);暫停用于時(shí)鐘同步中央處理器單元(CPU)的時(shí)鐘信號(hào);和進(jìn)入所述低功耗狀態(tài)。
11.如權(quán)利要求10所述的方法,還包括接收用于準(zhǔn)備進(jìn)入更高功耗狀態(tài)的消息;準(zhǔn)備用于進(jìn)入更高存儲(chǔ)器功耗狀態(tài)的RDRAM;恢復(fù)用于時(shí)鐘同步所述CPU的所述時(shí)鐘信號(hào);和進(jìn)入所述更高功耗狀態(tài)。
12.如權(quán)利要求10所述的方法,其中,所述的接收消息還包括讀取用于準(zhǔn)備進(jìn)入C3功耗模式的第3級(jí)指令;施加停止時(shí)鐘信號(hào)(STPCLK)以停止CPU執(zhí)行;和進(jìn)入C2功耗模式。
13.如權(quán)利要求10所述的方法,其中,所述的準(zhǔn)備RDRAM還包括廢能高級(jí)圖形處理器(AGP);擦寫(xiě)所述RDRAM內(nèi)的緩沖區(qū);執(zhí)行電流和溫度校準(zhǔn);和除自刷新外,將RDRAM置于關(guān)機(jī)狀態(tài)。
14.如權(quán)利要求10所述的方法,其中,所述的暫停時(shí)鐘信號(hào)還包括給時(shí)鐘合成器施加停止CPU信號(hào);和暫停從所述時(shí)鐘合成器輸出處理器時(shí)鐘信號(hào)到所述CPU。
15.一種系統(tǒng),包括處理器;耦合到所述處理器并被配置來(lái)響應(yīng)時(shí)鐘信號(hào)以在至少兩種功耗狀態(tài)之間切換的存儲(chǔ)器;和耦合到所述處理器并被配置在較低功耗狀態(tài)下運(yùn)行以節(jié)約功耗的存儲(chǔ)器控制中心(MCH)。
16.如權(quán)利要求15所述的系統(tǒng),其中,所述的存儲(chǔ)器是RambusTM直接隨機(jī)存取存儲(chǔ)器(RDRAM),該存儲(chǔ)器能在多于一種功耗狀態(tài)下運(yùn)行。
17.如權(quán)利要求15所述的系統(tǒng),還包括耦合到所述MCH并被配置為允許所述處理器在至少兩種功耗模式之間進(jìn)行切換的輸入和輸出控制器中心(ICH)。
18.如權(quán)利要求15所述的系統(tǒng),其中,為了節(jié)約功耗所述處理器能在高時(shí)鐘頻率和低時(shí)鐘頻率之間切換。
19.如權(quán)利要求15所述的系統(tǒng),其中,所述MCH能在高電壓和低電壓下運(yùn)行,以節(jié)約功耗。
20.一種為節(jié)約功率用于數(shù)字處理系統(tǒng)的制造裝置,該制造裝置包括數(shù)字處理系統(tǒng)可用的介質(zhì),該介質(zhì)含有在介質(zhì)中實(shí)現(xiàn)的可讀程序代碼,該程序代碼包括接收用于準(zhǔn)備進(jìn)入低功耗狀態(tài)的消息;準(zhǔn)備用于進(jìn)入低存儲(chǔ)器功耗狀態(tài)的RambusTM動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(RDRAM);暫停用于時(shí)鐘同步中央處理器單元(CPU)的時(shí)鐘信號(hào);和進(jìn)入所述低功耗狀態(tài)。
21.如權(quán)利要求20所述的制造裝置,所述程序代碼還包括接收用于準(zhǔn)備進(jìn)入更高功耗狀態(tài)的消息;準(zhǔn)備用于進(jìn)入更高存儲(chǔ)器功耗狀態(tài)的RDRAM;恢復(fù)用于時(shí)鐘同步所述CPU的所述時(shí)鐘信號(hào);和進(jìn)入所述更高功耗狀態(tài)。
22.如權(quán)利要求20所述的制造裝置,其中所述的接收消息的所述程序代碼還包括讀取用于準(zhǔn)備進(jìn)入C3功耗模式的第3級(jí)指令;施加停止時(shí)鐘信號(hào)(STPCLK)以停止CPU執(zhí)行;和進(jìn)入C2功耗模式。
23.如權(quán)利要求20所述的制造裝置,其中所述的準(zhǔn)備RDRAM的程序代碼還包括廢能高級(jí)圖形處理器(AGP);擦寫(xiě)所述RDRAM內(nèi)的緩沖區(qū);執(zhí)行電流和溫度校準(zhǔn);和除自刷新外,將RDRAM置于關(guān)機(jī)狀態(tài)。
24.一種系統(tǒng),包括處理器;耦合到所述處理器并能夠進(jìn)入第一低功耗模式的存儲(chǔ)器控制中心(MCH);和耦合到所述存儲(chǔ)器控制中心的存儲(chǔ)器,已經(jīng)在其中存儲(chǔ)了一系列指令,所述指令在被所述處理器執(zhí)行時(shí)能使所述處理器執(zhí)行;停止中央處理單元(CPU)的執(zhí)行;使所述CPU進(jìn)入C2模式;準(zhǔn)備各個(gè)部件進(jìn)入C3模式;從各個(gè)部件確認(rèn)它們準(zhǔn)備進(jìn)入所述C3模式;和為了減少功耗停止CPU時(shí)鐘。
25.如權(quán)利要求24所述的系統(tǒng),還包括耦合到所述MCH以在所述第二低功耗模式期間用于傳送數(shù)據(jù)到所述存儲(chǔ)器和從所述存儲(chǔ)器傳送數(shù)據(jù)的高級(jí)圖形處理器(AGP);
26.如權(quán)利要求24所述的系統(tǒng),還包括耦合到所述處理器和所述時(shí)鐘合成器并被配置為對(duì)不同的功耗模式傳送不同時(shí)鐘信號(hào)的第一時(shí)鐘總線;和耦合到所述MCH和所述時(shí)鐘合成器并被配置為對(duì)不同的功耗模式傳送不同時(shí)鐘信號(hào)的第二時(shí)鐘總線。
27.如權(quán)利要求24所述的系統(tǒng),其中,所述的C3模式是高級(jí)配置及電源接口(ACPI)C3狀態(tài)。
全文摘要
一種用于節(jié)約功耗的機(jī)制包括處理器,存儲(chǔ)器和存儲(chǔ)器控制中心(MCH)。該存儲(chǔ)器被耦合到處理器并且MCH也被耦合到處理器。為了節(jié)約功耗,MCH還被配置以在至少兩個(gè)功耗模式之間切換。
文檔編號(hào)G06F1/32GK1419666SQ01807150
公開(kāi)日2003年5月21日 申請(qǐng)日期2001年3月6日 優(yōu)先權(quán)日2000年3月24日
發(fā)明者薩特齊特阿南德·加南, 西丹耶拉達(dá)那·西麗蓬 申請(qǐng)人:英特爾公司