CN112988453A - 用于闪存的数据恢复方法 - Google Patents

用于闪存的数据恢复方法 Download PDF

Info

Publication number
CN112988453A
CN112988453A CN202110380094.XA CN202110380094A CN112988453A CN 112988453 A CN112988453 A CN 112988453A CN 202110380094 A CN202110380094 A CN 202110380094A CN 112988453 A CN112988453 A CN 112988453A
Authority
CN
China
Prior art keywords
error rate
voltage
data
read
flash memory
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.)
Pending
Application number
CN202110380094.XA
Other languages
English (en)
Inventor
李前辉
王颀
杨柳
姜一扬
于晓磊
何菁
霍宗亮
叶甜春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Microelectronics of CAS
Original Assignee
Institute of Microelectronics of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Microelectronics of CAS filed Critical Institute of Microelectronics of CAS
Priority to CN202110380094.XA priority Critical patent/CN112988453A/zh
Publication of CN112988453A publication Critical patent/CN112988453A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一种用于闪存的数据恢复方法,包括:采用预设读电压从闪存中读取数据;计算数据对应的校验节点出错率;根据校验节点出错率,计算读电压调整步长;根据读电压调整步长调整预设读电压,采用调整后的预设读电压从闪存中读取数据,并重复计算数据对应的校验节点出错率的操作至根据读电压调整步长调整预设读电压的操作,直至校验节点出错率最小;选择最小的校验节点出错率对应的读电压从闪存中读取数据,以进行数据恢复。该方法可动态调整读电压调整的步长,从而减小重读纠错算法中最佳读电压搜索所需要的时间,并且减少不必要地ECC译码,从而减小数据恢复所需要的时间。

Description

