CN110908826A - 数据处理方法及相关产品 - Google Patents

数据处理方法及相关产品 Download PDF

Info

Publication number
CN110908826A
CN110908826A CN201910984580.5A CN201910984580A CN110908826A CN 110908826 A CN110908826 A CN 110908826A CN 201910984580 A CN201910984580 A CN 201910984580A CN 110908826 A CN110908826 A CN 110908826A
Authority
CN
China
Prior art keywords
data
reading
storage area
storage
voltage value
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
Application number
CN201910984580.5A
Other languages
English (en)
Other versions
CN110908826B (zh
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.)
Yangtze Memory Technologies Co Ltd
Original Assignee
Yangtze Memory Technologies Co Ltd
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 Yangtze Memory Technologies Co Ltd filed Critical Yangtze Memory Technologies Co Ltd
Priority to CN201910984580.5A priority Critical patent/CN110908826B/zh
Priority to CN202110296212.9A priority patent/CN112948166B/zh
Publication of CN110908826A publication Critical patent/CN110908826A/zh
Application granted granted Critical
Publication of CN110908826B publication Critical patent/CN110908826B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)

Abstract

本申请实施例公开了一种数据处理方法及相关产品,通过获取原始数据并将原始数据存储到存储器中的第一存储区;若原始数据的存储周期超过第一预设时长,则在原始数据存储周期内的任一中间时刻,读取第一存储区在中间时刻所存储的中间数据,并将中间数据存储到所述存储器中的第二存储区,在需要读取所述原始数据的读取时刻,读取第二存储区在读取时刻所存储的第二数据,并读取第一存储区在读取时刻所存储的第一数据,根据第二数据对第一存储区的第一数据进行纠错,得到修正后的原始数据,如此,能够通过提前存储任一中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,在原始数据存储周期较长的情况下,能够保持纠错码模块较强的纠错能力。

Description

数据处理方法及相关产品
技术领域
本申请涉及存储技术领域,具体涉及一种数据处理方法及相关产品。
背景技术
在有些存储器存储通道中,先验误差是随机的,现有技术中通过纠错码对码字中的随机错误进行纠正。一般来说,为了满足更强的纠错能力的需求,会应用强大的纠错码。当同时存在存储周期较长的数据和存储周期较短的数据时,存储周期较短的数据不需要太高的校验能力,这是因为,使用更强的纠错码对其进行纠错,纠错码模块的硬件利用率会更高或者编码速率更低,若使用校验能力不太高的纠错码模块,可降低硬件利用率,但是,当存储周期较长的数据中的数据错误超过纠错码模块的纠错容量时,会因为无法对全部数据错误进行纠错而导致无法读取正确的原始数据。因此,如何在降低纠错码模块的硬件利用率的前提下,保持纠错码模块较强的纠错能力的问题需要考虑。
发明内容
本申请实施例提供了一种数据处理方法及相关产品,能够通过提前存储中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,从而能降低纠错码模块的硬件利用率,并保持其较强的纠错能力。
第一方面,本申请实施例提供一种数据处理方法,所述方法包括:
获取原始数据并将所述原始数据存储到存储器中的第一存储区;
若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式;以及
在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据;以及
根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
第二方面,本申请实施例提供一种数据处理装置,所述装置包括:
存储单元,用于获取原始数据并将所述原始数据存储到存储器中的第一存储区;
所述存储单元,还用于若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式;以及
读取单元,用于在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据;以及
纠错单元,用于根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
第三方面,本申请实施例提供了一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具备如下有益效果:
可以看出,本申请实施例中所描述的数据处理方法,通过获取原始数据并将原始数据存储到存储器中的第一存储区;若原始数据的存储周期超过第一预设时长,则在原始数据存储周期内的任一中间时刻,读取第一存储区在中间时刻所存储的中间数据,并将中间数据存储到所述存储器中的第二存储区,在需要读取所述原始数据的读取时刻,读取第二存储区在读取时刻所存储的第二数据,并读取第一存储区在读取时刻所存储的第一数据,根据第二数据对第一存储区的第一数据进行纠错,得到修正后的原始数据,如此,能够通过提前存储任一中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,在原始数据存储周期较长的情况下,能够保持纠错码模块较强的纠错能力。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A是本申请实施例中提供的一种通过纠错码对数据进行纠错的演示示意图;
图1B是本申请实施例提供的一种数据处理方法的流程示意图;
图1C是本申请实施例中提供的一种CTF的阈值电压偏移的示意图;
图1D是本申请实施例中提供的另一种CTF的阈值电压偏移的示意图;
图1E是本申请实施例提供的一种第一预设电压值列表的演示示意图;
图1F是本申请实施例提供的一种第一存储区和第二存储区中数据随时间变化的演示示意图;
图1G是本申请实施例提供的一种存储单元数量与参考数值电压之间分布曲线示意图;
图2是本申请实施例提供的另一种数据处理方法的流程示意图;
图3A是本申请实施例提供的一种进行编码的流程示意图;
图3B是本申请实施例提供的一种进行解码的流程示意图;
图4是本申请实施例提供的一种电子设备的结构示意图;
图5A是本申请实施例提供的一种数据处理装置的功能单元组成框图;
图5B是本申请实施例提供的图5A所示的数据处理装置的变型结构。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面对本申请实施例进行详细介绍。
请参阅图1A,图1A为本申请实施例中提供的一种通过纠错码对数据进行纠错的演示示意图,其中,D1、D2、D3...为信息位,用于存储数据,P1、P2、P3...为校验位,通过在信息位后面增加校验位可对信息位进行纠错。
请参阅图1B,图1B是本申请实施例提供的一种数据处理方法的流程示意图,本数据处理方法包括:
101、获取原始数据并将所述原始数据存储到存储器中的第一存储区。
其中,原始数据为待存储的数据,获取原始数据的方式可以是电子设备接收外部设备传输的数据,或者电子设备获取自身产生的数据。
可选地,存储器可包括闪存。
可选地,上述步骤101中,将所述原始数据存储到存储器中的第一存储区,可包括以下步骤:
将所述原始数据作为第一信息位进行编码,得到第一校验位;以及
将所述第一信息位和所述第一校验位编程至所述存储器中的第一存储区,得到与所述原始数据相关的第一码字。
本申请实施例中,将原始数据存储到存储器中的第一存储区,可将原始数据作为第一信息位D1进行编码,从而可得到编码后的第一校验位P1。然后,可将所述第一信息位D1和所述第一校验位P1编程至所述存储器中的第一存储区,得到与原始数据相关的第一码字,具体地,可在存储器通道中,利用电荷撷取存储器(charge trapflash,CTF)结构,通过向存储器通道注入电荷的方式进行编程,其中,第一存储区包括多个存储单元,针对第一存储区中的每一存储单元,可根据该存储单元需要存储的编码注入对应的电荷,使该存储单元的阈值电压达到与需要存储的数据对应的预设阈值电压,其中,阈值电压是指用于表征对应存储单元存储的数据的属性电压,例如,若存储单元中需要存储的数据为0,可向该存储单元注入电荷,使该存储单元的阈值电压达到预设阈值电压0.35V;若存储单元中需要存储的数据为1,可向该存储单元注入电荷,使该存储单元的阈值电压达到预设阈值电压0.8V。请参阅图1C,图1C为本申请实施例中提供的一种CTF的阈值电压偏移的示意图,如图1C所示,在将电荷注入存储单元的过程中可能会发生电荷漂移,导致对应存储单元的阈值电压产生偏移,例如,存储单元的阈值电压本应该达到预设阈值电压0.35V,可能因为电荷漂移导致该存储单元的阈值电压实际为0.37V,或者0.31V,从而会出现不是所有编码为1的存储单元的阈值电压都为0.35V的情况,在进行编程的阶段,处于阈值电压的存储单元的数量最多,阈值电压偏移越远的存储单元的数量越少。
102、若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式。
其中,存储周期是指原始数据的待存储时长,存储周期例如可以是4年,第一预设时长例如可以是3年,此处不作限制。
本申请实施例中,考虑到原始数据在进行存储的过程中,每一存储单元对应的电荷会发生漏电,随着存储时间增加,漏电情况越严重,阈值电压越高,漏电情况也越严重,从而会导致每一存储单元的阈值电压下降,如图1D所示,图1D为本申请实施例中提供的另一种CTF的阈值电压偏移的示意图,其中,第一存储区中每一存储单元的阈值电压都下降,会导致在读取原始数据的阶段,会发生解码错误。一般来说,若原始数据的存储周期较短,在该存储周期中原始数据发生数据错误的错误量会较少,纠错码模块的纠错容量可实现仅通过一次纠错就可以对数据错误进行纠错,得到修正后的原始数据,例如,纠错码模块的纠错容量为72位/1150字节,可在存在72位数据错误的情况下进行纠错。但是当原始数据的存储周期较长,在存储过程中,可能会出现超过72位的数据错误,例如,出现144位数据错误,从而导致难以全部对产生的数据错误进行纠错。因此,本申请实施例中,可在原始数据存储周期内的任一中间时刻,读取第一存储区在任一中间时刻所存储的中间数据,并将任一中间数据存储到存储器中的第二存储区,其中,原始数据在第一存储区进行存储,由于存储单元的阈值电压下降,会导致部分存储单元的数据发生错误,因此可得到修正后的原始数据在任一中间时刻在第一存储区的表现形式,即中间数据。
可选地,上述步骤102中,读取所述第一存储区在所述中间时刻所存储的中间数据,可包括以下步骤:
21、在所述任一中间时刻,获取第一读取电压值;以及
22、根据所述第一读取电压值对所述第一存储区进行读取操作,得到所述中间数据。
其中,第一读取电压值用于对第一存储区中每一存储单元的数据进行读取,根据第一读取电压值和存储单元的阈值电压的大小关系可确定存储单元存储的数据,例如,第一读取电压值为3V,第一存储单元的阈值电压为1.7V,第二存储单元的阈值电压为5V,表明第一存储单元的数据可能与第二存储单元的数据不同。
可选地,上述步骤21中,获取第一读取电压值,可包括以下步骤:
2101、在所述任一中间时刻,获取所述原始数据的已存储时长和编写擦除次数,其中,所述已存储时长小于或等于所述存储周期;以及
2102、根据所述已存储时长和所述编写擦除次数查询第一预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述第一读取电压值。
其中,可获取原始数据的已存储时长和编写擦除次数,根据已存储时长和编写擦除次数查询预先创建的第一预设电压值列表,得到与存储时长和编写擦除次数对应的第一读取电压值,从而,可根据该第一读取电压值读取第一存储区的数据。
可选地,电子设备可预先创建上述第一预设电压值列表,创建第一预设电压值列表,可包括以下步骤:
2103、预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值;
2104、根据所述多组参考存储时长和编写擦除次数和所述多个读取电压值创建所述第一预设电压值列表。
其中,可预先对样本数据进行训练,具体地,可获取样本数据在存储过程中,多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数下的读取电压值,然后,可根据多组参考存储时长和编写擦除次数和多个读取电压值创建第一预设电压值列表。请参阅图1E,图1E为本申请实施例提供的一种第一预设电压值列表的演示示意图,其中,每一组存储时长和编写擦除次数对应一个读取电压值。
可选地,上述步骤2103中,获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值,可包括以下步骤:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长为任一参考存储时长,并执行以下操作:
2111、在所述样本数据存储至参考存储时长i时,确定存储所述样本数据的多个存储单元的多个参考阈值电压的电压分布,以及确定所述多个存储单元中每一存储单元所处的第一状态或第二状态;
2112、根据所述电压分布确定处于所述第一状态的多个第一存储单元的多个第一参考阈值电压所处的第一电压范围;以及确定处于所述第二状态的多个第二存储单元的多个第二参考阈值电压所处的第二电压范围;
2113、确定所述第一电压范围和第二电压范围的重叠电压范围;
2114、将所述多个第一参考阈值电压中大于所述重叠电压范围左端点的多个第一参考阈值电压按照从小到大的顺序进行排列,得到第一排序,确定所述第一排序中第n个第一参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值,其中,所述n为预设数值;或者,
2115、将所述多个第二参考阈值电压中小于所述重叠电压范围右端点的多个第二参考阈值电压按照从大到小的顺序进行排列,得到第二排序,确定所述第二排序中第n个第二参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
举例说明,在样本数据刚刚进行存储的初始状态下,处于第一状态的多个存储单元的参考阈值电压分布在第三电压范围,例如0.3V-0.5V,处于第二状态的存储单元的参考阈值电压分布在第四电压范围,例如0.5V-0.8V;在经过参考存储时长i之后,每一存储单元的参考阈值电压会产生偏移,所有存储单元的参考阈值电压均下降,处于第一状态的存储单元的参考阈值电压分布范围为第一电压范围,例如0.1V-0.4V,第二状态的存储单元的参考阈值电压分布在第二电压范围,例如0.3V-0.7V;第三电压范围和第四电压范围存在重叠电压范围,重叠电压范围0.3V-0.4V,此时,可将多个第一参考阈值电压中大于重叠电压范围左端点的多个第一参考阈值电压按照从小到大的顺序进行排列,得到第一排序,确定所述第一排序中第n个第一参考阈值电压为与参考存储时长i和编写擦除次数i对应的读取电压值。例如,将多个第一参考阈值电压中大于0.3V的多个第一参考阈值电压按照从小到大的顺序进行排列,得到第一排序,确定第一排序中第72个第一参考阈值电压为与参考存储时长i和编写擦除次数i对应的读取电压值。或者,将多个第二参考阈值电压中小于0.4V的多个第二参考阈值电压按照从大到小的顺序进行排列,得到第二排序,确定第二排序中第72个第二参考阈值电压为与参考存储时长i和编写擦除次数i对应的读取电压值。
可选地,上述步骤102中,将所述中间数据存储到所述存储器中的第二存储区,可包括以下步骤:
将所述中间数据作为第二信息位进行编码,得到第二校验位;以及
将所述第二校验位编程至所述内存中的第二存储区,得到与所述中间数据相关的第二码字。
本申请实施例中,将中间数据存储到存储器中的第一存储区,可将中间数据作为第二信息位D2进行编码,从而可得到编码后的第一校验位P2。然后,可将第二校验位P2编程至所述存储器中的第二存储区,得到与中间数据相关的第二码字。
其中,第一存储区与第二存储区的物理地址不同,为了避免对中间数据进行编码的过程中,因电荷漂移造成对原始数据的干扰,因此,将中间数据存储到与第一存储区的物理地址不同的第二存储,从而可防止存储过程中中间数据和原始数据之间因干扰导致数据错误。
103、在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据。
其中,第一数据为所述原始数据在所述读取时刻在所述第一存储区的表现形式,第二数据为所述中间数据在所述读取时刻在所述第二存储区的表现形式。
本申请实施例中,请参阅图1F,图1F为本申请实施例提供的一种第一存储区和第二存储区中数据随时间变化的演示示意图。其中,在初始时刻,将原始数据存储至第一存储区;在任一中间时刻,原始数据在任一中间时刻在第一存储区中的表现形式为中间数据,将中间数据存储至第二存储区;在需要读取原始数据的读取时刻,可对第一存储区和第二存储区的所存储的数据进行读取,其中,在读取时刻,原始数据在读取时刻在第一存储区中的表现形式为第一数据,中间数据在读取时刻在第二存储区中的表现形式为第二数据。
可选地,上述步骤103中,读取所述第二存储区在所述读取时刻所存储的第二数据,可包括以下步骤:
31、在所述读取时刻获取判决电压值;以及
32、根据所述判决电压值对所述第二存储区中的第二校验位进行读取操作,得到所述第二数据。
其中,判决电压值用于对第二存储区中每一存储单元的数据进行读取,具体地,可根据判决电压值对第二存储区中的第二校验位P2进行读取操作,得到第二数据P2'。
可选地,上述步骤31中,获取判决电压值,可包括以下步骤:
3101根据所述已存储时长和所述编写擦除次数查询第二预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述判决电压值。
可选地,电子设备可预先创建第二预设电压值列表,创建第二预设电压值列表,可包括以下步骤:
3102、预先针对所述样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值;
3103、根据所述多组参考存储时长和编写擦除次数和所述多个判决电压值创建所述第二预设电压值列表。
可选地,上述步骤3102中,获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值,可包括以下步骤:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
3111、在所述样本数据存储至参考存储时长i时,确定处于所述第一状态的多个第一存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第一分布曲线,确定处于所述第二状态的多个第二存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第二分布曲线;
3112确定所述第一分布曲线和所述第二分布曲线的交点对应的参考电压阈值为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
请参阅图1G,图1G为本申请实施例提供的一种存储单元数量与参考数值电压之间分布曲线示意图。其中,在样本数据的多个存储单元中,可统计处于同一参考阈值电压的存储单元的数量,其中,可先确定每一存储单元所处的第一状态或第二状态,然后,根据第一状态的多个第一存储单元的多个第一参考阈值电压生成第一分布曲线,其中,第一分布曲线中,每一个参考阈值电压的电压数值对应一个存储单元数量,表示多个存储单元的参考阈值电压都为该电压数值。还可根据第二状态的多个第二存储单元的多个第二参考阈值电压生成第二分布曲线。然后确定第一分布曲线和第二分布曲线的交点对应的参考电压阈值为与参考存储时长i和编写擦除次数i对应的判决电压值。
可选地,上述步骤32中,根据所述判决电压值对所述第二存储区进行读取操作,得到所述第二数据,可包括以下步骤:
3201、根据所述第二存储区中所述第二校验位的逻辑地址确定所述第二校验位的物理地址;
3202、根据所述判决电压值在所述第二校验位的所述物理地址进行读取,得到所述第二数据。
其中,在进行数据读取时,可根据预先记录保存的第二校验位P2的逻辑地址确定第二校验位P2的物理地址,然后,根据第二校验位P2的所述物理地址进行读取,得到第二数据P2'。
可选地,上述步骤103中,读取所述第一存储区在所述读取时刻所存储的第一数据,可包括以下步骤:
33、在所述读取时刻从所述预设电压列表中获取第二读取电压值;以及
34、根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据。
其中,第二读取电压值用于对第一存储区中每一存储单元的数据进行读取,具体地,可根据第二读取电压值对第一存储区中的第一信息位D1和所述第一校验位P1进行读取操作,得到第一数据D2'和校验位数据P1'。
可选地,上述步骤34中,所述第二校验位P2的物理地址还包括所述第一信息位和所述第一校验位的物理地址,根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据,可包括以下步骤:
3401、根据所述第二读取电压值读取所述第一存储区中所述第一信息位和所述第一校验位的物理地址,得到所述第一数据和所述校验位数据。
其中,由于第一存储区的物理地址与第二存储区的物理地址不同,第二校验位P2的物理地址与第一信息位D1和所述第一校验位P1的物理地址也不同,因此,可将第一信息位D1和所述第一校验位P1的物理地址保存在第二校验位P2的物理地址中,从而可在获取到第二校验位P2的物理地址之后,从第二校验位P2的物理地址中获取第一信息位D1和所述第一校验位P1的物理地址,进而根据第二读取电压值读取第一存储区中第一信息位D1和第一校验位P1的物理地址,得到第一数据D2'和校验位数据P1'。
104、根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
本申请实施例中,第一数据和第二数据均为原始数据在存储过程中产生错误的数据,在读取时刻,可通过第二存储区的第二数据对第一存储区的第一数据进行纠错,从而可对第一数据产生的数据错误全部进行纠错,得到正确的原始数据。
可选地,上述步骤104中,根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据,可包括以下步骤:
41、对所述第一数据和所述第二数据进行解码,若解码成功,得到所述中间数据;
42、对所述中间数据和从第一存储区读取的所述校验位数据进行解码,得到修正后的原始数据。
其中,可对第一数据D2'和第二数据P2'进行解码,若解码成功,得到中间数据D2;然后,对所述中间数据D2和从第一存储区读取的所述校验位数据P1'进行解码,得到第一信息位D1,即得到修正后的原始数据。从而,可通过上述两次解码,对第一数据进行两次纠错,其中,第一次纠错可得到中间数据,然后根据中间数据进行第二次纠错,得到修正后的原始数据,例如,若从原始数据到读取时刻的第一数据产生的数据错误有144位,则可通过第一次解码对其中72位进行纠错,通过第二次解码对剩下72位进行纠错,得到正确的原始数据。如此,可通过纠错容量为72位/1150字节的纠错码模块对存储周期较长的原始数据进行纠错,不仅可降低纠错码模块的硬件利用率,还可提高纠错能力。
可选地,上述步骤41之后,还可包括以下步骤:
若对所述第一数据和所述第二数据解码失败,则返回至上述步骤34,从所述预设电压列表中获取第二读取电压值的步骤。
其中,若步骤41中对所述第一数据D2'和所述第二数据P2'解码失败,可重新获取预设电压列表中的获取新第二读取电压值,然后根据新第二读取电压值读取第一存储区中的第一信息位D1和第一校验位P1,得到新第一数据D2'和新校验位数据P1',然后根据第二数据对新第一数据进行纠错。
可以看出,本申请实施例中所描述的数据处理方法,通过获取原始数据并将原始数据存储到存储器中的第一存储区;若原始数据的存储周期超过第一预设时长,则在原始数据存储周期内的任一中间时刻,读取第一存储区在中间时刻所存储的中间数据,并将中间数据存储到所述存储器中的第二存储区,在需要读取所述原始数据的读取时刻,读取第二存储区在读取时刻所存储的第二数据,并读取第一存储区在读取时刻所存储的第一数据,根据第二数据对第一存储区的第一数据进行纠错,得到修正后的原始数据,如此,能够通过提前存储任一中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,在原始数据存储周期较长的情况下,能够保持纠错码模块较强的纠错能力。
与上述图1B所示的实施例一致地,请参阅图2,图2是本申请实施例提供的一种数据处理方法的流程示意图,本数据处理方法包括:
201、获取原始数据并将所述原始数据作为第一信息位进行编码,得到第一校验位。
202、将所述第一信息位和所述第一校验位编程至所述存储器中的第一存储区,得到与所述原始数据相关的第一码字。
203、若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,获取第一读取电压值。
204、根据所述第一读取电压值对所述第一存储区进行读取操作,得到中间数据。
其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式。
205、将所述中间数据作为第二信息位进行编码,得到第二校验位。
206、将所述第二校验位编程至所述内存中的第二存储区,得到与所述中间数据相关的第二码字。
207、在需要读取所述原始数据的读取时刻,获取判决电压值。
208、根据所述判决电压值对所述第二存储区中的第二校验位进行读取操作,得到所述第二数据。
其中,第二数据为所述中间数据在所述读取时刻在所述第二存储区的表现形式。
209、在所述读取时刻从所述预设电压列表中获取第二读取电压值。
210、根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据。
其中,第一数据为所述原始数据在所述读取时刻在所述第一存储区的表现形式。
211、对所述第一数据和所述第二数据进行解码,若解码成功,得到所述中间数据。
212、对所述中间数据和从第一存储区读取的所述校验位数据进行解码,得到修正后的原始数据。
其中,上述步骤201-步骤212的具体描述可以参照上述图1B所描述的数据处理方法的相应步骤,在此不再赘述。
可以看出,本申请实施例中所描述的数据处理方法,通过获取原始数据并将原始数据作为第一信息位进行编码,得到第一校验位,将第一信息位和第一校验位编程至存储器中的第一存储区,得到与原始数据相关的第一码字,若原始数据的存储周期超过第一预设时长,则在原始数据存储周期内的任一中间时刻,获取第一读取电压值,根据第一读取电压值对第一存储区进行读取操作,得到中间数据,将中间数据作为第二信息位进行编码,得到第二校验位,将第二校验位编程至内存中的第二存储区,得到与中间数据相关的第二码字,在需要读取原始数据的读取时刻,获取判决电压值,根据判决电压值对第二存储区中的第二校验位进行读取操作,得到第二数据,在读取时刻从预设电压列表中获取第二读取电压值,根据第二读取电压值读取第一存储区中的第一信息位和第一校验位,得到第一数据和校验位数据,第一数据为原始数据在读取时刻在第一存储区的表现形式,对第一数据和第二数据进行解码,若解码成功,得到中间数据,对中间数据和从第一存储区读取的校验位数据进行解码,得到修正后的原始数据,如此,能够通过提前存储任一中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,在原始数据存储周期较长的情况下,能够保持纠错码模块较强的纠错能力。
与上述图1B所示的实施例一致地,请参阅图3A-图3B,图3A是本申请实施例提供的一种进行编码的流程示意图,图3B是本申请实施例提供的一种进行解码的流程示意图,其中,如图3A所示,本数据处理方法中,进行编码的方法包括:
获取原始数据并将所述原始数据作为第一信息位D1进行编码,得到第一校验位P1;将所述第一信息位D1和所述第一校验位P1编程至所述存储器中的第一存储区,得到与所述原始数据相关的第一码字。
若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,获取第一读取电压值;根据所述第一读取电压值对所述第一存储区进行读取操作,得到中间数据;将所述中间数据作为第二信息位D2进行编码,得到第二校验位P2;将所述第二校验位P2编程至所述内存中的第二存储区,得到与所述中间数据D2相关的第二码字。
其中,如图3B所示,本数据处理方法中,进行编码的方法包括:
在需要读取所述原始数据的读取时刻,获取判决电压值;根据所述判决电压值对所述第二存储区中的第二校验位P2进行读取操作,得到所述第二数据P2';在所述读取时刻从所述预设电压列表中获取第二读取电压值;根据所述第二读取电压值读取所述第一存储区中的所述第一信息位D1和所述第一校验位P1,得到所述第一数据D2'和校验位数据P1';对所述第一数据D2'和所述第二数据P2'进行解码,若解码成功,得到所述中间数据D2。
对所述中间数据D2和从第一存储区读取的所述校验位数据P1'进行解码,得到修正后的原始数据D1。
若对所述第一数据D2'和所述第二数据P2'解码失败,则返回至所述预设电压列表中获取第二读取电压值的步骤。
其中,上述步骤的具体描述可以参照上述图1B所描述的数据处理方法的相应步骤,在此不再赘述。
可以看出,本申请实施例中所描述的数据处理方法,通过获取原始数据并将原始数据作为第一信息位进行编码,得到第一校验位,将第一信息位和第一校验位编程至存储器中的第一存储区,得到与原始数据相关的第一码字,若原始数据的存储周期超过第一预设时长,则在原始数据存储周期内的任一中间时刻,获取第一读取电压值,根据第一读取电压值对第一存储区进行读取操作,得到中间数据,将中间数据作为第二信息位进行编码,得到第二校验位,将第二校验位编程至内存中的第二存储区,得到与中间数据相关的第二码字,在需要读取原始数据的读取时刻,获取判决电压值,根据判决电压值对第二存储区中的第二校验位进行读取操作,得到第二数据,在读取时刻从预设电压列表中获取第二读取电压值,根据第二读取电压值读取第一存储区中的第一信息位和第一校验位,得到第一数据和校验位数据,第一数据为原始数据在读取时刻在第一存储区的表现形式,对第一数据和第二数据进行解码,若解码失败,则返回至所述预设电压列表中获取第二读取电压值的步骤,若解码成功,得到中间数据,对中间数据和从第一存储区读取的校验位数据进行解码,得到修正后的原始数据,如此,能够通过提前存储任一中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,在原始数据存储周期较长的情况下,能够保持纠错码模块较强的纠错能力。
与上述实施例一致地,请参阅图4,图4是本申请实施例提供的一种电子设备的结构示意图,如图所示,该电子设备400包括处理器410、存储器420、通信接口430以及一个或多个程序421,其中,上述一个或多个程序421被存储在上述存储器中,并且被配置由上述处理器执行,本申请实施例中,上述程序包括用于执行以下步骤的指令:
获取原始数据并将所述原始数据存储到存储器中的第一存储区;
若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式;以及
在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据;以及
根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
在一个可能的示例中,在所述将所述原始数据存储到存储器中的第一存储区方面,上述程序421包括用于执行以下步骤的指令:
将所述原始数据作为第一信息位进行编码,得到第一校验位;以及
将所述第一信息位和所述第一校验位编程至所述存储器中的第一存储区,得到与所述原始数据相关的第一码字。
在一个可能的示例中,在所述读取所述第一存储区在所述中间时刻所存储的中间数据方面,上述程序421包括用于执行以下步骤的指令:
在所述任一中间时刻,获取第一读取电压值;以及
根据所述第一读取电压值对所述第一存储区进行读取操作,得到所述中间数据。
在一个可能的示例中,在所述获取第一读取电压值方面,上述程序包括用于执行以下步骤的指令:
在所述任一中间时刻,获取所述原始数据的已存储时长和编写擦除次数,其中,所述已存储时长小于或等于所述存储周期;以及
根据所述已存储时长和所述编写擦除次数查询第一预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述第一读取电压值。
在一个可能的示例中,上述程序还包括用于执行以下步骤的指令:
预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值;
根据所述多组参考存储时长和编写擦除次数和所述多个读取电压值创建所述第一预设电压值列表。
在一个可能的示例中,在所述获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值方面,上述程序包括用于执行以下步骤的指令:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
在所述样本数据存储至参考存储时长i时,确定存储所述样本数据的多个存储单元的多个参考阈值电压的电压分布,以及确定所述多个存储单元中每一存储单元所处的第一状态或第二状态;
根据所述电压分布确定处于所述第一状态的多个第一存储单元的多个第一参考阈值电压所处的第一电压范围;以及确定处于所述第二状态的多个第二存储单元的多个第二参考阈值电压所处的第二电压范围;
确定所述第一电压范围和第二电压范围的重叠电压范围;
将所述多个第一参考阈值电压中大于所述重叠电压范围左端点的多个第一参考阈值电压按照从小到大的顺序进行排列,得到第一排序,确定所述第一排序中第n个第一参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值,其中,所述n为预设数值;或者,
将所述多个第二参考阈值电压中小于所述重叠电压范围右端点的多个第二参考阈值电压按照从大到小的顺序进行排列,得到第二排序,确定所述第二排序中第n个第二参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
在一个可能的示例中,在所述将所述中间数据存储到所述存储器中的第二存储区方面,上述程序包括用于执行以下步骤的指令:
将所述中间数据作为第二信息位进行编码,得到第二校验位;以及
将所述第二校验位编程至所述内存中的第二存储区,得到与所述中间数据相关的第二码字。
在一个可能的示例中,在所述读取所述第二存储区在所述读取时刻所存储的第二数据方面,上述程序包括用于执行以下步骤的指令:
在所述读取时刻获取判决电压值;以及
根据所述判决电压值对所述第二存储区中的第二校验位进行读取操作,得到所述第二数据。
在一个可能的示例中,在所述获取判决电压值方面,上述程序包括用于执行以下步骤的指令:
根据所述原始数据的已存储时长和编写擦除次数查询第二预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述判决电压值。
在一个可能的示例中,上述程序还包括用于执行以下步骤的指令:
预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值;
根据所述多组参考存储时长和编写擦除次数和所述多个判决电压值创建所述第二预设电压值列表。
在一个可能的示例中,在所述获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值方面,上述程序包括用于执行以下步骤的指令:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
在所述样本数据存储至参考存储时长i时,确定处于所述第一状态的多个第一存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第一分布曲线,确定处于所述第二状态的多个第二存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第二分布曲线;
确定所述第一分布曲线和所述第二分布曲线的交点对应的参考电压阈值为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
在一个可能的示例中,在所述根据所述判决电压值对所述第二存储区进行读取操作,得到所述第二数据方面,上述程序包括用于执行以下步骤的指令:
根据所述第二存储区中所述第二校验位的逻辑地址确定所述第二校验位的物理地址;
根据所述判决电压值在所述第二校验位的所述物理地址进行读取,得到所述第二数据。
在一个可能的示例中,在所述读取所述第一存储区在所述读取时刻所存储的第一数据方面,上述程序包括用于执行以下步骤的指令:
在所述读取时刻从所述预设电压列表中获取第二读取电压值;以及
根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据。
在一个可能的示例中,所述第二校验位的物理地址还包括所述第一信息位和所述第一校验位的物理地址,在所述根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据方面,上述程序421包括用于执行以下步骤的指令:
根据所述第二读取电压值读取所述第一存储区中所述第一信息位和所述第一校验位的物理地址,得到所述第一数据和所述校验位数据。
在一个可能的示例中,在所述根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据方面,上述程序421包括用于执行以下步骤的指令:
对所述第一数据和所述第二数据进行解码,若解码成功,得到所述中间数据;
对所述中间数据和从第一存储区读取的所述校验位数据进行解码,得到修正后的原始数据。
在一个可能的示例中,上述程序421还包括用于执行以下步骤的指令:
若对所述第一数据和所述第二数据解码失败,则返回至所述预设电压列表中获取第二读取电压值的步骤。
在一个可能的示例中,所述存储器可包括闪存。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图5A是本申请实施例中所提供的数据处理装置500的功能单元组成框图。该数据处理装置500,所述装置500包括:存储单元501、读取单元502和纠错单元503,其中,
所述存储单元501,用于获取原始数据并将所述原始数据存储到存储器中的第一存储区;
所述存储单元501,还用于若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式;以及
所述读取单元502,用于在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据;以及
所述纠错单元503,用于根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
可选地,在所述将所述原始数据存储到存储器中的第一存储区方面,所述存储单元501具体用于:
将所述原始数据作为第一信息位进行编码,得到第一校验位;以及
将所述第一信息位和所述第一校验位编程至所述存储器中的第一存储区,得到与所述原始数据相关的第一码字。
可选地,在所述读取所述第一存储区在所述中间时刻所存储的中间数据方面,所述存储单元501具体用于:
在所述任一中间时刻,获取第一读取电压值;以及
根据所述第一读取电压值对所述第一存储区进行读取操作,得到所述中间数据。
可选地,在所述获取第一读取电压值方面,所述存储单元501具体用于:
在所述任一中间时刻,获取所述原始数据的已存储时长和编写擦除次数,其中,所述已存储时长小于或等于所述存储周期;以及
根据所述已存储时长和所述编写擦除次数查询第一预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述第一读取电压值。
可选地,如图5B所示,图5B为图5A所示的数据处理装置的变型结构,其与图5A相比较,还包括:创建单元404,具体如下:
所述创建单元404,用于预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值;以及
根据所述多组参考存储时长和编写擦除次数和所述多个读取电压值创建所述第一预设电压值列表。
可选地,在所述获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值方面,所述创建单元404具体用于:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
在所述样本数据存储至参考存储时长i时,确定存储所述样本数据的多个存储单元的多个参考阈值电压的电压分布,以及确定所述多个存储单元中每一存储单元所处的第一状态或第二状态;
根据所述电压分布确定处于所述第一状态的多个第一存储单元的多个第一参考阈值电压所处的第一电压范围;以及确定处于所述第二状态的多个第二存储单元的多个第二参考阈值电压所处的第二电压范围;
确定所述第一电压范围和第二电压范围的重叠电压范围;
将所述多个第一参考阈值电压中大于所述重叠电压范围左端点的多个第一参考阈值电压按照从小到大的顺序进行排列,得到第一排序,确定所述第一排序中第n个第一参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值,其中,所述n为预设数值;或者,
将所述多个第二参考阈值电压中小于所述重叠电压范围右端点的多个第二参考阈值电压按照从大到小的顺序进行排列,得到第二排序,确定所述第二排序中第n个第二参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
可选地,在所述将所述中间数据存储到所述存储器中的第二存储区方面,所述存储单元501具体用于:
将所述中间数据作为第二信息位进行编码,得到第二校验位;以及
将所述第二校验位编程至所述内存中的第二存储区,得到与所述中间数据相关的第二码字。
可选地,在所述读取所述第二存储区在所述读取时刻所存储的第二数据方面,所述读取单元502具体用于:
在所述读取时刻获取判决电压值;以及
根据所述判决电压值对所述第二存储区中的第二校验位进行读取操作,得到所述第二数据。
可选地,在所述获取判决电压值方面,所述读取单元502具体用于:
根据所述原始数据的已存储时长和编写擦除次数查询第二预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述判决电压值。
可选地,所述创建单元404还用于:
预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值;
根据所述多组参考存储时长和编写擦除次数和所述多个判决电压值创建所述第二预设电压值列表。
可选地,在所述获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值方面,所述创建单元404具体用于:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
在所述样本数据存储至参考存储时长i时,确定处于所述第一状态的多个第一存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第一分布曲线,确定处于所述第二状态的多个第二存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第二分布曲线;
确定所述第一分布曲线和所述第二分布曲线的交点对应的参考电压阈值为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
可选地,在所述根据所述判决电压值对所述第二存储区进行读取操作,得到所述第二数据方面,所述读取单元502具体用于:
根据所述第二存储区中所述第二校验位的逻辑地址确定所述第二校验位的物理地址;
根据所述判决电压值在所述第二校验位的所述物理地址进行读取,得到所述第二数据。
可选地,在所述读取所述第一存储区在所述读取时刻所存储的第一数据方面,所述读取单元502具体用于:
在所述读取时刻从所述预设电压列表中获取第二读取电压值;以及
根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据。
可选地,所述第二校验位的物理地址还包括所述第一信息位和所述第一校验位的物理地址,在所述根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据方面,所述读取单元502具体用于:
根据所述第二读取电压值读取所述第一存储区中所述第一信息位和所述第一校验位的物理地址,得到所述第一数据和所述校验位数据
可选地,在所述根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据方面,所述纠错单元503具体用于:
对所述第一数据和所述第二数据进行解码,若解码成功,得到所述中间数据;
对所述中间数据和从第一存储区读取的所述校验位数据进行解码,得到修正后的原始数据。
可选地,所述纠错单元503还用于:
若对所述第一数据和所述第二数据解码失败,则返回至所述预设电压列表中获取第二读取电压值的步骤。
可选地,所述存储器可包括闪存。
可以看出,本申请实施例中所描述的数据处理装置,通过获取原始数据并将原始数据存储到存储器中的第一存储区;若原始数据的存储周期超过第一预设时长,则在原始数据存储周期内的任一中间时刻,读取第一存储区在中间时刻所存储的中间数据,并将中间数据存储到所述存储器中的第二存储区,在需要读取所述原始数据的读取时刻,读取第二存储区在读取时刻所存储的第二数据,并读取第一存储区在读取时刻所存储的第一数据,根据第二数据对第一存储区的第一数据进行纠错,得到修正后的原始数据,如此,能够通过提前存储任一中间时刻的中间数据,并在读取时刻根据中间数据进行纠错,在原始数据存储周期较长的情况下,能够保持纠错码模块较强的纠错能力。
可以理解的是,本实施例的数据处理装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (20)

1.一种数据处理方法,其特征在于,所述方法包括:
获取原始数据并将所述原始数据存储到存储器中的第一存储区;
若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式;以及
在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据;以及
根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
2.根据权利要求1所述的方法,其特征在于,所述将所述原始数据存储到存储器中的第一存储区,包括:
将所述原始数据作为第一信息位进行编码,得到第一校验位;以及
将所述第一信息位和所述第一校验位编程至所述存储器中的第一存储区,得到与所述原始数据相关的第一码字。
3.根据权利要求1或2所述的方法,其特征在于,所述读取所述第一存储区在所述中间时刻所存储的中间数据,包括:
在所述任一中间时刻,获取第一读取电压值;以及
根据所述第一读取电压值对所述第一存储区进行读取操作,得到所述中间数据。
4.根据权利要求3所述的方法,其特征在于,所述获取第一读取电压值包括:
在所述任一中间时刻,获取所述原始数据的已存储时长和编写擦除次数,其中,所述已存储时长小于或等于所述存储周期;以及
根据所述已存储时长和所述编写擦除次数查询第一预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述第一读取电压值。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值;
根据所述多组参考存储时长和编写擦除次数和所述多个读取电压值创建所述第一预设电压值列表。
6.根据权利要求5所述的方法,其特征在于,所述获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的读取电压值,得到多个读取电压值包括:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
在所述样本数据存储至参考存储时长i时,确定存储所述样本数据的多个存储单元的多个参考阈值电压的电压分布,以及确定所述多个存储单元中每一存储单元所处的第一状态或第二状态;
根据所述电压分布确定处于所述第一状态的多个第一存储单元的多个第一参考阈值电压所处的第一电压范围;以及确定处于所述第二状态的多个第二存储单元的多个第二参考阈值电压所处的第二电压范围;
确定所述第一电压范围和第二电压范围的重叠电压范围;
将所述多个第一参考阈值电压中大于所述重叠电压范围左端点的多个第一参考阈值电压按照从小到大的顺序进行排列,得到第一排序,确定所述第一排序中第n个第一参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值,其中,所述n为预设数值;或者,
将所述多个第二参考阈值电压中小于所述重叠电压范围右端点的多个第二参考阈值电压按照从大到小的顺序进行排列,得到第二排序,确定所述第二排序中第n个第二参考阈值电压为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
7.根据权利要求2-6任一项所述的方法,其特征在于,所述将所述中间数据存储到所述存储器中的第二存储区,包括:
将所述中间数据作为第二信息位进行编码,得到第二校验位;以及
将所述第二校验位编程至所述内存中的第二存储区,得到与所述中间数据相关的第二码字。
8.根据权利要求7所述的方法,其特征在于,所述读取所述第二存储区在所述读取时刻所存储的第二数据包括:
在所述读取时刻获取判决电压值;以及
根据所述判决电压值对所述第二存储区中的第二校验位进行读取操作,得到所述第二数据。
9.根据权利要求8所述的方法,其特征在于,所述获取判决电压值包括:
根据所述原始数据的已存储时长和编写擦除次数查询第二预设电压值列表,得到与所述已存储时长和所述编写擦除次数对应的所述判决电压值。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
预先针对预设样本数据获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值;
根据所述多组参考存储时长和编写擦除次数和所述多个判决电压值创建所述第二预设电压值列表。
11.根据权利要求10所述的方法,其特征在于,所述获取多组参考存储时长和编写擦除次数中每一组参考存储时长和编写擦除次数对应的判决电压值,得到多个判决电压值包括:
针对所述样本数据在参考存储时长i下,记录编写擦除次数i,所述参考存储时长i为任一参考存储时长,并执行以下操作:
在所述样本数据存储至参考存储时长i时,确定处于所述第一状态的多个第一存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第一分布曲线,确定处于所述第二状态的多个第二存储单元的参考电压阈值处于不同电压数值下的存储单元数量分布,得到第二分布曲线;
确定所述第一分布曲线和所述第二分布曲线的交点对应的参考电压阈值为与所述参考存储时长i和编写擦除次数i对应的读取电压值。
12.根据权利要求8-11任一项所述的方法,其特征在于,所述根据所述判决电压值对所述第二存储区进行读取操作,得到所述第二数据,包括:
根据所述第二存储区中所述第二校验位的逻辑地址确定所述第二校验位的物理地址;
根据所述判决电压值在所述第二校验位的所述物理地址进行读取,得到所述第二数据。
13.根据权利要求11所述的方法,其特征在于,所述读取所述第一存储区在所述读取时刻所存储的第一数据,包括:
在所述读取时刻从所述预设电压列表中获取第二读取电压值;以及
根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据。
14.根据权利要求12或13所述的方法,其特征在于,所述第二校验位的物理地址还包括所述第一信息位和所述第一校验位的物理地址,所述根据所述第二读取电压值读取所述第一存储区中的所述第一信息位和所述第一校验位,得到所述第一数据和校验位数据,包括:
根据所述第二读取电压值读取所述第一存储区中所述第一信息位和所述第一校验位的物理地址,得到所述第一数据和所述校验位数据。
15.根据权利要求13或14所述的方法,其特征在于,所述根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据,包括:
对所述第一数据和所述第二数据进行解码,若解码成功,得到所述中间数据;
对所述中间数据和从第一存储区读取的所述校验位数据进行解码,得到修正后的原始数据。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
若对所述第一数据和所述第二数据解码失败,则返回至所述预设电压列表中获取第二读取电压值的步骤。
17.根据权利要求1-16任一项所述的方法,其特征在于,所述存储器包括闪存。
18.一种数据处理装置,其特征在于,所述装置包括:
存储单元,用于获取原始数据并将所述原始数据存储到存储器中的第一存储区;
所述存储单元,还用于若所述原始数据的存储周期超过第一预设时长,则在所述原始数据存储周期内的任一中间时刻,读取所述第一存储区在所述中间时刻所存储的中间数据,并将所述中间数据存储到所述存储器中的第二存储区,其中,所述中间数据为所述原始数据在所述任一中间时刻在所述第一存储区的表现形式;以及
读取单元,用于在需要读取所述原始数据的读取时刻,读取所述第二存储区在所述读取时刻所存储的第二数据,并读取所述第一存储区在所述读取时刻所存储的第一数据;以及
纠错单元,用于根据所述第二数据对所述第一存储区的第一数据进行纠错,得到修正后的原始数据。
19.一种电子设备,其特征在于,包括处理器、存储器,所述存储器用于存储一个或多个程序,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-17任一项所述的方法中的步骤的指令。
20.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-17任一项所述的方法。
CN201910984580.5A 2019-10-16 2019-10-16 数据处理方法及相关产品 Active CN110908826B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910984580.5A CN110908826B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品
CN202110296212.9A CN112948166B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910984580.5A CN110908826B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202110296212.9A Division CN112948166B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品

Publications (2)

Publication Number Publication Date
CN110908826A true CN110908826A (zh) 2020-03-24
CN110908826B CN110908826B (zh) 2021-04-20

Family

ID=69815225

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910984580.5A Active CN110908826B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品
CN202110296212.9A Active CN112948166B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202110296212.9A Active CN112948166B (zh) 2019-10-16 2019-10-16 数据处理方法及相关产品

Country Status (1)

Country Link
CN (2) CN110908826B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114167258A (zh) * 2021-11-29 2022-03-11 上海御渡半导体科技有限公司 一种ate测试系统的数据存储和读取装置及方法
CN114564477A (zh) * 2022-02-23 2022-05-31 中国农业银行股份有限公司 一种数据存储方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103834A (zh) * 2009-12-22 2011-06-22 上海天马微电子有限公司 驱动电路的数据维持方法和装置
CN106095609A (zh) * 2016-05-31 2016-11-09 广东欧珀移动通信有限公司 步行数据校验、修正方法和系统
CN108073357A (zh) * 2016-11-07 2018-05-25 三星电子株式会社 以raid方式存储数据的存储装置
US10037812B2 (en) * 2007-12-13 2018-07-31 Toshiba Memory Corporation Semiconductor memory device capable of shortening erase time
US20190065363A1 (en) * 2014-10-15 2019-02-28 Samsung Electronics Co., Ltd. Data storage device including nonvolatile memory device and operating method thereof
CN109726143A (zh) * 2017-10-31 2019-05-07 三星电子株式会社 存储器控制器的操作方法和储存设备的操作方法
CN109872752A (zh) * 2017-12-01 2019-06-11 北京兆易创新科技股份有限公司 一种存储器擦除方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101501779B (zh) * 2006-05-12 2013-09-11 苹果公司 具有自适应容量的存储设备
CN104035832B (zh) * 2013-03-04 2018-07-03 联想(北京)有限公司 电子设备和数据校验方法
CN104144431B (zh) * 2013-05-10 2018-01-30 中国电信股份有限公司 一种移动网络状态预测的方法、装置及移动网络
US9396807B2 (en) * 2013-11-11 2016-07-19 Seagate Technology Llc Incremental programming pulse optimization to reduce write errors
CN105022968B (zh) * 2015-07-30 2017-12-19 哈尔滨工程大学 一种内存数据的完整性校验方法
CN105204958B (zh) * 2015-10-19 2018-03-13 哈尔滨工业大学 一种延长NAND Flash数据可靠存储时间的编码方法
CN107643955B (zh) * 2016-07-27 2020-11-06 中电海康集团有限公司 一种基于纠错回写技术提升非易失存储器性能的方法及非易失存储器结构
US10083754B1 (en) * 2017-06-05 2018-09-25 Western Digital Technologies, Inc. Dynamic selection of soft decoding information
CN109215716B (zh) * 2017-07-05 2021-01-19 北京兆易创新科技股份有限公司 提高nand型浮栅存储器可靠性的方法及装置
US10802713B2 (en) * 2017-09-29 2020-10-13 International Business Machines Corporation Requester-associated storage entity data
CN108062259B (zh) * 2017-11-01 2021-03-30 联创汽车电子有限公司 Mcu内部数据存储ecc处理系统及其处理方法
CN108717385B (zh) * 2018-05-23 2020-09-29 中国科学院微电子研究所 一种用于闪存的数据恢复方法及系统
CN109542668B (zh) * 2018-10-29 2021-11-23 百富计算机技术(深圳)有限公司 基于nand flash存储器的校验方法、终端设备及存储介质
KR20210075175A (ko) * 2018-12-07 2021-06-22 양쯔 메모리 테크놀로지스 씨오., 엘티디. 메모리 시스템 프로그래밍 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10037812B2 (en) * 2007-12-13 2018-07-31 Toshiba Memory Corporation Semiconductor memory device capable of shortening erase time
CN102103834A (zh) * 2009-12-22 2011-06-22 上海天马微电子有限公司 驱动电路的数据维持方法和装置
US20190065363A1 (en) * 2014-10-15 2019-02-28 Samsung Electronics Co., Ltd. Data storage device including nonvolatile memory device and operating method thereof
CN106095609A (zh) * 2016-05-31 2016-11-09 广东欧珀移动通信有限公司 步行数据校验、修正方法和系统
CN108073357A (zh) * 2016-11-07 2018-05-25 三星电子株式会社 以raid方式存储数据的存储装置
CN109726143A (zh) * 2017-10-31 2019-05-07 三星电子株式会社 存储器控制器的操作方法和储存设备的操作方法
CN109872752A (zh) * 2017-12-01 2019-06-11 北京兆易创新科技股份有限公司 一种存储器擦除方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114167258A (zh) * 2021-11-29 2022-03-11 上海御渡半导体科技有限公司 一种ate测试系统的数据存储和读取装置及方法
CN114167258B (zh) * 2021-11-29 2024-03-22 上海御渡半导体科技有限公司 一种ate测试系统的数据存储和读取装置及方法
CN114564477A (zh) * 2022-02-23 2022-05-31 中国农业银行股份有限公司 一种数据存储方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN112948166A (zh) 2021-06-11
CN112948166B (zh) 2021-12-21
CN110908826B (zh) 2021-04-20

Similar Documents

Publication Publication Date Title
US8762800B1 (en) Systems and methods for handling immediate data errors in flash memory
US10937490B2 (en) Nonvolatile memory and writing method
US8694715B2 (en) Methods for adaptively programming flash memory devices and flash memory systems incorporating same
US10521292B2 (en) Error correction code unit, self-test method and associated controller applied to flash memory device for generating soft information
US8327246B2 (en) Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
US9019770B2 (en) Data reading method, and control circuit, memory module and memory storage apparatus and memory module using the same
US9891991B2 (en) Decoding method, memory storage device and memory control circuit unit
US20160306693A1 (en) Read voltage level estimating method, memory storage device and memory control circuit unit
US20160350179A1 (en) Decoding method, memory storage device and memory control circuit unit
US10115468B2 (en) Solid state storage device and read control method thereof
WO2009053963A2 (en) Methods for adaptively programming flash memory devices and flash memory systems incorporating same
US10157099B2 (en) Data storage device and data maintenance method thereof
EP2447842A1 (en) Method and system for error correction in a memory array
CN106297883B (zh) 解码方法、存储器存储装置及存储器控制电路单元
CN111192620A (zh) 一种SSD中优化NAND Flash读参考电压的方法
CN110908826B (zh) 数据处理方法及相关产品
CN105304142A (zh) 解码方法、存储器存储装置及存储器控制电路单元
US8830750B1 (en) Data reading method, and control circuit, memory module and memory storage apparatus using the same
US20160077914A1 (en) Solid state storage device and error correction method thereof
CN108241549A (zh) 基于ECC的NAND数据Read Retry纠错方法和NAND控制器
CN105915234B (zh) 避免对涡轮乘积码误校正的方案
US9985647B2 (en) Encoder and decoder design for near-balanced codes
US20200219567A1 (en) Decoding method, memory controlling circuit unit, and memory storage device
CN117411595A (zh) 对数似然比量化方法及设备
US9146805B2 (en) Data protecting method, memory storage device, and memory controller

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