CN112506446A - 一种闪存的编码方法与编码装置 - Google Patents
一种闪存的编码方法与编码装置 Download PDFInfo
- Publication number
- CN112506446A CN112506446A CN202011602957.5A CN202011602957A CN112506446A CN 112506446 A CN112506446 A CN 112506446A CN 202011602957 A CN202011602957 A CN 202011602957A CN 112506446 A CN112506446 A CN 112506446A
- Authority
- CN
- China
- Prior art keywords
- coding
- units
- unit
- error detection
- decoding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012937 correction Methods 0.000 claims description 72
- 238000001514 detection method Methods 0.000 claims description 72
- 238000003860 storage Methods 0.000 claims description 32
- 238000009826 distribution Methods 0.000 claims description 12
- 230000002035 prolonged effect Effects 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本申请提供了一种闪存的编码方法与编码装置。闪存包括字线和多个编解码单元,字线包括多个页,多个页包括低位页、中间位页、高位页和最高位页,编码方法包括:将各编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;将第一编解码单元分布在低位页中,将第二编解码单元分布在中间位页中,将第三编解码单元分布在高位页中,将第四编解码单元分布在最高位页中。本方案通过将编解码单元拆分为四个部分,然后将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了闪存介质的寿命。
Description
本申请以2020年10月12日递交的、申请号为202011085907.4且名称为“QLC NAND的编码方法与编码装置”的专利文件为优先权文件,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及闪存编码领域,具体而言,涉及一种闪存的编码方法、编码装置、计算机可读存储介质、处理器和存储系统。
背景技术
随着非易失固态存储的广泛应用,固态存储设备越来越多的被应用于各种存储领域,目前已经取代了传统磁盘在存储业内的主导地位,成为用户首要选择。非易失固态存储有其绝对的优势,例如高性能,低功耗,体积小,容量大,以及更好的稳定性和可靠性。然而,它也有非常致命的缺陷:例如,使用寿命。特别是随着半导体工艺的不断进步,NAND闪存介质的使用寿命大幅度的下降,从SLC(Single-LevelCell)介质到QLC(Quad-LevelCell)介质,擦除或者写入次数从原来的几万次,下降到目前的几百次。所以目前如何有效的解决NAND固态存储设备寿命问题,对各大存储厂商都是一个巨大的挑战和技术方向。现有的QLCNAND的编码方法为横向编码方法,如图1所示,QLC NAND的字线(WorldLine)有多个页(page),分别为Lower Page(低位页)、Middle Page(中间位页)、Upper Page(高位页)和TopPage(最高位页),AU0~AU15为编解码单元,ECC0~ECC15为差错检测和修正单元,由于其介质特征,导致每个页的寿命以及数据出错比例BER(Bit Error Ratio)是不一样的,并且差异会非常大,从几倍到几十倍不等,随着单元损耗的增加,差异会越来越大。
因此,目前各厂商采用的如图1所示的横向编码方法会导致NAND介质使用的寿命差异非常大,同一个WorldLine中,由于一个page的BER超过了设定阈值,就必须放弃整个World Line甚至整个块(Block)。因此,会导致很快存储设备的Block数目急剧降低,直至整个存储设备寿命耗尽不再能使用。
在背景技术部分中公开的以上信息只是用来加强对本文所描述技术的背景技术的理解,因此,背景技术中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。
发明内容
本申请的主要目的在于提供一种闪存的编码方法、编码装置、计算机可读存储介质、处理器和存储系统,以解决现有技术中NAND闪存介质的寿命较低的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种闪存的编码方法,闪存包括字线和多个编解码单元,所述字线包括多个页,多个所述页包括低位页、中间位页、高位页和最高位页,所述编码方法包括:将各所述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;将所述第一编解码单元分布在所述低位页中,将所述第二编解码单元分布在所述中间位页中,将所述第三编解码单元分布在所述高位页中,将所述第四编解码单元分布在所述最高位页中。
进一步地,将各所述编解码单元拆分为四个部分,包括:将各所述编解码单元平均拆分为四个所述部分。
进一步地,所述闪存还包括多个差错检测和修正单元,所述差错检测和修正单元的数量与所述编解码单元的数量相等,所述编码方法还包括:将多个所述差错检测和修正单元依次分布在各所述第四编解码单元之前,或者,将多个所述差错检测和修正单元依次分布在各所述第四编解码单元之后。
进一步地,所述闪存还包括多个差错检测和修正单元,所述差错检测和修正单元的数量与所述编解码单元的数量相等,所述编码方法还包括:将各所述差错检测和修正单元拆分为四个部分,分别为第一差错检测和修正单元、第二差错检测和修正单元、第三差错检测和修正单元和第四差错检测和修正单元;将所述第一差错检测和修正单元分布在所述第一编解码单元之后,将所述第二差错检测和修正单元分布在所述第二编解码单元之后,将所述第三差错检测和修正单元分布在所述第三编解码单元之后,将所述第四差错检测和修正单元分布在所述第四编解码单元之后。
进一步地,将各所述差错检测和修正单元拆分为四个部分,包括:将各所述差错检测和修正单元平均拆分为四个所述部分。
进一步地,所述闪存为QLC NAND。
根据本申请的另一个方面,提供了一种闪存的编码装置,闪存包括字线和多个编解码单元,所述字线包括多个页,所述页分别为低位页、中间位页、高位页和最高位页,所述编码装置包括:拆分单元,用于将各所述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;分布单元,用于将所述第一编解码单元分布在所述低位页中,将所述第二编解码单元分布在所述中间位页中,将所述第三编解码单元分布在所述高位页中,将所述第四编解码单元分布在所述最高位页中。
进一步地,所述拆分单元还用于将各所述编解码单元平均拆分为四个部分。
根据本申请的又一个方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行任意一种所述的闪存的编码方法。
根据本申请的另一个方面,提供了一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行任意一种所述的闪存的编码方法。
根据本申请的再一个方面,提供了一种存储系统,其特征在于,包括闪存;编码装置,与所述闪存通信连接,所述编码装置用于执行任意一种所述的方法。
应用本申请的技术方案,通过将编解码单元拆分为四个部分,然后将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了现有技术中的QLC NAND的编码方法示意图;
图2示出了根据本申请的实施例的闪存的编码原理示意图;
图3示出了根据本申请的实施例的闪存的编码方法流程图;
图4示出了根据本申请的实施例的闪存的编码装置示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应该理解的是,当元件(诸如层、膜、区域、或衬底)描述为在另一元件“上”时,该元件可直接在该另一元件上,或者也可存在中间元件。而且,在说明书以及权利要求书中,当描述有元件“连接”至另一元件时,该元件可“直接连接”至该另一元件,或者通过第三元件“连接”至该另一元件。
正如背景技术中所介绍的,现有技术中的QLC NAND的横向编码方法导致NAND闪存介质的寿命较低,为解决如上NAND闪存介质的寿命较低的问题,本申请的实施例提供了一种闪存的编码方法、编码装置、计算机可读存储介质、处理器和存储系统。
根据本申请的实施例,提供了一种闪存的编码方法。
图3是根据本申请实施例的闪存的编码方法的流程图。闪存包括字线和多个编解码单元,上述字线包括多个页,多个上述页包括低位页、中间位页、高位页和最高位页,如图3所示,该方法包括以下步骤:
步骤S101,将各上述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;
步骤S102,将上述第一编解码单元分布在上述低位页中,将上述第二编解码单元分布在上述中间位页中,将上述第三编解码单元分布在上述高位页中,将上述第四编解码单元分布在上述最高位页中。
上述方案中,通过将编解码单元拆分为四个部分,然后将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为了进一步地延长NAND闪存介质的寿命,本申请的一种实施例中,将各上述编解码单元拆分为四个部分,包括:将各上述编解码单元平均拆分为四个上述部分。
本申请的另一种实施例中,上述闪存还包括多个差错检测和修正单元,上述差错检测和修正单元的数量与上述编解码单元的数量相等,上述编码方法还包括:将多个上述差错检测和修正单元依次分布在各上述第四编解码单元之前,或者,将多个上述差错检测和修正单元依次分布在各上述第四编解码单元之后。差错检测和修正单元实现对差错的检测和修正。
本申请的又一种实施例中,上述闪存还包括多个差错检测和修正单元,上述差错检测和修正单元的数量与上述编解码单元的数量相等,上述编码方法还包括:将各上述差错检测和修正单元拆分为四个部分,分别为第一差错检测和修正单元、第二差错检测和修正单元、第三差错检测和修正单元和第四差错检测和修正单元;将上述第一差错检测和修正单元分布在上述第一编解码单元之后,将上述第二差错检测和修正单元分布在上述第二编解码单元之后,将上述第三差错检测和修正单元分布在上述第三编解码单元之后,将上述第四差错检测和修正单元分布在上述第四编解码单元之后。
本申请的再一种实施例中,将各上述差错检测和修正单元拆分为四个部分,包括:将各上述差错检测和修正单元平均拆分为四个上述部分。实现对差错的检测和修正。
本申请的再一种实施例中,上述闪存为QLC NAND。
本申请实施例还提供了一种闪存的编码装置,需要说明的是,本申请实施例的闪存的编码装置可以用于执行本申请实施例所提供的用于闪存的编码方法。以下对本申请实施例提供的闪存的编码装置进行介绍。
图4是根据本申请实施例的闪存的编码装置的示意图。闪存包括字线和多个编解码单元,上述字线包括多个页,上述页分别为低位页、中间位页、高位页和最高位页,如图4所示,该装置包括:
第一拆分单元10,用于将各上述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;
第一分布单元20,用于将上述第一编解码单元分布在上述低位页中,将上述第二编解码单元分布在上述中间位页中,将上述第三编解码单元分布在上述高位页中,将上述第四编解码单元分布在上述最高位页中。
上述方案中,拆分单元将编解码单元拆分为四个部分,第一分布单元将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
本申请的再一种实施例中,上述第一拆分单元还用于将各上述编解码单元平均拆分为四个部分。
本申请的另一种实施例中,上述闪存还包括多个差错检测和修正单元,上述差错检测和修正单元的数量与上述编解码单元的数量相等,上述编码装置还包括第二分布单元,第二分布单元用于将多个上述差错检测和修正单元依次分布在各上述第四编解码单元之前,或者,将多个上述差错检测和修正单元依次分布在各上述第四编解码单元之后。差错检测和修正单元实现对差错的检测和修正。
本申请的又一种实施例中,上述闪存还包括多个差错检测和修正单元,上述差错检测和修正单元的数量与上述编解码单元的数量相等,上述编码装置还包括第二拆分单元和第三分布单元,第二拆分单元用于将各上述差错检测和修正单元拆分为四个部分,分别为第一差错检测和修正单元、第二差错检测和修正单元、第三差错检测和修正单元和第四差错检测和修正单元;第三分布单元用于将上述第一差错检测和修正单元分布在上述第一编解码单元之后,将上述第二差错检测和修正单元分布在上述第二编解码单元之后,将上述第三差错检测和修正单元分布在上述第三编解码单元之后,将上述第四差错检测和修正单元分布在上述第四编解码单元之后。
本申请的再一种实施例中,将各上述差错检测和修正单元拆分为四个部分,包括:将各上述差错检测和修正单元平均拆分为四个上述部分。实现对差错的检测和修正。
所述闪存的编码装置包括处理器和存储器,上述第一拆分单元和第一分布单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来延长闪存的寿命。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行所述QLCNAND的编码方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述QLC NAND的编码方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现至少以下步骤:
步骤S101,将各上述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;
步骤S102,将上述第一编解码单元分布在上述低位页中,将上述第二编解码单元分布在上述中间位页中,将上述第三编解码单元分布在上述高位页中,将上述第四编解码单元分布在上述最高位页中。
本文中的设备可以是服务器、PC、PAD、手机等。
本发明实施例提供了一种存储系统,包括QLC NAND和编码装置,编码装置与上述QLC NAND通信连接,上述编码装置用于执行任意一种上述的方法。该系统拆分单元将编解码单元拆分为四个部分,第一分布单元将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有至少如下方法步骤的程序:
步骤S101,将各上述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;
步骤S102,将上述第一编解码单元分布在上述低位页中,将上述第二编解码单元分布在上述中间位页中,将上述第三编解码单元分布在上述高位页中,将上述第四编解码单元分布在上述最高位页中。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
实施例
本实施例涉及一种具体的QLC NAND的编码方法。图1中的AU0~AU15表示编解码单元,ECC0~ECC15表示差错检测和修正单元,图2是将图1中的AU0~AU15分为四个部分,AU0分为AU01~AU04,AU1分为AU11~AU14,AU15分为AU151~AU154,图2中ECC0~ECC15分布在AU04~AU154之后,当然,编码方法不限于图2中示出的,也可以将ECC0~ECC15分布在AU01~AU151之后,ECC0~ECC15分布在AU12~AU152之后。
优选地,将AU0~AU15平均分为四个部分,通过将编解码单元拆分为四个部分,然后将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:
1)、本申请的闪存的编码方法,通过将编解码单元拆分为四个部分,然后将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
2)、本申请的闪存的编码装置,拆分单元将编解码单元拆分为四个部分,第一分布单元将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
3)、本申请的存储系统,拆分单元将编解码单元拆分为四个部分,第一分布单元将各部分分布在对应的页中,使得任意两个页的数据出错比例近似相等,不会因为某一个页的数据出错比例较高,而导致整个字线无法使用,进而延长了NAND闪存介质的寿命。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种闪存的编码方法,其特征在于,闪存包括字线和多个编解码单元,所述字线包括多个页,多个所述页包括低位页、中间位页、高位页和最高位页,所述编码方法包括:
将各所述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;
将所述第一编解码单元分布在所述低位页中,将所述第二编解码单元分布在所述中间位页中,将所述第三编解码单元分布在所述高位页中,将所述第四编解码单元分布在所述最高位页中。
2.根据权利要求1所述的编码方法,其特征在于,将各所述编解码单元拆分为四个部分,包括:
将各所述编解码单元平均拆分为四个所述部分。
3.根据权利要求1所述的编码方法,其特征在于,所述闪存还包括多个差错检测和修正单元,所述差错检测和修正单元的数量与所述编解码单元的数量相等,所述编码方法还包括:
将多个所述差错检测和修正单元依次分布在各所述第四编解码单元之前,或者,将多个所述差错检测和修正单元依次分布在各所述第四编解码单元之后。
4.根据权利要求1所述的编码方法,其特征在于,所述闪存还包括多个差错检测和修正单元,所述差错检测和修正单元的数量与所述编解码单元的数量相等,所述编码方法还包括:
将各所述差错检测和修正单元拆分为四个部分,分别为第一差错检测和修正单元、第二差错检测和修正单元、第三差错检测和修正单元和第四差错检测和修正单元;
将所述第一差错检测和修正单元分布在所述第一编解码单元之后,将所述第二差错检测和修正单元分布在所述第二编解码单元之后,将所述第三差错检测和修正单元分布在所述第三编解码单元之后,将所述第四差错检测和修正单元分布在所述第四编解码单元之后。
5.根据权利要求4所述的编码方法,其特征在于,将各所述差错检测和修正单元拆分为四个部分,包括:
将各所述差错检测和修正单元平均拆分为四个所述部分。
6.根据权利要求1至5中任一项所述的编码方法,其特征在于,所述闪存为QLC NAND。
7.一种闪存的编码装置,其特征在于,闪存包括字线和多个编解码单元,所述字线包括多个页,所述页分别为低位页、中间位页、高位页和最高位页,所述编码装置包括:
拆分单元,用于将各所述编解码单元拆分为四个部分,分别为第一编解码单元、第二编解码单元、第三编解码单元和第四编解码单元;
分布单元,用于将所述第一编解码单元分布在所述低位页中,将所述第二编解码单元分布在所述中间位页中,将所述第三编解码单元分布在所述高位页中,将所述第四编解码单元分布在所述最高位页中。
8.根据权利要求7所述的编码装置,其特征在于,所述拆分单元还用于将各所述编解码单元平均拆分为四个部分。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至5中任意一项所述的闪存的编码方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至6中任意一项所述的闪存的编码方法。
11.一种存储系统,其特征在于,包括:
闪存;
编码装置,与所述闪存通信连接,所述编码装置用于执行权利要求1至6任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020110859074 | 2020-10-12 | ||
CN202011085907.4A CN112214172A (zh) | 2020-10-12 | 2020-10-12 | Qlc nand的编码方法与编码装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112506446A true CN112506446A (zh) | 2021-03-16 |
CN112506446B CN112506446B (zh) | 2024-05-24 |
Family
ID=
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101502001A (zh) * | 2006-01-18 | 2009-08-05 | 晟碟以色列有限公司 | 在多电平单元存储设备内安排数据的方法 |
CN103098378A (zh) * | 2010-09-15 | 2013-05-08 | 桑迪士克科技股份有限公司 | 分布式ecc处理的系统和方法 |
CN104217761A (zh) * | 2013-05-31 | 2014-12-17 | 慧荣科技股份有限公司 | 数据储存装置及其错误校正方法 |
US20150371714A1 (en) * | 2014-06-24 | 2015-12-24 | HGST Netherlands B.V. | Word-line inter-cell interference detector in flash system |
CN105788647A (zh) * | 2014-12-26 | 2016-07-20 | 北京兆易创新科技股份有限公司 | 一种非易失存储器的纠错方法和装置 |
US20170371565A1 (en) * | 2016-06-28 | 2017-12-28 | Intel Corporation | Method and apparatus for improving sequential reading in nand flash |
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101502001A (zh) * | 2006-01-18 | 2009-08-05 | 晟碟以色列有限公司 | 在多电平单元存储设备内安排数据的方法 |
CN103098378A (zh) * | 2010-09-15 | 2013-05-08 | 桑迪士克科技股份有限公司 | 分布式ecc处理的系统和方法 |
CN104217761A (zh) * | 2013-05-31 | 2014-12-17 | 慧荣科技股份有限公司 | 数据储存装置及其错误校正方法 |
US20150371714A1 (en) * | 2014-06-24 | 2015-12-24 | HGST Netherlands B.V. | Word-line inter-cell interference detector in flash system |
CN105788647A (zh) * | 2014-12-26 | 2016-07-20 | 北京兆易创新科技股份有限公司 | 一种非易失存储器的纠错方法和装置 |
US20170371565A1 (en) * | 2016-06-28 | 2017-12-28 | Intel Corporation | Method and apparatus for improving sequential reading in nand flash |
Also Published As
Publication number | Publication date |
---|---|
CN112214172A (zh) | 2021-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11287984B2 (en) | Method and device for writing stored data into storage medium based on flash memory | |
CN107968810B (zh) | 一种服务器集群的资源调度方法、装置和系统 | |
KR102490899B1 (ko) | 락스텝 구성 동적 변경 | |
US9378090B2 (en) | Cell-to-cell program interference aware data recovery when ECC fails with an optimum read reference voltage | |
US11226861B1 (en) | Systems and methods for distributing information across failure domains in servers | |
US10169141B2 (en) | Modifiable stripe length in flash memory devices | |
US9171629B1 (en) | Storage device, memory controller and memory control method | |
US20220129206A1 (en) | Resource allocation in memory systems based on operation modes | |
US20170199786A1 (en) | Assigning redundancy in encoding data onto crossbar memory arrays | |
CN103713857A (zh) | 存储数据的方法及存储装置 | |
CN110688067A (zh) | 一种存储系统的分层方法、装置、设备及介质 | |
CN112506446A (zh) | 一种闪存的编码方法与编码装置 | |
CN111399780B (zh) | 一种数据的写入方法、装置以及设备 | |
CN112506446B (zh) | 一种闪存的编码方法与编码装置 | |
US20140173383A1 (en) | Multilevel encoding with error correction | |
WO2020238653A1 (zh) | 一种分布式系统环境下的编码方法、解码方法和对应装置 | |
KR20200008533A (ko) | 메모리 리던던시 | |
US20220043588A1 (en) | Localized memory traffic control for high-speed memory devices | |
CN110377262B (zh) | 数据存储方法及装置、存储介质和处理器 | |
CN110032446B (zh) | 一种应用于嵌入式系统中分配内存空间的方法及装置 | |
CN104571947A (zh) | 一种在存储阵列中划分硬盘域的方法及控制器、存储阵列 | |
CN112041806A (zh) | 用于跨多个存储设备重新平衡条带式信息的系统和方法 | |
CN110634525B (zh) | 一种非易失存储器处理方法及装置 | |
US11829623B2 (en) | Using incomplete super blocks for increased write performance | |
CN102402398B (zh) | 闪存控制器及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |