亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

為具有非易失性存儲器的系統(tǒng)動態(tài)地分配功率預(yù)算的方法及裝置的制作方法

文檔序號:6433517閱讀:246來源:國知局
專利名稱:為具有非易失性存儲器的系統(tǒng)動態(tài)地分配功率預(yù)算的方法及裝置的制作方法
技術(shù)領(lǐng)域
本申請可以涉及基于系統(tǒng)的一個或多個功率狀態(tài)為具有非易失性存儲器的系統(tǒng)動態(tài)地分配功率。
背景技術(shù)
NAND閃存,以及其它類型的非易失性存儲器(“NVM”),通常用作大容量存儲器。 例如,電子設(shè)備(諸如便攜式媒體播放器或者蜂窩電話)通常包括未寫入數(shù)據(jù)的閃存或者是存儲音樂、視頻、和其它媒體的閃光卡。電子設(shè)備可以使用通過諸如電池的內(nèi)部電源提供的功率來操作,這需要一次又一次地充電來補(bǔ)充內(nèi)部電源。內(nèi)部電源可以通過耦合該電子設(shè)備到電源充電設(shè)備(例如,通過物理地連接電源充電設(shè)備的端子到該電子設(shè)備的端子)被再充電。然而當(dāng)電源充電設(shè)備第一次被耦合到該電子設(shè)備時(shí),可能會存在一個時(shí)間間隔,在此期間電子設(shè)備會從該電源充電設(shè)備僅僅吸收有限量的功率。在該時(shí)間間隔期間,電子設(shè)備的某些組件或這些組件的組合不能夠運(yùn)行,或在該有限功率預(yù)算下操作時(shí)可能不能完全運(yùn)行。

發(fā)明內(nèi)容
公開了用于基于一個或多個功率狀態(tài)為系統(tǒng)動態(tài)地分配功率的系統(tǒng)和方法。該系統(tǒng)可以包括電子設(shè)備(例如,便攜式媒體播放器或蜂窩電話),該電子設(shè)備可以包括處理器、非易失性存儲器("NVM")、以及功率預(yù)算管理器。該NVM可以是任何合適類型的存儲器,例如,閃存(例如,NAND閃存)。該NVM可以包括一個或多個NVM管芯和能夠訪問并操作這些管芯的相關(guān)電路。在一些實(shí)施例中,該 NVM還可以包括其自身的控制器以及其它組件,例如糾錯編碼模塊。功率預(yù)算管理器(例如,在設(shè)備處理器或在NVM上執(zhí)行)可以監(jiān)控可得到的功率量并將功率預(yù)算動態(tài)地分配給每個處理器NVM,以及系統(tǒng)中的任何其它組件或者是處理器和/或NVM中的組件。例如,在一個實(shí)施例中,功率預(yù)算管理器可以檢測到系統(tǒng)在低功率狀態(tài)下操作。低功率狀態(tài),如這里所定義的,是當(dāng)系統(tǒng)正從外部電源充電源接收較小量的功率 (例如,IOOmA的預(yù)定功率電平)以及該系統(tǒng)的內(nèi)部電源(例如,電池)不能為該電子設(shè)備供電的狀態(tài)。這樣的低功率狀態(tài)可能例如出現(xiàn)在電子設(shè)備和外部電源充電設(shè)備之間的通用串行總(“USB”)協(xié)議握手序列期間。響應(yīng)于檢測低功率狀態(tài),功率預(yù)算管理器可以將相應(yīng)的功率預(yù)算動態(tài)地分配給系統(tǒng)的一個或多個組件中的每個組件。例如,功率預(yù)算管理器可以將功率預(yù)算動態(tài)地分配給處理器和NVM中的每一個使得處理器和NVM可以共同地操作而不超出在低功率狀態(tài)期間可得到的功率。用于相應(yīng)組件(例如,處理器或NVM)的功率預(yù)算可以通過使用任何數(shù)量的技術(shù)而被加強(qiáng)。例如,在一個實(shí)施例中,功率預(yù)算管理器可以使處理器停止,這防止處理器操作,借此保存功率以堅(jiān)持功率預(yù)算。可以通過許多技術(shù)使處理器停止,例如時(shí)鐘門控(例如,通過CN 102375788 A
說明書
2/12
禁用處理器電路的一個或多個部分)。作為另一個例子,使其時(shí)鐘速率減速來停止處理器 (例如,將其時(shí)鐘速率降低到預(yù)定水平)。作為另一個例子,功率預(yù)算管理器可以通過例如將功率細(xì)分給NVM的一個或多個組件來控制NVM的功耗。功率預(yù)算管理器還可以利用任何適當(dāng)?shù)募夹g(shù)中斷處理器的停止。例如,功率預(yù)算管理器可以響應(yīng)于接收NVM控制器發(fā)出的一個或多個標(biāo)志來中斷處理器的停止,其中一個或多個標(biāo)志可以指示一個或多個存儲操作何時(shí)已經(jīng)完成。作為另一個例子,功率預(yù)算管理器可以響應(yīng)于從NVM控制器接收中斷請求來中斷處理器的停止。在一些實(shí)施例中,如果功率預(yù)算管理器檢測到當(dāng)前的功率電平超過了低功率狀態(tài)的功率電平,則功率預(yù)算管理器會撤銷分配給系統(tǒng)的一個或多個組件中的每個組件的相應(yīng)功率預(yù)算。在撤銷相應(yīng)功率預(yù)算以后,系統(tǒng)的組件可以從外部電源充電設(shè)備吸取足夠需要的電流。在其它的實(shí)施例中,功率預(yù)算管理器可以監(jiān)控系統(tǒng)的各個組件的功耗并相應(yīng)分配功率。


