基于机器学习的读出数据错误处理制造技术

技术编号:39728128 阅读:15 留言:0更新日期:2023-12-17 23:32
本申请提供基于机器学习的读出数据错误处理

【技术实现步骤摘要】
基于机器学习的读出数据错误处理


[0001]本申请涉及存储领域,具体地,涉及对从NVM芯片中读出数据的错误处理。

技术介绍

[0002]闪存通过在存储单元中保持电荷量来存储信息。存储单元中的电荷量决定了存储单元的读出电压。在读取闪存数据时,比较存储单元的读出电压与阈值电压来识别存储单元所存储的信息。相变存储器、阻变存储器、磁旋存储器、DRAM各自利用基于不同原理的存储单元来存储信息。
[0003]存储介质一般不是完全可靠的。由于存储单元的电荷量受存储单元的质量、寿命、时间等多种因素的影响,以及从多个存储单元到敏感放大器的信号传输路径的非均一性,导致从存储单元读取的数据同写入的数据存在偏差,无法正确体现原始向存储单元写入的信息。
[0004]现有技术中采用一些手段来预防或应对因存储单元的电荷量等因素的变化而导致读取的数据无法正确体现写入的数据的问题,例如,在美国专利US9070454B1中,根据存储单元的擦写次数、保持时间等因素计算阈值电压(从存储单元中读取数据或向存储单元中写入数据时使用的阈值电压或判决电压),并使用计算出的阈值电压向存储单元写入数据。阈值电压可包括用于读操作的读阈值与用于写操作的写阈值。
[0005]在闪存芯片中,通过为读操作指示不同的参数,来选择读操作时所使用的阈值电压。通过具有不同阈值电压的读操作,从存储单元读出的数据会有不同的结果。有些结果具有较低的比特错误率(Bit Error Ratio,错误比特与传输的总比特数的百分比),而有些结果具有较高的比特错误率。结合使用ECC(Error Correction Code,错误校正码)技术,具有较低的比特错误率的读取结果被ECC技术纠正的几率较高,从而通过尝试不同参数,来应对读操作中遇到的错误。参数可以合并在读操作中提供给闪存芯片,或者在闪存芯片中设置用于读操作的参数,而在闪存芯片处理读操作时,使用所设置的参数。
[0006]ECC技术的纠错能力是有限的,例如,最多能在1K字节数据(被称为ECC数据帧)中纠正40比特错误。当存储的数据的错误比特数量超出了ECC部件的纠错能力,需要尝试具有其他参数的读操作,以期待得到具有较少错误比特数的读出数据,以符合ECC部件的纠错能力要求。
[0007]存储介质上通常按页来存储和读取数据,而按块来擦除数据。通常,块包含多个页,存储介质上的页(称为物理页)具有固定的尺寸,例如17664字节,当然,物理页也可以具有其他的尺寸。在读出或写入数据时,一般为每个页的所有存储单元设置相同的阈值电压。

技术实现思路

[0008]读操作具有多种参数,分别指示了不同的读阈值电压。在对读操作的错误处理中,需要提高选择读操作参数的效率,以加快数据读取过程,并减少从NVM芯片重复读数据的次数,以提升读数据的有效带宽。
[0009]本申请的目的在于提供数据恢复方法及固态存储设备,以提高读命令读出的数据的准确度。
[0010]根据本申请的第一方面,提供了根据本申请第一方面的第一数据恢复方法,其中,包括:接收主机发出的读访问命令;根据读访问命令向非易失性存储器发出读命令;接收非易失性存储器提供的读出数据;对读出数据进行错误校正;若错误校正成功,则将校正后的读出数据发送给主机;并且利用读命令被应用的场景和读命令指示的读命令参数训练神经网络。
[0011]根据本申请的第一方面的第一数据恢复方法,提供了根据本申请第一方面的第二数据恢复方法,其中,读命令被应用的场景作为神经网络的输入,读命令指示的读命令参数作为神经网络的输出。
[0012]根据本申请的第一方面的第一或第二数据恢复方法,提供了根据本申请第一方面的第三数据恢复方法,其中,神经网络对读命令被应用的场景分类。
[0013]根据本申请的第一方面的第三数据恢复方法,提供了根据本申请第一方面的第四数据恢复方法,其中,场景的类别与能在该场景下读出可被成功错误校正的数据的读命令参数对应。
[0014]根据本申请的第一方面的第三数据恢复方法,提供了根据本申请第一方面的第五数据恢复方法,其中,场景的类别与能在该场景下读出可被成功错误校正的几率大于第一值的数据的读命令参数对应。
[0015]根据本申请的第一方面的第三数据恢复方法,提供了根据本申请第一方面的第六数据恢复方法,其中,场景的类别与能在该场景下读出错误比特数低于第二值的数据的读命令参数对应。
[0016]根据本申请的第一方面的第三数据恢复方法,提供了根据本申请第一方面的第七数据恢复方法,其中,场景的类别与读命令参数序列对应。
[0017]根据本申请的第一方面的第七数据恢复方法,提供了根据本申请第一方面的第八数据恢复方法,其中,使用根据读命令参数序列产生的读命令序列从非易失性存储器读出的数据组合,可被成功错误校正或被成功错误校正的几率大于第三值。
[0018]根据本申请的第一方面的第七数据恢复方法,提供了根据本申请第一方面的第九数据恢复方法,其中,使用根据读命令参数序列产生的读命令序列从非易失性存储器读出的数据组合,通过软译码可被成功错误校正或被成功错误校正的几率大于第四值。
[0019]根据本申请的第一方面的第一至第九数据恢复方法,提供了根据本申请第一方面的第十数据恢复方法,其中,读命令被应用的场景的属性包括读命令访问的逻辑单元号、物理块、物理页类型、物理块上的数据自被写入至今的时间间隔、物理块的被擦除次数、物理块被读取次数和/或物理块是否被完整写入。
[0020]根据本申请的第一方面的第十数据恢复方法,提供了根据本申请第一方面的第十一数据恢复方法,其中,物理块上的数据自被写入至今的时间间隔包括或不包括固态存储设备处于掉电状态的时间。
[0021]根据本申请的第一方面的第十数据恢复方法,提供了根据本申请第一方面的第十二数据恢复方法,其中,场景的属性包括物理块的错误率。
[0022]根据本申请的第一方面的第一数据恢复方法,提供了根据本申请第一方面的第十
三数据恢复方法,其中,场景的属性包括读命令访问的物理页以及上次对物理页读出的数据错误校正成功所对应的读命令参数。
[0023]根据本申请的第一方面的第一至第十三数据恢复方法,提供了根据本申请第一方面的第十四数据恢复方法,其中,响应于错误校正失败,生成重读命令重新获取读出数据。
[0024]根据本申请的第一方面的第十四数据恢复方法,提供了根据本申请第一方面的第十五数据恢复方法,其中,响应于对重新命令的读出数据的错误校正成功,利用重读命令对应的读命令参数和重读命令被应用的场景来训练神经网络。
[0025]根据本申请的第一方面的第十五数据恢复方法,提供了根据本申请第一方面的第十六数据恢复方法,其中,响应于对读出数据的错误校正失败,利用读命令对应的读命令参数和读命令被应用的场景来训练神经网络。
[0026]根据本申请的第一方面的第一至十六数据恢复方法,提供了根据本申请第一方面的第十七数据恢复方法,其中,响应于主机的命令,设置神经网络的参本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据恢复方法,其特征在于,包括:接收主机发出的读访问命令;根据所述读访问命令向非易失性存储器发出读命令;接收所述非易失性存储器提供的读出数据;对所述读出数据进行错误校正;若所述错误校正成功,则将校正后的读出数据发送给主机;响应于错误校正失败,人工智能部件根据接收到的读命令被应用的场景推断出与所述场景对应的读命令参数和/或读命令序列,并生成重读命令,将所述重读命令发送给所述非易失性存储器。2.根据权利要求1所述的数据恢复方法,其特征在于,还包括:响应于错误校正成功,人工智能部件对读命令应用的场景和读命令参数进行训练。3.一种控制部件,其特征在于,包括命令下发队列、介质接口控制器、错误校正部件、人工智能部件和命令完成队列;所述命令下发队列与所述介质接口控制器耦合,所述命令下发队列接收主机的读访问命令,并将所述读访问命令转发给介质接口控制器;所述介质接口控制器向非易失性存储器发出读命令,并接收所述非易失性存储器的读出数据;所述错误校正部件与所述介质接口控制器耦合,所述错误校正部件对所述读出数据进行错误校正;所述命令完成队列与所述错误校正部件耦合,响应于错误校正成功,所述命令完成队列接收所述错误校正部件发送的错误校正后的数据并发送给所述主机;所述人工智能部件与所述错误校正部件耦合;所述人工智能部件响应于错误校正失败,根据接收到的读命令被应用的场景推断出与所述场景对应的读命令参数和/或读命令序列,并生成重读命令,将所述重读命令发送给所述非易失性存储器。4.根据权利要求3所述的控制部件,其特征在于,所述人工智能部件对读命令被应用的场景分类。5.根据权利要求4所述的控制部件,其特征在于...

【专利技术属性】
技术研发人员:薛立成
申请(专利权)人:北京忆芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1