CN105336379A - 一种信息处理方法及固态存储器 - Google Patents

一种信息处理方法及固态存储器 Download PDF

Info

Publication number
CN105336379A
CN105336379A CN201510754053.7A CN201510754053A CN105336379A CN 105336379 A CN105336379 A CN 105336379A CN 201510754053 A CN201510754053 A CN 201510754053A CN 105336379 A CN105336379 A CN 105336379A
Authority
CN
China
Prior art keywords
ssd
related information
status information
obtains
data
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
CN201510754053.7A
Other languages
English (en)
Other versions
CN105336379B (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.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201510754053.7A priority Critical patent/CN105336379B/zh
Publication of CN105336379A publication Critical patent/CN105336379A/zh
Application granted granted Critical
Publication of CN105336379B publication Critical patent/CN105336379B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种信息处理方法,所述方法包括:获取固态存储器(SSD)上待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。本发明同时还公开了一种固态存储器。

Description

一种信息处理方法及固态存储器
技术领域
本发明涉及电子技术,尤其涉及一种信息处理方法及固态存储器。
背景技术
固态硬盘(SSD)是基于闪存单元的数据存储设备,固态硬盘上的每个数据位保存在由浮栅晶体管制成的闪存单元里,SSD整个都是由电子组件制成的,没有像硬盘那样的移动或者机械的部分。
在浮栅晶体管中,使用电压来实现每个位的读写和擦除,写晶体管有两个类型:NOR闪存和Nand闪存。在本发明实施例中仅讨论Nand闪存,Nand闪存模块的一个重要特征是,闪存单元是损耗性的,因此它们有一个寿命。实际上,晶体管是通过保存电子来实现保存比特信息的。在每个P/E循环(Program/Erase,Program在这表示写)中电子可能被晶体管误捕,一段是时间以后,大量电子被捕获会使得闪存单元不可用。
每个单元有一个最大的P/E循环数量,当闪存单元被认为有缺陷后,Nand闪存被损耗而拥有一个有限的寿命,不同类型的Nand闪存有不同的寿命。目前业界中的Nand闪存单元类型有:单层单元(SLC),这种的晶体管只能存储一个比特但寿命很长。多层单元(MLC),这种的晶体管可以存储2个比特,但是会导致增加延迟时间和相对于SLC减少寿命。三层单元(TLC),这种的晶体管可以保存3个比特,但是会有更高的延迟时间和更短的寿命。
由以上可以看出,Nandflash内存是flash内存的一种,随着其存储密度的提升,Nandflash除了寿命会变短、延迟时间会变长外,Nandflash的数据出错的概率也随之增加。为了对flash中数据纠错,就需要对写入flash中的数据进行编码保护,在TLC中往往采用纠错能力较强的LDPC纠错算法。LDPC纠错算法在进行纠错的过程中会用到软信息,传统软信息读取方法使用统一的LLR表格,在flash单元的统计分布模型变化时,不能最佳匹配当前的模型,由此得到的软信息的准确度会有一定程度的下降,随之也会影响最终纠错算法的性能。
发明内容
有鉴于此,本发明实施例为解决现有技术中存在的问题而提供一种信息处理方法及固态存储器,能够随着flash单元的自身的状态信息的变化,而得到最佳的软信息,从而提升固态存储器的纠错能力。
本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供一种信息处理方法,所述方法包括:
获取固态存储器SSD上待纠错数据的元数据;
获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;
利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;
根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
在本发明的一种实施例中,所述关联信息簇采用以下方式得到:在所述SD的状态信息的取值范围内以所述SSD的状态信息为变量,建立至少两个不同的表作为所述关联信息簇。
在本发明的一种实施例中,所述SSD的状态信息至少包括以下信息之一:SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间。
在本发明的一种实施例中,所述方法还包括:
为所述SSD设置不同的参考对象;
对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;
对所述SSD进行采样,得到所述SSD的数据读取的错误率;
将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级。
在本发明的一种实施例中,所述方法还包括:
根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间。
在本发明的一种实施例中,所述方法还包括:
获取SSD的生命周期;
根据SSD的生命周期获取SSD的磨损次数的取值范围和SSD的数据保持时间的取值范围。
第二方面,本发明实施例提供一种固态存储器,所述固态存储器SSD包括:
存储器,用于存储待纠错数据、元数据以及关联信息;
控制器,用于从所述存储器上获取待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
在本发明的一种实施例中,所述关联信息簇采用以下方式得到:在所述SD的状态信息的取值范围内以所述SSD的状态信息为变量,建立至少两个不同的表作为所述关联信息簇。
在本发明的一种实施例中,所述SSD的状态信息至少包括以下信息之一:SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间。
在本发明的一种实施例中,所述控制器,还用于为所述SSD设置不同的参考对象;对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;对所述SSD进行采样,得到所述SSD的数据读取的错误率;将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级。
在本发明的一种实施例中,所述控制器,还用于根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间。
在本发明的一种实施例中,所述控制器,还用于获取SSD的生命周期;根据SSD的生命周期获取SSD的磨损次数的取值范围和SSD的数据保持时间的取值范围。
本发明实施例提供的一种信息处理方法及固态存储器,其中,获取固态存储器(SSD)上待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息;如此,能够随着flash单元的自身的状态信息的变化,而得到最佳的软信息,从而提升固态存储器的纠错能力。
附图说明
图1为本发明实施例一信息处理方法的实现流程示意图;
图2-1为本发明实施例二信息处理方法的实现流程示意图;
图2-2为本发明实施例中对关联信息进行建模过程以及建模后使用关联信息的过程示意图;
图3为本发明实施例三固态存储器的组成结构示意图。
具体实施方式
下面简要的介绍一下LDPC纠错算法,LDPC纠错算法是利用LDPC(低密度奇偶校验)码进行纠错的一种算法,其中LDPC码又称为纠错码,用于检测数据从某个点传输到另个点之间是否出现错误。LDPC纠错算法包括两个阶段,第一个阶段称为LDPC硬数据(硬信息)解码阶段,第二个阶段称为LDPC软数据(软信息)解码阶段,当LDPC硬数据解码阶段失败后,那么LDPC纠错就会进入LDPC软数据解码阶段。
下面先来介绍一下LDPC硬数据解码阶段,因为纠错码包含校正数据,所以当接收端检测到发送端传输过来的数据是错误的时,接收端可以有足够的信息去修复这些错误,而不用通知发送端重新发送数据。闪存随着P/E(编程/擦除次数)的提高错误率会越来越大,当错误率超过主控纠错能力的极限后就会出现数据错误。当前采用TLC的SSD产品,假设从目前的BCH码改成LDPC码后,P/E从1000提高到1500,这样一来就可以实现耐久度50%的提高,相对的由于纠错能力更强,掉电后数据保存期也延长了。
SSD采用LDPC码后的时间延迟主要有如下3个地方产生:1)LDPC编码过程;2)通过LDPC解码首次就读出闪存上数据的过程;3)通过LDPC解码多次后读出闪存上数据的过程。一般支持LDPC码的主控都会含有硬件加速模块,外加高效利用回写缓存即可有效的把上面第1)点的延迟给隐藏起来。其实延迟的问题主要是来自第2)点和第3)点。采用LDPC码后SSD中随机读取延迟主要由3个因素组成:闪存传输时间(t_trans)、闪存读取时间(t_read)和LDPC解码时间(t_ldpc),其中闪存传输时间是固定不变的,只有闪存读取时间和LDPC解码时间是会出现变化的。
闪存读取时间取决于Block中Page的索引,有些Page读取快,有些Page则慢,换句话说,闪存读取时间不受纠错码类型的影响,也就是说用LDPC纠错码或是BCH纠错码并没区别。LDPC解码时间取决于闪存的错误数和LDPC码参数设置造成的迭代次数多少,一般会给迭代次数设置一个上限,就可以在超过这个上限后进入下一步操作,防止无限循环下去;闪存错误数是随着P/E提高而增加,而LDPC码参数也会影响迭代次数,进而影响性能。
LDPC硬数据解码,如果纠错依然失败的话,那么就会进入第二阶段—LDPC软数据解码阶段。在读取闪存时,结果只有1或者0,由于此时并不知道这些0和1中哪个是有效数据,哪些是可疑数据(可能错误的),因此对这些数据进行初次LDPC解码就叫做硬数据解码。如果硬数据LDPC解码失败,那么对这块SSD来说,一般有3个选择:第一种选择是直接返回“不可恢复的读错误”,这当然不是用户希望看到的;那么第二种选择就是,如果SSD内部有类似RAID的保护模式,可以利用该功能XOR并恢复出用户数据;而第三种选择是依靠搜集软数据,再尝试用这些软数据对数据进行软数据LDPC解码(一般来说都采用第三种),而这类LDPC软数据解码机制在之前的较为低等级的BCH码上是不存在的。
LDPC软数据解码阶段主要分成三部分:1)重读策略;2)软数据的构建;3)LDPC软数据解码。
重读策略不是去读取数据本身(之前硬数据解码已经不能纠错,就不用浪费力气再去读硬数据),而是去读取这个数据的元数据,把这些元数据作为软数据构建的基础。如何用最少的读取次数搜集出最有帮助的元数据成为了关键,因为每读一次就增加了一次延迟。重读策略的每次读取都会返回与等着被纠错的数据相关的元数据,意味着每次读取都提供了更多的物理信息可以参考,然后需要做的是把这些0或者1映射成LDPC解码中的软数据,这个映射需要对闪存本身和所采用的LDPC代码具有相当的认知(该过程中称为软数据的构建)。软数据解码中最后一个步骤就是将代码中每一位的对数似然比(Log-LikelihoodRatio,LLR)传入LDPC解码器逻辑中,期望着这次实现的解码比原有的硬数据解码更为有效,让SSD能够返回正确的用户数据;然后马上将该数据移动至SSD内较为安全的Page里,避免下次数据请求遇到相同的问题。
随着flash存储颗粒的制程演进,较小尺寸的flash数据存储单元,更易受到磨损的影响和干扰。为了保证数据的正确性,需要很强的数据纠错能力。为此,LDPC算法利用软信息来增强纠错能力。基于软信息的纠错算法的性能除了与算法的设计本身相关,同时也会受到获取到的软信息质量的很大影响。特别是flash采用数字方式(0或1)存储,要获取软信息只能通过多次读取同一个单元,并结合该单元的统计分布模型得到可能0/1分布的信息,该0/1分布的信息被LDPC纠错算法使用时统一为对数似然比(LLR)。影响软信息准确性的关键是使用符合当前flash单元统计分布模型的LLR表格,将同一个单元多次读取的软信息转换成对应的LLR取值。而flash单元的统计分布模型本身并不是一成不变的,而是随flash在使用过程中的不同条件动态演进。传统软信息读取方法使用统一的LLR表格,在flash单元的统计分布模型变化时,不能最佳匹配当前的模型,由此得到的软信息的准确度会有一定程度的下降,随之也会影响最终纠错算法的性能。
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
实施例一
本发明实施例提供一种信息处理方法,该信息处理方法应用于固态存储器,该信息处理方法所实现的功能可以通过固态存储器中的控制器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该固态存储器至少包括控制器器和存储介质。
图1为本发明实施例一信息处理方法的实现流程示意图,如图1所示,该信息处理方法包括:
步骤S101,获取SSD上待纠错数据的元数据;
这里,如前所述,SSD在硬数据解码失败后会进入软数据(软信息)解码阶段,本发明实施例所提供的方法可以应用于SSD的软数据解码阶段,当LDPC硬数据解码阶段失败后,SSD的控制器获取SSD上待纠错数据的元数据,一般来说,待纠错数据的元数据存储于Nandflash上,Nandflash以页为单元进行读写,并以块为单位进行擦除。
步骤S102,获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;
这里,在具体实施的过程中,所述SSD的状态信息可以为错误率,当然还可以为其它的影响错误率的参数,例如在具体实施的过程中,所述SSD的状态信息可以包括以下信息至少之一:SSD的工艺等级、SSD的磨损次数(即P/E循环次数)和SSD的数据保持时间。
步骤S103,利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;
这里,所述关联信息可以为在具体实施的过程中可以为映射关系表中映射关系,类似地,关联信息簇可以为一张映射关系表或一族映射关系表,当采用对数似然比方法而得到软信息时,所述关联信息具体的可以为LLR表。
这里,所述关联信息簇采用以下方式得到:在所述SD的状态信息的取值范围内以所述SSD的状态信息为变量,建立至少两个不同的关联信息作为所述关联信息簇。当所述关联信息为LLR表,所述关联信息簇采用以下方式得到:在所述SD的状态参数的取值范围内以所述SSD的状态参数为变量,建立不同的LLR表作为所述关联信息簇。
步骤S104,根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
这里,所述关联信息用于表征所述待纠错数据的元数据与所述待纠错数据的软信息之间的映射关系。
现有技术中,在硬数据解码失败后,SSD的控制器获取软信息,而软信息的准确性的关键是使用符合当前Nandflash单元的统计分布模型的关联信息(如LLR表),将同一个单元(对应为元数据)多次读取的结果转换成对应的LLR取值,即得到该单元的软信息。而Nandflash单元的统计分布模型本身并不是一成不变的,而是随Nandflash在使用过程中的不同条件动态演进。传统软信息读取方法使用统一的LLR表,在Nandflash单元的统计分布模型变化时,不能最佳匹配当前的模型,由此得到的软信息的准确度会有一定程度的下降,随之也会影响最终纠错算法的性能。本发明实施例中,生成的关联信息簇能够随着Nandflash单元的统计模型的变化而变化,因此,当SSD的控制器能够获取到当前的SSD的状态信息时,就能够根据当前的SSD的状态信息获取最佳的匹配当前的SSD状态信息的关联信息,然后再根据元数据查找关联信息得到较为准确的软信息。
实施例二
本发明实施例提供一种信息处理方法,该信息处理方法应用于固态存储器,该信息处理方法所实现的功能可以通过固态存储器中的控制器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该固态存储器至少包括控制器和存储介质。本发明实施例中,以所述SSD的状态信息包括SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间为例进行说明,图2-1为本发明实施例二信息处理方法的实现流程示意图,如图2-1所示,该信息处理方法包括:
步骤S201,为所述SSD设置不同的参考对象;
步骤S202,对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;
步骤S203,对所述SSD进行采样,得到所述SSD的数据读取的错误率;
步骤S204,将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级;
步骤S205,根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间;
步骤S206,在工艺等级、磨损次数和数据保持时间的取值范围内以所述工艺等级、磨损次数和数据保持时间为变量,建立至少两个不同的关联信息表作为所述关联信息簇;
步骤S101,获取SSD上待纠错数据的元数据;
这里,如前所述,SSD在硬数据解码失败后会进入软数据(软信息)解码阶段,本发明实施例所提供的方法可以应用于SSD的软数据解码阶段,当LDPC硬数据解码阶段失败后,SSD的控制器获取SSD上待纠错数据的元数据,一般来说,待纠错数据的元数据存储于Nandflash上,Nandflash以页为单元进行读写,并以块为单位进行擦除。
步骤S102,获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;
这里,在具体实施的过程中,所述SSD的状态信息可以为错误率,当然还可以为其它的影响错误率的参数,例如在具体实施的过程中,所述SSD的状态信息可以包括以下信息至少之一:SSD的工艺等级、SSD的磨损次数(P/E循环次数)和SSD的数据保持时间。
步骤S103,利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;
这里,所述关联信息可以为在具体实施的过程中可以为映射关系表中映射关系,类似地,关联信息簇可以为一张映射关系表或一族映射关系表,当采用对数似然比方法而得到软信息时,所述关联信息具体的可以为LLR表。
步骤S104,根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
这里,所述关联信息用于表征所述待纠错数据的元数据与所述待纠错数据的软信息之间的映射关系。
这里,本发明实施例二中的步骤S101至步骤S104分别对应于实施例一中的步骤S101至步骤S104,因此,本领域的技术人员可以参阅实施例一而理解本发明实施例中的步骤S101至步骤S104,为节约篇幅,这里不再赘述。
本发明实施例再提供一种确定磨损次数(P/E循环次数)和数据保持时间的取值范围的方法,在该方法中,可以预先获取SSD的生命周期;然后根据SSD的生命周期获取SSD的磨损次数的取值范围和SSD的数据保持时间的取值范围。在具体实施的过程中,SSD的生命周期的获取方式有很多,例如,可以采用默认设置的方式,还可以为用户或SSD的厂方设置,然后SSD的软件获取到用户或SSD的厂方设置的生命周期,还可以采用如下的方式:SSD的控制器获取SSD的属性信息,所述属性信息中包括SSD的型号或者材料等信息,然后根据所述SSD的属性信息从本地或非本地(如服务器或网络)上获取对应的生命周期。
现有技术中,传统软信息读取方法使用统一的LLR表,在Nandflash单元的统计分布模型变化时,不能最佳匹配当前的模型,由此得到的软信息的准确度会有一定程度的下降,随之也会影响最终纠错算法的性能。为了解决这一问题,在本发明实施例中,通过对Nandflash数据存储单元的全生命周期进行建模,其中建模的参数包括SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间,利用当前可获得的Nandflash参数判断Nandflash的统计分布模型变化;基于上一步分布模型的变化结果,建立得到关联信息簇;在具体实施的过程中,所述关联信息簇被预先存储在SSD的Nandflash。当SSD需要获取软信息的时候,根据当前SSD的工艺等级、磨损次数和数据保持时间获取对应的关联信息,然后再根据元数据查询关联信息得到软信息,由此可见,本发明实施中,所选用的关联信息是动态地从关联信息簇中选取一个最佳匹配的关联信息来生成软性心,并完成最终的解码。
下面再来介绍一下在Nandflash存储单元的全生命周期数据模型进行建模。图2-2为本发明实施例中对关联信息进行建模过程以及建模后使用关联信息的过程示意图,如图2-2所示,建模之前,先介绍一下所涉及的三个参数:工艺等级、磨损次数和数据保持时间。一般来说,NandFlash存储单元的数据分布(0和1)主要受到三个因素的影响,第一个是NandFlash存储单元制造的个体差异(体现为工艺等级),第二个是NandFlash存储单元本身的磨损程度或者磨损次数(即P/E循环次数),第三个是NandFlash存储单元内数据保持的时间。这三个参数互有交叉,最终影响体现在Nandflash数据读取的错误率上。因此在建模时,针对Nandflash全生命周期设计的数据磨损和数据保持在规范约定内的最大可能范围进行采样。在保持一定采样数据量的情况下,同时选择优等、中等、差等三种受制造工艺影响的数据单元特性作为代表。对以上三个维度进行交叉全采样,并获取每一个采样点的统计分布模型,及对应模型最优的关联信息簇(LLR软信息生成表)。在Nandflash使用过程中,根据数据单元错误的情况(即错误率)对数据单元的特性进行分类,得到数据单元本身属于优等、中等还是差等,并做好标记(即标记Nandflash的工艺等级)。在需要软信息解码时,首先读取磨损次数,再利用之前对数据单元特性的分类结果(即工艺等级)和数据单元的出错率,预估数据保持的时间(该数据保持的时间无法直接获得)。这样即可获取工艺等级、磨损次数和数据保持时间,可根据工艺等级、磨损次数和数据保持时间从预先存储的LLR表中选择一个最适合的LLR表,然后利用选择的LLR表进行解码,得到软信息。
实施例三
基于前述的实施例,本发明实施例再提供一种固态存储器,图3为本发明实施例三固态存储器的组成结构示意图,如图3所示,所述固态存储器300包括:
存储器301,用于存储待纠错数据、元数据以及关联信息;
控制器302,用于从所述存储器上获取待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
本发明实施例中,所述存储器可以为Nandflash。
本发明实施例中,所述关联信息簇采用以下方式得到:在所述SD的状态信息的取值范围内以所述SSD的状态信息为变量,建立至少两个不同的表作为所述关联信息簇。
本发明实施例中,所述SSD的状态信息至少包括以下信息之一:SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间。
实施例四
基于前述的实施例,本发明实施例再提供一种固态存储器,所述固态存储器300包括:
存储器301,用于存储待纠错数据、元数据以及关联信息;
控制器302,用于:
为所述SSD设置不同的参考对象;对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;对所述SSD进行采样,得到所述SSD的数据读取的错误率;将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级;
根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间;
在工艺等级、磨损次数和数据保持时间的取值范围内以所述工艺等级、磨损次数和数据保持时间为变量,建立至少两个不同的关联信息表作为所述关联信息簇;
从所述存储器上获取待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
本发明实施例中,所述存储器可以为Nandflash。
实施例五
基于前述的实施例,本发明实施例再提供一种固态存储器,所述固态存储器300包括:
存储器301,用于存储待纠错数据、元数据以及关联信息;
控制器302,用于:
获取SSD的生命周期;根据SSD的生命周期获取SSD的磨损次数的取值范围和SSD的数据保持时间的取值范围;
为所述SSD设置不同的参考对象;对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;对所述SSD进行采样,得到所述SSD的数据读取的错误率;将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级。
根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间;
在工艺等级、磨损次数和数据保持时间的取值范围内以所述工艺等级、磨损次数和数据保持时间为变量,建立至少两个不同的关联信息表作为所述关联信息簇;
从所述存储器上获取待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
这里需要指出的是:以上固态存储器实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本发明固态存储器实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解,为节约篇幅,因此不再赘述。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ReadOnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种信息处理方法,其特征在于,所述方法包括:
获取固态存储器SSD上待纠错数据的元数据;
获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;
利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;
根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
2.根据权利要求1所述的方法,其特征在于,所述关联信息簇采用以下方式得到:
在所述SD的状态信息的取值范围内以所述SSD的状态信息为变量,建立至少两个不同的表作为所述关联信息簇。
3.根据权利要求1或2所述的方法,其特征在于,所述SSD的状态信息至少包括以下信息之一:
SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
为所述SSD设置不同的参考对象;
对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;
对所述SSD进行采样,得到所述SSD的数据读取的错误率;
将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取SSD的生命周期;
根据SSD的生命周期获取SSD的磨损次数的取值范围和SSD的数据保持时间的取值范围。
7.一种固态存储器,其特征在于,所述固态存储器SSD包括:
存储器,用于存储待纠错数据、元数据以及关联信息;
控制器,用于从所述存储器上获取待纠错数据的元数据;获取SSD的状态信息,所述SSD的状态信息为与数据读取的错误率的参数;利用所述SSD的状态信息从关联信息簇中获取对应的关联信息,所述关联信息簇为基于至少两个不同的SSD的状态信息而得到的关联信息的集合;根据所述元数据查询所述关联信息,得到所述待纠错数据的软信息。
8.根据权利要求7所述的固态存储器,其特征在于,所述关联信息簇采用以下方式得到:
在所述SD的状态信息的取值范围内以所述SSD的状态信息为变量,建立至少两个不同的表作为所述关联信息簇。
9.根据权利要求7或8所述的固态存储器,其特征在于,所述SSD的状态信息至少包括以下信息之一:SSD的工艺等级、SSD的磨损次数和SSD的数据保持时间。
10.根据权利要求9所述的固态存储器,其特征在于,所述控制器,还用于为所述SSD设置不同的参考对象;对所述SSD的参考对象进行采样,得到所述参考对象的数据读取的错误率;对所述SSD进行采样,得到所述SSD的数据读取的错误率;将所述参考对象的错误率和所述SSD的数据读取的错误率进行比较,得到所述SSD的工艺等级。
11.根据权利要求10所述的固态存储器,其特征在于,所述控制器,还用于根据所述SSD的磨损次数、所述SSD的工艺等级和所述SSD的数据读取的错误率,确定所述SSD的数据保持时间。
12.根据权利要求9所述的固态存储器,其特征在于,所述控制器,还用于获取SSD的生命周期;根据SSD的生命周期获取SSD的磨损次数的取值范围和SSD的数据保持时间的取值范围。
CN201510754053.7A 2015-11-09 2015-11-09 一种信息处理方法及固态存储器 Active CN105336379B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510754053.7A CN105336379B (zh) 2015-11-09 2015-11-09 一种信息处理方法及固态存储器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510754053.7A CN105336379B (zh) 2015-11-09 2015-11-09 一种信息处理方法及固态存储器