本發(fā)明的上述及其它方面和優(yōu)點(diǎn)結(jié)合附圖基于下面詳細(xì)描述的考慮將變得更加明顯,其中貫穿全文相同的附圖標(biāo)記表示相同的部分,其中圖1和2示出了根據(jù)本發(fā)明的各個實(shí)施例配置的電子設(shè)備的示意圖;圖3示出了根據(jù)本發(fā)明的各個實(shí)施例配置的示例性的電子系統(tǒng)的示意圖;圖4示出了根據(jù)本發(fā)明的各個實(shí)施例用于電子設(shè)備的組件的示例性功率預(yù)算分配的圖表;圖5示出了根據(jù)本發(fā)明的各個實(shí)施例用于動態(tài)功率分配的示例性過程的流程圖;圖6示出了根據(jù)本發(fā)明的各個實(shí)施例用于分配系統(tǒng)中的功率預(yù)算的示例性過程的流程圖。
具體實(shí)施例方式圖1是電子設(shè)備100的示例圖。在一些實(shí)施例中,電子設(shè)備100可以是或可以包括便攜式媒體播放器(例如,通過加拿大Cupertino的Apple公司可得到的iPod )、蜂窩電話 (例如,通過Apple公司可得到的iPhone )、袖珍的個人計(jì)算機(jī)、個人數(shù)字助理(“PDA”)、 臺式計(jì)算機(jī)、膝上型計(jì)算機(jī)、以及任何其它合適類型的電子設(shè)備。電子設(shè)備100可以包括片上系統(tǒng)(“SoC”) 110和非易失性存儲器(〃 NVM〃 ) 120。 NVM120可以包括基于浮置柵極或電荷捕捉技術(shù)的NAND閃存、NOR閃存、可擦可編程序只讀存儲器("EPROM“)、電可擦可編程序只讀存儲器(“EEPROM“)、鐵電存儲器(“FRAM”)、 磁阻式隨機(jī)存儲器("MRAM“)、任何其它已知的或未來類型的非易失性存儲技術(shù)、或其任何組合。在一些實(shí)施例中,NVM 120可以包括NVM控制器122,用于利用內(nèi)部芯片選擇信號通過內(nèi)部通道(例如,NVM控制器122和NVM管芯IM之間的一個或多個數(shù)據(jù)路徑)訪問并管理NVM管芯124。在一些情況下,NVM控制器122可以選擇性地啟動NVM管芯124中的任何管芯。例如,響應(yīng)于接收來自設(shè)備處理器112的請求(例如,讀取、編程、或擦除請求) 來訪問NVM管芯124的特定管芯,NVM控制器122可以選擇性地啟動設(shè)備處理器112所請求的管芯。NVM控制器122可以執(zhí)行存儲管理功能,例如平均抹寫、壞損區(qū)塊管理、以及邏輯到物理轉(zhuǎn)換操作。NVM 120可以包括糾錯編碼(“ECC”)引擎126,用于檢測和校正數(shù)據(jù)錯誤(例如,翻轉(zhuǎn)位)。ECC引擎1 用虛線框示出來表示它的功能可以在不同位置被執(zhí)行。 在一些實(shí)施例中,ECC引擎1 可以被實(shí)施為NVM控制器122中的硬件組件或被實(shí)施為由 NVM控制器122執(zhí)行的軟件組件。在一些實(shí)施例中,ECC引擎126可以是NVM 120中的獨(dú)立模塊??梢岳斫庥蒒VM控制器122執(zhí)行的一個或多個功能可以由SoC 110執(zhí)行。因此,在一些實(shí)施例中,NVM控制器122可以被包括為SoC 110的一部分。在這樣的實(shí)施例中,NVM 120可以包括管芯IM和關(guān)聯(lián)電路(例如,充電泵、行和列解碼器等),但是不包括NVM控制器。
NVM管芯IM可以被安排在“塊”內(nèi),它是最小的擦除單元,并且進(jìn)一步被安排在 “頁”內(nèi),它是最小的可編程和可讀單元。每個管芯1 可以包括多個塊,其可以被配置在一個或多個平面(或存儲體)內(nèi)。來自每個平面或管芯的塊實(shí)質(zhì)上可以彼此鏈接以形成“超級塊”。NVM管芯124的每個存儲位置(例如,頁或塊)可以利用物理地址(例如,物理頁地址或物理塊地址)被尋址。圖1與后面的圖以及各個公開的實(shí)施例一樣,有時(shí)可以按照使用閃存技術(shù)來描述。然而,這不意味著是限制性的,作為代替可以執(zhí)行任何其它類型的非易失性存儲器。電子設(shè)備100可以例如包括其它組件,例如電源或任何用戶輸入或輸出組件,其沒有在圖1中被繪出以簡化圖形。SoC 110可以包括設(shè)備處理器112、存儲器114、以及NVM接口 118。設(shè)備處理器 112可以控制SoC 110的一般操作和功能以及設(shè)備100或SoC 110的其它組件。例如,響應(yīng)于用戶輸入和/或應(yīng)用或操作系統(tǒng)的指令,設(shè)備處理器112可以發(fā)出讀取或?qū)懭朊畹?NVM接口 118以獲取來自NVM 120中的數(shù)據(jù)或?qū)?shù)據(jù)存儲到NVM 120中。也就是,NVM接口 118可以啟動NVM 120和設(shè)備處理器112之間的通信。為了簡化,設(shè)備處理器112可以請求存儲或檢索的數(shù)據(jù)可以被稱為“用戶數(shù)據(jù)”,雖然該數(shù)據(jù)不是直接地與用戶或用戶應(yīng)用相關(guān)聯(lián)。此外,該用戶數(shù)據(jù)可以是由設(shè)備處理器112產(chǎn)生或者獲取的任何合適的數(shù)字信息序列 (例如,經(jīng)由應(yīng)用或操作系統(tǒng))。設(shè)備處理器112可以包括任何以下的組合,硬件、軟件、和固件、以及操作為驅(qū)動電子設(shè)備100的功能的任何組件、電路、或邏輯裝置。例如,設(shè)備處理器112可以包括一個或多個處理器,其在NVM 120或存儲器114中存儲的軟件/固件的控制下來操作。在一些實(shí)施例中,設(shè)備處理器112可以包括功率預(yù)算管理器128,其可以動態(tài)地分配功率預(yù)算給電子設(shè)備100的一個或多個組件。該一個或多個組件可以包括,例如,設(shè)備處理器112、NVM 120、NVM接口 118、以及電子設(shè)備100的任何其它合適的組件。在一些實(shí)施例中,可以基于可用于電子設(shè)備100或可用于SoC 110和NVM 120的總功率量來分配該功率預(yù)算。盡管被示為在圖1中的設(shè)備處理器112上實(shí)施功率預(yù)算管理器128,但本領(lǐng)域技術(shù)人員將理解也可以另外或替換地在NVM控制器122上實(shí)施功率預(yù)算管理器128。將結(jié)合圖 3-5更詳細(xì)地討論動態(tài)的功率分配。存儲器114可以包括任何合適類型的易失性或非易失性存儲器,例如動態(tài)隨機(jī)存取存儲器(“DRAM”)、同步動態(tài)隨機(jī)存取存儲器(“SDRAM”)、雙倍數(shù)據(jù)速率(“DDR”)RAM、 緩沖存儲器、只讀存儲器(“ROM”)、或其任何組合。存儲器114可以包括數(shù)據(jù)源,其可臨時(shí)性地存儲用于編程到NVM 120或從NVM 120讀取的用戶數(shù)據(jù)。在一些實(shí)施例中,存儲器114 可以用作為設(shè)備處理器112的一部分執(zhí)行的任何處理器的主存儲器。NVM接口 118可以包括硬件、軟件、和/或固件的任何適當(dāng)?shù)慕M合,其被配置為用作設(shè)備處理器112和NVM 120之間的接口或驅(qū)動器。對于NVM接口 118中包括的任何軟件模塊,相應(yīng)的程序代碼可以被存儲在NVM 120或存儲器114中。NVM接口 118可以執(zhí)行各種不同的功能,其允許設(shè)備處理器112訪問NVM120并管理NVM120的存儲位置(例如,頁、塊、超級塊、集成電路)以及存儲在其中的數(shù)據(jù)(例如,用戶數(shù)據(jù))。例如,NVM接口 118可以中斷來自設(shè)備處理器112的讀取或?qū)懭朊睿瑘?zhí)行平均抹寫,以及產(chǎn)生與NVM 120的總線協(xié)議兼容的讀取和編程指令。當(dāng)NVM接口 118和設(shè)備處理器112被顯示為單獨(dú)的模塊的同時(shí),這是指僅是為了簡化本發(fā)明的實(shí)施例的描述。應(yīng)當(dāng)理解的是,這些模塊可以共享硬件組件、軟件組件、或二者。例如,實(shí)施為設(shè)備處理器112的一部分的處理器可以執(zhí)行用于NVM接口 118的基于軟件的存儲器驅(qū)動器。相應(yīng)地,設(shè)備處理器112和NVM接口 118的一部分有時(shí)可以被總稱為 “處理器”。圖1示出了 NVM 120可以具有其自己的控制器(例如,NVM控制器122)的電子設(shè)備。在一些實(shí)施例中,電子設(shè)備100可以包括目標(biāo)設(shè)備,例如閃存或SD卡,它包括NVM 120 和一些或全部NVM接口 118(例如,下面討論的轉(zhuǎn)換層)。在這些實(shí)施例中,SoC 110或設(shè)備處理器112可以用作用于目標(biāo)設(shè)備的主控制器。例如,作為主控制器,SoC 110可以發(fā)出到目標(biāo)設(shè)備的讀取和寫入請求。圖2是電子設(shè)備200的示意圖,其更詳細(xì)地表明了根據(jù)一個或多個實(shí)施例的電子設(shè)備100(圖1)的固件、軟件和/或硬件組件中的一些。電子設(shè)備200可以具有與圖1中所示的設(shè)備100相關(guān)的上述任何特征和功能,反之亦然。電子設(shè)備200可以包括文件系統(tǒng) 210、NVM驅(qū)動器212、NVM總線控制器216、以及NVM220。在一些實(shí)施例中,文件系統(tǒng)210和 NVM驅(qū)動器212可以是軟件或固件模塊,以及NVM總線控制器216和NVM 220可以是硬件模塊。相應(yīng)地,在這些實(shí)施例中,NVM驅(qū)動器212可以表示NVM接口 218的軟件或固件方面, 以及NVM總線控制器216可以表示NVM接口 218的硬件方面。文件系統(tǒng)210可以包括任何合適類型的文件系統(tǒng)并且可以是電子設(shè)備200的操作系統(tǒng)的一部分(例如,圖1的設(shè)備處理器112的一部分)。在一些實(shí)施例中,文件系統(tǒng)210 可以包括快閃文件系統(tǒng),它可以提供到頁面的物理映射的邏輯。文件系統(tǒng)210可以執(zhí)行下面討論的NVM驅(qū)動器212中的一些或所有功能,因此文件系統(tǒng)210和NVM驅(qū)動器212可以是或可以不是單獨(dú)的模塊。文件系統(tǒng)210可以為應(yīng)用和/或操作系統(tǒng)管理文件和文件夾結(jié)構(gòu)。文件系統(tǒng)210 可以在電子設(shè)備200上運(yùn)行的應(yīng)用或操作系統(tǒng)的控制下操作,并且可以在應(yīng)用或操作系統(tǒng)請求從NVM 220讀取的數(shù)據(jù)或存儲在NVM 220中的信息時(shí)提供到NVM驅(qū)動器212的寫入和讀取命令。與每個讀取或?qū)懭朊钜黄穑募到y(tǒng)210可以提供邏輯地址以表示用戶數(shù)據(jù)應(yīng)該在哪里被讀取或?qū)懭?,例如具有頁偏移的邏輯塊地址或邏輯頁地址。文件系統(tǒng)210可以提供到不直接與NVM220兼容的NVM驅(qū)動器212的讀取和寫入請求。例如,邏輯地址可以使用基于硬盤驅(qū)動器的系統(tǒng)的典型的規(guī)范或協(xié)議?;谟脖P驅(qū)動器的系統(tǒng),不像閃存,可以重寫存儲位置而不需要首先執(zhí)行塊擦除。此外,硬盤驅(qū)動器可能不需要平均抹寫來增加設(shè)備的壽命或?qū)iT基于閃存設(shè)備的其它技術(shù)。因此,NVM接口 218 可以執(zhí)行任何功能,它們是存儲特殊化、廠商特殊化、或兩者以便以合適NVM 220的方式用來處理文件系統(tǒng)請求并執(zhí)行其它管理功能。NVM驅(qū)動器212可以包括轉(zhuǎn)換層214。在一些實(shí)施例中,轉(zhuǎn)換層214可以是或包含閃存轉(zhuǎn)換層(“FTL”)。在寫入操作時(shí),轉(zhuǎn)換層214可以將所提供的邏輯地址映射到NVM 220上空閑的、擦除的物理位置。在讀取操作時(shí),轉(zhuǎn)換層214可以使用所提供的邏輯地址以確定被請求的數(shù)據(jù)所存儲的物理地址。因?yàn)槊總€NVM可以根據(jù)NVM的廠商或尺寸具有不同的布局,這種映射操作可以是存儲和/或廠商特殊化。轉(zhuǎn)換層214可以執(zhí)行除了邏輯到物理地址映射之外的任何其它合適的功能。例如,轉(zhuǎn)換層214可以執(zhí)行任何其它功能,它可以是典型的閃存轉(zhuǎn)換層,例如無用單元收集和平均抹寫。NVM驅(qū)動器212可以與NVM總線控制器216接口以完成NVM訪問請求(例如,編程、讀取、和/或擦除請求)??偩€控制器216可以用作與NVM220接口的硬件,并且可以利用NVM220的其它規(guī)范、總線協(xié)議、和/或數(shù)據(jù)速率與NVM220通信。NVM接口 218可以基于存儲器管理數(shù)據(jù)來管理NVM220,有時(shí)在這里被稱為“元數(shù)據(jù)”。元數(shù)據(jù)可以由NVM驅(qū)動器212產(chǎn)生或者可以由NVM驅(qū)動器212控制下操作的模塊產(chǎn)生。例如,元數(shù)據(jù)可以包括任何用于管理邏輯和物理地址、壞損塊管理、平均抹寫、“ECC”數(shù)據(jù),或其任何組合之間映射的信息。元數(shù)據(jù)可以包括連同用戶數(shù)據(jù)一起由文件系統(tǒng)210提供的數(shù)據(jù),例如邏輯地址。因此,通常來說,“元數(shù)據(jù)”可以指任何關(guān)于用戶數(shù)據(jù)或與用戶數(shù)據(jù)相關(guān)的信息或者通常用來管理操作以及非易失性存儲器的存儲位置。NVM接口 218可以被配置為在NVM220中存儲元數(shù)據(jù)。在一些實(shí)施例中,NVM接口 218可以將與用戶數(shù)據(jù)相關(guān)的元數(shù)據(jù)存儲在用戶數(shù)據(jù)被存儲的相同存儲位置上(例如, 頁)。例如,NVM接口 218可以將用戶數(shù)據(jù)、關(guān)聯(lián)的邏輯地址、以及用戶數(shù)據(jù)的ECC數(shù)據(jù)存儲在NVM 220的一個或多個存儲位置上。NVM接口 218還可以將關(guān)于用戶數(shù)據(jù)的其它類型的元數(shù)據(jù)存儲在相同的存儲位置中。例如,元數(shù)據(jù)可以包含表示存儲的數(shù)據(jù)是否是好數(shù)據(jù)的標(biāo)志οNVM接口 218可以存儲邏輯地址以及關(guān)聯(lián)的用戶信息本身,使得在NVM220加電時(shí)或在NVM220的操作期間,電子設(shè)備200可以確定什么數(shù)據(jù)存在于指定位置。具體地,因?yàn)槲募到y(tǒng)210可以根據(jù)它的邏輯地址而不是它的物理地址引用用戶數(shù)據(jù),NVM接口 218可以一起存儲用戶數(shù)據(jù)和邏輯地址以保持他們的關(guān)聯(lián)性。例如,在NVM接口 218直接映射邏輯扇區(qū)到物理頁的實(shí)施例中,NVM接口 218可以存儲NVM的頁面中的邏輯到物理映射,像信息本身一樣。現(xiàn)在選擇參考圖3,示出了圖示性電子系統(tǒng)的示意圖。電子系統(tǒng)300可以包括電子設(shè)備302以及外部電源充電源310。在一些實(shí)施例中,電子設(shè)備302可以與圖1的電子設(shè)備 100和/或圖2的電子設(shè)備200相同或本質(zhì)上相似。例如,電子設(shè)備302可以包括主系統(tǒng)或處理器304(例如,圖1的SoC 110)以及 NVM306 (例如,圖1的NVM 120或圖2的NVM220)。在一些情況下,電子設(shè)備302可以包括電池308,該電池在被充電到至少預(yù)定電平時(shí)可以給電子設(shè)備302供電。然而,當(dāng)電子設(shè)備302已經(jīng)保持不充電達(dá)一段延長的時(shí)間段時(shí),電池308最終可以充分耗盡基本上其所有的電荷。在這種狀態(tài)下,電池308可能不能為電子設(shè)備302以及一個或多個其組件供電。在一些實(shí)施例中,電子設(shè)備302可以經(jīng)由一個或多個電源連接336通過將電子設(shè)備302耦合到外部電源充電設(shè)備310而被再充電。外部電源充電設(shè)備310可以包括任何合適的電子充電設(shè)備或能夠?yàn)殡娮釉O(shè)備302供電的系統(tǒng)。例如,外部電源充電設(shè)備310可以包括膝上型計(jì)算機(jī)、電源、或插接站。此外,電源連接336可以包括,例如,通用串行總線 (“USB”)連接、USB2.0連接、串行連接、并行連接、FireWire連接、任何其它合適的有線或無線電源連接、和/或其任何組合。但是,當(dāng)電子設(shè)備302經(jīng)由電源連接336首次被耦合到外部電源充電設(shè)備310時(shí), 從外部電源充電設(shè)備310吸取的電流量可能是有限的。例如,如果電子設(shè)備302利用USB 連接被耦合到外部電源充電設(shè)備310,則電子設(shè)備302會在可以從外部電源充電設(shè)備310吸取最大量的功率(例如,500mAmps、lAmp,或2Amps的最大電流)之前需要首次完成與外部電源充電設(shè)備310的握手階段。該握手階段可以是電子設(shè)備302和外部電源充電設(shè)備310 之間的協(xié)商過程,以確定電子設(shè)備302可以從電源充電設(shè)備310吸取多少電流。在握手階段期間,提供有限量的功率,但是在握手完成之后,能提供“商定”的功率電平。作為結(jié)果,在完成握手階段之前,電子設(shè)備302僅僅會從外部電源充電設(shè)備310 吸取有限量的功率(例如,在正常操作期間的IOOmAmps的最大電流與500mAmps的最大電流)。因此,給定有限功率預(yù)算,處理器304可能需要動態(tài)地在其不同組件(例如,NVM和處理器)之間分配功率以確保提供足夠的功率以啟動選擇的組件的操作。本領(lǐng)域技術(shù)人員會想到除了動態(tài)地分配功率給處理器304和NVM306以外,或作為動態(tài)地分配功率給處理器304和NVM306的替代,功率可以被動態(tài)地分配給電子設(shè)備302的任何其它組件。本領(lǐng)域技術(shù)人員還會想到盡管該論述是直接針對起于USB協(xié)議的低功率狀態(tài),但電子設(shè)備302可以通過在其不同組件之間動態(tài)地分配功率來響應(yīng)任何低功率方案。 因此,低功率狀態(tài)可以是外部電源(例如,電池308)不能將足夠的功率提供給電子設(shè)備302 的任何狀態(tài),以便電子設(shè)備302能夠以其正常操作模式來操作(例如,播放音樂或方便蜂窩電話呼叫)。與此同時(shí),外部電源充電設(shè)備(例如,外部電源充電設(shè)備310)還可以將較低量的功率(例如,IOOmA的預(yù)定功率電平)提供給電子設(shè)備302。圖4示出了用于電子設(shè)備(例如,圖1的電子設(shè)備100、圖2的電子設(shè)備200、或圖 3的電子設(shè)備30 的組件的示例性功率預(yù)算分配400的圖表。本領(lǐng)域技術(shù)人員會想到時(shí)間間隔、到t5不是按比例被繪出,并且因此,在一些情況下,一些時(shí)間間隔可能實(shí)際上會比其它時(shí)間間隔更長或更短。在時(shí)間t(l,功率預(yù)算管理器(例如,圖1的功率預(yù)算管理器128)可以確定存儲器系統(tǒng)在低功率狀態(tài)下操作。作為結(jié)果,功率預(yù)算管理器能夠分配功率預(yù)算402給處理器(例如,圖1的SoC 110或圖3的處理器304)以及分配功率預(yù)算404給NVM(例如,圖1的NVM 120、圖2的NVM220、或圖3的NVM306)。功率預(yù)算402和404的組合可以等于或小于功率電平420。在時(shí)間、和、之間,功率電平420可以是在握手階段期間提供的功率電平(例如,IOOmAmp),并且在時(shí)間t5之后,功率電平422可以是握手階段完成之后期間提供的功率電平(例如,500mAmp、lAmp、或2Amps)。另外,因?yàn)樘幚砥骺赡艹跏夹枰褂幂^多的功率(例如,用于發(fā)出一個或多個請求的額外的功率),所以功率預(yù)算402可能高于功率預(yù)算404。
接著,在時(shí)間、和時(shí)間、之間,處理器可以發(fā)出請求(例如,讀取、擦除、或編程請求)來訪問NVM。在一個實(shí)施例中,處理器可以發(fā)出一個用于NVM的請求以載入用于系統(tǒng)啟動的一個或多個程序(例如,操作系統(tǒng))。在已經(jīng)發(fā)出請求之后,在時(shí)間、,功率預(yù)算管理器可以分別將功率預(yù)算406和408 分配給處理器和NVM。功率預(yù)算406和408的組合可以等于或小于功率電平420。在一些情況下,較低量的功率可以在時(shí)間、被分配給處理器,因?yàn)樵撎幚砥鞑恍枰诎l(fā)出請求之后執(zhí)行任何其它重要的操作。因此,功率預(yù)算406可能低于功率預(yù)算402。相反,因?yàn)镹VM可以在接收到來自處理器的請求(例如,載入用于系統(tǒng)啟動的一個或多個程序)之后執(zhí)行大部分系統(tǒng)操作,所以該NVM可以需要較處理器而言額外的功率。因此,功率預(yù)算408可能高于功率預(yù)算406。在一些實(shí)施例中,為了使處理器在時(shí)間、和t2之間滿足功率預(yù)算406,該功率預(yù)算管理器可以停止該處理器。例如,該功率預(yù)算管理器能夠通過時(shí)鐘門控處理器來使處理器(例如,通過禁用該處理器電路的一個或多個部分)停止。作為另一個例子,功率預(yù)算管理器能夠通過使該處理器的時(shí)鐘速率減速(例如,將脈沖速率降低到最低水平)來使該處
理器停止。接著,在時(shí)間t2,功率預(yù)算管理器可以響應(yīng)于接收中斷請求來中斷該處理器的停止。例如,功率預(yù)算管理器可以從電子系統(tǒng)(例如,圖3的電子系統(tǒng)300)的一個或多個組件接收中斷請求。在一些實(shí)施例中,功率預(yù)算管理器可能已經(jīng)從NVM接收到中斷請求。例如,NVM控制器(例如,圖1的NVM控制器12 能夠提供中斷請求給該處理器,其指令處理器以較高功率電平操作。作為另一個例子,NVM控制器可以發(fā)出一個或多個標(biāo)志,該一個或多個標(biāo)志能夠指示一個或多個存儲器操作何時(shí)已經(jīng)完成。如果功率預(yù)算管理器確定已經(jīng)接收到中斷停止該處理器的請求,則該功率預(yù)算管理器會分別分配功率預(yù)算402和404給處理器和NVM。因此,在一些實(shí)施例中,在時(shí)間t2和時(shí)間t3之間分配的功率預(yù)算與在時(shí)間、和t2之間分配的功率預(yù)算相同或相似。較大量的功率會在時(shí)間t2被分配給處理器因?yàn)樵撎幚砥骺赡苄枰~外的功率以便繼續(xù)執(zhí)行系統(tǒng)操作(例如,執(zhí)行一個或多個系統(tǒng)應(yīng)用)。相應(yīng)地,因?yàn)樘幚砥骺梢栽谕V挂呀?jīng)被中斷之后執(zhí)行大部分系統(tǒng)操作,所以功率預(yù)算402可能高于功率預(yù)算404。本領(lǐng)域技術(shù)人員會理解功率預(yù)算分配400中示出的功率預(yù)算只不過是示例性的, 并且分配給系統(tǒng)的每個組件的實(shí)際功率預(yù)算可以依賴于一個或多個因素。該一個或多個因素可以包括,例如,系統(tǒng)的當(dāng)前狀態(tài)、系統(tǒng)的一個或多個未來的狀態(tài)、可得到的總功率、處理器發(fā)出的請求類型(例如,讀取、編程、或擦除請求)、任何其它合適的因素、和/或其任何組合。因此,例如,在時(shí)間t3和時(shí)間、之間,功率預(yù)算管理器可以將幾乎所有的可得到的功率分配給處理器(例如,功率預(yù)算410),它可以使得處理器能夠執(zhí)行額外的操作。此外, 在時(shí)間t4和時(shí)間t5之間,功率預(yù)算管理器可以將幾平所有可得到的功率分配給NVM(例如, 功率預(yù)算412),它可以使得NVM能夠執(zhí)行額外的操作。接著,在時(shí)間t5,握手操作完成并且功率預(yù)算管理器不再限于低功率狀態(tài)下的操作。在這一點(diǎn)上,功率預(yù)算管理器可以根據(jù)新的功率電平422分配功率?,F(xiàn)在參考圖5和6,根據(jù)本發(fā)明的各個實(shí)施例示出的示例性過程的流程圖。這些過程可以由系統(tǒng)(例如,圖1的系統(tǒng)100)中的一個或多個組件來執(zhí)行。例如,功率預(yù)算管理器(例如,圖1的功率預(yù)算管理器128)可以執(zhí)行這些過程中的一個或多個步驟。首先回到圖5,示出用于動態(tài)的功率分配的過程500。過程500可以在步驟502開始,其中功率預(yù)算管理器可以是監(jiān)控系統(tǒng)(例如,圖3的電子設(shè)備302)的可得到的功率量。在步驟504,功率預(yù)算管理器可以確定可用于系統(tǒng)(例如,圖3的電子設(shè)備302)的功率總量是否低于預(yù)定的功率電平。如果,在步驟504,功率預(yù)算管理器確定可用于系統(tǒng)的總功率量不低于預(yù)定的功率電平,則過程500可以在步驟506結(jié)束。如果,在步驟504,功率預(yù)算管理器改為確定可用于系統(tǒng)的總功率量低于預(yù)定功率電平,則過程500會進(jìn)行到步驟508。例如,功率預(yù)算管理器可能已經(jīng)檢測到系統(tǒng)在低功率狀態(tài)下操作。在低功率狀態(tài)期間,電子設(shè)備(例如,圖1的電子設(shè)備100、圖2的電子設(shè)備 200、和/或圖3的電子設(shè)備302)的電池(例如,圖3的電池308)不能給系統(tǒng)供電。與此同時(shí),電子設(shè)備還可以從外部電源充電設(shè)備(例如,圖3的外部電源充電設(shè)備310)接收較低量的功率(例如,IOOmA的預(yù)定功率電平)。例如,功率預(yù)算管理器可以通過檢測電子設(shè)備正在經(jīng)由USB協(xié)議與外部電源充電設(shè)備通信來檢測低功率狀態(tài),并且USB協(xié)議的握手階段還沒有完成。接著,在步驟508,功率預(yù)算管理器可以將相應(yīng)的功率預(yù)算動態(tài)地分配給系統(tǒng)的一個或多個組件中的每個組件。在一些實(shí)施例中,功率預(yù)算管理器可以基于可得到的功率量分配相應(yīng)的功率預(yù)算。例如,功率預(yù)算管理器可以將功率預(yù)算動態(tài)地分配給每個處理器 (例如,圖1的SoC 110或圖3的處理器304)以及NVM(例如,圖1的NVM 120、圖2的NVM 220、或圖3的NVM 306)使得處理器和NVM能夠選擇性地操作而不需要超過預(yù)定的功率電平。換句話說,功率預(yù)算管理器可以監(jiān)控NVM和處理器的累計(jì)功耗,并確保該累計(jì)功耗不會超過預(yù)定的功率電平。在其它的實(shí)施例中,功率預(yù)算管理器可以通過例如將分配給NVM的功率細(xì)分給該 NVM的一個或多個組件(例如,一個或多個圖1的NVM管芯IM或圖1的NVM控制器122) 來控制NVM的功耗。在一些情況下,功率預(yù)算管理器可以基于NVM的當(dāng)前操作狀態(tài)在NVM 的組件之間細(xì)分功率。因此,根據(jù)該NVM的哪些組件需要較大的功率,功率預(yù)算管理器會相應(yīng)地將較大的功率預(yù)算分配給那些組件并且將較小的功率預(yù)算分配給剩余的組件。在另外的實(shí)施例中,功率預(yù)算管理器可以監(jiān)控該系統(tǒng)的各個組件的功耗并相應(yīng)地分配功率。因此,響應(yīng)于檢測到該系統(tǒng)的特定組件是或需要消耗大部分功率,功率預(yù)算管理器可以將相應(yīng)地較大的功率預(yù)算分配給那個組件。通過動態(tài)地分配不同的功率預(yù)算給系統(tǒng)的各個組件,功率預(yù)算管理器可以增強(qiáng)系統(tǒng)的性能。例如,如果NVM當(dāng)前未被使用,則功率預(yù)算管理器會將較大的功率預(yù)算分配給處理器。處理器接著會通過執(zhí)行額外的操作來利用這個較大的功率預(yù)算。該性能的增強(qiáng)對于為存儲器組件分配固定的功率閾值達(dá)預(yù)定的時(shí)間段的系統(tǒng)而言是不能達(dá)到的。繼續(xù)到步驟510,功率預(yù)算管理器可以確定可用于系統(tǒng)的總功率量是否高于預(yù)定功率電平。如果,在步驟510,功率預(yù)算管理器確定可用于系統(tǒng)的總功率量不高于預(yù)定功率電平,則過程500可以返回到步驟508。在步驟508,功率預(yù)算管理器會繼續(xù)將功率預(yù)算動態(tài)地分配給該系統(tǒng)的組件。如果,在步驟510,功率預(yù)算管理器改為確定可用于系統(tǒng)的總功率量高于預(yù)定的功
1率電平,過程500會進(jìn)行到步驟512。例如,功率預(yù)算管理器可能已經(jīng)檢測到系統(tǒng)在大功率狀態(tài)下操作。在大功率狀態(tài)期間,電子設(shè)備可以從外部電源充電設(shè)備接收大量的功率(例如,500mA)。然而,電子設(shè)備的電池仍然不能提供任何功率或足以給系統(tǒng)供電的功率。在一些實(shí)施例中,功率預(yù)算管理器可以通過檢測到外部電源充電設(shè)備和電子設(shè)備之間的USB協(xié)議的握手階段已經(jīng)完成來檢測大功率狀態(tài)。作為另一個例子,功率預(yù)算管理器可能已經(jīng)檢測到該系統(tǒng)在全功率狀態(tài)下操作。 在全功率狀態(tài)期間,電子設(shè)備可以從外部電源充電設(shè)備和/或電池接收全部功率。在一些實(shí)施例中,功率預(yù)算管理器能夠通過檢測電子設(shè)備的電池完全充電而檢測到該系統(tǒng)是在全功率狀態(tài)下操作。接著,在步驟512,功率預(yù)算管理器可以移除分配給系統(tǒng)的一個或多個組件中的每個組件的相應(yīng)功率預(yù)算。在相應(yīng)功率預(yù)算已經(jīng)被移除之后,系統(tǒng)的組件能夠從外部電源充電設(shè)備吸取足夠需求的電流。過程500然后在步驟506結(jié)束。現(xiàn)在參考圖6,示出用于分配系統(tǒng)中的功率預(yù)算的過程600(例如,圖3的電子設(shè)備30幻。在一些實(shí)施例中,過程600可以代表過程500的步驟508(圖幻的更詳細(xì)的觀點(diǎn)。 因此,該系統(tǒng)可以在低功率狀態(tài)下操作,該系統(tǒng)從外部電源充電設(shè)備(例如,圖3的外部電源充電設(shè)備310)接收功率并且內(nèi)部電源(例如,圖3的電池308)不能夠獨(dú)立地給系統(tǒng)供電。在一些實(shí)施例中,總接收到的功率可以具有預(yù)定的功率電平(例如,100mA)。盡管下面的討論涉及響應(yīng)于低功率狀態(tài)停止處理器(例如,圖1的SoC 110或圖3的處理器304),但本領(lǐng)域技術(shù)人員會想到類似的方法也可以應(yīng)用于NVM(例如,圖1的 NVMl20,圖2的NVM220、或圖3的NVM306)的處理器,例如NVM控制器(例如,圖1的NVM控制器12 。因此,如果低功率狀態(tài)繼續(xù)一段較長的時(shí)間,則該處理器和該NVM控制器會交替停止過程以便增強(qiáng)系統(tǒng)的性能。過程600可以在步驟602開始。在步驟604,功率預(yù)算管理器(例如,圖1的功率預(yù)算管理器128)會將第一功率預(yù)算(例如,圖4的功率預(yù)算40 分配給處理器。接著,在步驟606,該處理器可能會發(fā)出請求(例如,讀取、擦除、或編程請求)以訪問NVM(例如,圖1的NVM 120、圖2的NVM 220、或圖3的NVM306)。例如,處理器可以發(fā)出讀取請求以訪問存儲在一個或多個NVM管芯(例如,圖1的NVM管芯124)的存儲位置中的數(shù)據(jù)。作為另一個例子,處理器會發(fā)出編程請求以將數(shù)據(jù)編程到一個或多個NVM管芯的存儲位置。在一些實(shí)施例中,為了在低功率狀態(tài)下操作的同時(shí)保存功率,處理器或NVM控制器 (例如,圖1的NVM控制器122)會限制請求以在一個時(shí)間點(diǎn)訪問僅一個NVM管芯。在其它的實(shí)施例中,當(dāng)輸入/輸出(“I/O”)信號正在處理器和NVM控制器之間傳輸時(shí)會阻斷其它系統(tǒng)操作。繼續(xù)到步驟608,功率預(yù)算管理器可以將第二功率預(yù)算(例如,圖4的功率預(yù)算 406)分配給處理器,其中第二功率預(yù)算可能低于第一功率預(yù)算。較低量的功率可以被分配給處理器,因?yàn)樵诎l(fā)出請求之后,處理器可能不需要執(zhí)行任何其它重要的操作。在步驟610,功率預(yù)算管理器可以將第三功率預(yù)算(例如,圖4的功率預(yù)算408)分配給NVM,其中第二和第三功率預(yù)算的組合等于或小于預(yù)定的功率電平(例如,圖4的功率電平420)。在一些情況下,因?yàn)镹VM可以在從處理器接收請求之后執(zhí)行大部分系統(tǒng)操作,所以相對于處理器而言NVM可以請求額外的功率。因此,第三功率預(yù)算可能高于第二功率預(yù)笪弁。接著,在步驟612,功率預(yù)算管理器可以停止處理器以限制功耗,使得處理器不超過第二功率預(yù)算。例如,處理器可以通過時(shí)鐘門控(例如,通過禁用處理器電路的一個或多個部分)停止。作為另一個例子,處理器通過使其時(shí)鐘速率減速來停止(例如,將它的時(shí)鐘速率降低到最小水平)。繼續(xù)到步驟614,功率預(yù)算管理器可以確定中斷該處理器停止的請求是否已經(jīng)被收到。例如,功率預(yù)算管理器可以從電子系統(tǒng)(例如,圖3的電子系統(tǒng)300)中的一個或多個組件接收中斷請求。例如,功率預(yù)算管理器(和/或處理器)可以從電子設(shè)備(例如,圖 1的電子設(shè)備100、圖2的電子設(shè)備200、和/或圖3的電子設(shè)備302)的組件或耦合到電子設(shè)備的外部電源充電設(shè)備(例如,圖3的外部電源充電設(shè)備310)接收中斷請求。在一些實(shí)施例中,功率預(yù)算管理器可以從NVM接收中斷請求。例如,NVM控制器可以提供中斷請求給處理器,該中斷請求指示處理器以較高的功率電平操作。在一些實(shí)施例中,中斷請求可以被傳輸以便使得能夠在處理器和NVM控制器之間傳輸I/O信號。作為另一個例子,NVM控制器可以發(fā)出一個或多個標(biāo)志,其中一個或多個標(biāo)志可以表示一個或多個存儲操作何時(shí)已經(jīng)完成。如果,在步驟614,功率預(yù)算管理器確定還沒有接收到中斷該停止的請求,過程 600可以返回到步驟612。在步驟612,功率預(yù)算管理器可以繼續(xù)使處理器停止。如果,在步驟614,功率預(yù)算管理器改為確定已經(jīng)接收到中斷該停止的請求,則過程600可以進(jìn)行到步驟616。在步驟616,功率預(yù)算管理器可以將第一功率預(yù)算分配給處理器。在一些實(shí)施例中,可以分配第一功率預(yù)算因?yàn)樘幚砥骺梢孕枰罅康墓β室员憷^續(xù)執(zhí)行系統(tǒng)操作(例如,傳輸I/O信號到NVM控制器或從NVM控制器傳輸I/O信號)。接著,在步驟618,功率預(yù)算管理器可以將第四功率預(yù)算(例如,圖4的功率預(yù)算 404)分配給NVM,其中第一和第四功率預(yù)算的組合等于或小于預(yù)定功率電平。在一些情況下,因?yàn)樘幚砥髟谝呀?jīng)中斷停止之后執(zhí)行大部分系統(tǒng)操作,所以相對于NVM而言處理器可能需要額外的功率。因此,第一功率預(yù)算可能高于第四功率預(yù)算。過程600接著在步驟620結(jié)束。要理解的是,圖5和圖6的過程500和600分別僅僅是示例性的。在不背離本發(fā)明的范圍的情況下,可以刪除、修改、或組合任何步驟,并且可以添加任何額外的步驟。在本公開的一個實(shí)施例中,提供了一種用于動態(tài)管理包括處理器和非易失性存儲器(“NVM”)的系統(tǒng)中的功率的方法,該方法包括在低功率狀態(tài)下操作該系統(tǒng),其中該系統(tǒng)從外部電源充電設(shè)備接收功率,接收到的功率在系統(tǒng)和外部電源充電設(shè)備之間的握手階段期間具有預(yù)定的功率電平;執(zhí)行該握手階段;并且動態(tài)地分配功率預(yù)算給處理器和NVM中的每一個使得在不超過該預(yù)定的功率電平的情況下處理器和NVM共同操作。根據(jù)本實(shí)施例的一個方面,系統(tǒng)的電池不能為系統(tǒng)獨(dú)立提供足夠的功率使得系統(tǒng)可以在正常模式下操作。根據(jù)本實(shí)施例的一個方面,動態(tài)地分配功率預(yù)算進(jìn)一步包括分配第一功率預(yù)算給處理器;從該處理器發(fā)出訪問NVM的請求;分配第二功率預(yù)算給處理器,其中第二功率預(yù)算低于第一功率預(yù)算;以及
1
使處理器停止來限制處理器的功耗使得該功耗不會超過該第二功率預(yù)算。根據(jù)本實(shí)施例的一個方面,發(fā)出請求包括同時(shí)限制訪問NVM的所有可得到的管芯的子集合的請求,該子集合包括少于能夠同時(shí)被訪問的所有管芯的多個管芯。根據(jù)本實(shí)施例的一個方面,該停止進(jìn)一步包括時(shí)鐘門控處理器。根據(jù)本實(shí)施例的一個方面,該停止進(jìn)一步包括使該處理器的時(shí)鐘速率減速。根據(jù)本實(shí)施例的一個方面,該方法進(jìn)一步包括將第三功率預(yù)算分配給NVM,其中第二和第三功率預(yù)算的組合等于或小于預(yù)定的功率電平。根據(jù)本實(shí)施例的一個方面,該第三功率預(yù)算高于該第二功率預(yù)算。根據(jù)本實(shí)施例的一個方面,該方法進(jìn)一步包括接收中斷該處理器的停止的請求; 以及響應(yīng)于接收到中斷處理器的停止的請求,將第一功率預(yù)算分配給該處理器。根據(jù)本實(shí)施例的一個方面,該接收中斷請求進(jìn)一步包括接收標(biāo)志,其中該標(biāo)志表示至少一個存儲器操作何時(shí)已經(jīng)完成。根據(jù)本實(shí)施例的一個方面,該方法進(jìn)一步包括將第四功率預(yù)算分配給NVM,其中第一和第四功率預(yù)算的組合等于或小于該預(yù)定的功率電平。根據(jù)本實(shí)施例的一個方面,第一功率預(yù)算高于第四功率預(yù)算。在本公開的一個實(shí)施例中,提供一種系統(tǒng)包括用于控制系統(tǒng)的操作的處理器; 操作為與該處理器通信的非易失性存儲器(“NVM”),該NVM包括NVM控制器和多個NVM管芯,該NVM控制器操作為選擇性地啟動該多個NVM管芯中的任何一個;以及包括在處理器中的功率預(yù)算管理器,操作為將相應(yīng)的功率預(yù)算動態(tài)地分配給該處理器和NVM使得該處理器和該NVM的累積功耗不超過預(yù)定的功率電平。根據(jù)本實(shí)施例的一個方面,可以在處理器和NVM控制的至少一個上執(zhí)行功率預(yù)算
管理器。根據(jù)本實(shí)施例的一個方面,該NVM控制器操作為向處理器提供中斷請求,所述中斷請求指令該處理器以較大功率電平操作。根據(jù)本實(shí)施例的一個方面,功率預(yù)算管理器操作為監(jiān)控可得到的功率量;并且基于該可得到的功率量將功率預(yù)算分配給該系統(tǒng)的多個組件中的每個組件。根據(jù)本實(shí)施例的一個方面,該系統(tǒng)的多個組件包括處理器和NVM中的至少一個。根據(jù)本實(shí)施例的一個方面,功率預(yù)算管理器操作為檢測與可得到的功率量相關(guān)聯(lián)的狀態(tài)。在本公開的一個實(shí)施例中,提供一種在電子設(shè)備中分配功率預(yù)算的方法,該方法包括確定可用于電子設(shè)備的總功率量低于預(yù)定的功率電平;并且將相應(yīng)的功率預(yù)算動態(tài)地分配給該電子設(shè)備的多個組件中的每個組件。根據(jù)本實(shí)施例的一個方面,動態(tài)地分配相應(yīng)的功率預(yù)算還包括將分配給非易失性存儲器的功率預(yù)算細(xì)分給該非易失性存儲器的一個或多個組件。根據(jù)本實(shí)施例的一個方面,確定可得到的總功率量包括檢測低功率狀態(tài),其中電子設(shè)備從外部電源充電設(shè)備接收低量的功率并且該電子設(shè)備的電池不能獨(dú)立地給該電子設(shè)備供電。根據(jù)本實(shí)施例的一個方面,檢測到低功率狀態(tài)包括檢測到該電子設(shè)備經(jīng)由通用串行總線(“USB”)協(xié)議與該外部電源充電設(shè)備通信;以及檢測到該USB協(xié)議的握手階段還沒有完成。根據(jù)本實(shí)施例的一個方面,該方法進(jìn)一步包括確定可用于系統(tǒng)的總功率量高于預(yù)定的功率電平;并且移除分配給該系統(tǒng)的多個組件中的每個組件的相應(yīng)的功率預(yù)算。根據(jù)本實(shí)施例的一個方面,確定可得到的總功率量包括檢測到外部電源充電設(shè)備與電子設(shè)備之間的USB協(xié)議的握手階段已經(jīng)完成。根據(jù)本實(shí)施例的一個方面,該多個組件包括設(shè)備處理器和非易失性NAND閃存,其中第一功率預(yù)算被分配給該設(shè)備處理器以及第二功率預(yù)算被分配給NAND閃存。在本公開的一個實(shí)施例中,提供一種系統(tǒng)包括用于控制該系統(tǒng)的操作的處理器; 以及操作為與該處理器通信的非易失性存儲器(“NVM”),該NVM包括NVM控制器以及多個NVM管芯,該NVM控制器操作為選擇性地啟動多個NVM管芯中的任何一個;以及包括在該處理器中的功率預(yù)算管理器,操作為確定可用于該電子設(shè)備的總功率量低于預(yù)定的功率電平,并且將相應(yīng)的功率預(yù)算分配給該電子設(shè)備的多個組件中的每個組件。根據(jù)本實(shí)施例的一個方面,該NVM控制器操作為向處理器提供中斷請求,其指令該處理器以較高的功率電平操作。根據(jù)本實(shí)施例的一個方面,該功率預(yù)算管理器操作為監(jiān)控可得到的功率量,并且基于該可得到的功率量將功率預(yù)算分配給該系統(tǒng)的多個組件中的每個組件。本發(fā)明的所描述的實(shí)施例是為了示例性的目的而不是限制性的目的。
權(quán)利要求
1.一種用于動態(tài)管理包括處理器和非易失性存儲器(“NVM”)的系統(tǒng)中的功率的方法, 所述方法包括在低功率狀態(tài)下操作所述系統(tǒng),其中所述系統(tǒng)從外部電源充電設(shè)備接收功率,所接收到的功率在系統(tǒng)和外部電源充電設(shè)備之間的握手階段期間具有預(yù)定的功率電平;執(zhí)行握手階段;以及動態(tài)地分配功率預(yù)算給處理器和NVM中的每一個使得在不超過預(yù)定的功率電平的情況下處理器和NVM共同操作。
2.權(quán)利要求1所述的方法,其中,系統(tǒng)的電池不能獨(dú)立地給系統(tǒng)提供足夠的功率使得該系統(tǒng)能夠在正常模式下操作。
3.權(quán)利要求1所述的方法,其中,動態(tài)地分配功率預(yù)算進(jìn)一步包括分配第一功率預(yù)算給處理器;從所述處理器發(fā)出訪問NVM的請求;分配第二功率預(yù)算給處理器,其中,第二功率預(yù)算低于第一功率預(yù)算;以及使處理器停止來限制處理器的功耗使得所述功耗不超過第二功率預(yù)算。
4.權(quán)利要求3所述的方法,其中,發(fā)出請求包括同時(shí)限制訪問NVM的所有可得到的管芯的子集合的請求,所述子集合包括少于能夠同時(shí)被訪問的所有管芯的多個管芯。
5.權(quán)利要求3所述的方法,其中,所述停止進(jìn)一步包括時(shí)鐘門控處理器或使該處理器的時(shí)鐘速率減速。
6.權(quán)利要求3所述的方法,進(jìn)一步包括將第三功率預(yù)算分配給NVM,其中第二和第三功率預(yù)算的組合等于或小于預(yù)定的功率電平。
7.權(quán)利要求6所述的方法,其中,第三功率預(yù)算高于第二功率預(yù)算。
8.權(quán)利要求6所述的方法,進(jìn)一步包括接收中斷處理器的停止的請求;以及響應(yīng)于接收到中斷處理器的停止的請求,將第一功率預(yù)算分配給處理器。
9.權(quán)利要求3所述的方法,其中,接收中斷的請求進(jìn)一步包括接收標(biāo)志,其中所述標(biāo)志表示至少一個存儲器操作何時(shí)已經(jīng)完成。
10.權(quán)利要求8所述的方法,進(jìn)一步包括將第四功率預(yù)算分配給NVM,其中第一和第四功率預(yù)算的組合等于或小于預(yù)定的功率電平。
11.權(quán)利要求10所述的方法,其中,第一功率預(yù)算高于第四功率預(yù)算。
12.—種系統(tǒng),包括用于控制系統(tǒng)的操作的處理器;和操作為與處理器通信的非易失性存儲器(“NVM”),所述NVM包括NVM控制器和多個 NVM管芯,所述NVM控制器操作為選擇必地啟動所述多個NVM管芯中的任何一個;以及功率預(yù)算管理器,與處理器和NVM耦合并且操作為將相應(yīng)的功率預(yù)算動態(tài)地分配給處理器和NVM使得處理器和NVM的累積功耗不超過預(yù)定的功率電平。
13.權(quán)利要求12所述的系統(tǒng),其中,NVM控制器操作為向處理器提供中斷請求,所述中斷請求指令處理器以較高的功率電平操作。
14.權(quán)利要求12所述的系統(tǒng),其中,功率預(yù)算管理器操作為監(jiān)控可得到的功率量;并且基于所述可得到的功率量將功率預(yù)算分配給系統(tǒng)的多個組件中的每個組件。
15.一種在電子設(shè)備中分配功率預(yù)算的方法,所述方法包括確定可用于電子設(shè)備的總功率量低于預(yù)定的功率電平;并且將相應(yīng)的功率預(yù)算動態(tài)地分配給所述電子設(shè)備的多個組件中的每個組件。
16.權(quán)利要求15所述的方法,其中,動態(tài)地分配相應(yīng)的功率預(yù)算還包括將分配給非易失性存儲器的功率預(yù)算細(xì)分給非易失性存儲器的一個或多個組件。
17.權(quán)利要求15所述的方法,其中,確定可得到的總功率量包括檢測低功率狀態(tài),其中,電子設(shè)備從外部電源充電設(shè)備接收低量的功率并且電子設(shè)備的電池不能獨(dú)立地給電子設(shè)備供電。
18.權(quán)利要求16所述的方法,其中,檢測低功率狀態(tài)包括檢測到電子設(shè)備經(jīng)由通用串行總線(“USB”)協(xié)議與外部電源充電設(shè)備通信;以及檢測到USB協(xié)議的握手階段還沒有完成。
19.權(quán)利要求15所述的方法,進(jìn)一步包括確定可用于系統(tǒng)的總功率量高于預(yù)定的功率電平;并且移除分配給系統(tǒng)的多個組件中的每個組件的相應(yīng)的功率預(yù)算。
20.權(quán)利要求19所述的方法,其中,確定可得到的總功率量包括檢測到外部電源充電設(shè)備與電子設(shè)備之間的USB協(xié)議的握手階段已經(jīng)完成。
21.權(quán)利要求15所述的方法,其中,所述多個組件包括設(shè)備處理器和非易失性NAND閃存,其中第一功率預(yù)算被分配給設(shè)備處理器以及第二功率預(yù)算被分配給NAND閃存。
22.—種系統(tǒng),包括用于控制系統(tǒng)的操作的處理器;以及操作為與處理器通信的非易失性存儲器(“NVM”),所述NVM包括NVM控制器以及多個 NVM管芯,所述NVM控制器操作為選擇性地啟動多個NVM管芯中的任何一個;以及功率預(yù)算管理器,與處理器和NVM耦合并且操作為確定可用于電子設(shè)備的總功率量低于預(yù)定的功率電平,并且將相應(yīng)的功率預(yù)算動態(tài)地分配給電子設(shè)備的多個組件中的每個組件。
23.權(quán)利要求22所述的系統(tǒng),其中,NVM控制器操作為向處理器提供中斷請求,所述中斷請求指令該處理器以較高的功率電平操作。
24.權(quán)利要求22所述的系統(tǒng),其中,功率預(yù)算管理器操作為監(jiān)控可得到的功率量,并且基于所述可得到的功率量將功率預(yù)算分配給系統(tǒng)的多個組件中的每個組件。
25.一種用于動態(tài)地控制非易失性存儲器中的操作的設(shè)備,所述非易失性存儲器包括用于執(zhí)行權(quán)利要求1-11以及15-21中的任何一個所述的方法中的每個步驟的裝置。
全文摘要
本發(fā)明涉及用于為具有非易失性存儲器的系統(tǒng)動態(tài)地分配功率的系統(tǒng)和方法。系統(tǒng)的功率預(yù)算管理器可以確定可用于系統(tǒng)的總功率量是否低于預(yù)定的功率電平(例如,低功率狀態(tài))。在系統(tǒng)在低功率狀態(tài)下操作的同時(shí),功率預(yù)算管理器可以在系統(tǒng)的多個組件之間動態(tài)地分配功率(例如,處理器和非易失性存儲器)。
文檔編號G06F13/18GK102375788SQ20111027853
公開日2012年3月14日 申請日期2011年7月26日 優(yōu)先權(quán)日2010年7月26日
發(fā)明者K·赫曼, M·拜奧姆, N·J·瓦克拉特 申請人:蘋果公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1