日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

用于非易失性存儲器的混合粒度較高級別冗余的制作方法

文檔序號:11237259閱讀:1114來源:國知局
用于非易失性存儲器的混合粒度較高級別冗余的制造方法與工藝
相關(guān)申請的交叉引用在所附的申請數(shù)據(jù)表、請求或傳輸(視情況而定,如果有的話)中作出本申請的優(yōu)先權(quán)權(quán)益要求。到本申請的類型所允許的程度,本申請出于所有目的通過引用并入下列申請,在作出本發(fā)明時所有下列申請與本申請一起被共同擁有:2012年8月2日提交、第一發(fā)明人是zhengangchen并且題為“用于非易失性存儲器的混合粒度較高級別冗余(mixedgranularityhigher-levelredundancyfornon-volatilememory)”的美國非臨時申請(案號l12-0674us1和s/n13/565,752)。2011年11月30日提交、第一發(fā)明人是jeremyisaacnathanielwerner并且題為“利用獨立硅元素的動態(tài)較高級別冗余模式管理(dynamichigher-levelredundancymodemanagementwithindependentsiliconelements)”的pct申請(案號sf-10-l0pct和s/npct/us11/062726)。2012年1月18日提交、第一發(fā)明人是jeremyisaacnathanielwerner并且題為“較高級別冗余信息計算(higher-levelredundancyinformationcomputation)”的pct申請(案號sf-10-14pct和s/npct/us12/21682)。2010年12月1日提交、第一發(fā)明人是jeremyisaacnathanielwerner并且題為“利用獨立硅元素的動態(tài)較高級別冗余模式管理(dynamichigher-levelredundancymodemanagementwithindependentsiliconelements)”的美國臨時申請(案號sf-10-10和s/n61/418,846)。2011年1月18日提交、第一發(fā)明人是jeremyisaacnathanielwerner并且題為“較高級別冗余信息計算(higher-levelredundancyinformationcomputation)”的美國臨時申請(案號sf-10-14和s/n61/433,918)。2011年3月11日提交、第一發(fā)明人是haozhong并且題為“用于閃存存儲器的ldpc擦除解碼(ldpcerasuredecodingforflashmemories)”的pct申請(案號sf-10-0lpctb和s/npct/us11/28244)。2011年10月26日提交、第一發(fā)明人是yanli并且題為“用于基于閃存的數(shù)據(jù)存儲的自適應(yīng)ecc技術(shù)(adaptiveecctechniquesforflashmemorybaseddatastorage)”的pct申請(案號sf-10-03pct和s/npct/us11/57914)。
背景技術(shù)
:領(lǐng)域:需要存儲技術(shù)的進步來提供性能、效率和使用實用性方面的改進。相關(guān)技術(shù):除非明確地被標識為是公開已知的或眾所周知的,否則包括出于上下文、定義或比較目的,本文中提及的技術(shù)和概念不應(yīng)被解釋為承認這樣的技術(shù)和概念是先前公開已知的或現(xiàn)有技術(shù)的一部分。出于所有目的,無論具體并入與否,包括專利、專利申請和出版物的本文中所引用的所有參考文獻(如果有的話)通過引用整體結(jié)合于此。概要本發(fā)明可以許多方式來實現(xiàn),例如,作為一種過程、一種制品、一種裝置、一種系統(tǒng)、一種物質(zhì)組成以及諸如計算機可讀存儲介質(zhì)的計算機可讀介質(zhì)(例如,在諸如盤之類的光學(xué)和/或磁性海量存儲設(shè)備、具有諸如閃存存儲器的非易失性存儲器的集成電路中的介質(zhì)),或計算機網(wǎng)絡(luò),其中程序指令在光或電子通信鏈路上進行發(fā)送。詳細描述提供了本發(fā)明的一個或多個實施例的闡述,所述實施例使得以上所標識的領(lǐng)域中的成本、盈利能力、性能、效率和使用實用性方面的改進成為可能。詳細描述包括一引言,用于幫助理解詳細描述的剩余部分。此引言包括根據(jù)本文中所描述概念的系統(tǒng)、制品和計算機可讀介質(zhì)中的一個或多個的示例性實施例。如在結(jié)論中更詳細討論的那樣,本發(fā)明涵蓋了發(fā)布的權(quán)利要求的范圍內(nèi)的所有可能的修改和變型。附圖說明圖1a示出了提供用于非易失性存儲器(nvm)的混合粒度較高級別冗余的包括ssd控制器的固態(tài)盤(ssd)的實施例的選擇的細節(jié)。圖1b示出了包括圖1a的ssd的一個或多個實例的系統(tǒng)的各實施例的選擇的細節(jié)。圖2示出了映射邏輯塊地址(lba)的邏輯頁號(lpn)部分的實施例的選擇的細節(jié)。圖3示出了在讀單元地址處訪問非易失性存儲器(nvm)以產(chǎn)生被組織為各讀單元(全體地具有以讀單元的量(quanta)進行測量的長度)的讀數(shù)據(jù)的實施例的選擇的細節(jié)。圖4a示出了讀單元的實施例的選擇的細節(jié)。圖4b示出了讀單元的另一實施例的選擇的細節(jié)。圖5示出了具有多個字段的頭部的實施例的選擇的細節(jié)。圖6示出了在邏輯片和/或部分中管理的多個nvm設(shè)備(例如,一個或多個閃存管芯和/或閃存芯片)的塊、頁面和讀單元的實施例的選擇的細節(jié)。圖7示出了較高級別冗余技術(shù)的各實施例的選擇的細節(jié)。圖8示出了利用硅獨立元素冗余陣列(rasie)的動態(tài)較高級別冗余模式管理的實施例的選擇的細節(jié)。圖9示出了具有由存儲在讀單元中的一個或多個中的較高級別冗余信息保護的自適應(yīng)碼率的較低級別冗余信息的讀單元的實施例。圖10示出了較高級別冗余信息結(jié)果和數(shù)據(jù)源對應(yīng)的實施例的選擇的細節(jié)。圖11示出了較高級別冗余信息計算的實施例的選擇的細節(jié)。圖12示出了從一個(較低級別)故障(在單個操作期間)恢復(fù)的實施例的選擇的細節(jié)。圖13a-13d示出了從兩個(較低級別)故障(在單個操作期間)恢復(fù)的實施例的選擇的細節(jié)。圖14a和14b示出了相對于從nvm接收的頁面計算較高級別冗余信息的實施例的選擇的細節(jié)。圖15a-15c示出了相對于被提供至nvm的寫入的較高級別冗余信息的計算的撤回(backout)的實施例的選擇細節(jié)。圖16示出了混合粒度較高級別冗余的實施例的選擇的細節(jié)。圖17示出了在多個混合粒度較高級別冗余模式中的并行操作的實施例的選擇的細節(jié)。附圖中參考標記列表詳細描述以下連同示出了本發(fā)明的選擇細節(jié)的附圖一起提供了本發(fā)明的一個或多個實施例的詳細描述。結(jié)合這些實施例描述本發(fā)明。本文中的實施例被理解為僅是示例性的,本發(fā)明明確地不限于本文中的實施例中的任何一個或全部或不受本文中的實施例中的任何一個或全部的限制,并且本發(fā)明涵蓋眾多替換、修改和等效方案。為了避免闡述中的用詞單調(diào),各種單詞標簽(包括但不限于:第一、最后、特定、各種、進一步、其它、具體的、選擇、某些和顯著的)可被應(yīng)用于單獨組的實施例;如本文中所使用的,這樣的標簽明確地不旨在傳達質(zhì)量或任何形式的偏好或偏見,而僅僅用于在單獨的組之間進行方便地區(qū)分。所公開的過程的某些操作的順序在本發(fā)明的范圍內(nèi)是可改變的。多重實施例用來描述過程、系統(tǒng)和/或程序指令特征中的變型的任何地方,構(gòu)想其它實施例,根據(jù)預(yù)定的或動態(tài)確定的標準,執(zhí)行分別地對應(yīng)于多個多重實施例的多個操作模式中的一個的靜態(tài)和/或動態(tài)選擇。在下面的描述中闡述了眾多具體細節(jié)以提供對本發(fā)明的透徹理解。出于示例的目的而提供這些細節(jié),且本發(fā)明可在沒有這些細節(jié)中的一些或全部的情況下根據(jù)權(quán)利要求來實踐。出于清楚起見,并未詳細描述本發(fā)明相關(guān)
技術(shù)領(lǐng)域
中已知的技術(shù)資料以免不必要地湮沒本發(fā)明。引言包括此引言僅為了促進對詳細描述的更快速理解;本發(fā)明不限于在引言中所提出的概念(包括明確的示例,如果有的話),因為任何引言的段落必然是整個主題的簡略觀點且不旨在成為詳盡的或限制性描述。例如,接下來的引言提供受空間和組織限制到僅特定實施例的概覽信息。存在貫穿規(guī)范的平衡進行討論的很多其它實施例,包括權(quán)利要求最終將描繪的那些。首字母縮寫這里定義的各種速記縮寫(例如,首字母縮寫)中的至少一些指代本文中所使用的特定元素。首字母縮寫描述ahci高級主機控制器接口api應(yīng)用程序接口ata高級技術(shù)附件(at附件)bch博斯-喬赫里-霍克文黑姆(bosechaudhurihocquenghem)cd壓縮盤cf緊湊式閃存cmos互補金屬氧化物半導(dǎo)體cpu中央處理單元crc循環(huán)冗余校驗das直接附加存儲ddr雙倍數(shù)據(jù)率dma直接存儲器訪問dna直接nand訪問dram動態(tài)隨機存取存儲器dvd數(shù)字多功能/視頻盤dvr數(shù)字視頻記錄器ecc糾錯碼emmc嵌入式多媒體卡esata外部串行高級技術(shù)附件gps全球定位系統(tǒng)hdd硬盤驅(qū)動器i/o輸入/輸出ic集成電路ide集成驅(qū)動電子器件jpeg聯(lián)合圖像專家組lan局域網(wǎng)lba邏輯塊地址ldpc低密度奇偶校驗lpn邏輯頁號首字母縮寫描述mlc多級單元mmc多媒體卡mpeg運動圖像專家組nas網(wǎng)絡(luò)附加存儲ncq原生指令排序nvm非易失性存儲器ona經(jīng)優(yōu)化的nand訪問onfi開放nand閃存接口os操作系統(tǒng)pc個人計算機pcie外圍組件高速互連(pci高速)pda個人數(shù)字助理phy物理接口pos銷售點raid廉價/獨立磁盤冗余陣列srasie硅獨立元素冗余陣列reram阻性隨機存取存儲器rs里德-所羅門(reed-solomon)san存儲附加網(wǎng)絡(luò)sas串行連接小型計算機系統(tǒng)接口(串行scsi)sata串行高級技術(shù)附件(串行ata)scsi小型計算機系統(tǒng)接口sd安全數(shù)字sdr單倍數(shù)據(jù)率slc單級單元smart自我監(jiān)視分析和報告技術(shù)sram靜態(tài)隨機存取存儲器ssd固態(tài)盤/驅(qū)動ufs統(tǒng)一的閃存存儲usb通用串行總線vf虛函數(shù)wan廣域網(wǎng)nand閃存存儲器利用浮動?xùn)啪w管陣列來存儲信息。在slc技術(shù)中,每一位單元(例如,浮動?xùn)啪w管)被啟用以存儲一位信息。在mlc技術(shù)中,每一位單元被啟用以存儲多位信息。隨著制造技術(shù)(例如,cmos技術(shù))按比例縮小,每一浮動?xùn)糯鎯^少的電子。進一步,隨著存儲容量和密度增加,每一位單元存儲更多位。因此,存儲在位單元中的值由較小的電壓范圍進行表示。在感測的不確定性和/或所存儲的電子的量隨時間的變化增加了數(shù)據(jù)被錯誤存儲或讀取的概率。一個或多個冗余和/或ecc技術(shù)(例如,在較低級別下)的使用使得來自nand閃存存儲器的否則損壞的數(shù)據(jù)的正確恢復(fù)成為可能,在某些使用場景中,克服了前述困難中的一些。一些類型的ssd利用閃存存儲器來提供非易失性存儲(例如,閃存存儲器在沒有電源應(yīng)用的情況下保持信息)。一個或多個ecc和/或冗余技術(shù)(在較高級別下)的使用使得來自閃存存儲器的否則損壞的數(shù)據(jù)的正確恢復(fù)成為可能,和/或使得甚至在一個或多個閃存存儲元件間歇地或永久地失效時ssd的適當系統(tǒng)級操作成為可能。例如,ssd控制器使得具有獨立的硅元件的動態(tài)較高級別冗余模式管理能夠在一個或多個nvm(例如,閃存)元件在部分地由控制器實現(xiàn)的ssd的操作期間失效時提供故障弱化。讀取nvm的一部分。如果不可利用較低級別冗余和/或錯誤糾正(諸如根據(jù)一個或多個ecc技術(shù))糾正的錯誤發(fā)生了,則較高級別冗余和/或錯誤校正(諸如根據(jù)一個或多個rasie技術(shù)和/或動態(tài)較高級別冗余模式管理技術(shù))被用于嘗試糾正此錯誤。如果nvm元件中的一個的故障被較低級別和/或較高級別冗余和/或錯誤糾正檢測到,和/或被其它技術(shù)檢測到(諸如,由nvm元件中的一個或多個所報告的出故障狀態(tài)),則較高級別冗余和/或錯誤糾正從在當前模式中操作動態(tài)地轉(zhuǎn)換到在新的模式中操作。此轉(zhuǎn)換包括減少ssd上可用的自由空間、重新安排ssd的數(shù)據(jù)存儲、恢復(fù)/存儲失效的用戶數(shù)據(jù)(如果可能的話)以及確定/存儲經(jīng)修正的較高級別冗余和/或錯誤糾正信息中的一個或多個。操作隨后在新的模式中繼續(xù)。如果利用目前在新的模式中操作的較高級別冗余和/或錯誤糾正檢測到nvm元件中的另一個的另一故障,則作出至另一較高級別冗余和/或錯誤糾正模式的轉(zhuǎn)換。寫入nvm是根據(jù)較高級別冗余和/或錯誤糾正操作模式,包括根據(jù)較高級別冗余和/或錯誤糾正操作模式和寫入數(shù)據(jù)來確定/存儲較高級別冗余和/或錯誤糾正信息。如果大于閾值數(shù)量和/或比率的較低級別錯誤糾正和/或一個或多個故障針對存儲器的一區(qū)域而發(fā)生,則可選地存儲器此區(qū)域被動態(tài)地轉(zhuǎn)換至在新的較高級別冗余和/或錯誤糾正操作模式中操作,該新的操作模式被啟用以從比當前的較高級別冗余和/或錯誤糾正操作模式多的錯誤中恢復(fù)。例如,如果當前的較高級別冗余和/或錯誤糾正操作模式是沒有(例如,沒有較高級別冗余信息被計算和/或使用以從較低級別冗余的故障中恢復(fù)以糾正錯誤),則新的較高級別冗余和/或錯誤糾正操作模式是能夠從通過較低級別冗余不可糾正的單個故障恢復(fù)的操作模式。再例如,如果當前的較高級別冗余和/或錯誤糾正操作模式是能夠從通過較低級別冗余不可糾正的單個故障恢復(fù)的操作模式,則新的較高級別冗余和/或錯誤糾正操作模式是能夠從通過較低級別冗余不可糾正的兩個故障恢復(fù)的操作模式。在某些實施例和/或使用場景中,確定/存儲較高級別冗余和/或錯誤糾正信息是根據(jù)較高級別冗余信息的計算。較高級別冗余信息計算使得ssd控制器能夠提供較高級別冗余能力,用于在部分地通過控制器實現(xiàn)的ssd的操作期間,維持在非易失性(例如,閃存)存儲元件的故障的背景中的可靠操作。經(jīng)由在由較高級別冗余信息保護的一部分數(shù)據(jù)(例如,條)中的所有頁面的異或,利用奇偶校驗編碼計算較高級別冗余信息的第一部分。利用加權(quán)和技術(shù)計算較高級別冗余信息的第二部分,當計算加權(quán)和時,此部分中的每一頁面被分配一唯一的非零“索引”作為權(quán)重。在有限域(諸如galois域或諸如整數(shù)模p,其中p是素數(shù))上執(zhí)行算法。較高級別冗余信息的各部分可以任何順序(諸如由在nvm元件上執(zhí)行的一個或多個讀操作的完成的順序所確定的順序,或諸如基于從nvm元件返回和/或可用的數(shù)據(jù)的順序的順序)進行計算,使得在各實施例中能夠減少或消除緩沖。在各實施例中,任何順序可計算性能夠利用相對小的臨時和/或中間緩沖和/或狀態(tài)計算恢復(fù)數(shù)據(jù)值和/或撤回寫入。較高級別冗余信息的各部分可利用諸如由可用的專用硬件元件所確定的任何程度的并行性進行計算,使得在各實施例中能夠減少延遲處理和/或減少存儲器(nvm)帶寬使用。在其中一定數(shù)量和/或比率的較低級別錯誤事件(例如,可糾正的和/或不可糾正的錯誤)和/或故障在nvm的各種區(qū)域中區(qū)別地發(fā)生的一些情況中,用于nvm的混合粒度較高級別冗余使得具有更好的錯誤恢復(fù)和/或減少的冗余信息開銷的改進的較高級別冗余操作成為可能。在某些場景中,更好的錯誤恢復(fù)導(dǎo)致nvm和/或利用nvm實現(xiàn)的ssd的增加的可用壽命。作為示例,最初nvm的所有頁面具有近似相等比率的較低級別錯誤事件。nvm的所有塊最初以第一較高級別冗余模式進行操作,該第一較高級別冗余模式能夠從在單個操作期間發(fā)生的單個較低級別不可糾正的錯誤中恢復(fù)。接著在nvm的可靠性中存在變化從而使得nvm的某些頁面變得較不可靠(例如,開始具有更大量的較低級別錯誤事件),而nvm的所有其它頁面保持可靠(例如,繼續(xù)具有相同或幾乎相同的量的較低級別錯誤事件)。較低級別事件的前述量例如是較低級別事件的數(shù)量、比率和/或嚴重性。概念地,在可靠性變化之后,nvm具有兩個區(qū)域:第一區(qū)域,為僅具有可靠頁面的塊;以及第二區(qū)域,為具有至少一個不可靠頁面的塊。響應(yīng)于可靠性中的變化,第二區(qū)域被選擇性地動態(tài)地轉(zhuǎn)換至部分地以第二較高級別冗余模式進行操作,該第二較高級別冗余模式能夠從在單個操作期間發(fā)生的兩個較低級別不可糾正的錯誤中恢復(fù)。此轉(zhuǎn)換是選擇性的和部分的,因為僅較不可靠頁面被轉(zhuǎn)換至以第二較高級別冗余模式進行操作,而第二區(qū)域的可靠頁面繼續(xù)以第一較高級別冗余模式進行操作。同時,第一區(qū)域的所有塊繼續(xù)以第一較高級別冗余模式進行操作。由于較高級別冗余模式隨著頁面變化(例如,可靠的頁面以第一較高級別冗余模式進行操作并且較不可靠的頁面以第二較高級別冗余模式進行操作),因而第二區(qū)域被描述為利用頁面粒度較高級別冗余進行操作。相反,由于較高級別冗余模式對于第一區(qū)域的所有塊是相同的(例如,所有的塊以第一較高級別冗余模式進行操作),因而第一區(qū)域被描述為利用塊粒度較高級別冗余進行操作。如果第一區(qū)域是整個的r-塊(本文中其它地方所描述的),則由于較高級別冗余模式對于第一區(qū)域的所有r-塊是相同的(例如,整個的r-塊以第一較高級別冗余模式進行操作),因而第一區(qū)域可替代地被描述為利用r-塊粒度較高級別冗余進行操作。對此示例作出結(jié)論,以第二較高級別冗余模式操作較不可靠頁面使得比使較不可靠頁面以第一較高級別冗余模式操作更好的錯誤恢復(fù)成為可能。替代地,相比于以第二較高級別冗余模式操作具有不可靠頁面中的任何一個的所有塊,僅以第二較高級別冗余模式操作較不可靠頁面能夠減少冗余信息開銷。示例性實施例在對詳細描述的引言作出結(jié)論中,接下來的是示例性實施例的收集,包括至少一些明確地枚舉為“ec”(示例組合),提供根據(jù)本文中所描述的概念的各種實施例類型的附加描述;這些示例不旨在是相互排斥的、窮盡性的或限制性的;并且本發(fā)明不限于這些示例性實施例而是涵蓋了發(fā)布的權(quán)利要求及其等效方案的范圍內(nèi)的所有可能的修改和變型。ecl)一種方法,包括:在第一較高級別冗余模式中操作,其包括將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一尺寸;在第二較高級別冗余模式中操作,其包括將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二尺寸;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一尺寸不同于第二尺寸;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec2)ec1的方法,其中m個物理設(shè)備中的至少一些是n個物理設(shè)備中的至少一些。ec3)ec1的方法,其中m個物理設(shè)備是n個物理設(shè)備。ec4)ec1的方法,其中在第一較高級別冗余模式中的操作和在第二較高級別冗余模式中的操作是并行地活躍的,從而使得至少對于一部分時間,存儲器與具有對應(yīng)于n個信息部分的存儲的信息并行地具有對應(yīng)于m個信息部分的存儲的信息。ec5)ec4的方法,其中在第二較高級別冗余模式中的操作是響應(yīng)于制造缺陷、工藝變化、不均勻磨損、可靠性或錯誤率的觀察到的變化以及故障中的任何一個或多個。ec6)ec1的方法,進一步包括訪問在特定區(qū)域中完全地被包括的一個或多個位置,所述特定區(qū)域是m個相應(yīng)的區(qū)域中的任何一個或n個相應(yīng)的區(qū)域中的任何一個,所述訪問包括確定所述特定區(qū)域的尺寸。ec7)ec1的方法,其中所述存儲器包括多個閃存設(shè)備。ec8)ec7的方法,其中m個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個的m個相應(yīng)的塊。ec9)ec8的方法,其中所述一個或多個閃存設(shè)備是一個或多個第一閃存設(shè)備,并且n個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面。ec10)ec9的方法,其中一個或多個第一閃存設(shè)備中的至少一個和一個或多個第二閃存設(shè)備中的至少一個是相同的閃存設(shè)備。ec11)ec10的方法,其中所述相同的閃存設(shè)備包括具有一個或多個閃存管芯的集成電路。ec12)ec10的方法,其中所述相同的閃存設(shè)備包括單個閃存管芯。ecl3)一種方法,包括:在第一較高級別冗余模式中操作,其包括將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一類型;在第二較高級別冗余模式中操作,其包括將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二類型;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一類型不同于第二類型;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec14)ec13的方法,其中:所述存儲器包括多個閃存設(shè)備;m個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第一閃存設(shè)備的m個相應(yīng)的塊,所述第一類型為塊類型;以及n個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面,所述第一類型為頁面類型。ec15)ec14的方法,進一步包括檢測m個相應(yīng)的塊中的一個塊的故障,并且作為響應(yīng),以第二較高級別冗余模式操作至少出故障的塊。ec16)ecl或ec13的方法,其中j不等于k。ec17)ec16的方法,其中m等于n。ec18)ecl或ec13的方法,其中m等于n。ec19)ecl或ec13的方法,其中m不等于n。ec20)ec19的方法,其中j不等于k。ec21)ecl或ec13的方法,其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲的行動中的一個或多個至少部分地是經(jīng)由耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口。ec22)ecl或ec13的方法,其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲的行動中的一個或多個至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec23)ecl或ec13的方法,其中存儲器的區(qū)域中的至少一些包括閃存存儲器,存儲的行動中的一個或多個至少部分地是經(jīng)由耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口,并且存儲的行動中的至少一個至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec24)ec23的方法,其中在單個集成電路(ic)中共同地實現(xiàn)閃存存儲器接口和主機接口。ec25)ec23的方法,其中閃存存儲器接口和主機接口被包括在固態(tài)盤(ssd)中。ec26)ec23的方法,進一步包括,在閃存存儲器中,接收至少部分地響應(yīng)于存儲的行動中的至少一個而生成的一個或多個寫和/或編程命令。ec27)ec23的方法,進一步包括,在主機中,生成所述請求。ec28)一種系統(tǒng),包括:用于根據(jù)相應(yīng)的第一和第二較高級別冗余模式管理存儲器的裝置;用于響應(yīng)于用于管理存儲器的裝置而存儲至存儲器的裝置;其中用于管理存儲器的裝置被啟用以引導(dǎo)用于存儲的裝置將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一尺寸;其中用于管理存儲器的裝置進一步被啟用以引導(dǎo)用于存儲的裝置將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二尺寸;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一尺寸不同于第二尺寸;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec29)ec28的系統(tǒng),其中m個物理設(shè)備中的至少一些是n個物理設(shè)備中的至少一些。ec30)ec28的系統(tǒng),其中m個物理設(shè)備是n個物理設(shè)備。ec31)ec28的系統(tǒng),其中用于管理存儲器的裝置被啟用以根據(jù)第一較高級別冗余模式和第二較高級別冗余模式并行地管理存儲器,從而使得至少對于一部分時間,存儲器與具有對應(yīng)于n個信息部分的存儲的信息并行地具有對應(yīng)于m個信息部分的存儲的信息。ec32)ec31的系統(tǒng),用于管理存儲器的裝置被啟用以響應(yīng)于制造缺陷、工藝變化、不均勻磨損、可靠性或錯誤率的觀察到的變化以及故障中的任何一個或多個而將存儲器的一部分從在第一較高級別冗余模式中操作轉(zhuǎn)換至在第二較高級別冗余模式中操作。ec33)ec28的系統(tǒng),進一步包括用于訪問在特定區(qū)域中完全地被包括的一個或多個位置的裝置,所述特定區(qū)域是m個相應(yīng)的區(qū)域中的任何一個或n個相應(yīng)的區(qū)域中的任何一個,用于訪問的裝置被啟用以確定所述特定區(qū)域的尺寸。ec34)ec28的系統(tǒng),其中所述存儲器包括多個閃存設(shè)備。ec35)ec34的系統(tǒng),其中m個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個的m個相應(yīng)的塊。ec36)ec35的系統(tǒng),其中所述一個或多個閃存設(shè)備是一個或多個第一閃存設(shè)備,并且n個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面。ec37)ec36的系統(tǒng),其中一個或多個第一閃存設(shè)備中的至少一個和一個或多個第二閃存設(shè)備中的至少一個是相同的閃存設(shè)備。ec38)ec37的系統(tǒng),其中所述相同的閃存設(shè)備包括具有一個或多個閃存管芯的集成電路。ec39)ec37的系統(tǒng),其中所述相同的閃存設(shè)備包括單個閃存管芯。ec40)一種系統(tǒng),包括:用于根據(jù)相應(yīng)的第一和第二較高級別冗余模式管理存儲器的裝置;用于響應(yīng)于用于管理存儲器的裝置而存儲至所述存儲器的裝置;其中用于管理存儲器的裝置被啟用以引導(dǎo)用于存儲的裝置將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一類型;其中用于管理存儲器的裝置進一步被啟用以引導(dǎo)用于存儲的裝置將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二類型;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一類型不同于第二類型;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec41)ec40的系統(tǒng),其中:所述存儲器包括多個閃存設(shè)備;m個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第一閃存設(shè)備的m個相應(yīng)的塊,所述第一類型為塊類型;以及n個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面,所述第一類型為頁面類型。ec42)ec41的系統(tǒng),其中用于管理存儲器的裝置被啟用以檢測m個相應(yīng)的塊中的一個塊的故障并且響應(yīng)于所述檢測,以第二較高級別冗余模式操作至少出故障的塊。ec43)ec28或ec40的系統(tǒng),其中j不等于k。ec44)ec43的系統(tǒng),其中m等于n。ec45)ec28或ec40的系統(tǒng),其中m等于n。ec46)ec28或ec40的系統(tǒng),其中m不等于n。ec47)ec46的系統(tǒng),其中j不等于k。ec48)ec28或ec40的系統(tǒng),其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且用于存儲的裝置包括耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口。ec49)ec28或ec40的系統(tǒng),其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲中的至少一些至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec50)ec28或ec40的系統(tǒng),其中存儲器的區(qū)域中的至少一些包括閃存存儲器,用于存儲的裝置包括耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口,并且存儲中的至少一些至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec51)ec50的系統(tǒng),其中在單個集成電路(ic)中共同地實現(xiàn)閃存存儲器接口和主機接口。ec52)ec50的系統(tǒng),其中閃存存儲器接口和主機接口被包括在固態(tài)盤(ssd)中。ec53)ec50的系統(tǒng),進一步包括,在閃存存儲器中,用于接收至少部分地響應(yīng)于存儲中的至少一些而生成的一個或多個寫和/或編程命令的裝置。ec54)ec53的系統(tǒng),進一步包括閃存設(shè)備的任何部分。ec55)ec50的系統(tǒng),進一步包括,在主機中,用于生成所述請求的裝置。ec56)ec55的系統(tǒng),進一步包括主機的任何部分。ec57)一種裝置,包括:較高級別冗余控制電路,被啟用以根據(jù)相應(yīng)的第一和第二較高級別冗余模式控制存儲器;存儲電路,響應(yīng)于較高級別冗余控制電路;其中較高級別冗余控制電路被啟用以引導(dǎo)存儲電路將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一尺寸;其中較高級別冗余控制電路進一步被啟用以引導(dǎo)存儲電路將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二尺寸;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一尺寸不同于第二尺寸;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec58)ec57的裝置,其中m個物理設(shè)備中的至少一些是n個物理設(shè)備中的至少一些。ec59)ec57的裝置,其中m個物理設(shè)備是n個物理設(shè)備。ec60)ec57的裝置,其中較高級別冗余控制電路進一步被啟用以根據(jù)第一較高級別冗余模式和第二較高級別冗余模式并行地管理存儲器,從而使得至少對于一部分時間,存儲器與具有對應(yīng)于n個信息部分的存儲的信息并行地具有對應(yīng)于m個信息部分的存儲的信息。ec61)ec60的裝置,其中較高級別冗余控制電路進一步被啟用以響應(yīng)于制造缺陷、工藝變化、不均勻磨損、可靠性或錯誤率的觀察到的變化以及故障中的任何一個或多個而將存儲器的一部分從在第一較高級別冗余模式中操作轉(zhuǎn)換至在第二較高級別冗余模式中操作。ec62)ec57的裝置,進一步包括訪問電路,被啟用以訪問在特定區(qū)域中完全地被包括的一個或多個位置,所述特定區(qū)域是m個相應(yīng)的區(qū)域中的任何一個或n個相應(yīng)的區(qū)域中的任何一個,所述訪問電路進一步被啟用以確定所述特定區(qū)域的尺寸。ec63)ec57的裝置,其中所述存儲器包括多個閃存設(shè)備。ec64)ec63的裝置,其中m個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個的m個相應(yīng)的塊。ec65)ec64的裝置,其中所述一個或多個閃存設(shè)備是一個或多個第一閃存設(shè)備,并且n個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面。ec66)ec65的裝置,其中一個或多個第一閃存設(shè)備中的至少一個和一個或多個第二閃存設(shè)備中的至少一個是相同的閃存設(shè)備。ec67)ec66的裝置,其中所述相同的閃存設(shè)備包括具有一個或多個閃存管芯的集成電路。ec68)ec66的裝置,其中所述相同的閃存設(shè)備包括單個閃存管芯。ec69)一種裝置,包括:較高級別冗余控制電路,被啟用以根據(jù)相應(yīng)的第一和第二較高級別冗余模式控制存儲器;存儲電路,響應(yīng)于較高級別冗余控制電路;其中較高級別冗余控制電路被啟用以引導(dǎo)存儲電路將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一類型;其中較高級別冗余控制電路進一步被啟用以引導(dǎo)存儲電路將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二類型;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一類型不同于第二類型;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec70)ec69的裝置,其中:所述存儲器包括多個閃存設(shè)備;m個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第一閃存設(shè)備的m個相應(yīng)的塊,所述第一類型為塊類型;以及n個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面,所述第一類型為頁面類型。ec71)ec70的裝置,其中較高級別冗余控制電路進一步被啟用以檢測m個相應(yīng)的塊中的一個塊的故障并且響應(yīng)于所述檢測,以第二較高級別冗余模式操作至少出故障的塊。ec72)ec57或ec69的裝置,其中j不等于k。ec73)ec72的裝置,其中m等于n。ec74)ec57或ec69的裝置,其中m等于n。ec75)ec57或ec69的裝置,其中m不等于n。ec76)ec75的裝置,其中j不等于k。ec77)ec57或ec69的裝置,其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲電路包括耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口。ec78)ec57或ec69的裝置,其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲中的至少一些至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec79)ec57或ec69的裝置,其中存儲器的區(qū)域中的至少一些包括閃存存儲器,存儲電路包括耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口,并且存儲中的至少一些至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec80)ec79的裝置,其中在單個集成電路(ic)中共同地實現(xiàn)閃存存儲器接口和主機接口。ec81)ec79的裝置,其中閃存存儲器接口和主機接口被包括在固態(tài)盤(ssd)中。ec82)ec79的裝置,其中閃存存儲器被啟用以接收至少部分地響應(yīng)于存儲中的至少一些而生成的一個或多個寫和/或編程命令。ec83)ec82的裝置,進一步包括閃存設(shè)備的任何部分。ec84)ec79的裝置,其中主機被啟用以生成所述請求。ec85)ec84的裝置,進一步包括主機的任何部分。ec86)一種其中存儲有一組指令的有形計算機可讀介質(zhì),所述一組指令在由處理元件執(zhí)行時導(dǎo)致所述處理元件執(zhí)行和/或控制包括以下各項的操作:在第一較高級別冗余模式中操作,其包括將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一尺寸;在第二較高級別冗余模式中操作,其包括將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二尺寸;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一尺寸不同于第二尺寸;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec87)ec86的有形計算機可讀介質(zhì),其中m個物理設(shè)備中的至少一些是n個物理設(shè)備中的至少一些。ec88)ec86的有形計算機可讀介質(zhì),其中m個物理設(shè)備是n個物理設(shè)備。ec89)ec86的有形計算機可讀介質(zhì),其中在第一較高級別冗余模式中的操作和在第二較高級別冗余模式中的操作是并行地活躍的,從而使得至少對于一部分時間,存儲器與具有對應(yīng)于n個信息部分的存儲的信息并行地具有對應(yīng)于m個信息部分的存儲的信息。ec90)ec89的有形計算機可讀介質(zhì),其中在第二較高級別冗余模式中的操作是響應(yīng)于制造缺陷、工藝變化、不均勻磨損、可靠性或錯誤率的觀察到的變化以及故障中的任何一個或多個。ec91)ec86的有形計算機可讀介質(zhì),其中所述操作進一步包括訪問在特定區(qū)域中完全地被包括的一個或多個位置,所述特定區(qū)域是m個相應(yīng)的區(qū)域中的任何一個或n個相應(yīng)的區(qū)域中的任何一個,所述訪問包括確定所述特定區(qū)域的尺寸。ec92)ec86的有形計算機可讀介質(zhì),其中所述存儲器包括多個閃存設(shè)備。ec93)ec92的有形計算機可讀介質(zhì),其中m個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個的m個相應(yīng)的塊。ec94)ec93的有形計算機可讀介質(zhì),其中所述一個或多個閃存設(shè)備是一個或多個第一閃存設(shè)備,并且n個相應(yīng)的區(qū)域?qū)?yīng)于所述多個閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面。ec95)ec94的有形計算機可讀介質(zhì),其中一個或多個第一閃存設(shè)備中的至少一個和一個或多個第二閃存設(shè)備中的至少一個是相同的閃存設(shè)備。ec96)ec95的有形計算機可讀介質(zhì),其中所述相同的閃存設(shè)備包括具有一個或多個閃存管芯的集成電路。ec97)ec95的有形計算機可讀介質(zhì),其中所述相同的閃存設(shè)備包括單個閃存管芯。ec98)一種其中存儲有一組指令的有形計算機可讀介質(zhì),所述一組指令在由處理元件執(zhí)行時導(dǎo)致所述處理元件執(zhí)行和/或控制包括以下各項的操作:在第一較高級別冗余模式中操作,其包括將m個信息部分存儲在存儲器的m個相應(yīng)的區(qū)域中,m個相應(yīng)的區(qū)域中的每一個是相同的第一類型;在第二較高級別冗余模式中操作,其包括將n個信息部分存儲在存儲器的n個相應(yīng)的區(qū)域中,n個相應(yīng)的區(qū)域中的每一個是相同的第二類型;其中m個信息部分包括相應(yīng)的m-j個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的m-j個數(shù)據(jù)信息部分的相應(yīng)的j個冗余信息部分;其中n個信息部分包括相應(yīng)的n-k個數(shù)據(jù)信息部分和經(jīng)計算以保護相應(yīng)的n-k個數(shù)據(jù)信息部分的相應(yīng)的k個冗余信息部分;其中m個相應(yīng)的區(qū)域和n個相應(yīng)的區(qū)域中的每一個是存儲器的非重疊的區(qū)域;其中第一類型不同于第二類型;以及其中m個相應(yīng)的區(qū)域中的每一個是在存儲器的m個物理設(shè)備的相應(yīng)的一個中并且其中n個相應(yīng)的區(qū)域中的每一個是在存儲器的n個物理設(shè)備的相應(yīng)的一個中。ec99)ec98的有形計算機可讀介質(zhì),其中:所述存儲器包括多個閃存設(shè)備;m個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第一閃存設(shè)備的m個相應(yīng)的塊,所述第一類型為塊類型;以及n個相應(yīng)的區(qū)域?qū)?yīng)于所述閃存設(shè)備中的一個或多個第二閃存設(shè)備的n個相應(yīng)的頁面,所述第一類型為頁面類型。ec100)ec99的有形計算機可讀介質(zhì),其中所述操作進一步包括檢測m個相應(yīng)的塊中的一個塊的故障,并且作為響應(yīng),以第二較高級別冗余模式操作至少出故障的塊。ec101)ec86或ec98的有形計算機可讀介質(zhì),其中j不等于k。ec102)ec101的有形計算機可讀介質(zhì),其中m等于n。ec103)ec86或ec98的有形計算機可讀介質(zhì),其中m等于n。ec104)ec86或ec98的有形計算機可讀介質(zhì),其中m不等于n。ec105)ec104的有形計算機可讀介質(zhì),其中j不等于k。ec106)ec86或ec98的有形計算機可讀介質(zhì),其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲中的至少一些至少部分地是經(jīng)由耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口。ec107)ec86或ec98的有形計算機可讀介質(zhì),其中存儲器的區(qū)域中的至少一些包括閃存存儲器,并且存儲中的至少一些至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec108)ec86或ec98的有形計算機可讀介質(zhì),其中存儲器的區(qū)域中的至少一些包括閃存存儲器,存儲中的至少一些至少部分地是經(jīng)由耦合至閃存存儲器并且與至少一個閃存存儲器接口標準兼容的閃存存儲器接口,并且存儲中的至少一些至少部分地響應(yīng)于經(jīng)由與至少一個存儲接口標準兼容的主機接口從主機接收的請求。ec109)ec108的有形計算機可讀介質(zhì),其中在單個集成電路(ic)中共同地實現(xiàn)閃存存儲器接口和主機接口。ec110)ec108的有形計算機可讀介質(zhì),其中閃存存儲器接口和主機接口被包括在固態(tài)盤(ssd)中。ec111)ec108的有形計算機可讀介質(zhì),其中閃存存儲器被啟用以接收至少部分地響應(yīng)于存儲中的至少一些而生成的一個或多個寫和/或編程命令。ecl12)ec108的有形計算機可讀介質(zhì),其中主機被啟用以生成所述請求。ecl13)具有或提及閃存存儲器接口標準的前述ec中的任何一項,其中所述閃存存儲器接口標準與下列中的一個或多個兼容:開放nand閃存接口(onfi)、觸發(fā)模式接口、雙倍數(shù)據(jù)率(ddr)同步接口、ddr2同步接口、同步接口、以及異步接口。ecl14)具有或提及主機的前述ec中的任何一項,其中所述主機包括下列中的一個或多個:計算機、工作站計算機、服務(wù)器計算機、存儲服務(wù)器、存儲附加網(wǎng)絡(luò)(san)、網(wǎng)絡(luò)附加存儲(nas)設(shè)備、直接附加存儲(das)設(shè)備、存儲器具、個人計算機(pc)、膝上型計算機、筆記本計算機、上網(wǎng)本計算機、平板設(shè)備或計算機、超極本計算機、電子閱讀設(shè)備(電子閱讀器)、個人數(shù)字助理(pda)、導(dǎo)航系統(tǒng)、(手持式)全球定位系統(tǒng)(gps)設(shè)備、汽車控制系統(tǒng)、汽車媒體控制系統(tǒng)或計算機、打印機、復(fù)印機或傳真機或一體化設(shè)備、銷售點(pos)設(shè)備、收銀機、媒體播放器、電視、媒體記錄器、數(shù)字視頻記錄器(dvr)、數(shù)碼相機、蜂窩手持機、無繩電話手持機、以及電子游戲。ecl15)具有或提及存儲接口標準的前述ec中的任何一項,其中所述存儲接口標準包括下列中的一個或多個:通用串行總線(usb)接口標準、緊湊式閃存(cf)接口標準、多媒體卡(mmc)接口標準、嵌入式mmc(emmc)接口標準、迅雷接口標準、ufs接口標準、安全數(shù)字(sd)接口標準、記憶棒接口標準、xd圖片卡接口標準、集成驅(qū)動電子器件(ide)接口標準、串行高級技術(shù)附件(sata)接口標準、外部sata(esata)接口標準、小型計算機系統(tǒng)接口(scsi)接口標準、串行連接小型計算機系統(tǒng)接口(sas)接口標準、光纖通道接口標準、以太網(wǎng)接口標準、以及外圍組件高速互連(pcie)接口標準。ecl16)具有或提及至少一個閃存設(shè)備的前述ec中的任何一項,其中所述至少一個閃存設(shè)備的至少一部分包括下列中的一個或多個:nand閃存技術(shù)存儲單元,以及nor閃存技術(shù)存儲單元。ecl17)具有或提及至少一個閃存設(shè)備的前述ec中的任何一項,其中所述至少一個閃存設(shè)備的至少一部分包括下列中的一個或多個:單級單元(slc)閃存技術(shù)存儲單元,以及多級單元(mlc)閃存技術(shù)存儲單元。ec118)具有或提及至少一個閃存設(shè)備的前述ec中的任何一項,其中所述至少一個閃存設(shè)備的至少一部分包括下列中的一個或多個:基于多晶硅技術(shù)的電荷存儲單元,以及基于氮化硅技術(shù)的電荷存儲單元。ecl19)具有或提及至少一個閃存設(shè)備的前述ec中的任何一項,其中所述至少一個閃存設(shè)備的至少一部分包括下列中的一個或多個:基于二維技術(shù)的閃存存儲器技術(shù),以及基于三維技術(shù)的閃存存儲器技術(shù)。系統(tǒng)在某些實施例中,i/o設(shè)備,諸如ssd包括ssd控制器。ssd控制器用作ssd的主機接口和nvm之間的橋,并且執(zhí)行經(jīng)由ssd的主機接口從計算主機發(fā)送的主機協(xié)議的命令。這些命令中的至少一些引導(dǎo)ssd分別地利用從計算主機發(fā)送的數(shù)據(jù)和發(fā)送至計算主機的數(shù)據(jù)來寫和讀nvm。在進一步實施例中,ssd控制器被啟用以利用一映射以在主機協(xié)議的lba和nvm中的物理存儲地址之間進行轉(zhuǎn)換。在進一步實施例中,此映射的至少一部分被用于i/o設(shè)備的私有存儲(對計算主機不可見)。例如,不可被計算主機訪問的lba的一部分被i/o設(shè)備用來管理對日志、統(tǒng)計資料或其它私有數(shù)據(jù)的訪問。在某些實施例中,訪問nvm中變化大小的量的壓縮數(shù)據(jù)在某些使用場景中提供了改進的存儲效率。例如,ssd控制器從計算主機接收(未壓縮的)數(shù)據(jù)(例如,與盤寫命令有關(guān))、壓縮此數(shù)據(jù)并將經(jīng)壓縮的數(shù)據(jù)存儲到閃存存儲器中。響應(yīng)于來自計算主機的后續(xù)請求(例如,與盤讀命令有關(guān)),ssd控制器從閃存存儲器中讀取經(jīng)壓縮的數(shù)據(jù),解壓縮此經(jīng)壓縮的數(shù)據(jù)并將未壓縮的數(shù)據(jù)提供至計算主機。此經(jīng)壓縮的數(shù)據(jù)根據(jù)變化大小的量被存儲在閃存存儲器中,此量尺寸由于例如壓縮算法、操作模式和對各種數(shù)據(jù)的壓縮有效性而變化。ssd控制器部分地通過咨詢一包含的映射表以確定頭部被存儲在閃存存儲器中的何處來解壓縮數(shù)據(jù)。ssd控制器解析從閃存存儲器獲得的頭部以確定適當?shù)?壓縮的)數(shù)據(jù)被存儲在閃存存儲器中的何處。ssd控制器解壓縮來自閃存存儲器的適當?shù)臄?shù)據(jù)以產(chǎn)生未壓縮的數(shù)據(jù)以提供至計算主機。在本申請中,解壓縮(uncompress)(和其變型)與去壓縮(decompress)(和其變型)同義。在各實施例中,ssd控制器包括:主機接口,用于與計算主機對接;接口,用于與nvm(諸如閃存存儲器)對接;以及電路,用于控制多個接口并執(zhí)行(和/或控制執(zhí)行的各方面)壓縮和解壓縮,以及較低級別冗余和/或錯誤糾正、較高級別冗余和/或錯誤糾正,和利用獨立硅元素的動態(tài)較高級別冗余模式管理。根據(jù)各實施例,一些主機接口與下列中的一個或多個兼容:usb接口標準、cf接口標準、mmc接口標準、emmc接口標準、迅雷(thunderbolt)接口標準、ufs接口標準、sd接口標準、記憶棒接口標準、xd圖片卡接口標準、ide接口標準、sata接口標準、scsi接口標準、sas接口標準和pcie接口標準。根據(jù)各實施例,計算主機下列的全部或任何部分:計算機、工作站計算機、服務(wù)器計算機、存儲服務(wù)器、san、nas設(shè)備、das設(shè)備、存儲器具、pc、膝上型計算機、筆記本計算機、上網(wǎng)本計算機、平板設(shè)備或計算機、超極本計算機、電子閱讀設(shè)備(諸如電子閱讀器)、pda、導(dǎo)航系統(tǒng)、(手持式)gps設(shè)備、汽車控制系統(tǒng)、汽車媒體控制系統(tǒng)或計算機、打印機、復(fù)印機或傳真機或一體化設(shè)備、pos設(shè)備、收銀機、媒體播放器、電視、媒體記錄器、dvr、數(shù)碼相機、蜂窩手持機、無繩電話手持機和電子游戲。在某些實施例中,接口主機(諸如sas/sata橋)操作作為計算主機和/或作為到計算主機的橋。在各實施例中,ssd控制器包括一個或多個處理器。處理器執(zhí)行固件以控制和/后執(zhí)行ssd控制器的操作。ssd控制器與計算主機進行通信以發(fā)送和接收命令和/或狀態(tài)以及數(shù)據(jù)。計算主機執(zhí)行操作系統(tǒng)、驅(qū)動器和應(yīng)用中的一個或多個。由計算主機與ssd控制器的通信可選地和/或選擇性地是經(jīng)由驅(qū)動器和/或經(jīng)由應(yīng)用。在第一示例中,到ssd控制器的所有通信是經(jīng)由驅(qū)動器,并且此應(yīng)用將較高級別命令提供至驅(qū)動器,該驅(qū)動器將所述命令轉(zhuǎn)換成用于ssd控制器的特定命令。在第二示例中,驅(qū)動器實現(xiàn)旁路模式并且此應(yīng)用被啟用以經(jīng)由驅(qū)動器將特定命令發(fā)送至ssd控制器。在第三示例中,pciessd控制器支持一個或多個虛函數(shù)(vf),使得一應(yīng)用,一旦被配置,能夠繞過驅(qū)動器直接地與ssd控制器通信。根據(jù)各實施例,一些ssd與被磁性和/或光學(xué)非易失性存儲(諸如hdd、cd驅(qū)動和dvd驅(qū)動)使用的形成因素、電接口和/或協(xié)議兼容。在各實施例中,ssd利用零個或多個奇偶校驗碼、零個或多個rs碼、零個或多個bch碼、零個或多個維特比(viterbi)碼或其它格子(trellis)碼以及零個或多個ldpc碼的各種組合。圖1a示出了ssd的實施例的選擇的細節(jié),該ssd包括ssd控制器,該ssd控制器提供用于nvm的混合粒度較高級別冗余。ssd控制器是用于管理非易失性存儲,諸如經(jīng)由nvm元件(例如,閃存存儲器)來實現(xiàn)。ssd控制器100經(jīng)由一個或多個外部接口110被通信地耦合至主機(未示出)。根據(jù)各實施例,外部接口110是下列中的一個或多個:sata接口、sas接口、pcie接口、光纖通道接口、以太網(wǎng)接口(諸如10吉比特以太網(wǎng))、在前接口中的任何一個的非標準版本、自定義接口或用于互連存儲和/或通信和/或計算設(shè)備的任何其它類型的接口。例如,在某些實施例中,ssd控制器100包括sata接口和pcie接口。ssd控制器100經(jīng)由一個或多個設(shè)備接口190進一步被通信地耦合至nvm199,該nvm199包括一個或多個存儲設(shè)備,諸如閃存設(shè)備192的一個或多個實例。根據(jù)各實施例,設(shè)備接口190是下列中的一個或多個:異步接口、同步接口、單數(shù)據(jù)率(sdr)接口、雙倍數(shù)據(jù)率(ddr)接口、dram兼容ddr或ddr2同步接口、onfi兼容接口(諸如onfi2.2或onfi3.0兼容接口)、觸發(fā)模式兼容閃存接口、在前接口中的任何一個的非標準版本、自定義接口或用于連接到存儲設(shè)備的任何其它類型的接口。在某些實施例中,閃存設(shè)備192中的每一個具有一個或多個單獨的閃存管芯194。根據(jù)閃存設(shè)備192中的特定一個的類型,可選地和/或選擇性地并行訪問特定閃存設(shè)備192中的多個閃存管芯194。閃存設(shè)備192僅表示能夠通信地耦合至ssd控制器100的一種類型的存儲設(shè)備。在各實施例中,任意類型的存儲設(shè)備是可用的,諸如slcnand閃存存儲器、mlcnand閃存存儲器、nor閃存存儲器、利用基于多晶硅或氮化硅技術(shù)的電荷存儲單元的閃存存儲器、基于二維或三維技術(shù)的閃存存儲器、只讀存儲器、靜態(tài)隨機存取存儲器、動態(tài)隨機存取存儲器、鐵磁存儲器、相變存儲器、賽道(racetrack)存儲器、reram或任何其它類型的存儲設(shè)備或存儲介質(zhì)。根據(jù)各實施例,設(shè)備接口190被組織成:一個或多個總線,其中每一總線具有閃存設(shè)備192的一個或多個實例;一組或多組總線,其中每一總線具有閃存設(shè)備192的一個或多個實例,該一組或多組總線具有通常并行訪問的成組總線;或閃存設(shè)備192的一個或多個實例到設(shè)備接口190上的任何其它組織。在圖1a中繼續(xù),ssd控制器100具有一個或多個模塊,諸如主機接口111、數(shù)據(jù)處理121、緩沖器131、映射141、反復(fù)循環(huán)器151、ecc161、設(shè)備接口邏輯191和cpu171。在圖1a中所示的特定模塊和互連僅僅表示一個實施例,并且構(gòu)想模塊中的一些或全部以及未示出的附加模塊的很多布置和互連。在第一示例中,在某些實施例中,存在兩個或多個主機接口111以提供雙進入端口。在第二示例中,在某些實施例中,數(shù)據(jù)處理121和/或ecc161與緩沖器131結(jié)合。在第三示例中,在某些實施例中,主機接口111被直接地耦合至緩沖器131,并且數(shù)據(jù)處理121可選地和/或選擇性地對存儲在緩沖器131中的數(shù)據(jù)進行操作。在第四示例中,在某些實施例中,設(shè)備接口邏輯191被直接地耦合至緩沖器131,并且ecc161可選地和/或選擇性地對存儲在緩沖器131中的數(shù)據(jù)進行操作。主機接口111經(jīng)由外部接口110發(fā)送和接收命令和/或數(shù)據(jù),并且在某些實施例中經(jīng)由標簽跟蹤113跟蹤各個命令的進展。例如,這些命令包括規(guī)定要讀取的地址(諸如lba)和數(shù)據(jù)的量(諸如lba量的數(shù)量,例如,扇區(qū)數(shù))的讀命令;作為響應(yīng),ssd提供讀狀態(tài)和/或讀數(shù)據(jù)。再例如,這些命令包括規(guī)定要寫入的地址(諸如lba)和數(shù)據(jù)的量(諸如lba量的數(shù)量,例如,扇區(qū)數(shù))的寫命令;作為響應(yīng),ssd提供寫狀態(tài)和/或請求寫數(shù)據(jù)并且隨后可選地提供寫狀態(tài)。又例如,這些命令包括規(guī)定不再需要被分配的一個或多個地址(諸如一個或多個lba)的解除分配命令(例如,修剪命令);作為響應(yīng)ssd因此修改映射并且可選地提供解除分配狀態(tài)。在某些情景中,ata兼容的修剪命令是示例性的解除分配命令。又例如,這些命令包括超級電容器測試命令或數(shù)據(jù)硬化成功查詢;作為響應(yīng),ssd提供適當?shù)臓顟B(tài)。在某些實施例中,主機接口111與sata協(xié)議兼容并且利用ncq命令,使得主機接口111能夠具有多達32個待決命令,每一個命令具有被表示為從0到31的數(shù)的唯一的標簽。在某些實施例中,標簽跟蹤113被啟用以將用于經(jīng)由外部接口110接收的命令的外部標簽與用于在由ssd控制器100處理期間跟蹤命令的內(nèi)部標簽聯(lián)系起來。根據(jù)各實施例,下列中的一個或多個:數(shù)據(jù)處理121可選地和/或選擇性地處理在緩沖器131和外部接口110之間發(fā)送的一些或全部數(shù)據(jù);以及數(shù)據(jù)處理121可選地和/或選擇性地處理存儲在緩沖器131中的數(shù)據(jù)。在某些實施例中,數(shù)據(jù)處理121利用一個或多個引擎123來執(zhí)行下列中的一個或多個:格式化、重新格式化、轉(zhuǎn)碼以及任何其它數(shù)據(jù)處理和/或操縱任務(wù)。緩沖器131存儲從設(shè)備接口190被送至外部接口110/從外部接口110被送至設(shè)備接口190的數(shù)據(jù)。在某些實施例中,緩沖器131此外存儲系統(tǒng)數(shù)據(jù),諸如被ssd控制器100用來管理閃存設(shè)備192的一個或多個實例的一些或全部映射表。在各實施例中,緩沖器131具有下列中的一個或多個:用于數(shù)據(jù)的暫時存儲的存儲器137、用于控制到和/或來自緩沖器131的數(shù)據(jù)的移動的dma133以及用于提供較高級別錯誤糾正和/或冗余功能以及其它數(shù)據(jù)移動和/或操縱功能。較高級別冗余功能的示例是類raid能力(例如,rasie),具有閃存設(shè)備級別(例如,多個閃存設(shè)備192)和/或代替盤級別的閃存管芯(例如,閃存管芯194)級別下的冗余。根據(jù)各實施例,下列中的一個或多個:ecc161可選地和/或選擇性地處理在緩沖器131和設(shè)備接口190之間發(fā)送的一些或全部數(shù)據(jù);以及ecc161可選地和/或選擇性地處理存儲在緩沖器131中的數(shù)據(jù)。在某些實施例中,ecc161被用于提供較低級別錯誤糾正和/或冗余功能,諸如根據(jù)一個或多個ecc技術(shù)。在某些實施例中,ecc161執(zhí)行下列中的一個或多個:crc碼、漢明(hamming)碼、rs碼、bch碼、ldcp碼、維特比碼、格子碼、硬判決碼、軟判決碼、基于擦除的代碼、任何錯誤檢測和/或糾正碼以及在前項的任意組合。在某些實施例中,ecc161包括一個或多個解碼器(諸如ldcp解碼器)。設(shè)備接口邏輯191經(jīng)由設(shè)備接口190控制閃存設(shè)備192的實例。設(shè)備接口邏輯191被啟用以根據(jù)閃存設(shè)備192的協(xié)議將數(shù)據(jù)發(fā)送至閃存設(shè)備192的實例/從閃存設(shè)備192的實例發(fā)送數(shù)據(jù)。設(shè)備接口邏輯191包括調(diào)度193,用于經(jīng)由設(shè)備接口190選擇性地順序控制閃存設(shè)備192的實例。例如,在某些實施例中,調(diào)度193被啟用以使對閃存設(shè)備192的實例的操作排隊,并且在閃存設(shè)備192(或閃存管芯194)的實例中的各個實例可用時選擇性地發(fā)送對閃存設(shè)備192(或閃存管芯194)的實例中的各個實例的操作。映射141在用在外部接口110上的數(shù)據(jù)尋址和用在設(shè)備接口190上的數(shù)據(jù)尋址之間轉(zhuǎn)換,利用表143來將外部數(shù)據(jù)地址映射到nvm199中的位置。例如,在某些實施例中,映射141經(jīng)由通過表143所提供的映射將用在外部接口110上的lba轉(zhuǎn)換至以一個或多個閃存管芯194為目標的塊和/或頁面地址。對于自驅(qū)動制造或解除分配以來從未被寫入的lba,若讀取lba,則映射指向默認值以返回。例如,當處理解除分配命令時,映射被修改從而使得對應(yīng)于經(jīng)解除分配的lba的條目指向默認值中的一個。在各實施例中,存在各種默認值,每一默認值具有相應(yīng)的指針。此多個默認值使得將一些解除分配的lba(諸如在第一范圍中)解讀為一個默認值,同時將其它解除分配的lba(諸如在第二范圍中)解讀為另一默認值成為可能。在各實施例中,這些默認值由閃存存儲器、硬件、固件、命令和/或原始參數(shù)和/或參量、可編程寄存器或其各種組合進行限定。在某些實施例中,映射141利用表143來執(zhí)行和/或查找在用在外部接口110上的地址和用在設(shè)備接口190上的數(shù)據(jù)尋址之間的翻譯。根據(jù)各實施例,表143是下列中的一個或多個:一級映射、二級映射、多級映射、映射高速緩存、壓縮的映射、從一個地址空間到另一地址空間的任意類型的映射以及前述項的任意組合。根據(jù)各實施例,表143包括下列中的一個或多個:靜態(tài)隨機存取存儲器、動態(tài)隨機存取存儲器、nvm(諸如閃存存儲器)、高速緩存存儲器、片上存儲器、片外存儲器以及前述項的任意組合。在某些實施例中,反復(fù)循環(huán)器151執(zhí)行垃圾收集。例如,在某些實施例中,閃存設(shè)備192的實例包含在多個塊是可重寫的之前必須被擦除的多個塊。反復(fù)循環(huán)器151被啟用以諸如通過掃描由映射141所維持的映射來確定閃存設(shè)備192的實例的哪些部分是積極使用中(例如,分配的代替解除分配的),并且使得閃存設(shè)備192的實例的未使用(例如,解除分配的)部分可用以用于通過擦除未使用的部分來寫入。在進一步實施例中,反復(fù)循環(huán)器151被啟用以移動存儲在閃存設(shè)備192的實例內(nèi)的數(shù)據(jù)以使得閃存設(shè)備192的實例的較大連續(xù)部分可用以用于寫入。在某些實施例中,閃存設(shè)備192的實例被選擇性地和/或動態(tài)地配置、管理和/或使用以具有一個或多個帶,用于存儲不同類型和/或性質(zhì)的數(shù)據(jù)。這些帶的數(shù)量、布置、尺寸和類型是動態(tài)可變的。例如,來自計算主機的數(shù)據(jù)被寫入熱(活躍)帶中,而來自反復(fù)循環(huán)器151的數(shù)據(jù)被寫入冷(較不活躍)帶中。在某些使用場景中,如果計算主機寫入長的順序流,則熱帶的尺寸增長,然而如果計算主機做隨機寫入或較少寫入,則冷帶的尺寸增長。cpu171控制ssd控制器100的各種部分。cpu171包括cpu核172。根據(jù)各實施例,cpu核172是一個或多個單核或多核處理器。在某些實施例中,cpu核172中的各個處理器核是多線程的。cpu核172包括指令和/或數(shù)據(jù)高速緩存和/或存儲器。例如,指令存儲器包含指令,用于使得cpu核172能夠執(zhí)行程序(例如,軟件,有時稱為固件)來控制ssd控制器100。在某些實施例中,由cpu核172所執(zhí)行的固件中的一些或全部被存儲在閃存設(shè)備192的實例上(如所示的,例如,如圖1b中的nvm199的固件106)。在各實施例中,cpu171進一步包括:命令管理173,用于當命令在進行中時經(jīng)由外部接口110跟蹤和控制所接收的命令;緩沖器管理175,用于控制緩沖器131的分配和使用;翻譯管理177,用于控制映射141;一致性管理179,用于控制數(shù)據(jù)尋址的一致性并且避免諸如在外部數(shù)據(jù)訪問和回收數(shù)據(jù)訪問之間的沖突;設(shè)備管理181,用于控制設(shè)備接口邏輯191;身份管理182,用于控制標識信息的修改和通信;以及可選地其它管理單元。根據(jù)各實施例,由cpu171所執(zhí)行的管理功能中的沒有一個、任何一個或全部由硬件、軟件(諸如在cpu核172或經(jīng)由外部接口110連接的主機上執(zhí)行的固件)或其任意組合來控制和/或管理。在某些實施例中,cpu171被啟用以執(zhí)行其它管理任務(wù),諸如下列中的一個或多個:收集和/或報告性能統(tǒng)計;實現(xiàn)smart;控制電力排序、控制和/或監(jiān)視和/或調(diào)節(jié)電力消耗;響應(yīng)于電源故障;控制和/或監(jiān)視和/或調(diào)節(jié)時鐘速率;以及其它管理任務(wù)。各實施例包括計算主機閃存控制器,該計算主機閃存控制器類似于ssd控制器100并且與諸如經(jīng)由主機接口111和/或外部接口110的適應(yīng)的利用各計算主機的操作兼容。各計算主機包括下列中的一個或任意組合:計算機、工作站計算機、服務(wù)器計算機、存儲服務(wù)器、san、nas設(shè)備、das設(shè)備、存儲器具、pc、膝上型計算機、筆記本計算機、上網(wǎng)本計算機、平板設(shè)備或計算機、超極本計算機、電子閱讀設(shè)備(諸如電子閱讀器)、pda、導(dǎo)航系統(tǒng)、(手持式)gps設(shè)備、汽車控制系統(tǒng)、汽車媒體控制系統(tǒng)或計算機、打印機、復(fù)印機或傳真機或一體化設(shè)備、pos設(shè)備、收銀機、媒體播放器、電視、媒體記錄器、dvr、數(shù)碼相機、蜂窩手持機、無繩電話手持機和電子游戲。在各實施例中,ssd控制器(或計算主機閃存控制器)的全部或任意部分在單個ic、多管芯ic的單個管芯、多管芯ic的多個晶?;蚨鄠€ic上實現(xiàn)。例如,緩沖器131在與ssd控制器100的其它元件相同的管芯上實現(xiàn)。再例如,緩沖器131在與ssd控制器100的其它元件不同的管芯上實現(xiàn)。圖1b示出了包括圖1a的ssd的一個或多個實例的系統(tǒng)的各實施例的選擇的細節(jié)。ssd101包括經(jīng)由設(shè)備接口190耦合至nvm199的ssd控制器100。此圖示出了各種類別的實施例:單個ssd直接地耦合至主機;多個ssd,每一ssd經(jīng)由相應(yīng)的外部接口分別直接地耦合至主機;以及一個或多個ssd經(jīng)由各種互連元件直接地耦合至主機。作為單個ssd直接地耦合至主機的示例性實施例,ssd101的一個實例經(jīng)由外部接口110被直接地耦合至主機102(例如,開關(guān)/構(gòu)造/中間控制器103被省略、繞過或穿過)。作為多個ssd中的每一個經(jīng)由相應(yīng)的外部接口直接地耦合至主機的示例性實施例,ssd101的多個實例中的每一個經(jīng)由外部接口110的相應(yīng)的實例被分別直接地耦合至主機102(例如,開關(guān)/構(gòu)造/中間控制器103被省略、繞過或穿過)。作為一個或多個ssd經(jīng)由各種互連元件直接地耦合至主機的示例性實施例,ssd101的一個或多個實例中的每一個被分別地間接地耦合至主機102。每一間接的耦合是經(jīng)由耦合至開關(guān)/構(gòu)造/中間控制器103的外部接口110的相應(yīng)的實例,以及耦合至主機102的中間接口104。包括開關(guān)/構(gòu)造/中間控制器103的實施例中的一些還包括經(jīng)由存儲器接口180耦合并且可由ssd訪問的卡存儲器112c。在各實施例中,ssd中的一個或多個、開關(guān)/構(gòu)造/中間控制器和/或卡存儲器被包括在物理可識別模塊、卡或可插式元件(例如,i/o卡116)上。在某些實施例中,ssd101(或其變型)對應(yīng)于被耦合至作為主機102操作的啟動器的sas驅(qū)動或sata驅(qū)動。主機102被啟用以執(zhí)行主機軟件115的各實施例,諸如os105、驅(qū)動器107、應(yīng)用109和多設(shè)備管理軟件114的各種組合。點線箭頭107d表示主機軟件←→i/o設(shè)備通信,例如,至/從ssd101的實例中的一個或多個發(fā)送/接收以及從/至經(jīng)由驅(qū)動器107的os105、驅(qū)動器107和經(jīng)由驅(qū)動器107或直接地作為vf的應(yīng)用109中的任意一個或多個發(fā)送/接收的數(shù)據(jù)。os105包括驅(qū)動器(由驅(qū)動器107概念性地示出)和/或被啟用以利用驅(qū)動器(由驅(qū)動器107概念性地示出)進行操作以用于與ssd進行對接。windows的各種版本(例如,95、98、me、nt、xp、2000、server、vista和7)、linux的各種版本(例如,redhat、debian和ubuntu)和macos的各種版本(例如,8、9和x)是os105的示例。在各種實施例中,驅(qū)動器是利用標準界面和/或協(xié)議(諸如sata、ahci或nvmexpress)可操作的標準的和/或通用的驅(qū)動器(有時術(shù)語表達為“壓縮打包的”或“預(yù)安裝的”)或是可選地定制的和/或供應(yīng)商專用的以使得命令的使用能夠針對ssd101。一些驅(qū)動和/或驅(qū)動器具有穿過(pass-through)模式以使得應(yīng)用級別程序(諸如應(yīng)用109)能夠經(jīng)由優(yōu)化的nand訪問(有時術(shù)語表達為ona)或直接的nand訪問(有時術(shù)語表達為dna)技術(shù)將命令直接地傳送至ssd101,使得即使在利用通用驅(qū)動器的情況下定制應(yīng)用能夠針對ssd101使用命令。ona技術(shù)包括下列中的一個或多個:非標準修改器(暗示)的使用;供應(yīng)商特定的命令的使用;非標準統(tǒng)計的通信,諸如根據(jù)壓縮性的實際nvm使用;以及其它技術(shù)。dna技術(shù)包括下列中的一個或多個:提供對nvm的未映射的讀、寫和/或擦除訪問的非標準或供應(yīng)商特定命令的使用;諸如通過繞過i/o設(shè)備否則會做的數(shù)據(jù)的格式化提供對nvm的更直接訪問的非標準或供應(yīng)商特定命令的使用;以及其它技術(shù)。驅(qū)動器的示例是:沒有ona或dna支持的驅(qū)動器、ona啟用的驅(qū)動器、dna啟用的驅(qū)動器和ona/dna啟用的驅(qū)動器。驅(qū)動器的進一步示例是:供應(yīng)商提供的、供應(yīng)商開發(fā)的和/或開發(fā)商增強的驅(qū)動器以及客戶提供的、客戶開發(fā)的和/或客戶增強的驅(qū)動器。應(yīng)用級別程序的示例是:沒有ona或dna支持的應(yīng)用、ona啟用的應(yīng)用、dna啟用的應(yīng)用和ona/dna啟用的應(yīng)用。點線箭頭109d表示應(yīng)用←→i/o設(shè)備通信(例如,經(jīng)由驅(qū)動器繞過或經(jīng)由用于應(yīng)用的vf繞過),例如,與ssd通信的ona啟用的應(yīng)用和ona啟用的驅(qū)動器,諸如在沒有應(yīng)用的情況下將os用作媒介。點線箭頭109v表示應(yīng)用←→i/o設(shè)備通信(例如,經(jīng)由用于應(yīng)用的vf繞過),例如,與ssd通信的dna啟用的應(yīng)用和dna啟用的驅(qū)動器,諸如在沒有應(yīng)用的情況下將os或驅(qū)動器用作媒介。在某些實施例中,nvm199的一個或多個部分被用于固件存儲,例如固件106。固件存儲包括一個或多個固件圖像(或其部分)。例如,固件圖像具有例如由ssd控制器100的cpu核172執(zhí)行的固件的一個或多個圖像。再例如,固件圖像具有例如在固件執(zhí)行期間被cpu核引用的常量、參數(shù)值和nvm設(shè)備信息的一個或多個圖像。固件的圖像例如對應(yīng)于當前的固件圖像以及零或多個先前(相對于固件更新)固件圖像。在各實施例中,固件提供通用、標準、ona和/或dna操作模式。在某些實施例中,固件操作模式中的一個或多個經(jīng)由可選地由驅(qū)動器通信和/或提供的密鑰或各種軟件技術(shù)來啟用(例如,一個或多個api被“解鎖”)。在某些實施例中缺乏開關(guān)/構(gòu)造/中間控制器,ssd經(jīng)由外部接口110被直接地耦合至主機。在各實施例中,ssd控制器100經(jīng)由一個或多個中間級別的其它控制器(諸如raid控制器)耦合至主機。在某些實施例中,ssd101(或其變型)對應(yīng)于sas驅(qū)動或sata驅(qū)動并且切換/構(gòu)造/中間控制器103對應(yīng)于擴展器,該擴展器又耦合至啟動器,或替代地,開關(guān)/構(gòu)造/中間控制器103對應(yīng)于橋,該橋經(jīng)由擴展器間接地耦合至啟動器。在某些實施例中,開關(guān)/構(gòu)造/中間控制器103包括一個或多個pcie開關(guān)和/或構(gòu)造。在各實施例中,諸如利用主機102作為計算主機(例如,計算機、工作站計算機、服務(wù)器計算機、存儲服務(wù)器、san、nas設(shè)備、das設(shè)備、存儲器具、pc、膝上型計算機、筆記本計算機和/或上網(wǎng)本計算機)的實施例中的一些,計算主機可選地能夠與一個或多個本地和/或遠程服務(wù)器(例如,可選的服務(wù)器118)通信(例如,經(jīng)由可選的i/o&存儲設(shè)備/資源117和可選的lan/wan119)。例如,此通信使得ssd101元件中的任何一個或多個的本地和/或遠程訪問、管理和/或使用成為可能。在某些實施例中,此通信是完全地或部分地經(jīng)由以太網(wǎng)。在某些實施例中,此通信是完全地或部分地經(jīng)由光纖通道。在各實施例中,lan/wan119表示一個或多個局域網(wǎng)和/或廣域網(wǎng),諸如服務(wù)器群中的網(wǎng)絡(luò)、耦合服務(wù)器群的網(wǎng)絡(luò)、大都市區(qū)域網(wǎng)絡(luò)和因特網(wǎng)。在各實施例中,ssd控制器和/或計算主機閃存控制器結(jié)合一個或多個nvm一起被實現(xiàn)為非易失性存儲部件,諸如usb存儲部件、cf存儲部件、mmc存儲部件、emmc存儲部件、迅雷存儲部件、ufs存儲部件、sd存儲部件、記憶棒存儲部件和xd圖片卡存儲部件。在各實施例中,ssd控制器(或計算主機閃存控制器)的全部或任意部分,或其功能在將要與控制器耦合的主機(例如,圖1b中的主機102)中實現(xiàn)。在各實施例中,ssd控制器(或計算主機閃存控制器)的全部或任意部分,或其功能經(jīng)由硬件(例如,邏輯電路)、軟件和/或固件(例如,驅(qū)動器軟件和/或ssd控制固件)或其任意組合來實現(xiàn)。例如,ecc單元(諸如類似于圖1a的ecc161和/或ecc-x135)的功能或與ecc單元(諸如類似于圖1a的ecc161和/或ecc-x135)相關(guān)聯(lián)的功能部分地經(jīng)由主機上的軟件并且部分地經(jīng)由ssd控制器中的固件和硬件的組合來實現(xiàn)。再例如,反復(fù)循環(huán)器單元(諸如類似于圖1a的反復(fù)循環(huán)器151)的功能或與反復(fù)循環(huán)器單元(諸如類似于圖1a的反復(fù)循環(huán)器151)相關(guān)聯(lián)的功能部分地經(jīng)由主機上的軟件并且部分地經(jīng)由計算主機閃存控制器中的硬件來實現(xiàn)。映射操作圖2示出了映射lba的lpn部分的實施例的選擇的細節(jié)。在某些實施例中,讀單元是獨立地可讀的nvm的最好的粒度,諸如nvm的一個頁面的一部分。在進一步實施例中,讀單元對應(yīng)于(較低級別)糾錯碼的校驗位(有時術(shù)語表達為冗余)連同由此校驗位保護的所有數(shù)據(jù)。例如,圖1a的ecc161經(jīng)由校驗位(諸如經(jīng)由ldpc碼)實現(xiàn)錯誤糾正,并且讀單元對應(yīng)于除了由ldpc編碼位保護的數(shù)據(jù)位之外的實現(xiàn)ldpc碼的編碼位。在某些實施例中,映射141諸如經(jīng)由表143(如圖1a中所示)將lba211的lpn213部分映射到lpn的映射信息221。lpn的映射信息(諸如lpn的映射信息221)有時被術(shù)語表達為映射條目。映射141被稱為將lpn與相應(yīng)的映射條目聯(lián)系起來。在各實施例中,映射是經(jīng)由一個或多個關(guān)聯(lián)的查找、經(jīng)由一個或多個非關(guān)聯(lián)的查找和/或經(jīng)由一個或多個其它技術(shù)。在某些實施例中,ssd控制器100維持潛在地和/或積極地使用的每一lpn的一個映射條目。在某些實施例中,lpn的映射信息221包括相應(yīng)的讀單元地址223和讀單元中的長度225。在某些實施例中,長度和/或跨度例如在讀單元中的長度225的全部或任意部分中諸如通過將長度存儲為距跨度的偏移被存儲為編碼的。在進一步實施例中,第一lpn與第一映射條目相關(guān)聯(lián),第二lpn(不同于第一lpn,但是,引用與由第一lpn引用的邏輯頁面相同大小的邏輯頁面)與第二映射條目相關(guān)聯(lián),并且第一映射條目的讀單位的相應(yīng)的長度不同于第二映射條目的讀單位的相應(yīng)的長度。在各實施例中,在相同的時間點,第一lpn與第一映射條目相關(guān)聯(lián),第二lpn(不同于第一lpn)與第二映射條目相關(guān)聯(lián),并且第一映射條目的相應(yīng)的讀單元地址與第二映射條目的相應(yīng)的讀單元地址相同。在進一步實施例中,與第一lpn相關(guān)聯(lián)的數(shù)據(jù)和與第二lpn相關(guān)聯(lián)的數(shù)據(jù)都被存儲在nvm199中的相同設(shè)備的相同物理頁中。根據(jù)各實施例,讀單元地址223與下列中的一個或多個相關(guān)聯(lián):nvm中的起始地址;nvm中的結(jié)束地址;在前項中的任何一個的偏移;以及用于標識與lpn213相關(guān)聯(lián)的nvm的一部分的任何其它技術(shù)。圖3示出了在讀單元地址處訪問nvm以產(chǎn)生被組織為各讀單元(全體地具有以讀單元的量進行測量的長度)的讀數(shù)據(jù)的實施例的選擇的細節(jié)。根據(jù)各實施例,第一讀單元313是下列中的一個或多個:在nvm的地址空間中具有最低地址的讀數(shù)據(jù)311的讀單元中的一個;讀單元中的固定的一個;讀單元中的任意一個;讀單元中的可變的一個;以及由任何其它技術(shù)選擇的讀單元中的一個。在各實施例中,ssd控制器100被啟用以訪問nvm199并且通過讀取不超過由讀單元中的長度225所規(guī)定的多個讀單元來產(chǎn)生讀數(shù)據(jù)311。圖4a示出了如讀單元401a的讀單元(諸如圖3的讀單元313或315)的實施例的選擇的細節(jié)。在各實施例和/或使用場景中,頭部(header)1411a到頭部n419a是連續(xù)的,并且由頭部中的每一個所標識的(諸如經(jīng)由相應(yīng)的偏移)相應(yīng)的數(shù)據(jù)區(qū)域是連續(xù)的,跟隨著頭部中的最后一個。這些數(shù)據(jù)區(qū)域共同地形成數(shù)據(jù)字節(jié)421a。這些數(shù)據(jù)區(qū)域以匹配存儲這些頭部的位置順序的位置順序進行存儲。例如,考慮到第一頭部在讀單元的開始處,使得第二頭部和第三頭部連續(xù)地跟隨第一頭部。第一數(shù)據(jù)區(qū)域(由第一頭部中的第一偏移標識)連續(xù)地跟隨第三頭部。第二數(shù)據(jù)區(qū)域(由第二頭部中的第二偏移標識)連續(xù)地跟隨第一數(shù)據(jù)區(qū)域。類似地,第三數(shù)據(jù)區(qū)域(由第三頭部標識)連續(xù)地跟隨第二數(shù)據(jù)區(qū)域。圖4b示出了如讀單元401b的讀單元(諸如圖3的讀單元313或315)的另一實施例的選擇的細節(jié)。在各實施例和/或使用場景中,頭部標記(hm)410b是指示若干下面的連續(xù)頭部(頭部1411b、頭部2412b.…..頭部n419b)的可選的初始字段(諸如一個字節(jié)字段)。數(shù)據(jù)區(qū)域(數(shù)據(jù)字節(jié)421b、數(shù)據(jù)字節(jié)422b……數(shù)據(jù)字節(jié)429b)由頭部(頭部1411b、頭部2412b……頭部n419b)分別地進行標識并且以與存儲這些頭部的位置順序相反的位置順序進行存儲。頭部在讀單元的起始處開始,然而相應(yīng)的數(shù)據(jù)區(qū)域在讀單元的結(jié)束處開始。在一些實施例中,在數(shù)據(jù)區(qū)域內(nèi)的數(shù)據(jù)字節(jié)(例如,數(shù)據(jù)字節(jié)421b、數(shù)據(jù)字節(jié)422b……數(shù)據(jù)字節(jié)429b)以正序(字節(jié)順序匹配位置順序)進行布置,然而在其它實施例中,數(shù)據(jù)字節(jié)以倒序(字節(jié)順序相對于位置順序反向)進行布置。在某些實施例中,在頭部和數(shù)據(jù)字節(jié)以相同的位置順序進行存儲(例如,如圖4a中所示)的讀單元中使用頭部標記。在某些實施例中,可選的填充字節(jié)431a(或431b)是根據(jù)與特定lpn相關(guān)聯(lián)的數(shù)據(jù)的粒度。例如,在某些實施例中,如果在存儲與全部除了頭部1411a到頭部n419a(或頭部1411b、頭部2412b……頭部n419b)的最后一個有關(guān)的數(shù)據(jù)之后,數(shù)據(jù)字節(jié)421a(或共同地數(shù)據(jù)字節(jié)421b、數(shù)據(jù)字節(jié)422b……數(shù)據(jù)字節(jié)429b)已小于剩余空間的固定量,諸如8字節(jié),則與最后的頭部相關(guān)聯(lián)的lpn的數(shù)據(jù)在隨后的讀單元中開始。在進一步實施例中,在最后的頭部中的特定偏移值(例如,所有的)指示與最后的頭部相關(guān)聯(lián)的lpn的數(shù)據(jù)在隨后的讀單元中開始。圖5示出了具有若干字段的頭部(諸如圖4a的頭部1411a到頭部n419a或圖4b的頭部1411b到頭部419b中的任何一個)的實施例的選擇的細節(jié)。在某些實施例中,頭部是固定長度的(例如,每一頭部是相同數(shù)量的字節(jié)長的)。頭部501包括字段類型511、最后指示器513、標記515、lpn517、長度519和偏移521。類型字段標識數(shù)據(jù)字節(jié)的類別。例如,類型字段指示數(shù)據(jù)字節(jié)的類別是主機數(shù)據(jù)(例如,邏輯頁面數(shù)據(jù))或系統(tǒng)數(shù)據(jù)(例如,映射信息或檢查點信息)中的一個。最后字段指示此頭部是在數(shù)據(jù)字節(jié)之前的最后的頭部。在具有頭部標記的一些實施例中,最后字段可選地被省略。lpn字段是與頭部相關(guān)聯(lián)的lpn。lpn字段通過例如搜索頭部中具有匹配特定lpn的lpn字段的那個,能夠解析頭部以確定與特定lpn相關(guān)聯(lián)的頭部中的特定一個。長度字段是數(shù)據(jù)字節(jié)的以字節(jié)為單位的長度(例如,在與頭部501相關(guān)聯(lián)的數(shù)據(jù)字節(jié)421a中存在多少字節(jié)的數(shù)據(jù))。在某些實施例中,偏移字段中的偏移根據(jù)特定粒度(例如,8字節(jié)粒度)進行四舍五入(rounded)。在各實施例中,與特定lpn相關(guān)聯(lián)的一些或全部信息被存儲在與特定lpn相關(guān)聯(lián)的映射條目、與特定lpn相關(guān)聯(lián)的頭部或兩者中。例如,在某些實施例中,長度519的一些或全部被存儲在映射條目中而不是頭部中。圖6示出了在邏輯片和/或部分中被管理的多個nvm設(shè)備(例如,一個或多個閃存管芯和/或閃存芯片)的塊、頁面和讀單元的實施例的選擇的細節(jié)。此管理功能包括讀、回收、擦除、編程/寫和其它管理功能中的任意一個或多個。邏輯片和/或部分有時被稱為r-塊(r-block)。此圖示出了具有66個閃存管芯的實施例。這些閃存管芯中的三個被明確地示出(閃存管芯610.65、610.1和610.0)并且這些閃存管芯中的63個被隱含地示出(610.64......610.2)。閃存管芯中的每一個(諸如閃存管芯610.65......610.1和610.0中的任意一個)提供被組織為塊(諸如閃存管芯610.65的塊610.65bb......610.65b1和610.65b0;閃存管芯610.0的塊610.0bb......610.0b1和610.0b0;等等)的存儲。這些塊又包括頁面(諸如塊610.65b0的頁面610.65pp......610.65p1和610.65p0;塊610.0b0的頁面610.0pp......610.0p1和610.0p0;等等)。這些頁面又包括讀單元(諸如頁面610.65p0的讀單元610.65rr......610.65r1和610.65r0;頁面610.0p0的讀單元610.0rr......610.0r1和610.0r0;等等)。在某些實施例中,每一閃存管芯包括整數(shù)個塊(例如,n個塊)并且塊是擦除的最小量。在某些實施例中,每一塊包括整數(shù)個頁面并且頁面是寫的最小量。根據(jù)各實施例,下列中的一個或多個:讀單元是讀和錯誤糾正的最小量;每一頁面包括整數(shù)個讀單元;兩個或多個頁面的關(guān)聯(lián)組包括整數(shù)個讀單元;以及讀單元可選地和/或選擇性地跨越頁面邊界。在各實施例中,各種nvm管理功能(例如,讀、回收、擦除和/或編程/寫)是以r-塊為單位執(zhí)行的。r-塊被例示為跨閃存存儲器的所有管芯的邏輯片或部分。例如,在具有r個閃存管芯,每一閃存管芯具有n個塊的閃存存儲器中,對于總的n個r-塊,每一r-塊是合起來的來自閃存管芯中的每一個的第i個塊。再例如,在具有r個閃存管芯,每一個閃存管芯具有n個塊的閃存存儲器中,對于總的n/2個r-塊,每一r-塊是來自閃存管芯中的每一個的第i個塊和第i+1個塊。又例如,在具有多個雙平面設(shè)備的閃存存儲器中,每一r-塊是來自雙平面設(shè)備中的每一個的第i個偶數(shù)塊和第i個奇數(shù)塊。在具有成對地或以其它關(guān)聯(lián)組地看作形成r-塊的一部分的塊的各實施例中,來自塊的關(guān)聯(lián)組中的每一塊的相應(yīng)的頁面也被看作至少用于寫入的單元,形成了較大的多塊頁面。例如,繼續(xù)前述的雙平面示例,偶數(shù)塊中的特定一個的第一頁面和奇數(shù)塊中的相關(guān)聯(lián)的一個的第一頁面被看作用于寫入的單元,并且可選地和/或選擇性地被看作用于讀取的單元。類似地,特定偶數(shù)塊的第二頁面和相關(guān)聯(lián)的奇數(shù)塊的第二頁面被看作一單元。根據(jù)各實施例,如本文中所使用的nvm的頁面指下列中的一個或多個:nvm的單個頁面;nvm的多塊頁面;可選地和/或選擇性地被看作用于讀取的一個或多個單獨頁面的用于寫入的nvm的多塊頁面;以及nvm的頁面的任何其它分組或關(guān)聯(lián)。此圖示出了多個說明性的r-框,它們中的三個明確地示出(660.0、660.1和660.r)。每一說明性r-塊是合起來的來自閃存管芯中的每一個的第i個塊。例如,r-塊660.0是來自閃存管芯610.65的塊610.65b0、來自閃存管芯610.64的塊0(未明確地示出)以及以此類推到閃存管芯610.1的塊610.1b0,以及閃存管芯610.0的塊610.0b0。由于每一閃存管芯存在n個塊,因此存在總的n個r-塊(r-塊660.r……r-塊660.1和r-塊660.0)。r-塊的另一示例是合起來的來自閃存管芯中的每一個的第i個塊和第i+1個塊(例如,來自閃存管芯610.65的塊610.65b0和610.65b1、來自閃存管芯610.64的塊0和1以及以此類推到來自閃存管芯610.1的塊610.1b0和610.1b1,以及來自閃存管芯610.0的塊610.0b0和610.0b1)。因此存在n/2個r-塊,如果在每一閃存管芯中存在n個塊的話。r-塊的又一示例是來自多個雙平面設(shè)備中的每一個的第i個偶數(shù)和奇數(shù)塊。構(gòu)想用于作為r-塊管理的閃存管芯塊的其它布置,包括在虛擬和物理塊地址之間映射以確保r-塊具有來自每一管芯的一個塊,即使一些塊是不可操作的。在各實施例中,每一閃存管芯中的n個塊中的一些被用作備件從而使得在虛擬和物理塊地址之間的映射具有備用(否則不使用的)塊來代替r-塊中的多個塊中的有缺陷的塊。在各實施例中,在閃存管芯中的信息的讀和/或?qū)懯歉鶕?jù)順序(諸如‘讀單元優(yōu)先’順序或‘頁面優(yōu)先’順序)來執(zhí)行的。用于圖中所示的讀單元的讀單元優(yōu)先順序的示例以讀單元610.0r0開始,接著是610.1r0......610.65r0、610.0r1、610.1r1......610.65r1,并且以此類推,以610.65rr結(jié)束。用于圖中所示的讀單元的頁面優(yōu)先順序的示例以讀單元610.0r0開始,接著是610.0r1......610.0rr、610.1r0、610.1r1......610.1rr......610.65r0、610.65r1,并且以此類推,以610.65rr結(jié)束。在各實施例中,在r-塊內(nèi)的寫入和/或剝離(striping)順序是跨所有設(shè)備(例如,最低到最高編號的設(shè)備,如由剝離方向600概念地建議的)的頁面(例如,最低的到最高的)優(yōu)先,接著下一最高頁面(跨所有設(shè)備),并且以此類推,貫穿r-塊的最后頁面而繼續(xù)。具體關(guān)于r-塊660.0,示例性順序以頁面610.0p0(閃存管芯610.0的第一個塊中的第一個頁面)開始,接著是頁面610.1p0(閃存管芯610.1的第一個塊中的第一個頁面),并且以此類推繼續(xù)至頁面610.65p0(閃存管芯610.65的第一個塊并且r-塊660.0的最后一個塊中的第一個頁面)。此示例性順序以頁面610.0p1(閃存管芯610.0的第一個塊中的第二個頁面)繼續(xù),接著是頁面610.1p1(閃存管芯610.1的第一個塊中的第二個頁面),并且以此類推繼續(xù)至頁面610.65p1(閃存管芯610.65的第一個塊中的第二個頁面)。此示例以相同的順序繼續(xù)。此示例性順序以頁面610.0pp(閃存管芯610.0的第一個塊中的最后一個頁面)完成,接著是頁面610.1pp(閃存管芯610.1的第一個塊中的最后一個頁面),并且以此類推以頁面610.65pp(閃存管芯610.65的第一個塊中的最后一個頁面,并且r-塊660.0的最后一個塊中的最后一個頁面)結(jié)束。在各實施例中,閃存管芯610.65……610.1和610.0對應(yīng)于圖1a的一個或多個單獨的閃存管芯194中的相應(yīng)的閃存管芯。在某些實施例中,閃存管芯610.65……610.1和610.0是少于全部nvm199的nvm199的一部分。例如,在各實施例中,在多組閃存管芯上數(shù)據(jù)被獨立地剝離,并且多組閃存管芯中的每一個可被獨立地訪問。較高級別冗余技術(shù)圖7示出了較高級別冗余技術(shù)的各實施例的選擇的細節(jié)。閃存設(shè)備720包括64個閃存管芯(如在圖6中明確地和隱含地示出的閃存管芯610.63、610.62、610.61......610.0)并且經(jīng)由接口通道730通信。額外的閃存設(shè)備740包括多達兩個閃存管芯(如在圖6中明確地和隱含地示出的閃存管芯610.65和610.64)并且經(jīng)由額外的接口通道750通信。閃存管芯提供存儲子系統(tǒng)(諸如ssd中的nvm)中的用于較高級別冗余信息的存儲和數(shù)據(jù)存儲(例如,用戶數(shù)據(jù)和/或用戶自由空間)。(在冗余信息和數(shù)據(jù)存儲的背景中的‘用戶數(shù)據(jù)’的示例包括所有數(shù)據(jù),除了存儲在閃存存儲器上以供后期恢復(fù)的冗余信息,諸如操作系統(tǒng)數(shù)據(jù)、應(yīng)用數(shù)據(jù)、ssd管理數(shù)據(jù)等等。)較高級別冗余能夠例如從一個或多個閃存管芯的一個或多個部分的間歇性或永久性故障(諸如為讀操作提供糾錯數(shù)據(jù)(例如,經(jīng)由較低級別ecc功能)的故障或適當?shù)赝瓿蓪懖僮鞯墓收?恢復(fù)。例如,每一閃存管芯(或替代地每一塊或每一塊內(nèi)的每一頁面)在硅獨立元素冗余陣列(rasie)的背景中進行操作。如果在特定閃存管芯中檢測到故障(例如,歸因于特定管芯的塊的一部分的ecc不可糾正的讀錯誤),則作為響應(yīng),存儲在閃存管芯的其它部分的冗余信息被用于確定將已由特定管芯提供的信息。在某些實施例和/或使用場景中,存儲足夠的冗余信息以能夠從一個閃存管芯內(nèi)的一個故障恢復(fù)(在單操作期間)。在能夠從單個故障恢復(fù)的模式中的操作在某些實施例中包括分配和管理等同于一個閃存管芯的空間以用于較高級別冗余信息,并且被術(shù)語表達為‘rasie-1’。在能夠從兩個故障恢復(fù)的模式中的操作在某些實施例中包括分配和管理等同于兩個閃存管芯的空間以用于較高級別冗余信息,并且被術(shù)語表達為‘rasie-2’。在能夠從三個故障恢復(fù)的模式中的操作在某些實施例中包括分配和管理等同于三個閃存管芯的空間以用于較高級別冗余信息,并且被術(shù)語表達為‘rasie-3’。在某些實施例和/或使用場景中,管理管芯級別故障是目標,并且在管芯之中傳播信息被執(zhí)行。例如,較高級別冗余信息被存儲在僅特別分配給較高級別冗余信息的一個或多個管芯中。在某些實施例和/或使用場景中,管理塊級別故障是目標,并且在管芯內(nèi)的塊之中傳播信息被執(zhí)行。例如,較高級別冗余信息被存儲在分配給較高級別冗余信息的一個或多個塊中,此分配不考慮這些塊是哪個特定管芯的一部分。在某些實施例和/或使用場景中,管理特定實體級別故障包括傳播信息從而使得不超過n個元素(例如,rasie-1的1和rasie-2的2)在特定實體的任何一個中。實體的示例包括(封裝的)設(shè)備、管芯、r-塊、塊、r-頁面(本文中其它地方描述)、頁面、與字線相關(guān)聯(lián)的單元格(cells)以及前述項中的一個或多個。較高級別冗余信息根據(jù)寫入閃存管芯的(用戶)數(shù)據(jù)進行計算和寫,并因此是可用的以在檢測到故障時提供信息。在各實施例中,較高級別冗余信息在與較高級別冗余信息相關(guān)聯(lián)的(用戶)數(shù)據(jù)的寫入之前、之后或在相對于與較高級別冗余信息相關(guān)聯(lián)的(用戶)數(shù)據(jù)的寫入無特定時間順序中被寫入閃存管芯。此圖示出了rasie操作模式的各實施例,如在下表中所總結(jié)的。更具體地,在rasie-1模式中,等同于一個管芯的空間被分配給較高級別冗余信息。在rasie-1模式1-0中,額外閃存設(shè)備740未使用,因為較高級別冗余信息被存儲在閃存設(shè)備720的一個管芯(例如,閃存管芯610.63)中,留下63個管芯(閃存管芯610.62......610.0)可用于數(shù)據(jù)存儲(例如,用戶數(shù)據(jù)和/或用戶自由空間)。在rasie-1模式1-1中,額外閃存設(shè)備740的一個管芯被使用(例如,閃存管芯610.64),留下閃存設(shè)備720的全部(64個管芯)可用于數(shù)據(jù)存儲。在rasie-2模式中,等同于兩個管芯的空間被分配給較高級別冗余信息。在rasie-2模式2-0中,額外閃存設(shè)備740未使用,因為較高級別冗余信息被存儲在閃存設(shè)備720的兩個管芯(例如,閃存管芯610.63和閃存管芯610.62)中,留下62個管芯(閃存管芯610.61......610.0)可用于數(shù)據(jù)存儲。在rasie-2模式2-1中,額外閃存設(shè)備740的一個管芯被使用(例如,閃存管芯610.64),因為較高級別冗余信息被部分地存儲在閃存設(shè)備720的一個管芯(例如,閃存管芯610.63)中,留下63個管芯(閃存管芯610.62......610.0)可用于數(shù)據(jù)存儲。在rasie-2模式2-2中,額外閃存設(shè)備740的兩個管芯被使用(例如,閃存管芯610.65和閃存管芯610.64),留下閃存設(shè)備720的全部(64個管芯)可用于數(shù)據(jù)存儲。在某些實施例中,在所有使用場景中未被使用的管芯是未填充的(unpopulated)。例如,在僅在rasie2-0模式和rasie1-0模式(但不在其它rasie模式中)中可操作的系統(tǒng)中,額外閃存設(shè)備740是未填充的。在某些實施例中,較高級別冗余信息被完全地存儲在“專用的”管芯(例如,rasie-1模式1-0中的閃存管芯610.63或rasie-2模式2-2中的閃存管芯610.65和閃存管芯610.64)中。在其它實施例中,較高級別冗余信息被存儲在管芯的任何一個中,因此例如,在rasie-1模式1-0中,閃存管芯610.62被用于較高級別冗余信息,而閃存管芯610.63和閃存管芯610.61......610.0被用于數(shù)據(jù)存儲。在某些實施例和/或使用場景中,較高級別冗余信息隨著時間被存儲在不同的管芯(和/或其部分)中,因此例如,在第一時間周期中,第一閃存管芯保持較高級別冗余信息而在第二時間周期中,第二閃存管芯保持較高級別冗余信息。在各實施例中,取決于多少閃存管芯是可用的,存在多個rasie1-0模式(和多個rasie2-0模式)。例如,在第一個rasie1-0模式(如在上面表中所示)中,閃存管芯610.63存儲較高級別冗余信息,并且閃存管芯610.62……610.0可用于數(shù)據(jù)存儲。在第二個rasie1-0模式中,閃存管芯610.63不再是可用的,閃存管芯610.62存儲較高級別冗余信息,并且閃存管芯610.61……610.0可用于數(shù)據(jù)存儲,減少了一個管芯的可用數(shù)據(jù)存儲量。其中先前可用于數(shù)據(jù)存儲的管芯(或其任意部分)由于此管芯(或此部分)用于較高級別冗余信息而不再可用于數(shù)據(jù)存儲的rasie模式有時被稱為減少容量rasie模式。在某些實施例中,利用與由較高級別冗余信息保護的用戶數(shù)據(jù)相同和/或相似的較低級別冗余和/或誤差糾正編碼方案來存儲較高級別冗余信息。利用較低級別冗余和/或錯誤糾正方案來保護較高級別冗余信息能夠以確定用戶數(shù)據(jù)中的不可糾正的較低級別錯誤的相同和/或相似的方式來確定在較高級別冗余信息中是否存在不可糾正的錯誤。在某些實施例中,較高級別冗余信息針對數(shù)據(jù)的不同部分被存儲在不同的管芯中。例如,在其中閃存管芯以r-塊進行管理的某些實施例,較高級別冗余信息針對不同的r-塊被存儲在不同的閃存管芯中。例如,對于包括閃存管芯610.0的塊0的r-塊的較高級別冗余信息被存儲在閃存管芯610.0中,而對于包括閃存管芯610.0的塊1的r-塊的較高級別冗余信息被存儲在閃存管芯610.1中,并且以此類推。在某些實施例,諸如其中閃存管芯以r-塊進行管理的一些實施例中,在已知和/或?qū)懭胼^高級別冗余信息依賴的數(shù)據(jù)之后,較高級別冗余信息被寫入。在某些使用場景中,nvm元件的一個或多個部分(例如,設(shè)備的塊,諸如圖6的閃存設(shè)備610.0的塊610.0bb)是不可操作的或在操作期間變?yōu)椴豢刹僮鞯?。在某些實施例中,不可操作部分?jīng)由虛擬和物理塊地址(例如,經(jīng)由通過圖1a的映射141和/或表143執(zhí)行的處理)被映射出。替代地,不可操作部分被跳過(而不是明確地映射出)。在基于r-塊的某些實施例中,此跳過導(dǎo)致r-塊中的一些具有不同數(shù)量的塊。例如,如果塊610.0b0是有缺陷的和不可用的,則r-塊660.0比r-塊660.1少了一個塊。較高級別冗余信息被寫在(每一r-塊)可變位置中,該可變位置例如是每一r-塊的最后一個塊。在各實施例中,圖7的一個或多個元件對應(yīng)于圖1a的一個或多個元件。例如,閃存設(shè)備720和額外閃存設(shè)備740共同地對應(yīng)于nvm199,并且接口通道730和額外接口通道750共同地對應(yīng)于設(shè)備接口190。再例如,閃存管芯610.65......610.0共同地對應(yīng)于閃存管芯194的實例。又例如,閃存設(shè)備720和/或額外閃存設(shè)備740的閃存設(shè)備中的一個或多個對應(yīng)于閃存設(shè)備192的實例中的一個或多個。在各實施例中,圖1a中的一個或多個元件根據(jù)本文中所描述的rasie操作模式來管理較高級別冗余信息和/或至少部分地基于此較高級別冗余信息來恢復(fù)用戶數(shù)據(jù)。例如,cpu171的軟件執(zhí)行能力中的一部分被用于根據(jù)各種rasie操作模式來管理較高級別冗余信息的計算。再例如,數(shù)據(jù)處理121和/或ecc-x135包括致力于和/或?qū)S糜诟鶕?jù)各種rasie操作模式的較高級別冗余信息的計算和/或用戶數(shù)據(jù)的恢復(fù)的硬件元件。又例如,ecc161檢測閃存管芯的一部分的ecc不可糾正的(較低級別的)讀錯誤,并且ecc-x135檢測rasie(較高級別)讀錯誤和/或使得其糾正成為可能。在各實施例中,接口通道730不同地具有一、四、八或16個通道,并且額外接口通道750不同地具有一個或兩個通道。在各實施例中,閃存設(shè)備720被實現(xiàn)為一、兩、四、八或16個設(shè)備,每一設(shè)備分別地具有64、32、16、八和四個閃存管芯。在各實施例中,額外閃存設(shè)備740被實現(xiàn)為具有一個或兩個管芯的一個設(shè)備或被實現(xiàn)為每一設(shè)備具有一個管芯的兩個設(shè)備。在某些實施例中,額外閃存設(shè)備740的閃存管芯被實現(xiàn)在也實現(xiàn)閃存設(shè)備720的閃存管芯的設(shè)備中。例如,一個閃存設(shè)備實現(xiàn)66個閃存管芯(閃存管芯610.65......610.0)。再例如,兩個閃存設(shè)備各實現(xiàn)33個閃存管芯,例如在第一個閃存設(shè)備(閃存管芯610.65......610.33)以及在第二個閃存設(shè)備中(閃存管芯610.32......610.0)。構(gòu)想閃存管芯和閃存設(shè)備的其它布置。在使得額外閃存設(shè)備740實現(xiàn)在也實現(xiàn)閃存設(shè)備720的閃存管芯的設(shè)備中的某些實施例中,閃存管芯經(jīng)由共享的接口通道,或替代地經(jīng)由專用于閃存管芯中的特定閃存管芯(或組)的接口通道來通信。雖然閃存設(shè)備720和額外閃存設(shè)備740利用特定數(shù)量的閃存管芯(分別地2和64)而示出,但是構(gòu)想了其它實施例,諸如閃存設(shè)備720具有2、4、8、16、32或128個閃存管芯和/或額外閃存設(shè)備740具有0、1或4個閃存管芯。圖8示出了利用rasie的動態(tài)較高級別冗余模式管理(諸如在由通過圖6和/或圖7所示的各實施例啟用的rasie模式之間動態(tài)地切換)的實施例的選擇的細節(jié)。在某些實施例和/或使用場景中,提供一種從容的退化的形式,其中存儲子系統(tǒng)(例如ssd)從在第一較高級別冗余模式中操作被動態(tài)地轉(zhuǎn)換到在第二較高級別冗余模式中操作。此轉(zhuǎn)換是響應(yīng)于故障(諸如整個閃存管芯或其一個或多個部分,或?qū)ζ涞牟僮?諸如讀或?qū)懖僮?的永久性或間歇性故障)的檢測。根據(jù)各實施例,此轉(zhuǎn)換是下列中的一個或多個:ssd的全局;在ssd的一個或多個子集上執(zhí)行;以及在ssd的一個或多個r-塊、塊和/或頁面上執(zhí)行。例如,如果存儲rasie-2信息的nvm設(shè)備中的一個的特定塊在編程期間失效,則包含此特定(失效的)塊的r-塊的后續(xù)操作轉(zhuǎn)換至不同的較高級別冗余操作(例如,rasie-1模式),而在ssd中的其它r-塊不受影響并且繼續(xù)在rasie-2模式中操作。關(guān)于圖8,處理以根據(jù)第一較高級別冗余模式(在第一較高級別冗余模式中操作802)在閃存管芯中布置的較高級別冗余信息和數(shù)據(jù)存儲(例如,用戶數(shù)據(jù)和/或用戶自由空間)開始。流程接著進行至確定故障是否已經(jīng)被檢測到(故障?803),諸如較低級別的不可糾正的讀錯誤或?qū)?程序故障。如果沒有檢測到故障,則流程進行回到繼續(xù)在第一較高級別冗余模式中的操作。如果故障已被檢測到,則流程進行至從在第一較高級別冗余模式中操作切換到在第二較高級別冗余模式中操作(動態(tài)地轉(zhuǎn)換操作模式809)。此切換以(可選地)減少可用于數(shù)據(jù)存儲的空間(減少自由空間804)開始,以解釋此故障。如果第二較高級別冗余模式使用比第一較高級別冗余模式足夠少的較高級別冗余信息,則可用空間的減少被省略。此切換以根據(jù)第二較高級別冗余模式重組數(shù)據(jù)存儲(重新安排數(shù)據(jù)存儲805)繼續(xù)。此重組包括可選地將所有的用戶數(shù)據(jù)和/或用戶自由空間從發(fā)生故障的閃存管芯移動到閃存管芯中的另一個(在某些實施例中,用戶自由空間移動是通過指針和/或其它數(shù)據(jù)結(jié)構(gòu)元件的操縱來完成的)。此切換進一步以經(jīng)由第一較高級別冗余模式的較高級別冗余信息選擇性地恢復(fù)(如果可能的話)被存儲在發(fā)生故障的閃存管芯中的任何用戶數(shù)據(jù),并且根據(jù)第二較高級別冗余模式將經(jīng)恢復(fù)的用戶數(shù)據(jù)寫入閃存管芯中的另一個(恢復(fù)/存儲失效的用戶數(shù)據(jù)806)繼續(xù)。如果此故障是寫/程序故障,則此恢復(fù)被省略。此切換進一步以根據(jù)第二較高級別冗余模式可選地計算和寫入閃存管芯較高級別冗余信息(確定/存儲經(jīng)修正的較高級別冗余信息807)繼續(xù)。如果第二較高級別冗余模式利用先前由于以第一較高級別冗余模式操作而處于適當?shù)奈恢玫妮^高級別冗余信息是可操作的,則此計算和寫入被省略。接著操作在第二較高級別冗余模式中開始(在第二較高級別冗余模式中操作808)。故障檢測(故障?803)是經(jīng)由下列中的一個或多個:較低級別冗余和/或錯誤糾正(例如,根據(jù)一個或多個ecc技術(shù))、較高級別冗余和/或錯誤糾正(例如,根據(jù)一個或多個rasie技術(shù))以及由閃存管芯或其部分中的一個或多個所報告的出故障狀態(tài)。例如,特定閃存管芯的特定部分(例如,r-塊、塊、r-頁面、頁面、讀單元或與字線相關(guān)聯(lián)的單元格)內(nèi)的讀的多于閾值數(shù)量的較低級別錯誤糾正可選地和/或有條件地導(dǎo)致此特定閃存管芯(或此特定部分)被看作失效的并且較高級別冗余模式切換被執(zhí)行從而使得失效的閃存管芯(或部分)不再被使用。再例如,如果較高級別錯誤糾正失效,則閃存管芯中的適當?shù)囊粋€(或其部分)被看作失效的并且較高級別冗余模式切換被執(zhí)行從而使得失效的閃存管芯(或部分)不再被使用。又例如,如果閃存管芯返回一程序故障狀態(tài)(指示寫操作是不成功的),則閃存管芯中的適當?shù)囊粋€的適當?shù)膲K被看作失效的,并且可選地和/或有條件地,較高級別冗余模式切換被執(zhí)行從而使得失效的閃存管芯(或替代地其部分)不再被使用。在某些實施例中,失效的塊通過經(jīng)由虛擬和物理塊地址(例如,經(jīng)由通過圖1a的映射141和/或表143執(zhí)行的處理)的重新映射來代替。來自備用塊的池中的一備用塊被映射來代替失效的塊。寫在失效的塊中的任何內(nèi)容被復(fù)制到替換塊,并且寫入在備用塊中從在失效的塊中發(fā)生故障的地方進行。在某些實施例中,失效的塊被跳過(而不是明確地被重新映射),導(dǎo)致一“孔”,該孔可選地和/或有條件地導(dǎo)致當此孔所在的r-塊接下來被擦除(為重寫做準備)時的較高級別冗余模式切換。如果此孔處于用于數(shù)據(jù)存儲的位置,則不作出切換并且此孔保持。如果此孔處于用于較高級別冗余信息的位置,則此較高級別冗余信息被存儲在另一位置中,并且可選地較高級別冗余模式被切換。在某些實施例和/或使用場景中,存儲在發(fā)生故障的閃存管芯中的用戶數(shù)據(jù)的恢復(fù)是不可能的。例如,如果故障是由于經(jīng)由較高級別冗余和/或錯誤糾正和/或由閃存管芯或其部分中的一個或多個所報告的一些類型的出故障狀態(tài)所檢測到的一些類型的故障,則一些用戶數(shù)據(jù)被丟失。在某些實施例中,圖8的處理是在響應(yīng)于多個故障在較高級別冗余模式之間動態(tài)地轉(zhuǎn)換的(例如,ssd控制器)背景中執(zhí)行的。具體地,ssd控制器開始在第一較高級別冗余模式中操作并且響應(yīng)于第一故障而動態(tài)地轉(zhuǎn)換至第二較高級別冗余模式,并且隨后響應(yīng)于第二故障而從第二較高級別冗余模式動態(tài)地轉(zhuǎn)換至第三較高級別冗余模式,并且以此類推。例如,ssd控制器根據(jù)rasie-2模式2-2操作各閃存管芯并且響應(yīng)于第一故障將此操作動態(tài)地轉(zhuǎn)換成與rasie-2模式2-1一致。隨后,ssd控制器響應(yīng)于第二故障將此操作動態(tài)地轉(zhuǎn)換成與rasie-2模式2-0一致。隨后進一步,ssd控制器響應(yīng)于第三故障將此操作動態(tài)地轉(zhuǎn)換成與rasie-1減少容量模式1-0一致(減少容量模式1-0類似于rasie-1模式1-0,除了一個閃存管芯用于較高級別冗余信息和62個閃存管芯用于數(shù)據(jù)存儲)。作為特定示例,考慮耦合至圖7的元件的ssd控制器(諸如圖1a的ssd控制器100),初始在rasie-2模式2-2(例如,在閃存管芯610.65和閃存管芯610.64中的較高級別冗余信息和在閃存管芯610.63......610.0中的數(shù)據(jù)存儲)中操作,對應(yīng)于在第一較高級別冗余模式中操作。接著執(zhí)行閃存管芯中的一個或多個的讀或替代地寫。在閃存管芯中的特定一個的一部分(例如,用于用戶數(shù)據(jù)和/或用戶自由空間的閃存管芯610.62的頁面)中,讀導(dǎo)致不可糾正的(較低級別)ecc故障或替代地寫是不成功的。作為響應(yīng),ssd控制器從在rasie-2模式2-2中操作動態(tài)地切換至在rasie-2模式2-1中操作,不再使用任何閃存管芯610.62。由于在rasie-2模式2-1中的操作提供63個管芯以用于數(shù)據(jù)存儲(相對于在rasie-2模式2-2中的64個管芯),因而可用于數(shù)據(jù)存儲的空間從64個管芯減少到63個管芯,并且用戶數(shù)據(jù)和/或用戶自由空間被相應(yīng)地移動。例如,來自閃存管芯610.62的所有用戶數(shù)據(jù)根據(jù)用戶自由空間被移動到閃存管芯610.63和閃存管芯610.61......610.0的部分?;谠陂W存管芯610.65和/或閃存管芯610.64中的較高級別冗余信息來恢復(fù)在具有不可糾正的ecc故障的頁面中的所有用戶數(shù)據(jù)?;谠陂W存管芯610.63和閃存管芯610.61......610.0中的數(shù)據(jù)存儲并根據(jù)rasie-2模式2-1的較高級別冗余信息被計算和存儲在閃存管芯610.65和/或閃存管芯610.64中。ssd控制器接著在rasie-2模式2-1(在閃存管芯610.65和閃存管芯610.64中的較高級別冗余信息以及在閃存管芯610.63和閃存管芯610.61......610.0中的數(shù)據(jù)存儲)中操作。盡管前文描述了利用整個閃存管芯的量的獨立硅元素的動態(tài)較高級別冗余模式管理的幾個實施例,然而其它實施例利用為管芯的部分(諸如一個或多個讀單元、字線關(guān)聯(lián)的單元格、頁面、r-頁面、塊或r-塊)的獨立硅元素實現(xiàn)動態(tài)較高級別冗余模式管理。前文描述了利用r-塊的單個粒度的并行地活躍的較高級別冗余模式的幾個實施例。例如,較高級別冗余模式在r-塊基礎(chǔ)上變化(在單個相應(yīng)的較高級別冗余模式中完整地操作每一r-塊)。然而,其它實施例實現(xiàn)利用多個(混合)粒度(諸如r-塊粒度的與頁面粒度的結(jié)合)的并行地活躍的較高級別冗余模式。例如,較高級別冗余模式在一個區(qū)域中在r-塊基礎(chǔ)上變化,并且在另一區(qū)域中在頁面基礎(chǔ)上變化(在單個相應(yīng)的較高級別冗余模式中完整地操作每一頁面)。在各實施例中,圖8中的一個或多個元素的處理或與圖8中的一個或多個元素有關(guān)的處理完全地或部分地通過圖1a的一個或多個元件(或其部分)來執(zhí)行。例如,cpu171的軟件執(zhí)行能力中的一部分被用于管理在較高級別冗余模式之間的動態(tài)轉(zhuǎn)換,諸如通過引導(dǎo)減少可用于數(shù)據(jù)存儲的空間或引導(dǎo)重組數(shù)據(jù)存儲。再例如,數(shù)據(jù)處理121和/或ecc-x135包括致力于和/或?qū)S糜诟鶕?jù)‘目標’冗余模式的較高級別冗余信息的計算的硬件元件。又例如,ecc161實現(xiàn)較低級別(例如,ecc)錯誤糾正和不可糾正的錯誤的檢測,而ecc-x135實現(xiàn)較高級別(例如,rasie)錯誤糾正和不可糾正的錯誤和/或存儲元件故障的檢測。再例如,與在(較高級別)冗余模式之間的動態(tài)轉(zhuǎn)換有關(guān)的功能的全部或任意部分通過ecc-x135的一個或多個部分來執(zhí)行。較高級別冗余和自適應(yīng)較低級別碼率在某些實施例和/或使用場景中,較低級別冗余和/或錯誤糾正利用自適應(yīng)碼率(例如,利用可變碼率的自適應(yīng)ecc技術(shù))。例如,第一讀單元利用第一碼率進行管理,其提供比利用第二碼率進行管理的第二讀單元相對更可用的數(shù)據(jù)位。在具有利用可變碼率的較低級別冗余和/或錯誤糾正的某些實施例和/或使用場景中,較高級別冗余信息被存儲在獨立硅元素的多個部分(諸如閃存管芯的多個部分)中,該獨立硅元素的多個部分利用較低級別冗余和/或錯誤糾正進行管理,該較低級別冗余和/或錯誤糾正相對于由較高級別冗余信息保護的數(shù)據(jù)存儲,提供相對更可用的數(shù)據(jù)位或最可用的數(shù)據(jù)位。在各實施例和/或使用場景中,存儲較高級別冗余信息的此部分在每一r-塊基礎(chǔ)上、在每一管芯基礎(chǔ)上、隨時間動態(tài)地或其任意組合變化。在各實施例中,一個或多個管芯、r-塊、塊和/或頁面基于相對于較低級別錯誤糾正碼率具有最可用數(shù)據(jù)而被選擇以用于較高級別冗余數(shù)據(jù)的存儲。例如,較高級別冗余信息在每一r-塊基礎(chǔ)上被存儲在變化的位置(諸如塊位置),這些位置(諸如塊)是具有基于較低級別錯誤糾正碼率的最可用數(shù)據(jù)的那些。在任意示例中,考慮圖7的背景中的rasie-2操作模式場景,其中66個閃存管芯的收集被看作多達各自一個塊高的m個r-塊的邏輯“堆?!保渲衜是每一閃存管芯的塊的數(shù)量。(在最概念上直接的情況中,此堆棧中的每一r-塊由來自每一管芯的相同的物理塊號碼組成,但為了容納失效的塊,在至少一些實施例中,此約束被解除。在又其它實施例中,此約束被維持,但對應(yīng)于失效的塊容納“孔”。)因此,每一r-塊具有多達66個塊,對應(yīng)于來自閃存管芯610.0到閃存管芯610.65中的每一個的一個塊。(在圖7中,盡管在范圍610.0到610.65中的僅一些閃存管芯被明確地列舉出,然而通過省略號的使用,理解到此范圍中的所有閃存管芯被隱含地示出。)較高級別冗余信息被寫入具有基于較低級別錯誤糾正碼率的最可用數(shù)據(jù)的每一r-塊中的無論哪些塊中。如果例如在第一r-塊中,對應(yīng)于閃存管芯610.15和610.49的塊恰好具有基于較低級別錯誤糾正碼率的最可用數(shù)據(jù),則較高級別冗余信息被寫入這些塊(對應(yīng)于閃存管芯610.15和610.49)中。而如果在第二r-塊中,對應(yīng)于閃存管芯610.9和610.35的塊恰好具有基于較低級別錯誤糾正碼率的最可用數(shù)據(jù),則較高級別冗余信息被寫入這些塊(對應(yīng)于閃存管芯610.9和610.35)中。在某些實施例中,在已知r-塊中的所有其它數(shù)據(jù)之后,寫較高級別冗余數(shù)據(jù)。圖9示出了讀單元(911、931……951、971)的實施例,這些讀單元具有由存儲在讀單元中的一個或多個中的較高級別冗余信息所保護的自適應(yīng)(例如,隨時間和/或依位置不同和/或變化)碼率的較低級別冗余信息。讀單元中的每一個具有被啟用和/或分配給包含用戶數(shù)據(jù)(911.u、931.u......951.u、971.u)的一部分,以及被啟用和/或分配給包含較低級別冗余信息(諸如ecc碼的校驗位,作為較低級別ecc(911.e、931.e......951.e、971.e))的剩余部分。在此圖中,垂直的尺寸是相對地按規(guī)定比例的,并且指示了相對的尺寸。因此讀單元911和951具有相同的第一尺寸(在某些實施例中,對于所有nvm設(shè)備的所有塊,所有的讀單元是相同的尺寸)、較低級別ecc部分931.e和951.e具有相同的第二尺寸,并且較低級別ecc部分911.e和971.e具有相同的第三尺寸。讀單元931大于讀單元911和951,該讀單元911和951反過來大于讀單元971。用戶數(shù)據(jù)部分931.u大于用戶數(shù)據(jù)部分951.u。用戶數(shù)據(jù)部分951.u大于用戶數(shù)據(jù)部分911.u。較低級別ecc部分951.e小于較低級別ecc部分911.e。如在圖中所示,例如nvm的每一相應(yīng)的塊,相應(yīng)的讀單元具有相應(yīng)的尺寸,使得如在相應(yīng)的塊中所使用的變化的較低級別碼率成為可能。更具體地,讀單元931和951具有相同量的較低級別冗余信息(931.e和951.e是相同的尺寸),但讀單元931的較低級別碼率高于讀單元951的較低級別碼率,因為讀單元931比讀單元951(包含用戶數(shù)據(jù)951.u)包含更多的用戶數(shù)據(jù)(931.u)。如此圖所示,相應(yīng)的讀單元具有相應(yīng)尺寸的用戶數(shù)據(jù),使得相同尺寸的兩個或多個讀單元中的每一個中的各種尺寸的用戶數(shù)據(jù)成為可能。例如,改變用戶數(shù)據(jù)的尺寸以改變在特定讀單元中使用的較低級別碼率。更具體地,讀單元951和911具有相同的尺寸,但具有不同的相應(yīng)量的用戶數(shù)據(jù)(951.u和911.u),并因此不同的相應(yīng)量的較低級別冗余信息(951.e和911.e),使得讀單元951能夠具有比讀單元911更高的較低級別碼率。在某些實施例和/或使用場景中,變化和/或改變較低級別碼率有利地能夠提供足夠量的較低級別ecc信息以達到較低級別錯誤糾正需求同時最大化用戶數(shù)據(jù)的量。在讀單元中具有變化量的用戶數(shù)據(jù)的某些實施例中,較高級別冗余信息被存儲在具有最大量的用戶數(shù)據(jù)的讀單元的一個或多個中。例如在圖9中,利用rasie-1模式,較高級別冗余信息被存儲在用戶數(shù)據(jù)931.u中,以及利用rasie-2模式,較高級別冗余信息被存儲在用戶數(shù)據(jù)931.u和用戶數(shù)據(jù)951.u中。將較高級別冗余信息存儲在具有最大量的用戶數(shù)據(jù)的讀單元(在由較高級別冗余信息所保護的讀單元之中)中確保了存在足夠的較高級別冗余信息來保護所有其它讀單元中的用戶數(shù)據(jù)。根據(jù)各實施例,一個或多個技術(shù)被用來確定在由較高級別冗余信息所保護的若干讀單元之中的哪一個或多個讀單元被用于存儲較高級別冗余信息。在第一示例中,使用具有最大量的用戶數(shù)據(jù)的最后寫的一個(用于rasie-1)或兩個(用于rasie-2)讀單元。在第二示例中,使用具有最大量的用戶數(shù)據(jù)的最早寫的一個(用于rasie-1)或兩個(用于rasie-2)讀單元。類似地,用于確定性地選擇具有最大量的用戶數(shù)據(jù)的一個或多個讀單元以便保護在其它讀單元中的所有剩余的用戶數(shù)據(jù)的任何技術(shù)在本文中所考慮的技術(shù)的范圍內(nèi)。較高級別冗余信息計算技術(shù)在各實施例和/或使用場景中,較高級別冗余信息是利用各種技術(shù)(諸如經(jīng)由奇偶校驗(parity)、rs和/或加權(quán)和技術(shù))進行計算的。例如,在能夠從一個(較低級別)故障恢復(fù)的某些較高級別冗余模式(例如,rasie-1)中,較高級別冗余信息是經(jīng)由奇偶校驗技術(shù)進行計算的。再例如,在能夠從兩個(較低級別)故障恢復(fù)的某些較高級別冗余模式(例如,rasie-2)中,較高級別冗余信息是經(jīng)由奇偶校驗和rs技術(shù)的組合進行計算的。較高級別冗余信息的第一部分利用奇偶校驗編碼進行計算并且第二部分利用rs編碼進行計算。又例如,在能夠從兩個故障恢復(fù)的某些較高級別冗余模式(例如,rasie-2)中,較高級別冗余信息是經(jīng)由奇偶校驗和加權(quán)和技術(shù)的組合進行計算的。較高級別冗余信息的第一部分利用奇偶校驗編碼進行計算并且第二部分利用加權(quán)和編碼進行計算。較高級別冗余信息例如經(jīng)由nvm的頁面的讀和寫來管理,該nvm的頁面的讀和寫使用較低級別故障檢測技術(shù)(諸如ecc),該較低級別故障檢測技術(shù)與用于nvm的頁面的較低級別故障檢測技術(shù)相同或類似于用于nvm的頁面的較低級別故障檢測技術(shù),該nvm的頁面可用于存儲由較高級別冗余信息所保護的數(shù)據(jù)。作為rasie-2的特定示例,利用奇偶校驗編碼計算較高級別冗余信息的第一頁面,該奇偶校驗編碼經(jīng)由在跨r-塊的一條(stripe)中的所有第一頁面的異或。更具體地,對在跨r-塊的條中的所有第一頁面的所有第一字節(jié)執(zhí)行異或,產(chǎn)生較高級別冗余信息的第一頁面的第一字節(jié)。類似地,較高級別冗余信息的第二字節(jié)是通過對在跨r-塊的條中的所有第一頁面的所有第二字節(jié)進行異或來形成,并且對于此條中的所有第一頁面的所有字節(jié)以此類推。較高級別冗余信息的第二頁面是利用如下加權(quán)和技術(shù)進行計算。在有限域(諸如galois域(用作示例))上執(zhí)行算法。示例假設(shè)進行操作的數(shù)據(jù)是字節(jié)寬的,并因此使用諸如gf(256)的域。在各實施例中,以任何單位對數(shù)據(jù)進行操作。條中的每一頁面被分配一唯一的非零“索引”。選擇這些索引的值以簡化實現(xiàn)復(fù)雜度,并且不涉及任何形式的生成多項式。例如,由從0到n-1的條中的管芯位置來標記(例如,通過軟件)頁面,并且這些索引的適當?shù)闹凳枪苄咎柎a的一種補數(shù)(ones-complement,被確保是非零,假設(shè)n<255)。索引值的另一選擇是最低權(quán)重(最少數(shù)量的設(shè)置位或最少數(shù)量的清除位)非零整數(shù),例如以減小和/或最小化硬件成本。在某些實施例和/或使用場景中,為這些索引選擇灰度編碼值在處理頁面時最小化轉(zhuǎn)換和/或減少供電。索引值不是根據(jù)有限域算法選擇的,而是根據(jù)其他原則選擇的。盡管如此,每一索引值對應(yīng)于有限域中的非零元素。假設(shè)頁面i具有索引值ki(并且頁面j具有索引值kj)。加權(quán)和冗余是ki*pi的(gf域)和(在來自每一頁面i的相應(yīng)的字節(jié)pi上),每一字節(jié)乘以(在gf域上)其索引值。因此,針對每一字節(jié),加權(quán)和冗余信息被計算為:r0=對所有相應(yīng)的字節(jié)pi求和;r1=對所有相應(yīng)的字節(jié)ki*pi求和;r0是所有相應(yīng)的字節(jié)的異或;以及rl是字節(jié)的加權(quán)和,其中權(quán)重被選擇為索引值。對于一個頁面中的相應(yīng)的字節(jié)中的每一個迭代前述計算,針對r0和r1中的每一個產(chǎn)生字節(jié)的相應(yīng)的頁面。在下面的討論中,出于闡述清楚的目的,r0和r1在某些情景中被分別地描述為單個元素(例如,每一個為單個字節(jié)),但如在前述計算中,每一個表示相應(yīng)的一頁面的元素(例如,每一個是一頁面的字節(jié))。pi表示頁面i中的字節(jié),并且pj表示頁面j中的字節(jié)。相對于一個條的來自每一頁面的相應(yīng)的字節(jié)描述處理,并且對所有相應(yīng)的字節(jié)執(zhí)行迭代。如果歸因于例如具有不同的(較低級別)冗余碼率,一些頁面短于其它的頁面,則這些較短的頁面被零填充(或由對編碼和解碼使用相同方式的任何已知值填充)從而使得被有效處理的所有頁面具有相同的尺寸。求和計算r0和r1根據(jù)各實施例,經(jīng)由各種串行和/或并行計算可以任何順序執(zhí)行。頁面不必以任何特定順序來處理,因為ki*pi在kj*pj之前還是在kj*pj之后添加對r1中的結(jié)果沒有影響。對應(yīng)于冗余信息的頁面中的各字節(jié)的r0和r1值的計算獨立于彼此并且根據(jù)各實施例,經(jīng)由各種串行和/或并行計算可以任何順序計算。進一步,從r1中減去ki*pi(以及從r0中減去pi)能夠“撤回”對頁面的計算影響。由于在gf域上,加法和減法都是異或(因此減等同于簡單地加第二次),因而在某些實施例和/或使用場景中,對于gf域?qū)崿F(xiàn)方式不需要特別的軟件(例如,邏輯異或能力是足夠的)來“撤回”頁面。在不可糾正的較低級別錯誤的情況中,較高級別錯誤糾正在某些實施例中以重新計算r0和r1開始,而重新計算r0和r1是通過省略具有不可糾正的較低級別錯誤的頁面(有時被稱為列)。糾正以從原始r0中減去經(jīng)重新計算的r0以產(chǎn)生△r0,并且從原始r1中減去經(jīng)重新計算的r1以產(chǎn)生△r1而繼續(xù)。如果不存在不可糾正的較低級別錯誤,則經(jīng)重新計算的r0和r1均是零。如果存在不可糾正的較低級別錯誤,則經(jīng)重新計算的r0和r1(在減去之后)反映了“缺失的”數(shù)據(jù)(在第二次中未被添加,但出現(xiàn)在原始值中)。如果存在一個不可糾正的較低級別錯誤,則經(jīng)重新計算的r0被用于糾正此錯誤(并且不需要經(jīng)重新計算的r1)。如果存在兩個不可糾正的較低級別錯誤,則經(jīng)重新計算的r0和r1被用于糾正錯誤。如果r0和r1值的頁面是具有不可糾正的較低級別錯誤的頁面,則不需要數(shù)據(jù)存儲頁面的修正。如果r1值的頁面是具有不可糾正的較低級別錯誤的頁面中的一個,則糾正是經(jīng)由r0(經(jīng)重新計算的r0值是具有不可糾正的較低級別錯誤的數(shù)據(jù)存儲頁面的值)。如果在數(shù)據(jù)存儲頁面中存在兩個不可糾正的較低級別錯誤,或如果r0頁面是具有不可糾正的較低級別錯誤的頁面中的一個,則糾正以如上計算△r0和△r1開始。如果r0頁面是具有不可糾正的較低級別錯誤的頁面中的一個,則可選地省略△r0頁面的計算。如果頁面i和頁面j是具有不可糾正的較低級別錯誤的頁面,則經(jīng)重新計算的△r0=pi+pj,并且經(jīng)重新計算的△r1=ki*pi+kj*pj。求解方程產(chǎn)生了:pi=(△r1-kj*△r0)/(ki-kj)pj=△r0-pi如果r0是具有不可糾正的較低級別錯誤的頁面中的一個,則(因為r0不包括在r1中),△r1=ki*pi,或pi=△r1/ki;通過在上面公式中設(shè)置kj=0(以忽略△r0)而獲得相同的結(jié)果。在替代性實施例中,代替galois域,使用由整數(shù)模(integersmod)p限定的有限域,其中p是素數(shù)。這些計算與以上描述的那些相同,其中加法是整數(shù)加法模(integeradditionmod)p,并且乘法是整數(shù)乘法模(integermultiplicationmod)p。例如,如果頁面是字節(jié)的頁面,則使用整數(shù)模257的有限域。所有用戶數(shù)據(jù)字節(jié)是在范圍0-255中并且被存儲在每一個字節(jié)中。然而,r1結(jié)果具有從0-256的范圍的值,需要超出一個字節(jié)以供表示。存在很多方法來編碼從0-256的值以最小化存儲空間并且使得能夠利用減少的開銷存儲r1頁面。例如,值0和256分別地被存儲為九位序列000000000和000000001,并且所有其它值被存儲在八位中。給出r1值的隨機分布,存儲開銷<0.1%。如參照圖9所描述的,選擇r1頁面以具有最大量的用戶數(shù)據(jù),使得存儲開銷在某些使用場景中能夠被隱藏。圖10示出了例如如在諸如圖7的背景中由rasie-2模式2-2所使用的以及如在圖6中進一步所示的較高級別冗余信息結(jié)果和數(shù)據(jù)源對應(yīng)的實施例的選擇的細節(jié)。圖10明確地示出了閃存管芯610.0、610.63、610.64和610.65,并且通過省略號(...)隱含地示出了閃存管芯610.1......610.62。閃存管芯的塊、頁面和頁面內(nèi)的字節(jié)的選擇的細節(jié)被示出。較高級別冗余信息的第一部分被示為r01010(存儲在閃存管芯610.64中),并且利用奇偶校驗編碼進行計算。較高級別冗余信息的第二部分被示為r11011(存儲在閃存管芯610.65中),并且利用加權(quán)和編碼進行計算。數(shù)據(jù)信息的存儲被示為數(shù)據(jù)1019(存儲在閃存管芯610.0......610.63中)。虛線箭頭1001概念地指示兩字節(jié)冗余計算結(jié)果(對于r01010和r11011中的每一個的一個字節(jié)),該計算結(jié)果是基于數(shù)據(jù)1019的所有第一頁面(跨所有閃存管芯)的相應(yīng)的第一字節(jié)。如所示,兩字節(jié)結(jié)果是在第一r0和r1頁面中的每一個上的第一字節(jié)。虛線箭頭1002概念地指示兩字節(jié)冗余計算結(jié)果(對于r01010和r11011中的每一個的一個字節(jié)),該計算結(jié)果是基于數(shù)據(jù)1019的所有第一頁面的相應(yīng)的最后一個字節(jié)。如所示,兩字節(jié)結(jié)果是在第一r0和r1頁面中的每一個上的最后一個字節(jié)。虛線箭頭1003概念地指示兩頁面冗余計算結(jié)果(對于r01010和r11011中的每一個的一個頁面),該計算結(jié)果是基于數(shù)據(jù)1019的第一個塊(跨所有閃存管芯)的相應(yīng)的最后一個頁面。注意如本文中其它地方所描述的,在某些實施例中,較高級別冗余信息針對數(shù)據(jù)的不同部分被存儲在不同的管芯中。因此,在某些實施例中,r0和r1被存儲在各種管芯上,而不是兩個“專用的”管芯上,如圖10中所示。圖11示出了利用根據(jù)各實施例的各種操作條件,例如如在諸如圖7的背景中由rasie-2模式2-2所使用的以及如在圖6和圖10中進一步所示的較高級別冗余信息計算的實施例的選擇的細節(jié)。更具體地,圖11示出了根據(jù)例如由圖10的虛線箭頭1001概念性地示出的兩字節(jié)冗余計算結(jié)果,用于r0的字節(jié)的奇偶校驗編碼計算和用于r1的字節(jié)的加權(quán)和編碼計算。操作條件包括下列中的一個或多個:在有限域(諸如galois域)上執(zhí)行算法;索引(對應(yīng)于圖11中的偽求和變量“i”值)是閃存管芯號碼的一種補數(shù)(或任何其它唯一的和非零的編號);以及索引對應(yīng)于有限域中的非零元素。如圖11中所示的計算基于相應(yīng)的數(shù)據(jù)字節(jié),針對r0和r1的所有字節(jié)進行重復(fù)。注意非零索引使得r1值能夠包括來自pi的每個元素的貢獻。因此,關(guān)于計算r0的字節(jié)中的任何一個,對彼此或在r1的字節(jié)中的任何一個之間不存在依賴性。因此構(gòu)想各種實施例,其中完全地(大量地)并行地、部分地并行地或完全地串行地計算r0和r1。例如,并行地計算頁面的所有r0和/或r1字節(jié)。再例如,并行地計算頁面的所有r0字節(jié),接著(在之前)是并行地計算頁面的所有r1字節(jié)。進一步,相對于彼此或相對于計算r1的字節(jié)中的任何一個,關(guān)于計算r0的字節(jié)中的任何一個不存在排序需求。因此構(gòu)想各種實施例,其中相對于彼此完全地按順序、單獨地相對于彼此按順序(例如,r0計算相對于彼此是按順序的但相對于r1沒有排序,并且反之亦然)、或沒有特定排序(例如,完全無序的、無序的或隨機排序的)計算r0和r1值。例如,頁面的所有r0字節(jié)按特定順序(例如,從最低字節(jié)到最高字節(jié))進行計算,接著是按此特定順序的頁面的所有r1字節(jié)。再例如,頁面的所有r0字節(jié)按特定順序進行計算,并且獨立地,頁面的所有r1字節(jié)按特定順序進行計算。又例如,頁面的所有r0字節(jié)以及頁面的所有r1字節(jié)相對于彼此以無特定順序進行計算(例如,如數(shù)據(jù)操作對象變得可用)。又例如,一個或多個頁面的所有r0和r1字節(jié)按一順序進行計算,該順序由在一個或多個nvm(每一個具有例如一個或多個閃存管芯)上執(zhí)行的一個或多個讀操作的完成的順序來確定,這些讀操作用于讀取被圖11所示的求和和加權(quán)求和計算(pi)引用的數(shù)據(jù)字節(jié)。在某些實施例和/或使用場景中,按由讀操作的完成所決定的順序執(zhí)行計算使得在nvm和能夠執(zhí)行計算的元件之間的緩沖的減少或消除成為可能。在某些實施例和/或使用場景中,按由讀操作的完成所決定的順序執(zhí)行計算使得用于執(zhí)行計算的存儲帶寬(諸如nvm的存儲帶寬)的減少成為可能。又例如,一個或多個頁面的所有r0和r1字節(jié)按一順序進行計算,該順序由響應(yīng)于在一個或多個nvm(每一個具有例如一個或多個閃存管芯)上執(zhí)行的讀操作返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的順序來確定,返回的數(shù)據(jù)和/或可用的數(shù)據(jù)對應(yīng)于被圖11所示的求和和加權(quán)求和計算(pi)引用的數(shù)據(jù)字節(jié)。在某些實施例和/或使用場景中,按由返回的數(shù)據(jù)和/或可用的數(shù)據(jù)所確定的順序執(zhí)行計算減少了或消除了在nvm和能夠執(zhí)行計算的元件之間的緩沖。在某些實施例和/或使用場景中,按由返回的數(shù)據(jù)和/或可用的數(shù)據(jù)所確定的順序執(zhí)行計算減少了用于執(zhí)行計算的存儲帶寬,諸如nvm的存儲帶寬。在某些實施例中,這些讀操作按特定順序(例如,從pi的最低字節(jié)到最高字節(jié))來執(zhí)行,而在其它實施例中,讀操作不按特定順序來執(zhí)行。圖12示出了例如在諸如與圖11相關(guān)聯(lián)的背景中,并且其中較低級別故障已發(fā)生在頁面j上,從一個(較低級別)故障(在單個操作期間)恢復(fù)的實施例的選擇的細節(jié)。注意如果較低級別故障是在r0頁面或r1頁面上,則如由圖11所描述的那樣重新確定r0(或r1)。圖12示出了頁面j的經(jīng)恢復(fù)的值的一個字節(jié)的計算(注意求和省略了發(fā)生故障的頁面j)。重復(fù)如圖12中所示的計算以基于r0的相應(yīng)的字節(jié)和來自除了頁面j之外的所有數(shù)據(jù)頁面的相應(yīng)的字節(jié)來確定頁面j的所有字節(jié)的經(jīng)恢復(fù)的值。因此關(guān)于計算頁面j的經(jīng)恢復(fù)的值的字節(jié)中的任何一個,對彼此不存在依賴性。因此,構(gòu)想各種實施例,其中類似于用于r0和r1值的前述計算,從高度并行變動到高度串行地計算pj恢復(fù)值。進一步,關(guān)于相對于彼此計算頁面j的恢復(fù)值中的任何一個,不存在順序需求。因此構(gòu)想各種實施例,其中類似于用于r0和r1值的前述計算,pj恢復(fù)值相對于彼此按變化的排序進行計算。一些示例性實施例按排序執(zhí)行與確定恢復(fù)值有關(guān)的計算,該排序至少部分地由在一個或多個nvm(每一個具有例如一個或多個閃存管芯)上執(zhí)行的一個或多個讀操作的完成的排序確定,這些讀操作用于讀取nvm以獲得如由圖12所示的r0和/或pi值。在某些實施例和/或使用場景中,按讀操作的完成的順序執(zhí)行計算使得在nvm和能夠執(zhí)行計算的元件之間的緩沖的減少或消除成為可能。在某些實施例和/或使用場景中,按讀操作的完成的順序執(zhí)行計算使得用于執(zhí)行計算的存儲帶寬(諸如nvm的存儲帶寬)的減少成為可能。一些示例性實施例按排序執(zhí)行與確定恢復(fù)值有關(guān)的計算,該排序至少部分地由來自一個或多個nvm(每一個具有例如一個或多個閃存管芯)的返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的排序決定,返回的數(shù)據(jù)和/或可用的數(shù)據(jù)響應(yīng)于在nvm上執(zhí)行的讀操作以獲得如由圖12所示的r0和/或pi值。在某些實施例和/或使用場景中,按來自讀操作的返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的順序執(zhí)行計算減少了或消除了在nvm和能夠執(zhí)行計算的元件之間的緩沖。在某些實施例和/或使用場景中,按來自讀操作的返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的順序執(zhí)行計算減少了用于執(zhí)行計算的存儲帶寬,諸如nvm的存儲帶寬。在某些實施例中,這些讀操作按特定順序(例如,從pi的最低字節(jié)到最高字節(jié))來執(zhí)行,而在其它實施例中,這些讀操作不按特定順序來執(zhí)行。圖13a-13d示出了例如在諸如與圖11相關(guān)聯(lián)的背景中,并且其中較低級別故障已發(fā)生在頁面m和n上,從兩個(較低級別)故障(在單個操作期間)恢復(fù)的實施例的選擇的細節(jié)。注意如果較低級別故障是在r0和r1頁面上,則r0和r1對于數(shù)據(jù)恢復(fù)是不需要的,并且不存在處理來恢復(fù)數(shù)據(jù)。否則,注意如果較低級別故障中的一個是r1頁面,則數(shù)據(jù)恢復(fù)如由圖12所描述的那樣進行。如果較低級別故障中沒有一個是在r0或r1頁面上,則pm和pn的恢復(fù)如下進行。圖13a示出了經(jīng)修正的r0作為r0'的一個字節(jié)和經(jīng)修正的r1作為r1'的一個字節(jié)的計算(注意求和省略了發(fā)生故障的頁面m和n)。圖13b示出了將原始冗余信息(r0,r1)的一個字節(jié)與經(jīng)修正的冗余信息(r0',r1')的一個字節(jié)聯(lián)系起來,以及用于形成經(jīng)修正的r0和r1的從求和中省略的項(pm+pn和km*pm+kn*pn)的等式。圖13c示出了具有引進項deltar0(△r0)和deltar1(△r1)的圖13b的代數(shù)重排。圖13d示出了用于pn和pm的圖13c的求解,并因此表示基于r1、r0的相應(yīng)的字節(jié)以及來自除了頁面m和n之外的所有數(shù)據(jù)頁面的相應(yīng)的字節(jié)的用于頁面n的經(jīng)恢復(fù)的值的一個字節(jié)和頁面m的經(jīng)恢復(fù)的值的一個字節(jié)的計算。注意唯一的索引使得非零分母成為可能,因為kn相對于km是唯一的。在各實施例中,執(zhí)行如由圖13a-13d所表示的計算以確定頁面m的經(jīng)恢復(fù)的值的一個字節(jié)和頁面n的經(jīng)恢復(fù)的值的一個字節(jié)?;趓0、r1的相應(yīng)的字節(jié)以及來自除了頁面m和n之外的所有數(shù)據(jù)頁面的相應(yīng)的字節(jié),重復(fù)這些計算以確定頁面m和n的所有字節(jié)的經(jīng)恢復(fù)的值。因此關(guān)于計算頁面m或n的經(jīng)恢復(fù)的值的字節(jié)中的任何一個,對彼此不存在依賴性。因此,構(gòu)想各種實施例,其中類似于用于pj恢復(fù)值的前述計算,從高度并行變動到高度串行地計算pm和/或pn恢復(fù)值。進一步,關(guān)于相對于彼此計算頁面m和/或頁面n的恢復(fù)值中的任何一個,不存在順序需求。因此構(gòu)想各種實施例,其中類似于用于pj恢復(fù)值的前述計算,pm和/或pn恢復(fù)值相對于彼此按變化的排序進行計算。一些示例性實施例按排序執(zhí)行與確定恢復(fù)值有關(guān)的計算(諸如用于r0'和r1'的計算),該排序至少部分地由在一個或多個nvm(每一個具有例如一個或多個閃存管芯)上執(zhí)行的一個或多個讀操作的完成的排序確定,這些讀操作用于獲得被示為用于圖13a-13d中的任何一個中的計算的來源的值中的任何一個或多個。在某些實施例和/或使用場景中,按讀操作的完成的順序執(zhí)行計算使得在nvm和能夠執(zhí)行計算的元件之間的緩沖的減少或消除成為可能。在某些實施例和/或使用場景中,按讀操作的完成的順序執(zhí)行計算使得用于執(zhí)行計算的存儲帶寬(諸如nvm的存儲帶寬)的減少成為可能。一些其它示例性實施例按排序執(zhí)行與確定恢復(fù)值有關(guān)的計算(諸如用于r0'和r1'的計算),該排序至少部分地由來自一個或多個nvm(每一個具有例如一個或多個閃存管芯)的返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的排序決定,返回的數(shù)據(jù)和/或可用的數(shù)據(jù)響應(yīng)于在nvm上執(zhí)行的讀操作以獲得被示為用于圖13a-13d中的任何一個中的計算的來源的值中的任何一個或多個。在某些實施例和/或使用場景中,按來自讀操作的返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的順序執(zhí)行計算減少了或消除了在nvm和能夠執(zhí)行計算的元件之間的緩沖。在某些實施例和/或使用場景中,按來自讀操作的返回的數(shù)據(jù)和/或可用的數(shù)據(jù)的順序執(zhí)行計算減少了用于執(zhí)行計算的存儲帶寬,諸如nvm的存儲帶寬。在某些實施例中,這些讀操作按特定順序(例如,從pi的最低字節(jié)到最高字節(jié))來執(zhí)行,而在其它實施例中,這些讀操作不按特定順序來執(zhí)行。圖14a和14b示出了相對于從nvm接收的頁面計算較高級別冗余信息的實施例的選擇的細節(jié)。圖14a示出了經(jīng)由發(fā)布而將多個讀命令發(fā)送至一個或多個nvm(發(fā)布讀操作1402a)、檢查所有命令是否已被發(fā)送(所有都被發(fā)布?1403a),以及如果沒有,則循環(huán)回到發(fā)送命令中的另一個的實施例的選擇的細節(jié)。注意構(gòu)想其它實施例,其中一次發(fā)布多個命令,而不是一次一個。圖14b示出了響應(yīng)于如圖14a所示發(fā)送的讀命令而處理從nvm接收的頁面的實施例的選擇的細節(jié)。作出檢查以確定頁面是否可用(頁面準備好?1402b)。如果沒有,則處理環(huán)回到再次執(zhí)行檢查。如果頁面是可用的,則與此頁面有關(guān)的較高級別冗余信息處理被執(zhí)行(執(zhí)行基于頁面的計算1403b)。接著作出檢查以確定所有頁面是否已被處理(頁面完成?1404b)。如果這樣,則處理完成(結(jié)束1499b),否則流動環(huán)回到確定另一頁面是否是可用的。除了響應(yīng)于如圖14a所示發(fā)送的命令的頁面的接收,圖14b中所示的處理獨立于圖14a中所示的處理。在各種場景中,頁面的到達順序根據(jù)nvm類型、狀態(tài)、操作環(huán)境和其它因素而變化,并且在某些情況下,與對應(yīng)于到達頁面的讀命令的發(fā)送順序或到達順序不同。由于圖14a的處理獨立于圖14b(除了頁面數(shù)據(jù)到達依賴于相應(yīng)的正被發(fā)送的讀命令),因而在某些實施例和/或使用場景中,讀命令正被發(fā)送(圖14a)而讀數(shù)據(jù)正被接收/處理(圖14b)。在某些實施例和/或使用場景中,頁面中的一些是從一個或多個緩沖器中提供的而不是經(jīng)由指向nvm的讀命令被請求,例如如果在用于特定頁面的讀命令將要被發(fā)送之前特定頁面呈現(xiàn)在特定緩沖器中的話。在某些實施例和/或使用場景中,除了響應(yīng)于所發(fā)送命令之外的頁面是由nvm提供的,所述頁面與響應(yīng)于所發(fā)送命令而提供的頁面(例如,響應(yīng)于針對其它活動所發(fā)送的讀命令而提供的頁面)混合。在各實施例中,如由圖11所示的用于r0和r1的計算至少部分地如由圖14a和14b所示來執(zhí)行。對于第一示例,用于計算相應(yīng)的r0和r1頁面所必需的所有數(shù)據(jù)頁面的讀命令如由圖14a所示被發(fā)送至一個或多個nvm。響應(yīng)于讀命令而接收的數(shù)據(jù)的頁面在頁面被接收時被處理以計算r0和r1頁面,如由圖11所示。對于第二示例,用于一對(例如,對應(yīng)于雙平面nvm的兩個平面)r0和r1頁面的讀命令如由圖14a所示被發(fā)送至一個或多個nvm。響應(yīng)于讀命令而接收的數(shù)據(jù)的頁面在頁面被接收時被處理以計算r0和r1頁面,如由圖11所示。在各實施例中,如由圖12所示的用于pj的計算至少部分地如由圖14a和14b所示來執(zhí)行。對于第一示例,用于計算特定pj頁面所必需的所有數(shù)據(jù)頁面的讀命令如由圖14a所示被發(fā)送至一個或多個nvm。響應(yīng)于讀命令而接收的數(shù)據(jù)的頁面在頁面被接收時被處理以計算pj頁面,如由圖12所示。對于第二示例,用于一對pj頁面(例如,對應(yīng)于雙平面nvm的兩個平面)的讀命令如由圖14a所示被發(fā)送至一個或多個nvm,并且所接收的數(shù)據(jù)的頁面在被接收時被處理,如由圖14b所示,以計算此對pj頁面。在各實施例中,如由圖13a-13d中的任何一個所示,與確定恢復(fù)值有關(guān)的計算(諸如用于r0'和r1'的計算)至少部分地如由圖14a和14b所示來執(zhí)行。對于第一示例,用于計算特定r0'頁面和特定r1'所必需的所有數(shù)據(jù)頁面的讀命令如由圖14a所示被發(fā)送至一個或多個nvm。響應(yīng)于讀命令而接收的數(shù)據(jù)的頁面在頁面被接收時被處理以計算r0'和r1'頁面,如由圖13a所示。對于第二示例,用于一對r0'和r1'頁面(例如,對應(yīng)于雙平面nvm的兩個平面)的讀命令如由圖14a所示被發(fā)送至一個或多個nvm,并且所接收的數(shù)據(jù)的頁面在被接收時被處理,如由圖14b所示,以計算此對r0'和r1'頁面。圖15a-15c示出了例如在諸如與圖11相關(guān)聯(lián)的背景中,相對于被提供至nvm的寫入的較高級別冗余信息的計算的撤回的實施例的選擇細節(jié)。圖15a示出了經(jīng)由發(fā)布而將多個寫命令發(fā)送至一個或多個nvm(發(fā)布寫操作1502a)、檢查所有命令是否已被發(fā)送(所有都被發(fā)布?1503a),以及如果沒有,則循環(huán)回到發(fā)送命令中的另一個的實施例的選擇的細節(jié)。注意構(gòu)想其它實施例,其中一次發(fā)布多個命令,而不是一次一個。圖15b示出了響應(yīng)于如圖15a中所示發(fā)送的寫命令而處理從nvm接收的寫完成和狀態(tài)信息的實施例的選擇的細節(jié)。作出檢查以確定寫入是否已在沒有錯誤的情況下完成(寫入好嗎?1502b)。如果是這樣的話,則作出檢查以確定所有寫入是否已被完成(寫完成?1504b)。如果是這樣的話,則處理完成(結(jié)束1599b)。如果寫入已被完成,但具有(較低級別)故障,諸如程序故障,則流程繼續(xù)至“撤消”相對于較高級別冗余信息計算的寫入的影響(從冗余撤回寫入1503b)。更具體地,從任何相應(yīng)的較高級別冗余信息計算中去計算(de-compute)用于具有較低級別錯誤的寫入的數(shù)據(jù)(假定在此寫入會成功這一假定下,用于寫入的數(shù)據(jù)已經(jīng)被包括在相應(yīng)的較高級別冗余計算中)。例如,在特定頁面j上檢測到較低級別寫入故障。作為響應(yīng),計算經(jīng)修正的r0和r1頁面從而使得頁面j數(shù)據(jù)(pi)被設(shè)置為零。圖15c示出了用于經(jīng)修正的r0的單字節(jié)(nr0)和經(jīng)修正的r1的單字節(jié)(nr1)的計算的實施例的選擇的細節(jié),其中j是較低級別寫入故障的頁面。注意在諸如與圖11相關(guān)聯(lián)的圖12的背景中,如果有限域是galois域,則在圖15c中所示的減法運算(“-”)等同于邏輯異或操作。在各實施例中,執(zhí)行其它處理(未示出)以存儲具有較低級別寫入故障(pj)的頁面,以及經(jīng)修正的較高級別冗余頁面(nr0和nr1)。除了響應(yīng)于如圖15a所示發(fā)送的命令的寫完成和狀態(tài)信息的接收,圖15b中所示的處理獨立于圖15a中所示的處理。在各種場景中,寫完成和狀態(tài)信息的到達順序根據(jù)nvm類型、狀態(tài)、操作環(huán)境和其它因素而變化,并且在某些情況下,與對應(yīng)于到達的寫完成和狀態(tài)信息的讀命令的發(fā)送順序或到達順序不同。由于圖15a的處理獨立于圖15b(除了寫完成和狀態(tài)信息到達依賴于相應(yīng)的正被發(fā)送的寫命令),因而在某些實施例和/或使用場景中,寫命令正被發(fā)送(圖15a)而寫完成和狀態(tài)信息正被接收/處理(圖15b)。在某些實施例和/或使用場景中,顯著的延遲在被送至nvm的命令和響應(yīng)于寫命令的來自nvm的寫完成和狀態(tài)信息的接收之間發(fā)生。在某些實施例和/或使用場景中,除了響應(yīng)于如圖15a所示所發(fā)送的命令之外的寫完成和狀態(tài)信息是由nvm提供的,所述寫完成和狀態(tài)信息與響應(yīng)于如圖15a所示所發(fā)送的命令而提供的寫完成和狀態(tài)信息(例如,響應(yīng)于針對其它活動所發(fā)送的寫命令而提供的寫完成和狀態(tài)信息)混合。在各實施例和/或使用場景中,否則將被用于數(shù)據(jù)信息的一個或多個頁面是未使用的。在各種場景中,未使用的頁面是塊、r-塊、條或任何類型的頁面序列的第一、中間或最后頁面。在某些情況下,未使用的頁面是先天未使用的(“被遺忘”),并且在某些情況下,未使用的頁面是在某些使用之后未使用(“從服務(wù)中移除”)。被遺忘的未使用頁面的示例是被錯誤地制造的頁面。從服務(wù)中被移除的未使用頁面的示例是不能適當?shù)貙懭氲捻撁?例如,如相對于圖15b被描述為較低級別寫錯誤)。例如,與圖10-12、13a-13d、14a-14b和15a-15b有關(guān)的處理略過任何未使用的頁面(無論被遺忘或從服務(wù)中移除),諸如通過從計算中完全地省略未使用的頁面,或通過好像未使用的頁面上的所有數(shù)據(jù)均是零一樣地執(zhí)行計算?;旌狭6容^高級別冗余在各實施例和/或使用場景中,nvm的相應(yīng)的區(qū)域以相應(yīng)的較高級別冗余模式(例如,rasie-1和rasie-2)進行操作,諸如由圖7、8和10所示和連同圖7、8和10所描述的那樣。在各實施例中,相應(yīng)的較高級別冗余模式具有相同的粒度,例如,相應(yīng)的區(qū)域各自是整數(shù)倍數(shù)的相同(例如,尺寸或類型)元素。示例性元素包括一個或多個r-塊和/或塊、一個或多個r-頁面和/或頁面,以及與一個或多個字線相關(guān)聯(lián)的一個或多個單元格。例如,nvm的第一區(qū)域以單個塊的粒度處的rasie-1模式進行操作(例如,第一區(qū)域是整數(shù)數(shù)量的塊,諸如第一區(qū)域是一個或多個r-塊)并且nvm的第二區(qū)域以單個塊的粒度處的rasie-2模式進行操作(例如,第二區(qū)域同樣是整數(shù)數(shù)量的塊,諸如第二區(qū)域是一個或多個r-塊)。因此第一和第二區(qū)域以相應(yīng)的較高級別冗余模式進行操作,該相應(yīng)的較高級別冗余模式都具有相同的粒度(一個塊)。在各種其它實施例中,相應(yīng)的較高級別冗余模式處于各種粒度,例如,相應(yīng)的區(qū)域中的至少一些是整數(shù)倍數(shù)的相應(yīng)的不同元素。例如,nvm的第一區(qū)域以單個頁面的粒度處的rasie-1模式進行操作(例如,第一區(qū)域是整數(shù)數(shù)量的頁面,諸如對應(yīng)于來自nvm的每一管芯的頁面、本文中其它地方所描述的示例性r-頁面)并且nvm的第二頁面以單個塊的粒度處的rasie-2模式進行操作(例如,第二區(qū)域是整數(shù)數(shù)量的塊,諸如第一區(qū)域是一個或多個r-塊)。因此,第一和第二區(qū)域以相應(yīng)的較高級別冗余模式進行操作,該相應(yīng)的較高級別冗余模式具有不同的相應(yīng)的粒度。再例如,nvm的相應(yīng)的區(qū)域以相同的較高級別冗余模式并且在相應(yīng)的不同的粒度處進行操作(例如,第一區(qū)域和第二區(qū)域以rasie-1進行操作,第一區(qū)域處于單個頁面粒度,并且第二區(qū)域處于單個r-塊粒度)。在各實施例和/或使用場景中,較高級別冗余模式的粒度是基于具有相同尺寸、相同類型或兩者的元素的整數(shù)倍數(shù)。例如,相同尺寸(和相同類型)的元素包括背景中的頁面,其中例如歸因于相同的較低級別冗余編碼率,頁面中的每一個是相同的尺寸(并且頁面中的每一個是相同的類型,‘頁面’)。再例如,相同類型(但不同尺寸)的元素包括背景中的頁面,其中例如歸因于不同的較低級別冗余編碼率,頁面中的一些具有與頁面中的其它不同的尺寸,但所有的頁面具有相同的類型,‘頁面’。圖16示出了在如圖6所示的閃存管芯的布置的背景中,混合粒度較高級別冗余的實施例的選擇的細節(jié)。圖16明確地示出了閃存管芯610.0、610.63、610.64和610.65,并且通過省略號(...)隱含地示出了閃存管芯610.1......610.62。塊和閃存管芯的塊內(nèi)的頁面的選擇的細節(jié)被示出。多個r-塊被示為r-塊660.0、660.1、660.2......和660.r。多個r-頁面被示為r-頁面1600、1601、1602……和1609(共同地是r-塊660.0)。r-頁面概念地對應(yīng)于來自多個nvm設(shè)備的頁面的邏輯片(如r-塊概念地對應(yīng)于來自多個nvm設(shè)備的塊的邏輯片)。示例性r-頁面是合起來的來自閃存管芯中的每一個的第j個塊的第i個頁面。存在其它示例性r-頁面,諸如概念地對應(yīng)于r-塊的各示例,諸如合起來的來自閃存管芯中的每一個的塊的第i個和第i+1個頁面。如所示,r-頁面1600是合起來的來自閃存管芯中的每一個的第一個塊的第一個頁面(頁面610.0p0......610.63p0、610.64p0和610.65p0)。r-頁面1601是合起來的來自閃存管芯中的每一個的第一個塊的第二個頁面(頁面610.0p1......610.63p1、610.64p1和610.65p1)。r-頁面1602是合起來的來自閃存管芯中的每一個的第一個塊的第三個頁面(頁面610.0p2......610.63p2、610.64p2和610.65p2)。r-頁面1609是合起來的來自閃存管芯中的每一個的第一個塊的最后一個頁面(頁面610.0pp......610.63pp、610.64pp和610.65pp)。如下,閃存管芯的各區(qū)域被示為正并行地以各種粒度處的相應(yīng)的較高級別冗余模式進行操作。r-頁面1600以頁面的粒度處的rasie-2模式進行操作并且包括存儲在閃存管芯610.0......610.63的分別的頁面610.0p0......610.63p0中的數(shù)據(jù)信息1600.d以及存儲在閃存管芯610.64和610.65的分別的頁面610.64p0和610.65p0中的相應(yīng)的冗余信息1600.r。r-頁面1601同樣以頁面的粒度處的rasie-2模式進行操作并且包括存儲在閃存管芯610.0......610.63的分別的頁面610.0p1......610.63p1中的數(shù)據(jù)信息1601.d以及存儲在閃存管芯610.64和610.65的分別的頁面610.64p1和610.65p1中的相應(yīng)的冗余信息1601.r。r-頁面1602以頁面的粒度處的rasie-1模式進行操作并且包括存儲在閃存管芯610.0......610.64的分別的頁面610.0p2......610.64p2中的數(shù)據(jù)信息1602.d以及存儲在閃存管芯610.65的頁面610.65p2中的相應(yīng)的冗余信息1602.r。r-頁面1609以頁面的粒度處的rasie-3模式進行操作并且包括存儲在閃存管芯610.0......610.62的分別的頁面610.0pp......610.62pp中的數(shù)據(jù)信息1609.d以及存儲在閃存管芯610.63......610.65的分別的頁面610.63pp......610.65pp中的相應(yīng)的冗余信息1609.r。注意閃存管芯610.62(以及在其中的頁面,諸如頁面610.62pp)被隱含地示出而不是被明確地示出。相比以相同的頁面粒度處的相應(yīng)的較高級別冗余模式進行操作的r-頁面1600、1601、1602和1609,r-塊660.1、660.2和660.r以相同的塊粒度處的相應(yīng)的較高級別冗余模式進行操作。具體地,r-塊660.1以塊的粒度處的rasie-2模式進行操作并且包括存儲在閃存管芯610.0......610.63的分別的塊610.0b1......610.63b1中的數(shù)據(jù)信息1610.d以及存儲在閃存管芯610.64和610.65的分別的塊610.64b1和610.65b1中的相應(yīng)的冗余信息1610.r。r-塊660.2以塊的粒度處的rasie-1模式進行操作并且包括存儲在閃存管芯610.0......610.64的分別的塊610.0b2......610.64b2中的數(shù)據(jù)信息1620.d以及存儲在閃存管芯610.65的塊610.65b2中的相應(yīng)的冗余信息1620.r。r-塊660.r以塊的粒度處的rasie-3模式進行操作并且包括存儲在閃存管芯610.0......610.62的分別的塊610.0bb......610.62bb中的數(shù)據(jù)信息16109.d以及存儲在閃存管芯610.63……610.65的分別的塊610.63bb……610.65bb中的相應(yīng)的冗余信息1690.r。因此r-頁面1600、1601、1602和1609都并行地以相同的一個頁面粒度處的各種較高級別冗余模式進行操作(從而使得每一區(qū)域是來自閃存管芯610.0……610.65中的每一個的相應(yīng)的頁面)。進一步,r-塊660.0、660.1、660.2和660.r都并行地以相同的一個塊粒度處的各種較高級別冗余模式進行操作(從而使得每一區(qū)域是來自閃存管芯610.0……610.65中的每一個的相應(yīng)的塊)。最后,r-頁面1600、1601、1602和1609的并行操作與r-塊660.0、660.1、660.2和660.r的并行操作是同時發(fā)生的。因此,閃存管芯共同地并且并行地以各種(混合)粒度處的各種較高級別冗余模式進行操作。作為以粒度的混合處的較高級別冗余模式并行地操作的益處的特定示例,考慮下面。如圖16所示,r-頁面1600、1601和1602各自完全地以相應(yīng)的較高級別冗余模式(具體地rasie-2模式、rasie-2模式和rasie-1模式)進行操作。r-頁面1609完全地以rasie-3模式進行操作。盡管未明確地示出,但假設(shè)r-塊660.0的剩余的r-頁面完全地以rasie-1模式進行操作。因此,r-塊660.0的全部以具有頁面粒度的較高級別冗余模式進行操作。如所示,r-塊660.1、660.2和660.r各自完全地以相應(yīng)的較高級別冗余模式進行操作。盡管未明確地示出,但假設(shè)剩余的r-塊各自同樣完全地以相應(yīng)的較高級別冗余模式進行操作。因此除了r-塊660.0之外的所有r-塊以具有塊(或替代地r-塊)粒度的較高級別冗余模式進行操作,并且r-塊660.0以具有頁面粒度的較高級別冗余模式進行操作。相比于經(jīng)由rasie-2在單個操作期間從兩個故障中保護,引發(fā)單個頁面(例如,頁面610.63pp)的增加的冗余開銷成本使得經(jīng)由rasie-3在單個操作期間從三個故障中保護r-頁面1609成為可能。在沒有混合粒度較高級別冗余模式的實現(xiàn)中,r-頁面1609的保護引發(fā)整個塊的增加的冗余開銷成本。因此,混合粒度較高級別冗余模式使得用于相同實體(諸如(封裝的)設(shè)備、管芯、r-塊、塊、r-頁面、頁面、與字線相關(guān)聯(lián)的單元格以及前述項中的一個或多個)的相同保護的減少的冗余信息開銷成為可能。圖17示出了在多個混合粒度較高級別冗余模式中的并行操作(并行地在第一和第二粒度較高級別冗余模式中操作1700)的實施例的選擇的細節(jié)。例如,響應(yīng)于一事件,流程開始(開始1701)。流程接著沿著兩個并行路徑繼續(xù),一個用于例如對應(yīng)于nvm的相應(yīng)的區(qū)域的較高級別冗余模式操作的每個相應(yīng)的粒度。在第一粒度中的操作(在第一粒度較高級別冗余模式中操作1702)在此圖中的左邊部分中示出,并且在第二粒度中的操作(在第二粒度較高級別冗余模式中操作1704)在此圖中的右邊部分中示出。如所示,操作對于兩個粒度并行地(例如,完全地或部分地并行的)繼續(xù)。盡管未示出,但在某些實施例和/或使用場景中,在某些情況下,流程從兩個粒度的并行操作中退出,諸如,回復(fù)到在單個粒度中操作(例如,響應(yīng)于重新啟動),或繼續(xù)進行至在多于兩個粒度中的并行操作(例如,響應(yīng)于另一事件)。進一步,盡管此圖示出了在兩個粒度的較高級別冗余模式中的并行操作,然而各種其它實施例實現(xiàn)在各種粒度的較高級別冗余模式中的并行操作。在并行操作的啟動之后,響應(yīng)于諸如來自主機(圖1b的主機102)或來自ssd控制器的內(nèi)部的代理(例如,圖1a的反復(fù)循環(huán)器151)的請求(讀/寫請求1707),流程繼續(xù)至確定此請求對應(yīng)于操作的粒度中的哪一個(粒度?1706)。如果此請求具有第一粒度(第一1706.1),則流程繼續(xù)至根據(jù)第一粒度處理此請求(根據(jù)第一粒度較高級別冗余模式讀/寫1703)。如果此請求具有第二粒度(第二1706.2),則流程繼續(xù)至根據(jù)第二粒度處理此請求(根據(jù)第二粒度較高級別冗余模式讀/寫1705)。啟動所示流程(例如,經(jīng)由開始1701)的事件和/或啟動在多于兩個粒度中的并行操作(未明確地示出)的事件的示例包括故障的檢測(例如,較低級別不可糾正的讀錯誤或?qū)?編程故障)。在各實施例中,由所示流程的啟動(例如,經(jīng)由開始1701)和/或在多于兩個粒度中的操作的啟動(未明確地示出)所暗示的轉(zhuǎn)換對應(yīng)于操作模式的動態(tài)轉(zhuǎn)換(例如,圖8的動態(tài)地轉(zhuǎn)換操作模式809)。注意這里以及本文中的其它地方,與多個粒度處的較高級別冗余模式的并行操作有關(guān)的描述例如指的是根據(jù)此多個粒度被同時地用于存儲信息和/或同時地可用于寫入/從中讀取信息的多個實體。實體的示例包括(封裝的)設(shè)備、管芯、r-塊、塊、r-頁面、頁面、與字線相關(guān)聯(lián)的單元格以及前述項中的一個或多個。在各時間點,當并行地在此多個粒度處操作時,下列中的任何一個或多個:這些實體中的僅單個實體正在執(zhí)行(或替代地正被例如ssd控制器引導(dǎo)以執(zhí)行)單個操作(例如,寫或讀);這些實體中的各種實體正在并行地執(zhí)行各種相應(yīng)的操作;以及這些實體中的一個或多個的各種子實體正在并行地執(zhí)行各種相應(yīng)的操作。例如,考慮管理幾個閃存管芯的ssd控制器。如下,ssd控制器并行地以各種粒度處的各種較高級別冗余模式操作閃存管芯的各區(qū)域。ssd控制器以r-塊的粒度處的rasie-1模式操作區(qū)域中的第一個并且以r-塊的粒度處的rasie-2模式操作區(qū)域中的第二個。ssd控制器以r-頁面的粒度處的rasie-2模式操作區(qū)域中的第三個并且以r-頁面的粒度處的rasie-3模式操作區(qū)域中的第四個。在并行操作期間,區(qū)域中的每一個根據(jù)r-塊或r-頁面粒度同時地存儲信息并且同時地可用于寫/讀信息。繼續(xù)此示例,在并行操作期間的一段時間上,ssd控制器順序地將一系列寫命令提供至閃存管芯中的每一個。此一系列寫命令對應(yīng)于寫入第一區(qū)域的全部并且是根據(jù)r-塊的粒度處的rasie-1模式。在某些場景中,寫命令中的每一個是由ssd控制器一次一個地發(fā)出至閃存管芯。因此ssd控制器一次執(zhí)行單個操作同時以各種粒度處的各種較高級別冗余模式并行地操作多個區(qū)域。在某些場景中,這些寫命令在相對短的時間跨度中由閃存管芯接收,使得閃存管芯中的至少兩個或多個能夠至少部分地并行地繼續(xù)進行相應(yīng)的頁面編程操作。因此,此至少兩個或多個閃存管芯正并行地執(zhí)行多個操作同時正以各種粒度處的各種較高級別冗余模式并行地進行操作。在某些實施例和/或使用場景中,以多個粒度處的較高級別冗余模式并行地操作與自適應(yīng)較低級別碼率結(jié)合使用。例如,nvm的多個r-塊最初以r-塊粒度處的rasie-1模式并且利用第一自適應(yīng)較低級別碼率進行操作。接著這些r-塊中的特定一個的多個頁面中的一個變得較不可靠。作為響應(yīng),較不可靠頁面的讀單元中的一個或多個利用第二自適應(yīng)較低級別碼率進行操作,該第二自適應(yīng)較低級別碼率具有比第一自適應(yīng)較低級別碼率好的錯誤糾正。隨后,較不可靠頁面變得進一步不可靠。作為響應(yīng),包括較不可靠頁面的r-頁面以r-頁面的粒度處的第二較高級別冗余模式(具有比第一較高級別冗余模式好的錯誤糾正)進行操作。此特定r-塊的其它r-頁面繼續(xù)以第一較高級別冗余模式進行操作,但現(xiàn)在處于r-頁面(而不是r-塊)的粒度。除了此特定r-塊之外的r-塊繼續(xù)以第一較高級別冗余模式并且在r-塊的粒度處進行操作。因此,盡管此較不可靠頁面變得越來越不可靠,然而此較不可靠頁面仍然是可用的(雖然處于減少的可用存儲容量)。因此,在某些場景中,以多個粒度處的較高級別冗余模式并行地操作連同自適應(yīng)較低級別碼率一起使得改進的nvm和/或ssd壽命成為可能。其它實施例信息在各實施例中,圖8、10-12、13a-13d、14a-14b、15a-15b和17的一個或多個元素的處理或與圖8、10-12、13a-13d、14a-14b、15a-15b和17的一個或多個元素有關(guān)的處理完全地或部分地圖1a的一個或多個元素(或其部分)來執(zhí)行。例如,cpu171的軟件執(zhí)行能力的一部分被用于管理較高級別冗余處理,諸如通過引導(dǎo)如由圖8所示的操作模式的動態(tài)轉(zhuǎn)換、通過引導(dǎo)如由圖12和圖13a-13d所示的數(shù)據(jù)恢復(fù)操作和/或通過引導(dǎo)如由圖17所示的在較高級別冗余模式的各種粒度中的并行操作。再例如,數(shù)據(jù)處理121包括硬件元件,這些硬件元件致力于和/或?qū)S糜诟鶕?jù)諸如由圖11、12、13a-13d和15c中的任何一個或多個所示的計算的較高級別冗余信息的計算。示例性實現(xiàn)技術(shù)在某些實施例中,由實現(xiàn)用于nvm(例如,閃存存儲器)、計算主機閃存控制器和/或ssd控制器(諸如圖1a的ssd控制器100)的混合粒度較高級別冗余的系統(tǒng)所執(zhí)行的操作的全部或任意部分的各種組合以及提供前述操作的全部或部分的處理器、微處理器、片上系統(tǒng)、專用集成電路、硬件加速器或其它電路系統(tǒng)的部分是由與通過計算機系統(tǒng)的處理兼容的規(guī)范規(guī)定。此規(guī)范是根據(jù)各種描述,諸如硬件描述語言、電路描述、網(wǎng)表描述、掩碼描述或布局描述。示例性描述包括:verilog、vhdl、spice、spice變型諸如pspice、ibis、lef、def、gds-ii、oasis或其它描述。在各實施例中,此處理包括解讀、編輯、模擬和綜合的任意組合以產(chǎn)生、證實或規(guī)定適用于包含在一個或多個集成電路上的邏輯和/或電路。根據(jù)各實施例,每一集成電路根據(jù)各種技術(shù)是可設(shè)計的和/或可制造的。此技術(shù)包括可編程技術(shù)(諸如現(xiàn)場或掩??删幊涕T陣列集成電路)、半定制技術(shù)(諸如完全地或部分地基于單元的集成電路)以及全定制技術(shù)(諸如基本上專用的集成電路)、其任意組合或與集成電路的設(shè)計和/或制造兼容的任何其它技術(shù)。在某些實施例中,如由其中存儲有一組指令的計算機可讀介質(zhì)所描述的操作的全部或部分的各種組合通過一個或多個程序指令的執(zhí)行和/或解釋、通過一個或多個源和/或腳本語言語句的解釋和/或編譯、或通過由編譯、翻譯和/或解釋以編程和/或腳本語言語句表達的信息所產(chǎn)生的二進制指令的執(zhí)行來執(zhí)行。此語句與任何標準的編程或腳本語言(諸如c、c++、fortran、pascal、ada、java、vbscript和shell)兼容。程序指令、語言語句或二進制指令中的一個或多個可選地被存儲在一個或多個計算機可讀存儲介質(zhì)元件上。在各實施例中,程序指令中的一些、全部或各種部分被實現(xiàn)為一個或多個函數(shù)、例程、子例程、內(nèi)嵌(in-line)例程、程序、宏命令或其部分。結(jié)論為了方便準備文字和附圖,在說明書中作出特定選擇,并且除非存在相反指示,這些選擇本身不應(yīng)被解釋為傳達關(guān)于所描述的實施例的結(jié)構(gòu)或操作的附加信息。這些選擇的示例包括:用于圖形編號的指定的特定組織或分配以及用于標識和參考實施例的特征和元素的元素標識符(例如,插圖編號或數(shù)值標志符)的特定組織或分配。詞語“包括(includes)”或“包括有(including)”特別地旨在被解釋為描述開放式范圍的邏輯組的抽象化并且不旨在傳達物理封閉,除非明確地接著單詞“在…內(nèi)(within)”。盡管出于描述和理解清楚的目的部分詳細地描述了前述實施例,然而本發(fā)明不限于所提供的細節(jié)。存在本發(fā)明的許多實施例。所公開的實施例是示例性的并不是限制性的。將理解,構(gòu)造、布置和使用的許多變型可能與說明書一致,并且位于發(fā)布的專利的權(quán)利要求的范圍內(nèi)。例如,根據(jù)每一組件塊中的各實施例,互連和功能單元位寬、時鐘速度和所使用的技術(shù)的類型是可變的。賦予互連和邏輯的名稱僅僅是示例性的,并且不應(yīng)被解釋為限制所描述的概念。流程圖和流程圖過程、行動和功能元件的順序和布置根據(jù)各實施例是可變的。同樣,除非明確陳述相反情況,所規(guī)定的值范圍、所使用的最大和最小值或其它特別規(guī)定(諸如閃存技術(shù)類型;以及寄存器和緩沖器中的條目或階段的數(shù)量)僅僅是所描述的實施例的那些、被期望來跟蹤實現(xiàn)技術(shù)中的改進和變化并且不應(yīng)被解釋為限制。從功能上,本領(lǐng)域已知的等效技術(shù)可代替所描述的那些用來實現(xiàn)各種部件、子系統(tǒng)、操作、功能、例程、子例程、內(nèi)嵌例程、程序、宏命令或其部分。也要理解實施例的很多功能方面可選擇性地在硬件(例如,一般專用電路)或軟件(例如,經(jīng)由某種方式的程序化控制器或處理器)中實現(xiàn),因為實施例的功能依賴更快的處理(促進先前在硬件中的功能到軟件中的遷移)和更高的集成密度(促進先前在軟件中的功能到硬件中的遷移)的設(shè)計約束和技術(shù)趨勢。各實施例的特定變型包括但不限于:分區(qū)的不同;不同的形成因素和配置;不同操作系統(tǒng)和其它系統(tǒng)軟件的使用;不同接口標準、網(wǎng)絡(luò)協(xié)議或通信鏈路的使用;以及當根據(jù)特定應(yīng)用的唯一的工程和商業(yè)約束實現(xiàn)本文中所描述的概念時被預(yù)期的其它變型。各實施例已詳細地進行描述并且環(huán)境背景很好地超過了對于所描述的實施例的很多方面的最低實現(xiàn)所需的環(huán)境背景。本領(lǐng)域普通技術(shù)人員將意識到一些實施例省略了公開的部件或特征而沒有改變在剩余元素之中的基本協(xié)作。因此理解到不需要所公開的細節(jié)中的很多來實現(xiàn)所描述的實施例的各個方面。到剩余元素可與現(xiàn)有技術(shù)區(qū)別開的程度,被省略的部件和特征不限制本文中所描述的概念。所有這些設(shè)計的變型是在由所描述的實施例傳達的教導(dǎo)上的非實質(zhì)性變化。同樣理解本文中所描述的實施例具有到其它計算和網(wǎng)絡(luò)化應(yīng)用的廣泛適用性,并且不限于所描述實施例的特定應(yīng)用或行業(yè)。因此本發(fā)明被解釋為包括在發(fā)布的專利的權(quán)利要求的范圍內(nèi)所涵蓋的所有可能的修改和變型。當前第1頁12
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1