專利名稱:電源管理方法及應(yīng)用該方法的電子系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子系統(tǒng)的電源管理方法,特別是涉及具有高級配置與電源接口(Advanced Configuration and Power Interface, ACPI)的電子系統(tǒng)的電源管理方法。
背景技術(shù):
如何降低非使用中處于閑置狀態(tài)的計算機與子系統(tǒng)及其周邊設(shè)備的用電量、延長電池使用效率等,其對于計算機系統(tǒng)電子系統(tǒng),特別是對使用電池供應(yīng)電力的便攜式周邊設(shè)備電子系統(tǒng)(例如,筆記型計算機,平板計算機或移動電話)至為重要。因此電子系統(tǒng)中往往都會執(zhí)行電源管理,電源管理的規(guī)范有很多,例如高級配置與電源接口(AdvancedConfiguration and Power Interface或ACPI)規(guī)范,是一套有關(guān)電源管理標(biāo)準(zhǔn)的共同開放規(guī)范,乃由Intel, Microsoft, Toshiba等公司所共同所制定,高級配置與電源接口 ACPI搭配電子系統(tǒng)的硬件可提供該電子系統(tǒng)適當(dāng)?shù)碾娫磁c主機工作頻率,來達到省電與效率并存的目標(biāo)。值得注意的是,高級配置與電源接口 ACPI為在軟件(如,操作系統(tǒng))和硬件之間的一個共用電源管理接口,其電源管理由操作系統(tǒng)(Operation System)來直接主導(dǎo),非由BIOS此一固件(firmware)所主導(dǎo),可藉此改進先前各別廠商所制定的規(guī)格無法統(tǒng)一的情況。一般來說,操作系統(tǒng)都是參考應(yīng)用程序的設(shè)定或是使用者的設(shè)定來當(dāng)作進入省電模式的依據(jù),操作系統(tǒng)使用高級配置與電源接口 ACPI去控制硬件的電源狀態(tài)包括工作狀態(tài)(G0)、休眠狀態(tài)(G1)、軟件斷離狀態(tài)(G2)、硬件斷開狀態(tài)(G3)。在一般環(huán)境下,系統(tǒng)介于工作狀態(tài)(GO)與休眠狀態(tài)(Gl)間的切換較多,其中系統(tǒng)又具有裝置支持的電源省電層級及中央處理單元支持的省電層級。其中ACPI定義的中央處理單元的電源狀態(tài)(CO、Cl、C2,-1nstate)皆是在工作狀態(tài)(GO)內(nèi)所定義的,其中在CO狀態(tài)時處理器仍正常處理指令,而當(dāng)計算機系統(tǒng)于一段時間內(nèi)閑置,操作系統(tǒng)則會將中央處理單元設(shè)置為低功耗狀態(tài),例如(C1、C2至Cn狀態(tài))。高級配置與電源接口 ACPI中定義中央處理單元的低功耗狀態(tài)包括Cl狀態(tài)、C2狀態(tài)、C3狀態(tài)和C4狀態(tài),C2狀態(tài)比Cl狀態(tài)省電,C3狀態(tài)比C2狀態(tài)省電,C4狀態(tài)比C3狀態(tài)省電。在C2狀態(tài)中,中央處理單元不執(zhí)行任何指令,但能監(jiān)控總線主控裝置(Bus Master)的存取操作。其中總線主控裝置(Bus Master)為計算機系統(tǒng)中控制總線的元件,例如USB控制器、PCI控制器等等。在C3狀態(tài)中,中央處理單元時鐘停止,亦無法監(jiān)控總線主控裝置的存取操作,C4狀態(tài)與C3狀態(tài)相比,中央處理單元的電壓會被降低,以便處于更深度的低功耗狀態(tài)中。當(dāng)電子系統(tǒng)中的操作系統(tǒng)檢測到電子系統(tǒng)中無任何動作超過一段既定時間,將使中央處理單元進入C3或C4狀態(tài),借此使得電子系統(tǒng)更有效地降低功耗。在C2狀態(tài)下,若有中斷事件產(chǎn)生或中央處理單元被請求執(zhí)行指令時,中央處理單元會從C2狀態(tài)回到CO狀態(tài)。而在C3或C4狀態(tài)下,如果有中斷事件發(fā)生,中央處理單元會被從C3或C4狀態(tài)喚醒到CO狀態(tài);如果有總線主控裝置的存取請求發(fā)生,中央處理單元會被從C3或C4狀態(tài)喚醒到C2狀態(tài)。
發(fā)明內(nèi)容
本發(fā)明揭示一種電源管理方法,適用于一電子系統(tǒng)上,其中上述電子系統(tǒng)包括一中央處理單元以及多個周邊模塊,而上述中央處理單元的電源狀態(tài)具有至少一工作狀態(tài)、一第一低功耗狀態(tài)、一第二低功耗狀態(tài),上述電源管理方法包括當(dāng)接收到一要求中央處理單元進入第二低功耗狀態(tài)請求時,將上述中央處理單元設(shè)置為上述第一低功耗狀態(tài);取得各上述周邊模塊的一第一閑置時間;根據(jù)各上述周邊模塊的上述第一閑置時間計算一第二閑置時間;判斷各上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求;以及當(dāng)于上述第二閑置時間內(nèi)上述周邊模塊皆未發(fā)出數(shù)據(jù)存取請求時,將上述中央處理單元設(shè)為上述第二低功耗狀態(tài),其中,各上述第一閑置時間分別為所對應(yīng)的上述周邊模塊于二組數(shù)據(jù)傳輸?shù)拈g隔時間。本發(fā)明揭示一種電子系統(tǒng),包括一中央處理單元,上述中央處理單元的電源狀態(tài)具有至少一工作狀態(tài)、一第一低功耗狀態(tài)、一第二低功耗狀態(tài);多個周邊模塊;以及一電源管理模塊,當(dāng)接收到一要求中央處理單元進入第二低功耗狀態(tài)請求時,將上述中央處理單元設(shè)置為上述第一低功耗狀態(tài),其中,上述電源管理模塊用以取得各上述周邊模塊的一第一閑置時間,根據(jù)各上述周邊模塊的上述第一閑置時間計算一第二閑置時間,以及判斷各上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求,其中,當(dāng)于上述第二閑置時間內(nèi)上述周邊模塊皆未發(fā)出數(shù)據(jù)存取請求時,上述電源管理模塊將上述中央處理單元設(shè)為上述第二低功耗狀態(tài),其中,各上述第一閑置時間分別為所對應(yīng)的上述周邊模塊于二組數(shù)據(jù)傳輸?shù)拈g隔時間。本發(fā)明能夠隨時根據(jù)周邊模塊不同的情況來動態(tài)地調(diào)整第二閑置時間,進而可延長電子系統(tǒng)于第二低功耗狀態(tài)的時間,并且避免在某些情況下中央處理單元頻繁的在第一低功耗狀態(tài)以及第二低功耗狀態(tài)之間切換。
由閱讀以下詳細說明及結(jié)合附圖的舉例,可更完整地了解本發(fā)明所揭示的內(nèi)容圖1是顯示根據(jù)本發(fā)明一實施例的電子系統(tǒng);圖2是顯示根據(jù)本發(fā)明一實施例的一電子系統(tǒng)的電源管理方法流程圖;圖3是顯示根據(jù)本發(fā)明另一實施例的一電子系統(tǒng)的電源管理方法流程圖;以及圖4是顯示周邊模塊的數(shù)據(jù)傳輸?shù)囊粚嵤├臓顟B(tài)時序圖。附圖符號說明100 電子系統(tǒng)110 中央處理單元;122 電源管理模塊;124-1、124-2、124-3 周邊模塊;C0、C2、C3、C4 電源狀態(tài);IDLE 閑置/延遲提醒信號;t 時間軸;tl24_l、tl24_2、tl24_3 第一閑置時間;
Tidle 第二閑置時間;T0、T1、T2、T3、T4、T5 時間。
具體實施例方式以下敘述顯示許多藉本發(fā)明完成的實施例。其敘述用以說明本發(fā)明的基本概念并不帶有限定的含意。本發(fā)明的范圍在本發(fā)明的權(quán)利要求中有最佳的界定。本發(fā)明提供一種電源管理方法,適用于具有一高級配置與電源接口(AdvancedConfiguration and Power Interface,ACPI)的電子系統(tǒng)上。本發(fā)明根據(jù)目前系統(tǒng)的實際操作狀況,動態(tài)改變閑置計時器的計時周期,在一些實施例中還預(yù)測閑置的持續(xù)時間,藉此來決定是否進入更低功耗的狀態(tài),以達到系統(tǒng)功耗與性能的均衡。另一方面,還根據(jù)目前的電子系統(tǒng)的狀態(tài)通知各周邊模塊調(diào)整數(shù)據(jù)傳輸?shù)臅r機,因此更為延長中央處理單元處于低功耗狀態(tài)的時間。圖1是顯示根據(jù)本發(fā)明一實施例的電子系統(tǒng)。電子系統(tǒng)100主要包括一中央處理單元110以及周邊模塊124-1、124-2、124-3,電子系統(tǒng)100舉例而言,采用高級配置與電源接口(Advanced Configuration and Power Interface,ACPI)來定義中央處理單兀 110的電源狀態(tài),則中央處理單元110的電源狀態(tài)包括一工作狀態(tài)(COstate)以及多個低功耗狀態(tài)(例如Cl狀態(tài)、C2狀態(tài)、C3狀態(tài)和C4狀態(tài)等)。在一實施例中,電子系統(tǒng)100還包括一電源管理模塊122,電源管理模塊122例如一電源管理單兀(Power Management Unit,PMU),其可用以控制中央處理單元110的電源狀態(tài)。其中周邊模塊124-1、124-2、124-3可為總線控制元件(Bus Master)或各種輸入/輸出裝置,例如,PCIE控制器、PCI控制器、HDAudio控制器、SDIO以及存儲器接口控制器、鍵盤/鼠標(biāo)控制器、USB控制器等,但并不限制于此。在電子系統(tǒng)100為X86平臺的計算機系統(tǒng)的實施例中,電源管理模塊122以及周邊模塊124-1、124_2、124_3內(nèi)建于一芯片組(chipset)中。在一些實施例中,電源管理模塊122可產(chǎn)生閑置提醒信號或延遲提醒信號給所有周邊模塊124-1、124-2、124-3,以建議周邊模塊124-1、124-2、124-3進行數(shù)據(jù)傳輸?shù)臅r機,從而延長中央處理單元處于更低的低功耗狀態(tài)的時間。應(yīng)了解到,本發(fā)明實施例中以三個周邊模塊僅用以作為舉例,然而本發(fā)明并非限制于此,電子系統(tǒng)100可僅僅具有單個周邊模塊,或是多個周邊模塊。圖2是根據(jù)本發(fā)明一實施例的一電子系統(tǒng)的電源管理方法流程圖。圖4表示周邊模塊124-1、124-2、124-3的數(shù)據(jù)傳輸?shù)囊粚嵤├臓顟B(tài)時序圖。以下藉由圖2的流程圖并結(jié)合圖4的數(shù)據(jù)傳輸狀態(tài)時序圖來說明本發(fā)明。在步驟S202中,電源管理模塊122接收操作系統(tǒng)(Operation System,圖未繪示)的要求中央處理單元110進入第二低功耗狀態(tài)(例如C3/C4狀態(tài))請求。接著在步驟S204中,電源管理模塊122先將中央處理單元110設(shè)置為第一低功耗狀態(tài)(例如C2狀態(tài)),如圖4中時間TO時接收到要求中央處理單元110進入第二低功耗狀態(tài)請求,中央處理單元110則由工作狀態(tài)(CO狀態(tài))切換至第一低功耗狀態(tài)(C2state)。這里先闡明操作系統(tǒng)如何決定進入第二低功耗狀態(tài)(例如C3/C4狀態(tài)),并向電源管理模塊122發(fā)出所述要求中央處理單元110進入第二低功耗狀態(tài)請求。當(dāng)電子系統(tǒng)100的操作系統(tǒng)中所有程序(process)都處于休眠狀態(tài)時,操作系統(tǒng)會將一閑置程序(idleprocess)作為活動程序。閑置程序請求將中央處理單元110設(shè)為低功耗狀態(tài)。操作系統(tǒng)根據(jù)電子系統(tǒng)100的歷史閑置狀況以及目前閑置狀況預(yù)測目前閑置的持續(xù)時間。將該持續(xù)時間與中央處理單元110的每個低功耗狀態(tài)(例如Cl狀態(tài)、C2狀態(tài)、C3狀態(tài)和C4狀態(tài)等)的閾值時間進行比較,以選擇一個既可以滿足低功耗狀態(tài)退出潛時(exit latency),又可以最大程度降低中央處理單元110功耗的低功耗狀態(tài)作為本次進入的目標(biāo)狀態(tài),例如該持續(xù)時間超過一既定時間,則選擇C3狀態(tài)作為目標(biāo)狀態(tài)。則操作系統(tǒng)使用驅(qū)動程序(driver)的接口函數(shù)通知電子系統(tǒng)100的硬件系統(tǒng)(如圖1的電子系統(tǒng)100)將中央處理單元110設(shè)置為所選的低功耗狀態(tài)。本發(fā)明的電子系統(tǒng)100的硬件系統(tǒng)(如圖1的電子系統(tǒng)100)接收到操作系統(tǒng)請求中央處理單元110進入C3/C4狀態(tài)的請求后,電子系統(tǒng)100的硬件系統(tǒng)并不會立即將中央處理單元110設(shè)置為C3/C4狀態(tài),而是首先將中央處理單元110設(shè)置為C2狀態(tài),接著啟動一閑置計時器,當(dāng)周邊模塊124-f 124-3中所有的總線主控元件在該閑置計時器的計時周期(Tidle)內(nèi)均未發(fā)出數(shù)據(jù)存取請求,則由電源管理模塊122控制對應(yīng)信號將中央處理單元110設(shè)置為C3/C4狀態(tài)。當(dāng)中央處理單元110設(shè)置為C3/C4狀態(tài)后,當(dāng)周邊模塊124_廣124-3中有總線主控元件發(fā)出數(shù)據(jù)存取請求時,中央處理單元110則會喚醒至C2狀態(tài)。在本發(fā)明一實施例中,該閑置計時器的計時周期(Tidle)可設(shè)定為一固定值,但實際的系統(tǒng)操作狀況具有差異,固定的計時周期并非適用各種實際的狀況。舉例來說,如果計時周期(Tidle)的數(shù)值過大,則中央處理單元110在C3/C4狀態(tài)的時間會減少,甚至是無法進入C3/C4狀態(tài),另一方面,如果計時周期(Tidle)的數(shù)值過小,則中央處理單元110會頻繁的在C2狀態(tài)與C3/C4狀態(tài)之間切換,以上狀況皆會使系統(tǒng)功耗產(chǎn)生無謂的消耗。因此以下藉由圖2的流程圖并結(jié)合圖4的數(shù)據(jù)傳輸狀態(tài)時序圖詳述在本發(fā)明的另一實施例中,如何動態(tài)決定該閑置計時器的計時周期(Tidle)。在步驟S206中,電源管理模塊122取得周邊模塊124-1、124-2、124-3的各個第一閑置時間t124_1、t124_2、t124_3,其中第一閑置時間t124_1、t124_2、t124_3分別為所對應(yīng)的周邊模塊124-1、124-2、124-3于二組數(shù)據(jù)傳輸?shù)拈g隔時間。以下以圖4來說明周邊模塊124-1、124-2、124-3的第一閑置時間t124_1、t124_2、t124_3。在圖4中,橫軸表示為時間軸,而時間軸上的長條矩型表示進行數(shù)據(jù)傳輸?shù)墓ぷ魅蝿?wù)。可注意到,數(shù)據(jù)傳輸大致上可分為傳輸時間段(即長條矩型在時間軸上的寬度)以及閑置時間段(即相鄰二個長條矩型之間空白在時間軸上的寬度),每個周邊模塊124-1、124-2、124-3可以根據(jù)自身的設(shè)計預(yù)估其第一閑置時間值(即圖4的相鄰二個長條矩型之間空白在時間軸上的寬度)并匯報至電源管理模塊122。以周邊模塊124-1為例說明第一閑置時間t124_i,假定周邊模塊124-1包括一可暫存連續(xù)IOOus數(shù)據(jù)分組的緩沖區(qū),并且當(dāng)該緩沖區(qū)填充至60% (即填充連續(xù)60us的數(shù)據(jù)分組)時啟動數(shù)據(jù)傳輸,以將緩沖區(qū)中的數(shù)據(jù)寫入動態(tài)隨機存取存儲器(DRAM)中。假定將緩沖區(qū)中的數(shù)據(jù)寫入動態(tài)隨機存取存儲器需要40us,當(dāng)周邊模塊124-1接收到數(shù)據(jù)分組時,先將數(shù)據(jù)暫存于內(nèi)部的緩沖區(qū),待緩沖區(qū)填充至60%時,再啟動數(shù)據(jù)傳輸(需時40us),接著60us后緩沖區(qū)又被填充至60%,則再次啟動數(shù)據(jù)傳輸,以此類推。則可知,周邊模塊124-1的傳輸時間段持續(xù)時間為40us,而閑置時間段(即第一閑置時間)t124-1則為60us。在步驟S208中,電源管理模塊122根據(jù)所取得的各周邊模塊124_1、124_2、124-3的各個第一閑置時間計算第二閑置時間Tidle。在一些實施例中,第二閑置時間Tidle為各第一閑置時間中最大者,舉例來說,若第一閑置時間tm-1大于t124_2以及t124_3,則第二閑置時間Tidle可設(shè)置為等于其中最大的第一閑置時間t124_i。在步驟S210中,電源管理模塊122判斷各周邊模塊是否于第二閑置時間Tidle內(nèi)皆未發(fā)出數(shù)據(jù)存取請求。舉例來說,在步驟S210中,電源管理模塊122可啟動閑置計時器來計時第二閑置時間Tidle。若閑置計時器在計時至第二閑置時間Tidle之后,周邊模塊124-1、124-2,124-3仍然都沒有數(shù)據(jù)傳輸時,如圖4中時間T1到T2期間周邊模塊124_1、124_2、124-3都未發(fā)出任何數(shù)據(jù)存取請求,則進入步驟S214。反之,若閑置計時器在計時第二閑置時間Tidle期間,周邊模塊124-1、124-2、124-3有任何一個周邊模塊發(fā)出數(shù)據(jù)存取請求時,則進入步驟S212。在步驟S212中,意即周邊模塊124-1、124-2、124-3之一于第二閑置時間Tidle內(nèi)發(fā)出數(shù)據(jù)存取請求,此時,電源管理模塊122維持中央處理單元110設(shè)置于第一低功耗狀態(tài)(例如C2狀態(tài)),并等待對應(yīng)的周邊模塊完成對應(yīng)的數(shù)據(jù)存取請求所對應(yīng)的數(shù)據(jù)傳輸之后返回到步驟S206。在一實施例中,若周邊模塊124-1、124-2、124-3之一于第二閑置時間Tidle內(nèi)發(fā)出數(shù)據(jù)存取請求時(即步驟S210的否),電源管理模塊122可重置(reset)上述閑置計時器,并于上述周邊模塊完成數(shù)據(jù)存取請求所對應(yīng)的數(shù)據(jù)傳輸后電子系統(tǒng)100再次閑置時,重新啟動閑置計時器以重新計時上述第二閑置時間(即執(zhí)行步驟S210)。本發(fā)明于一實施例中,電子系統(tǒng)100中的周邊模塊124-1、124-2、124-3的第一閑置時間t124_1、t124_2、t124_3相對穩(wěn)定時,當(dāng)步驟S212執(zhí)行完畢以后也可不返回到步驟S206,而是直接返回執(zhí)行步驟S210,即再次啟動閑置計時器以重新計時上述第二閑置時間。在另一實施例中,當(dāng)步驟S212執(zhí)行完畢以后可返回到步驟S206,由電源管理模塊122再次根據(jù)取得的各周邊模塊124-1、124-2、124-3的閑置時間計算第二閑置時間Tidle。在步驟S214中,意即周邊模塊124-1、124-2、124-3于第二閑置時間Tidle內(nèi)皆未發(fā)出數(shù)據(jù)傳輸請求,參照圖4中時間T2,此時,電源管理模塊122將中央處理單元110設(shè)為第二低功耗狀態(tài)(如C3/C4狀態(tài)),以降低電子系統(tǒng)100的功率損耗。另一方面,當(dāng)中央處理單元110進入第二低功耗狀態(tài)之 后,若周邊模塊124-1、124-2、124-3之一于發(fā)出數(shù)據(jù)存取請求,參照圖4的時間T3,如果周邊模塊124-1發(fā)出數(shù)據(jù)存取請求,則電源管理模塊122則會將中央處理單元110從第二低功耗狀態(tài)(如C3/C4狀態(tài))喚醒至第一低功耗狀態(tài)(如C2狀態(tài))以進行對應(yīng)的數(shù)據(jù)傳輸。應(yīng)了解到,由于中央處理單元110在未進入第二低功耗狀態(tài)以前,電源管理模塊122會不斷地返回到步驟S206以取得周邊模塊124-1、124-2、124-3新的第一閑置時間t124-!> t124_2、t124_3,并接著于步驟S208中計算新的第二閑置時間Tidle,故本發(fā)明能隨時動態(tài)改變閑置計時器的計時周期,即第二閑置時間Tidle,來決定是否進入更低功耗的狀態(tài)。因此,相較于將閑置計時器的計時周期設(shè)置為固定值,本發(fā)明還能夠隨時根據(jù)周邊模塊不同的情況來產(chǎn)生適當(dāng)長度的第二閑置時間Tidle,進而可延長電子系統(tǒng)于更低功耗狀態(tài)(如C3/C4狀態(tài))的時間,并且避免在某些情況下中央處理單元110頻繁的在第一低功耗狀態(tài)以及第二低功耗狀態(tài)之間切換。圖3是根據(jù)本發(fā)明另一實施例的一電子系統(tǒng)的電源管理方法流程圖。在步驟S302中,電源管理模塊122接收操作系統(tǒng)(Operation System,圖未繪示)的進入第二低功耗狀態(tài)(例如C3/C4狀態(tài))請求,接著在步驟S304中,電源管理模塊122先將中央處理單元110設(shè)置為第一低功耗狀態(tài)(例如C2狀態(tài))。
在步驟S306中,電源管理模塊122取得周邊模塊124_1、124_2、124-3的各個第一閑置時間tm、t124_2、t124_3,其中第一閑置時間tm、t124_2、t124_3分別為所對應(yīng)的周邊模塊124-1、124-2、124-3于二組數(shù)據(jù)傳輸?shù)拈g隔時間,如圖4所示。在步驟S308中,電源管理模塊122根據(jù)所取得的各周邊模塊124_1、124_2、124-3的各個第一閑置時間t124_p t124_2、t124_3計算第二閑置時間Tidle,在一些實施例中,第二閑置
時間 Tidle 為閑置時間 t!24-1、t124—2、^124-3 中最大者,或是可為第一閑置時間 tl24-l、ti24-2、^124-3
中最大者再乘上適當(dāng)?shù)募訖?quán)值。接著,在步驟S310中,電源管理模塊122還估計此次電子系統(tǒng)100的預(yù)測閑置時間。舉例來說,電子系統(tǒng)100的閑置時間為周邊模塊皆未發(fā)出任何數(shù)據(jù)存取請求的時間,如圖4的Tl至T3的時間區(qū)間??筛鶕?jù)該電子系統(tǒng)100的多個歷史閑置時間以估計電子系統(tǒng)100本次的預(yù)測閑置時間,歷史閑置時間例如可為最近10次電子系統(tǒng)100的閑置時間。歷史閑置時間可由電源管理模塊122于每次電子系統(tǒng)100閑置時進行統(tǒng)計并儲存。電源管理模塊122取得多個歷史閑置時間后,可以加權(quán)平均各歷史閑置時間的方式估計此次電子系統(tǒng)100的預(yù)測閑置時間。接著,在步驟S312,電源管理模塊122判斷預(yù)測閑置時間減去第二閑置時間Tidle是否大于目標(biāo)閑置時間。當(dāng)預(yù)測閑置時間減去第二閑置時間Tidle大于目標(biāo)閑置時間時,繼續(xù)步驟S314。反之,當(dāng)預(yù)測閑置時間減去第二閑置時間Tidle不大于目標(biāo)閑置時間時,繼續(xù)步驟S316。其中,中央處理單元110在目標(biāo)閑置時間內(nèi)從第一低功耗狀態(tài)切換至第二低功耗狀態(tài)所消耗的功率、維持在第二低功耗狀態(tài)所消耗的功率以及從第二低功耗狀態(tài)切換回第一低功耗狀態(tài)所消耗的功率的總和等于中央處理單元110在目標(biāo)閑置時間內(nèi)維持在第一低功耗狀態(tài)所消耗的功率。由于中央處理單元110在第二低功耗狀態(tài)(如C3/C4狀態(tài))所消耗的功率消耗的功率小于第一低功耗狀態(tài)(如C2狀態(tài))所消耗的功率,但中央處理單元110在進入以及退出第二低功耗狀態(tài)(如C3/C4狀態(tài))時產(chǎn)生峰值功率,因此只有當(dāng)電子系統(tǒng)100的預(yù)測閑置時間足夠長(例如步驟S312,預(yù)測閑置時間大于目標(biāo)閑置時間),則表示此時中央處理單元110從進入第二低功耗狀態(tài)直至從第二低功耗狀態(tài)喚醒所消耗的功率會小于維持在第一低功耗狀態(tài)所消耗的功率,此時中央處理單元110進入第二低功耗狀態(tài)可減少功率消耗而不會造成系統(tǒng)功耗的浪費以及效能降低。在一些實施例中,目標(biāo)閑置時間可為一經(jīng)驗值或是藉由實驗求得的最適值,藉此得以判斷中央處理單元110進入第二低功耗狀態(tài)是否符合效益,避免中央處理單元110在第一低功耗狀態(tài)以及第二低功耗狀態(tài)的間頻繁切換,而造成計算機系統(tǒng)功率消耗反而增加。在步驟S314中,電源管理模塊122判斷各周邊模塊是否于第二閑置時間Tidle內(nèi)皆未發(fā)出數(shù)據(jù)存取請求。若是,則進入步驟S318。反之則進入步驟S316。步驟S314的相關(guān)技術(shù)細節(jié)類似圖2步驟S210,在此不再贅述。在步驟S316,電源管理模塊122維持中央處理單元110設(shè)置于第一低功耗狀態(tài)(如C2狀態(tài)),并等待對應(yīng)的周邊模塊完成對應(yīng)的數(shù)據(jù)存取請求所對應(yīng)的數(shù)據(jù)傳輸后之后返回到步驟S306。步驟S316的相關(guān)技術(shù)細節(jié)類似圖2步驟S212,在此不再贅述。在步驟S318,電 源管理模塊122將中央處理單元110設(shè)為第二低功耗狀態(tài)(如C3/C4狀態(tài)),以降低電子系統(tǒng)100的功率損耗。另一方面,當(dāng)中央處理單元110進入第二低功耗狀態(tài)之后,若周邊模塊124-1、124-2、124-3之一于發(fā)出數(shù)據(jù)存取請求,則電源管理模塊122則會將中央處理單元110從第二低功耗狀態(tài)喚醒至第一低功耗狀態(tài)以進行對應(yīng)的數(shù)據(jù)傳輸。步驟S318的相關(guān)技術(shù)細節(jié)類似圖2步驟S214,在此不再贅述。在本發(fā)明一些實施例中,當(dāng)電源管理模塊122接收到操作系統(tǒng)(OperationSystem)的要求中央處理單元進入第二低功耗狀態(tài)請求時(例如,步驟S202或步驟S302),電源管理模塊122還輸出閑置提醒信號至各周邊模塊124-1、124-2、124-3,而當(dāng)周邊模塊124-1、124-2、124-3接收到閑置提醒信號時加速數(shù)據(jù)傳輸。換句話說,借著在中央處理單元110設(shè)為第二低功耗狀態(tài)(C3/C4狀態(tài))之前盡量完成數(shù)據(jù)傳輸來騰空周邊模塊內(nèi)部緩沖區(qū)的空間,可延遲該周邊模塊進行下一次數(shù)據(jù)傳輸?shù)臅r間,進一步的延長了中央處理單元110在第二低功耗狀態(tài)(C3/C4狀態(tài))的時間。另一方面,當(dāng)中央處理單元110設(shè)為第二低功耗狀態(tài)時(例如,步驟S214或步驟S318),電源管理模塊122還輸出延遲提·醒信號至各周邊模塊124-1、124-2、124-3,當(dāng)周邊模塊124-1、124-2、124-3接收到上述延遲提醒信號時盡量延遲數(shù)據(jù)傳輸,藉此延遲該周邊模塊進行下一次數(shù)據(jù)傳輸?shù)臅r間,進一步的延長了中央處理單元110在第二低功耗狀態(tài)(C3/C4狀態(tài))的時間。以下詳述上述閑置/延遲提醒信號的一實施方式,請返回參考圖1,電源管理模塊122輸出IDLE信號給所有周邊模塊124-1、124-2、124-3,以建議每個周邊模塊進行數(shù)據(jù)傳輸?shù)臅r機。閑置/延遲提醒信號以表I所示的2位元的IDLE信號為例,當(dāng)然這里并非限制閑置/延遲提醒信號為下述表I的形式,也可以是其它形式:
權(quán)利要求
1.一種電源管理方法,適用于一電子系統(tǒng)上,其中上述電子系統(tǒng)包括一中央處理單元以及多個周邊模塊,而上述中央處理單元的電源狀態(tài)具有至少一工作狀態(tài)、一第一低功耗狀態(tài)、一第二低功耗狀態(tài),上述電源管理方法包括:當(dāng)接收到一要求中央處理單元進入第二低功耗狀態(tài)請求時,將上述中央處理單元設(shè)置為上述第一低功耗狀態(tài);取得各上述周邊模塊的一第一閑置時間;根據(jù)各上述周邊模塊的上述第一閑置時間計算一第二閑置時間;判斷各上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求;以及當(dāng)于上述第二閑置時間內(nèi)上述周邊模塊皆未發(fā)出數(shù)據(jù)存取請求時,將上述中央處理單元設(shè)為上述第二低功耗狀態(tài),其中,各上述第一閑置時間分別為所對應(yīng)的上述周邊模塊于二組數(shù)據(jù)傳輸?shù)拈g隔時間。
2.如權(quán)利要求1所述的方法,還包括:當(dāng)上述周邊模塊之一于上述第二閑置時間內(nèi)發(fā)出數(shù)據(jù)存取請求時,維持上述中央處理單元設(shè)置于上述第一低功耗狀態(tài);以及當(dāng)上述周邊模塊完成數(shù)據(jù)存取請求所對應(yīng)的數(shù)據(jù)傳輸后,重新計時上述第二閑置時間以再判斷各上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求。
3.如權(quán)利要求1所述的方法,還包括:估計上述電子系統(tǒng)的一預(yù)測閑置時間;判斷上述預(yù)測閑置時間減去上述第二閑置時間是否大于一目標(biāo)閑置時間;以及當(dāng)上述預(yù)測閑置時間減去上述第二閑置時間小于上述目標(biāo)閑置時間時,則不執(zhí)行判斷上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求的步驟,并維持上述中央處理單元設(shè)置于上述第一低功耗狀態(tài)。
4.如權(quán)利要求3所述的方法,其中還包括:取得上述電子系統(tǒng)的多個歷史閑置時間;以及將上述歷史閑置時間加權(quán)平均以計算上述預(yù)測閑置時間。
5.如權(quán)利要求1所述的方法,其中上述要求中央處理單元進入第二低功耗狀態(tài)請求是由一操作系統(tǒng)發(fā)出。
6.如權(quán)利要求1所述的方法,其中上述第二閑置時間設(shè)置為上述周邊模塊的上述第一閑置時間的最大者。
7.如權(quán)利要求1所述的方法,其中當(dāng)接收到上述要求中央處理單元進入第二低功耗狀態(tài)請求時,還輸出一閑置提醒信號至上述周邊模塊;以及當(dāng)上述周邊模塊接收到上述閑置提醒信號時加速數(shù)據(jù)傳輸,其中當(dāng)上述中央處理單元設(shè)為上述第二低功耗狀態(tài)時,還輸出一延遲提醒信號至上述周邊模塊;以及當(dāng)上述周邊模塊接收到上述延遲提醒信號時延遲數(shù)據(jù)傳輸。
8.如權(quán)利要求1所述的方法,其中上述第一低功耗狀態(tài)為一高級配置與電源接口定義的C2狀態(tài),上述第二低功耗狀態(tài)為所述高級配置與電源接口定義的C3狀態(tài)或C4狀態(tài)。
9.一種電子系統(tǒng),包括:一中央處理單元,上述中央處理單元的電源狀態(tài)具有至少一工作狀態(tài)、一第一低功耗狀態(tài)、一第二低功耗狀態(tài);多個周邊模塊;以及一電源管理模塊,當(dāng)接收到一要求中央處理單元進入第二低功耗狀態(tài)請求時,將上述中央處理單元設(shè)置為上述第一低功耗狀態(tài),其中,上述電源管理模塊用以取得各上述周邊模塊的一第一閑置時間,根據(jù)各上述周邊模塊的上述第一閑置時間計算一第二閑置時間,以及判斷各上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求,其中,當(dāng)于上述第二閑置時間內(nèi)上述周邊模塊皆未發(fā)出數(shù)據(jù)存取請求時,上述電源管理模塊將上述中央處理單元設(shè)為上述第二低功耗狀態(tài),其中,各上述第一閑置時間分別為所對應(yīng)的上述周邊模塊于二組數(shù)據(jù)傳輸?shù)拈g隔時間。
10.如權(quán)利要求9所述的電子系統(tǒng),其中當(dāng)上述周邊模塊之一于上述第二閑置時間內(nèi)發(fā)出數(shù)據(jù)存取請求時,上述電源管理模塊維持上述中央處理單元設(shè)置于上述第一低功耗狀態(tài),當(dāng)上述周邊模塊于完成數(shù)據(jù)存取請求所對應(yīng)的數(shù)據(jù)傳輸后,上述電源管理模塊再判斷各上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求。
11.如權(quán)利要求10所述的電子系統(tǒng),其中上述電源管理模塊還包括一閑置計時器,該閑置計時器計時上述第二閑置時間,當(dāng)上述周邊模塊完成數(shù)據(jù)存取請求所對應(yīng)的數(shù)據(jù)傳輸后,上述電源管理模塊重新啟動該閑置計時器。
12.如權(quán)利要求9所述的電子系統(tǒng),其中上述電源管理模塊還估計上述電子系統(tǒng)的一預(yù)測閑置時間,以及判斷上述預(yù)測閑置時間減去上述第二閑置時間是否大于一目標(biāo)閑置時間,其中,當(dāng)上述預(yù)測閑置時間減去上述第二閑置時間小于上述目標(biāo)閑置時間時,上述電源管理模塊則不判斷上述周邊模塊是否于上述第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求,并維持上述中央處理單元設(shè)置于上述第一低功耗狀態(tài)。
13.如權(quán)利要求12所述的電子系統(tǒng),其中上述電源管理模塊還取得上述電子系統(tǒng)的多個歷史閑置時間,并將上述歷史閑置時間加權(quán)平均以計算上述預(yù)測閑置時間。
14.如權(quán)利要求9所述的電子系統(tǒng),其中上述要求中央處理單元進入第二低功耗狀態(tài)請求是由一操作系統(tǒng)發(fā)出。
15.如權(quán)利要求11所述的電子系統(tǒng),其中上述第二閑置時間設(shè)置為上述周邊模塊的上述第一閑置時間的最大者。
16.如權(quán)利要求11所述的電子系統(tǒng),其中當(dāng)上述電源管理模塊接收到上述要求中央處理單元進入第二低功耗狀態(tài)請求時,上述電源管理模塊還輸出一閑置提醒信號至上述周邊模塊,而當(dāng)上述周邊模塊接收到上述閑置提醒信號時加速數(shù)據(jù)傳輸,其中當(dāng)上述中央處理單元設(shè)為上述第二低功耗狀態(tài)時,上述電源管理模塊還輸出一延遲提醒信號至上述周邊模塊,而當(dāng)上述周邊模塊接收到上述延遲提醒信號時暫停數(shù)據(jù)傳輸。
17.如權(quán)利要求11所述的電子系統(tǒng),其中上述第一低功耗狀態(tài)為一高級配置與電源接口定義的C2狀態(tài),上述第二低功耗狀態(tài)為所述高級配置與電源接口定義的C3狀態(tài)或C4狀態(tài)。
全文摘要
本發(fā)明揭示一種電源管理方法及應(yīng)用該方法的電子系統(tǒng)。該電源管理方法,適用于包括中央處理單元以及多個周邊模塊的電子系統(tǒng)上,且中央處理單元的電源狀態(tài)具有至少工作狀態(tài)、第一低功耗狀態(tài)、第二低功耗狀態(tài)。電源管理方法包括當(dāng)接收到要求中央處理單元進入第二低功耗狀態(tài)請求時,將中央處理單元設(shè)置為第一低功耗狀態(tài);取得各周邊模塊的第一閑置時間以計算第二閑置時間;判斷各周邊模塊是否于第二閑置時間內(nèi)皆未發(fā)出數(shù)據(jù)存取請求,當(dāng)?shù)诙e置時間內(nèi)周邊模塊皆未發(fā)出數(shù)據(jù)存取請求時,將中央處理單元設(shè)為第二低功耗狀態(tài),其中,第一閑置時間分別為所對應(yīng)的周邊模塊于二組數(shù)據(jù)傳輸?shù)拈g隔時間。
文檔編號G06F1/32GK103076868SQ20131000348
公開日2013年5月1日 申請日期2013年1月6日 優(yōu)先權(quán)日2013年1月6日
發(fā)明者齊宗普, 楊小露 申請人:威盛電子股份有限公司