新四季網

多級數據存儲單元的維護操作的製作方法

2023-05-27 09:59:31 2


專利名稱::多級數據存儲單元的維護操作的製作方法
技術領域:
:這裡的各種實施方式主要涉及非易失性存儲設備,並且某些特定實施方式涉及的是用於操作多級快閃記憶體單元的系統和方法。
背景技術:
:隨著計算設備能力和特徵的提升,對數據存儲設備的需求也在增長。例如,數據存儲設備業已用於存儲可以由處理器執行的程序指令(也就是代碼)。此外,數據存儲設備還用於存儲其他類型的數據,其中包括例如音頻、圖像和/或文本信息。近來,具有能夠存儲大量數據內容(例如歌曲、音樂視頻等等)的數據存儲設備的系統在便攜設備中已經可以廣泛^f吏用。這些便攜設備包括具有很小的形狀因子並且能用電池之類的便攜電源操作的數據存儲設備(datastoragedevice,DSD)。便攜設備中的某些DSD可以提供非易失性存儲器,該存儲器能在從電源斷開的時候保持數據。便攜設備已經使用了各種非易失性數據存儲設備,例如硬碟驅動器、EEPROM(電可擦寫可編程只讀存儲器)和快閃記憶體存儲器(flashmemory)。快閃記憶體存儲器已經成為一種廣泛使用的DSD。例如,快閃記憶體存儲器可以在便攜電子設備和消費應用中提供非易失性存儲器。目前存在的兩種類型的快閃記憶體存儲器是NOR快閃記憶體(flash)和NAND快閃記憶體。NOR快閃記憶體通常提供的是原地執行代碼的能力,並且它是可以被隨機存取的(也就是類似於RAM)。而NAND快閃記憶體通常可以更快擦除數據以及以脈衝串的形式(例如512位元組的組塊)存取數據,此外,與類似的NOR快閃記憶體相比,它可以提供更長壽命的擦除周期。NAND快閃記憶體通常能以很低的每比特成本來提供非易失性存儲,以此作為例如數位相機9和MP3播放器這類消費設備的高密度文件存儲介質。典型的快閃記憶體存儲器是通過在每一個存儲單元(memorycell)中將電荷存儲在代表數字數據值的電壓上來存儲一個單位的信息的。對單級單元來說,它是基於將其充電成"高,,電壓或者放電成"低,,電壓來存儲一比特信息的。對NAND快閃記憶體存儲器來說,已開發的NAND快閃記憶體存儲器能夠對電荷進行解碼,使之處於四個不同電壓範圍之一,從而在單個單元中存儲兩比特之多的信息。此外,對NOR快閃記憶體存儲器來說,已開發的NOR快閃記憶體存儲器能夠對電荷進行解碼,使之處於256個不同電壓範圍之一,由此就能在單個單元中存儲8比特之多的信息。
發明內容所描述的裝置和相關聯的系統、方法及電腦程式產品涉及的是快閃記憶體存儲設備中的多級數據存儲。在一個通常方面中,通過檢測來自第一存儲單元的電壓電平,可以對包含了多個存儲單元的多級快閃記憶體存儲設備進行管理,其中所述第一存儲單元存儲了達到代表數據值的電壓電平的電荷。該電壓電平所代表的數據值至少部分是根據與第一存儲單元相對應的解析度寄存器條目(resolutionregisterentry)來確定。電荷^皮施加於一個或多個存儲單元,以便達到代表數據值的目標電壓。該目標電壓至少部分是根據與一個或多個存儲單元相對應的解析度寄存器條目來確定的。本實施方式可以包括一個或多個下列特徵。所述一個或多個存儲單元是笫一存儲單元,並且將電荷施加於第一存儲單元的操作包括將附加電荷施加於第一存儲單元,以便調整第一存儲單元中的電壓暫降(voltagesag)。通過檢測存儲在基準單元中的基準電壓電平,可以確定笫一存儲單元中的暫降量。該基準單元與相應的預定電壓電平相關聯,並且暫降量是通過將預定電壓電平與檢測到的存儲在基準單元中電壓電平相比較來確定的。暫降量是通過檢測存儲在多個基準單元中的電壓電平來確定的。施加於第一存儲單元的附加電荷量是根據一個校正函數來確定的。從主機設備接收一個啟動維護操作的信號,響應於接收到的信號,電荷將被施加於一個或多個存儲單元,以便達到代表數據值的目標電壓。來自主機設備的信號指示的是電源條件。這個來自主機設備的信號指示了是否用交流電源為主機設備供電和/或是否將主機設備的電池充電至預定電荷等級。此外,來自主機設備的信號還指示了所調度的維護操作。從快閃記憶體存儲器處理器接收啟動維護操作的信號,響應於接收到的信號,電荷將被施加於一個或多個存儲單元,以便達到代表數據值的目標電壓。這個來自快閃記憶體存儲器處理器的信號指示的是該快閃記憶體存儲器處理器具有足夠帶寬來執行維護操作。此外,來自快閃記憶體存儲器處理器的信號還指示該快閃記憶體存儲器處理器空閒。與第一存儲單元相對應的解析度寄存器條目指示的是與第一可能數據值數量相對應的第一解析度。接收以與第二可能數據值數量相對應的第二解析度寫入的信號,並且更新與一個或多個存儲單元相對應的解析度寄存器條目,以便指示該第二解析度。目標電壓基於第二解析度。第一可能數據值數量大於第二可能數據值數量,並且所述一個或多個存儲單元包含從多個存儲單元中選出的多於一個的存儲單元。作為替換,第一可能數據值數量等於笫二可能數據值數量,並且所述一個或多個存儲單元包含了與第一存儲單元不同的存儲單元。第二可能數據值數量超過第一可能數據值數量。第一可能數據值數量不超過4比特;例如,第一可能數據值數量是2比特或1比特。第二可能數據值數量至少是4比特;例如,第二可能數據值數量至少是8比特。以第一解析度存儲在第一存儲單元中的數據值是將從主機設備接收的數據寫入快閃記憶體存儲設備的寫入操作的結果。從主機設備接收將從主機設備接收的數據寫入快閃記憶體存儲設備的信號。從主機設備接收的數據值是以與第一可能數據值數量相對應的第一解析度而被寫入到第一存儲單元中的,並且所述第一解析度被記錄在與笫一存儲單元相對應的解析度寄存器中。以與第二可能數據值數量相對應的第二解析度寫入的信號將被接收,並且第二可能數據值數量超過第一數據值數量。與一個或多個存儲單元相對應的解析度寄存器被更新,以便指示第二解析度,並且目標解析度基於第二解析度。從主機設備接收指示主機設備的電源條件的信號。與第一存儲單元相對應的解析度寄存器條目指示的是與第一可能數據值數量相對應的第一解析度。與第一存儲單元相關聯的解析度寄存器條目被更新,以便指示與第二可能數據值數量相對應的第二解析度,並且第一可能數據值數量大於第二可能數據值數量。第二數據值以第二解析度被寫入第一存儲單元。對更新與第一存儲單元相關聯的解析度寄存器條目和以第二解析度寫入第一存儲單元的處理來說,這些處理是由與包含第一存儲單元的存儲單元頁面相關聯的差錯條件觸發的。存儲單元頁面與降級存儲單元的第二頁面進行配對。此外,邏輯尋址軟體代碼被更新,以便將存儲單元頁面配對視為處於第一解析度的單個存儲單元頁面。在另一個通常方面中,確定是否執行維護操作。在確定應該執行維護操作時,作為響應,與存儲單元頁面相關聯的差錯信息被識別,並且確定該差錯信息是否滿足差錯判據。與存儲單元頁面相對應的一個或多個解析度寄存器被從第一解析度調整到第二解析度。所述第一和第二解析度中的每一個都定義了多個電壓範圍,並且每一個電壓範圍都對應於一個可能的數據值。與第二解析度相比,第一解析度具有更多的電壓範圍。本實施方式可以包括一個或多個下列特徵。確定是否執行維護操作包括確定主機設備是否具有滿足預定條件的電源,例如主機是否正在接收交流電源或者主機設備是否具有充電至預定電荷等級的電池。確定是否執行維護操作包括確定處理器是否具有超過預定閾值的未使用帶寬。在另一個通常方面中,針對已存儲數據值暫降所進行的調整可以通過將電荷施加於多個存儲單元來實施。每一個存儲單元都被充電至與數據值相對應的目標電壓。這些存儲單元包括基準單元,其中所述基準單元被充電至預定電壓。基準單元中的電壓電平被檢測,此外還會檢測來自一組存儲單元的電壓電平。基於在基準單元中檢測到的電壓電平與預定電壓之間的差值,向存儲單元施加附加電荷。本實施方式還可以包括一個或多個下列特徵。第二基準單元中的電壓電平被檢測。將附加電荷施加於存儲單元的處理進一步基於在第二基準單元中檢測到的電壓電平以及預定的第二基準單元電壓。該存儲單元是NAND快閃記憶體存儲單元或NOR快閃記憶體存儲單元。並且每一個數據值都包括多於四個的比特。在又一個通常方面中,數據被存儲在多個存儲單元中。每一個存儲單元都被適配成在寫入操作中接收電荷,以便達到與具有規定比特數量的數據值相對應的電壓電平。與存儲單元相關聯的解析度寄存器包含多個條目,每一個條目都指示了存儲在一個或多個相應存儲單元中的多個比特。主機接口被適配成接收來自主機設備的信號,其中該信號指示的是主機設備的電源條件。處理器被適配成將數據值重新寫入存儲單元,以及響應於指示預定電源條件的信號,將解析度寄存器從指示第一比特數量調整為指示第二比特數量。本實施方式可以包括一個或多個下列特徵。邏輯尋址軟體代碼將地址。主機接口還被適配成接收來自主機設備的命令,以及與主機設備交換數據。在另一個通常方面中,確定是否執行維護操作。與多個快閃記憶體存儲單元相關聯的維護日誌被讀取。記錄在維護日誌上的維護活動被執行。該維護活動可以包括下列各項中的一項或多項以更高解析度來重新寫入初始以較低解析度存儲的數據值;降低與預定差錯條件相關聯的存儲單元組的解析度;以與初始數據值相同的解析度來重新寫入超過預定差錯閾值的數據值;將最頻繁存取數據與最不頻繁存取的數據進行交換;或者通過向存儲單元施加附加電荷來校正電壓暫降,以便刷新數據值。本實施方式還可以包括一個或多個下列特徵。確定是否執行維護操作包括確定主機設備是否具有滿足預定條件的電源,例如主機設備是否接收交流電源,或者主機設備是否具有充電至預定電荷等級的電池。確定是否執行維護操作包括確定內部處理器是否具有超過預定閾值的未使用帶寬。對於在一個或多個維護活動中被重新寫入到不同物理存儲單元的數據值來說,這些數據值的邏輯尋址軟體代碼被更新。某些實施方式可以提供一個或多個優點。例如,某些實施方式可以提供高性能數據存儲功能。存儲密度和/或容量可以增加。某些實例可以提供改善的可靠性和/或降低的數據差錯率。某些實施方式可以允許提高的集成等級、小型化、減小的電磁噪聲和/或改進的噪聲餘量。某些實施方式可以在輔助系統中實現更低的系統成本,例如提供給邏輯和/或編程/擦除電路的電壓供應。在附圖和後續描述中將會闡述本發明的一個或多個實施方式的細節。從該描述和附圖以及權利要求中可以顯見本發明的其他特徵。圖1顯示的是包含NAND快閃記憶體存儲顆粒(die)和快閃記憶體盤(flashdisk)控制器的多晶片組件架構的實例。圖2A2B共同地顯示了單元電壓與存儲在存儲單元中的數字值之間的映射。圖3A3B顯示的是對從多級單元快閃記憶體存儲器中讀取數據頁面的處理實例進行描述的流程圖。圖4顯示的是對從快閃記憶體存儲器中讀取數據頁面的處理實例進行描述的流程圖。圖5顯示的是對通過執行差錯校正操作來校正包含比特差錯的數據頁面的處理實例進行描述的流程圖。圖6A6C共同地顯示了用於執行備選值命令的操作實例。圖7A7B顯示的是對將數據寫入快閃記憶體存儲頁面的處理實例進行描述的流程圖。圖8A8B顯示的是對調整存儲頁面的單元解析度的處理實例進行描述的流程圖。圖9顯示的是描述維護處理實例的流程圖。圖10顯示的是對在快閃記憶體盤控制器中實施的邏輯尋址處理實例進行描述的流程圖。圖ll顯示的是包含了處於NAND快閃記憶體存儲顆粒外部的電荷泵和模數轉換器的系統實例。圖12顯示的是包含了在NAND快閃記憶體存儲顆粒上的去耦電源輸入的系統實例。在不同的圖中,相似的附圖標記指示的是相似的部件。具體實施例方式這裡的不同實施例涉及的是能夠在深多級單元(MLC)中存儲信息的快閃記憶體存儲器。深多級單元可以根據單元電壓來編碼至少若干個數據比特。某些實施方式涉及的是用於實施包括深MLC快閃記憶體存儲器的系統的架構。某些實施方式涉及的是用深MLC快閃記憶體存儲器來執行數據存儲操作的技術。圖1顯示的是為主機設備(未顯示)提供數據存儲的多晶片組件(multi-chippackage,MCP)100的一個實例。MCP100包括用於存儲數據的NAND快閃記憶體存儲顆粒103,以及有助於響應來自主機的讀取和/或寫入命令來訪問快閃記憶體存儲器的快閃記憶體盤控制器(FlashDiskController,FDC)106。在某些實施方式中,NAND快閃記憶體存儲顆粒103將數據存儲在深MLC中。例如,快閃記憶體存儲顆粒103中的單元可以保持3、4、5、6、7、8、9、IO個或更多的信息比特。MCP100可以在各種便攜設備中提供數據存儲,其中舉例來說,所述便攜設備可以是數位相機、其他圖像存儲設備、便攜音頻設備、個人數字助理(PDA)以及數字攝像機。某些實施方式還可以在其他應用中使用,這些應用的實例可以包括臺式計算機、伺服器、無線路由器或是嵌入式應用(例如汽車),特別地,在需要快速存取數據的情形中,這些應用實例也是可以使用的。通常,通過實施依照這裡描述的實例的裝置和技術,可以提高快閃記憶體存儲器密度和/或實現高性能和/或可靠的非易失性數據15存儲操作。作為說明性實例,MCP100可以通過在快閃記憶體存儲器的單元組(例如,按頁或塊)的每一個單元中存儲一個字節的信息(也就是8比特)來存儲數據文件。某些其他實例可以具有16比特、32比特、64比特或更高的解析度。在某些實施方式中,解析度可以通過單元柵極上的單個或多個電子檢測來確定。在其他實施方式中,信息的任何實際比特數量都可以編碼成在單個快閃記憶體存儲單元充電達到的電壓。FDC106包括主機接口109、處理器112和快閃記憶體接口115。FDC106經由主才幾接口109而從主4幾i殳備接收命令和/或數據(例如軟體代碼更新或用戶數據),和/或向主機設備傳送數據,其中該主機設備可以是臺式計算機、伺服器或便攜計算設備上的處理器。與主機進行的通信可以使用定製或標準協議,例如高級技術附件(AdvancedTechnologyAttachment,ATA)、串行ATA(SATA)、塊提取(BlockAbstracted)NAND、安全數字(SD)或是多士某體卡(MMC)。在某些實施方式中,MCP100可以是與主機設備相同的產品的一部分。在其他實施方式中,主機設備可以通過與至少一個基於處理器的其他設備相連的通信鏈路(例如USB、火線、藍牙)來與MCP100進行可操作通信。例如,主才幾可以通過在至少一個網絡上發送控制消息以及發送和接收數據消息來遠程訪問MCP100,其中所述至少一個網絡可以包括有線、無線或光纖鏈路,或是其組合。這些網絡可以支持基於分組的通信,並且可以包括區域網或廣域網,例如網際網路。主機設備lh的處理器可以使用由FDC106處理且用於識別快閃記憶體存儲器中的物理地址的邏輯尋址方案來從NAND快閃記憶體存儲顆粒103中讀取數據和/或向其寫入數據。在某些實施方式中,主機接口109可以被配置成使用ATA/IDE接口來與主機設備進行通信。處理器112可以對接收到的命令進行處理,並且可以使用快閃記憶體接口115來存取NAND快閃記憶體存儲顆粒103。FDC106可以被配置成提供諸如磨損管理(wearmanagement)、塊管理、差錯校正和邏輯尋址管理功能之類的功能,以便提高NAND快閃記憶體存儲顆粒103的性能,例如增加可靠性、縮短讀寫時間、改善電源效率,以及提高每晶片體積的容量。這裡描述的某些技術和裝置既適用於NAND和/或NOR快閃記憶體存儲器,也適用於其他類型的電可擦寫或電可寫入存儲器,還適用於那些數據存取解析度以頁面或塊為單位的存儲器。雖然在圖1中只顯示了一個NAND快閃記憶體存儲顆粒103,但是MCP100也可以包括多於一個的NAND快閃記憶體存儲顆粒103。某些實施方式可以包括非易失性存儲器的任何組合,這些組合可以包括NAND快閃記憶體、NOR快閃記憶體或電可擦寫可編程只讀存儲器(EEPROM)。在某些i兌明性實例中,MCP100可以包括兩個、三個、四個或者至少八個NAND快閃記憶體存儲顆粒103。例如,MCP100可以包括處於與四個NAND快閃記憶體存儲顆粒103封裝在一起(例如在堆棧中)的顆粒上的快閃記憶體盤控制器106。在某些實施方式中,快閃記憶體盤控制器106和快閃記憶體存儲顆粒103可以在單個顆粒上實施。在其他實施方式中,快閃記憶體盤控制器106中的一個或多個組件可以部分或者完全在單個顆粒或MCP100的外部實施。例如,某些或所有同步動態隨機存取存儲器(SDRAM)151和/或非易失性存儲器(NVM)154可以在MCPIOO的外部實施。在某些實施例中,某些或所有快閃記憶體盤控制器106可以按與快閃記憶體存儲顆粒103分離的方式封裝。在一個說明性實例中,NVM154、SDRAM151、主機接口109以及至少一部分處理器112中的每一個都可以在MCP100的外部實施。在其他實施方式中,快閃記憶體接口115與快閃記憶體存儲顆粒103之間的模擬和/或數位訊號可以在外部被路由到集成組件。通過實施遠程或分布式傳輸結構(例如受到屏蔽和/或控制的阻抗信號路徑),可以傳送往來於至少一個快閃記憶體存儲顆粒103的信號。在某些實施方式中,通過安裝非易失性存儲器的附加組件,可以提供存儲器擴展。緩沖和/或路由設備可以用於支持將模擬和/或數位訊號分發到數量可變的存儲顆粒103。此外,處理器112的功能可以在MCP100的外部實施。在各個實施例中,處理器112既可以完全或部分在同一基底(例如印刷電路板)上的電路中實施,也可以在與MCP17100相同的產品中實施。該處理器112還可以由另一個經通信鏈路(例如有線、無線、光纖或是其組合)而與MCPIOO進行可操作通信的計算設備來實施。MCP100可以是任何實際存儲器大小,例如高達至少100吉字節或以上。在所描述的實例中,NAND快閃記憶體存儲顆粒103被組織成包含多個快閃記憶體存儲塊(flashmemoryblock)118。在某些實施方式中,NAND快閃記憶體存儲顆粒103可以包括數百或數千個快閃記憶體存儲塊118。每一個快閃記憶體存儲塊118都包括多個快閃記憶體存儲頁面(flashmemorypage)121。如所示,每一個快閃記憶體存儲頁面121都包括可以存儲數據124的單元以及可以存儲與數據相關聯的糾錯碼(ECC)127的單元。作為例示,快閃記憶體存儲頁面121可以存儲2048位元組的數據和64位元組的ECC數據。數據單元124存儲的是從快閃記憶體盤控制器106接收的信息。ECC單元127存儲的是與存儲在數據單元124中的數據相關聯的附加完整性元數據(例如ECC數據)。在各個實施方式中,ECC數據允許快閃記憶體盤控制器106檢測和/或校正數據中的比特差錯。在圖示實例中,每一個快閃記憶體存儲塊118還包括一個或多個基準單元130a、130b、130c。在某些實施方式中,FDC106可以監視基準單元130a、130b、130e中的電壓,以便估計單元124、127中的電壓暫降(voltagesag)或漂移。在每個塊118中,基準單元130a可以位於塊118的開端,並且基準單元130b可以位於塊118的末端。每一個快閃記憶體存儲頁面121可以包括基準單元130c。在某些實施方式中,在頁面、塊和存儲顆粒103的任何圖案中可以分布數量更多或更少的基準單元,以便確定單元124、127的可能性能。在某些實施方式中,基準單元可以位於經歷讀/寫使用等級(usagelevel)的單元之中或是其周圍,其中所述等級代表的是所關注的某些數據單元的使用等級。補償方法可基於非基準單元與其他非基準單元的比較。舉個例子,如果同一頁面或塊中的多個單元中的電壓相對較低,那麼所述補償可以包括根據測量得到的值來向下調整閾值(例如單元中不同值等級之間的電壓閾值),由此可以顯著降低讀取差錯。其他實例包括根據在基準單元中檢測到的電壓來確定校正函數,其中該校正函數會在將檢測到的電壓轉換成存儲單元所代表的數字數據值之前調整檢測到的電壓。在某些實施方式中,通過將附加電荷施加於多個單元,可以校正檢測到的電壓暫降,由此刷新存儲單元。舉個例子,如果一個或多個基準單元的電壓電平指示的是一個超過某個閾值量的電壓漂移,那麼與一個或多個基準單元相關聯的一個或多個頁面或是一個或多個塊中的存儲單元既可以通過施加附加電荷來調整,也可以被重寫,以便根據所存儲的數據而將這些單元恢復到適當的電壓電平。這些調整既可以在檢測到一個或多個基準單元中的電壓漂移的時候立即執行,也可以作為以後的維護操作的一部分。在某些實施方式中,可以根據檢測到的一個或多個基準單元電壓與一個或多個目標基準單元電壓之間的差值來施加附加電荷或是重寫該存儲單元,其中所述差值可以被假設成是指示了一個或多個基準單元以及相應數據單元的恰當電壓漂移或暫降量。在某些實施方式中,施加附加電荷或重寫存儲單元的處理可以通過讀取所有單元,對照閾值來執行必要調整(例如根據基準單元電壓數據執行差錯校正以獲取所存儲的數據而被執行。此後,該數據可以用於確定恰當的電壓電平,或是用於確定各個存儲單元需要多少附加電荷來校正所識別的電壓漂移或暫降。在某些實施方式中,所施加的附加電荷量可以根據一個校正函數來確定,其中該校正函數與用於在將檢測到的電壓轉換成數字數據值之前調整被檢測電壓的校正函數是相同或相似的。在某些實施方式中,其中可以自適應地重新指定快閃記憶體存儲器中的單元。例如,基準單元可以在需要時響應於讀取或寫入使用信息、溫度、產品使用年限、電源電壓(例如低電池、AC線路功率)和/或檢測到的差錯等級而被添加、移除、再分配和/或再分布。如果某些存儲塊或頁面中的差錯很低,那麼可以將較少的單元指定為ECC單元127和/或基準單元130,這樣做將會提供更多的數據單元124。將單元指定給基準、數據和ECC功能的相對指定關係以及單個單元的解析度可以根據當前工作條件和/或根據預定條件而被動態調整。舉個例子,該解析度可以根據差錯率而被調整,而每頁面的ECC單元數量則可基於差錯率以及讀寫歷史信息,並且基準單元的位置和分布可以基於差錯率和產品使用年限。本實例僅僅描述的是可以根據各種判據進行動態調整的控制器106和快閃記憶體存儲顆粒。其他判據可以包括數據重要性、電源可用性(例如AC線路功率、電池功率)以及關於最大存儲器大小的相對重要性、速度性能以及數據完整性的定義判據。舉個例子,如果保持需要大量軟體校正來維護高單元解析度,那麼有可能導致較長的存取時間。這些判據可以由用戶、產品製造商或軟體根據應用的需要來進行設計。在某些實施方式中,在維護操作中可以重寫需要大量軟體校正的數據,以便校正與經過的時間相關聯的電荷的變化,或是校正已經開始降級的存儲單元頁面。通常,在改變一個或多個存儲單元的解析度的時候,數據將被寫入到存儲單元的不同頁面中,並且可以按相同或不同的解析度寫入。在某些實施方式中,存儲單元的初始頁面將被降低到某個較低解析度,隨著存儲單元的老化和降級,這種情況通常是必然的。在由於所識別的電壓漂移或暫降而執行數據重寫時,可以將數據寫入存儲單元的相同或不同的頁面或塊。快閃記憶體接口115提供了針對快閃記憶體存儲顆粒103的直接控制、握手處理以及數據傳送訪問。該快閃記憶體接口115包括控制接口133和模擬接口136。在某些實施方式中,控制接口133可以向快閃記憶體存儲顆粒103發送控制、地址和數據信號。這些命令和存儲地址可以在數位訊號或模擬信號中傳送。快閃記憶體盤控制器106還可以接收來自快閃記憶體存儲顆粒103的模擬信號。快閃記憶體盤控制器106可以包括用於與快閃記憶體顆粒103上的快閃記憶體存儲器邏輯對接的處理器,並且這個用於與快閃記憶體存儲顆粒上的快閃記憶體存儲器邏輯對接的處理器可以集成在快閃記憶體接口115中。響應於讀取命令,快閃記憶體存儲顆粒103可以輸出代表存儲在單個數20據單元124中的數據的單元電壓。快閃記憶體盤控制器106可以接收從快閃記憶體存儲顆粒103上的每一個存儲單元輸出的模擬電壓信號。這些模擬單元電壓或模擬電壓信號可以被傳送到FDC106中的模擬接口136。在某些實施方式中,快閃記憶體接口115還可以包括與控制接口133以及模擬接口136分離的數據總線,用以與快閃記憶體存儲顆粒103進行通信。模擬接口136可以包括模擬前端(模擬FE)139和模數轉換器(ADC)142。一旦接收到模擬信號,那麼模擬FE139可以根據需要來調節(condition)信號,例如提供偏移、校正電平偏移、增益、緩衝、濾波或是用於最小化反射的受控阻抗。模擬FE可以提供高阻抗輸入,以便最小化快閃記憶體存儲單元的負載,此外它還可以提供低阻抗輸出,以便驅動與ADC142的輸入相耦合的採樣和保持或追蹤和保持電路。在某些實施方式中,模擬FE139還可以包括模擬復用器(未顯示),以便從來自一個或多個快閃記憶體存儲顆粒的多個模擬輸出線路中選擇其中一個。ADC142對模擬值進行處理,以便確定數據單元124、127中的電壓的相應數字數據值表示。ADC142接收經過調節的模擬信號,並且將模擬信號轉換成模擬電壓的數字表示。然後,ADC142(或ADC中的處理器)將數字表示轉換成存儲在存儲單元上的且由電壓所代表的數字數據值,其中舉例來說,所述轉換基於映射函數。處理器112還可以用於將數字表示轉換成數字數據值。模擬電壓的數字表示可以包括足以允許ADC142或處理器區分多個模擬電壓電平的信息,其中每一個模擬電壓電平都代表了一個特定的數字數據值。該數字表示可以包括數量多於數字數據值的數據比特。在某些實施方式中,ADC142可以集成在快閃記憶體存儲顆粒103中,而不是包含在快閃記憶體盤控制器106中。在這種情況下,快閃記憶體接口115可以接收來自快閃記憶體存儲顆粒103的單元電壓的數字表示或數字數據值。在這裡顯示了映射函數145的一個實例。根據映射函數145,ADC142或處理器112可以將模擬單元電壓轉換成數字表示和/或數字數據值。舉個例子,在這裡可以使用一系列模擬電壓闊值來將模擬電壓映21射成數字表示和/或數字數據值。同樣,該映射函數145還可以描述將模擬電壓的數字表示轉換成數字數據值的處理。舉個例子,模擬電壓的一個或多個數字表示可以映射成一個特定的數字數據值,其中每一個數字數據值都具有相應的一個或多個數字表示的不同集合。在某些實施方式中,ADC142或處理器112可以接收用於改變映射函數145的參數。例如,FDC106可以根據當前溫度、電源電壓、頁面數據讀寫次數和/或基準單元130a、130b和/或130c中的電壓來適配映射函數145。在某些實施方式中,映射函數適配可以基於相鄰數據單元124、ECC單元127和/或其他單元的電壓特性。關於單元電壓與數字數據值之間的映射145的更多細節是參考圖2A2B描述的。在某些實施方式中,ADC142或處理器還可以響應於備選值命令來執行操作,以便為接收到的模擬信號或模擬信號的數字表示檢索備選值(alternativevalue)。關於備選值命令的例示實施方式的更多細節是參考圖6A6C來描述的。快閃記憶體盤控制器106還包括ECC引擎148。在不同的實施方式中,ECC引擎148可以使用ECC單元127來執行硬體和/或軟體差錯檢查和校正。在某些實施方式中,ECC引擎148可以提供基於狀態機的數據恢復。例如,ECC引擎148可以檢測數據頁面中的差錯比特數量。然後,ECC引擎148可以確定所使用的是哪一種ECC算法。舉個例子,ECC引擎148可以被配置成首先嘗試硬體ECC算法,其中舉例來說,此類算法使用的是漢明(Hamming)或裡德-所羅門(Reed-Solomn)碼。如果硬體ECC算法無法成功恢復數據頁面,那麼可以嘗試軟體ECC校正。在這裡參考圖5描述了一種例示方法,其中該方法描述的是組合使用硬體ECC、軟體ECC以及其他技術。在某些實施例中,ECC引擎148可以提供至少達到約10。/。或以上的數據頁面大小的差錯校正。在某些實施方式中,處理器可以確定使用哪一種ECC算法。在某些實施方式中,如果使用ECC算法來恢復包含超過某個預定數量或百分比的差錯的數據,那麼處理器U2將會重寫或刷新存儲在快閃記憶體存儲頁面中的數據。在其他實施方式中,處理器112會在維護日誌中記錄包含此類差錯的數據的位置、物理和/或邏輯位置。然後,處理器112會在維護操作過程中重寫或刷新該數據(參見圖9)。維護操作可以在發生如下情況時執行在主機設備依照某個預定電源條件工作時,在處理器112具有預定量的過剩帶寬和/或以所調度的間隔工作時。快閃記憶體盤控制器(FDC)106可以包括動態隨機存取存儲器(DRAM)。本實例的快閃記憶體盤控制器106還包括同步動態隨機存取存儲器(SDRAM)151。舉個例子,SDRAM151可以是單倍數據速率的SDRAM或雙倍數據速率的SDRAM。在某些實施方式中,FDC106可以使用SDRAM151作為高速和高密度緩沖器,以便存儲諸如用於主機設備的輸出數據之類的臨時數據,以及用於數據頁面的備選數字值。FDC106還可以包括其他類型的RAM,例如DRAM。舉個例子,FDC106可以接收來自NAND快閃記憶體存儲顆粒103的才莫擬數據。然後,FDC106可以將檢測到的模擬電壓轉換成數字數據,在某些情況下,該數字數據包括用於一個或多個單元的備選數字數據值。然後,ECC引擎148檢查和校正數字數據,由此可以為每一個快閃記憶體存儲頁面121上的單元檢查數據值和備選數據值的多個不同組合。如果差錯校正成功,那麼處理器112可以將數字數據存入SDRAM151的主機輸出緩沖器。在某些實施方式中,主機設備可以從主機輸出緩沖器中檢索數據。作為替換,快閃記憶體盤控制器106可以將數據從主機輸出緩衝器轉發到主機設備。SDRAM151或其他高速緩存還可以用於存儲那些將被寫入快閃記憶體存儲顆粒103的數據。FDC106還包括非易失性存儲器(NVM)154。在本實例中,NVM154包括磨損管理軟體代碼157、塊管理軟體代碼160、邏輯尋址軟體代碼163以及單元解析度寄存器(resolutionregister)166,這其中的每一個都包含了指令(或者指向快閃記憶體存儲器中指令的指針),其中當由處理器112執行時,所述指令(或者指向快閃記憶體存儲器中指令的指針)將會執行一定的操作。在某些實施方式中,NVM154可以與NAND23快閃記憶體存儲顆粒103分離。例如,NVM154可以是NOR快閃記憶體存儲器或是另一個NAND快閃記憶體存儲器。在其他實施方式中,NVM154可以是NAND快閃記憶體存儲顆粒103中的一個或多個頁面。在其他實施方式中,NVM154可以存儲指向存儲在NAND快閃記憶體存儲顆粒103中的數據的指針或存儲位置。在某些實施方式中,處理器112可以執行磨損管理軟體代碼157、塊管理軟體代碼160以及邏輯尋址軟體代碼163,以便提高MCP100的效率、性能和/或可靠性。處理器112可以使用磨損管理軟體代碼157來管理MCP100中的頁面121、塊118或顆粒103的磨損度(wear)。舉個例子,磨損管理軟體代碼157可以包括在由處理器112運行時執行包括負栽平衡操作在內的多種操作的指令,以便將最頻繁使用的存儲頁面中的數據交換(swap)到較少使用的存儲頁面。所述交換操作還可以包括對邏輯尋址軟體代碼163進行更新。磨損管理軟體代碼157可以在維護操作中被激活。在某些實施方式中,每一個讀取操作的物理和/或邏輯地址都被記錄在維護日誌中。每一個寫入操作同樣可以記錄在維護日誌中。然後,磨損管理軟體代碼157可以使用預定閾值來確定如何在存儲單元頁面中重新排列已存儲數據。其中舉例來說,這些閾值可以包括在一周或一個月的時間將存儲單元頁面讀取100或1000次。在其他實施方式中,閣值可以基於讀取操作總數的百分比,或者基於與每時間每頁面的讀取平均次數的偏差。在圖9中描述了維護操作的一個實例。塊管理軟體代碼160可以包括用於管理快閃記憶體存儲顆粒103中的不良塊的代碼。例如,塊管理軟體代碼160可以包括快閃記憶體存儲塊118的歷史差錯信息。在某些實施方式中,該差錯信息可以用於保持每一個快閃記憶體存儲頁面中的單元解析度。關於塊管理軟體代碼實例的更多細節是參考圖8A和8B來描述的。塊管理軟體代碼160可以與邏輯尋址軟體代碼163和/或單元解析度寄存器166相結合,該代碼還可以用於對快閃記憶體存儲顆粒103中具有降低解析度(在單元解析度寄存器166中更新)的不良塊或不良頁面配對,並且處於邏輯尋址目的而將不良塊或不良頁面的集合視為等價於具有初始較高解析度的存儲單元中的單個塊或單個頁面。塊管理軟體代碼157可以在維護操作過程中被激活。在圖9中描述了維護操作的一個實例。邏輯尋址軟體代碼163可以包括用於將主機命令中的邏輯地址轉換成NAND快閃記憶體存儲顆粒103中的物理地址的代碼。在某些實例中,邏輯頁面可以與NAND快閃記憶體存儲顆粒103中的多個物理存儲頁面相關聯。邏輯尋址軟體代碼163對NVM154中的邏輯地址的轉換和更新進行管理。在一個實例中,舉例來說,在將頁面從10比特解析度降級到8比特解析度的時候,或者在出於磨損管理目的而將邏輯塊地址映射至不同物理頁面地址的時候,邏輯尋址軟體代碼163可以動態維護物理頁面地址與來自主機的邏輯塊地址之間的聯繫。此外,舉例來式。通過產生、處理、存儲、使用和/或以其他方式操縱中間地址形式,可以執行各種非易失性存儲器操作。關於邏輯尋址軟體代碼實例的更多細節是參考圖10來描述的。單元解析度寄存器166存儲了每一個快閃記憶體存儲頁面121中的單元解析度的信息。例如,NAND快閃記憶體存儲顆粒103可以是一個8比特MLC快閃記憶體存儲器。在某些實施方式中,某些快閃記憶體存儲塊118可以響應於各種條件而被降級或升級。關於此類條件的說明性實例包括差錯性能、溫度、電壓條件、單個單元的讀寫循環次數、單元組、頁面、相鄰位置中的單元、基準單元、具有類似的讀和/或寫使用歷史記錄的單元或是其他因素,例如設備使用年限。關於某些或所有這些條件的信息可以存儲在數據存儲設備中,或者也可以從已存儲信息的一個或多個其他比特中確定或估計。在一個實例中,已存儲的信息可以包括歷史讀取和寫入使用數據,其中該數據代表的是存儲顆粒103中的至少某些單元的使用等級。處理器112可以更新單元解析度寄存器166,以便減小降級存儲頁面的單元解析度,例如將其降低至4比特,由此快閃記憶體存儲頁面121仍舊可以結合較小的存儲器大小來使用。在其他實施方式中,單元解析度寄存器166還可以存儲每一個快閃記憶體存儲塊118的單元解析度。在某些實施方式中,在將數據從主機設備傳送給MCP100中的存儲單元之前,單元解析度寄存器166將被向下調整到單比特解析度或是另一個低數量比特解析度。在圖7B中更詳細地描述了這個處理。由於在為每一個存儲單元充電的時候需要較低的精度,因此,通過在傳送數據之前降低單元解析度寄存器166,可以提供更快的數據傳輸速率。所傳送的數據隨後可以按較高解析度被重新寫入存儲單元。在某些實施方式中,在維護操作過程中(例如在以後有足夠處理資源可用並且重寫處理不會干擾其他讀寫操作的時候)可以按較高的解析度來重新寫入所傳送的數據。在某些實施方式中,在維護日誌中做出低單元解析度數據傳送的記錄。在某些實施方式中,邏輯尋址軟體代碼163、解析度寄存器166和/或塊管理軟體代碼160會將降級存儲頁面(或降級存儲塊)一起組(或塊)'。降級存儲頁面組的存儲頁面不必與存儲頁面相鄰。降級存儲頁面組可以包括來自不同塊的存儲頁面,甚至可以包括來自不同存儲顆粒的頁面。在某些實施方式中,處於一組降級存儲頁面或塊中的每一個降級存儲頁面或塊都會響應於與頁面或塊相關聯的差錯條件而被降級。圖2A2B共同地顯示了單元電壓與存儲在存儲單元中的數字數據值之間的映射。如圖2A所示,該圖顯示了一個8比特存儲單元的說明性的數字數據值分布200。8比特存儲單元包括256個可能的數字數據值;4比特存儲單元包括16個可能的數據值。可能數據值的數量等於2n(其中n等於比特數量),但是可能數字數據值的數量不必與n比特的可能數字數據值數量相對應。每一個存儲單元都可以具有大於1的整數個可能數字數據值,其中舉例來說,某些存儲單元可以具有10個可能的數據值。數字值分布200包括數字值分布曲線205210,其中這些曲線代表的是每一個數字數據值的電壓分布。每一個數字值分布曲線(例如205210)都代表了某個範圍的數字電壓值,其中該範圍與關聯於每一個可能數字數據值的電壓電平相對應。在寫入操作過程中,每一個存儲單元都會接收電荷,直至達到與從可能數字數據值之一選出的數字數據值相對應的模擬電壓。這個對應的電壓通常會落入期望數字數據值的分布曲線205-210以內。此外,這個對應電壓還可以是與數字數據值相對應的目標電壓。舉個例子,如果單元電壓位於分布207以內,那麼存儲在該單元中的數字值可以是02h。在讀取操作過程中,模擬電壓信號是從每個單元中檢測到的。然後,ADC136將模擬電壓信號轉換成模擬電壓信號的數字表示。之後,這個數字表示會與至少一個數字值分布曲線進行比較,以便確定存儲在所讀取的存儲單元中的模擬電壓所代表的數字數據值。數字數據值分布200包括處於數字數據值分布曲線205210之間的灰色區域215。在某些實施方式中,舉例來說,當ADC142接收到單元電壓或者檢測到位於某一個灰色區域215以內的模擬電壓信號時,ADC142可以將單元電壓轉換成最接近的相鄰數字數據值。例如,倘若ADC142接收到非常接近電壓電平220的單元電壓,那麼ADC142可以將其解析成是最接近的相鄰數字數據值,即FEH。在某些實施方式中,FDC106還可以包括備選值命令,其中該命令指示ADC142根據某些參數來解析出與最接近的相鄰值不同的備選值。在某些實施方式中,FDC106可以在嘗試解析頁面或數據塊值的差錯校正處理中同時使用最接近的相鄰數字數據值以及一個或多個備選值。此外,FDC106可以根據單元電壓在數字數據值分布曲線205210或灰色區域215中的位置而將某個不確定性指定給特定的單元電壓或相應數據值。所指定的不確定性可以供嘗試解析頁面或數據塊值的算法使用。關於這些參數的某些實例可以包括下列各項中的一項或多項溫度、針對該單元的讀取次數、針對該單元的寫入次數、電源電壓以及基準單元130a、130b、130c中的電壓。在某些實例中,單元電壓可以降到最小單元電壓(Vmin)以下。FDC106可以通過向接收到的單元電壓添加一個偏移量來實施校正。這個偏移量既可以27由模擬FE139添加,也可以由ADC142或處理器112以數字方式添加。在某些實施方式中,FDC106可以通過變更數字數據值分布200來動態調整灰色區域215的位置和寬度。例如,FDC106可以包括基於參數調整灰色區域的維護軟體代碼,其中舉例來說,所述參數可以是一個或多個基準單元電壓,存儲單元使用率,以及可以在NVM154中預先加栽的其他啟發(heuristics)。維護軟體代碼還可以執行單元解析度寄存器166的更新。例如每一個顆粒103、模擬接口135和/或MCP100都可以在製造時被表徵,並且線性化表格、校正因數或其他校正調整可以存儲在MCP100的非易失性存儲器中。在某些情況下,最大和最小電壓電平(Vmax和Vmin)以及數字值分布曲線205-210可以在其使用壽命中根據單元的經驗測試而被調整和/或再分布。如圖2B所示,該圖顯示的是單元電壓-數字值曲線圖250。該圖250包括理想電壓特性255,並且ADC142〗吏用該特性來將才莫擬電壓轉換成數字值。在某些實例中,數字單元124可以根據非理想電壓特性260、265來存儲數字值,其中舉例來說,所述非理想電壓特性歸因於溫度啟發、單元使用年限、電荷泵或電源電壓容差、ADC136的非線性、在存儲單元中檢測到的差錯、和/或單元的讀寫次數。FDC106可以採用不同方式來補償電壓特性260、265,使之更接近理想特性255。例示的補償方法是參考圖3A、3B、4、5、6A6C來描述的。圖3A和3B顯示的是對從NAND快閃記憶體存儲器讀取數據頁面的處理350和300的實例進行描述的流程圖。處理350和300包括通常可以由處理器112執行的操作。在某些實施方式中,處理350和300還可以由那些可以與ADC142結合的其他處理和/或控制部件來執行、補充或增加。例如,在模擬接口136中可以存在一個用於執行處理350和300中的某些或所有操作的控制器或補償器。圖3A描述的是將從多級存儲單元中檢測到的電壓電平轉換成數字數據值的處理。處理350是以檢測來自多級存儲單元的模擬電壓電平為開始的(步驟355)。其中舉例來說,該電壓可以由模擬接口13628來檢測。模擬接口136可以包括一個能夠通過操作來接收來自快閃記憶體存儲顆粒103的模擬信號的輸入。快閃記憶體盤控制器106還可以包括一個控制模塊,以便選擇可供所述輸入接收模擬信號的存儲單元。在步驟360中,模擬電壓信號被轉換成所檢測到的模擬電壓的數字表示。這個轉換可以由ADC142來執行。該數字表示可以具有充足的數據,以便允許ADC142或處理器112在代表數字數據值的多個可能的電壓電平中區分存儲單元存儲的模擬電壓電平。這個處理可以通過讓數字表示包現。、、'、、,、'—'^圖2A協助描述了這個概念。可能的模擬單元電壓的範圍可以分成多個分段(例如用電壓電平220表示的分段),其中每一個分段都與模擬單元電壓的數字表示相對應。每一個數字值分布曲線205-210以及每一個灰色區域215都可以包括多個此類分段,由此允許使用解析度高於數字值分布曲線205~210的數字表示,這樣做可以提供附加信息,其中舉例來說,該附加信息涉及的是單元電壓在數字值分布曲線205-210或灰色區域215中的位置。在步驟365,數字表示將會基於數字數據值分布而被轉換成數字數據值。所述數字數據值分布可以存儲在單元解析度寄存器166中,並且可以是圖2A所示的數字數據值分布200。在步驟335,處理器或控制器確定是否要對更多存儲單元進行讀取。如果是的話,那麼處理返回到步驟355。否則,處理350結束。圖3B更詳細地描述了一個用於存儲所識別的數字數據值以及標記不確定的數字數據值的位置的處理。舉例來說,處理300是在處理器112從NAND快閃記憶體存儲顆粒103接收到檢索數據頁面的命令的時候開始的。在步驟305,處理器112從單元解析度寄存器166中檢索某個頁面的單元解析度信息。然後,在步驟310,處理器112從ADC142接收用於數據單元的數字輸出值。這個用於數據單元的數字輸出值是從數據單元中檢測到的電壓的數字表示。ADC142根據步驟310中存儲的閾值來確定接收到的數字數據值。在某些實施方式中,處理器112可以使用單元解析度寄存器166中的信息來確定所使用的是哪一個閾值集合。這些閾值可以涉及在上文中結合圖2A論述的數字值分布曲線205~210。例如,處理器112可以為8比特單元使用一個閾值集合,並且為2比特單元使用另一個閾值集合。在某些情況下,處理器112可以為一個8比特單元使用一個閣值集合,並且為一個不同的8比特單元使用另一個閾值集合。每一個閾值集合都可以對應於一個可能的數字數據值分布,並且可以構成與可能的數字數據值相對應的模擬電壓的數字表示的各個範圍。在步驟320,處理器112確定用於所接收的模擬電壓值的數字數據值是否是不確定的。在某些實施方式中,如果單元電壓處於數字值分布200的灰色區域215中,或者如果單元電壓接近於數字值分布曲線205-210與灰色區域215之間的邊界,那麼處理器112可以確定數字數據值是不確定的。在某些實施方式中,可以取決於單元電壓落在數字值分布200內的位置來指定不確定性的不同等級(例如,較高的電壓往往具有較大的不確定性,和/或對較為接近灰色區域215的中部的單元電壓來說,不確定性有可能會較高)。在步驟320,如果處理器112確定接收到的數字值並非是不確定的,那麼處理器112會在步驟325中將接收到的數字值存儲在主機輸出緩衝器中。如果處理器112在步驟320中確定接收到的數字值是不確定的,那麼在步驟330中,處理器112可以在一個掩碼錶(masktable)中標記不確定的數字值的位置,然後執行步驟325。在某些實施方式中,還可以存儲一個或多個備選值,以便隨後用於解析哪些值(例如不確定的值或備選值之一)是正確的。在處理器112存儲了接收到的數字值之後,在步驟335,處理器112將會確定是否還要讀取更多單元。例如,處理器112可以檢查是否達到存儲頁面末端。如果還要讀取更多單元,那麼該處理返回到步驟310。如果沒有要讀取的單元,那麼處理300結束。在某些實施方式中,該處理還會在維護日誌中記錄與存儲單元頁面或塊相關聯的不確定數據值的數量。在其他實施方式中,如果不確定的數據值的數量超過預定閾值,那麼該處理將會記錄存儲單元頁面和/或塊的物理和/或邏輯位置。圖4顯示的是對使用從MLC快閃記憶體存儲器中讀取數據頁面處理400的實例進行描述的流程圖,其中該MLC快閃記憶體存儲器可以是諸如NAND快閃記憶體存儲顆粒103,並且所述讀取使用一個校正函數來調整單元電壓與數字值的映射關係。舉例來說,處理400可以由處理器112執行。該處理400是在步驟405中開始的,其中該處理器112確定是否接收到讀取命令。例如,FDC106可以通過主機接口109接收來自主機設備的讀取命令。在步驟405,如果處理器112確定沒有接收到讀取命令,則重複執行步驟405。如果處理器112在步驟405中確定接收到讀取命令,那麼在步驟410中,處理器112將會#4居溫度、存儲頁面中的讀寫次數、電源電壓和/或NAND快閃記憶體存儲顆粒103的其他工作條件來更新校正函數。在某些實施方式中,在將單元電壓轉換成數字值之前,ADC142或模擬接口136可以使用校正函數來調整在模擬前端139測得的單元電壓。在其他實施方式中,處理器112可以使用校正函數來調整映射函數中的閾值,由此ADC142可以將模擬電壓轉換成經過調整的數字值。對不同的單元來說,該校正函數可以是不同的。例如,對檢測到的電壓很高的存儲單元來說,該單元可以因為校正函數而具有較大的調整。接下來,處理器112可以在步驟415中選擇基準單元。例如,處理器112可以選擇基準單元130a、130b或130c之一。然後,在步驟420中,處理器112讀取存儲在選定基準單元中的基準電壓。在步驟425,處理器112根據基準電壓來更新校正函數。舉個例子,如果基準電壓表現為暫降了10%,那麼處理器112可以通過調整校正函數來補償數據中的暫降電壓。在某些實施方式中,校正功能將會以非線性方式來調整檢測到的電壓電平。與較低的檢測到的電壓電平相比,該校正函數可以對較高的檢測到的電壓電平進行更多的調整。校正函數可以以不同的調整量或是不同的調整百分比來調整檢測到的處於不31同電壓電平的電壓。在某些實施方式中,在操作過程中可以動態實時(onthefly)調整閾值。在某些實施方式中,處理器112可以存儲固定數量的先前讀取的基準電壓的採樣,例如一百個採樣,並且該處理器112可以使用已存儲的基準電壓的移動平均來更新校正函數。此外,該校正函數還可以根據其他函數來更新,這其中可以包括例如均值、中數、眾數或加權平均。舉個例子,在這裡可以使用經過加權的移動平均。然後,在步驟430,處理器112確定是否選擇另一個基準單元。舉個例子,處理器112可以確定是否有足夠信息來調整校正函數。另舉一例,處理器112可以被配置成根據讀取命令來讀取某些存儲塊以及某些存儲頁面中的所有基準單元。在步驟430,如果處理器112確定還有要讀取的其它基準單元,那麼處理400將會返回到步驟415。在某些實施方式中,通過讀取基準單元中的電壓來調整校正函數的處理是通過檢測從存儲單元組檢索的數據中的差錯來觸發的。在其他實施方式中,檢測到的差錯將會導致用於確定與檢測到的電壓相關聯的數據值的閾值發生偏移。在某些實施方式中,這些閾值可以自動向下偏移,但是在其他實施方式中,這些閾值是根據一個或多個基準單元中的電壓而被調整的。該差錯可以使用與該組存儲單元相關聯的ECC127來檢測。在步驟430中,如果處理器112確定沒有要讀取的其他基準單元,那麼在步驟435,處理器112將會根據讀取命令來選擇所要讀取的頁面。然後,在步驟440,處理器112從快閃記憶體存儲器中讀取所選擇的數據頁面,其中舉例來說,所述讀取是使用處理300(圖3B)來進行的。在步驟445,處理器112使用校正函數來校正頁面數據。例如,處理器112可以設置模擬接口136中的某些參數,以便調整映射函數。另舉一例,處理器112可以使用校正函數來調整從ADC142輸出的數字表示。接下來,在步驟450,處理器112可以執行差錯檢查操作,以便檢查在頁面中是否存在差錯。在某些實施方式中,差錯檢查操作可以通過使用硬體差錯檢測電路而在ECC引擎148中完成。在其他實施方式中,差錯檢查操作可以在軟體中完成,其中處理器112可以執行存儲在NVM154中的差錯檢測代碼,以便檢查頁面中的差錯。在差錯檢查操作之後,在步驟455,處理器112可以確定是否檢測到差錯。如果沒有檢測到差錯,那麼在步驟460,處理器112可以將所讀取的數據傳送到主機設備。然後,處理器112可以在步驟465中確定是否還有要讀取的其它頁面。如果還有要讀取的頁面,則重複執行步驟435。否則,處理400結束。如果在步驟455中檢測到一個或多個差錯,那麼在步驟470,處理器112可以執行差錯校正操作,其中該操作的一個實例是參考圖5來描述的。然後,在步驟475,處理器112可以確定差錯校正操作是否成功。如果差錯校正操作成功,則重複執行步驟460。如果差錯校正操作沒有成功,那麼處理器112可以在步驟480中將差錯信息(例如差錯日誌)存入NVM154,並且該處理可以在步驟465處繼續。該差錯信息還可以存儲在維護日誌中。所存儲的差錯信息可以用於塊管理操作,其實例是參考圖8A來描述的。在某些實施方式中,處理器112會在NVM154的維護日誌中記錄存儲單元頁面或塊中的基準單元之間的暫降變化。在其他實施方式中,如果基準單元中的暫降程度滿足預定條件,那麼處理器112隻在維護日誌中記錄存儲單元頁面和/或塊的物理和/或邏輯位置。舉個例子,如果基準單元中的暫降超出10%,或者如果不同基準單元中的暫降程度之間的差值超出10%,則可以通過在維護操作過程中將附加電荷施加於存儲單元或是通過完全重寫頁面來刷新存儲單元頁面和/或塊中存儲的數據。關於維護操作的實例是參考圖9來描述的。圖5顯示的是描述了處理實例500的流程圖,其中該處理通過執行差錯校正操作來校正包含比特差錯的數據頁面。舉例來說,該處理500是在處理器112在從快閃記憶體存儲器讀取的數據頁面中檢測到比特差錯的時候開始的,並且在步驟505,該處理器會向ECC引擎148發送一個命令,以便通過執行硬體ECC算法來校正比特差錯。在某些實施方式中,ECC引擎148和ADC142和/或模擬接口136可以通過協33作來校正比特差錯。接下來,在步驟510,ECC引擎148可以檢查硬體ECC算法是否成功。如果硬體ECC算法能夠校正數據頁面中的所有差錯,那麼硬體ECC算法成功。然後,在步驟515,ECC引擎148存儲ECC結果,例如將其存入SDRAM151。接下來,在步驟518,ECC引擎148產生一個用於指示"差錯校正成功"的消息,並且該處理500結束。如果存在的差錯比特數量超出了硬體ECC算法所能校正的差錯比特數量,那麼ECC引擎148會向模擬接口136發送一個消息,以便在步驟520中重新從快閃記憶體存儲器中讀取數據頁面。接下來,在步驟525,ECC引擎148再次執行硬體ECC算法。在步驟530,ECC引擎148檢查硬體ECC算法是否成功。如果硬體ECC算法可以校正,那麼石更件ECC算法成功,並且該處理繼續執行步驟515。在步驟530,如果ECC引擎148確定存在的差錯比特數量超出硬體ECC算法可以校正的差錯比特數量,那麼ECC引擎148執行備選值命令,以便校正比特差錯。關於備選值命令的例示實施方式是參考圖6A6C來描述的。然後,ECC引擎148可以在步驟535中檢查備選值命令是否校正了比特差錯。如果ECC引擎148確定比特差錯已被校正,那麼處理繼續執行步驟515。如果ECC引擎148確定比特差錯未被校正,那麼ECC引擎148可以在步驟540中執行擴展軟體ECC算法,以便恢復數據頁面。例如,擴展軟體ECC算法可以包括使用更多ECC比特的更深的ECC算法。舉個例子,硬體ECC算法有可能需要四個ECC比特,並且擴展軟體ECC算法可以使用128個ECC比特。然後,ECC引擎148可以在步驟550中檢查擴展軟體ECC算法是否成功。如果ECC引擎148確定擴展軟體ECC算法成功,那麼該處理繼續執行步驟515。如果在步驟550,擴展軟體ECC算法沒有成功,那麼在步驟555,ECC引擎148將會產生一個消息"差錯校正失敗",並且處理500結束。圖6A顯示的是對產生和使用備選數據值的處理實例600進行描述的流程圖。處理器112、ECC引擎148、快閃記憶體接口115或上述和其他部件的其他組合可以執行處理600中的操作。在步驟605,處理器112從掩碼錶中檢索信息,以便識別數據頁面中的不確定的數字數據值(相關實例參見圖3B的步驟330),並且在某些情況下,該處理器還會檢索與不確定程度相關的信息。然後,在步驟610,處理器112可以根據參數(例如溫度、從數據頁面讀取的次數、向數據頁面寫入的次數、單元解析度寄存器166中的信息、電源電壓、電荷泵電壓、數據頁面中的基準電壓等等)來檢索校正數據。舉個例子,處理器112可以通過計算一個校正函數來確定數據頁面的校正數據。作為補充或替換,在步驟615中,處理器112可以使用校正數據來為每一個不確定的數據值確定備選數字值。每一個不確定數據值的備選數字值通常包括最接近的相鄰數字值以及次接近的相鄰數字值。此外,它還可以包括與所檢測到的存儲單元的模擬電壓的數字表示相隔兩個數字數據值的數字數據值。通常,並不是每一個存儲單元都具有不確定的數據值。在步驟620,處理器112會在緩衝器中存儲所識別的備選數字值,以及為具有確定數字數據值的存儲單元存儲的數字數據值。在存儲了備選數字值之後,在步驟625,處理器112從緩衝器中選擇備選數字值的組合。對備選數字值組合來說,其自身可以根據某種算法來選擇,其中舉例來說,所述算法嘗試識別那些正確的可能性較大的備選數字值。這個選擇算法可以使用涉及與每一個數字數據值相關聯的不確定程度的數據。此外,無論是否使用此類選擇算法,所選擇的備選數字值組合都不必包含所有可能的備選數字值。換句話說,即使在被識別為不確定的數據值中,某些初始數據值也是可以與某些備選數據值子集一起使用的。接下來,在步驟630中,處理器112使用所選擇的備選數字值組合以及結合用足夠確定性確定的數字數據值將頁面數據存入緩衝器。然後,在步驟635,處理器112對所存儲的頁面數據執行ECC算法。例如,處理器112可以執行處理500中描述的操作。在某些情況下,通過執行ECC算法,有可能會改變一個或多個備選數字值,甚至有35可能改變用某些確定性假設來確定的一個或多個數字數據值。在步驟640,處理器112將會確定ECC算法是否成功。如果處理器112確定ECC算法成功,那麼在步驟645,處理器112將會存儲具有成功的ECC結果的頁面數據,並且處理600結束。在步驟640,如果處理器112確定ECC算法沒有成功,那麼在步驟650,處理器112將會確定是否可以嘗試另一個備選值組合。可能的備選值組合的數量取決於具有不確定數字數據值的存儲單元的數量以及所識別的備選數字值的數量。通常,大多數存儲單元不具有不確定的數字數據值。如果處理器112確定可以嘗試使用另一個備選值組合,那麼該處理將會返回到步驟625。在步驟650,如果處理器112確定已經嘗試了所有備選組合,那麼處理器112會在步驟655中產生一個差錯消息,並且處理600結束。在某些實施方式中,其中還可以產生附加備選值和/或調整用於讀取各個數據值的電壓閾值,以及重新嘗試通過執行ECC算法來識別頁面數據的校正值。例如,在這裡可以為先前被確定成以足夠確定性代表了某個值但卻相對接近於數字值分布曲線205210之一(如在上文中右A圖i▲!^":i'、Mi'3乂A—由/X士亞z在々夂血乂古AA扶4在夂入朵A字值分布曲線205210的電壓閾值可以採用如上所述的方式來調整,並且可以重新產生數據值,這其中包括識別新的備選值。在某些實施方式中,步驟655中的差錯消息被記錄在NVM154的維護日誌中。然後,在如圖9所示的維護操作過程中,還可以產生附加備選值和/或調整用於讀取各個數據值的電壓閾值,以及重新嘗試通過執行ECC算法來識別頁面數據的校正值。然後,所識別的校正值可以用於重寫數據。圖6B顯示的是對產生和使用備選值的另一個處理660的實例進行描述的流程圖。處理660具有一些與處理600—樣的步驟。在本實例中,在步驟605,在通過使用掩碼錶或以其他方式識別了不確定的數據值之後,在步驟665,處理器112將會使用最接近的相鄰數字值來為每一個不確定值確定一個備選值。例如,處理器112可以使用數字值分布200(圖2A)以及選擇次接近的相鄰數字值,以此來取代與單元電壓最接近的相鄰數字值。然後,處理器112通過執行以步驟620為開始並且結合圖6A描述的操作來繼續實施處理660。圖6C顯示的是對產生和使用備選值的另一個處理實例670進行描述的流程圖。在本實例中,處理器112沒有必要從掩碼錶中檢索不確定的數字值信息。在步驟672中,該處理670是在處理器112接收到對選定頁面執行備選值識別和分析的命令的時候開始的(相關實例參見圖5的步驟535)。在步驟674,處理器112啟動選定頁面的讀取。在步驟676,處理器112通過選擇頁面中的某個單元來讀取單元電壓。在步驟678,處理器112確定單元電壓是否是不確定的。例如,處理器112可以使用圖2A所示的數字值分布200來確定接收到的單元電壓是否處於某一個灰色區域220。如果處理器112確定單元電壓處於灰色區域,那麼處理器112會在步驟680中使用第二最接近的數字數據值來確定該單元的數字數據值。在其他實施方式中,處理器112將會使用第一最接近的數字數據值來確定該單元的數字數據值。接下來,在步驟682,處理器112會將數字數據值存儲在緩衝器中。在步驟678,如杲處理器112確定單元電壓不在灰色區域內,那麼在步驟684,處理器112將會根據已存儲的閾值來確定該單元的數字數據值,並且處理器112將會執行步驟682。在步驟682之後,在步驟686中,處理器112將會確定是否讀取頁面中的另一個單元。如果處理器112確定讀取另一個單元,那麼該處理返回到步驟676。如果處理器112確定沒有更多單元需要讀取,那麼處理670結束。圖7A顯示的是對4吏用基準單元130a、130b、130c而將數據寫入快閃記憶體存儲頁面121的處理700的實例進行描述的流程圖。處理700通常可以由處理器112來執行。處理700在步驟705開始,其中處理器112接收到一個寫入命令。例如,寫入命令可以包括寫入指令、所要寫入的數據、以及將被寫入數據的存儲地址,其中舉例來說,所述地址可以是作為邏輯塊地址而從主機接收的。然後,根據寫入命令,處理器112會在步驟710中選擇快閃記憶體存儲器中的存儲頁面。接下來,在步驟715,處理器112可以將所要寫入的數據拷貝到SDRAM151之類的緩衝器中。該數據可以是從外部主機設備或是別的存儲頁面傳送的。在某些實施方式中,存儲在選定存儲頁面上的數據被拷貝到緩衝器中,以便再拷貝回到選定頁面中。在其他實施方式中,要寫入選定存儲頁面的數據不會被拷貝到緩沖器中,而是直接從數據源(從外部主機設備或是從其他存儲單元)寫入到選定的存儲頁面。然後,在步驟725,處理器112將會擦除選定頁面中存儲的任何數據。在步驟730,處理器112將數據從緩衝器寫入到選定的存儲頁面中,其中舉例來說,所述寫入是通過將電荷施加於數據單元124和基準單元130c來實施的。步驟730將根據期望數據值以及每一個單元的相應模擬電壓電平來向存儲單元施加不同的電荷量。在某些實施方式中,其中可以使用電荷泵來向選定存儲頁面中的存儲單元施加電荷。然後,在步驟735,處理器讀取選定頁面中的基準單元130c的基準電壓。該基準電壓是通過檢測基準單元130c中的電壓電平而被讀取的。在步驟740,處理器112檢查基準電壓是否小於目標電壓。如果處理器112確定基準電壓小於目標電壓,那麼該處理返回到步驟730,以便施加附加電荷,以及提高存儲在選定存儲頁面的單元中的電壓。所施加的附加電荷量可以根據期望電壓電平在百分比上與一個或多個基準單元電壓的比較來擴縮(舉個例子,如果檢測到的基準電壓比目標低10%,並且特定存儲單元應該具有雙倍於基準單元的電壓電平,那麼施加於特定存儲單元的附加電荷量可以是施加於基準單元的二倍)。在步驟740,如果處理器112確定基準電壓不小於目標電壓,那麼在步驟745,處理器112將會選擇一個數據單元,並且在步驟750中讀取所選擇的數據單元的電壓。然後,在步驟755中,處理器112確定所讀取的電壓是否過高。例如,處理器112可以將所讀取的單元電壓與數字值分布相比較,並且檢查單元電壓是否處於目標數字值的38電壓範圍內。如果處理器112確定該電壓並未過高,那麼在步驟760,處理器確定是否選擇另一個數據單元。如果處理器112確定沒有必要選捧另一個數據單元,那麼處理700結束。否則,處理700將會返回到步驟745,以便測試附加數據單元。在某些實施方式中,其中還可以測試在步驟745中選擇的數據單元,以便確定它們是否過低。如果是的話,那麼處理700可以返回到步驟730,以便將附加電荷施加於一個或多個數據單元。在某些實施方式中,一旦完成了步驟740中關於一個或多個基準單元的測試,那麼在步驟745(或是步驟745的迭代重複)中將可以選擇所有數據單元的電壓電平,以便確定這些電平是否過高和/或過低。這樣一來,基準單元可以用於執行頁面或塊的初始充電處理,其後跟隨的是對單元中的電壓電平進4亍測試,並且可以補償配置(tweaking)該電壓電平。此外,在某些實施方式中,在步驟740使用的基準單元的目標電壓可以被設置成略低於期望數據值的閾值電壓,以便嘗試避免過度充電,並且其後跟隨的是檢查實際數據單元值以及將電壓電平補償配置成達到與實際數據單元的期望數據值相對應的電壓電平。在步驟755,如果處理器112確定電壓過高,那麼處理器112將會確定是否有必要重寫選定頁面。例如,處理器112可以將比特差錯數量與一個閾值相比較,其中該閾值小於或等於可以使用參考圖5描述的校正算法之一來校正的差錯數量。如果比特差錯數量大於該閾值,則重寫選定的頁面。否則,處理器112可以確定不需要重寫選定頁面。在步驟765中,如果處理器112確定不需要重寫頁面,那麼處理700將會繼續執行步驟760。如果處理器112在步驟765中確定需要重寫頁面,那麼處理700將會返回到步驟725,以便重新啟動存儲頁面的寫入處理。在某些實施方式中,在步驟765之後可以逐步降低目標電壓,以便減小過調目標電壓的可能性。圖7B顯示的是對在主機i殳備與MCP100之間實現更高數據傳送速率的處理770的實例進行描述的流程圖。在步驟772中,當處理器112接收到來自主機設備的寫入命令時,該處理770開始執行。例39如,來自主機設備的寫入命令可以包括寫入指令,所要寫入的數據,以及要寫入數據的存儲地址,其中舉例來說,所述地址可以作為邏輯塊地址而從主機那裡進行接收。接下來,處理器112確定是否執行快速寫入處理(例如以單等級單元解析度或其他相對較低的解析度來寫入)或是以更高解析度來使用時間更長、功率更大且處理器更為密集的寫入處理。在步驟774,處理器112確定是否存在來自主機接口並且要求執行快速寫入的命令。在某些實施方式中,主機設備還可以規定快速寫入的解析度。如果主機設備未規定快速寫入,那麼處理器112可以獨立確定是否保證了快速寫入。然後,步驟776將會確定MCP100或者與MCP100相連的主機設備是否滿足預定電源條件。在所顯示的實施方式中,步驟776確定是否為主機設備供應AC電源。在其他實施方式中,步驟776改為確定是否將一個為主機設備供電的電池充電至預定電荷。在某些實施方式中,步驟776將會確定是否將一個為主機設備供電的電池充電至最大容量或是至少90%的容量。然後,步驟778確定處理器112是否具有滿足預定帶寬條件的過剩帶寬。在某些實施方式中,不同的是,如果處理器112空閒,則滿足步驟778。在其他實施方式中,如果未使用預定百分比的處理器112的帶寬,則滿足步驟778。如果同時滿足步驟776和778,那麼在步驟780,處理將會使用處理700而以高解析度寫入存儲單元。如果不滿足條件776和778之一或是這二者,那麼該處理將會執行快速寫入過程。在快速寫入過程中,在步驟782處理器112從主機設備中選擇一個或多個可用存儲單元頁面,以便將數據寫入其中。在某些實施方式中,處理器可以將數據從主機設備拷貝到SDRAM151之類的緩衝器。在其他實施方式中,來自主機設備的數據並沒有被拷貝到緩衝器中,而是在步驟725和784之後在步驟786中被直接寫入到選定的存儲頁面。在步驟725,處理器擦除存儲在一個或多個選定頁面中的任何數據。在步驟774,處理器112將與選定的一個或多個存儲頁面相關聯的任何單元解析度寄存器更新為低解析度。在某些實施方式中,低解析度將會是每存儲單元1比特的解析度。在其他實施方式中,低解析度是每單元2、3或4比特。由於在為每一個存儲單元充電的時候需要較低精度,因此,在將數據從主機設備拷貝到MCP100的時候,以較低解析度寫入將會提高數據傳輸速率,由此,在寫入存儲單元時需要的電壓調整的關注度和總量可以減小。在以低解析度將數據寫入一個或多個存儲單元之後,步驟784將會記錄一個維護日誌條目來指示在維護處理過程(處理卯0)中應該以較高解析度來重新寫入存儲在選定存儲頁面中的數據。圖8A顯示的是對調整存儲頁面的單元解析度的處理800的實例進行描述的流程圖。舉例來說,當處理器112通過執行維護程序來更新單元解析度寄存器166時,該處理800可以執行處理800中的操作。在步驟805,處理800是在處理器112在步驟805中讀取所存儲的差錯信息的時候開始的。該差錯信息可以在讀取出錯或寫入出錯的過程中被存儲,例如以圖4步驟480描述的方式被存儲。接下來,在步驟810中,處理器112將會選擇一個頁面。在步驟815,處理器112確定選定頁面的差錯計數是否大於閾值。如果選定頁面的差錯計數不大於該閾值,那麼處理器112在步驟820中檢查是否還有更多頁面需要檢查。如果處理器112確定沒有更多頁面需要檢查,那麼處理800結束。在步驟820,如果處理器112確定還有更多頁面需要檢查,那麼該處理將會返回到步驟810。在某些實施方式中,處理器112可以檢查帶有差錯的所有存儲頁面。在其他實施方式中,處理器112可以只檢查帶有在差錯信息中記錄的新差錯的存儲頁面。在步驟815,如果選定頁面的差錯計數大於閣值,那麼在步驟825,處理器112會將數據頁面從選定頁面拷貝到緩衝器中。接下來,處理器112將會更新單元解析度寄存器166,以便降低選定頁面的單元解析度。例如,快閃記憶體接口115可以檢查單元解析度寄存器166,以便發現單元解析度減小,然後,快閃記憶體接口115可以使用新的減小的單元解析度來讀取和寫入選定頁面。然後,在步驟835中,處理器112可以為所拷貝的數據指定物理41地址。取決於可用存儲頁面,處理器112可以指定一個、兩個、四個或其他數量的物理存儲頁面,以便存儲所拷貝的數據。接下來,處理器112在步驟840中更新邏輯地址表,以便與所指定的物理地址相對應。該邏輯地址表可以用於將邏輯頁面映射到一個或多個物理頁面。邏輯地址表在存儲器存取操作過程中的例示使用是參考圖10來描述的。在步驟845中,處理器112將所拷貝的數據從緩衝器移動到處於指定物理地址的頁面。接下來,在步驟820中,處理器112確定是否還有更多頁面需要檢查。如果是的話,那麼處理800返回到步驟810。否則,處理800結束。圖8B描述的是與圖8A中的處理相類似的處理,其中該處理關注的是一組降級的存儲單元頁面或塊,以及在邏輯上將該組視為具有初始解析度的存儲單元的單個頁面或塊。在圖8B中,處理860還會讀取已存儲的差錯信息805,選擇頁面810,並且確定與頁面相關聯的差錯計數是否超出閾值815。如果與頁面相關聯的差錯計數超出閾值,則將存儲在頁面中的數據拷貝到緩衝器825,並且通過更新與該頁面相關聯的一個或多個單元解析度寄存器來降低頁面的解析度830。但是,在圖8B描述的實施方式中,處理器還會選擇單元解析度降低的另一個數據頁面855,並且將會更新塊管理代碼和/或邏輯尋址代碼,以便將這兩個頁面配對。然後,這兩個單元解析度降低的頁面在邏輯上將被視為具有較高初始解析度的單個頁面。該處理可以將兩個以上的存儲單元頁面集中在一起。在某些實施方式中,該處理將會降級整個存儲單元塊,並對其進行配對或以其他方式來將其關聯。在某些實施方式中,每一個配對頁面都具有相同的下調單元解析度,並且包含了相同數量的存儲單元。例如,從每一個存儲單元存儲8比特數據降級到每一個存儲單元存儲4比特數據的存儲單元頁面將會與每一個存儲單元存儲4比特數據的另一存儲單元頁面一起組成組。然後,這兩個存儲單元頁面的組合在邏輯上被快閃記憶體盤控制器視為在每個存儲單元上存儲8比特數據的單個頁面(或是單個塊)。這些配對的存儲單元頁面沒有必要處於相同的塊,並且有可能處於不同的快閃記憶體存儲顆粒上。接下來,處理860將會執行步驟820中確定是否還有更多存儲頁面需要檢查的處理,並且將會按照圖8A描述的相同方式來進行。圖9是描述了維護處理900的流程圖。對維護處理900來說,它的一個可能的功能是以相對較高的解析度來重寫那些以相對較低的解析度存儲在快閃記憶體存儲器中的數據(相關實例參見圖7B)。舉例來說,該維護處理可以用於最大化主機設備的電池壽命,同時最大化數據存儲容量。在某些實施方式中,維護處理900是由處理器作為按照慣例調度的維護操作的一部分來觸發的。此外,在某些實施方式,維護處理卯O是由來自主機設備並且表明主機設備是用AC電源供電的信號觸發的。在其他實施方式中,其他條件也可以使主機設備或處理器112觸發維護處理900,例如空閒處理器112。處理900是以步驟卯5為開始的,其中該步驟可以確定MCP100是否是在預定電源條件(powercondition)下工作的。在某些實施方式中,這個電源條件是通過主機設備接收AC電源來滿足的。在某些實施方式中,這個電源條件是通過主機設備電池滿足預定電荷總量、例如電池電量完全充滿來滿足的。充滿電的電池可以表明主機設備正在用AC電源供電。如果MCP100沒有滿足預定電源條件,那麼處理900結束。接下來,在步驟910,處理器112可以確定該處理器112是否具有足夠帶寬來完全執行維護處理900。在某些實施方式中,維護操作僅僅是作為需要最小帶寬的後臺進程來運行的。在某些實施方式中,維護操作需要一個空閒處理器112。在其他實施方式中,處理卯0並未確定是否處理器112具有足夠帶寬。在某些實施方式中,帶寬需要將會根據對於維護操作的需要而改變,其中所述需要可以用成功維護處理之間的時間或是快閃記憶體存儲器上的可用空間量來量度。如果處理器112不具有足夠帶寬,那麼處理900結束。如果滿足預定電源條件,並且處理器112具有足夠帶寬,那麼在步驟915,處理900可以讀取已存儲的維護日誌。在某些實施方式中,已存儲的維護日誌被存儲在NVM154中。在某些實施方式中,已存儲的維護日誌指示的是可能的維護操作的優先級。此外,在某些實施方式中,已存儲的維護日誌被用於確定是否可以在簡化操作中執行任何維護步驟(例如步驟920、925、930和935)。例如,維護日誌可以指示降級特定存儲單元頁面並重寫同一存儲單元頁面上的數據的需要。在其他實施方式中,維護操作是一個預定序列,其中舉例來說,該序列包括重寫以較高解析度傳送的數據(步驟920);下調單元解析度以及對頁面組進行配對,其中舉例來說,所述配對可以通過執行處理800和850來實施(步驟925);重寫滿足預定差錯條件的數據(例如使用處理700)(步驟930);使用磨損管理軟體代碼157來交換最頻繁存取的數據與最不頻繁使用的數據(步驟935);為每一個將數據從一個物理位置移動到另一個物理位置的維護操作更新邏輯尋址軟體代碼163(例如使用處理1000)(步驟940);以及通過將附加電荷施加於存儲單元頁面來刷新那些超過閾值量的電壓暫降的數據頁面(步驟945)。同樣可以使用其他那些包含了某些、所有或附加操作的序列。在某些實施方式中,處理900會在每一個維護步驟920、925、930、935或945之間重複執行步驟905和/或步驟910,如果條件905或910中有任何一個改變,那麼該處理可以結束。然後,處理900將會結束。圖10是描述在FDC106中執行邏輯尋址處理1000的實例的流程圖。例如,FDC106可以將接收到的帶有邏輯地址的讀取或寫入命令映射到一個或多個物理頁面。在某些實施方式中,FDC106可以動態地將邏輯頁面映射到一個或多個可變物理頁面。例如,FDC106可以改變映射關係,以便平衡物理存儲頁面的負載。在某些實施方式中,邏輯頁面與物理頁面之間的映射可以存儲在邏輯地址表中。在某些實施方式中,在處理器112執行邏輯尋址代碼163的時候,處理1000可以由處理器112來執行。處理1000是在FDC接收來自主機設備的要求存取(例如讀取、寫入或擦除)存儲頁面的命令的時候開始的。然後,在步驟1005,處理器112接收一個邏輯頁面地址,以便存取快閃記憶體存儲器中的頁面。接下來,在步驟1010中,處理器112確定與接收到的邏輯地址相關聯的一個或多個物理頁面地址。在一個實例中,接收到的邏輯頁面地址可以只與一個物理頁面地址相關聯。在另一個實例中,接收到的邏輯頁面地址可以與兩個或更多物理頁面相關聯,這是因為物理頁面具有少於正常解析度的單元解析度,或者物理頁面在快閃記憶體存儲器中是不連續的,亦或是它們處於不同塊內或在不同顆粒上。然後,在步驟1015中,處理器112選擇第一個已確定的物理頁面地址。在步驟1020中,處理器112在選定的物理地址上讀取頁面數據。然後,在步驟1025,處理器112將頁面數據存入主機輸出緩衝器。在步驟1030,處理器112確定是否有必要存取另一個存儲頁面。舉個例子,如果有一個以上的物理頁面地址與邏輯頁面地址相關聯,那麼處理器112可以存取另一個存儲頁面。在步驟1030中,如果處理器112確定有必要存取另一個存儲頁面,那麼在步驟1035,處理器將會選擇下一個已確定物理頁面地址,並且該處理將會返回到步驟1020。否則,處理1000將會結束。圖11顯示的是包含了多個NAND快閃記憶體存儲顆粒103和FDC106的例示系統1100。FDC106包括處於^^擬接口115內的復用器(MUX)1105以及電荷泵1110。雖然系統110(M皮顯示成^f吏用了NAND快閃記憶體存儲顆粒103,但是在系統1100中使用的某些技術同樣適用於NOR快閃記憶體存儲顆粒,或是NAND與NOR顆粒的組合。系統1100可以使用分立的IC來實施,或者它也可以部分或者完全集成到單個組件中。FDC106通過才莫擬接口115接收來自NAND快閃記憶體存儲顆粒103的模擬數據。在本實例中,MUX1105接收多個模擬輸入。在某些實施方式中,MUX1105接收來自多個快閃記憶體存儲顆粒103的多個模擬輸入。模擬接口115可以控制MUX1105,以便選擇將要傳送至ADC142的一個模擬輸入。例如,模擬接口115可以根據接收到的讀取命令來控制MUX1105。在寫操作過程中,FDC106使用電荷泵1110來將電荷施加於其中一個NAND快閃記憶體存儲顆粒103的存儲單元。在某些實施方式中,電荷泵1110淨皮適配成向多個快閃記憶體存儲顆粒103上的存儲單元提供電荷。例如,FDC106可以發送一個選擇指定存儲顆粒的控制信號,以便接收來自電荷泵1110的電荷。然後,當電荷泵1110施加電荷時,所選擇的存儲顆粒將會接收電荷。通過在多個顆粒103之間共享ADC1105和電荷泵1110,可以增大存儲顆粒103的存儲大小。此外,快閃記憶體存儲顆粒103可以在沒有ADC142和電荷泵1110的情況下以很低的成本來製造。在某些實施方式中,電荷泵1110可以集成在帶有FDC106的顆粒上,或者單獨安裝在不同顆粒或不同基底上,例如安裝在印刷電路板上。為了便於使用被適配成與多個快閃記憶體存儲顆粒103—起使用的ADC1105和電荷泵1110,某些快閃記憶體存儲顆粒103可以包括淨皮適配成接收來自外部供電節點的編程電荷(programmingcharge)的輸入。由此,快閃記憶體存儲顆粒103不需要包含附加電路來改變或調整所供應的編程電荷。此外,快閃記憶體存儲顆粒103還可以包括被適配成向快閃記憶體盤控制器106發送模擬電壓信號的輸出。在某些實施方式中,FDC106還可以包括一種用於向存儲顆粒103中寫入數據的電荷泵交織方法。圖12顯示了一個例示系統1200,其中該系統描述的是單獨向NAND快閃記憶體存儲顆粒103提供編程和邏輯級功率(logical-levelpower)的架構。系統1200包括電荷泵1110和低信號丟失(dropout)調節器(LDO)1205,其中該調節器接收來自電源1210的功率。如所示,NAND快閃記憶體存儲顆粒103包括兩個功率輸入,即用於電荷泵電壓(Vcp)的功率輸入和用於邏輯電壓(V1gi<:)的功率輸入。在某些實例中,Vcp可以遠遠大於V,。gie。舉個例子,Vep可以是大約12~20V或是大約12-30V,並且V,。gie可以是大約13V。在某些實施方式中,Vcp的調整和當前需要有可能與V,。gic的調整和當前需要有很大區別。例如,NAND快閃記憶體存儲顆粒103有可能需要V^c在低邏輯電壓上具有密集調整(例如0.5。/。,1.0%,5%)的電壓容限,以便將功耗、切換時間等等減至最小。此外,邏輯電壓有可能在低電壓電平上需要46高頻旁路電容。相比之下,電荷泵供電調整需求可以介於約5%與10%之間,並且其需要很低頻率和較高電壓容限。為了向圖12的系統提供便利,快閃記憶體存儲顆粒103可以包括第一接口,用於接收有選擇地對每一個快閃記憶體存儲單元進行編程的功率,以及第二接口,用於接收提供給邏輯級電路的功率,以便選擇在寫操作過程中將要為之供應來自第一輸入的功率的快閃記憶體存儲單元。快閃記憶體盤控制器106可以包括用於以編程電壓來向第一接口供電的第一電源,以及向第二接口供應邏輯級功率的第二電源。所述第一和第二電源可以位於快閃記憶體存儲顆粒103的外部。雖然在這裡描述了各種處理和技術的實施方式,但是其他實施方式也可以按不同的序列執行各步驟或是經過修改的裝置,以便實現相同的主要功能。此外,雖然有時將不同處理中的操作描述成是由特定設備或元件來執行的,但是這些設備或元件僅僅是實例,並且在某些實施方式中,這些操作可以使用備選設備或元件來執行。在某些實例中,NAND快閃記憶體存儲顆粒103還可以具有任何實際比特數量的解析度,例如6、7、10、12比特的解析度。在這裡可以使用各種實施方式來執行結合快閃記憶體存儲器的ECC操作,其中所述快閃記憶體存儲器可以包括NAND快閃記憶體存儲器、NOR快閃記憶體存儲器、或是這些或其他非易失性存儲器的組合。在MCP100中可以按彼此相鄰的方式來堆疊和/或安裝一種或多種快閃記憶體存儲顆粒。本領域普通技術人員將會了解,這裡描述的某些技術實例還可以很有利地適用於NAND快閃記憶體技術,並且這裡描述的某些方法通常還可以應用於NAND和/或NOR快閃記憶體之類的非易失性存儲器。在這裡參考上圖描述了可以是^l攜式的系統實例,但是其他實施方式也可以部署在臺式機和聯網安裝之類的其他處理應用中。雖然在這裡描述了特定的架構特徵,但是也可以引入其他特徵,以便改進性能。例如,在FDC106中可以使用高速緩存(例如L1、L2.......)技術。此外,舉例來說,通過包含隨機存取存儲器,可以提供便箋式存儲器和/或加栽存儲在快閃記憶體存儲器中的可執行代碼或參47數信息,以便在運行時操作中使用。此外,通過提供其他硬體和軟體,還可以執行如下操作,例如使用了一種或多種協議的網絡或其他通信、無線(例如紅外)通信、已存儲工作能量和電源供應(例如電池)、切換和/或線性供電電路,軟體維護(例如自檢測、升級等等)等等。在支持數據存儲和相關操作的過程中,其中還可以提供一個或多個通信接口。在某些實施方式中,可以使用一種方法或是方法組合來提高數據完整性。例如,通過將閾值和/或重寫單元調整至少一次,可以尋址單元電壓差錯。單元重寫可以響應於與理想單元電壓的偏差和/或作為後臺活動來執行。舉個例子,通過重寫多級單元電壓,可以刷新頁面中的一個或多個有損單元的電壓。對於那些被表徵為傾向於隨著時間的流逝而會喪失電壓的單元來說,這些單元所要充電的電壓電平可以被升壓,以便接近於每一個單元範圍的上限,由此補償這些單元中隨著時間的流逝所導致的預期電荷損失。所升壓的電壓電平在初始時可以位於預定範圍的上限的附近或是其上,其中所述上限可以位於範圍之間的灰色區域。根據所估計或確定的損失速率,在這裡可以足夠頻繁地重寫數據,以便將單元電壓基本保持在期望範圍以內。相似的補償可以用於補償那些^皮表徵成具有上漂移的單元。作為例示,這些重寫過程可以作為低優先級的後臺進程來執行,其中所述後臺進程是在資源可用的時候執行的。對於那些被識別為高值數據的數據來說,在這裡可以將重寫處理調度成足夠頻繁地發生,以便將單元電壓保持在期望範圍以內,其中該頻率是以預期電壓漂移速率以及與每一個比特電平相關聯的電壓範圍大小為基礎的。在某些實施方式中,當便攜設備與外部電源耦合、例如在其與源自電力網的電源相耦合的時候,重寫處理可以被配置成更頻繁地執行。重寫操作也可以響應於與此類電源的耦合而被執行。此外,重寫處理還可以被配置成在某些情況下不那麼頻繁地執行,例如在節電模式、在低電池條件下、或者在存儲持續時間短或是不重要的數據(例如流式音頻/視頻)的時候。某些系統可以作為一個能與本發明的實施方式結合使用的計算施方式可以包括數字和/或才莫擬電路、計算機硬體、固件、軟體或是其組合。裝置可以在有形地具體化為信息栽體、例如在具體化為機器可讀存儲設備或傳播信號的電腦程式產品中實施,其中舉例來說,該產品是由可編程處理器來執行的;此外,這裡的方法可以由可編程處理器來執行,其中該處理器作用於輸入數據並且產生輸出,以便通過執行指令程序來實施本發明的功能。非常有利的是,本發明可以在一個或多個電腦程式中運行,其中該程序可以在包含在至少一個可編程處理器的可編程系統上執行,並且該處理器被耦合成從數據存儲系統、至少一個輸入設備和/或至少一個輸出設備接收數據和指令,並且向其傳送數據和指令。電腦程式是一組指令,該指令可以直接或間接地在計算機中使用,以便執行某些活動或是產生某個結果。電腦程式可以用任何形式的程式語言編寫,包括編譯或解釋語言,並且它可以用任何形式來部署,包括獨立程序或模塊、組件、子例程或是適合在計算環境中使用的其他單元。例如,用於執行指令程序的適當處理器包括通用和專用微處理器,這些處理器可以包括單個處理器或是任何類型的計算機的多個處理器之一。通常,處理器接收來自只讀存儲器、隨機存取存儲器或是這二者的指令和數據。計算機的基本部件是用於執行指令的處理器,以及用於存儲指令和數據的一個或多個存儲器。一般來說,計算機還包括或者以可操作方式耦合成與用於存儲數據文件的一個或多個大容量存儲設備進行通信;此類設備包括磁碟,例如內部硬碟和可移除盤;磁光碟;以及光碟。適合有形地具體化電腦程式指令和數據的存儲設備包括所有形式的非易失性存儲器,其中舉例來說,該存儲器可以是半導體存儲設備,例如EPROM、EEPROM和快閃記憶體存儲i殳備;/磁碟,例如內部硬碟和可移除盤;石茲光碟,以及CD-ROM和DVD-ROM盤。處理器和存儲器可以由ASIC(專用集成電路)補充或是集成在其內。在某些實施方式中,每一個系統100都可以用相同或相似信息編程,和/或使用存儲在易失性和/或非易失性存儲器中的基本相同的信49息來初始化。例如,在與恰當主機設備、例如與臺式計算機或伺服器相耦合時,一個數據接口可以被配置成執行自動配置、自動下載和/或自動更新功能。在某些實施方式中,一個或多個用戶界面特徵可以被定製配置成執行具體功能。本發明可以在包含圖形用戶界面和/或網際網路瀏覽器的計算機系統中實施。為了提供與用戶的交互,某些實施方式可以在這樣一種計算機上實施,其中該種計算機具有向用戶顯示信息的CRT(陰極射線管)或LCD(液晶顯示器)監視器之類的顯示設備、鍵盤、以及可供用戶向計算機提供輸入的滑鼠或軌跡球之類的指示設備。在各個實施方式中,系統100可以使用適當的通信方法、儀器和技術來進行通信。舉個例子,系統100可以使用點對點通信來與兼容設備(例如能夠傳送往來於系統100的數據的設備),其中在點對點通信中,數據是直接從信源經由專用物理鏈路(例如光纖鏈路、點對點布線、菊花鏈(daisychain))而^L傳送到接收機。該系統的組件可以通過模擬或者數字數據通信的任何形式或者介質來交換信息,包括通信網絡上基於分組的消息。通信網絡的實例包括LAN(區域網)、WAN(廣域網)、MAN(城域網)、無線和/或光學網絡,以及形成網際網路的計算機和網絡。其他實施方式可以通過將消息廣播至所有設備或者基本上廣播給通過通信網絡耦合在一起的所有設備來運送數據,例如,可以使用全向射頻(RF)信號來廣播。其他實施方式可以傳送表徵為具有高方向性的消息,例如使用定向(也就是窄波束)天線或紅外信號傳送的RF信號,其中作為選擇,該信號可以與聚焦光學器件結合使用。此外,其他那些使用恰當接口和協議的實施方式也是可以實現的,例如,該接口包括但不限於USB2.0、火線、ATA/IDE、RS-232、RS-422、RS485、802.11a/b/g、Wi-Fi、乙太網、IrDA,FDDI(光纖分布式數據接口)、令牌環網、或是基於頻分、時分或碼分的復用技術。作為選擇,某些實施方式可以引入如下特徵,例如用於數據完整性的差錯檢查和校正(ECC),或是諸如加密(例如WEP)和密碼保護之類的安全量度。在這裡描述了本發明的眾多實施方式。但是應該理解,在不脫離本發明的精神和範圍的情況下,各種修改都是可行的。例如,如果所公開技術的步驟是以不同的序列執行的,如果所公開系統中的元件是以不同方式組合的,或者如果使用了其他元件來替換或補充這些元件,那麼也將會實現有利的結果。這些功能和處理(包括算法)可以在硬體、軟體或軟硬體組合中實施,並且某些實施方式可以在與這裡描述的模塊或硬體不相等同的模塊或硬體上執行。權利要求1.一種管理多級快閃記憶體存儲設備的方法,所述快閃記憶體存儲設備包括多個存儲單元,所述方法包括檢測來自第一存儲單元的電壓電平,所述第一存儲單元存儲達到代表數據值的電壓電平的電荷;確定電壓電平所代表的數據值,其中所述數據值是至少部分基於與第一存儲單元相對應的解析度寄存器條目來確定的;將電荷施加於所述多個存儲單元中的至少一個,以便達到代表數據值的目標電壓,其中所述目標電壓是至少部分基於與所述多個存儲單元中的至少一個相對應的解析度寄存器條目來確定的。2.根據權利要求1所述的方法,其中所述多個存儲單元中的至少一個是第一存儲單元,並且將電荷施加於第一存儲單元的操作包括將附加電荷施加於第一存儲單元,以便調整第一存儲單元中的電壓暫降。3.根據權利要求2所述的方法,還包括通過檢測基準單元中存儲的基準電壓電平來確定笫一存儲單元中的暫降量。4.根據權利要求3所述的方法,其中基準單元與相應的預定電壓電平相關聯,並且所述暫降量是通過將預定電壓電平與存儲在基準單元中的檢測到的電壓電平相比較來確定的。5.根據權利要求3所述的方法,其中所述暫降量是通過檢測在多個基準單元中存儲的電壓電平來確定的。6.根據權利要求2所述的方法,其中施加給第一存儲單元的附加電荷量是基於校正函數確定的。7.根據權利要求1所述的方法,還包括從主機設備接收啟動維護操作的信號,其中響應於接收到的信號,執行將電荷施加給所述多個存儲單元中的至少一個存儲單元來達到代表數據值的目標電壓。8.根據權利要求7所述的方法,其中來自主機設備的信號指示的是電源條件。9.根據權利要求8所述的方法,其中來自主機設備的信號指示的是主機設備是否是用交流電源供電。10.根據權利要求8所述的方法,其中來自主機設備的信號指示的是主機設備的電池是否充電至預定電荷等級。11.根據權利要求7所述的方法,其中來自主機設備的信號指示的是所調度的維護操作。12.根據權利要求1所述的方法,還包括接收從快閃記憶體存儲器處理器接收啟動維護操作的信號,其中響應於接收到的信號,執行將電荷施加給所述多個存儲單元中的至少一個來達到代表數據值的目標電壓。13.根據權利要求12所述的方法,其中來自快閃記憶體存儲器處理器的信號指示該快閃記憶體存儲器處理器具有足夠帶寬來執行維護操作。14.根據權利要求13所述的方法,其中來自快閃記憶體存儲器處理器的信號指示的是該快閃記憶體存儲器處理器空閒。15.根據權利要求1所述的方法,其中與第一存儲單元相對應的解析度寄存器條目指示的是第一解析度,所述第一解析度對應於第一可能數據值數量;該方法還包括接收一個以第二解析度寫入的信號,所述第二解析度對應於第二可能數據值數量;以及更新與所述多個存儲單元中的至少一個相對應的解析度寄存器條目,以便指示第二解析度,其中目標電壓基於第二解析度。16.根據權利要求15所述的方法,其中第一可能數據值數量大於第二可能數據值數量,並且其中所述多個存儲單元中的至少一個包括從所述多個存儲單元中選出的多於一個的存儲單元。17.根據權利要求15所述的方法,其中第一可能數據值數量等於第二可能數據值數量,並且其中所述多個存儲單元中的至少一個包括與第一存儲單元不同的存儲單元。18.根據權利要求15所述的方法,其中第二可能數據值數量超過第一可能數據值數量。19.根據權利要求18所述的方法,其中第一可能數據值數量不超過4比特。20.根據權利要求19所述的方法,其中第一可能數據值數量是2比特。21.根據權利要求19所述的方法,其中第一可能數據值數量是1比特。22.根據權利要求18所述的方法,其中第二可能數據值數量至少是4比特。23.根據權利要求18所述的方法,其中第二可能數據值數量至少是8比特。24.根據權利要求18所述的方法,其中以第一解析度存儲在第一存儲單元中的數據值是寫入操作的結果,在該操作中,從主機設備接收的數據被寫入到快閃記憶體存儲設備中。25.根據權利要求1所述的方法,還包括接收來自主機設備的信號,以便將從主機設備接收的數據寫入快閃記憶體存儲設備;以第一解析度將從主機設備接收的數據值寫入第一存儲單元,所述第一解析度對應於第一可能數據值數量;將第一解析度記錄在與第一存儲單元相對應的解析度寄存器中;接收一個信號,以便以第二解析度寫入,所述第二解析度對應於第二可能數據值數量,其中所述第二可能數據值數量超過第一可能數據值數量;以及更新與所述多個存儲單元中的至少一個相對應的解析度寄存器,以便指示第二解析度,其中目標電壓基於第二解析度。26.根據權利要求25所述的方法,還包括從主機設備接收指示主機設備電源條件的信號。27.根據權利要求1所述的方法,其中與第一存儲單元相對應的解析度寄存器條目指示的是第一解析度,所述第一解析度對應於第一可能數據值數量;該方法還包括更新與第一存儲單元相關聯的解析度寄存器條目,以便指示第二解析度,所述第二解析度對應於第二可能數據值數量,其中第一可能數據值數量大於第二可能數據值數量;以及以第二解析度將第二數據值寫入第一存儲單元。28.根據權利要求27所述的方法,其中更新與第一存儲單元相關聯的解析度寄存器條目和以第二解析度寫入第一存儲單元是由與存儲單元頁面相關聯的差錯條件觸發的,其中存儲單元頁面包括第一存儲單元。29.根據權利要求28所述的方法,其中存儲單元頁面與降級的存儲單元的第二頁面配對;該方法還包括更新邏輯尋址軟體代碼,以便將存儲單元頁面配對視為處於第一解析度的單個存儲單元頁面。30.—種包含機器可讀指令的製品,其中在被執行時,該指令使操作被執行,所述操作包括確定是否執行維護操作;在確定應該執行維護操作時,作為響應,識別與存儲單元頁面相關聯的差錯信息;確定差錯信息是否滿足差錯判據;以及將對應於存儲單元頁面的一個或多個解析度寄存器從第一解析度調整到第二解析度,所述第一和第二解析度中的每一個都定義了多個電壓範圍,每一個電壓範圍都對應於一個可能數據值,所述第一解析度具有的電壓範圍多於第二解析度的電壓範圍。31.根據權利要求30所述的製品,其中確定是否執行維護操作包括確定主機設備是否具有滿足預定條件的電源。32.根據權利要求31所述的製品,其中預定條件包括主機設備接收交流電源。33.根據權利要求31所述的製品,其中預定條件包括主機設備具有充電至預定電荷等級的電池。34.根據權利要求30所述的製品,其中確定是否執行維護操作包括確定處理器是否具有超過預定閾值的未使用帶寬。35.—種用於調整已存儲數據值中的暫降的方法,該方法包括將電荷施加於多個存儲單元,每一個存儲單元都被充電至與數據值相對應的目標電壓,所述多個存儲單元包括基準單元,所述基準單元,皮充電至預定電壓;檢測基準單元中的電壓電平;檢測來自存儲單元組的電壓電平;以及基於在基準單元中檢測到的電壓電平與預定電壓之間的差值而將附加電荷施加於多個存儲單元。36.根據權利要求35所述的方法,還包括檢測第二基準單元中的電壓電平,其中將附加電荷施加於多個存儲單元進一步基於在第二基準單元中檢測到的電壓電平以及預定的第二基準單元電壓。37.根據權利要求35所述的方法,其中所述多個存儲單元包括NAND快閃記憶體存儲單元。38.根據權利要求35所述的方法,其中所述多個存儲單元包括NOR快閃記憶體存儲單元。39.根據權利要求35所述的方法,其中每一個數據值都包括多於四個的比特。40.—種用於數據存儲的系統,該系統包括多個存儲單元,每一個存儲單元都被適配成在寫入操作過程中接收電荷,以便達到與具有指定數量的比特的數據值相對應的電壓電平;與所述多個存儲單元相關聯的解析度寄存器,該解析度寄存器包括多個條目,每一個條目指示的是存儲在一個或多個相應存儲單元中的比特數量;主機接口,它被適配成從主機設備接收信號,該信號指示的是主機設備的電源條件;以及處理器,它被適配成將數據值重寫到所述多個存儲單元中,以及響應於指示預定電源條件的信號而將解析度寄存器從指示第一比特數量調整成指示第二比特數量。41.根據權利要求40所述的系統,還包括邏輯尋址軟體代碼,用於將從主機設備接收的邏輯地址轉換成物理地址,以便存取數據。42.根據權利要求40所述的系統,其中主機接口還被適配成接收來自主機設備的命令,以及與主機設備交換數據。43.根據權利要求40所述的系統,其中所述多個存儲單元包括NAND快閃記憶體存儲單元。44.一種包含機器可讀指令的製品,其中在被執行時,該指令使操作被執行,所述操作包括確定是否執行維護操作;讀取與多個快閃記憶體存儲單元相關聯的維護日誌;執行記錄在維護日誌上的維護活動,其中該維護活動是從包含下列各項的組中選出的以更高解析度來重寫初始以較低解析度存儲的數據值;降低與預定差錯條件相關聯的存儲單元組的解析度;以與初始數據值相等同的解析度重寫超過預定差錯閾值的數據值;交換最頻繁存取的數據與最不頻繁存取的數據;以及通過將附加電荷施加於存儲單元來刷新數據值,以便校正電壓暫降。45.根據權利要求44所述的製品,其中確定是否執行維護操作包括確定主機設備是否具有滿足預定條件的電源。46.根據權利要求45所述的製品,其中預定條件包括主機設備接收交流電源。47.根據權利要求45所述的製品,其中預定條件包括主機設備具有充電至預定充電等級的電池。48.根據權利要求44所述的製品,其中確定是否執行維護操作包括確定內部處理器是否具有超過預定閾值的未使用帶寬。49.根據權利要求44所述的製品,其中所述操作還包括在一個或多個維護活動中,為那些被重新寫入到不同物理存儲單元的數據值更新邏輯尋址軟體代碼。全文摘要本發明涉及多級數據存儲單元的維護操作。包括計算機軟體的用於從快閃記憶體存儲單元(124)中讀取數據的系統和方法涉及檢測來自存儲單元組的電壓。該組存儲單元具有用於差錯檢測(605)的相關元數據,並且每一個存儲單元都存儲了一個電壓,該電壓代表的是從多個可能數據值中選出的一個數據值。每一個可能的數據值都與多個非重疊模擬電壓範圍中的一個範圍相對應。具有不確定數據值的存儲單元是根據檢測到的電壓來識別的(610)。對於具有不確定數據值的存儲單元來說,其備選數據值將被確定(615)。備選數據值的組合將被選擇(625),並且使用與存儲單元相關聯的元數據以及選定的備選數據值組合來執行差錯檢查(635)。文檔編號G11C11/56GK101484947SQ200780024848公開日2009年7月15日申請日期2007年5月14日優先權日2006年5月15日發明者C·P·杜得特,M·J·康威爾申請人:蘋果公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