用于闪存的数据恢复方法
技术领域
本公开涉及半导体集成电路的非易失存储器领域,尤其涉及一种用于闪存的数据恢复方法。
背景技术
闪存尤其是NAND闪存是非挥发存储器的一种,被广泛的应用于手机、笔记本电脑、云存储等存储领域,闪存的基本功能是保存数据,保证写入的数据和读出的数据的一致性是存储***的基本要求。差错控制编码(ECC,Error Correcting Code)可以纠正读出数据的错误,是保证写入数据和读出数据的一致性,提高存储***可靠性的重要手段。但差错控制编码也有一定的纠错范围,如果读出数据的原始误码率较高,将会超出差错控制编码的纠错能力,无法正确的恢复出写入的数据。
在数据存储过程中,闪存会受到数据保持噪声的影响,当数据在闪存中存储一段时间后,存储在闪存储存单元的电荷将会泄漏,闪存的阈值电压分布态将会向阈值电压较小的一侧偏移,如果使用在数据存储初期使用的读电压进行读取操作,将会出现读出数据的误码率超过差错控制编码纠错能力的问题。
发明内容
(一)要解决的技术问题
针对于现有技术问题,本公开提出一种用于闪存的数据恢复方法,用于至少部分解决上述技术问题。
(二)技术方案
本公开提供一种用于闪存的数据恢复方法,包括:采用预设读电压从所述闪存中读取数据;计算所述数据对应的校验节点出错率;根据所述校验节点出错率,计算读电压调整步长;根据所述读电压调整步长调整所述预设读电压,采用调整后的预设读电压从所述闪存中读取数据,并重复所述计算所述数据对应的校验节点出错率的操作至所述根据所述读电压调整步长调整所述预设读电压的操作,直至所述校验节点出错率最小;选择最小的校验节点出错率对应的读电压从所述闪存中读取数据,以进行数据恢复。
可选地,所述方法还包括:判断当前所述校验节点出错率是否小于预设阈值;若是,停止所述根据所述读电压调整步长调整所述预设读电压,采用调整后的预设读电压从所述闪存中读取数据的操作,以当前读取的数据进行数据恢复。
可选地,所述方法还包括:判断当前所述校验节点出错率是否大于上一次所述校验节点出错率,若是,停止所述根据所述读电压调整步长调整所述预设读电压,采用调整后的预设读电压从所述闪存中读取数据的操作,以上一次读取的数据进行数据恢复。
可选地,其中,所述计算所述数据对应的校验节点出错率包括:根据公式:
RC=sum(H·Dk)/m
计算所述校验节点出错率,其中,RC为所述校验节点出错率,H为奇偶校验矩阵,Dk为读出的一个码字的数据,m为校验节点的数量。
可选地,所述根据所述校验节点出错率,计算读电压调整步长包括:基于所述闪存的阈值电压分布态,建立所述校验节点出错率与所述误码率的函数关系以及所述误码率与所述读电压调整步长的函数关系;根据所述校验节点出错率与所述误码率的函数关系、所述误码率与所述读电压调整步长的函数关系,建立所述校验节点出错率与所述读电压调整步长的函数关系;根据所述校验节点出错率与所述读电压调整步长的函数关系,计算所述读电压调整步长。
可选地,所述建立所述校验节点出错率与所述误码率的函数关系以及所述误码率与所述读电压调整步长的函数关系包括:计算所述预设读电压对应的误码率,其中,所述计算所述预设读电压对应的误码率包括:根据公式:
Figure BDA0003011714170000021
计算所述误码率,其中,Pe为误码率,i为阈值电压分布态的序号,
Figure BDA0003011714170000038
为第i个预设读电压,μi为所述闪存的第i个阈值电压分布态的均值,μi-1为所述闪存的第i-1个阈值电压分布态的均值,
Figure BDA0003011714170000031
为均值为0,方差为σi-1的阈值电压分布态对应的高斯分布的分布函数,
Figure BDA0003011714170000032
为均值为0,方差为σi的高斯分布的分布函数。
可选地,其中,所述第i个预设读电压与第i个最佳读电压存在以下关系:
Figure BDA0003011714170000033
其中,
Figure BDA0003011714170000034
为第i个最佳读电压,
Figure BDA0003011714170000035
为所述第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长;
所述第i个最佳读电压通过下式计算:
Figure BDA0003011714170000036
Figure BDA0003011714170000037
其中,μi为第i个阈值电压分布态的均值,σi为第i个阈值电压分布态的方差,μi-1为第i-1个阈值电压分布态的均值,σi-1为第i-1个阈值电压分布态的方差。
可选地,所述方法还包括:将所述校验节点出错率与所述读电压调整步长的函数关系来量化为查找表,通过查找所述查找表得到所述读电压调整步长。
可选地,所述方法还包括:建立第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长和第j个预设读电压与所述第j个最佳读电压之间的读电压调整步长之间的函数关系;基于函数关系,根据第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长来计算第j个预设读电压与所述第j个最佳读电压之间的读电压调整步长。
可选地,选择最小的校验节点出错率对应的读电压从所述闪存中读取数据,以进行数据恢复包括:采用差错控制编码对读取的数据进行数据恢复。
(三)有益效果
本公开提供一种用于闪存的数据恢复方法,至少具备以下有益效果:
本公开的数据恢复方法能够基于校验节点出错率动态调整读电压调整的步长,找到最佳读电压所需的额外读次数较少,从而减小重读纠错算法中最佳读电压搜索所需要的时间。
本公开通过校验节点出错率对读出数据的原始误码率做预测,在ECC译码之前无需ECC的译码过程就能够预判读出的数据能否被ECC译码器正确纠正。当预判读出的数据能够被ECC纠正时,停止重读纠错操作并进行ECC译码;当预判读出的数据无法被ECC纠正时,继续进行重读纠错操作对最佳读电压进行搜索,直到找到最佳读电压或者预判读出的数据能够被ECC纠错。也即该方法减少不必要的ECC译码,从而减小数据恢复所需要的时间。
附图说明
图1示意性示出了本公开实施例提供的用于闪存的数据恢复方法的流程图;
图2示意性本公开一实施例提供的根据所述校验节点出错率计算读电压调整步长的方法流程图;
图3示意性示出了本公开实施例提供的NAND闪存的阈值电压分布态图;
图4示意性示出了本公开实施例提供的第i个阈值电压偏移量
Figure BDA0003011714170000041
和第j个阈值电压偏移量
Figure BDA0003011714170000042
之间为线性函数关系曲线图;
图5示意性示出了本公开实施例提供的TLC NAND闪存的阈值电压分布态图
图6示意性示出了本公开实施例提供的校验节点出错率与读电压调整步长的函数关系曲线图;
图7示意性示出了本公开又一实施例提供的用于闪存的数据恢复方法的流程图;
图8示意性示出了本公开又一实施例提供的用于闪存的数据恢复方法的流程图;
图9示意性示出了本公开实施例提供的校验节点出错率和误码率之间的单调函数关系曲线图;
图10示意性示出了本公开又一实施例提供的用于闪存的数据恢复方法的流程图;
图11示意性示出了本公开实施例提供的用于闪存的数据恢复***的结构图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
图1示意性示出了本公开一实施例提供的用于闪存的数据恢复方法的流程图。
如图1所示,该方法例如可以包括操作S101~S105。
在操作S101,采用预设读电压从闪存中读取数据。
该预设读电压一般设置为初始读电压,也即数据保持时间为0的最佳读电压。所指读出的数据可以指经过ECC编码后写入NAND闪存中的数据,在存储***进行读操作时读出的数据。
在操作S102,计算数据对应的校验节点出错率。
在操作S103,根据校验节点出错率及误码率,计算读电压调整步长。
该读电压调整步长也可称作判决距离,指将初始读电压调整至最佳读电压过程中每次调整的电压数值。
在操作S104,根据读电压调整步长调整预设读电压,采用调整后的预设读电压从闪存中读取数据,并返回操作S102。
返回操作S102后,继续执行操作S102~S104,直至校验节点出错率最小。
在操作S105,选择最小的校验节点出错率对应的读电压从闪存中读取数据,以进行数据恢复。
上述实施例提供的数据恢复方法,根据读出数据的校验节点出错率来计算判决距离,并将判决距离作为读电压调整的步长对读电压进行调整,对读电压调整后采用新的读电压读出数据,并计算新的读电压的读出数据的校验节点出错率,并根据此校验节点出错率计算判决距离,循环往复此过程,并选取所对应的校验节点出错率最小的读电压作为最佳读电压,从而可以动态调整读电压调整的步长,减少找到最佳读电压所需的额外读次数,进而减小重读纠错算法中最佳读电压搜索所需要的时间。
根据本公开的实施例,由于NAND闪存是以一个页(Page)为一个最小的读取单位,在实际工程应用中一个页上可能包含多个码字,本实例中采用一个页上各码字校验节点出错率的平均值作为一个页(Page)的校验节点出错率。具体的,一种计算校验节点出错率的方法例如可以为:
根据公式:
RC=sum(H·Dk)/m
计算校验节点出错率,其中,RC为校验节点出错率,H为奇偶校验矩阵,Dk为读出的一个码字的数据,是读出的一个页(Page)数据的一部分,m为校验节点的数量,也是H矩阵的总行数。
图2示意性本公开一实施例提供的根据所述校验节点出错率计算读电压调整步长的方法流程图。
图3示意性示出了本公开实施例提供的闪存的阈值电压分布态图。
根据本公开的实施例,如图2所示,该方法例如可以包括操作S201~S203。在操作S201,基于闪存的阈值电压分布态,建立校验节点出错率与误码率的函数关系以及误码率与读电压调整步长的函数关系。
一般情况下,NAND闪存的误码率和读电压有关,如图3所示,其中,
Figure BDA0003011714170000061
第i个初始读电压,一般是数据保持时间为0的最佳读电压,
Figure BDA0003011714170000062
第i个最佳读电压,其为读出数据误码率最小的读电压,也是经过一段数据保持时间后的两个阈值电压分布态的交点,Pi为第i个阈值电压分布态,Pi-1第i-1个阈值电压分布态,
Figure BDA0003011714170000063
为第i个阈值电压分布态的阈值电压偏移量,
Figure BDA0003011714170000064
为第i-1个阈值电压分布态的阈值电压偏移量,
Figure BDA0003011714170000065
为第i个预设读电压与第i个最佳读电压之间的读电压调整步长。虚线部分可以表示闪存的初始阈值电压分布态,当数据在闪存中存储一段时间后,存储在闪存储存单元的电荷将会泄漏,闪存的阈值电压分布态将会向阈值电压较小的一侧偏移,也即移动到实线部分所表示的阈值电压分布态。图3中阴影部分的面积即为NAND闪存读出数据的误码率,阴影部分的面积可以用对阈值电压分布态做积分来求解。因此,两个阈值电压分布态之间的误码率,也叫第i个读电压下的误码率。
在建立函数关系的过程中需要计算预设读电压对应的误码率。请参阅图3,一种计算预设读电压对应的误码率的方法可以为:
根据公式:
Figure BDA0003011714170000071
计算误码率,其中,Pe为误码率,i为阈值电压分布态的序号,
Figure BDA0003011714170000072
为第i个预设读电压,μi为闪存的第i个阈值电压分布态的均值,μi-1为闪存的第i-1个阈值电压分布态的均值,
Figure BDA0003011714170000073
为均值为0,方差为σi-1的阈值电压分布态对应的高斯分布的分布函数,高斯分布的分布函数是高斯分布的概率密度的积分,
Figure BDA0003011714170000074
为均值为0,方差为σi的高斯分布的分布函数。
其中,第i个预设读电压与第i个最佳读电压存在以下关系:
Figure BDA0003011714170000075
Figure BDA0003011714170000076
为第i个最佳读电压,
Figure BDA0003011714170000077
为所述第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长;
第i个最佳读电压通过下式计算:
Figure BDA0003011714170000078
Figure BDA0003011714170000079
其中,μi为第i个阈值电压分布态的均值,σi为第i个阈值电压分布态的方差,μi-1为第i-1个阈值电压分布态的均值,σi-1为第i-1个阈值电压分布态的方差。
具体的,第i个最佳读电压计算公式的推导过程为:
将图3所示的阈值电压分布态建模成高斯分布,两个高斯分布的交点就是第i个最佳读电压,用方程可以表示为:
Figure BDA00030117141700000710
求解上述方程,当:
σi-1≠σi
可得到:
Figure BDA0003011714170000081
而,在实际NAND闪存中,由于:
σi-1≈σi
因此,本实施例使用如下公式进行简化:
Figure BDA0003011714170000082
由此,第i个最佳读电压的表示方法可以表示为:
Figure BDA0003011714170000083
Figure BDA0003011714170000084
进一步地,建立校验节点出错率与误码率的函数关系:
在一个LDPC的校验矩阵H中,H中第i行中为1的bit组成了第i个奇偶校验方程,同时也是Tanner图中的第i个校验节点,第i个校验方程出错的概率RCi可以用如下公式来计算:
Figure BDA0003011714170000085
其中,Pe是ECC码字中单个比特出错的概率,同时也是读出数据的原始误码率,di是H矩阵的第i行中1的个数。
设H是一个m行n列的矩阵,因此,由该H矩阵的零空间所构成的ECC中的校验方程的个数为m(也就是在Tanner图中校验节点的个数是m),那么这m个校验方程的平均错误概率,即为校验节点出错率,可以用如下公式计算:
Figure BDA0003011714170000091
特例地,如果H矩阵每一行中1的个数都是相同的,也即d1=d2=…=dm=d,那么校验节点出错率可以简化为:
Figure BDA0003011714170000092
基于上述计算,即可得到校验节点出错率与误码率的函数关系。
建立误码率与读电压调整步长的函数关系:
在本实施例中,如图4所示,第i个阈值电压偏移量
Figure BDA0003011714170000093
和第j个阈值电压偏移量
Figure BDA0003011714170000094
之间为线性函数关系,具体如下式:
Figure BDA0003011714170000095
第i个读电压调整步长(判决距离)
Figure BDA0003011714170000096
和第i个阈值电压偏移量
Figure BDA0003011714170000097
之间为线性函数关系,具体如下式:
Figure BDA0003011714170000098
根据上述两个线性关系,计算得到误码率与读电压调整步长的函数关系为:
Figure BDA0003011714170000099
同理,如图5所示,对于TLC NAND闪存来说,对于Low Page的误码率与读电压调整步长的函数关系:
Figure BDA00030117141700000910
对于Middle Page的误码率与读电压调整步长的函数关系:
Figure BDA0003011714170000101
对于,Upper Page的误码率与读电压调整步长的函数关系:
Figure BDA0003011714170000102
在操作S202,根据校验节点出错率与误码率的函数关系、误码率与读电压调整步长的函数关系,建立校验节点出错率与读电压调整步长的函数关系。
在本公开一实施例中,建立的校验节点出错率与读电压调整步长的函数关系如图6所示。
在操作S203,,根据校验节点出错率与读电压调整步长的函数关系,计算读电压调整步长。
可以将校验节点出错率与读电压调整步长的函数关系来量化为查找表(Look UpTable,LUT),通过查找该查找表得到读电压调整步长。
基于上述校验节点出错率、误码率以及函数关系的计算方法,可保证每页数据对应的校验节点出错率及误码率的准确率,进而保证数据恢复精准度。
根据本公开的实施例,在选择最小的校验节点出错率对应的读电压从闪存中读取数据进行数据恢复时,采用差错控制编码对读取的数据进行数据恢复。
图7示意性示出了本公开又一实施例提供的用于闪存的数据恢复方法的流程图。
如图7所示,本实施例提供的数据恢复方法还可以包括操作S701~S702。
在操作S701,建立第i个预设读电压与第i个最佳读电压之间的读电压调整步长和第j个预设读电压与第j个最佳读电压之间的读电压调整步长之间的函数关系。
在操作S702,基于函数关系,根据第i个预设读电压与第i个最佳读电压之间的读电压调整步长来计算第j个预设读电压与第j个最佳读电压之间的读电压调整步长。
例如,对于TLC NAND闪存来说,将调整TLC NAND闪存的7个读电压,具体地,对于Low Page,需要根据
Figure BDA0003011714170000111
计算
Figure BDA0003011714170000112
对于Middle Page,需要根据
Figure BDA0003011714170000113
计算
Figure BDA0003011714170000114
Figure BDA0003011714170000115
该方法可基于一读电压调整步长快速调整其它读电压调整步长。
图8示意性示出了本公开又一实施例提供的用于闪存的数据恢复方法的流程图。
如图8所示,本实施例提供的数据恢复方法还可以包括操作S801~S802。
在操作S801,判断当前校验节点出错率是否小于预设阈值。
若当前校验节点出错率小于预设阈值,则执行操作S802。
根据本公开的实施例,如图9所示,校验节点出错率和误码率之间为单调函数关系,因此,可以采用校验节点出错率代替误码率,使用校验节点出错率的大小来判断读出的数据能否被ECC纠正,当读出数据的校验节点出错率小于某个值时,读出的数据错误可以被ECC纠正。例如,在一具体示例中,校验节点出错率小于0.2338可以被ECC硬判决译码纠正,校验节点出错率小于0.3749,可以被ECC软判决译码纠正。
在操作S802,停止根据读电压调整步长调整预设读电压,采用调整后的预设读电压从闪存中读取数据的操作,以当前读取的数据进行数据恢复。
本实施例提供的用于闪存的数据恢复方法是在前述根据校验节点出错率确定判决距离从而进行读电压调整的方法的基础上,加入对读出数据能否被ECC纠错的判断,当判断读出的数据能够被ECC纠正时,停止读电压调整的操作,提高***性能。
图10示意性示出了本公开又一实施例提供的用于闪存的数据恢复方法的流程图。如图10所示,本实施例提供的数据恢复方法还可以包括操作S1001~S1002。
在操作S1001,判断当前校验节点出错率是否大于上一次校验节点出错率。
当前校验节点出错率大于上一次校验节点出错率,表明当前读取数据的误码率相对一上一次在升高,上一次读取数据的读电压为最佳读电压,因此,在当前校验节点出错率大于上一次校验节点出错率,执行操作S1002。
在操作S1002,停止根据读电压调整步长调整预设读电压,采用调整后的预设读电压从闪存中读取数据的操作,以上一次读取的数据进行数据恢复。
本实施例提供的用于闪存的数据恢复方法是在前述根据校验节点出错率确定判决距离从而进行读电压调整的方法的基础上,加入对读出数据能否被ECC纠错的判断,当判断读出的数据能够被ECC纠正时,停止读电压调整的操作,提高***性能。
图11示意性示出了本公开实施例提供的用于闪存的数据恢复***的结构图。
如图11所示,该***主要包括:
校验节点出错率计算电路(Cal_CNER),用于计算计算数据对应的校验节点出错率。
根据校验节点出错率查找判决距离的查表电路(Fun_CNER),用于根据校验节点出错率及误码率,计算读电压调整步长。
第i个判决距离和第j个判决距离的函数关系查表电路(Cal_RVDD),用于根据第i个预设读电压与第i个最佳读电压之间的读电压调整步长来计算第j个预设读电压与第j个最佳读电压之间的读电压调整步长。
装置实施例未尽细节之处请参见方法实施例部分,此处不再赘述。
需要说明的是,校验节点也叫校验方程,是ECC的校验矩阵的每一行中为1的位置所组成的奇偶校验方程。本公开实施例中的校验节点出错率的概念,既包括校验节点出错率本身的概念,也包括校验方程的概念,如果使用校验方程和判决距离的函数关系来进行读电压调整,均应包含在本公开的保护范围之内。
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (10)

1.一种用于闪存的数据恢复方法,包括:
采用预设读电压从所述闪存中读取数据;
计算所述数据对应的校验节点出错率;
根据所述校验节点出错率,计算读电压调整步长;
根据所述读电压调整步长调整所述预设读电压,采用调整后的预设读电压从所述闪存中读取数据,并重复所述计算所述数据对应的校验节点出错率的操作至所述根据所述读电压调整步长调整所述预设读电压的操作,直至所述校验节点出错率最小;
选择最小的校验节点出错率对应的读电压从所述闪存中读取数据,以进行数据恢复。
2.根据权利要求1所述的用于闪存的数据恢复方法,所述方法还包括:
判断当前所述校验节点出错率是否小于预设阈值;
若是,停止所述根据所述读电压调整步长调整所述预设读电压,采用调整后的预设读电压从所述闪存中读取数据的操作,以当前读取的数据进行数据恢复。
3.根据权利要求1所述的用于闪存的数据恢复方法,所述方法还包括:
判断当前所述校验节点出错率是否大于上一次所述校验节点出错率,
若是,停止所述根据所述读电压调整步长调整所述预设读电压,采用调整后的预设读电压从所述闪存中读取数据的操作,以上一次读取的数据进行数据恢复。
4.根据权利要求1-3任一项所述的用于闪存的数据恢复方法,其中,所述计算所述数据对应的校验节点出错率包括:
根据公式:
RC=sum(H·Dk)/m
计算所述校验节点出错率,其中,RC为所述校验节点出错率,H为奇偶校验矩阵,Dk为读出的一个码字的数据,m为校验节点的数量。
5.根据权利要求1-3任一项所述的用于闪存的数据恢复方法,其中,所述根据所述校验节点出错率,计算读电压调整步长包括:
基于所述闪存的阈值电压分布态,建立所述校验节点出错率与所述误码率的函数关系以及所述误码率与所述读电压调整步长的函数关系;
根据所述校验节点出错率与所述误码率的函数关系、所述误码率与所述读电压调整步长的函数关系,建立所述校验节点出错率与所述读电压调整步长的函数关系;
根据所述校验节点出错率与所述读电压调整步长的函数关系,计算所述读电压调整步长。
6.根据权利要求5所述的用于闪存的数据恢复方法,其中,所述建立所述校验节点出错率与所述误码率的函数关系以及所述误码率与所述读电压调整步长的函数关系包括:
计算所述预设读电压对应的误码率,所述计算所述预设读电压对应的误码率包括:根据公式:
Figure FDA0003011714160000021
计算所述误码率,其中,Pe为误码率,i为阈值电压分布态的序号,
Figure FDA0003011714160000029
为第i个预设读电压,μi为所述闪存的第i个阈值电压分布态的均值,μi-1为所述闪存的第i-1个阈值电压分布态的均值,
Figure FDA0003011714160000022
为均值为0,方差为σi-1的阈值电压分布态对应的高斯分布的分布函数,
Figure FDA0003011714160000023
为均值为0,方差为σi的高斯分布的分布函数。
7.根据权利要求6所述的用于闪存的数据恢复方法,其中,所述第i个预设读电压与第i个最佳读电压存在以下关系:
Figure FDA0003011714160000024
其中,
Figure FDA0003011714160000025
为第i个最佳读电压,
Figure FDA0003011714160000026
为所述第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长;
所述第i个最佳读电压通过下式计算:
Figure FDA0003011714160000027
Figure FDA0003011714160000028
其中,μi为第i个阈值电压分布态的均值,σi为第i个阈值电压分布态的方差,μi-1为第i-1个阈值电压分布态的均值,σi-1为第i-1个阈值电压分布态的方差。
8.根据权利要求5所述的用于闪存的数据恢复方法,其中,所述方法还包括:
将所述校验节点出错率与所述读电压调整步长的函数关系来量化为查找表,通过查找所述查找表得到所述读电压调整步长。
9.根据权利要求7所述的用于闪存的数据恢复方法,其中,所述方法还包括:
建立第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长和第j个预设读电压与所述第j个最佳读电压之间的读电压调整步长之间的函数关系;
基于函数关系,根据第i个预设读电压与所述第i个最佳读电压之间的读电压调整步长来计算第j个预设读电压与所述第j个最佳读电压之间的读电压调整步长。
10.根据权利要求1-3任一项所述的用于闪存的数据恢复方法,其中,选择最小的校验节点出错率对应的读电压从所述闪存中读取数据,以进行数据恢复包括:
采用差错控制编码对读取的数据进行数据恢复。
CN202110380094.XA 2021-04-08 2021-04-08 用于闪存的数据恢复方法 Pending CN112988453A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110380094.XA CN112988453A (zh) 2021-04-08 2021-04-08 用于闪存的数据恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110380094.XA CN112988453A (zh) 2021-04-08 2021-04-08 用于闪存的数据恢复方法

Publications (1)

Publication Number Publication Date
CN112988453A true CN112988453A (zh) 2021-06-18

Family

ID=76339584

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110380094.XA Pending CN112988453A (zh) 2021-04-08 2021-04-08 用于闪存的数据恢复方法

Country Status (1)

Country Link
CN (1) CN112988453A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114356217A (zh) * 2021-12-07 2022-04-15 广州致存科技有限责任公司 数据读取方法、存储设备和存储介质
CN115617567A (zh) * 2022-12-16 2023-01-17 珠海妙存科技有限公司 闪存的数据恢复方法、装置、电子设备及介质
CN116643915A (zh) * 2023-05-08 2023-08-25 西安秦派能智能科技有限公司 手机芯片数据恢复方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103985415A (zh) * 2013-02-10 2014-08-13 Lsi公司 基于保留漂移历史的非易失性存储器读取阈值最优化
CN105913879A (zh) * 2015-02-23 2016-08-31 爱思开海力士有限公司 控制器、半导体存储***及其操作方法
US20160372161A1 (en) * 2015-06-22 2016-12-22 SK Hynix Inc. Data storage device and operating method thereof
CN106293539A (zh) * 2016-08-18 2017-01-04 华为技术有限公司 一种闪存设备的访问方法、装置和***
US9761308B1 (en) * 2016-03-11 2017-09-12 Western Digital Technologies, Inc. Systems and methods for adaptive read level adjustment
US20180011753A1 (en) * 2016-07-08 2018-01-11 Seagate Technology Llc Adaptive read threshold voltage tracking with bit error rate estimation based on non-linear syndrome weight mapping
CN108717385A (zh) * 2018-05-23 2018-10-30 中国科学院微电子研究所 一种用于闪存的数据恢复方法及***
CN108777156A (zh) * 2018-05-31 2018-11-09 郑州云海信息技术有限公司 一种闪存数据处理方法及装置
CN110832593A (zh) * 2017-05-25 2020-02-21 美光科技公司 具有动态处理电平校准的存储器装置
CN111145820A (zh) * 2019-12-11 2020-05-12 合肥大唐存储科技有限公司 一种数据读取方法及装置、存储介质和设备
CN111290877A (zh) * 2018-12-10 2020-06-16 美光科技公司 基于位错误率的动态编程步进特性调整

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103985415A (zh) * 2013-02-10 2014-08-13 Lsi公司 基于保留漂移历史的非易失性存储器读取阈值最优化
CN105913879A (zh) * 2015-02-23 2016-08-31 爱思开海力士有限公司 控制器、半导体存储***及其操作方法
US20160372161A1 (en) * 2015-06-22 2016-12-22 SK Hynix Inc. Data storage device and operating method thereof
US9761308B1 (en) * 2016-03-11 2017-09-12 Western Digital Technologies, Inc. Systems and methods for adaptive read level adjustment
US20180011753A1 (en) * 2016-07-08 2018-01-11 Seagate Technology Llc Adaptive read threshold voltage tracking with bit error rate estimation based on non-linear syndrome weight mapping
CN106293539A (zh) * 2016-08-18 2017-01-04 华为技术有限公司 一种闪存设备的访问方法、装置和***
CN110832593A (zh) * 2017-05-25 2020-02-21 美光科技公司 具有动态处理电平校准的存储器装置
CN108717385A (zh) * 2018-05-23 2018-10-30 中国科学院微电子研究所 一种用于闪存的数据恢复方法及***
CN108777156A (zh) * 2018-05-31 2018-11-09 郑州云海信息技术有限公司 一种闪存数据处理方法及装置
CN111290877A (zh) * 2018-12-10 2020-06-16 美光科技公司 基于位错误率的动态编程步进特性调整
CN111145820A (zh) * 2019-12-11 2020-05-12 合肥大唐存储科技有限公司 一种数据读取方法及装置、存储介质和设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114356217A (zh) * 2021-12-07 2022-04-15 广州致存科技有限责任公司 数据读取方法、存储设备和存储介质
CN114356217B (zh) * 2021-12-07 2024-04-19 广州致存科技有限责任公司 数据读取方法、存储设备和存储介质
CN115617567A (zh) * 2022-12-16 2023-01-17 珠海妙存科技有限公司 闪存的数据恢复方法、装置、电子设备及介质
CN116643915A (zh) * 2023-05-08 2023-08-25 西安秦派能智能科技有限公司 手机芯片数据恢复方法

Similar Documents

Publication Publication Date Title
US9548128B2 (en) Read retry for non-volatile memories
US10019313B2 (en) Flash channel with selective decoder likelihood dampening
KR101738173B1 (ko) 플래시 메모리에서의 적응형 코딩 방법 및 시스템
US8321760B2 (en) Semiconductor memory device and data processing method thereof
US7533328B2 (en) Method of error correction in a multi-bit-per-cell flash memory
CN112988453A (zh) 用于闪存的数据恢复方法
KR101434405B1 (ko) 메모리 장치 및 메모리 데이터 읽기 방법
KR101466270B1 (ko) 비휘발성 메모리 시스템 및 그것의 데이터 처리 방법
US9582359B2 (en) Write mapping to mitigate hard errors via soft-decision decoding
US20090292972A1 (en) Error correction apparatus, method thereof and memory device comprising the apparatus
US9411679B2 (en) Code modulation encoder and decoder, memory controller including them, and flash memory system
KR102257050B1 (ko) 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
US10903861B2 (en) Method and device for generating soft decision detection parameters
US20130007559A1 (en) Non-volatile memory error mitigation
CN104283570A (zh) 低密度奇偶性检验(ldpc)解码器中的对数似然比(llr)阻尼
KR102556479B1 (ko) Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법
US10998920B1 (en) Overcoming saturated syndrome condition in estimating number of readout errors
US20220261312A1 (en) Memory system
US11043969B2 (en) Fast-converging soft bit-flipping decoder for low-density parity-check codes
US20160266972A1 (en) Memory controller, storage device and decoding method
CN109471808B (zh) 具有数据可靠性机制的存储***及其操作方法
US11190212B1 (en) Dynamic control of quasi-cyclic low-density parity-check bit-flipping decoder
KR20180018069A (ko) 메모리 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
KR20180123393A (ko) Siso 복호 방법, 디코더 및 반도체 메모리 시스템
US11095316B2 (en) Controller and operating method for performing read operation to read data in memory device

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