專利名稱::非易失性存儲系統(tǒng)的內(nèi)部維護調(diào)度請求的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明大體上涉及海量數(shù)字?jǐn)?shù)據(jù)存儲系統(tǒng)(massdigitaldatastoragesystem)。更詳細地說,本發(fā)明涉及用于有效地使物理塊使用信息能夠在非易失性存儲系統(tǒng)內(nèi)更新的系統(tǒng)和方法。
背景技術(shù):
:由于如快速存儲器存儲系統(tǒng)之類的非易失性存儲系統(tǒng)的緊湊物理尺寸和非易失性存儲器的可重復(fù)性重新編程的能力,所述存儲系統(tǒng)的使用越來越多??焖俅鎯ζ鞔鎯ο到y(tǒng)的緊湊物理尺寸便利了所述存儲系統(tǒng)在日益流行的裝置中的使用。使用快速存儲器存儲系統(tǒng)的裝置包括(但不限于)數(shù)字式照相機、數(shù)字式攝像機、數(shù)字式音樂播放器、手持式個人電腦和全球定位裝置??芍貜?fù)性重新編程包括在快速存儲器存儲系統(tǒng)中的非易失性存儲器的能力使得能夠使用并再使用快速存儲器存儲系統(tǒng)。一般地,快速存儲器存儲系統(tǒng)可包括快速存儲器卡和快速存儲器芯片集。快速存儲器芯片集一般包括快速存儲器組件和控制器組件。一般地,快速存儲器芯片集可經(jīng)配置以裝配到嵌入式系統(tǒng)中。所述組合件或主機系統(tǒng)的制造商一般需要組件形式的快速存儲器以及其它組件,接著將快速存儲器和其它組件裝配到主機系統(tǒng)中。當(dāng)將存儲系統(tǒng)斷電時,或者因為用戶已關(guān)閉存儲系統(tǒng)或者因為已存在存儲系統(tǒng)的功率損失而發(fā)生斷電。如果用戶選擇將存儲系統(tǒng)斷電,那么存儲系統(tǒng)一般會完成大體所有的當(dāng)前處理,例如,存儲系統(tǒng)完成將來自主機系統(tǒng)的文件寫入到與存儲系統(tǒng)相關(guān)的目錄中的處理過程。另外,存儲系統(tǒng)內(nèi)的信息或數(shù)據(jù)可根據(jù)當(dāng)前最新狀態(tài)存儲。如果(例如)由于因電源故障而導(dǎo)致的意外的或突然的功率損失而發(fā)生斷電,那么就不會完成當(dāng)前處理且一般替代地異常中斷。另外,會丟失一些信息或數(shù)據(jù)。在“正常”情況下斷電的存儲系統(tǒng)(例如,回應(yīng)于切斷存儲系統(tǒng)的電源)一般不需要執(zhí)行磁盤掃描或數(shù)據(jù)恢復(fù),因為在接收到斷電請求時發(fā)生的所有處理均已完成。此一般稱為“正常關(guān)斷”或“正常斷電”。然而,在“異常”情況下斷電的存儲系統(tǒng)(例如,由于電源故障、電池故障或意外電源移除),如所述領(lǐng)域技術(shù)人員應(yīng)了解的那樣,一般需要執(zhí)行磁盤掃描和數(shù)據(jù)恢復(fù)。異常情況下斷電一般稱為“異常關(guān)斷”或“異常斷電”。當(dāng)發(fā)生異常關(guān)斷時,存儲在存儲系統(tǒng)中的信息可能丟失。在一些情況下,存儲在擦除計數(shù)塊中的特定物理塊的擦除計數(shù)可具有顯著低于所述物理塊的實際擦除計數(shù)的值。當(dāng)存儲在擦除計數(shù)塊中的擦除計數(shù)值顯著低于物理塊的對應(yīng)實際擦除計數(shù)時,在異常關(guān)斷且隨后加電后,物理塊的擦除計數(shù)可有效地重設(shè)成所存儲的擦除計數(shù)。結(jié)果,物理塊可具有比存儲在物理塊內(nèi)的擦除計數(shù)所指示的磨損顯著更多的磨損。因此,需要能夠周期性更新存儲在存儲系統(tǒng)中的信息的方法和系統(tǒng)。即,需要允許相對規(guī)則地更新與存儲系統(tǒng)相關(guān)的數(shù)據(jù)的有效方法,使得當(dāng)異常關(guān)斷存儲系統(tǒng)且接著對存儲系統(tǒng)加電時,加電時使用數(shù)據(jù)恢復(fù)處理所恢復(fù)的數(shù)據(jù)相當(dāng)新。
發(fā)明內(nèi)容本發(fā)明涉及一種允許更新待調(diào)度的數(shù)據(jù)結(jié)構(gòu)的系統(tǒng)和方法。根據(jù)本發(fā)明的一個方面,一種用于操作一具有非易失性存儲器的存儲系統(tǒng)的方法涉及判定何時更新至少一個數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,所述非易失性存儲器包括復(fù)數(shù)個物理塊和復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu),所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一擦除計數(shù)塊。當(dāng)判定將要更新所述內(nèi)容時,排隊或調(diào)度對更新數(shù)據(jù)結(jié)構(gòu)的內(nèi)容的請求,且在請求有效地到達隊列頂部時執(zhí)行所述請求。在一個實施例中,更新數(shù)據(jù)結(jié)構(gòu)的內(nèi)容包括更新擦除計數(shù)塊的內(nèi)容以指示每一物理塊的大體當(dāng)前狀態(tài)。當(dāng)如關(guān)于物理塊上的磨損之類的動態(tài)信息在相對較長的時間段內(nèi)未更新且出現(xiàn)異常斷電時,隨后的數(shù)據(jù)恢復(fù)處理可導(dǎo)致過期信息的恢復(fù),因為大體只有過期的信息可恢復(fù),而當(dāng)前準(zhǔn)確信息不可恢復(fù)。為了增大所恢復(fù)信息是最新信息的可能性,可調(diào)度允許大體周期性更新存儲在數(shù)據(jù)結(jié)構(gòu)中的信息的內(nèi)部維護程序。因此,如果(例如)一天一次調(diào)度維護,那么可有效地認(rèn)為存儲在數(shù)據(jù)結(jié)構(gòu)中的信息生存期小于一天。根據(jù)本發(fā)明的另一方面,一種存儲系統(tǒng)包括一非易失性存儲器,所述非易失性存儲器包括復(fù)數(shù)個物理塊和復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu),所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一含有與物理塊相關(guān)且指示物理塊已被擦除的次數(shù)的擦除計數(shù)的擦除計數(shù)塊。一種用于操作所述存儲系統(tǒng)的方法包括判定何時執(zhí)行內(nèi)部維護處理。內(nèi)部維護處理經(jīng)配置以更新擦除計數(shù)塊中的物理塊的擦除計數(shù)。所述方法也包括當(dāng)判定將要執(zhí)行內(nèi)部維護請求時將用于內(nèi)部維護處理的請求排隊;和執(zhí)行內(nèi)部維護處理。在一個實施例中,執(zhí)行內(nèi)部維護處理包括更新擦除計數(shù)塊中的物理塊的擦除計數(shù);和更新復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)的第一數(shù)據(jù)結(jié)構(gòu)。第一數(shù)據(jù)結(jié)構(gòu)(其可以是功率管理塊)經(jīng)配置以含有在對存儲系統(tǒng)加電時使用的信息,所述信息包括物理塊的擦除計數(shù)。在另一個實施例中,判定何時執(zhí)行內(nèi)部維護處理包括將第一值與一臨界值相比較。在所述實施例中,當(dāng)?shù)谝恢荡篌w等于臨界值時,可判定將要執(zhí)行內(nèi)部維護處理?;蛘撸诹硪粋€實施例中,判定何時執(zhí)行內(nèi)部維護處理包括獲得與存儲系統(tǒng)相關(guān)的時間;和判定所述時間何時指示將要執(zhí)行內(nèi)部維護處理。一旦閱讀了以下的具體實施方式并研究了諸圖中的各圖式,本發(fā)明的此等和其它優(yōu)點將顯而易見。參考結(jié)合附圖而作的以下描述可最好地理解本發(fā)明,其中圖1a是包括非易失性存儲器的一般主機系統(tǒng)的圖解表示。圖1b是存儲裝置(例如,圖1a的存儲裝置120)的圖解表示。圖1c是包括嵌入式非易失性存儲器的主機系統(tǒng)的圖解表示。圖2是可根據(jù)本發(fā)明的一實施例調(diào)度內(nèi)部維護請求的系統(tǒng)的方框圖表示。圖3是處理流程圖,其根據(jù)本發(fā)明的一個實施例說明一種使用允許經(jīng)調(diào)度維護請求的非易失性存儲器組件的方法。圖4是處理流程圖,其根據(jù)本發(fā)明的一個實施例說明一種執(zhí)行經(jīng)調(diào)度內(nèi)部維護的方法(例如,圖3的步驟320)。圖5是處理流程圖,其根據(jù)本發(fā)明的一個實施例說明一種用于操作整個系統(tǒng)的方法,在整個系統(tǒng)內(nèi)與存儲器組件相關(guān)的驅(qū)動器可調(diào)度內(nèi)部維護請求。圖6a是根據(jù)本發(fā)明的一實施例的物理塊和更新前的擦除計數(shù)塊圖解表示。圖6b是根據(jù)本發(fā)明的一實施例的擦除計數(shù)塊(例如,圖6a的擦除計數(shù)塊610)在發(fā)生經(jīng)調(diào)度更新之后的圖解表示。圖7是根據(jù)本發(fā)明的一實施例的系統(tǒng)架構(gòu)的方框圖表示。圖8是處理流程圖,其根據(jù)本發(fā)明的一實施例說明一種使用允許自適應(yīng)表備份的非易失性存儲器組件的方法。具體實施例方式存儲系統(tǒng)的功率損失一般可導(dǎo)致存儲系統(tǒng)內(nèi)的大量問題。所述問題包括(但不限于)在將一個文件寫入快速存儲器的處理過程中功率損失時數(shù)據(jù)丟失。為了校正由于功率損失而產(chǎn)生的問題,可在隨后對存儲系統(tǒng)進行加電操作時執(zhí)行恢復(fù)操作以維持?jǐn)?shù)據(jù)完整性。當(dāng)可恢復(fù)的信息(例如,擦除計數(shù)信息,其提供已每隔多久對物理塊進行一次擦除的測量)不是最新信息時,所恢復(fù)的信息可不準(zhǔn)確,且可能導(dǎo)致存儲系統(tǒng)內(nèi)的問題。例如,一個塊實際上可具有比由所恢復(fù)擦除計數(shù)指示的磨損更大的磨損,這在一個塊接近其使用壽命末期但是并未被獲知的情況下是有問題的。盡管一般在正常斷電過程中更新一些如擦除計數(shù)之類的動態(tài)(例如,變化)信息,但是如果存儲系統(tǒng)在相對長的時間段中未斷電,那么就不會更新這個動態(tài)信息。如果在相對長的時間段中未更新動態(tài)信息且出現(xiàn)異常斷電,那么隨后的數(shù)據(jù)恢復(fù)處理可導(dǎo)致恢復(fù)過期信息。為了增大所恢復(fù)信息是最新信息的可能性,可大體上周期性地更新信息。在一個實施例中,可周期性地調(diào)度允許更新一些信息的內(nèi)部維護。經(jīng)調(diào)度的內(nèi)部維護也可使存儲系統(tǒng)內(nèi)的特定的表或塊能夠有效地在(例如)系統(tǒng)存儲器或非易失性存儲器的預(yù)留區(qū)中備份。可從使用經(jīng)調(diào)度的內(nèi)部維護中獲益的快速存儲器系統(tǒng)或(更一般地)非易失性存儲裝置一般包括快速存儲器卡和芯片集。一般地,快速存儲器系統(tǒng)與主機系統(tǒng)結(jié)合使用,使得主機系統(tǒng)可將數(shù)據(jù)寫入快速存儲器系統(tǒng)中,或從快速存儲器系統(tǒng)讀取數(shù)據(jù)。然而,一些快速存儲器系統(tǒng)包括嵌入式快速存儲器和在主機上執(zhí)行以大體用作所述嵌入式快速存儲器的控制器的軟件,下文將關(guān)于圖1c描述此。參看圖1a,將描述包括非易失性存儲裝置(例如,CF卡(CompactFlashmemorycard))的一般主機系統(tǒng)。主機或計算機系統(tǒng)100一般包括系統(tǒng)總線104,所述系統(tǒng)總線允許微處理器108、隨機存取存儲器(RAM)112和輸入/輸出電路116通信。應(yīng)了解,主機系統(tǒng)100一般可包括其它組件,例如,顯示裝置和連網(wǎng)裝置,并未展示這些組件來進行說明。一般地,主機系統(tǒng)100能夠捕獲的信息包括(但不限于)靜止圖像信息、聲頻信息和視頻圖像信息??蓪崟r捕獲所述信息,且可用無線方式將所述信息傳輸?shù)街鳈C系統(tǒng)100。盡管主機系統(tǒng)100大體上可以是任何系統(tǒng),但是主機系統(tǒng)100一般是如數(shù)字式相機、攝像機、蜂巢式通信裝置、音頻播放器或視頻播放器之類的系統(tǒng)。然而,應(yīng)了解,主機系統(tǒng)100一般大體上可以是存儲數(shù)據(jù)或信息并取回數(shù)據(jù)或信息的任何系統(tǒng)。主機系統(tǒng)100也可以是僅捕獲數(shù)據(jù)或僅取回數(shù)據(jù)的系統(tǒng)。即,在一個實施例中,主機系統(tǒng)100可以是存儲數(shù)據(jù)的專用系統(tǒng),或者主機系統(tǒng)100可以是讀取數(shù)據(jù)的專用系統(tǒng)。舉例而言,主機系統(tǒng)100可以是配置來僅寫入或存儲數(shù)據(jù)的存儲寫入器?;蛘?,主機系統(tǒng)100可以是如MP3播放器之類的裝置,其一般配置來讀取或取回數(shù)據(jù),且并不捕獲數(shù)據(jù)。非易失性存儲裝置120(其在一實施例中是可移動非易失性存儲裝置)經(jīng)配置以與總線104連接來存儲信息??蛇x的接口塊130可允許非易失性存儲裝置120與總線104直接連接。當(dāng)輸入/輸出電路塊116存在時,輸入/輸出電路塊116用于減少總線104上的負(fù)載,其將為所屬領(lǐng)域技術(shù)人員所了解。非易失性存儲裝置120包括非易失性存儲器124和一個可選存儲控制系統(tǒng)128。在一個實施例中,非易失性存儲裝置可在單個芯片或晶粒上實施?;蛘?,非易失性存儲裝置120可在多芯片模塊上實施,或在多個離散組件上實施,所述多個離散組件可形成一芯片集且可一起用作非易失性存儲裝置120。下文將關(guān)于圖1b更詳細地描述非易失性存儲裝置120的一個實施例。非易失性存儲器124(例如,如NAND快速存儲器之類的快速存儲器)經(jīng)配置以存儲數(shù)據(jù),使得可視需要存取并讀取數(shù)據(jù)。盡管應(yīng)了解非易失性存儲器124中的一些數(shù)據(jù)并不是可擦除的,但是也可適當(dāng)?shù)夭脸鎯υ诜且资源鎯ζ?24中的數(shù)據(jù)。存儲數(shù)據(jù)、讀取數(shù)據(jù)和擦除數(shù)據(jù)的處理一般由存儲控制系統(tǒng)128控制,或者,當(dāng)存儲控制系統(tǒng)128不存在時,由微處理器108所執(zhí)行的軟件控制所述處理??晒芾矸且资源鎯ζ?24的操作使得通過基本上使非易失性存儲器124的各區(qū)大體均等地磨損來大體最大化非易失性存儲器124的壽命。一般已將非易失性存儲裝置120描述為包括一個可選存儲控制系統(tǒng)128,即,控制器。通常,非易失性存儲裝置120可包括用于非易失性存儲器124和存儲控制系統(tǒng)128(即,控制器)功能的獨立芯片。舉例而言,盡管包括(但不限于)PC卡、緊湊存儲器卡、多媒體卡和安全數(shù)字卡的非易失性存儲裝置包括可在一個獨立芯片上實施的控制器,但是其它非易失性存儲裝置不可包括在一個獨立芯片上實施的控制器。在非易失性存儲裝置120不包括獨立的存儲器芯片和控制器芯片的實施例中,存儲器和控制器功能可整合到單個芯片中,其將如所屬領(lǐng)域技術(shù)人員所了解?;蛘?,例如在如上文所述的非易失性存儲裝置120不包括存儲控制器128的實施例中,存儲控制系統(tǒng)128的功能可由微處理器108提供。參看圖1b,將根據(jù)本發(fā)明的一個實施例更詳細地描述非易失性存儲裝置120。如上文所述,非易失性存儲裝置120包括非易失性存儲器124且可包括存儲控制系統(tǒng)128。盡管(例如)當(dāng)存儲器124是嵌入式NAND裝置時,非易失性存儲裝置120不可包括控制系統(tǒng)128,但是存儲器124和控制系統(tǒng)128(或控制器)可以是非易失性存儲裝置120的主要組件。存儲器124可以是在半導(dǎo)體基板上形成的存儲單元的陣列,其中通過將兩個或兩個以上的電荷電平中的一個電荷電平存儲到存儲單元的個別存儲元件上,將數(shù)據(jù)的一個或一個以上的位存儲在個別存儲單元中。非易失性快速電可擦除可編程只讀存儲器(EEPROM)是用于所述系統(tǒng)的存儲器的共同類型的一個實例。當(dāng)控制系統(tǒng)128存在時,控制系統(tǒng)128經(jīng)過總線15傳遞到使用存儲系統(tǒng)來存儲數(shù)據(jù)的主計算機或其它系統(tǒng)??偩€15一般是圖1a的總線104的一部分??刂葡到y(tǒng)128也控制存儲器124(其可包括存儲單元陣列11)的操作,來寫入由主機提供的數(shù)據(jù)、讀取由主機請求的數(shù)據(jù)并執(zhí)行在操作存儲器124中的多種內(nèi)務(wù)處理功能??刂葡到y(tǒng)128一般包括通用微處理器,其具有相關(guān)的非易失性軟件存儲器、多種邏輯電路和其類似物。通常包括一個或一個以上的狀態(tài)機來控制特定例行程序的性能。存儲單元陣列11一般由控制系統(tǒng)128或微處理器108通過地址解碼器17尋址。解碼器17將正確的電壓施加到陣列11的門線(gateline)和位線(bitline),以將數(shù)據(jù)編程到正由控制系統(tǒng)128尋址的一組存儲單元、從所述存儲單元讀取數(shù)據(jù)或擦除所述存儲單元。額外的電路19包括編程驅(qū)動器,其控制施加到陣列元件的電壓,所述電壓取決于正被編程到經(jīng)尋址單元組中的數(shù)據(jù)。電路19也包括讀出放大器(senseamplifier)和從經(jīng)尋址的存儲單元組中讀取數(shù)據(jù)所必要的其它電路。待變成到陣列11中的數(shù)據(jù)或最近從陣列11中讀取的數(shù)據(jù)一般都存儲在控制系統(tǒng)128內(nèi)的緩沖存儲器21中。控制系統(tǒng)128通常也含有用于暫時存儲指令和狀態(tài)數(shù)據(jù)和其類似物的多種寄存器。將陣列11劃分成許多存儲單元塊0-N。塊一般是最小的擦除單元,這對于快速EEPROM系統(tǒng)而言很普通。即,每一塊含有一起被擦除的最小數(shù)量的存儲單元。一般將每一塊劃分成許多頁。所屬領(lǐng)域技術(shù)人員應(yīng)了解,一頁可以是最小的編程單元。即,基本編程操作將數(shù)據(jù)寫入存儲單元的一頁最小量中,或從所述最小量中讀取數(shù)據(jù)。數(shù)據(jù)的一個或一個以上扇區(qū)一般存儲在每一頁內(nèi)。如圖1b所示,一個扇區(qū)包括用戶數(shù)據(jù)和系統(tǒng)開銷數(shù)據(jù)。系統(tǒng)開銷數(shù)據(jù)一般包括已根據(jù)扇區(qū)的用戶數(shù)據(jù)計算的誤差校正碼(ECC)。當(dāng)將數(shù)據(jù)編程到陣列11中時,控制系統(tǒng)128的部分23計算ECC,且當(dāng)從陣列11中讀取數(shù)據(jù)時,控制系統(tǒng)128的部分23也檢查ECC?;蛘?,將ECC與ECC所從屬的用戶數(shù)據(jù)存儲在不同頁或不同塊。用戶數(shù)據(jù)的扇區(qū)一般是512個字節(jié),其對應(yīng)于磁盤驅(qū)動器的扇區(qū)的大小。系統(tǒng)開銷數(shù)據(jù)或冗余數(shù)據(jù)一般是額外的16個字節(jié)。數(shù)據(jù)的一個扇區(qū)最常見包括在每一頁中,但是兩個或兩個以上扇區(qū)可替代地形成一頁。任何數(shù)量的頁一般可形成一個塊。舉例而言,一個塊可由8頁至512、1024或更多頁形成。選擇塊的數(shù)量以為存儲系統(tǒng)提供所要的數(shù)據(jù)存儲性能。一般將陣列11劃分成幾個子陣列(未圖示),每一子陣列含有一部分塊,所述子陣列彼此相當(dāng)獨立地操作以增大多種存儲操作的執(zhí)行中的并行性程度。多個子陣列的使用的實例在美國第5,890,192號專利案中有描述,將所述專利案全文以引用方式并入本文。在一個實施例中,非易失性存儲器嵌入到系統(tǒng)(例如,主機系統(tǒng))中。圖1c是包括嵌入式非易失性存儲器的主機系統(tǒng)的圖解表示。主機系統(tǒng)或計算機系統(tǒng)150一般包括系統(tǒng)總線154,其允許微處理器158、RAM162和輸入/輸出電路166連同主機系統(tǒng)150的其它組件(未圖示)通信。非易失性存儲器174(例如,快速存儲器)允許將信息存儲在主機系統(tǒng)150內(nèi)。可將接口180提供在非易失性存儲器174與總線154之間,以使得能夠從非易失性存儲器174中讀取信息并將信息寫入到非易失性存儲器174。非易失性存儲器174由微處理器158管理,其有效地執(zhí)行經(jīng)配置來控制非易失性存儲器174的軟件和固件中的任一者或兩者。即,微處理器158可運行編碼裝置(codedevice)(未圖示),即軟件編碼裝置或固件編碼裝置,所述編碼裝置允許控制非易失性存儲器174。所述編碼裝置(其可以是用微處理器158內(nèi)部的CPU封裝的快速存儲器、獨立的快速ROM或在非易失性存儲器174內(nèi)部,將在下文中描述其)能夠?qū)ぶ贩且资源鎯ζ?74中的物理塊,且能夠?qū)⑿畔⒋鎯Φ剿鑫锢韷K中、從所述物理塊中讀取信息并擦除所述物理塊。當(dāng)主機系統(tǒng)150與非易失性存儲器174合作時,或當(dāng)圖1a的主機系統(tǒng)100與存儲裝置120合作時,可調(diào)度內(nèi)部維護請求以大體更新存儲在非易失性存儲器內(nèi)的一些信息,并有效地備份所述信息。圖2是可根據(jù)本發(fā)明的一個實施例調(diào)度內(nèi)部維護請求的系統(tǒng)的方框圖表示。系統(tǒng)200包括一個塊映射表210,其經(jīng)配置以提供邏輯塊212和對應(yīng)的物理塊214之間的映射。擦除計數(shù)塊220經(jīng)配置以存儲擦除計數(shù)或每一物理塊214已經(jīng)歷多少寫入和擦除循環(huán)的指示,在共同待決的美國專利申請案第10/281,696號和第10/281,626號中描述所述擦除計數(shù)塊,將所述申請案以引用方式并入本文。最不頻繁擦除塊表(leastfrequentlyerasedblocktable)230經(jīng)配置以存儲從屬于已經(jīng)歷最小數(shù)量的寫入和擦除循環(huán)的可用物理塊214的信息。相反,最頻繁擦除塊表(mostfrequentlyerasedblocktable)240經(jīng)配置以存儲從屬于具有最高數(shù)量的寫入和擦除循環(huán)的可用物理塊214的信息。一般地,當(dāng)發(fā)生系統(tǒng)200的正常關(guān)閉時,功率管理塊260被寫入,所述功率管理塊在系統(tǒng)200的預(yù)留存儲區(qū)域中。如存儲在擦除計數(shù)塊220中的那些擦除計數(shù)可在正常關(guān)閉期間寫入到功率管理塊260中。一旦系統(tǒng)200隨后加電,存儲在功率管理塊260中的擦除計數(shù)可用于大體再造擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240。當(dāng)在斷電后發(fā)生加電時,維持擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240中的當(dāng)前信息能夠?qū)⑾到y(tǒng)200帶入相對新近且準(zhǔn)確的狀態(tài)。為了確保存儲在擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240中的信息相對新近,可執(zhí)行對擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240的相對規(guī)則的經(jīng)調(diào)度維護。即,擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240可在經(jīng)調(diào)度維護期間周期性地更新。在一個實施例中,在經(jīng)調(diào)度維護期間更新擦除計數(shù)塊220可包括適當(dāng)?shù)貙⒋鎯υ诓脸嫈?shù)塊220和物理塊214中的擦除計數(shù)從實際擦除計數(shù)切換到差別擦除計數(shù),或基于一可以是與系統(tǒng)200相關(guān)的最低實際擦除計數(shù)的基值的擦除計數(shù)。如果當(dāng)發(fā)生經(jīng)調(diào)度維護時差別擦除計數(shù)已存儲在擦除計數(shù)塊220中,那么更新擦除計數(shù)塊220可包括適當(dāng)?shù)?例如)通過重設(shè)差別擦除計數(shù)所基于的基值,大體將差別擦除計數(shù)重調(diào)零。因為更新擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240可相對地耗時,所以擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表一般在系統(tǒng)200斷電或上電時和周期性經(jīng)調(diào)度維護期間。擦除計數(shù)塊220一般在自適應(yīng)表備份處理過程中可更頻繁地更新,即,擦除計數(shù)塊220可更頻繁地重建。應(yīng)了解,考慮到經(jīng)更新的擦除計數(shù)塊220可通過大體讀取所有的塊214以識別擦除計數(shù)而更新,必要的話有可能重建最不頻繁擦除塊表230和最頻繁擦除塊表240。在一個實施例中,只要自從上次擦除計數(shù)塊220、最不頻繁擦除塊表230和最頻繁擦除塊表240被更新以來最不頻繁擦除塊表230已改變了約十萬次,就可發(fā)生經(jīng)調(diào)度維護,而最不頻繁擦除塊表230每改變一萬次,自適應(yīng)表備份處理就可發(fā)生約一次?;蛘?,經(jīng)調(diào)度維護可在特定時間發(fā)生或在特定數(shù)量的時間消逝后發(fā)生,而自適應(yīng)表備份處理也可在給定時間發(fā)生或在給定數(shù)量的時間消逝后發(fā)生,其中自適應(yīng)表備份處理比經(jīng)調(diào)度維護更頻繁地發(fā)生。參看圖3,將根據(jù)本發(fā)明的一個實施例描述一種使用允許內(nèi)部經(jīng)調(diào)度維護請求的非易失性存儲器組件的方法。使用允許內(nèi)部經(jīng)調(diào)度維護請求的非易失性存儲器組件的處理300以步驟304開始,在步驟304中存儲器組件用于(例如)讀取和寫入數(shù)據(jù)。步驟308中判定存儲器組件是否將要被斷電。應(yīng)了解,在使用存儲器組件的過程中,用戶希望將存儲器組件斷電。如果在步驟308中判定存儲器組件將要被斷電,那么處理流程移動到步驟312,在步驟312中執(zhí)行斷電處理且將存儲器組件斷電。斷電處理可涉及將簽名(signature)寫入到功率管理塊中。斷電處理也可涉及大體備份如塊映射表或最不頻繁擦除塊表之類的表,使得在隨后的加電處理過程中所述表可相對容易地再造或重建,所述備份可通過將從屬于所述表的信息寫入到功率管理塊內(nèi)來完成。一旦將存儲器組件斷電,就完成了使用非易失性存儲器組件的處理?;蛘?,如果在步驟308中判定非易失性存儲器組件將不會被斷電,那么在步驟316中判定是否將要執(zhí)行周期性經(jīng)調(diào)度維護,即,是否應(yīng)調(diào)度內(nèi)部維護。如上所論述,內(nèi)部維護可包括大體將擦除計數(shù)塊帶入最新狀態(tài),和大體確保最頻繁擦除塊和最不頻繁擦除塊分別含有與存儲器組件相關(guān)的最頻繁擦除未使用塊和最不頻繁擦除未使用塊。判定何時調(diào)度維護可基于一特定時間。舉例而言,與關(guān)于非易失性存儲器組件的整個系統(tǒng)相關(guān)的時間是如半夜這樣的特定時間,就可調(diào)度維護??墒褂萌缪舆t程序調(diào)用之類的指令調(diào)度維護,所述延遲程序調(diào)用能夠調(diào)用并執(zhí)行待調(diào)度的程序,例如,擦除計數(shù)塊的更新或最不頻繁擦除塊表的更新。延遲程序調(diào)用的使用可允許向延遲程序分配相對低的優(yōu)先權(quán),使得延遲程序大體只能在完成了具有較高優(yōu)先權(quán)的程序之后執(zhí)行。如果在步驟316中判定不是執(zhí)行經(jīng)調(diào)度維護的時間,那么處理流程返回至步驟304,在步驟304中繼續(xù)利用非易失性存儲器組件?;蛘撸绻诓襟E316中判定是執(zhí)行經(jīng)調(diào)度維護的時間,那么在步驟318中調(diào)度維護。換句話說,給維護程序排隊。一旦維護程序被排隊,最終在步驟320中執(zhí)行維護。下文將參照圖4描述與一種執(zhí)行維護的方法相關(guān)的步驟。在執(zhí)行維護程序后,處理流程返回至步驟304,在步驟304中繼續(xù)利用非易失性存儲器組件。當(dāng)調(diào)度內(nèi)部維護時,一般可調(diào)度大體上任何的維護程序。因此,在經(jīng)調(diào)度維護期間執(zhí)行的程序可廣泛地變化。通常,程序經(jīng)布置以更新且大體備份足夠的信息,使得必要的話能夠大體上重建諸如擦除計數(shù)塊、最不頻繁擦除塊表和最頻繁擦除塊表等數(shù)據(jù)結(jié)構(gòu)。當(dāng)差別擦除計數(shù)存儲在擦除計數(shù)塊或?qū)⒁鎯υ诓脸嫈?shù)塊中時,通過大體將差別擦除計數(shù)歸零為一基數(shù)值(例如,一新基數(shù)),維護程序也可包括更新差別擦除計數(shù)。參看圖4,將根據(jù)本發(fā)明的一實施例描述與一種執(zhí)行經(jīng)調(diào)度內(nèi)部維護的方法相關(guān)的步驟,例如,圖3的步驟320。執(zhí)行經(jīng)調(diào)度維護在步驟402處開始,在步驟402中更新擦除計數(shù)塊的內(nèi)容。更新擦除計數(shù)塊的內(nèi)容一般可包括從包括在非易失性存儲器組件中的每一可用塊中獲得當(dāng)前擦除計數(shù);使用當(dāng)前擦除計數(shù)來判定平均擦除計數(shù);和將當(dāng)前擦除計數(shù)和平均擦除計數(shù)存儲在擦除計數(shù)塊中。在更新擦除計數(shù)塊的內(nèi)容之后,在步驟406中更新最不頻繁擦除塊表的內(nèi)容。更新最不頻繁擦除塊表的內(nèi)容包括使用經(jīng)更新的擦除計數(shù)塊識別與非易失性存儲器組件相關(guān)的當(dāng)前最不頻繁擦除塊,接著將識別那些最不頻繁擦除塊的信息存儲在最不頻繁擦除塊表中。因此,包括非易失性存儲器組件中的最不頻繁擦除塊的備用塊公共池得以有效地更新。在步驟410中,最頻繁擦除塊表經(jīng)更新以包括非易失性存儲器組件中的當(dāng)前最頻繁擦除塊??赏ㄟ^識別對應(yīng)于存儲在擦除計數(shù)塊中的最高擦除計數(shù)的塊來識別最頻繁擦除塊。一旦最頻繁擦除塊表得以更新,在步驟414中更新功率管理塊的內(nèi)容。更新功率管理塊的內(nèi)容可包括將平均擦除計數(shù)和與非易失性存儲器組件內(nèi)的可用塊相關(guān)的擦除計數(shù)寫入到功率管理塊的頁中。在一個實施例中,更新功率管理塊的內(nèi)容也包括寫入類似于關(guān)閉簽名的簽名。簽名可經(jīng)寫入以指示擦除計數(shù)塊、最不頻繁擦除塊表和最頻繁擦除塊表最后何時被更新??蓪懭氲焦β使芾韷K的其它信息包括從屬于擦除計數(shù)塊、在最不頻繁擦除塊表中識別的塊和在最頻繁擦除塊表中識別的塊的信息。因此,擦除計數(shù)塊、最不頻繁擦除塊表和最頻繁擦除塊表可有效地在功率管理塊中備份,這時功率管理塊保持足夠的信息以再造所述塊或表,或至少指出所述塊或表在存儲器中所處的位置。在功率管理塊被更新之后,執(zhí)行內(nèi)部維護的處理便完成。盡管可由整個系統(tǒng)執(zhí)行內(nèi)部維護請求的調(diào)度,例如,由在主機操作系統(tǒng)上運行的應(yīng)用程序或由主機操作系統(tǒng)本身執(zhí)行,但是內(nèi)部維護請求的調(diào)度也可由與整個系統(tǒng)相關(guān)的驅(qū)動器執(zhí)行。舉例而言,當(dāng)非易失性存儲器是與主機連接的存儲器組件的一部分時,主機操作系統(tǒng)或在主機接口系統(tǒng)上運行的應(yīng)用程序可調(diào)度內(nèi)部維護請求,或與存儲器組件相關(guān)的驅(qū)動器可調(diào)度內(nèi)部維護請求。接下來參看圖5,將根據(jù)本發(fā)明的一實施例描述一種用于操作整個系統(tǒng)的方法,在所述系統(tǒng)中與存儲器組件相關(guān)的驅(qū)動器可調(diào)度內(nèi)部維護請求。操作整個系統(tǒng)的處理500在步驟504處開始,在步驟504中設(shè)置用于執(zhí)行調(diào)度維護的臨界值。所述臨界值可基于最不頻繁擦除塊表改變或被更新的次數(shù)。舉例而言,可設(shè)置臨界值使得如最不頻繁擦除塊表之類的表每改變約十萬次,便大體到達臨界值。一旦設(shè)置了臨界值,就在步驟508中操作非易失性存儲器組件且計數(shù)器適當(dāng)?shù)卦黾?。?dāng)臨界值基于最不頻繁擦除塊表改變的次數(shù)時,計數(shù)器可大體在每次最不頻繁擦除塊表的內(nèi)容改變時增加,即,計數(shù)器可以是在最不頻繁擦除塊表中識別的塊改變次數(shù)。每次在最不頻繁擦除塊表中識別的塊被使用時,最不頻繁擦除塊表可有效地改變。在操作非易失性存儲器組件的過程中,可在步驟512中判定非易失性存儲器組件是否將要被斷電。如果判定非易失性存儲器組件將要被斷電,那么執(zhí)行斷電處理且在步驟516中將非易失性存儲器組件斷電。斷電處理可涉及更新擦除計數(shù)塊、最不頻繁擦除塊表和最頻繁擦除塊表,以及寫入斷電簽名。在將非易失性存儲器組件斷電后,操作整個系統(tǒng)的處理便完成。或者,如果在步驟512中判定非易失性存儲器組件將不被斷電,那么處理流程繼續(xù)前進到步驟520,步驟520判定計數(shù)器是否等于臨界值。即,在步驟520中判定是否將要調(diào)度維護請求。如果判定計數(shù)器不等于臨界值,那么處理流程返回步驟508,步驟508中繼續(xù)使用非易失性存儲器組件,且計數(shù)器適當(dāng)?shù)卦黾?。另一方面,如果在步驟520中判定計數(shù)器大體等于臨界值,那么在一個實施例中,在步驟524中重設(shè)計數(shù)器。當(dāng)存在一個臨限值時可重設(shè)計數(shù)器,使得每次經(jīng)重新初始化的計數(shù)器最終增加到一定程度使得計數(shù)器大體等于臨界值時,可調(diào)度維護。然而,應(yīng)了解,當(dāng)存在多于一個臨界值時,不必重設(shè)計數(shù)器,因為存在多個臨界值,其可由計數(shù)器到達以指示何時調(diào)度維護。在步驟528中,調(diào)度維護,例如,可調(diào)度與更新多種塊和表的內(nèi)容相關(guān)的程序。一般地,使用延遲程序調(diào)用來將維護程序排隊,所述延遲程序調(diào)用允許在執(zhí)行維護程序之前執(zhí)行并完成較高優(yōu)先權(quán)程序。在調(diào)度維護之后,在步驟532中執(zhí)行周期性維護。即,在程序隊列的大體所有較高優(yōu)先權(quán)程序之后的經(jīng)調(diào)度維護完成,且整個系統(tǒng)有效地空閑。上文已參考圖4描述了與一種執(zhí)行周期性經(jīng)調(diào)度維護的方法相關(guān)的步驟。一旦執(zhí)行了經(jīng)調(diào)度維護,程序流返回步驟508,在步驟508中繼續(xù)利用非易失性存儲器組件。如上所論述,調(diào)度內(nèi)部維護使得能夠執(zhí)行一個處理,所述處理允許擦除計數(shù)塊大體被帶入最新狀態(tài)包括與待調(diào)度的存儲器組件的塊相關(guān)的最新擦除計數(shù),使得可在系統(tǒng)資源為相對可用時發(fā)生維護。調(diào)度內(nèi)部維護也允許所述處理更新其它塊和表,如最不頻繁擦除塊表、最頻繁擦除塊表和功率管理塊。圖6a是物理塊和更新前的擦除計數(shù)塊的圖解表示。在系統(tǒng)600內(nèi),經(jīng)配置以存儲數(shù)據(jù)的備用物理塊602、604可分別具有存儲在其中的相關(guān)擦除計數(shù)606、608。塊602具有擦除計數(shù)606,其指示塊602已被擦除兩百次,而塊604具有擦除計數(shù)608,其指示塊604已被擦除五百次。擦除計數(shù)塊610一般經(jīng)配置以含有包括塊602、604的擦除計數(shù)的信息。然而,當(dāng)擦除計數(shù)塊610在相對長的時間中尚未經(jīng)更新時,存儲在擦除計數(shù)塊610中的擦除計數(shù)(與塊602、604對應(yīng))可過期,如圖示。類似地,當(dāng)系統(tǒng)600內(nèi)的當(dāng)前最不頻繁擦除塊在相對近期(例如,在最近24小時內(nèi))中尚未經(jīng)識別時,存儲在最不頻繁擦除塊表中的(未圖示)最不頻繁擦除塊可能不是系統(tǒng)600內(nèi)的當(dāng)前最不頻繁擦除塊。舉例而言,盡管塊604的擦除計數(shù)608指示塊604比塊602磨損得更多,但是塊604可在最不頻繁擦除塊表612中有效地識別為最不頻繁擦除塊,而塊602不會被識別為最不頻繁擦除塊。因此,盡管塊602比塊604磨損得更少,即,盡管塊602比塊604較不頻繁地被擦除,但是最不頻繁擦除塊表(未圖示)可提供大體不準(zhǔn)確的最不頻繁擦除塊的列表。為了增大存儲在擦除計數(shù)塊610中的擦除計數(shù)相當(dāng)新的可能性,可調(diào)度內(nèi)部維護請求以確保相對規(guī)則地發(fā)生更新。圖6b是根據(jù)本發(fā)明的一實施例發(fā)生經(jīng)調(diào)度更新之后擦除計數(shù)塊(例如,圖6a的擦除計數(shù)塊610)的圖解表示。一旦經(jīng)調(diào)度更新處理完成,擦除計數(shù)塊610′含有關(guān)于塊602、604的相對新的版本。當(dāng)需要有效地備份擦除計數(shù)塊610′時,可在執(zhí)行經(jīng)調(diào)度維護時或在執(zhí)行自適應(yīng)表備份處理(將參看圖8描述其)時將從屬于擦除計數(shù)塊610′的信息存儲到功率管理塊650中。在一個實施例中,所存儲的信息可大體是能夠重建(必要的話)擦除計數(shù)塊610′可能需要的任何信息。舉例而言,能夠再造擦除計數(shù)塊610′所需的信息660可與如斷電簽名之類的簽名662一起存儲。所述信息660可包括擦除計數(shù)(因為擦除計數(shù)可用于大體再造擦除計數(shù)塊610′)、最不頻繁擦除塊表(未圖示)和包括(但不限于)最頻繁擦除塊表(未圖示)的其它表。一般地,與允許內(nèi)部維護調(diào)度請求相關(guān)的功能以軟件(例如,作為程序編碼裝置)或固件形式提供給包括非易失性存儲器或非易失性存儲器組件的主機系統(tǒng)。圖7展示與提供給主機系統(tǒng)使得能夠?qū)嵤?、維持并使用功率管理塊的軟件或固件相關(guān)的適當(dāng)系統(tǒng)架構(gòu)的一個實施例。系統(tǒng)架構(gòu)700一般包括多種模塊,其可包括(但不限于)應(yīng)用程序接口模塊704、系統(tǒng)管理器模塊708、數(shù)據(jù)管理器模塊712、數(shù)據(jù)完整性管理器716和裝置管理器和接口模塊720。一般地,可使用軟件編碼裝置或固件實施系統(tǒng)架構(gòu)700,所述軟件編碼裝置或固件可由處理器(例如,圖1a的處理器108)訪問。一般地,應(yīng)用程序接口模塊704可經(jīng)配置以與主機、操作系統(tǒng)或用戶直接通信。應(yīng)用程序接口模塊704也與系統(tǒng)管理器模塊708和數(shù)據(jù)管理器模塊712通信。當(dāng)用戶想要讀取、寫入或格式化快速存儲器時,其發(fā)送請求到操作系統(tǒng),所述請求傳遞到應(yīng)用程序接口。應(yīng)用程序接口視所述請求而定將所述請求引導(dǎo)到系統(tǒng)管理器模塊708或數(shù)據(jù)管理器模塊712。系統(tǒng)管理器模塊708包括系統(tǒng)初始化子模塊724、擦除計數(shù)塊管理子模塊726和功率管理塊子模塊730。系統(tǒng)初始化子模塊724一般經(jīng)配置以使得能夠處理初始化請求,且其一般與擦除計數(shù)塊管理子模塊726通信。擦除計數(shù)塊管理子模塊726包括用以使用個別擦除計數(shù)并更新計算平均擦除計數(shù)的功能。系統(tǒng)初始化模塊724也經(jīng)配置以解決邏輯塊到物理塊的一對多分配,且因此可利用更新索引。功率管理塊子模塊730可經(jīng)配置以使得能夠?qū)嵤?、維持并使用功率管理。舉例而言,功率管理塊子模塊730可經(jīng)配置以分配功率管理塊,并監(jiān)督簽名和可存儲在功率管理塊中的其它信息的寫入。除了與應(yīng)用程序接口模塊704通信外,系統(tǒng)管理器模塊708也與數(shù)據(jù)管理器模塊712以及裝置管理器和接口模塊720通信。數(shù)據(jù)管理器模塊712與系統(tǒng)管理器模塊708和應(yīng)用程序接口模塊704兩者通信,所述數(shù)據(jù)管理器模塊可包括用以提供扇區(qū)映射的功能,所述扇區(qū)映射有效地將邏輯扇區(qū)轉(zhuǎn)譯成物理扇區(qū)。即,數(shù)據(jù)管理器模塊712經(jīng)配置以將邏輯塊映射成物理塊。數(shù)據(jù)管理器模塊712也可包括與操作系統(tǒng)和文件系統(tǒng)接口層相關(guān)的功能,且能夠管理塊內(nèi)的組。裝置管理器和接口模塊720與系統(tǒng)管理器模塊708、數(shù)據(jù)管理器712和數(shù)據(jù)完整性管理器716通信,所述裝置管理器和接口模塊一般提供快速存儲器接口,且包括與硬件抽象相關(guān)的功能,例如,I/O接口。除了其它功能外,數(shù)據(jù)完整性管理器模塊716提供ECC處理。如先前所提及,較之由于經(jīng)調(diào)度維護處理而備份擦除計數(shù)塊,自適應(yīng)表備份處理可用于使擦除計數(shù)塊能夠被備份及(因此)更新得更頻繁。在一個實施例中,自適應(yīng)表備份處理可經(jīng)配置使得擦除計數(shù)塊一次未被完全更新。在所述實施例中,當(dāng)判定自適應(yīng)表備份處理將要發(fā)生時,可更新擦除計數(shù)塊的一部分,例如,可更新擦除計數(shù)塊的四分之一。接著,下次判定自適應(yīng)表備份處理將要發(fā)生時,可更新擦除計數(shù)塊的不同部分,例如,可更新擦除計數(shù)塊的下一四分之一。通過在每一自適應(yīng)表備份處理期間部分更新擦除計數(shù)塊,與每一自適應(yīng)表備份處理相關(guān)的時間可減少。參看圖8,將根據(jù)本發(fā)明的一實施例描述一種使用允許自適應(yīng)表備份的非易失性存儲器組件的方法。使用允許自適應(yīng)表備份的非易失性存儲器組件的處理900在步驟904處開始,在步驟904中利用存儲器組件。在步驟908中判定是否將存儲器組件斷電。如果在步驟908中判定存儲器組件將要被斷電,那么處理流程移動到步驟912,在步驟912中執(zhí)行斷電處理,且將存儲器組件斷電。如先前所提及,斷電處理可涉及將簽名寫入到功率管理塊中。一般地,斷電處理將包括執(zhí)行與在自適應(yīng)表備份中執(zhí)行的步驟大體相同的步驟。一旦將存儲器組件斷電,使用非易失性存儲器組件的處理便完成?;蛘撸绻诓襟E908中判定存儲器組件將不被斷電,那么在步驟916中判定是否執(zhí)行自適應(yīng)表備份。如上所論述,自適應(yīng)表備份可包括通過利用從非易失性存儲器組件內(nèi)的物理塊獲得的至少一些最近的擦除計數(shù)重建擦除計數(shù)塊,將擦除計數(shù)塊大體帶入最新狀態(tài)。雖然自適應(yīng)表備份一般不涉及實際重建最不頻繁擦除塊表和最頻繁擦除塊表,但是自適應(yīng)表備份也可存儲足夠的信息,使得能夠重建最不頻繁擦除塊表和最頻繁擦除塊表。是否執(zhí)行自適應(yīng)表備份的判定一般可基于一臨界值。舉例而言,當(dāng)自從上次更新了擦除計數(shù)塊以來,在最不頻繁擦除塊表中識別的所述系統(tǒng)內(nèi)最不頻繁擦除塊已改變了特定次數(shù)時,可判定自適應(yīng)表備份將要發(fā)生。如果在步驟916中判定不是執(zhí)行自適應(yīng)表備份的時候,那么處理流程返回至步驟904,在步驟904中繼續(xù)利用非易失性存儲器組件?;蛘撸绻诓襟E916中判定是執(zhí)行自適應(yīng)表備份的時候,那么在步驟918中執(zhí)行自適應(yīng)表備份以大體備份擦除計數(shù)塊。備份擦除計數(shù)塊一般包括獲得當(dāng)前擦除計數(shù);更新擦除計數(shù)塊中的當(dāng)前擦除計數(shù);和(因此)重建擦除計數(shù)塊。應(yīng)了解,備份擦除計數(shù)塊有效地備份可用于后來重建最不頻繁擦除塊表和最頻繁擦除塊表的信息。盡管其它實施例可替代地涉及部分更新擦除計數(shù)塊,但是在所描述的實施例中,存儲在擦除計數(shù)塊中的大體所有的擦除計數(shù)均得以更新。盡管僅描述了本發(fā)明的幾個實施例,但是應(yīng)了解,本發(fā)明可用許多其它特定形式實施,而不偏離本發(fā)明的精神或范疇。舉例而言,盡管已將調(diào)度內(nèi)部維護請求以更新塊和表以及大體備份塊和表的能力大體描述為是與NAND存儲器(例如,MLCNAND存儲器)相關(guān)。然而,一般地,可根據(jù)大體上任何適當(dāng)?shù)拇鎯ζ骰虼鎯ο到y(tǒng)實施功率管理塊。非易失性存儲系統(tǒng)可利用經(jīng)調(diào)度內(nèi)部維護請求和自適應(yīng)表備份處理兩者。例如,與如最不頻繁擦除塊表之類的表相關(guān)的塊中每發(fā)生約一萬次改變,就可發(fā)生自適應(yīng)表備份處理,而與最不頻繁擦除塊表相關(guān)的塊中每發(fā)生約十萬次改變,才可發(fā)生經(jīng)調(diào)度維護。然而,一些非易失性存儲系統(tǒng)可替代地僅使用自適應(yīng)表備份處理或僅使用經(jīng)調(diào)度維護請求。另外,應(yīng)了解,如最不頻繁擦除塊表之類的表中的塊的改變數(shù)可廣泛變化,所述改變數(shù)有效地“觸發(fā)”經(jīng)調(diào)度維護的自適應(yīng)表備份處理。盡管如最不頻繁擦除塊表或最頻繁擦除塊表等表可有效地寫入到功率管理塊中以大體備份所述表,但是應(yīng)了解,將表寫入到功率管理塊中是可選的。例如,對于用戶或系統(tǒng)不需要備份表的實施而言,可不將表寫入到功率管理塊中。調(diào)度內(nèi)部維護請求的頻率可廣泛變化。一般地,當(dāng)由主機操作系統(tǒng)或應(yīng)用程序調(diào)度內(nèi)部維護請求時,可調(diào)度內(nèi)部維護請求使得其可在每一天的特定時間發(fā)生,或自從由于經(jīng)調(diào)度請求或由于正常斷電而執(zhí)行內(nèi)部維護以來特定時間量消逝后的任何時間發(fā)生。當(dāng)由存儲器組件本身調(diào)度內(nèi)部維護請求時,也可調(diào)度內(nèi)部維護請求使得其可在每一天的特定時間發(fā)生,自從先前執(zhí)行內(nèi)部維護以來特定時間量消逝后的任何時間發(fā)生。當(dāng)計數(shù)器達到特定值時,如上所述,可檢查是否是時候調(diào)度內(nèi)部維護請求。除了更新如擦除計數(shù)塊、最不頻繁擦除塊表和最頻繁擦除塊表等表外,可在經(jīng)調(diào)度的內(nèi)部維護期間執(zhí)行多種其它程序。如上所述,在經(jīng)調(diào)度內(nèi)部維護期間適當(dāng)?shù)貜膶嶋H擦除計數(shù)切換到差別擦除計數(shù)(或更新差別擦除計數(shù))是可在經(jīng)調(diào)度維護期間執(zhí)行的額外程序的實例。可在經(jīng)調(diào)度維護期間執(zhí)行的其它程序可包括(但不限于)如靜態(tài)塊交換之類的程序。靜態(tài)塊交換可涉及判定靜態(tài)塊在何時是具有相對低的擦除計數(shù)的物理塊,和大體將靜態(tài)塊的內(nèi)容拷貝到具有相對高的擦除計數(shù)的物理塊中,使得具有相對低的擦除計數(shù)的物理塊有效地編程備用塊。在共同待決的美國第10/281,739號、第10/281,670號和第10/281,824號專利申請案中,描述了用以提供有效磨損平衡的靜態(tài)塊交換的使用,將所述申請案以引用方式并入本文。與本發(fā)明的多種方法相關(guān)的步驟可廣泛變化。一般地,可在不偏離本發(fā)明的精神和范疇的情況下添加、移除、重新排序并改變步驟。在一個實施例中,當(dāng)跟蹤最不頻繁擦除塊表的更新次數(shù)的計數(shù)器大體等于一臨界值時,可檢查與存儲器組件或整個系統(tǒng)相關(guān)的計時器以判定是否是時候調(diào)度維護請求。因此,認(rèn)為本實例是說明性的且不是限制性的,且本發(fā)明不限于本文所給出的細節(jié),而可在隨附的權(quán)利要求書的范疇內(nèi)加以修改。權(quán)利要求1.一種用于操作一存儲系統(tǒng)的方法,所述存儲系統(tǒng)包括一非易失性存儲器,所述非易失性存儲器具有復(fù)數(shù)個物理塊和復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu),所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一擦除計數(shù)塊,所述擦除計數(shù)塊含有所述復(fù)數(shù)個物理塊中的每一物理塊的一狀態(tài),所述方法包含判定何時將要更新所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)中的至少一個數(shù)據(jù)結(jié)構(gòu)的內(nèi)容;當(dāng)判定將要更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容時,對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的請求排隊;和執(zhí)行對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求。2.根據(jù)權(quán)利要求1所述的方法,更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容包括更新所述擦除計數(shù)塊的所述內(nèi)容以指示所述復(fù)數(shù)個物理塊中的每一物理塊的一大體當(dāng)前狀態(tài)。3.根據(jù)權(quán)利要求1所述的方法,其中所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一第一數(shù)據(jù)結(jié)構(gòu),所述第一數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以含有識別所述復(fù)數(shù)個物理塊中已經(jīng)歷一相對低數(shù)量的寫入和擦除循環(huán)的可用物理塊的信息,所述相對低數(shù)量的寫入和擦除循環(huán)由與所述可用物理塊相關(guān)的所述狀態(tài)指示,且其中執(zhí)行對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求包括更新所述第一數(shù)據(jù)結(jié)構(gòu)的內(nèi)容。4.根據(jù)權(quán)利要求1所述的方法,其中所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一第一數(shù)據(jù)結(jié)構(gòu),所述第一數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以含有識別所述復(fù)數(shù)個物理塊中已經(jīng)歷一相對高數(shù)量的寫入和擦除循環(huán)的可用物理塊的信息,所述相對高數(shù)量的寫入和擦除循環(huán)由與所述可用物理塊相關(guān)的所述狀態(tài)指示,且其中執(zhí)行對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求包括更新所述第一數(shù)據(jù)結(jié)構(gòu)的內(nèi)容。5.根據(jù)權(quán)利要求1所述的方法,其中所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一第一數(shù)據(jù)結(jié)構(gòu),所述第一數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以含有在給所述存儲系統(tǒng)加電時由所述存儲系統(tǒng)使用的信息,且其中執(zhí)行對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求包括更新所述第一數(shù)據(jù)結(jié)構(gòu)的內(nèi)容。6.根據(jù)權(quán)利要求5所述的方法,其中所述第一數(shù)據(jù)結(jié)構(gòu)是一功率管理塊。7.根據(jù)權(quán)利要求1所述的方法,其中對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求排隊包括將所述請求添加到待執(zhí)行的程序和應(yīng)用程序的一隊列中,在所述隊列中,所述請求被指配一相對低的優(yōu)先權(quán)。8.根據(jù)權(quán)利要求7所述的方法,其中執(zhí)行對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求包括在除了對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求外所述隊列大體為空時,執(zhí)行對更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的所述請求。9.根據(jù)權(quán)利要求1所述的方法,其中判定何時將要更新所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)中的所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容包括將一第一值與一臨界值相比較,其中當(dāng)所述第一值大體等于所述臨界值時,可判定將要更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容。10.根據(jù)權(quán)利要求1所述的方法,其中判定何時將要更新所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)中的所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容包括獲得一與所述存儲系統(tǒng)相關(guān)的時間;和判定所述時間何時指示將要更新所述至少一個數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容。11.根據(jù)權(quán)利要求1所述的方法,其中所述非易失性存儲器是一NAND快速存儲器。12.一種用于操作一存儲系統(tǒng)的方法,所述存儲系統(tǒng)包括一非易失性存儲器,所述非易失性存儲器具有復(fù)數(shù)個物理塊和復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu),所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一擦除計數(shù)塊,所述擦除計數(shù)塊含有所述復(fù)數(shù)個物理塊中的至少一個物理塊的一擦除計數(shù),所述擦除計數(shù)經(jīng)布置以指示所述復(fù)數(shù)個物理塊中的所述至少一個物理塊已被擦除的次數(shù),所述方法包含判定何時將要在所述存儲系統(tǒng)內(nèi)執(zhí)行一內(nèi)部維護處理,其中所述內(nèi)部維護處理經(jīng)布置以更新所述擦除計數(shù)塊中的所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù);當(dāng)判定將要執(zhí)行所述內(nèi)部維護請求時,對所述內(nèi)部維護處理的請求排隊;和執(zhí)行所述內(nèi)部維護處理。13.根據(jù)權(quán)利要求12所述的方法,其中執(zhí)行所述內(nèi)部維護處理包括更新所述擦除計數(shù)塊中的所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù);和更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中的一第一數(shù)據(jù)結(jié)構(gòu),所述第一數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以含有在給所述存儲系統(tǒng)加電時使用的信息,其中所述信息包括所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù)。14.根據(jù)權(quán)利要求13所述的方法,其中執(zhí)行所述內(nèi)部維護處理進一步包括更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中的一第二數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,所述第二數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以大體識別所述復(fù)數(shù)個物理塊中具有相對低擦除計數(shù)的一組物理塊;和更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中的一第三數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,所述第三數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以大體識別所述復(fù)數(shù)個物理塊中具有相對高擦除計數(shù)的一組物理塊。15.根據(jù)權(quán)利要求12所述的方法,其中判定何時將要執(zhí)行所述內(nèi)部維護處理包括將一第一值與一臨界值相比較,其中當(dāng)所述第一值大體等于所述臨界值時,可判定將要執(zhí)行所述內(nèi)部維護處理。16.根據(jù)權(quán)利要求12所述的方法,其中判定何時將要執(zhí)行所述內(nèi)部維護處理包括獲得一與所述存儲系統(tǒng)相關(guān)的時間;和判定所述時間何時指示將要執(zhí)行所述內(nèi)部維護處理。17.一種存儲器裝置,其包含一非易失性存儲器,所述非易失性存儲器包括復(fù)數(shù)個物理塊和一擦除計數(shù)塊,所述擦除計數(shù)塊經(jīng)布置以存儲一與所述復(fù)數(shù)個物理塊中至少一個物理塊相關(guān)的擦除計數(shù);經(jīng)布置以判定何時將要在所述存儲系統(tǒng)內(nèi)執(zhí)行一內(nèi)部維護處理的編碼裝置,其中所述內(nèi)部維護處理經(jīng)布置以更新所述擦除計數(shù)塊中的所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù);經(jīng)布置以在判定將要執(zhí)行所述內(nèi)部維護請求時,對所述內(nèi)部維護處理的請求排隊的編碼裝置;經(jīng)布置以執(zhí)行所述內(nèi)部維護處理的編碼裝置;和一媒體介質(zhì),其存儲所述編碼裝置。18.根據(jù)權(quán)利要求17所述的存儲器裝置,其中經(jīng)布置以執(zhí)行所述內(nèi)部維護處理的所述編碼裝置包括經(jīng)布置以更新所述擦除計數(shù)塊中的所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù)的編碼裝置;和經(jīng)布置以更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中的一第一數(shù)據(jù)結(jié)構(gòu)的編碼裝置,所述第一數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以含有在給所述存儲系統(tǒng)加電時所使用的信息,其中所述信息包括所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù)。19.根據(jù)權(quán)利要求18所述的存儲器裝置,其中經(jīng)布置以執(zhí)行所述內(nèi)部維護處理的所述編碼裝置進一步包括經(jīng)布置以更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中一第二數(shù)據(jù)結(jié)構(gòu)的內(nèi)容的編碼裝置,所述第二數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以大體識別所述復(fù)數(shù)個物理塊中具有相對低擦除計數(shù)的一組物理塊;和經(jīng)布置以更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中一第三數(shù)據(jù)結(jié)構(gòu)的內(nèi)容的編碼裝置,所述第三數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以大體識別所述復(fù)數(shù)個物理塊中具有相對高擦除計數(shù)的一組物理塊。20.根據(jù)權(quán)利要求17所述的存儲器裝置,其中經(jīng)布置以判定何時將要執(zhí)行所述內(nèi)部維護處理的所述編碼裝置包括經(jīng)布置以將一第一值與一臨界值相比較的編碼裝置,其中當(dāng)所述第一值大體等于所述臨界值時,可判定將要執(zhí)行所述內(nèi)部維護處理。21.根據(jù)權(quán)利要求17所述的存儲器裝置,其中經(jīng)布置以判定何時將要執(zhí)行所述內(nèi)部維護處理的所述編碼裝置包括經(jīng)布置以獲得一與所述存儲系統(tǒng)相關(guān)的時間的編碼裝置;和經(jīng)布置以判定所述時間何時指示將要執(zhí)行所述內(nèi)部維護處理的編碼裝置。22.一種存儲器裝置,其包含一非易失性存儲器,所述非易失性存儲器包括復(fù)數(shù)個物理塊和一擦除計數(shù)塊,所述擦除計數(shù)塊經(jīng)布置以存儲一與所述復(fù)數(shù)個物理塊中至少一個物理塊相關(guān)的擦除計數(shù);用于判定何時將要在所述存儲系統(tǒng)內(nèi)執(zhí)行一內(nèi)部維護處理的構(gòu)件,其中所述內(nèi)部維護處理經(jīng)布置以更新所述擦除計數(shù)塊中的所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù);用于在判定將要執(zhí)行所述內(nèi)部維護請求時,對所述內(nèi)部維護處理的請求排隊的構(gòu)件;和用于執(zhí)行所述內(nèi)部維護處理的構(gòu)件。23.根據(jù)權(quán)利要求22所述的存儲器裝置,其中用于執(zhí)行所述內(nèi)部維護處理的所述構(gòu)件包括用于更新所述擦除計數(shù)塊中的所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù)的構(gòu)件;和用于更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中的一第一數(shù)據(jù)結(jié)構(gòu)的構(gòu)件,所述第一數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以含有在給所述存儲系統(tǒng)加電時所使用的信息,其中所述信息包括所述復(fù)數(shù)個物理塊中所述至少一個物理塊的所述擦除計數(shù)。24.根據(jù)權(quán)利要求23所述的存儲器裝置,其中用于執(zhí)行所述內(nèi)部維護處理的所述構(gòu)件進一步包括用于更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中一第二數(shù)據(jù)結(jié)構(gòu)的內(nèi)容的構(gòu)件,所述第二數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以大體識別所述復(fù)數(shù)個物理塊中具有相對低擦除計數(shù)的一組物理塊;和用于更新所述復(fù)數(shù)個物數(shù)據(jù)結(jié)構(gòu)中一第三數(shù)據(jù)結(jié)構(gòu)的內(nèi)容的構(gòu)件,所述第三數(shù)據(jù)結(jié)構(gòu)經(jīng)布置以大體識別所述復(fù)數(shù)個物理塊中具有相對高擦除計數(shù)的一組物理塊。25.根據(jù)權(quán)利要求22所述的存儲器裝置,其中用于判定何時將要執(zhí)行所述內(nèi)部維護處理的所述構(gòu)件包括用于將一第一值與一臨界值相比較的構(gòu)件,其中當(dāng)所述第一值大體等于所述臨界值時,可判定將要執(zhí)行所述內(nèi)部維護處理。26.根據(jù)權(quán)利要求22所述的存儲器裝置,其中用于判定何時將要執(zhí)行所述內(nèi)部維護處理的所述構(gòu)件包括用于獲得一與所述存儲系統(tǒng)相關(guān)的時間的構(gòu)件;和用于判定所述時間何時指示將要執(zhí)行所述內(nèi)部維護處理的構(gòu)件。全文摘要本發(fā)明揭示一種能夠更新待調(diào)度的數(shù)據(jù)結(jié)構(gòu)的方法和設(shè)備。根據(jù)本發(fā)明的一個方面,一種用于操作一具有一非易失性存儲器的存儲系統(tǒng)的方法涉及判定何時將要更新至少一個數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,所述非易失性存儲器包括復(fù)數(shù)個物理塊和復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu),而所述復(fù)數(shù)個數(shù)據(jù)結(jié)構(gòu)包括一擦除計數(shù)塊。當(dāng)判定將要更新所述內(nèi)容時,排隊或調(diào)度對更新所述數(shù)據(jù)結(jié)構(gòu)的所述內(nèi)容的請求,且在所述請求有效地到達隊列的頂部時執(zhí)行所述請求。文檔編號G06F12/00GK1875351SQ200480031826公開日2006年12月6日申請日期2004年9月28日優(yōu)先權(quán)日2003年10月28日發(fā)明者羅伯特·C·張,巴赫曼·卡瓦米,法爾希德·薩比特-沙爾基申請人:桑迪士克股份有限公司