CN105895156B - 一种信息处理方法及电子设备 - Google Patents

一种信息处理方法及电子设备 Download PDF

Info

Publication number
CN105895156B
CN105895156B CN201610194442.3A CN201610194442A CN105895156B CN 105895156 B CN105895156 B CN 105895156B CN 201610194442 A CN201610194442 A CN 201610194442A CN 105895156 B CN105895156 B CN 105895156B
Authority
CN
China
Prior art keywords
voltage
code
bit
jth
flag information
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
Application number
CN201610194442.3A
Other languages
English (en)
Other versions
CN105895156A (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
Shenzhen Union Memory Information System 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 Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN201610194442.3A priority Critical patent/CN105895156B/zh
Publication of CN105895156A publication Critical patent/CN105895156A/zh
Application granted granted Critical
Publication of CN105895156B publication Critical patent/CN105895156B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/10Programming or data input circuits
    • 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/26Sensing or reading circuits; Data output circuits
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS

Landscapes

  • Read Only Memory (AREA)

Abstract

本发明公开了一种信息处理方法,所述方法包括:在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息;其中,所述标志信息用于在依次施加电压的过程中电压值是否发生过变化,在所述存储单元中设置有n个电压阈值;存储所述个比特记录的电压编码和所述标志信息。本发明同时还公开了一种电子设备。

Description

一种信息处理方法及电子设备
技术领域
本发明涉及电子技术,尤其涉及一种信息处理方法及电子设备。
背景技术
固态硬盘(SSD,又称固态存储器)是基于闪存单元的数据存储设备,固态硬盘上的每个数据位保存在由浮栅晶体管((Floating Gate MOSFET)制成的闪存单元里,SSD整个都是由电子组件制成的,没有像硬盘那样的移动或者机械的部分。在浮栅晶体管中,使用电压来实现每个位的读写和擦除,写晶体管有两个类型:NOR闪存和非易失性闪存(Nand)。在本发明实施例中仅讨论Nand闪存,Nand flash内部采用非线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。Nand flash存储器具有容量较大,改写速度快等优点,适用于大量数据的存储,因而在业界得到了越来越广泛的应用,如嵌入式产品中包括数码相机、U盘等。Nand闪存模块的一个重要特征是,闪存单元是损耗性的,因此它们有一个寿命。实际上,晶体管是通过保存电子来实现保存比特信息的。在每个P/E循环(Program/Erase,Program在这表示写)中电子可能被晶体管误捕,一段是时间以后,大量电子被捕获会使得闪存单元不可用。
每个单元有一个最大的P/E循环数量,当闪存单元被认为有缺陷后,Nand闪存被损耗而拥有一个有限的寿命,不同类型的Nand闪存有不同的寿命。Nand Flash内部存储是MOSFET,里面有个悬浮门(Floating Gate),是真正存储数据的单元,存储数据的单元叫做一个cell。数据在Flash内存单元中是以电荷形式存储的。存储电荷的多少,取决于悬浮门所被施加的电压,而数据的表示,以所存储的电荷的电压是否超过一个特定的阈值Vth来表示。目前业界中的Nand闪存单元类型有:单层单元(SLC),这种的晶体管只能存储一个比特但寿命很长。多层单元(MLC),这种的晶体管可以存储2个比特,但是会导致增加延迟时间和相对于SLC减少寿命。三层单元(TLC),这种的晶体管可以保存3个比特,但是会有更高的延迟时间和更短的寿命。
SLC每个cell中只存储一位数据,表示成1或0,与SLC相对应的MLC是每个cell可以存储多个位,比如2位、3位等,其实现机制就是通过控制内部电荷的多少分成多个阈值,通过控制里面的电荷多少,而达到所需要的存储成不同的数据。比如,对一个cell的电压设置3个阈值,分别是1V、2V、3V(实际没有这样的电压),这三个电压将一个cell的电压范围分成了4个区间,那么这四个区间分别表示2位数据00,01,10,11,这样就实现了一个cell存储多个比特。但是cell存储的电荷会由于磨损程度增加或者存储时间变长而发生变化,而且不同的cell存储电荷能力不同,所以cell的电压就会有一个分布曲线,如下图1-1所示。从图1-1中可以看出,虽然MLC一个cell可存储多个比特,降低了存储的成本,但是由于存储密度的增高也使得Nand flash出错率增加。为了对Nand flash中的比特进行纠错就需要增加信道编码,从而使flash中数据发生错误时能够及时纠正过来。对于高密度的flash需要采用LDPC这种纠错能较强的码字,而且当flash使用到后期,可能需要软信息作为译码器的输入。从flash中得到软信息的方法可能有多种,其中最为常见的就是通过多次调整cell的阈值电压vt h,看输出比特的变化从而得到一个cell所处的电压范围。当电压调整次数增加时,软信息的存储量也会跟着变大,目前软信息的存储量大概在n*m,其中,n为调整vth次数,m为每次解码的数据长度,可见现有技术中软信息在硬件实现中大大增加了存储的成本。
发明内容
有鉴于此,本发明实施例为解决现有技术中存在的问题而提供一种信息处理方法及电子设备,能够减小存储空间。
本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例中提供一种信息处理方法,所述方法包括:
在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息;
其中,所述标志信息用于在对所述存储单元依次施加电压的过程中所读出的电压值是否发生过反转,在所述存储单元中设置有n个电压阈值;
存储所述个比特记录的电压编码和所述标志信息。
第二方面,本发明实施例中提供一种电子设备,所述电子设备包括固态存储器SSD,所述固态存储器包括Nand和SSD控制器,其中
所述SSD控制器,用于:
在按照预先设置的电压阈值顺序对所述Nand的存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,其中,所述标志信息用于在对所述存储单元依次施加电压的过程中所读出的电压值是否发生过反转,在所述存储单元中设置有n个电压阈值;
存储所述个比特记录的电压编码和所述标志信息。
本发明实施例提供一种信息处理方法及电子设备,其中,在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息;其中,所述标志信息用于在依次对所述存储单元施加电压的过程中所读出的电压值是否发生过反转,在所述存储单元中设置有n个电压阈值;存储所述个比特记录的电压编码和所述标志信息;如此,能够减小存储空间。
附图说明
图1-1为相关技术中存储单元的电压分布曲线示意图;
图1-2为相关技术中存储单元中的电压概率分布示意图;
图1-3为本发明实施例一信息处理方法的实现流程示意图;
图2为本发明实施例二信息处理方法的实现流程示意图;
图3为本发明实施例中电压阈值与电压编码之间的关系示意图;
图4为本发明实施例四信息处理装置的组成结构示意图;
图5为本发明实施例五电子设备的组成结构示意图。
具体实施方式
下面简要的介绍一下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里,避免下次数据请求遇到相同的问题。
假设cell中的电压概率分布如图1-2所示,通过调5次电压值将整个电压区间分成了6个区间,每个区间都对应一个软信息,6个区间可用3位的软信息表示。Vth从左到右分别用a、b、c、d和e表示。假设并且其中一个cell的电压在a和b区间的某一点上,当vth设置的顺序是c、b、a、d、e时,该cell读出来的值分别是00100。传统的做法是把这5个值都存起来,然后通过查表的方法得到读出来的这5个值对应的软信息是多少。因为根据Nand flash厂商的要求不同,调整vth的顺序也不尽行同,所以如果电压调整的顺序发生变化,查找表也会发生变化,这需要软件根据实际电压设置的顺序。如果是按页读,那么调5次电压,存储量达到5页大小。当电压调整次数增加时,存储量也会跟着变大,这在硬件实现中大大增加了存储的成本。
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
实施例一
为了解决现有技术中存在的技术问题,本发明实施例提供一种信息处理方法,该方法应用于电子设备,该方法所实现的功能可以通过电子设备中的SSD控制器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该电子设备至少包括SSD控制器和存储介质。
图1-3为本发明实施例一信息处理方法的实现流程示意图,如图1-3所示,该方法包括:
步骤S101,在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息;
这里,所述标志信息用于在对所述存储单元依次施加电压的过程中所读出的电压值是否发生过反转,在所述存储单元中设置有n个电压阈值;
这里,表示向上取整,
这里,如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码;如果左侧电压表示1而右侧电压表示0,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码。
这里,所述电子设备在具体实施例的过程中可以为各种类型的具有信息处理能力的设备,例如所述电子设备可以包括手机、平板电脑、台式机、个人数字助理、导航仪、数字电话、视频电话、电视机等。
步骤S102,存储所述个比特记录的电压编码和所述标志信息;
步骤S103,根据所述个比特记录的电压编码和所述标志信息查找关联信息,得到对应的软信息。
本发明实施例中,所述方法还包括:按照从大到小或者从小到大的顺序标识所述电压阈值,得到每一电压阈值对应的电压编码。
本发明实施例中,所述当左侧电压表示0而右侧电压表示1,所述采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,包括:
按照预先设置的电压阈值顺序对所述存储单元施加第j电压,得到与所述第j电压对应的第j电压编码,所述j的取值范围从1到n;
采用个比特记录所述第一电压编码,其中n为所施加的电压的次数;
按照预先设置的电压阈值顺序对存储单元施加第(j+1)电压,得到与第j电压对应的第(j+1)电压编码;
如果所述第(j+1)电压大于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码,采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同;
如果所述第(j+1)电压小于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码,采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同。
实施例二
为了解决现有技术中存在的技术问题,本发明实施例提供一种信息处理方法,该方法应用于电子设备,该方法所实现的功能可以通过电子设备中的SSD控制器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该电子设备至少包括SSD控制器和存储介质。
图2为本发明实施例二信息处理方法的实现流程示意图,如图2所示,该方法包括:
步骤S201,将施加电压阈值的顺序而依次得到的电压值确定为电压值序列;
步骤S202,获取所述电压值序列对应的软信息;
步骤S203,将电压值序列对应的所述个比特记录的电压编码和所述标志信息与所述软信息形成映射关系,得到所述关联信息。
步骤S101,在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,其中,所述标志信息用于在对所述存储单元依次施加电压的过程中所读出的电压值是否发生过反转,在所述存储单元中设置有n个电压阈值;
这里,表示向上取整,
这里,如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值(比特值)为1时对应的最大的电压阈值对应的电压编码;如果左侧电压表示1而右侧电压表示0,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码。
步骤S102,存储所述个比特记录的电压编码和所述标志信息;
步骤S103,根据所述个比特记录的电压编码和所述标志信息查找关联信息,得到对应的软信息。
实施例三
假设cell中电压分布如图所示,图3的A图中左侧电压表示0而右侧电压表示1,图3的B图相反。电压阈值(vth)设置的顺序为c、b、a、d和e。图下面的数据表示在每个vth下处在不同的电压范围内的存储单元(cel)l读出来的值的变化。例如在图3的A图中,假设某个cell的待测试电压(vx,实际的电压值)为大于d而小于e时,电压区间在a的左侧、ab之间、bc之间、cd之间,de之间以及e的右侧读出来的值分别为0、0、0、0、1、1。除了最左侧和左右侧两个电压区间,在其他每个区间上最左侧电压为1的位置都不相同,所以通过记录最左侧电压的位置即可确定电压的范围,进而得到软信息。
本发明实施例中技术方案的具体实现过程如下:
1)对需要vth值从左到右依次编号(即电压编码,从左到右实际上就是按照从小到大的顺序,因为在A图中,左侧为0右侧为1),便于硬件通过编码大小判断最左侧的vth。每次调一次vth,软件通知硬件当前vth的编号。根据最左侧出现1的位置不同,每个vth都对应一个软信息。如上面图3的A图所示,电压a、b、c、d对应的软信息可分别设为010、001、101、110。
2)硬件部分每次接收到从flash中读出的数据(即电压编码对应的二进制数值)看它是否为1,如果是1,就那么就判断当前vth与之前存储的vth相比是不是在最左侧(即判断当前电压阈值大还是之前的电压阈值大),如果是1的话,则存储当前的vth值,如果不是1的话(即是0的话),则原来存储的最左侧vth值不变。
这里,以图3中的A图为例进行说明,假设待测试某个cell的待测试电压(vx,即实际的电压值)为大于d而小于e,而且假设电压阈值(vth)设置的顺序为c、b、a、d和e,它们对应的电压编码分别为1、2、3、4和5(当然也可以是0、1、2、3和4),且假设如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码;再假设标志信息为1时,表示对所述存储单元依次施加电压的过程中所读出的电压值发生过反转,标志信息为0时,表示对所述存储单元依次施加电压的过程中所读出的电压值未发生过反转。当然在其他的实施例中,也可以采用标识信息为0时表示电压值发生过反转。下面来说明本实施例中确定电压编码和标志信息的过程:
第一次施加电压c,对该cell施加电压c时读出来的数值为1(因为施加的电压为c,而实际的电压大于d自然大于c,所以读出来的数值为1),采用(因为有5个电压阈值,因此要调整5次电压,所以采用3个比特来表示1)个比特表示电压阈值c的电压编码1,即001,然后将001存储在起来;
第二次施加电压b,对该cell施加电压b时读出来的数值也为1,由于施加电压b时也读出来的数值也是1,因此需要比较电压阈值b大还是电压阈值c,显然电压阈值c大,因此存储的电压阈值c的电压编码(001)不需要改变;
第三次施加电压a,对该cell施加电压a时读出来的数值也为1,由于施加电压a时也读出来的数值也是1,因此需要比较电压阈值a大还是电压阈值c,显然电压阈值c大,因此存储的电压阈值c的电压编码(001)不需要改变;
第四次施加电压d,对该cell施加电压d时读出来的数值也为1,由于施加电压d时也读出来的数值也是1,因此需要比较电压阈值d大还是电压阈值c,显然电压阈值d大,因此存储的电压阈值c的电压编码(001)需要更改为电压阈值d的电压编码4(即),采用3个比特表示即为(100),即存储电压阈值d的电压编码(100);
第五次施加电压e,对该cell施加电压e时读出来的数值也为0,由于施加电压e时也读出来的数值是0,因此不需要更改存储电压阈值d的电压编码(100)。
在整个对存储单元施加电压过程,读出来前面4次的电压值是1最后1次是0,即电压值有反转,因此,标志信息应该表示为对所述存储单元依次施加电压的过程中所读出的电压值发生过反转(假设采用1来表示),即标志信息为1。那么最终将电压编码(100)和标识信息(1)存储起来。
3)因为在a左侧和e右侧的电压区间上,在所有vth下读出来的值都是0,或都是1。在这两个区间上要么不会出现1,要么最左侧出现的1的电压位置也在a处(图3的B图,图3的A图与图3的B图相反),与ab区间相同,与ab区间无法区分。因此为了区分a的左侧和ab区间,在每次接收flash中数据时要看数据是否发生反转,如果在调了所有电压后数据都不发生反转(即是否反转代表标志信息),那么如果它是0,它的软信息就是011,如果它是1,软信息就是111。
4)当电压调完之后,就需要将记录的最左侧电压阈值翻译成软信息,但是由于存在电压左侧是1而右侧是0、左侧是0而右侧是1两种状况,所以在最后一步还需要对这两种电压情况进行区分。从图中可以看出,除了全1的区间,如果有一个以上的cell最左侧电压出现在a的位置,并且没有cell最左侧电压出现在e的位置,那么它就属于A图的情况,否则,该cell就是B图中所示的情况。
实施例四
基于前述的实施例,本发明实施例提供一种电子设备,图4为本发明实施例四电子设备的组成结构示意图,如图4所示,该电子设备400包括固态存储器410,所述固态存储器410包括Nand 411和SSD控制器412,其中
所述SSD控制器,用于:
在按照预先设置的电压阈值顺序对所述Nand的存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,其中,所述标志信息用于在对所述存储单元依次施加电压的过程中所读出的电压值是否发生过反转,在所述存储单元中设置有n个电压阈值;
存储所述个比特记录的电压编码和所述标志信息。
本发明实施例中,如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码;如果左侧电压表示1而右侧电压表示0,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码。
本发明实施例中,所述SSD控制器还用于:按照从大到小或者从小到大的顺序标识所述电压阈值,得到每一电压阈值对应的电压编码。
本发明实施例中,所述当左侧电压表示0而右侧电压表示1,所述采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,包括:
按照预先设置的电压阈值顺序对所述存储单元施加第j电压,得到与所述第j电压对应的第j电压编码,所述j的取值范围从1到n;
采用个比特记录所述第一电压编码,其中n为所施加的电压的次数;
按照预先设置的电压阈值顺序对存储单元施加第(j+1)电压,得到与第j电压对应的第(j+1)电压编码;
如果所述第(j+1)电压大于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码;如果电压值为1且所述第(j+1)电压小于所述第j电压时,不更改所述个比特记录的第j电压编码和采用1个比特记录的标志信息;采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同;
如果所述第(j+1)电压小于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码;如果电压值为0且所述第(j+1)电压大于所述第j电压时,不更改所述个比特记录的第j电压编码;采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同。
本发明实施例中,所述当左侧电压表示1而右侧电压表示0,所述采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,包括:
按照预先设置的电压阈值顺序对所述存储单元施加第j电压,得到与所述第j电压对应的第j电压编码,所述j的取值范围从1到n;
采用个比特记录所述第一电压编码,其中n为所施加的电压的次数;
按照预先设置的电压阈值顺序对存储单元施加第(j+1)电压,得到与第j电压对应的第(j+1)电压编码;
如果所述第(j+1)电压大于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码;如果电压值为1且所述第(j+1)电压小于所述第j电压时,不更改所述个比特记录的第j电压编码和采用1个比特记录的标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同;
如果所述第(j+1)电压小于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码;如果电压值为0且所述第(j+1)电压大于所述第j电压时,不更改所述个比特记录的第j电压编码;采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同。
本发明实施例中,所述SSD控制器还用于:根据所述个比特记录的电压编码和所述标志信息查找关联信息,得到对应的软信息。
本发明实施例中,所述SSD控制器还用于形式所述关联信息,所述形式关联信息包括:
将施加电压阈值的顺序而依次得到的电压值确定为电压值序列;
获取所述电压值序列对应的软信息;
将电压值序列对应的所述个比特记录的电压编码和所述标志信息与所述软信息形成映射关系,得到所述关联信息。
这里,所述电子设备在具体实施例的过程中可以为各种类型的具有信息处理能力的设备,例如所述电子设备可以包括手机、平板电脑、台式机、个人数字助理、导航仪、数字电话、视频电话、电视机等。
这里需要指出的是:以上电子设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明电子设备实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
实施例五
基于前述的实施例,本发明实施例提供一种信息处理装置,该信息处理装置所包括的各单元,都可以通过电子设备中的SSD控制器来实现,当然也可通过具体的逻辑电路实现;在具体实施例的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等。
图5为本发明实施例五信息处理装置的组成结构示意图,如图5所示,该装置500包括记录单元501、存储单元502和查找单元503,其中:
所述记录单元,用于在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,其中,所述标志信息用于在依次施加电压的过程中电压值是否发生过变化,在所述存储单元中设置有n个电压阈值;
所述存储单元,用于存储所述个比特记录的电压编码和所述标志信息;
所述查找单元,用于根据所述个比特记录的电压编码和所述标志信息查找关联信息,得到对应的软信息。
本发明实施例中,当如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码;如果左侧电压表示1而右侧电压表示0,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码。
在本发明的其他实施例中,所述装置还包括标识单元,用于按照从大到小或者从小到大的顺序标识所述电压阈值,得到每一电压阈值对应的电压编码。
在本发明的实施例中,所述记录单元包括第一施加模块、记录模块、第二施加模块、第一更改模块和第二更改模块,其中:
所述第一施加模块,用于按照预先设置的电压阈值顺序对所述存储单元施加第j电压,得到与所述第j电压对应的第j电压编码,所述j的取值范围从1到n;
所述记录模块,用于采用个比特记录所述第一电压编码,其中n为所施加的电压的次数;
所述第二施加模块,用于按照预先设置的电压阈值顺序对存储单元施加第(j+1)电压,得到与第j电压对应的第(j+1)电压编码;
所述第一更改模块,用于如果所述第(j+1)电压大于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码;如果电压值为1且所述第(j+1)电压小于所述第j电压时,不更改所述个比特记录的第j电压编码和采用1个比特记录的标志信息;采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同;
所述第二更改模块,用于如果所述第(j+1)电压小于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码;如果电压值为0且所述第(j+1)电压大于所述第j电压时,不更改所述个比特记录的第j电压编码;采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同。
在本发明的其他实施例中,所述装置还包括形成单元,用于形成关联信息,所述形成关联信息包括确定模块、获取模块和形成模块,其中:
所述确定模块,用于将施加电压阈值的顺序而依次得到的电压值确定为电压值序列;
所述获取模块,用于获取所述电压值序列对应的软信息;
所述形成模块,用于将电压值序列对应的所述个比特记录的电压编码和所述标志信息与所述软信息形成映射关系,得到所述关联信息。
这里需要指出的是:以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解,为节约篇幅,因此不再赘述。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种信息处理方法,其特征在于,所述方法包括:在按照预先设置的电压阈值顺序对存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息;其中,所述标志信息用于标识在对所述存储单元依次施加电压的过程中,所读出的电压值是否发生过反转,在所述存储单元中具有n个电压阈值;存储所述个比特记录的电压编码和所述标志信息。
2.根据权利要求1所述的方法,其特征在于,如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码;如果左侧电压表示1而右侧电压表示0,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码。
3.根据权利要求2所述的方法,其特征在于,所述当左侧电压表示0而右侧电压表示1,所述采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,包括:按照预先设置的电压阈值顺序对所述存储单元施加第j电压,得到与所述第j电压对应的第j电压编码,所述j的取值范围从1到n-1;采用个比特记录所述电压编码,其中n为所施加的电压的次数;按照预先设置的电压阈值顺序对存储单元施加第(j+1)电压,得到与第(j+1)电压对应的第(j+1)电压编码;如果所述第(j+1)电压大于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码,采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同;如果所述第(j+1)电压小于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码,采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:按照从大到小的顺序或者从小到大的顺序标识所述电压阈值,得到每一电压阈值对应的电压编码。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:根据所述个比特记录的电压编码和所述标志信息查找关联信息,得到对应的待解码数据。
6.根据权利要求5所述的方法,其特征在于,所述关联信息通过以下方式形成:将施加电压阈值的顺序而依次得到的电压值确定为电压值序列;获取所述电压值序列对应的待解码数据;将电压值序列对应的所述个比特记录的电压编码和所述标志信息与所述待解码数据形成映射关系,得到所述关联信息。
7.一种电子设备,其特征在于,所述电子设备包括固态存储器,所述固态存储器包括非易失性闪存和固态存储器控制器,其中:所述固态存储器控制器,用于:在按照预先设置的电压阈值顺序对所述非易失性闪存的存储单元施加电压的过程中,采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,其中,所述标志信息用于标识在对所述存储单元依次施加电压的过程中,所读出的电压值是否发生过反转,在所述存储单元中具有n个电压阈值;存储所述个比特记录的电压编码和所述标志信息。
8.根据权利要求7所述的电子设备,其特征在于,如果左侧电压表示0而右侧电压表示1,满足所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值所对应的电压编码;如果左侧电压表示1而右侧电压表示0,所述第一条件的电压值所对应的电压编码包括:从所述存储单元中读出的电压值为1时对应的最大的电压阈值对应的电压编码。
9.根据权利要求8所述的电子设备,其特征在于,所述当左侧电压表示0而右侧电压表示1,所述采用个比特记录出现满足第一条件的电压值所对应的电压编码,以及采用1个比特记录标志信息,包括:按照预先设置的电压阈值顺序对所述存储单元施加第j电压,得到与所述第j电压对应的第j电压编码,所述j的取值范围从1到n-1;采用个比特记录所述电压编码,其中n为所施加的电压的次数;按照预先设置的电压阈值顺序对存储单元施加第(j+1)电压,得到与第(j+1)电压对应的第(j+1)电压编码;如果所述第(j+1)电压大于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码,采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同;如果所述第(j+1)电压小于所述第j电压时,将所述个比特记录的第j电压编码更改为第(j+1)电压编码,采用1个比特记录标志信息,所述标志信息用于标识第(j+1)电压值是否与之前的第j电压值相同。
10.根据权利要求7至9任一项所述的电子设备,其特征在于,所述固态存储器控制器还用于:按照从大到小的顺序或者从小到大的顺序标识所述电压阈值,得到每一电压阈值对应的电压编码。
CN201610194442.3A 2016-03-30 2016-03-30 一种信息处理方法及电子设备 Active CN105895156B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610194442.3A CN105895156B (zh) 2016-03-30 2016-03-30 一种信息处理方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610194442.3A CN105895156B (zh) 2016-03-30 2016-03-30 一种信息处理方法及电子设备

