專利名稱:處理器及高速緩沖存儲器的控制方法
技術(shù)領域:
本發(fā)明涉及一種處理器及高速緩沖存儲器(cache)的控制方法,且特別涉及一種 可動態(tài)控制高速緩沖存儲器大小的處理器及高速緩沖存儲器的控制方法。
背景技術(shù):
微控制器(microcontroller,MCU)可被視為在單一集成電路上的計算機,其中
單一集成電路為由處理器、計時器以及輸入輸出接口(I/O interface)等元件所組成。一 般而言,當執(zhí)行來自外部程序存儲器(例如快閃存儲器)的程序指令時,需要微控制器 存取程序指令和數(shù)據(jù),如果程序存儲器未嵌入集成電路中,通過串行外圍接口(Serial Peripheral Interface, SPI)以降低集成電路的引腳數(shù)目。將來自程序存儲器的數(shù)據(jù)存取至 微控制器的時間通常大于微處理器執(zhí)行程序指令的時間或處理被存取數(shù)據(jù)的時間,因此 當程序存儲器被存取時微控制器可處于閑置的狀態(tài)。程序存儲器內(nèi)數(shù)據(jù)的一些部分,例如常用的程序變量,常于執(zhí)行程序時被存 取,且此些數(shù)據(jù)在程序存儲器中具有良好的時間區(qū)域性。考慮到效能,多個高速緩沖存 儲器通常被實施于微控制器中以存儲數(shù)據(jù)中慣常被使用的部分,而其他部分的數(shù)據(jù)可依 然被存儲于程序存儲器。階層式存儲器(memory hierarchy)為具有多個不同層次的存儲 器,例如高速緩沖存儲器和程序存儲器。存儲器層次越高,存取時間越短。自高速緩沖 存儲器存取數(shù)據(jù)的時間短于自程序存儲器存取數(shù)據(jù)的時間。然而,當微控制器執(zhí)行某一 程序時,并非所有高速緩沖存儲器都會被存取。在微控制器中的高速緩沖存儲器會導致 大量的功率消耗,且此問題在微控制器應用于功率敏感的產(chǎn)品時更為嚴重。
發(fā)明內(nèi)容
因此,本發(fā)明的實施例提供一種處理器及高速緩沖存儲器的控制方法可動態(tài)控 制被啟動的高速緩沖存儲器的數(shù)量和大小,其中被啟動的高速緩沖存儲器為微控制器所 需存取以減少功率消耗的高速緩沖存儲器。本發(fā)明提出一種包括多個高速緩沖存儲器與一控制單元的處理器。多個高速緩 沖存儲器分別受控于多個高速緩沖存儲器致能信號??刂茊卧鶕?jù)處理器的電源模式產(chǎn) 生上述高速緩沖存儲器致能信號,以選擇并存取上述高速緩沖存儲器的對應上述電源模 式的子集,其中高速緩沖存儲器的子集數(shù)量決定于電源模式。在本發(fā)明的一實施例中,處理器還包括多個寄存器。各寄存器分別記錄對應的 高速緩沖存儲器中區(qū)塊的存取狀態(tài)信息??刂茊卧a(chǎn)生一控制信號至寄存器的子集,其 對應被選擇的高速緩沖存儲器的子集,以重設被選擇的高速緩沖存儲器的子集的存取狀 態(tài)fe息。本發(fā)明提出一種高速緩沖存儲器的控制方法。首先,提供多個高速緩沖存儲 器。此些高速緩沖存儲器分別受控于多個高速緩沖存儲器致能信號而被啟動。接著, 通過一控制單元根據(jù)一電源模式產(chǎn)生上述高速緩沖存儲器致能信號,以選擇并存取高速緩沖存儲器的對應電源模式的子集,其中高速緩沖存儲器的子集數(shù)量決定于上述電源模 式。在本發(fā)明的一實施例中,高速緩沖存儲器的控制方法還包括于對應的高速緩沖 存儲器中分別記錄區(qū)塊的存取狀態(tài)信息。重設被選擇的高速緩沖存儲器的子集中區(qū)塊的 存取狀態(tài)信息。做為替代傳統(tǒng)靜態(tài)的高速緩沖存儲器大小,上述的處理器和高速緩沖存儲器的 控制方法使微控制器處于不同模式時能動態(tài)地控制被啟動的高速緩沖存儲器的數(shù)量和大 小。因此,微控制器的功率消耗可有效地被減少。為讓本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合附圖作 詳細說明如下。
圖1為說明依照本發(fā)明一實施例的處理器的示意圖。圖2為說明依照本發(fā)明一實施例的在微控制器的不同電源模式下高速緩沖存儲 器被啟動的數(shù)量。圖3為依照本發(fā)明一示范性實施例的高速緩沖存儲器控制方法的流程圖。主要元件符號說明100 處理器110、110_1 110_n:高速緩沖存儲器120:控制單元140_1 140_n 寄存器Bl Bm、Bl Bj 區(qū)塊S301 S305 控制高速緩沖存儲器的步驟
具體實施例方式圖1為說明依照本發(fā)明一實施例的處理器的示意圖。請參照圖1,處理器100包 括多個高速緩沖存儲器110_1 110_n、一控制單元120、一微控制器130以及多個寄存 器140_1 140_n,其中,高速緩沖存儲器110_1 110_n可例如是嵌入于微控制器130 的集成電路中的高速緩沖存儲器或外部連接至微控制器130的高速緩沖存儲器。各個寄 存器140_1 140_n分別包括存儲多筆數(shù)據(jù)的多個區(qū)塊,以供微控制器130存取,其中 數(shù)據(jù)例如是程序指令或當微控制器執(zhí)行程序指令時所需的數(shù)據(jù)。例如,高速緩沖存儲器 110_1包括區(qū)塊Bl Bm,而高速緩沖存儲器110_2包括區(qū)塊Bl Bj,其中m、j可為 相同或不同的正整數(shù)。高速緩沖存儲器110_1 110_n分別受控于多個高速緩沖存儲器 致能信號。各個寄存器140_1 140_11暫時地存儲可能會再被使用的數(shù)據(jù),而這些數(shù)據(jù)為支 持存儲裝置(backing storage device)中數(shù)據(jù)的復本,其中支持存儲裝置例如是主高速緩沖 存儲器(main cache)。高速緩沖存儲器110_1 110_n中的各個區(qū)塊除了存儲數(shù)據(jù)外也記 錄用于辨識數(shù)據(jù)在支持存儲裝置中的地址的標簽。當微控制器130執(zhí)行程序時,高速緩 沖存儲器110_1 110_n先根據(jù)標簽檢查所需的數(shù)據(jù)是否已被存儲。如果所需的數(shù)據(jù)已被存儲于高速緩沖存儲器110_1 110_n中的其中一個,其將被稱為“命中(hit)”。相 反地,如果所需的數(shù)據(jù)無法自高速緩沖存儲器110_1 110_11中的任何一個被發(fā)現(xiàn),其將 被稱為“錯過(miss)”,而高速緩沖存儲器110_1 110_n中的一些數(shù)據(jù)將被逐出,以 謄出空間存儲從支持存儲裝置存取的所需的數(shù)據(jù)。一般而言,替換策略為參照高速緩沖 存儲器110_1 110_n中區(qū)塊的存取狀態(tài)信息,以所需的數(shù)據(jù)替換最近最少使用的數(shù)據(jù)。 因此,在本發(fā)明的實施例中,各個寄存器140_1 140_n分別地記錄對應的高速緩沖存儲 器中的區(qū)塊的存 取狀態(tài)信息。一般而言,微控制器130可根據(jù)其工作負荷而被設為不同的電源模式。例如, 隨著計算量的減少,微控制器130可被設為省電模式以減少功率消耗。微控制器130常 被用于自動化控制的產(chǎn)品或裝置,以及執(zhí)行對應于電源模式的例行程序。對應此些程序 的所需要的數(shù)據(jù)可被存儲于某些高速緩沖存儲器。也就是說,并非所有的高速緩沖存儲 器110_1 110_n皆須被啟動。在本發(fā)明的實施例中,控制單元120電性連接至微控制 器130和高速緩沖存儲器110_1 110_n,并依據(jù)微控制器130的電源模式產(chǎn)生高速緩沖 存儲器致能信號至高速緩沖存儲器110_1 110_n。藉此,控制單元120回應電源模式選 擇并存取高速緩沖存儲器110_1 110_n的一個子集。也就是,高速緩沖存儲器的子集 數(shù)決定于動態(tài)控制啟動的高速緩沖存儲器數(shù)量和高速緩沖存儲器大小以減少功率消耗的 電源模式。圖2為說明依照本發(fā)明一實施例的在微控制器130的不同電源模式下高速緩沖存 儲器被啟動的數(shù)量。請參照圖2,高速緩沖存儲器110_1 110』中利用實線區(qū)塊所繪示 的高速緩沖存儲器代表被控制單元120所輸出的相應的高速緩沖存儲器致能信號啟動的 高速緩沖存儲器,而高速緩沖存儲器110_1 110_n中利用虛線區(qū)塊所繪示的高速緩沖存 儲器代表未被啟動的高速緩沖存儲器。微控制器130存取來自用于執(zhí)行程序的被啟動的 高速緩沖存儲器的數(shù)據(jù)。例如,當微控制器130處于最佳的系統(tǒng)效能的電源模式1時, 所有高速緩沖存儲器110_1 110_11被啟動。另外,只有高速緩沖存儲器110_1 110_n 中的一個高速緩沖存儲器,例如高速緩沖存儲器110_1,在微控制器130處于節(jié)省最多電 源的電源模式N時被啟動,而其它的高速緩沖存儲器不被啟動。當微控制器130執(zhí)行對 應電源模式的程序時,對應于不同的電源模式的高速緩沖存儲器被啟動的數(shù)量可依據(jù)所 需數(shù)據(jù)的數(shù)據(jù)量被適當?shù)卦O計,因此本發(fā)明不以此實施例為限。在本發(fā)明的實施例中, 一狀態(tài)機器(statemachine)可被嵌入于控制單元120以在電源模式切換時選擇適當?shù)母咚?緩沖存儲器。以電源模式N-2與電源模式N為例。請參照圖1與圖2,當微控制器130處于 電源模式N-2并執(zhí)行電源模式N-2相應的程序時,高速緩沖存儲器110_1 110_3被來 自控制單元120的相應的高速緩沖存儲器致能信號啟動。同時,寄存器140_1 140_n 分別記錄對應高速緩沖存儲器110_1 110_3的區(qū)塊的存取狀態(tài)信息,例如“命中”或
“錯過”的數(shù)量,其可被查閱以增加替換策略的效能。在電源模式N-2下,高速緩沖存 儲器的總大小為被啟動的高速緩沖存儲器110_1 110_3的高速緩沖存儲器總和。當微 控制器130切換至電源模式N時,高速緩沖存儲器110_1依然被相應的高速緩沖存儲器致 能信號啟動,但高速緩沖存儲器110_2 110_3未被啟動。由于執(zhí)行電源模式N對應的 程序所需的數(shù)據(jù)可能部分或完全地不同于執(zhí)行電源模式N-2對應的程序時所需的數(shù)據(jù),控制單元120產(chǎn)生控制信號至寄存器140_1 140_n的子集(亦即寄存器140_1),其對應 于高速緩沖存儲器110_1 110_n的被選擇子集(亦即高速緩沖存儲器110_1),以重設 高速緩沖存儲器110_1 110_n的被選擇子集的狀態(tài)信息并確保微控制器130可正常地操作。在本實施例中,在不同電源模式中被選擇的高速緩沖存儲器為示范性的,例如 在電源模式N-2中被選擇的高速緩沖存儲器110_1 110_3以及在電源模式N中被選擇 的高速緩沖存儲器110_1,但不以本發(fā)明的實施例所公開的范圍為限。在其他實施例中, 不同電源模式間的切換操作類似于上述實施例中電源模式N-2和電源模式N間的切換操 作。處理器100動態(tài)地控制啟動的高速緩沖存儲器的數(shù)量和大小回應為減少功率消耗的 微控制器的電 源模式圖3為依照本發(fā)明一示范性實施例的高速緩沖存儲器控制方法的流程圖。請參 照圖1 圖3,高速緩沖存儲器的控制方法包括下列步驟。首先,提供多個高速緩沖存儲 器110(步驟S301)。接著,根據(jù)目前微控制器130的電源模式通過控制單元120產(chǎn)生對 應的高速緩沖存儲器致能信號(步驟S302)。然后,回應電源模式,選擇并存取高速緩 沖存儲器110的子集(步驟S303)。之后,分別記錄對應的高速緩沖存儲器中區(qū)塊的存 取狀態(tài)信息(步驟S304)。在目前的電源模式切換至下一個電源模式之前,重置高速緩 沖存儲器110中被選擇子集的區(qū)塊的存取狀態(tài)信息(步驟S305)。對于上述方法,由上 述的實施例可獲得足夠的教示、建議與實施說明,在此不再贅述。綜上所述,本發(fā)明的示范性實施例利用提供一種微處理器與高速緩沖存儲器的 控制方法可在微控制器處于不同模式時動態(tài)控制被啟動的高速緩沖存儲器的數(shù)量和大 小。控制單元產(chǎn)生高速緩沖存儲器致能信號以管理對應電源模式的高速緩沖存儲器大 小,因此對應其它不同電源模式的高速緩沖存儲器可選擇性地被設計成符合電源的需 求。因此,處理器中的高速緩沖存儲器的大小動態(tài)地被控制以減少功率消耗。雖然本發(fā)明已以實施例公開如上,然其并非用以限定本發(fā)明,本領域技術(shù)人 員,在不脫離本發(fā)明的精神和范圍內(nèi),當可作些許的更動與潤飾,故本發(fā)明的保護范圍 當視所附權(quán)利要求書所界定者為準。
權(quán)利要求
1.一種處理器,包括多個高速緩沖存儲器,分別受控于多個高速緩沖存儲器致能信號而被啟動;以及一控制單元,根據(jù)該處理器的一電源模式產(chǎn)生這些高速緩沖存儲器致能信號,以選 擇并存取這些高速緩沖存儲器的對應該電源模式的子集,其中這些高速緩沖存儲器的子 集數(shù)量決定于該電源模式。
2.如權(quán)利要求1所述的處理器,還包括多個寄存器,各該寄存器分別記錄對應的高速緩沖存儲器中區(qū)塊的存取狀態(tài)信息, 其中該控制單元更產(chǎn)生一控制信號至對應被選擇的這些高速緩沖存儲器的子集的這些寄 存器的子集以重設被選擇的這些高速緩沖存儲器的子集的存取狀態(tài)信息。
3.一種高速緩沖存儲器的控制方法,包括提供受控于多個高速緩沖存儲器致能信號而被啟動的多個高速緩沖存儲器;以及通過一控制單元根據(jù)一電源模式產(chǎn)生這些高速緩沖存儲器致能信號,以選擇并存取 這些高速緩沖存儲器的對應該電源模式的子集,其中這些高速緩沖存儲器的子集數(shù)量決 定于該電源模式。
4.如權(quán)利要求1所述的控制方法,還包括在對應的高速緩沖存儲器中分別記錄區(qū)塊的存取狀態(tài)信息;以及重設被選擇的這些高速緩沖存儲器的子集中區(qū)塊的存取狀態(tài)信息。
全文摘要
一種處理器及高速緩沖存儲器的控制方法。處理器包括多個高速緩沖存儲器(cache)與一控制單元。多個高速緩沖存儲器分別受控于多個高速緩沖存儲器致能信號而被啟動??刂茊卧鶕?jù)處理器的電源模式產(chǎn)生高速緩沖存儲器致能信號,以選擇并存取高速緩沖存儲器的對應上述電源模式的子集,其中高速緩沖存儲器的子集數(shù)量決定于電源模式。因此,處理器可根據(jù)電源模式要求高速緩沖存儲器啟動以減少高速緩沖存儲器的功率消耗。
文檔編號G06F1/32GK102023699SQ20091017861
公開日2011年4月20日 申請日期2009年9月22日 優(yōu)先權(quán)日2009年9月22日
發(fā)明者陳俊裕 申請人:奇景光電股份有限公司