Publications (2)

Publication Number Publication Date
CN105336379A true CN105336379A (zh) 2016-02-17
CN105336379B CN105336379B (zh) 2019-03-01

Family

ID=55286846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510754053.7A Active CN105336379B (zh) 2015-11-09 2015-11-09 一种信息处理方法及固态存储器

Country Status (1)

Country Link
CN (1) CN105336379B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201342A (zh) * 2016-06-30 2016-12-07 联想(北京)有限公司 一种数据处理方法及电子设备
CN108762977A (zh) * 2018-05-30 2018-11-06 郑州云海信息技术有限公司 一种固态盘中纠错算法的优化方法及系统
WO2021121132A1 (zh) * 2019-12-19 2021-06-24 江苏芯盛智能科技有限公司 固态硬盘数据重读方法、装置和固态硬盘

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102394113A (zh) * 2011-11-14 2012-03-28 清华大学 一种应用于快闪存储器中的动态ldpc纠错码方法
CN104052498A (zh) * 2013-03-15 2014-09-17 三星电子株式会社 最优化对数似然比的方法以及纠错方法和设备
US20140286102A1 (en) * 2013-03-25 2014-09-25 Lsi Corporation Method of Optimizing Solid State Drive Soft Retry Voltages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102394113A (zh) * 2011-11-14 2012-03-28 清华大学 一种应用于快闪存储器中的动态ldpc纠错码方法
CN104052498A (zh) * 2013-03-15 2014-09-17 三星电子株式会社 最优化对数似然比的方法以及纠错方法和设备
US20140286102A1 (en) * 2013-03-25 2014-09-25 Lsi Corporation Method of Optimizing Solid State Drive Soft Retry Voltages

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201342A (zh) * 2016-06-30 2016-12-07 联想(北京)有限公司 一种数据处理方法及电子设备
CN108762977A (zh) * 2018-05-30 2018-11-06 郑州云海信息技术有限公司 一种固态盘中纠错算法的优化方法及系统
WO2021121132A1 (zh) * 2019-12-19 2021-06-24 江苏芯盛智能科技有限公司 固态硬盘数据重读方法、装置和固态硬盘

Also Published As

Publication number Publication date
CN105336379B (zh) 2019-03-01

Similar Documents

Publication Publication Date Title
US10567001B2 (en) Method and data storage device to estimate a number of errors using convolutional low-density parity-check coding
CN103544073B (zh) 读取闪存中区块的数据的方法及相关的记忆装置
US9292432B2 (en) Garbage collection method for flash memory
US9146854B2 (en) Restoring storage devices based on flash memories and related circuit, system, and method
CN106415502B (zh) 数据存储的方法和装置
US10389389B2 (en) Method and data storage device using convolutional low-density parity-check coding with a long page write and a short page read granularity
CN104272393A (zh) 为存储器的块调整编程步长的系统和方法
CN102969028A (zh) 一种ecc动态调整方法、系统及闪存
US9424178B2 (en) Optimized flash memory without dedicated parity area and with reduced array size
WO2009078006A2 (en) Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
CN101923448A (zh) 一种nand闪存的转换层读写方法
CN101573694A (zh) 用于小数据结构的ecc保护的方法、系统和装置
US9170937B2 (en) Data storage device and operating method for flash memory
CN105808371A (zh) 数据备份与恢复方法、控制芯片及存储装置
CN109426441B (zh) 数据储存装置以及其操作方法
CN105336379A (zh) 一种信息处理方法及固态存储器
Mirhoseini et al. Coding-based energy minimization for phase change memory
CN105005453A (zh) 星载nand flash固存坏区管理系统
CN103713857B (zh) 存储数据的方法及存储装置
US8966344B2 (en) Data protecting method, memory controller and memory storage device
US9983805B1 (en) Memory management method, memory control circuit unit and memory storage apparatus
US10776227B2 (en) Memory management system and method thereof
CN107153510A (zh) 存储器控制器及用于管理存储器的方法
CN105468471A (zh) 固态存储装置及其错误更正方法
CN109766214A (zh) 一种最优h矩阵生成方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20170206

Address after: The 100176 branch of the Beijing economic and Technological Development Zone fourteen Street No. 99 building 33 building D No. 2226

Applicant after: Beijing legend core technology Co., Ltd.

Address before: 100085 Haidian District West Road, Beijing, No. 6

Applicant before: Lenovo (Beijing) Co., Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20190808

Address after: 518067 Dongjiaotou Workshop D24/F-02, Houhai Avenue, Shekou Street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Yi Lian Information System Co., Ltd.

Address before: The 100176 branch of the Beijing economic and Technological Development Zone fourteen Street No. 99 building 33 building D No. 2226

Patentee before: Beijing legend core technology Co., Ltd.

TR01 Transfer of patent right