Publications (2)

Publication Number Publication Date
CN105895156A CN105895156A (zh) 2016-08-24
CN105895156B true CN105895156B (zh) 2019-09-20

Family

ID=57014166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610194442.3A Active CN105895156B (zh) 2016-03-30 2016-03-30 一种信息处理方法及电子设备

Country Status (1)

Country Link
CN (1) CN105895156B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7042766B1 (en) * 2004-07-22 2006-05-09 Spansion, Llc Method of programming a flash memory device using multilevel charge storage
KR100669351B1 (ko) * 2005-07-29 2007-01-16 삼성전자주식회사 멀티 레벨 셀 플래시 메모리의 프로그램 방법 및 장치
US7821826B2 (en) * 2006-10-30 2010-10-26 Anobit Technologies, Ltd. Memory cell readout using successive approximation
KR101391881B1 (ko) * 2007-10-23 2014-05-07 삼성전자주식회사 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법
US8144510B1 (en) * 2008-03-27 2012-03-27 Marvell International Ltd. Method and system for programming multi-state memory
US7729166B2 (en) * 2008-07-02 2010-06-01 Mosaid Technologies Incorporated Multiple-bit per cell (MBC) non-volatile memory apparatus and system having polarity control and method of programming same
US7813181B2 (en) * 2008-12-31 2010-10-12 Sandisk Corporation Non-volatile memory and method for sensing with pipelined corrections for neighboring perturbations
US8266503B2 (en) * 2009-03-13 2012-09-11 Fusion-Io Apparatus, system, and method for using multi-level cell storage in a single-level cell mode

