国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      與受保護(hù)數(shù)據(jù)分開存儲奇偶校驗(yàn)數(shù)據(jù)的制作方法

      文檔序號:12271111閱讀:611來源:國知局
      與受保護(hù)數(shù)據(jù)分開存儲奇偶校驗(yàn)數(shù)據(jù)的制作方法與工藝

      本公開涉及存儲器管理,以及更加具體地,涉及在存儲裝置中分配奇偶校驗(yàn)數(shù)據(jù)。



      背景技術(shù):

      計(jì)算機(jī)或者其他電子裝置中使用的存儲器裝置可以是非易失性存儲器或者易失性存儲器。非易失性存儲器和易失性存儲器之間的主要差異在于非易失性存儲器可以持續(xù)地存儲數(shù)據(jù)而不需要永久的電源。結(jié)果,非易失性存儲器裝置發(fā)展為用于各種電子應(yīng)用的普及類型的存儲器。例如,包括閃存存儲器裝置的非易失性存儲器裝置通常并入固態(tài)存儲裝置,比如固態(tài)驅(qū)動器(SSD)中。

      在某些實(shí)例中,當(dāng)寫入數(shù)據(jù)到非易失性存儲器裝置時(shí),控制器可以執(zhí)行一個(gè)或多個(gè)操作以保護(hù)數(shù)據(jù)免受存儲器錯(cuò)誤。例如,除寫入數(shù)據(jù)到非易失性存儲器裝置之外,控制器可以生成奇偶校驗(yàn)數(shù)據(jù)和將奇偶校驗(yàn)數(shù)據(jù)寫入到存儲器裝置,該存儲器裝置可以用于在比如存儲器錯(cuò)誤的情況下恢復(fù)數(shù)據(jù)。



      技術(shù)實(shí)現(xiàn)要素:

      在一個(gè)實(shí)例中,儲存裝置包括包含多個(gè)存儲器裝置的主儲存陣列,一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置和配置為存儲數(shù)據(jù)塊的控制器。在該實(shí)例中,控制器配置為通過至少將數(shù)據(jù)塊寫入到主儲存陣列、確定用于數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù)和將所確定的奇偶校驗(yàn)數(shù)據(jù)的至少一部分寫入到一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置,來存儲數(shù)據(jù)塊。

      在另一實(shí)例中,一種方法包括:由儲存裝置的控制器將數(shù)據(jù)塊寫入到包括多個(gè)存儲器裝置的主儲存陣列,由控制器確定用于數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù),和由控制器將所確定的奇偶校驗(yàn)數(shù)據(jù)寫入到一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置。

      在另一實(shí)例中,一種計(jì)算機(jī)可讀存儲介質(zhì)存儲指令,該指令當(dāng)被執(zhí)行時(shí),使得儲存裝置的一個(gè)或多個(gè)處理器:將數(shù)據(jù)塊寫入到包括多個(gè)存儲器裝置的主儲存陣列,確定用于數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù),和將所確定的奇偶校驗(yàn)數(shù)據(jù)寫入到一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置。

      在另一實(shí)例中,一種系統(tǒng),包括:包括多個(gè)存儲器裝置的主儲存陣列,一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置,用于將數(shù)據(jù)塊寫入到主儲存陣列的裝置,用于確定用于數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù)的裝置和用于將所確定的奇偶校驗(yàn)數(shù)據(jù)寫入到一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置的裝置。

      在以下的附圖和說明書中提到一個(gè)或多個(gè)實(shí)例的細(xì)節(jié)。其他特征、目的和優(yōu)點(diǎn)將從說明書、附圖和從權(quán)利要求是明顯的。

      附圖說明

      圖1是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的儲存裝置可以用作主機(jī)裝置的儲存裝置的示例儲存環(huán)境的概念性和示意性框圖。

      圖2是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的包括多個(gè)塊的示例存儲器裝置的概念性框圖,其中每個(gè)塊包括多個(gè)頁。

      圖3是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的控制器的示例細(xì)節(jié)的概念性和示意性框圖。

      圖4是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的在存儲器裝置的相同頁存儲的用戶數(shù)據(jù)和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)的示例邏輯配置的概念圖。

      圖5是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的在存儲器裝置的相同頁存儲的用戶數(shù)據(jù)和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)的示例物理配置的概念圖。

      圖6是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的在存儲器裝置的不同頁存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例邏輯配置的概念圖。

      圖7是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的在存儲器裝置的不同頁存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例物理配置的概念圖。

      圖8是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的在不同存儲器裝置存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例邏輯配置的概念圖。

      圖9是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的在不同存儲器裝置存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例物理配置的概念圖。

      圖10是根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的用于在與關(guān)聯(lián)用戶數(shù)據(jù)不同的存儲器裝置中存儲至少一些奇偶校驗(yàn)數(shù)據(jù)的示例技術(shù)的流程圖。

      具體實(shí)施方式

      本公開描述了包括控制器的存儲裝置,該控制器配置為在主存儲器裝置中存儲用戶數(shù)據(jù)和在奇偶校驗(yàn)存儲器裝置中存儲與用戶數(shù)據(jù)相關(guān)聯(lián)的至少一些糾錯(cuò)碼(ECC)奇偶校驗(yàn)數(shù)據(jù)。通過在奇偶校驗(yàn)存儲器裝置中存儲至少一些ECC奇偶校驗(yàn)數(shù)據(jù),可以由ECC奇偶校驗(yàn)數(shù)據(jù)使用大量的儲存設(shè)備,這可以允許更強(qiáng)的ECC奇偶校驗(yàn)技術(shù),更好地保護(hù)用戶數(shù)據(jù)的完整性。比較起來,在一些存儲裝置中,ECC奇偶校驗(yàn)數(shù)據(jù)的大小可能限于用戶數(shù)據(jù)塊的大小和存儲器裝置的物理頁的大小之間的差值。例如,在存儲器裝置中的物理頁包括8320字節(jié)且用戶數(shù)據(jù)塊的大小是8192字節(jié)的情況下,奇偶校驗(yàn)數(shù)據(jù)的大小可能限于128字節(jié)。在奇偶校驗(yàn)存儲器裝置中存儲至少一些ECC奇偶校驗(yàn)數(shù)據(jù)還可以促進(jìn)靈活的ECC強(qiáng)度,例如,隨著存儲裝置的年齡增加而增加ECC奇偶校驗(yàn)數(shù)據(jù)的量。

      另外,在奇偶校驗(yàn)存儲器裝置中存儲至少一些ECC奇偶校驗(yàn)數(shù)據(jù)與使用主存儲器裝置內(nèi)數(shù)據(jù)的多個(gè)頁來存儲ECC奇偶校驗(yàn)信息相比,可以減少主存儲器裝置的讀取訪問。在某些實(shí)例中,比如在控制器使用先進(jìn)的邏輯到物理地址映射方案的情況下,可以使得由控制器使用的奇偶校驗(yàn)數(shù)據(jù)的大小獨(dú)立于存儲器裝置的物理頁的大小。具體來說,控制器可以分配多個(gè)物理頁地址以存儲奇偶校驗(yàn)數(shù)據(jù)。以這種方式,控制器可以使用較高的ECC強(qiáng)度。但是,因?yàn)槠媾夹r?yàn)數(shù)據(jù)的一部分存儲在存儲器裝置的與用戶數(shù)據(jù)分開的頁中,控制器可能需要讀取第一物理頁和第二物理頁兩者以檢索用戶數(shù)據(jù)。類似地,當(dāng)存儲用戶數(shù)據(jù)時(shí),控制器可能需要寫入到存儲器裝置中的兩個(gè)不同物理地址,這可能不是期望的(例如,由于增加的周期計(jì)數(shù)、降低的性能、降低的可靠性和增加的讀取干擾)。減少主存儲器裝置的讀取和寫入訪問可以減少耗損并延長主存儲器裝置的壽命。

      根據(jù)本公開的一個(gè)或多個(gè)技術(shù),控制器可以在單獨(dú)的奇偶校驗(yàn)存儲器裝置中存儲ECC奇偶校驗(yàn)數(shù)據(jù)的至少一部分。例如,控制器可以確定與用戶數(shù)據(jù)塊相關(guān)聯(lián)的奇偶校驗(yàn)數(shù)據(jù),在主存儲器裝置中存儲用戶數(shù)據(jù)塊,和在與主存儲器裝置分開的奇偶校驗(yàn)存儲器裝置中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。在某些實(shí)例中,控制器可以并行地將奇偶校驗(yàn)數(shù)據(jù)的至少一部分寫入到奇偶校驗(yàn)存儲器裝置并將用戶數(shù)據(jù)塊寫入到主存儲器裝置。類似地,在某些實(shí)例中,控制器可以并行地從奇偶校驗(yàn)存儲器裝置讀取奇偶校驗(yàn)數(shù)據(jù)的至少一部分和從主存儲器裝置讀取用戶數(shù)據(jù)塊。以這種方式,控制器可以使用更大尺寸的奇偶校驗(yàn)數(shù)據(jù)而不顯著地降低性能。

      在某些實(shí)例中,奇偶校驗(yàn)存儲器裝置可以是與主存儲器裝置相同類型的存儲器裝置。例如,在某些實(shí)例中,奇偶校驗(yàn)存儲器裝置和主存儲器裝置兩者都可以是NAND閃存存儲器裝置,但是可以是由控制器分開地可尋址的。但是,奇偶校驗(yàn)數(shù)據(jù)的大小可以顯著地小于用戶數(shù)據(jù)的大?。灰虼?,奇偶校驗(yàn)存儲器裝置的大小可以顯著地小于主存儲器裝置的大小。例如,奇偶校驗(yàn)存儲器裝置中存儲的奇偶校驗(yàn)數(shù)據(jù)的大小可以小于主存儲器裝置中存儲的用戶數(shù)據(jù)的大小的十分之一。

      根據(jù)本公開的一個(gè)或多個(gè)技術(shù),存儲裝置可以包括主存儲器裝置和作為與主裝置不同類型的存儲器裝置的奇偶校驗(yàn)存儲器裝置。在某些實(shí)例中,主存儲裝置可以是NAND閃存存儲器裝置且奇偶校驗(yàn)存儲器裝置可以是儲存類的類型的存儲器裝置,比如磁阻隨機(jī)存取存儲器(MRAM)裝置、相變隨機(jī)存取存儲器(PRAM)裝置或者阻抗隨機(jī)存取存儲器(ReRAM)裝置。與一些閃存存儲器裝置(例如,NAND閃存存儲器裝置)相比,這種儲存類的存儲器裝置可以具有每比特增加的成本和減小的等待時(shí)間(例如,毫微秒相對微秒)。如上所述,奇偶校驗(yàn)數(shù)據(jù)的大小可以顯著地小于用戶數(shù)據(jù)的大小。因此,奇偶校驗(yàn)存儲器裝置的大小可以顯著地小于主存儲器裝置的大小,這可以使得奇偶校驗(yàn)存儲器裝置的成本更不顯著。另外,因?yàn)槠媾夹r?yàn)存儲器裝置可以具有比主存儲器裝置更短的等待時(shí)間,奇偶校驗(yàn)數(shù)據(jù)到奇偶校驗(yàn)存儲器裝置的寫入和讀取可以占用比用戶數(shù)據(jù)到主存儲器裝置的寫入和讀取更少的時(shí)間。以這種方式,控制器可以使用更大尺寸的奇偶校驗(yàn)數(shù)據(jù)而不顯著地降低性能。

      圖1是圖示根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的儲存裝置6可以用作主機(jī)裝置4的儲存裝置的示例儲存環(huán)境2的概念性和示意性框圖。例如,主機(jī)裝置4可以使用儲存裝置6中包括的非易失性存儲器裝置以存儲和檢索數(shù)據(jù)。在某些實(shí)例中,儲存環(huán)境2可以包括可以操作為儲存陣列的多個(gè)儲存裝置,比如儲存裝置6。例如,儲存環(huán)境2可以包括配置為集合地用作用于主機(jī)裝置4的大容量儲存裝置的廉價(jià)/獨(dú)立盤(RAID)的冗余陣列的多個(gè)儲存裝置6。

      儲存環(huán)境2可以包括主機(jī)裝置4,該主機(jī)裝置4可以存儲數(shù)據(jù)到比如儲存裝置6的一個(gè)或多個(gè)儲存裝置和/或從該一個(gè)或多個(gè)儲存裝置檢索數(shù)據(jù)。如圖1所示,主機(jī)裝置4可以經(jīng)由接口14與儲存裝置6通信。主機(jī)裝置4可以包括各種裝置中的任意,包括計(jì)算機(jī)服務(wù)器、網(wǎng)絡(luò)附加存儲(NAS)單元、臺式計(jì)算機(jī)、筆記本(即,膝上型)計(jì)算機(jī)、平板計(jì)算機(jī)、機(jī)頂盒、比如所謂的“智能”電話的電話機(jī)、所謂的“智能”平板、電視、相機(jī)、顯示裝置、數(shù)字媒體播放器、視頻游戲主機(jī)、視頻流裝置,等等。

      如圖1所示,儲存裝置6可以包括控制器8、非易失性存儲器陣列10(NVMA10)、易失性存儲器12、接口14和一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置20。在某些實(shí)例中,儲存裝置6可以包括為了清楚起見而在圖1中未示出的附加組件。例如,儲存裝置6可以包括印制電路板(PB)等,儲存裝置6的組件機(jī)械地附于該印制電路板,且該印制電路板包括電氣地互連儲存裝置6的組件的導(dǎo)電跡線。在某些實(shí)例中,儲存裝置6的連接器配置和物理尺寸可以符合一個(gè)或多個(gè)標(biāo)準(zhǔn)形式因素。一些示例標(biāo)準(zhǔn)形式因素包括,但是不限于3.5”硬盤驅(qū)動器(HDD)、2.5”HDD、1.8”HDD、外圍組件互連(PCI)、PCI-擴(kuò)展(PCI-X)、高速PCI(PCIe)(例如,PCIe x1、x4、x8、x16、PCIe迷你卡、MiniPCI等)。在某些實(shí)例中,儲存裝置6可以直接耦合(例如,直接焊接)到主機(jī)裝置4的母板。

      儲存裝置6可以包括用于與主機(jī)裝置4接口連接的接口14。接口14可以包括用于與主機(jī)裝置4交換數(shù)據(jù)的數(shù)據(jù)總線和用于與主機(jī)裝置4交換命令的控制總線中的一個(gè)或者兩個(gè)。接口14可以根據(jù)任何適當(dāng)?shù)膮f(xié)議操作。例如,接口14可以根據(jù)一個(gè)或多個(gè)以下協(xié)議操作:先進(jìn)技術(shù)附件(ATA)(例如,串行-ATA(SATA)和并行-ATA(PATA))、光纖信道、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、串行附加SCSI(SAS)、外圍組件互連(PCI)、PCI-直達(dá)、或者非易失性高速存儲器(NVMe)。接口14的電連接(例如,數(shù)據(jù)總線、控制總線或者兩者)電連接到控制器8,提供主機(jī)裝置4和控制器8之間的電連接,允許數(shù)據(jù)在主機(jī)裝置4和控制器8之間交換。在某些實(shí)例中,接口14的電連接還可以允許儲存裝置6從主機(jī)裝置4接收功率。

      儲存裝置6可以包括NVMA10,其可以包括多個(gè)存儲器裝置16Aa-16Nn(集合地,“存儲器裝置16”)。存儲器裝置16中的每一個(gè)可以配置為存儲和/或檢索數(shù)據(jù)。例如,存儲器裝置16的一存儲器裝置可以從指令存儲器裝置存儲數(shù)據(jù)的控制器8接收數(shù)據(jù)和消息。類似地,存儲器裝置16的存儲器裝置可以從指令存儲器裝置檢索數(shù)據(jù)的控制器8接收消息。在某些實(shí)例中,存儲器裝置16中的每一個(gè)可以被稱為模(die)。在某些實(shí)例中,單個(gè)物理芯片可以包括多個(gè)模(即,多個(gè)存儲器裝置16)。在某些實(shí)例中,存儲器裝置16中的每一個(gè)可以配置為存儲相對大量的數(shù)據(jù)(例如,128MB、256MB、512MB、1GB、2GB、4GB、8GB、16GB、32GB、64GB、128GB、256GB、512GB、1TB等)。

      在某些實(shí)例中,存儲器裝置16可以包括閃存存儲器裝置。閃存存儲器裝置可以包括基于NAND或者NOR的閃存存儲器裝置,且可以基于每個(gè)閃存存儲器單元的晶體管的浮置柵極中包括的電荷來存儲數(shù)據(jù)。在NAND閃存存儲器裝置中,閃存存儲器裝置可以被劃分為多個(gè)塊。圖2是圖示包括多個(gè)塊17A-17N(集合地,“塊17”)的示例存儲器裝置16Aa的概念性框圖,其中每個(gè)塊包括多個(gè)頁19Aa-19Nm(集合地,“頁19”)。塊17中的每個(gè)塊可以包括多個(gè)NAND單元??梢允褂米志€串行地電連接NAND單元的行以定義頁(頁19的一個(gè)頁)。多個(gè)頁19中的每一個(gè)的各個(gè)單元可以電連接到各個(gè)比特線??刂破?可以在頁級別寫入數(shù)據(jù)到NAND閃存存儲器裝置和從NAND閃存存儲器裝置讀取數(shù)據(jù),并在塊級別從NAND閃存存儲器裝置擦除數(shù)據(jù)。

      在某些實(shí)例中,存儲器裝置16可以包括任何類型的非易失性存儲器裝置。存儲器裝置16的一些實(shí)例包括,但不限于閃存存儲器裝置(例如,NAND或者NOR)、相變存儲器(PCM)裝置、阻抗隨機(jī)存取存儲器(ReRAM)裝置、磁阻隨機(jī)存取存儲器(MRAM)裝置、鐵電隨機(jī)存取存儲器(F-RAM)、全息存儲器裝置和任何其他類型的非易失性存儲器裝置。

      在某些實(shí)例中,控制器8分開地連接到存儲器裝置16的每個(gè)存儲器裝置可能是不實(shí)際的。這樣,存儲器裝置16和控制器8之間的連接可以多路復(fù)用。作為示例,存儲器裝置16可以被分組為信道18A-18N(集合地,“信道18”)。例如,如圖1所示,存儲器裝置16Aa-16An可以被分組為第一信道18A,且存儲器裝置16Na-16Nn可以被分組為第N信道18N。分組為信道18中的每一個(gè)的存儲器裝置16可以共享到控制器8的一個(gè)或多個(gè)連接。例如,分組為第一信道18A的存儲器裝置16可以附加到公共I/O總線和公共控制總線。儲存裝置6可以包括用于信道18的每個(gè)信道的公共I/O總線和公共控制總線。在某些實(shí)例中,信道18的每個(gè)信道可以包括可以用于每個(gè)信道上的多路存儲器裝置的一組芯片啟用(CE)線。例如,每個(gè)CE行可以連接到存儲器裝置18中的各個(gè)存儲器裝置。以這種方式,可以減少控制器8和存儲器裝置18之間的單獨(dú)連接的數(shù)目。另外,因?yàn)槊總€(gè)信道具有到控制器8的獨(dú)立的一組連接,由于控制器8可以同時(shí)發(fā)布不同命令到每個(gè)信道,連接的減少可以不顯著地影響數(shù)據(jù)吞吐率。

      儲存裝置6可以包括電源11,該電源11可以向儲存裝置6的一個(gè)或多個(gè)組件提供功率。當(dāng)在標(biāo)準(zhǔn)模式下操作時(shí),電源11可以使用由外部裝置,比如主機(jī)裝置4提供的功率,來向一個(gè)或多個(gè)組件提供功率。例如,電源11可以使用經(jīng)由接口14從主機(jī)裝置4接收到功率而向一個(gè)或多個(gè)組件提供功率。在某些實(shí)例中,電源11可以包括配置為當(dāng)在關(guān)閉模式下操作時(shí),比如在停止從外部裝置接收到功率的情況下向一個(gè)或多個(gè)組件提供功率的一個(gè)或多個(gè)儲能組件。以這種方式,電源11可以用作機(jī)載備用電源。一個(gè)或多個(gè)儲能組件的一些實(shí)例包括,但不限于電容器、超級電容器、電池等。

      儲存裝置6還可以包括由控制器8使用以存儲信息的易失性存儲器12。在某些實(shí)例中,控制器8可以使用易失性存儲器12作為高速緩存。例如,控制器8可以在易失性存儲器12中存儲高速緩存的信息13,直到高速緩存的信息13被寫入到存儲器裝置16為止。如圖1所示,易失性存儲器12可以消耗從電源11接收到的功率。易失性存儲器12的實(shí)例包括,但不限于隨機(jī)存取存儲器(RAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、靜態(tài)RAM(SRAM)和同步動態(tài)RAM(SDRAM(例如,DDR1、DDR2、DDR3、DDR3L、LPDDR3、DDR4等))。

      儲存裝置6包括可以管理儲存裝置6的一個(gè)或多個(gè)操作的控制器8。例如,控制器8可以管理數(shù)據(jù)從存儲器裝置16的讀取和/或數(shù)據(jù)到存儲器裝置16的寫入。在某些實(shí)例中,控制器8可以執(zhí)行一個(gè)或多個(gè)操作以管理由存儲器裝置16存儲的數(shù)據(jù)。例如,控制器8可以執(zhí)行一個(gè)或多個(gè)操作以保證由存儲器裝置16存儲的數(shù)據(jù)的完整性,比如存儲用于由存儲器裝置16存儲的用戶數(shù)據(jù)的奇偶校驗(yàn)數(shù)據(jù)。以下參考圖3討論控制器8的附加細(xì)節(jié)。

      根據(jù)本公開的一個(gè)或多個(gè)技術(shù),儲存裝置6可以包括一個(gè)或多個(gè)奇偶校驗(yàn)存儲器裝置20,其可以由控制器8使用以存儲至少一些奇偶校驗(yàn)信息。在某些實(shí)例中,奇偶校驗(yàn)存儲器裝置20可以包括任何類型的非易失性存儲器裝置。奇偶校驗(yàn)存儲器裝置20的一些實(shí)例包括,但不限于閃存存儲器裝置,比如NAND閃存存儲器裝置和/或NOR閃存存儲器裝置,儲存類的存儲器裝置,全息存儲器裝置和任何其他類型的非易失性存儲器裝置。儲存類的存儲器裝置的一些實(shí)例包括,但不限于相變存儲器(PCM)裝置、阻抗隨機(jī)存取存儲器(ReRAM)裝置、磁阻隨機(jī)存取存儲器(MRAM)裝置和鐵電隨機(jī)存取存儲器(F-RAM)。在某些實(shí)例中,儲存類的存儲器裝置可以是字節(jié)可訪問的,具有相對高的耐久性(可與閃存存儲器相比或者大于閃存存儲器),具有相對低的寫和讀等待時(shí)間(例如,低于閃存存儲器,在某些實(shí)例中可與DRAM相比)。

      如上所述,控制器8可以使得存儲器裝置16、奇偶校驗(yàn)存儲器裝置20或者兩者存儲與由存儲器裝置16存儲的用戶數(shù)據(jù)相關(guān)聯(lián)的奇偶校驗(yàn)數(shù)據(jù)。例如,當(dāng)存儲用戶數(shù)據(jù)塊時(shí),控制器8可以確定和存儲用戶數(shù)據(jù)塊與用戶數(shù)據(jù)的異或(XOR)。當(dāng)檢索用戶數(shù)據(jù)塊時(shí),控制器8可以讀取存儲的用戶數(shù)據(jù)塊和與用戶數(shù)據(jù)塊相關(guān)聯(lián)的存儲的奇偶校驗(yàn)數(shù)據(jù)兩者,并使用所存儲的奇偶校驗(yàn)數(shù)據(jù)以驗(yàn)證用戶數(shù)據(jù)塊。在某些實(shí)例中,控制器8可以在存儲器裝置的相同物理頁中存儲奇偶校驗(yàn)數(shù)據(jù)與用戶數(shù)據(jù)。例如,控制器8可以在圖2的存儲器裝置16Aa的塊17A的頁19Aa中與用戶數(shù)據(jù)一起存儲奇偶校驗(yàn)數(shù)據(jù)。

      由控制器8使用的奇偶校驗(yàn)數(shù)據(jù)的大小可以被稱為ECC強(qiáng)度。在某些實(shí)例中,奇偶校驗(yàn)數(shù)據(jù)的較大的大小可以提供相對于數(shù)據(jù)損壞錯(cuò)誤的更好的保護(hù)。但是,隨著奇偶校驗(yàn)數(shù)據(jù)的大小增加,由奇偶校驗(yàn)數(shù)據(jù)消耗的存儲器的量也增加。在某些實(shí)例中,比如在控制器8在存儲器裝置的相同物理頁中存儲奇偶校驗(yàn)數(shù)據(jù)與用戶數(shù)據(jù)的情況下,奇偶校驗(yàn)數(shù)據(jù)的大小可能限于用戶數(shù)據(jù)塊的大小和存儲器裝置的物理頁的大小之間的差值。例如,在物理頁19Aa的大小是8320字節(jié)且用戶數(shù)據(jù)塊的大小是8192字節(jié)的情況下,控制器8可以在與用戶數(shù)據(jù)相同的頁中存儲的奇偶校驗(yàn)數(shù)據(jù)的大小可能限于128字節(jié)。但是,在某些實(shí)例中,可能期望控制器8存儲比用戶數(shù)據(jù)塊的大小和存儲器裝置的物理頁的大小之間的有限大小差值更大的奇偶校驗(yàn)數(shù)據(jù),例如,以提供相對于數(shù)據(jù)損壞錯(cuò)誤的更強(qiáng)的保護(hù)。

      在某些實(shí)例中,控制器8可以使得奇偶校驗(yàn)數(shù)據(jù)的大小獨(dú)立于存儲器裝置16的物理頁的大小,存儲器裝置16的物理頁的大小和用戶數(shù)據(jù)塊的大小之間的差值,或者兩者。例如,控制器8可以在存儲器裝置16內(nèi)的不同物理頁存儲用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)。作為一個(gè)實(shí)例,控制器8可以在存儲器裝置16Aa的頁19Aa中與用戶數(shù)據(jù)一起存儲奇偶校驗(yàn)數(shù)據(jù)的第一部分,并在存儲器裝置16Aa的頁19Ab中存儲奇偶校驗(yàn)數(shù)據(jù)的第二部分。但是,因?yàn)槠媾夹r?yàn)數(shù)據(jù)的第二部分存儲在存儲器裝置16的與用戶數(shù)據(jù)分開的頁中,控制器8可能需要讀取兩個(gè)頁(例如,頁19Aa和頁19Ab)以檢索和解碼用戶數(shù)據(jù)。類似地,當(dāng)存儲用戶數(shù)據(jù)時(shí),控制器8可能需要寫入到存儲器裝置16中的兩個(gè)不同物理頁,這可能不是期望的(例如,由于增加的周期計(jì)數(shù)、降低的性能、降低的可靠性和增加的讀取干擾)。作為另一實(shí)例,與在存儲器裝置16的存儲器裝置內(nèi)與相應(yīng)的用戶數(shù)據(jù)不同的物理頁存儲奇偶校驗(yàn)數(shù)據(jù)相反地,控制器8可以在奇偶校驗(yàn)存儲器裝置20中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。例如,控制器8可以確定用于用戶數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù),在存儲器裝置16中存儲用戶數(shù)據(jù)塊,和在奇偶校驗(yàn)存儲器裝置20中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。在某些實(shí)例中,控制器8可以并行地將奇偶校驗(yàn)數(shù)據(jù)的至少一部分寫入到奇偶校驗(yàn)存儲器裝置20和將用戶數(shù)據(jù)塊寫入到存儲器裝置16。類似地,在某些實(shí)例中,控制器8可以并行地從奇偶校驗(yàn)存儲器裝置20讀取奇偶校驗(yàn)數(shù)據(jù)的至少一部分和從存儲器裝置16讀取用戶數(shù)據(jù)塊。以這種方式,控制器8可以使用較大尺寸的奇偶校驗(yàn)數(shù)據(jù)而沒有或者具有減少的不想要的效果(例如,增加周期計(jì)數(shù)、降低的性能、降低的可靠性和增加的讀取干擾)。

      圖3是圖示控制器8的示例細(xì)節(jié)的概念性和示意性框圖。在某些實(shí)例中,控制器8可以包括地址轉(zhuǎn)換模塊22、寫入模塊24、維護(hù)模塊26、讀取模塊28、調(diào)度模塊30和多個(gè)信道控制器32A-32N(集合地,“信道控制器32”)。在其他實(shí)例中,控制器8可以包括附加的模塊或者硬件單元,或者可以包括更少的模塊或者硬件單元??刂破?可以包括微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或者其他數(shù)字邏輯電路。

      控制器8可以經(jīng)由接口14與主機(jī)裝置4接口連接,并管理數(shù)據(jù)到存儲器裝置16的存儲和數(shù)據(jù)從存儲器裝置16的檢索。例如,控制器8的寫入模塊24可以管理到存儲器裝置16的寫入。例如,寫入模塊24可以經(jīng)由接口14從主機(jī)裝置4接收消息,該消息指令儲存裝置6存儲與邏輯地址相關(guān)聯(lián)的數(shù)據(jù)和可以被稱為用戶數(shù)據(jù)的數(shù)據(jù)。寫入模塊24可以管理用戶數(shù)據(jù)到存儲器裝置16的寫入。

      例如,寫入模塊24可以與地址轉(zhuǎn)換模塊22通信,該地址轉(zhuǎn)換模塊22管理在由主機(jī)裝置4使用以管理數(shù)據(jù)的儲存位置的邏輯地址和由寫入模塊24使用以指導(dǎo)數(shù)據(jù)到存儲器裝置的寫入的物理塊地址之間的轉(zhuǎn)換??刂破?的地址轉(zhuǎn)換模塊22可以使用將由存儲器裝置16存儲的數(shù)據(jù)的邏輯地址(或者邏輯塊地址)轉(zhuǎn)換為由存儲器裝置16存儲的數(shù)據(jù)的物理塊地址的閃存轉(zhuǎn)換層或者表。例如,主機(jī)裝置4可以在到儲存裝置6的指令或者消息中使用由存儲器裝置16存儲的數(shù)據(jù)的邏輯塊地址,同時(shí)寫入模塊24使用數(shù)據(jù)的物理塊地址以控制數(shù)據(jù)到存儲器裝置16的寫入。(類似地,讀取模塊28可以使用物理塊地址以控制數(shù)據(jù)從存儲器裝置16的讀取。)物理塊地址對應(yīng)于存儲器裝置16的實(shí)際的物理塊。在某些實(shí)例中,地址轉(zhuǎn)換模塊22可以在易失性存儲器12中,比如高速緩存的信息13內(nèi)存儲閃存轉(zhuǎn)換層或者表。

      以這種方式,可以允許主機(jī)裝置4使用用于某個(gè)數(shù)據(jù)集的靜態(tài)邏輯塊地址,同時(shí)數(shù)據(jù)實(shí)際上存儲的物理塊地址可以改變。地址轉(zhuǎn)換模塊22可以維持閃存轉(zhuǎn)換層或者表以將邏輯塊地址映射到物理塊地址,以允許由主機(jī)裝置4使用靜態(tài)邏輯塊地址同時(shí)數(shù)據(jù)的物理塊地址可以改變,例如,由于耗損均衡、垃圾收集等。

      如上所述,控制器8的寫入模塊24可以執(zhí)行一個(gè)或多個(gè)操作以管理數(shù)據(jù)到存儲器裝置16的寫入。例如,寫入模塊24可以通過選擇存儲器裝置16內(nèi)的一個(gè)或多個(gè)塊以存儲數(shù)據(jù)和使得包括所選的塊的存儲器裝置16的存儲器裝置實(shí)際上存儲數(shù)據(jù),來管理數(shù)據(jù)到存儲器裝置16的寫入。如上所述,寫入模塊24可以使得地址轉(zhuǎn)換模塊22基于所選的塊更新閃存轉(zhuǎn)換層或者表。例如,寫入模塊24可以從主機(jī)裝置4接收包括數(shù)據(jù)和邏輯塊地址的單元的消息,選擇存儲器裝置16的特定的存儲器裝置內(nèi)的塊以存儲數(shù)據(jù),使得存儲器裝置16的特定的存儲器裝置實(shí)際上存儲數(shù)據(jù)(例如,經(jīng)由與特定的存儲器裝置對應(yīng)的信道控制器32的信道控制器),和使得地址轉(zhuǎn)換模塊22更新閃存轉(zhuǎn)換層或者表以指示邏輯塊地址對應(yīng)于特定的存儲器裝置內(nèi)的所選的塊。

      讀取模塊28可以類似地控制數(shù)據(jù)從存儲器裝置16的讀取。例如,讀取模塊28可以從主機(jī)裝置4接收請求具有相關(guān)聯(lián)的邏輯塊地址的數(shù)據(jù)的消息。地址轉(zhuǎn)換模塊22可以使用閃存轉(zhuǎn)換層或者表將邏輯塊地址轉(zhuǎn)換為物理塊地址。讀取模塊28然后可以控制一個(gè)或多個(gè)信道控制器32以從物理塊地址檢索數(shù)據(jù)。類似于寫入模塊24,讀取模塊28可以選擇一個(gè)或多個(gè)塊并將可以使得信道控制器32從所選的塊讀取數(shù)據(jù)的消息傳遞到信道控制器32。

      為了將具有邏輯值0(充電的)的比特寫入到具有前一邏輯值1(未充電的)的比特,使用大電流。該電流可以充分地大,使得其可能導(dǎo)致相鄰閃存存儲器單元的電荷的無意改變。為了保護(hù)免于無意改變,閃存存儲器單元的整個(gè)塊可以在將任何數(shù)據(jù)寫入到塊內(nèi)的單元之前被擦除到邏輯值1(未充電的)。因此,閃存存儲器單元可以在塊級別被擦除和在頁級別被寫入。

      因此,即使為了寫入可能消耗小于一個(gè)頁的量的數(shù)據(jù),控制器8也可能使得整個(gè)塊被擦除。這可能導(dǎo)致寫入放大,這指的是要寫入到存儲器裝置16的從主機(jī)裝置4接收到數(shù)據(jù)量和實(shí)際上寫入到存儲器裝置16的數(shù)據(jù)量之間的比率。寫入放大促成了閃存存儲器單元比不發(fā)生寫入放大時(shí)更快的耗損。當(dāng)由于用于擦除閃存存儲器單元的相對高的電壓而擦除閃存存儲器單元時(shí),閃存存儲器單元的耗損可能發(fā)生。在多個(gè)擦除周期上,相對高的電壓可能造成閃存存儲器單元的改變。最終,閃存存儲器單元可能損壞,以使得數(shù)據(jù)可能不再被寫入到單元。

      控制器8可以實(shí)現(xiàn)以減小閃存存儲器單元的寫入放大和耗損的一個(gè)技術(shù)包括將從主機(jī)裝置4接收到的數(shù)據(jù)寫入到未使用的塊(例如,圖2的塊17)或者部分地使用的塊。例如,如果主機(jī)裝置4發(fā)送數(shù)據(jù)到僅包括已經(jīng)由儲存裝置6存儲的數(shù)據(jù)的小改變的儲存裝置6。則控制器可以將舊的數(shù)據(jù)標(biāo)記為陳舊的或者不再有效的。隨著時(shí)間,與擦除保存舊的數(shù)據(jù)的塊和將所更新的數(shù)據(jù)寫入到相同塊相比,這可能減少暴露的擦除操作塊的數(shù)目。

      響應(yīng)于從主機(jī)裝置4接收寫入命令,寫入模塊24可以確定在存儲器裝置16的哪個(gè)物理位置(塊17)寫入數(shù)據(jù)。例如,寫入模塊24可以從地址轉(zhuǎn)換模塊22或者維護(hù)模塊26請求為空的(例如,不存儲數(shù)據(jù))、部分地空的(例如,僅塊的一些頁存儲數(shù)據(jù))或者存儲至少一些無效(或者陳舊的)數(shù)據(jù)的一個(gè)或多個(gè)物理塊地址。在接收一個(gè)或多個(gè)物理塊地址的情況下,寫入模塊24可以定義和/或選擇一個(gè)或多個(gè)塊,并將使得信道控制器32寫入數(shù)據(jù)到塊的消息傳遞到信道控制器32A-32N(集合地,“信道控制器32”)。

      信道控制器32的每個(gè)信道控制器可以連接到信道18的各個(gè)信道。在某些實(shí)例中,控制器8可以包括與儲存裝置2的信道18的數(shù)目相同數(shù)目的信道控制器32。信道控制器32可以例如,在寫入模塊24、讀取模塊28和/或維護(hù)模塊26的控制之下,執(zhí)行連接到各個(gè)信道的存儲器裝置16的尋址、編程、擦除和讀取的親密控制。

      維護(hù)模塊26可以配置為執(zhí)行與維持儲存裝置6(例如,存儲器裝置16)的性能和延伸使用壽命有關(guān)的操作。例如,維護(hù)模塊26可以實(shí)現(xiàn)耗損均衡或者垃圾收集中的至少一個(gè)。

      控制器8的調(diào)度模塊30可以執(zhí)行一個(gè)或多個(gè)操作以調(diào)度要由存儲器裝置16執(zhí)行的活動。例如,調(diào)度模塊30可以調(diào)度從控制器8的其他組件接收到的請求以命令一個(gè)或多個(gè)存儲器裝置16在運(yùn)行時(shí)間期間執(zhí)行一個(gè)或多個(gè)活動。在某些實(shí)例中,調(diào)度模塊30可以調(diào)度而以接收請求的次序執(zhí)行這些請求(例如,先進(jìn)先出或者FIFO)。在某些實(shí)例中,調(diào)度模塊30可以基于一個(gè)或多個(gè)因素調(diào)度請求,該一個(gè)或多個(gè)因素可以包括,但不限于請求的類型(例如,讀取請求、寫入請求、擦除請求、垃圾收集請求等)、從接收到請求開始經(jīng)過的時(shí)間量、由請求的執(zhí)行消耗的功率的量、帶寬考慮等。

      在某些實(shí)例中,除使得由存儲器裝置16存儲用戶數(shù)據(jù)的單元之外,寫入模塊24還可以使得存儲器裝置16存儲可以用于如果一個(gè)或多個(gè)塊故障或者變得損壞則恢復(fù)和/或驗(yàn)證數(shù)據(jù)單元的信息(奇偶校驗(yàn)數(shù)據(jù))。在某些實(shí)例中,寫入模塊24使得在存儲器裝置16的存儲器裝置的相同物理頁中存儲奇偶校驗(yàn)數(shù)據(jù)與用戶數(shù)據(jù)。例如,地址轉(zhuǎn)換模塊22可以實(shí)現(xiàn)可以將單個(gè)物理頁地址映射到單個(gè)邏輯頁地址的簡單的邏輯到物理地址映射方案。以下參考圖4和圖5描述這種方案的實(shí)例。

      在某些實(shí)例中,可能期望寫入模塊24使得對于用戶數(shù)據(jù)塊存儲更多奇偶校驗(yàn)數(shù)據(jù)。例如,隨著使用存儲器裝置16和老化,存儲器裝置16的存儲器單元的可靠性可能惡化。在某些實(shí)例中,存儲器裝置16的存儲器單元的可靠性可以量化為比特誤碼率(BER)。同樣地,為了改進(jìn)讀取模塊28成功地檢索用戶數(shù)據(jù)塊的概率,寫入模塊24可以隨著BER增加存儲更大大小的奇偶校驗(yàn)數(shù)據(jù)。作為一個(gè)實(shí)例,在BER小于閾值的情況下,寫入模塊24可以對于每個(gè)用戶數(shù)據(jù)塊存儲比當(dāng)BER大于閾值時(shí)更少的奇偶校驗(yàn)數(shù)據(jù)。

      但是,在某些實(shí)例中,寫入模塊24可能不能容易地使得存儲的奇偶校驗(yàn)數(shù)據(jù)的量更大。例如,在寫入模塊24使得用于用戶數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù)與用戶數(shù)據(jù)存儲在存儲器裝置16的存儲器裝置的相同物理頁中的實(shí)例中,奇偶校驗(yàn)數(shù)據(jù)的大小可能限于用戶數(shù)據(jù)塊的大小和存儲器裝置的頁面的大小之間的差值。例如,在存儲器裝置中的物理頁可以存儲8320字節(jié)且用戶數(shù)據(jù)塊的大小是8192字節(jié)的情況下,奇偶校驗(yàn)數(shù)據(jù)的大小可能限于128字節(jié)。該大小限制可以防止寫入模塊24容易地增加存儲的奇偶校驗(yàn)數(shù)據(jù)的量,這可能是不期望的。

      圖4是圖示在存儲器裝置的相同頁存儲的用戶數(shù)據(jù)和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)的示例邏輯配置的概念圖。如圖4所示,用戶數(shù)據(jù)40A和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)42A可以與邏輯頁地址44A相關(guān)聯(lián),且用戶數(shù)據(jù)40B和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)42B可以與邏輯頁地址44B相關(guān)聯(lián)。長度46可以表示在每個(gè)邏輯頁地址用戶數(shù)據(jù)和奇偶校驗(yàn)數(shù)據(jù)的組合長度。在某些實(shí)例中,用戶數(shù)據(jù)40A和用戶數(shù)據(jù)40B每個(gè)可以是8192字節(jié)長且奇偶校驗(yàn)數(shù)據(jù)42A和奇偶校驗(yàn)數(shù)據(jù)42B每個(gè)是128字節(jié)長,以使得在每個(gè)邏輯頁地址要存儲的數(shù)據(jù)的組合長度可以是8320字節(jié)。圖5是在存儲器裝置的相同頁存儲的用戶數(shù)據(jù)和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)的示例物理配置的概念圖。在某些實(shí)例中,物理頁地址50A和物理頁地址50B可以分別對應(yīng)于圖2的頁19Aa和頁19Ab。長度48可以表示寫入模塊24可以使得在每個(gè)物理頁地址存儲的數(shù)據(jù)的最大尺寸。在某些實(shí)例中,長度48可以是8320字節(jié)。

      在邏輯頁地址的數(shù)據(jù)塊的組合大小小于或等于可以在每個(gè)物理頁地址存儲的數(shù)據(jù)的最大大小的情況下,寫入模塊24可以使得在每個(gè)邏輯頁地址的數(shù)據(jù)塊寫入到物理頁地址而不重排。在圖4和圖5的實(shí)例中,因?yàn)檫壿嬳摰刂?4A的數(shù)據(jù)塊(即,用戶數(shù)據(jù)40A和奇偶校驗(yàn)數(shù)據(jù)42A)的組合長度小于或等于長度48,所以寫入模塊24可以使得在邏輯頁地址44A的數(shù)據(jù)塊寫入到物理頁地址50A而不重排。但是,在該實(shí)例中,在用戶數(shù)據(jù)40A和奇偶校驗(yàn)數(shù)據(jù)42A的組合大小不大于長度48的情況下,寫入模塊24不可能增加奇偶校驗(yàn)數(shù)據(jù)42A的大小。如上所述,該限制可能是不期望的。

      在某些實(shí)例中,寫入模塊24可以使得奇偶校驗(yàn)數(shù)據(jù)的大小獨(dú)立于存儲器裝置16的物理頁的大小。例如,寫入模塊24可以在存儲器裝置16內(nèi)的不同物理頁存儲用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)。作為一個(gè)實(shí)例,控制器8可以在存儲器裝置16Aa的頁19Aa中與用戶數(shù)據(jù)一起存儲奇偶校驗(yàn)數(shù)據(jù)的第一部分,并在存儲器裝置16Aa的頁19Ab中存儲奇偶校驗(yàn)數(shù)據(jù)的第二部分。因?yàn)槠媾夹r?yàn)數(shù)據(jù)的第二部分存儲在存儲器裝置16的與用戶數(shù)據(jù)分開的頁中,讀取模塊28可以讀取兩個(gè)頁(例如,頁19Aa和頁19Ab)以檢索用戶數(shù)據(jù)。類似地,當(dāng)存儲用戶數(shù)據(jù)時(shí),寫入模塊24可以寫入到存儲器裝置16中的兩個(gè)不同物理頁。

      在某些實(shí)例中,可以使得由寫入模塊24存儲的奇偶校驗(yàn)數(shù)據(jù)的大小獨(dú)立于存儲器裝置的物理頁的大小。例如,地址轉(zhuǎn)換模塊22可以實(shí)現(xiàn)可以將邏輯頁地址映射到多個(gè)物理頁地址的先進(jìn)的邏輯到物理地址映射方案。以下參考圖6和圖7描述這種方案的實(shí)例。

      圖6是圖示在存儲器裝置的不同頁存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例邏輯配置的概念圖。如圖6所示,用戶數(shù)據(jù)40A和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)42A1和奇偶校驗(yàn)數(shù)據(jù)42A2可以與邏輯頁地址44A相關(guān)聯(lián),且用戶數(shù)據(jù)40B和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)42B1和奇偶校驗(yàn)數(shù)據(jù)42B2可以與邏輯頁地址44B相關(guān)聯(lián)。長度46可以表示在每個(gè)邏輯頁地址的用戶數(shù)據(jù)和奇偶校驗(yàn)數(shù)據(jù)的組合長度。在圖6的實(shí)例中,用戶數(shù)據(jù)40A和用戶數(shù)據(jù)40B每個(gè)可以是8192字節(jié)長且奇偶校驗(yàn)數(shù)據(jù)42A1、奇偶校驗(yàn)數(shù)據(jù)42A2、奇偶校驗(yàn)數(shù)據(jù)42B1和奇偶校驗(yàn)數(shù)據(jù)42B2每個(gè)可以是128字節(jié)長,以使得要在每個(gè)邏輯頁地址存儲的數(shù)據(jù)的組合長度可以是8448字節(jié)。圖7是圖示在存儲器裝置的不同頁存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例物理配置的概念圖。在某些實(shí)例中,物理頁地址50A、物理頁地址50B和物理頁地址50C可以分別對應(yīng)于圖2的頁19Aa、19Ab和頁19Ac。長度48可以表示寫入模塊24可以使得在每個(gè)物理頁地址存儲的數(shù)據(jù)的最大尺寸。在圖7的實(shí)例中,長度48可以是8320字節(jié)。

      如上所述,在邏輯頁地址的數(shù)據(jù)塊的組合大小小于或等于可以在每個(gè)物理頁地址存儲的數(shù)據(jù)的最大大小的情況下,寫入模塊24可以使得在每個(gè)邏輯頁地址的數(shù)據(jù)塊寫入到物理頁地址而不重排。但是,在圖6和圖7的實(shí)例中,因?yàn)樵谶壿嬳摰刂?4A的數(shù)據(jù)塊(即,用戶數(shù)據(jù)40A、奇偶校驗(yàn)數(shù)據(jù)42A1和奇偶校驗(yàn)數(shù)據(jù)42A2)的組合長度大于長度48,所以寫入模塊24可以使得在邏輯頁地址44A的數(shù)據(jù)塊被寫入到多個(gè)物理頁地址。例如,為了使寫入模塊24能夠在邏輯頁地址44A存儲數(shù)據(jù)塊,地址轉(zhuǎn)換模塊22可以將邏輯頁地址44A映射到物理頁地址50A的全部和物理頁地址50B的第一部分。類似地,為了使寫入模塊24能夠在邏輯頁地址44B存儲數(shù)據(jù)塊,地址轉(zhuǎn)換模塊22可以將邏輯頁地址44B映射到物理頁地址50B的第二部分和物理頁地址50C的第一部分?;谠撚成洌瑢懭肽K24可以在物理頁地址50A存儲用戶數(shù)據(jù)40A和奇偶校驗(yàn)數(shù)據(jù)42A1,在物理頁地址50B存儲奇偶校驗(yàn)數(shù)據(jù)42A2和用戶數(shù)據(jù)40B,并在物理頁地址50C存儲奇偶校驗(yàn)數(shù)據(jù)42B1和奇偶校驗(yàn)數(shù)據(jù)42B2。以這種方式,寫入模塊24可以存儲較大尺寸的奇偶校驗(yàn)數(shù)據(jù)。

      因?yàn)槠媾夹r?yàn)數(shù)據(jù)的一部分可以存儲在與用戶數(shù)據(jù)分開的頁中,所以寫入模塊24可以執(zhí)行兩個(gè)寫操作以存儲用戶數(shù)據(jù)塊。類似地,讀取模塊28可以執(zhí)行兩個(gè)讀操作以檢索用戶數(shù)據(jù)塊。在某些實(shí)例中,檢索或者存儲單個(gè)用戶數(shù)據(jù)塊的多個(gè)讀或者寫操作可能是不期望的(例如,由于增加的周期計(jì)數(shù)、降低的性能、降低的可靠性和增加的讀取干擾)。

      因此,在某些實(shí)例中,代替在單個(gè)存儲器裝置(例如,存儲器裝置16的存儲器裝置)內(nèi)與相應(yīng)的用戶數(shù)據(jù)不同的物理頁存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分,寫入模塊24可以在奇偶校驗(yàn)存儲器裝置20中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。例如,寫入模塊24可以確定用于用戶數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù),在存儲器裝置16中存儲用戶數(shù)據(jù)塊,和在奇偶校驗(yàn)存儲器裝置20中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。以下參考圖8和圖9描述這種方案的實(shí)例。在某些實(shí)例中,寫入模塊24可以并行地將奇偶校驗(yàn)數(shù)據(jù)的至少一部分寫入到奇偶校驗(yàn)存儲器裝置20和將用戶數(shù)據(jù)塊寫入到存儲器裝置16。類似地,在某些實(shí)例中,讀取模塊28可以并行地從奇偶校驗(yàn)存儲器裝置20讀取奇偶校驗(yàn)數(shù)據(jù)的至少一部分和從存儲器裝置16讀取用戶數(shù)據(jù)塊。以這種方式,寫入模塊24可以使用較大尺寸的奇偶校驗(yàn)數(shù)據(jù)而沒有或者具有減少的不想要的效果(例如,增加周期計(jì)數(shù)、降低性能、降低可靠性和增加讀取干擾)。

      圖8是圖示在不同存儲器裝置存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例邏輯配置的概念圖。如圖8所示,用戶數(shù)據(jù)40A和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)42A1和奇偶校驗(yàn)數(shù)據(jù)42A2可以與邏輯頁地址44A相關(guān)聯(lián),且用戶數(shù)據(jù)40B和相應(yīng)的奇偶校驗(yàn)數(shù)據(jù)42B1和奇偶校驗(yàn)數(shù)據(jù)42B2可以與邏輯頁地址44B相關(guān)聯(lián)。長度46可以表示在每個(gè)邏輯頁地址用戶數(shù)據(jù)和奇偶校驗(yàn)數(shù)據(jù)的組合長度。在圖8的實(shí)例中,用戶數(shù)據(jù)40A和用戶數(shù)據(jù)40B每個(gè)可以是8192字節(jié)長且奇偶校驗(yàn)數(shù)據(jù)42A1、奇偶校驗(yàn)數(shù)據(jù)42A2、奇偶校驗(yàn)數(shù)據(jù)42B1和奇偶校驗(yàn)數(shù)據(jù)42B2每個(gè)可以是128字節(jié)長,以使得要在每個(gè)邏輯頁地址存儲的數(shù)據(jù)的組合長度可以是8448字節(jié)。

      圖9是圖示在不同存儲器裝置存儲的用戶數(shù)據(jù)和至少一些奇偶校驗(yàn)數(shù)據(jù)的示例物理配置的概念圖。在某些實(shí)例中,物理頁地址50A和物理頁地址50B可以分別對應(yīng)于圖2的頁19Aa和頁19Ab。長度48可以表示寫入模塊24可以使得在存儲器裝置16的每個(gè)物理頁地址存儲的數(shù)據(jù)的最大尺寸。在圖9的實(shí)例中,長度48可以是8320字節(jié)。長度52可以表示寫入到奇偶校驗(yàn)存儲器裝置20的奇偶校驗(yàn)存儲器裝置的奇偶校驗(yàn)數(shù)據(jù)的大小。

      如圖9所示,寫入模塊24可以在奇偶校驗(yàn)存儲器裝置20中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。例如,寫入模塊24可以確定用于用戶數(shù)據(jù)40A的第一奇偶校驗(yàn)數(shù)據(jù)42A1和第二奇偶校驗(yàn)數(shù)據(jù)42A2。如圖8所示,用戶數(shù)據(jù)40A、第一奇偶校驗(yàn)數(shù)據(jù)42A1和第二奇偶校驗(yàn)數(shù)據(jù)42A2可以全部與邏輯頁地址44A相關(guān)聯(lián)。地址轉(zhuǎn)換模塊22可以提供將用戶數(shù)據(jù)40A和第一奇偶校驗(yàn)數(shù)據(jù)42A1映射到可以對應(yīng)于圖2的頁19Aa的存儲器裝置16的物理頁地址50A,并將第二奇偶校驗(yàn)數(shù)據(jù)42A2映射到奇偶校驗(yàn)存儲器裝置20的映射?;谠撚成洌瑢懭肽K24可以使得用戶數(shù)據(jù)40A和第一奇偶校驗(yàn)數(shù)據(jù)42A1寫入到圖2的存儲器裝置16Aa的頁19Aa,和使得第二奇偶校驗(yàn)數(shù)據(jù)42A2寫入到奇偶校驗(yàn)存儲器裝置20。

      圖10是根據(jù)本公開的一個(gè)或多個(gè)技術(shù)的用于在與相應(yīng)的用戶數(shù)據(jù)不同的存儲器裝置中存儲奇偶校驗(yàn)數(shù)據(jù)的示例技術(shù)的流程圖。為了描述的便利,將同時(shí)參考圖1和圖3的儲存裝置6和控制器8來描述圖10的技術(shù),雖然具有與儲存裝置6或者控制器8的配置不同的配置的計(jì)算裝置可以執(zhí)行圖10的技術(shù)。

      如圖10所示,控制器8可以接收要存儲的數(shù)據(jù)塊(1002)。例如,控制器8的寫入模塊24可以從圖1的主機(jī)4接收要存儲的用戶數(shù)據(jù)塊??刂破?可以確定用于數(shù)據(jù)塊的奇偶校驗(yàn)數(shù)據(jù)(1004)。例如,寫入模塊24可以確定用于從主機(jī)裝置4接收到的用戶數(shù)據(jù)塊的XOR奇偶校驗(yàn)數(shù)據(jù)。在某些實(shí)例中,寫入模塊24可以選擇奇偶校驗(yàn)數(shù)據(jù)的大小以確定用于數(shù)據(jù)塊。例如,寫入模塊24可以基于存儲器裝置16的一個(gè)或多個(gè)健康統(tǒng)計(jì),比如比特誤碼率(BER)來選擇奇偶校驗(yàn)數(shù)據(jù)的大小。作為一個(gè)實(shí)例,在BER小于閾值的情況下,寫入模塊24可以選擇較小尺寸的奇偶校驗(yàn)數(shù)據(jù)(例如,在數(shù)據(jù)塊的大小是8192字節(jié)的情況下128字節(jié))以然后當(dāng)BER大于閾值(例如,在數(shù)據(jù)塊的大小是8192字節(jié)的情況下256字節(jié))時(shí)確定用于數(shù)據(jù)塊。

      控制器8可以確定奇偶校驗(yàn)數(shù)據(jù)和數(shù)據(jù)塊的組合大小是否大于主儲存陣列的頁的大小(1006)。例如,寫入模塊24可以確定奇偶校驗(yàn)數(shù)據(jù)和數(shù)據(jù)塊的組合大小是否大于非易失性存儲器陣列10的存儲器裝置16的存儲器裝置的頁的大小。

      如果奇偶校驗(yàn)數(shù)據(jù)和數(shù)據(jù)塊的組合大小不大于主儲存陣列的頁的大小(1006的“否”分支),則控制器8可以將數(shù)據(jù)塊和奇偶校驗(yàn)數(shù)據(jù)寫入到主儲存陣列的頁(1008)。例如,寫入模塊24可以使得信道控制器32A將數(shù)據(jù)塊和奇偶校驗(yàn)數(shù)據(jù)寫入到圖2的存儲器裝置16Aa的塊17A的頁19Aa。

      如果奇偶校驗(yàn)數(shù)據(jù)和數(shù)據(jù)塊的組合大小大于主儲存陣列的頁的大小(1006的“是”分支),則控制器8可以將數(shù)據(jù)塊和奇偶校驗(yàn)數(shù)據(jù)的第一部分寫入到主儲存陣列的頁,且將奇偶校驗(yàn)數(shù)據(jù)的第二部分寫入到奇偶校驗(yàn)存儲器裝置(1010)。例如,寫入模塊24可以使得信道控制器32A將數(shù)據(jù)塊和奇偶校驗(yàn)數(shù)據(jù)的第一部分寫入到頁19Aa,并使得奇偶校驗(yàn)存儲器裝置20的奇偶校驗(yàn)存儲器裝置存儲奇偶校驗(yàn)數(shù)據(jù)的第二部分。以這種方式,控制器8可以在與相應(yīng)的數(shù)據(jù)塊分開的存儲器裝置中存儲奇偶校驗(yàn)數(shù)據(jù)的至少一部分。

      上述操作僅是一個(gè)實(shí)例且考慮其它變型。例如,在某些實(shí)例中,控制器8可以不在主儲存陣列中存儲任意奇偶校驗(yàn)數(shù)據(jù)且可以總是在奇偶校驗(yàn)存儲器裝置存儲奇偶校驗(yàn)數(shù)據(jù),而無論奇偶校驗(yàn)數(shù)據(jù)的大小如何。

      本公開中描述的技術(shù)可以至少部分地以硬件、軟件、固件或者其任何組合實(shí)現(xiàn)。例如,所描述的技術(shù)的各種方面可以在一個(gè)或多個(gè)處理器內(nèi)實(shí)現(xiàn),處理器包括一個(gè)或多個(gè)微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或者任何其他等效的集成或者分立邏輯電路,以及這種組件的任何組合。術(shù)語“處理器”或者“處理電路”可以單獨(dú)地或者與其他邏輯電路結(jié)合地泛指任何前述邏輯電路,或者任何其他等效電路。包括硬件的控制單元也可以執(zhí)行本公開的一個(gè)或多個(gè)技術(shù)。

      這種硬件、軟件和固件可以在相同裝置內(nèi)或者分開的裝置內(nèi)實(shí)現(xiàn),以支持本公開中描述的各種技術(shù)。另外,任何所描述的單元、模塊或組件可以一起實(shí)現(xiàn)或者分開地實(shí)現(xiàn)為分立的但是可互操作的邏輯器件。作為模塊或者單元的不同特征的敘述意在強(qiáng)調(diào)不同功能方面,且不必須意味著這種模塊或者單元必須由分開的硬件、固件或者軟件組件實(shí)現(xiàn)。而是,與一個(gè)或多個(gè)模塊或單元相關(guān)聯(lián)的功能性可以由分開的硬件、固件或者軟件組件執(zhí)行,或者集成在公共的或者分開的硬件、固件或者軟件組件內(nèi)。

      本公開中描述的技術(shù)也可以以包括以指令編碼的計(jì)算機(jī)可讀存儲介質(zhì)的制造物具體表現(xiàn)或者編碼。在包括編碼的計(jì)算機(jī)可讀存儲介質(zhì)的制造物中嵌入或者編碼的指令可以使得一個(gè)或多個(gè)可編程處理器或者其他處理器實(shí)現(xiàn)在這里描述的一個(gè)或多個(gè)技術(shù),比如當(dāng)在計(jì)算機(jī)可讀存儲介質(zhì)中包括或者編碼的指令由一個(gè)或多個(gè)處理器執(zhí)行時(shí)。計(jì)算機(jī)可讀存儲介質(zhì)可以包括隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可編程只讀存儲器(PROM)、可擦可編程只讀存儲器(EPROM)、電可擦可編程只讀存儲器(EEPROM)、閃存存儲器、硬盤、致密盤ROM(CD-ROM)、軟盤、磁帶、磁介質(zhì)、光介質(zhì)或者其他計(jì)算機(jī)可讀介質(zhì)。在某些實(shí)例中,制造物可以包括一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲介質(zhì)。

      在某些實(shí)例中,計(jì)算機(jī)可讀存儲介質(zhì)可以包括非瞬時(shí)介質(zhì)。術(shù)語“非瞬時(shí)”可以指示存儲介質(zhì)不具體表現(xiàn)為載波或者傳播的信號。在某些實(shí)例中,非瞬時(shí)存儲介質(zhì)可以存儲可能隨時(shí)間改變的數(shù)據(jù)(例如,在RAM或者高速緩存中)。

      已經(jīng)描述了各種實(shí)例。這些及其他實(shí)例在以下權(quán)利要求的范圍內(nèi)。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1