CN110515760B - 一种基于机器学习的ldpc闪存纠错方法 - Google Patents
一种基于机器学习的ldpc闪存纠错方法 Download PDFInfo
- Publication number
- CN110515760B CN110515760B CN201910808900.1A CN201910808900A CN110515760B CN 110515760 B CN110515760 B CN 110515760B CN 201910808900 A CN201910808900 A CN 201910808900A CN 110515760 B CN110515760 B CN 110515760B
- Authority
- CN
- China
- Prior art keywords
- data
- read
- error correction
- neural network
- ldpc
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012937 correction Methods 0.000 title claims abstract description 32
- 238000010801 machine learning Methods 0.000 title claims abstract description 27
- 238000013528 artificial neural network Methods 0.000 claims abstract description 29
- 238000003062 neural network model Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims abstract description 5
- 238000012546 transfer Methods 0.000 claims abstract description 5
- 230000007306 turnover Effects 0.000 claims abstract description 4
- 239000011159 matrix material Substances 0.000 claims description 12
- 239000002245 particle Substances 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 10
- 238000013135 deep learning Methods 0.000 claims description 6
- 210000002569 neuron Anatomy 0.000 claims description 5
- 230000014509 gene expression Effects 0.000 claims description 4
- 230000010363 phase shift Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 2
- 238000011084 recovery Methods 0.000 claims description 2
- 230000014759 maintenance of location Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005299 abrasion Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Error Detection And Correction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明涉及一种基于机器学习的闪存LDPC纠错方法,其中,包括:对受扰后的编码数据根据存储状态之间设置的参考电压进行硬判决,统计每个信息节点所对应的校验方程中被标记为最大翻转数;对达到迭代次数硬解码失败的码字传入AI引擎,通过预训练好的神经网络模型根据输入的数据集,选择最优的参考电压和查询读补偿的校准表获得读电压;读电压每次读取都会取回与等着被纠错的数据相关的元数据,把读出的0或1的序列Y输入到预训练好的AI引擎,加载对数似然比表给AI引擎,把信息节点和校验节点间置信概率的更新迭代通过设置神经网络传递函数进行训练和学习,按照最大后验概率译码准则来对接受到的序列Y作出判决。
Description
技术领域
本发明涉及存储技术领域,具体的说,是一种运用机器学习的LDPC码闪存纠错方法。
背景技术
近年来,随着闪存技术的飞速发展,闪速存储器(Flash Memory)的凭借其高性能、非易失性(Non-Volatility)、能耗低、抗震动、存储容量高等优点,迅速在嵌入式系统中得到大量应用,成为主流的大容量高性能存储技术。随着闪存的存储密度大幅度增加,闪存在读写过程中中会不可避免地受到各种干扰而产生误码,Flash面临严峻的可靠性退化问题,导致误码率急剧升高,尤其是3D MLC、TLC的大规模应用,现有的主流纠错方案低密度奇偶校验码(Low Density-Parity-Check Code,LDPC)架构越来越难以满足NAND闪存的纠错需求。LDPC采用的是概率纠错的方式,根据存的数据,最后读出来能够分析出数据的准确度到底有多大来确定。
当下,深度学习正在取得重大进展,深度学习擅长学习高维数据中的复杂结构,在有噪声干扰的环境中能够自动调节参数来适应环境带来的不同需求。用于闪存的LDPC纠错码的经典算法——和积信息传播算法,是贝叶斯网络、马尔科夫随机场等概率图模型中用于推断的一种信息传递算法,跟人工智能技术有着天然的联系。BP神经网络具备处理线性不可分问题的能力,广泛应用于分类识别、逼近、回归、压缩等领域,它包含多个隐含层网络,采用误差反向传播算法进行学习,沿着减少误差的方向从输出层经过中间各层逐层向前修正网络的连接权值。
发明内容
本发明涉及一种基于机器学习的LDPC闪存纠错方法,用于解决上述现有技术的问题。
本发明一种基于机器学习的闪存LDPC纠错方法,其中,包括以下步骤:对受扰后的编码数据根据存储状态之间设置的参考电压进行硬判决得到初始译码序列X,X左乘奇偶校验矩阵H,统计每个信息节点所对应的校验方程中被标记为最大翻转数,最大翻转数所对应的信息位发生取反,达到最大迭代数或H*XT=0止;对达到迭代次数硬解码失败的码字传入AI引擎,通过预训练好的神经网络模型根据输入的数据集,选择最优的参考电压和查询读补偿的校准表获得读电压;读电压每次读取都会取回与等着被纠错的数据相关的元数据,把读出的0或1的序列Y输入到预训练好的AI引擎,加载对数似然比表给AI引擎,把信息节点和校验节点间置信概率的更新迭代通过设置神经网络传递函数进行训练和学习,按照最大后验概率译码准则来对接受到的序列Y作出判决。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,对神经网络模型的机器学习所倚赖的神经网络自学习能力,在真实NAND Flash颗粒上采集数据进行预学习,构建深度学习网络模型进行预训练,深度置信网络DBN模型建立正向传播模型,通过神经网络中反向传播算法BP算法建立误差反向传播模型,使神经元间的权值参数调整到最佳,根据数据特征划分出多种应用场景,不同场景采用最佳的参考电压去重读。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,读补偿为通过神经网络预训练的数据集,获得不同擦除次数P/E Cycles、Retention时间以及读次数下的校准表,当错误出现的时候查询块的状态获得最合适的读电压值。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,对重读后获得的元数据使映射成LDPC解码软数据,结合闪存块中采集的P\E cycle、驻留时间以及温度数据,结合读补偿得到的后验概率软信息,预训练神经网络并使信息节点和校验节点的软信息迭代根据具体场景固化成不同的表达式,在软解码时对重读后的数据直接输出迭代结果的对数似然比。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,控制器发出读、写和擦除信号,控制器发出写命令开始编码,控制器发出读命令开始LDPC硬解码。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,在二进制白噪声信道中,编码码字序列X=(x1,x2…xn)经过二进制相移键控调制得到序列R=(r1,r2…rn),设ri=1-2xi是第i个发送的二进制信号,当xi=0或1的时候,ri=+1或-1,则调制后第i个接受信号为txi=ri+ni,ni是均值为0,方差为σ2的高斯白噪声,则有后验概率:
P(r=ri|yi)=[1+exp(-2yiri/σ2)]-1ri=1或-1。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,软信息传入神经网络预训练,先转换为对数似然比进行迭代计算,在对数域对概率信息进行计算,将原本的乘法运算转化为加法运算,对数似然比xi表示写入闪存的数据,yi表示读出的数据,而P表示读出数据的条件概率,若初次判断写入数据为0的概率更大,则对数似然比为正,反之为负,对数似然比LLR的绝对值反映了判断结果的可靠性,绝对值越大判决状态越明确,可靠性越高。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,还包括:控制器发出写命令,原始信息生成m个冗余位,将冗余位加在原有数据位后面得到编码后的数据X=(x1,x2…xn)经BPSK调制保存到Flash中,根据校验矩阵Hmn中1的位置建立Tanner图,确定变量节点和校验节点的连接关系。
根据本发明的基于机器学习的闪存LDPC纠错方法的一实施例,其中,真实NANDFlash颗粒上采集的数据包括:P/E Cycles、Retention时间、读次数以及物理块温度。
线下模型训练过程使用AI引擎学习Flash颗粒的擦写次数(P/E cycle)、数据保存时间、读次数、物理块的温度与位置等信息组成的数据集,深度置信网络DBN模型建立正向传播模型,通过神经网络中反向传播算法(BP)建立反向传播模型,使神经元间的权值参数调整到最佳,通过神经网络的分类识别能力划分出多种场景,结合上述数据集和ReadOffset得到的后验概率软信息,用机器学习的方法引入智能重读(Read Retry)和读补偿(Read Offset)技术并且完成对LDPC和积译码算法预训练的神经网络LDPC软解码。线上纠错过程,NAND Flash控制器发出写命令,数据信息采用经典的QC-LDPC编码方式生成冗余位并和原始信息位一起存入闪存,在LDPC硬解码失败后根据闪存当前所处的状态选用线下模型训练阶段的最佳匹配场景,做Read Retry和Read Offset时选择最优的初始尝试模式来进行读操作,解码时通过该模型直接输出最终的对数似然比进行判决。本方法能减少传统方法重读的次数,提升重读的准确度,并且将较大复杂度的软解码概率迭代过程固化到神经网络中,达到智能降低读取延时,降低解码复杂度,有效地减少闪存的磨损进而达到延长使用寿命的目的。
附图说明
图1所示为一种基于机器学习的闪存LDPC纠错架构示意图;
图2所示为NAND Flash MLC不同存储状态阈值电压交叠及LLR软判决表示示意图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1所示为一种基于机器学习的闪存LDPC纠错架构示意图,如图1所示,NANDFlash控制器1发出写命令,原始信息X=(x1,x2…xk)乘上生成矩阵Gkn实现某些信息位异或生成m个冗余位,将冗余位加在原有数据位后面得到编码后的数据Y=(y1,y2…yn)保存到NAND Flash13中,根据校验矩阵H中“1”的位置建立Tanner图,确定变量节点和校验节点的连接关系。
保存到NAND Flash13中的编码后的数据受到编程干扰、驻留错误、读错误等影响,闪存颗粒存储状态的阈值电压分布发生退化,尤其是分布状态交叠区在读过程中出现判决失误的情况,高斯信道下建立加性白噪声干扰模型。
对受扰后的编码数据根据存储状态之间设置的参考电压进行硬判决得到初始译码序列C=(c1,c2…cn),C左乘奇偶校验矩阵H,统计每个信息节点所对应的校验方程中不成立最大个数的信息位发生翻转,达到最大迭代数或HCT=0止。
在NAND Flash13的颗粒上大量采集数据集/测试集8的P/E Cycles、数据保存时间、读次数、物理块的温度和位置的数据进行自学习,构建深度学习网络模型进行预训练,深度置信网络DBN模型建立正向传播模型,通过神经网络中反向传播算法BP算法建立反向传播模型,使神经元间的权值参数调整到最佳,根据数据特征划分出多种应用场景,不用场景采用最佳的参考电压去重读。对达到迭代次数硬解码失败的码字传入AI引擎,通过预训练好的神经网络模型根据输入要存入的当前闪存块的即时P\E cycle、驻留时间、读次数等,选择最优的Read Retry参考电压5和查询由以上数据集生成的Read Offset校准表6来获取最合适的读电压,避免遍历所有的读电压档位产生的延时,进一步提升恢复数据的几率。
经过最优化的Read Retry参考电压5,每次读取都会取回与等着被纠错的数据相关的元数据,把这些读出的0或1的序列输入到预训练好的AI引擎4,加载LLR表10给AI引擎4,把信息节点和校验节点间置信概率的更新迭代通过设置神经网络传递函数进行训练和学习,结合闪存块中采集的P\E cycle、驻留时间、温度等数据,预训练神经网络使映射成LDPC软解码数据7(即后验概率P(xi=0|yi)、P(xi=1|yi)),并使信息节点和校验节点的软信息迭代根据具体P/E cycle、温度等信息固化成不同的表达式,在软解码时可对重读后的软信息直接输出迭代结果的对数似然比LLR表10,对输出的LLR表10(对数似然比)的正负判决0或1,得到译码序列。
图2所示为NAND Flash MLC不同存储状态阈值电压交叠及LLR软判决表示示意图,如图2所示,本发明一种基于机器学习的闪存LDPC纠错方法的另一实施例,包括以下步骤:
S1,控制器发出写命令,原始信息B=(b1,b2…bk)右乘生成矩阵Gkn实现某些信息位异或并生成m个冗余位,将冗余位加在原有数据位后面得到编码后的数据X=(x1,x2…xn)经BPSK调制保存到Flash中,根据校验矩阵Hmn中“1”的位置建立Tanner图,确定变量节点和校验节点的连接关系。
S2,保存到NAND Flash中的编码后的数据受到编程干扰、驻留错误、读错误等影响,闪存颗粒存储状态的阈值电压分布发生退化,尤其是分布状态交叠区(图2示)在读过程中出现判决失误的情况,高斯信道下建立加性白噪声干扰模型。
S3,对受扰后的编码数据根据存储状态之间设置的参考电压进行硬判决得到初始译码序列C=(c1,c2…cn),C左乘奇偶校验矩阵H,统计每个信息节点所对应的校验方程中不成立最大个数的信息位发生翻转,达到最大迭代数或H*CT=0止。
S4,对达到迭代次数硬解码失败的码字传入AI引擎,通过预训练好的神经网络模型根据输入要存入的当前闪存块的即时P\E cycle、驻留时间、读次数等组成的数据集,选择最优的Read Retry参考电压和查询Read Offset的校准表获得最合适的读电压,避免遍历所有的读电压档位产生的延时。
S5,经过最优化的Read Retry,每次读取都会取回与等着被纠错的数据相关的元数据,把这些读出的0或1的序列Y=(y1,y2…yi)输入到预训练好的AI引擎,加载LLR表给AI引擎,把信息节点和校验节点间置信概率的更新迭代通过设置神经网络传递函数进行训练和学习,按照最大后验概率译码准则来对接受到的Y作出判决是哪一个码字最有可能,也就是选择使后验概率P(xi|y)最大的码字为x发送码字,对输出的LLR(对数似然比)的正负判决0或1,得到译码序列。
如图1以及图2所示,对于一种较佳实施例,对所述步骤4中的机器学习所倚赖的神经网络自学习能力,在真实NAND Flash颗粒上采集P/E Cycles、Retention时间、读次数、物理块温度等大量数据进行预学习,构建深度学习网络模型进行预训练,深度置信网络DBN模型建立正向传播模型,通过神经网络中反向传播算法BP算法建立误差反向传播模型,使神经元间的权值参数调整到最佳,根据数据特征划分出多种应用场景,不同场景采用最佳的参考电压去重读,减少传统方法重读的次数及其带来的延时。
如图1以及图2所示,对于一种较佳实施例,读补偿(Read Offset)技术跟ReadRetry的原理相同,是Read Retry的弥补,通过2中神经网络预训练的数据集,获得不同擦除次数P/E Cycles、Retention时间、读次数下的校准表,通过该表,当错误出现的时候查询块的状态获得最合适的读电压值,进一步提升恢复数据的几率。
对重读后获得的元数据使映射成LDPC解码软数据(即后验概率P(xi=0|yi)、P(xi=1|yi)),,结合步骤4闪存块中采集的P\E cycle、驻留时间、温度等数据,结合ReadOffset得到的后验概率软信息,预训练神经网络并使以和积译码算法为代表的信息节点和校验节点的软信息迭代根据具体场景固化成不同的表达式,在软解码时可对步骤4重读后的数据直接输出迭代结果的对数似然比LLR。
如图1以及图2所示,对于一种较佳实施例,控制器发出读/写/擦除信号,控制器发出写命令开始编码,控制器发出读命令开始LDPC硬解码,实验所需的数据要对Flash阵列内部物理块存储单元进行大量重复的读/写/擦除操作,记录闪存器件P\E cycle、驻留时间、物理块位置和温度等外部特征量。
在二进制白噪声信道中,步骤1中的编码码字序列X=(x1,x2…xn)经过二进制相移键控调制得到序列R=(r1,r2…rn),设ri=1-2xi是第i个发送的二进制信号,当xi=0或1的时候,ri=+1或-1,则第i个接受信号为txi=ri+ni,ni是均值为0,方差为σ2的高斯白噪声,则有后验概率:
P(r=ri|yi)=[1+exp(-2yiri/σ2)]-1ri=1或-1
如图1以及图2所示,对于一种较佳实施例,图1中生成矩阵G(2)、校验矩阵H(12)、校准表(9)、LLR表(10)均为存在内存中的表项,AI引擎(4)的神经网络运算由专门的来DSP处理,其中校准表(9)由颗粒接口并通过大量的样本和实验获取了不同擦写次数、数据保存时间和读次数(8)获得。
如图1以及图2所示,对于一种较佳实施例,软信息传入神经网络预训练,需要转换为对数似然比进行迭代计算,在对数域对概率信息进行计算可以将原本的乘法运算转化为加法运算,减少了复杂运算的数量,降低了神经网络的复杂度,xi表示写入闪存的数据,yi表示读出的数据,而P表示读出数据的条件概率。若初次判断写入数据为“0”的概率更大,则对数似然比为正,反之为负,LLR的绝对值反映了判断结果的可靠性,如图2示,绝对值越大判决状态越明确,可靠性越高。
本发明基于机器学习的LDPC闪存纠错方法能减少传统方法重读的次数,提升重读的准确度,并且将较大复杂度的软解码概率迭代过程固化到神经网络中,达到智能降低读取延时,降低解码复杂度,有效地减少闪存的磨损进而达到延长使用寿命的目的。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (5)
1.一种基于机器学习的闪存LDPC纠错方法,其特征在于,包括以下步骤:
对受扰后的编码数据根据存储状态之间设置的参考电压进行硬判决得到初始译码序列X,X左乘奇偶校验矩阵H,统计每个信息节点所对应的校验方程中被标记的最大翻转数,最大翻转数所对应的信息位发生取反,达到最大迭代数;
对达到迭代次数硬解码失败的码字传入AI引擎,通过预训练好的神经网络模型根据输入的数据集,选择参考电压和查询读补偿的校准表获得读电压;
读电压每次读取都会取回与等着被纠错的数据相关的元数据,把读出的0或1的序列Y输入到预训练好的AI引擎,加载对数似然比表给AI引擎,把信息节点和校验节点间置信概率的更新迭代通过设置神经网络传递函数进行训练和学习,按照最大后验概率译码准则来对接受到的序列Y作出判决;
其中,
对神经网络模型的机器学习所倚赖的神经网络自学习能力,在真实NAND Flash颗粒上采集数据进行预学习,构建深度学习网络模型进行预训练,深度置信网络DBN模型建立正向传播模型,通过神经网络中反向传播算法BP算法建立误差反向传播模型,调整神经元间的权值参数,根据数据特征划分出多种应用场景,不同场景采用相应的参考电压去重读;
读补偿为通过神经网络预训练的数据集,获得不同擦除次数P/ECycles、Retention时间以及读次数下的校准表,当错误出现的时候查询块的状态获得读电压值;
对重读后获得的元数据使映射成LDPC解码软数据,结合闪存块中采集的P\E cycle、驻留时间以及温度数据,结合读补偿得到的后验概率软信息,预训练神经网络并使信息节点和校验节点的软信息迭代根据具体场景固化成不同的表达式,在软解码时对重读后的数据直接输出迭代结果的对数似然比;
2.根据权利要求1所述的基于机器学习的闪存LDPC纠错方法,其特征在于,控制器发出读、写和擦除信号,控制器发出写命令开始编码,控制器发出读命令开始LDPC硬解码。
3.根据权利要求1所述的基于机器学习的闪存LDPC纠错方法,其特征在于,在二进制白噪声信道中,编码码字序列X=(x1,x2…xn)经过二进制相移键控调制得到序列R=(r1,r2…rn),设ri=1-2xi是第i个发送的二进制信号,当xi=0或1的时候,ri=+1或-1,则调制后第i个接受信号为txi=ri+ni,ni是均值为0,方差为σ2的高斯白噪声,则有后验概率:
P(r=ri|yi)=[1+exp(-2yiri/σ2)]-1ri=1或-1。
4.如权利要求1所述的基于机器学习的闪存LDPC纠错方法,其特征在于,还包括:控制器发出写命令,原始信息生成m个冗余位,将冗余位加在原有数据位后面得到编码后的数据X=(x1,x2…xn)经BPSK调制保存到Flash中,根据校验矩阵Hmn中1的位置建立Tanner图,确定变量节点和校验节点的连接关系。
5.如权利要求1所述的基于机器学习的闪存LDPC纠错方法,其特征在于,真实NANDFlash颗粒上采集的数据包括:P/E Cycles、Retention时间、读次数以及物理块温度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910808900.1A CN110515760B (zh) | 2019-08-29 | 2019-08-29 | 一种基于机器学习的ldpc闪存纠错方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910808900.1A CN110515760B (zh) | 2019-08-29 | 2019-08-29 | 一种基于机器学习的ldpc闪存纠错方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110515760A CN110515760A (zh) | 2019-11-29 |
CN110515760B true CN110515760B (zh) | 2023-05-02 |
Family
ID=68627925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910808900.1A Active CN110515760B (zh) | 2019-08-29 | 2019-08-29 | 一种基于机器学习的ldpc闪存纠错方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110515760B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12115680B2 (en) | 2019-12-03 | 2024-10-15 | Siemens Aktiengesellschaft | Computerized engineering tool and methodology to develop neural skills for a robotics system |
CN111798902A (zh) * | 2020-06-28 | 2020-10-20 | 山东华芯半导体有限公司 | 一种获得电荷俘获型3d nand闪存软信息的方法 |
CN111858138B (zh) * | 2020-07-08 | 2023-09-19 | 上海威固信息技术股份有限公司 | 一种基于三维tlc闪存页不平衡比特错误的ldpc译码优化方法 |
CN111913830B (zh) * | 2020-08-18 | 2024-03-19 | 深圳大普微电子科技有限公司 | 一种重读操作处理方法、装置、设备及可读存储介质 |
CN114389620A (zh) * | 2020-10-20 | 2022-04-22 | 华为技术有限公司 | 一种译码方法和装置 |
CN112562766B (zh) * | 2020-12-23 | 2024-08-09 | 苏州大普微电子科技有限公司 | 一种重读管理方法、固态硬盘控制器及固态硬盘 |
WO2022213320A1 (zh) * | 2021-04-08 | 2022-10-13 | 中国科学院微电子研究所 | 用于闪存的数据恢复方法 |
CN113689910B (zh) * | 2021-08-04 | 2022-07-26 | 广东工业大学 | 一种基于卷积神经网络的nand闪存信号检测方法及系统 |
CN114118439B (zh) * | 2021-11-09 | 2022-05-13 | 北京得瑞领新科技有限公司 | 判决电平预测模型的训练数据生成方法、系统及存储介质 |
CN114724602B (zh) * | 2022-03-07 | 2023-02-10 | 北京得瑞领新科技有限公司 | 低密度校验码解码能力的验证方法、装置及计算机设备 |
CN117130822A (zh) * | 2023-10-24 | 2023-11-28 | 杭州阿姆科技有限公司 | 一种用于预测nand闪存数据出错的方法及系统 |
CN117393025B (zh) * | 2023-12-08 | 2024-03-15 | 杭州阿姆科技有限公司 | 生成符合nand数据特征带软判决信息的数据的方法 |
CN118312110A (zh) * | 2024-06-07 | 2024-07-09 | 山东云海国创云计算装备产业创新中心有限公司 | 闪存数据处理方法、装置、计算机设备以及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064093A (zh) * | 2012-12-22 | 2013-04-24 | 山东大学 | 一种gps接收机中ldpc码辅助的迭代载波同步方法 |
CN104079303A (zh) * | 2014-06-28 | 2014-10-01 | 山东大学 | 一种多进制ldpc码辅助的迭代载波同步方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10382067B2 (en) * | 2017-06-08 | 2019-08-13 | Western Digital Technologies, Inc. | Parameterized iterative message passing decoder |
-
2019
- 2019-08-29 CN CN201910808900.1A patent/CN110515760B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064093A (zh) * | 2012-12-22 | 2013-04-24 | 山东大学 | 一种gps接收机中ldpc码辅助的迭代载波同步方法 |
CN104079303A (zh) * | 2014-06-28 | 2014-10-01 | 山东大学 | 一种多进制ldpc码辅助的迭代载波同步方法 |
Non-Patent Citations (1)
Title |
---|
基于神经网络的信道译码算法研究综述;王玉环等;《中国传媒大学学报(自然科学版)》;20180625(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110515760A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515760B (zh) | 一种基于机器学习的ldpc闪存纠错方法 | |
US11416735B2 (en) | Neural networks and systems for decoding encoded data | |
CN102394113B (zh) | 一种应用于快闪存储器中的动态ldpc纠错码方法 | |
US8149623B2 (en) | Controller and non-volatile semiconductor memory device | |
CN109361404B (zh) | 一种基于半监督深度学习网络的ldpc译码系统及译码方法 | |
CN111970009B (zh) | 级联极化码比特翻转置信传播编译码方法 | |
JP2014150528A (ja) | 選択的なバイナリ復号および非バイナリ復号を用いるフラッシュ・メモリ内の検出および復号 | |
US11973513B2 (en) | Decoders and systems for decoding encoded data using neural networks | |
CN109087683B (zh) | 一种NAND Flash固态存储自适应差错控制方法 | |
CN111327332B (zh) | Ldpc码的噪声梯度下降多比特翻转译码早停方法 | |
CN114866093B (zh) | 一种面向极化码快速串行抵消列表译码的高效码本选择方法 | |
CN111294061A (zh) | 一种原始比特错误率感知的译码软判决延迟降低方法 | |
CN111130567A (zh) | 添加噪声扰动和比特翻转的极化码置信传播列表译码方法 | |
Huang et al. | Functional error correction for reliable neural networks | |
CN113556134B (zh) | 适用于简化串行抵消译码的极化码删余编码器及编码方法 | |
CN105320573B (zh) | 解码方法、存储器存储装置及存储器控制电路单元 | |
CN110708077B (zh) | Ldpc码大数逻辑译码方法、装置和译码器 | |
US20200264974A1 (en) | Decoding of high-density memory cells in a solid-state drive | |
Duangthong et al. | Capacity enhancement of asymmetric multi-level cell (mlc) nand flash memory using write voltage optimization | |
CN113872614B (zh) | 一种基于深度神经网络的里德-所罗门码译码方法及系统 | |
US20240313806A1 (en) | Deep neural network implementation for concatenated codes | |
Nguyen et al. | Performance evaluation of neural network-based channel detection for STT-MRAM | |
US12050514B1 (en) | Deep neural network implementation for soft decoding of BCH code | |
CN110752850A (zh) | 一种mlc闪存芯片ldpc码快速迭代的方法 | |
CN110008054B (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 | ||
GR01 | Patent grant |