Also Published As

Publication number Publication date
CN105895156A (zh) 2016-08-24

Similar Documents

Publication Publication Date Title
US9043668B2 (en) Using ECC data for write deduplication processing
US9583217B2 (en) Decoding method, memory storage device and memory control circuit unit
CN103902403B (zh) 经由冗余阵列的非易失性存储器编程故障恢复
KR101564569B1 (ko) 상위-레벨 리던던시 정보 계산
CN103348330B (zh) 采用独立硅元件的动态较高级冗余模式管理
JP5658128B2 (ja) Nandフラッシュ・メモリにおける確率論的多層エラー訂正のためのシステム、方法、およびコンピュータ・プログラム
KR101623119B1 (ko) 솔리드 스테이트 드라이브의 에러 제어 방법
TWI613674B (zh) 在具有選擇性二元及非二元解碼之快閃記憶體中之偵測及解碼
US20190252035A1 (en) Decoding method, memory storage device and memory control circuit unit
US9898215B2 (en) Efficient management of page retirement in non-volatile memory utilizing page retirement classes
CN107155358A (zh) 用于非易失性存储器的混合粒度较高级别冗余
US10521339B2 (en) Retired page utilization (RPU) for improved write capacity of solid state drives
CN105206306A (zh) 在非易失性存储器处理纠错码的方法及非易失性存储装置
MX2012010944A (es) Detección de distribución de paridad no regulada vía etiqueta de metadatos.
CN103295635A (zh) 快闪存储器的数据读取方法、存储器控制装置和系统
CN104283570A (zh) 低密度奇偶性检验(ldpc)解码器中的对数似然比(llr)阻尼
US20100262755A1 (en) Memory systems for computing devices and systems
US20170115900A1 (en) Dummy page insertion for flexible page retirement in flash memory storing multiple bits per memory cell
US9417809B1 (en) Efficient management of page retirement in non-volatile memory utilizing page retirement classes
CN105336379B (zh) 一种信息处理方法及固态存储器
CN105895156B (zh) 一种信息处理方法及电子设备
WO2014028183A1 (en) Fractional redundant array of silicon independent elements
Chen et al. Enhancing flash memory reliability by jointly considering write-back pattern and block endurance
US9436547B2 (en) Data storing method, memory control circuit unit and memory storage device
CN115472200A (zh) 生成对数似然比的压缩框架

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: 20170213

Address after: 100176 Beijing City, Daxing District branch of 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.

TA01 Transfer of patent application right

Effective date of registration: 20190812

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

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

Address before: 100176 Beijing City, Daxing District branch of Beijing economic and Technological Development Zone, fourteen Street No. 99 building 33 building D No. 2226

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

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant