專利名稱:中央處理器的省電方法及系統的制作方法
技術領域:
本發明涉及一種中央處理器的省電方法及系統,特別涉及一種中央處理器在無法窺視事件的休眠狀態下發生總線主控器要求事件時的處理方法及系統。
背景技術:
在現今生活中,電力為不可獲缺的能源之一,舉凡周遭所看到的電器皆需有電源方能運作。可想而知,倘若缺少電源,生活將會變的相當不便,因此為了避免耗費過多電源導致電源短缺,現今各種電器皆講究高效率且省電,計算機系統亦是如此,尤其是筆記型計算機。
目前的計算機系統,例如個人計算機或者筆記型計算機皆設置有電源管理系統,而其中最普遍的電源管理系統即為先進結構電源接口(AdvancedConfiguration and Power Interface,ACPI)。先進結構電源接口所制定的電源狀態包含有系統狀態G(Global)、裝置狀態D(Device)、休眠狀態S(Sleeping)以及中央處理器狀態C(CPU),系統狀態定義計算機系統整體的電源狀態,裝置狀態定義計算機系統中各裝置的電源狀態,休眠狀態為計算機系統在操作系統閑置時的省電狀態,而中央處理器狀態定義為中央處理器的電源狀態。其中,中央處理器狀態具有C0、C1、C2、C3四個層級,計算機系統運作時,操作系統會依據中央處理器目前的使用狀態驅使中央處理器進入適當的狀態。
上述的C0狀態為中央處理器可正常執行指令的處理狀態,而C1、C2與C3狀態分別為中央處理器三種不同層級的休眠狀態。C1狀態為中央處理器可在最短的時間回復至C0狀態的休眠狀態;C2狀態較為C1狀態省電,中央處理器在C2狀態下僅執行部份功能,例如窺視(snooping)處理事件功能,以窺視總線主控器要求(bus master request)事件并進行處理,使計算機系統的周邊裝置可讀取系統內存的數據;在C3狀態下中央處理器幾乎不執行任何功能,所以為最省電的休眠狀態。
請參閱圖1,其為現有技術的先進結構電源接口的中央處理器狀態切換圖。如圖所示,當中央處理器處于C1、C2或C3狀態下,系統芯片接收到周邊裝置所發送的一中斷(interrupt)事件時,中央處理器均會回復至C0狀態以處理中斷事件。除此之外,當中央處理器處于C3狀態下,若有周邊裝置欲讀取系統內存的數據而發送總線主控器要求事件時,中央處理器也會回到C0狀態以進行處理。其是因為C3狀態為無法窺視事件的休眠狀態,所以中央處理器必須從C3狀態返回C0狀態以恢復窺視事件的功能,始可窺視總線主控器要求事件而進行處理,使周邊裝置可讀取系統內存的數據。
中央處理器處理完總線主控器要求事件后,必須停留在C0狀態直到符合進入C3狀態的條件時,操作系統才會驅使中央處理器再度進入C3狀態。但是,中央處理器在C2狀態下即可窺視總線主控器要求事件并進行處理,所以驅使中央處理器自C3狀態返回C0狀態的處理方式將會使得中央處理器耗費更多電源。
發明內容
有鑒于此,本發明提供一種中央處理器的省電方法,適用于中央處理器處于一無法窺視事件的休眠狀態,且一周邊裝置發送一總線主控器要求事件時。本發明的方法首先發送一第一控制信息至中央處理器,驅使中央處理器離開無法窺視事件的休眠狀態,進入一可執行指令的處理狀態;接著,阻止一回復信息傳送至中央處理器;然后,發送一第二控制信息至中央處理器,驅使中央處理器進入一可窺視事件的休眠狀態,且開啟仲裁器以傳送總線主控器要求事件至中央處理器進行處理,如此即可達到省電的目的。
本發明另提供一種中央處理器的省電系統,適用于中央處理器處于無法窺視事件的休眠狀態,且周邊裝置發送總線主控器要求事件時。本發明的系統包含一仲裁器用以傳送總線主控器要求事件至中央處理器,以及一系統芯片用以接收總線主控器要求事件,并發送一第一控制信息與一第二控制信息至中央處理單元,以驅使中央處理單元離開無法窺視事件的休眠狀態,進入可窺視事件的休眠狀態以處理總線主控器要求事件,如此即可達到省電的目的。
圖1為現有技術的先進結構電源接口的中央處理器狀態的切換圖;圖2為本發明實施例的方塊圖;以及圖3為本發明實施例的流程圖。
附圖符號說明10中央處理器20系統芯片23仲裁器25電源管理單元30系統內存35周邊裝置具體實施方式
本發明提出一種中央處理器的省電方法及系統,使中央處理器在無法窺視事件的C3狀態并接收到總線主控器要求事件時,進入可窺視事件的C2狀態,以窺視并處理總線主控器要求事件,以解決上述的問題。
請參閱圖2,其為本發明實施例的方塊圖。如圖所示,本發明包含一系統芯片20,其耦接于中央處理器10,并設有一仲裁器23與一電源管理單元25,此系統芯片20更耦接一系統內存30與一周邊裝置35。當周邊裝置35欲讀取系統內存35的數據時,會發送一總線主控器要求事件至系統芯片20,系統芯片20則通過仲裁器23傳送總線主控器要求事件至中央處理器10,以供中央處理器10窺視并進行處理。系統芯片20的電源管理單元25用于發送控制信息至中央處理器10,以驅使中央處理器10依據當下的使用狀態進入不同電源狀態。
當操作系統檢測到目前中央處理器10的運作狀態并不忙碌,且符合進入C3狀態的條件時,操作系統會驅使中央處理器10進入C3狀態。為了避免中央處理器10在進入C3狀態后,系統芯片20通過仲裁器23傳送所接收的總線主控器要求事件或者中斷事件至中央處理器10,所以操作系統會先驅使系統芯片20關閉仲裁器23直到中央處理器10離開C3狀態。中央處理器10在離開C3狀態后隨即進入可執行指令的C0狀態。為了控制仲裁器23,操作系統會發出控制命令,系統芯片20即依據控制命令傳送一回復信息至中央處理器10并開啟仲裁器23,中央處理器10必須接收到回復信息后,才會擷取操作系統的指令繼續執行。
如上述,中央處理器10進入C0狀態后,必須等待一段時間,直到符合進入C3狀態的條件時才會再進入C3狀態,若中央處理器10處理完總線主控器要求事件或中斷事件后,無須處理其它事件,則中央處理器10需耗費多余電源在C0狀態等待。然而,中央處理器10在C2狀態下即可窺視事件狀態,如果使中央處理器10可自C3狀態進入C2狀態以處理總線主控器要求事件,并在處理完畢后回到C3狀態,即可節省中央處理器10在處理總線主控器要求事件時與等待回復至C3狀態時所耗費的電源。
由于系統芯片20的電源管理單元25僅會驅使中央處理器10在C0與C2狀態及C0與C3狀態間相互轉換,無法直接在C2與C3狀態間轉換,因此為使中央處理器10可自C3狀態進入C2狀態,必須藉由過渡至C0狀態方能達到。亦即,中央處理器10需自C3狀態先轉換至C0狀態后再轉換至C2狀態;同理,中央處理器10欲自C2狀態回復至C3狀態時亦須先經過C0狀態。但C0狀態僅為方便中央處理器10在C2與C3狀態互轉的過渡狀態,中央處理器10并不需真正進入C0狀態執行任何指令,因此系統芯片20需防止中央處理器10擷取指令,并對應開啟或關閉仲裁器23。
基于上述原因,所以本發明在中央處理器10離開C3狀態進入C0狀態以處理總線主控器要求事件時,阻止系統芯片20傳送與操作系統的控制命令對應的回復信息至中央處理器10,使中央處理器10無法接續擷取指令而脫離操作系統的控制,并且藉由電源管理單元25驅使中央處理器10進入C2狀態,以處理總線主控器要求事件。在處理總線主控器要求事件完成后,同樣藉由電源管理單元25驅使中央處理器10離開C2狀態通過C0狀態返回至C3狀態,直至系統芯片30接收到中斷事件才驅使中央處理器返回C0狀態,并傳送回復信息至中央處理器10,使中央處理器10回復正常執行指令的處理狀態,以處理中斷事件。
請參閱圖3,其為本發明實施例的流程圖。如步驟S0所示,中央處理器10現處于無法窺視事件的C3休眠狀態,此時仲裁器23為關閉;之后周邊裝置35如步驟S1所示,發送總線主控器要求事件至系統芯片20,首先系統芯片20的電源管理單元25執行步驟S2,發送一第一控制信息至中央處理器10,驅使中央處理器10離開C3狀態而進入C0狀態。電源管理單元25可通過發送一中斷信號或根據總線主控器要求事件發送此第一控制信息至中央處理器10,使中央處理器10離開C3狀態。
之后,系統芯片20會進行步驟S3,阻止回復信息傳送至中央處理器10。由于中央處理器在C0狀態下藉由仲裁器23傳送總線主控器要求事件或者中斷事件,以進行對應的處理,若回復信息傳送至中央處理器10,則仲裁器23隨即開啟,使中央處理器10可開始正常工作,無法達到本發明欲在C2休眠狀態處理總線主控器要求事件的目的。
隨后,進行步驟S4,發送一第二控制信息至中央處理器10,驅使中央處理器10離開C0狀態而進入可窺視事件的C2狀態,待中央處理器10進入C2狀態后開啟仲裁器23,以通過仲裁器23傳送總線主控器要求事件至中央處理器10進行處理。
當系統芯片20檢測得知中央處理器10處理完總線主控器要求事件時,將接續進行步驟S5,關閉仲裁器23;然后,系統芯片20會如步驟S6所示,發送一第三控制信息至中央處理器10,驅使中央處理器10離開C2狀態進入C0狀態,此時中央處理器10仍不會擷取執行指令。在步驟S5需先行關閉仲裁器23的原因在于,若仲裁器23未關閉即令中央處理器10進入C0狀態,將如上述中央處理器10得以接收其它總線主控器要求事件或者中斷事件。為使中央處理器10可在C0狀態下不處理任何事件,須在進入C0狀態前先行關閉仲裁器23。
接著,系統芯片20執行步驟S7,發送一第四控制信息至中央處理器10,驅使中央處理器10離開C0狀態回復至C3狀態。如此中央處理器10即可在C2狀態處理完總線主控器要求事件后又回復至C3狀態,以達到降低中央處理器10消耗電源的目的。
中央處理器10在處理完總線主控器要求事件且回復至C3狀態后,若周邊裝置35又發送一處理事件,系統芯片20即執行步驟S8,判斷處理事件是否為中斷事件。倘若周邊裝置35所發送的處理事件為總線主控器要求事件時,則進行步驟S9,再次發送第一控制信息至中央處理器10,驅使中央處理器10離開C3狀態,并且重復執行步驟S4至步驟S7,使中央處理器10進入C2狀態處理總線主控器要求事件,并在結束后回復至C3狀態。
倘若周邊裝置35所發送的處理事件為中斷事件時,由于中斷事件無法在休眠狀態下處理,因此中央處理器10必須離開C3狀態進入C0狀態以處理中斷事件。所以系統芯片20會執行步驟S10,發送第一控制信息至中央處理器10,驅使中央處理器10離開C3狀態而進入C0狀態,并且傳送回復信息至中央處理器10,驅使中央處理器10恢復擷取指令。此時中央處理器10會擷取并執行操作系統的指令,驅使系統芯片20開啟仲裁器23,以傳送中斷事件至中央處理器10進行處理。
簡言之,當周邊裝置35所發送的處理事件為總線主控器要求事件時,中央處理器10必須自C3狀態經由C0狀態進入C2狀態處理,之后系統芯片20阻止回復信息傳送至中央處理器10,仲裁器23在C3狀態過渡至C0狀態時皆為關閉,僅在進入C2狀態處理總線主控器要求事件時為開啟,并在離開C2狀態前關閉。當周邊裝置35所發送的處理事件為中斷事件時,中央處理器10則自C3狀態進入C0狀態處理,系統芯片20正常傳送回復信息,仲裁器23在C3狀態時為關閉,在C0狀態時為開啟。
綜上所述,本發明的中央處理器的省電方法及系統,是在中央處理器在無法窺視事件的C3休眠狀態下,且周邊裝置發送總線主控器要求事件時,先驅使中央處理器離開無法窺視事件的C3休眠狀態,并且阻止回復信息傳送至中央處理器,接著驅使中央處理器經由C0狀態進入可窺視事件的C2休眠狀態,讓中央處理器可窺視總線主控器要求事件以進行處理。待中央處理器處理完成總線主控器要求事件后,再驅使中央處理器離開可窺視事件的C2休眠狀態,并且經由C0狀態而回復到無法窺視事件的C3休眠狀態,如此即可達到省電的目的。
惟以上所述者,僅為本發明的一較佳實施例而已,并非用來限定本發明實施的范圍,舉凡依本發明申請專利范圍所述的形狀、構造、特征及精神所為的均等變化與修飾,均應包括在本發明的申請專利范圍內。
權利要求
1.一種中央處理器的省電方法,適用于一中央處理器處于一無法窺視事件的休眠狀態,且一周邊裝置發送一總線主控器要求事件時,該方法包含有下列步驟發送一第一控制信息至該中央處理器,驅使該中央處理器離開該無法窺視事件的休眠狀態;及發送一第二控制信息至該中央處理器,驅使該中央處理器進入一可窺視事件的休眠狀態;其中,該中央處理器離開該無法窺視事件的休眠狀態后,先進入一可執行指令的處理狀態,再進入該可窺視事件的休眠狀態。
2.如權利要求1所述的省電方法,其中,該中央處理器離開該無法窺視事件的休眠狀態后,更包含阻止一系統芯片傳送一回復信息至該中央處理器。
3.如權利要求1所述的省電方法,其中,該中央處理器進入該可窺視事件的休眠狀態后,更包含開啟一仲裁器以傳送該總線主控器要求事件至該中央處理器進行處理。
4.如權利要求3所述的省電方法,其中,該中央處理器處理完該總線主控器要求事件后,更包含關閉該仲裁器;發送一第三控制信息至該中央處理器,驅使該中央處理器離開該可窺視事件的休眠狀態;以及發送一第四控制信息至該中央處理器,驅使該中央處理器回復至該無法窺視事件的休眠狀態。
5.如權利要求4所述的省電方法,該第一控制信息、該第二控制信息、該第三控制信息與該第四控制信息由一系統芯片的一電源管理單元發送至該中央處理器
6如權利要求4所述的省電方法,其中,該中央處理器離開該可窺視事件的休眠狀態后,先進入該可執行指令的處理狀態。
7.如權利要求4所述的省電方法,其中,該中央處理器回復至該無法窺視事件的休眠狀態,且該周邊裝置發送一中斷事件時,更包含發送該第一控制信息至該中央處理器,驅使該中央處理器離開該無法窺視事件的休眠狀態進入該可執行指令的處理狀態,并傳送該回復信息至該中央處理器,且開啟該仲裁器以傳送該中斷事件至該中央處理器。
8.如權利要求1所述的省電方法,其中,該無法窺視事件的休眠狀態為一C3狀態,該可窺視事件的休眠狀態為一C2狀態,以及該可執行指令的處理狀態為一C0狀態。
9.一種中央處理器的省電系統,適用于一中央處理器處于一無法窺視事件的休眠狀態,且一周邊裝置發送一總線主控器要求事件時,該系統包含一仲裁器,傳送該總線主控器要求事件至該中央處理器;以及一系統芯片,接收該總線主控器要求事件,發送一第一控制信息與一第二控制信息至該中央處理器;其中,該中央處理器依據該第一控制信息離開該無法窺視事件的休眠狀態,進入一可執行指令的處理狀態,并依據該第二控制信息進入一可窺視事件的休眠狀態以處理該總線主控器要求事件。
10.如權利要求9所述的省電系統,其中,該系統芯片在該中央處理器進入該可窺視事件的休眠狀態后,開啟該仲裁器以傳送該總線主控器要求事件至該中央處理器。
11.如權利要求10所述的省電系統,其中,該中央處理器處理完該總線主控器要求事件后,該系統芯片關閉該仲裁器,并依序發送一第三控制信息與一第四控制信息至該中央處理器,驅使該中央處理器根據該第三控制信息離開該可窺視事件的休眠狀態進入該可執行指令的處理狀態,然后根據該第四控制信息進入該無法窺視事件的休眠狀態。
12.如權利要求11所述的省電系統,其中,該中央處理器回復至該無法窺視事件的休眠狀態,且該周邊裝置發送一中斷事件時,該系統芯片發送該第一控制信息至該中央處理器,驅使該中央處理器離開該無法窺視事件的休眠狀態進入該可執行指令的處理狀態,并傳送該回復信息至該中央處理器,且開啟該仲裁器以傳送該中斷事件至該中央處理器進行處理。
13.如權利要求11所述的省電系統,其中,該系統芯片更設有一電源管理單元,用于發送第一控制信息、該第二控制信息、該第三控制信息與該第四控制信息至該中央處理器。
14.如權利要求9所述的省電系統,其中,該無法窺視事件的休眠狀態、該可窺視事件的休眠狀態與該可執行指令的處理狀態分別為一C3狀態、一C2狀態與一C0狀態。
全文摘要
本發明涉及一種中央處理器的省電方法及系統,應用于中央處理器處于一無法窺視事件的休眠狀態且一周邊裝置發送一總線主控器要求事件時。本發明的省電方法首先驅使中央處理器離開無法窺視事件的休眠狀態;之后,阻止一回復信息傳送至中央處理器;最后,驅使中央處理器進入一可窺視事件的休眠狀態并開啟一仲裁器,以傳送總線主控器要求事件至中央處理器進行處理。如此即可降低中央處理器所消耗電源,進而節省計算機系統的電源。
文檔編號G06F1/32GK1936777SQ200610138840
公開日2007年3月28日 申請日期2006年9月19日 優先權日2006年9月19日
發明者黃宗慶, 黃文俊, 魏睿民 申請人:威盛電子股份有限公司