CN105023613B - 解码方法、存储器存储装置及存储器控制电路单元 - Google Patents
解码方法、存储器存储装置及存储器控制电路单元 Download PDFInfo
- Publication number
- CN105023613B CN105023613B CN201410164195.3A CN201410164195A CN105023613B CN 105023613 B CN105023613 B CN 105023613B CN 201410164195 A CN201410164195 A CN 201410164195A CN 105023613 B CN105023613 B CN 105023613B
- Authority
- CN
- China
- Prior art keywords
- bit
- hard bit
- hard
- soft
- control circuit
- 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
Landscapes
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种解码方法、存储器存储装置及存储器控制电路单元,其中此解码方法包括:根据至少一硬决策电压读取多个存储单元,以取得至少一硬比特;对所述硬比特执行奇偶校验程序,以取得多个校验子;根据所述校验子判断所述硬比特是否具有至少一错误;若所述硬比特具有所述错误,根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特。
Description
技术领域
本发明是有关于一种解码方法,且特别是一种有关于低密度奇偶校验码的解码方法、存储器存储装置及存储器控制电路单元。
背景技术
数码相机、移动电话与MP3播放器在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(例如,快闪存储器)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内装于上述所举例的各种可携式多媒体装置中。
一般来说,写入至可复写式非易失性存储器模块的数据会经过一个通道编码。藉此,当从可复写式非易失性存储器模块中读取数据时,有机会恢复这些数据中的错误。若此通道编码所使用的是低密度奇偶校验码,则从可复写式非易失性存储器模块所读取的数据会经过一个迭代解码。此迭代解码是用以更新一个比特的可靠度。当数据中的错误越多时,则迭代解码所需要的迭代次数就会越多。然而,迭代次数越多则表示解码的速度越慢。因此,如何增加解码的速度,为此领域技术人员所关心的议题。
发明内容
本发明提供一种解码方法、存储器存储装置及存储器控制电路单元,可搜集额外的通道信息作为错误更正的依据。
本发明的一范例实施例提供一种解码方法,用于可复写式非易失性存储器模块,可复写式非易失性存储器模块包括多个存储单元,解码方法包括:根据至少一硬决策电压读取所述存储单元,以取得至少一硬比特;对所述硬比特执行奇偶校验程序,以取得多个校验子(syndrome),其中所述硬比特是对应至所述校验子的至少其中之一;根据所述校验子判断所述硬比特是否具有至少一错误;若所述硬比特具有所述错误,根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特;以及若所述硬比特不具有所述错误,输出所述硬比特。
在一范例实施例中,所述硬比特包括第一硬比特,若所述硬比特具有所述错误,根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特的步骤包括:判断所述校验权重信息中对应于第一硬比特的第一校验权重信息是否符合权重条件;若第一校验权重信息符合权重条件,判断第一硬比特的通道信息是否符合通道条件;若第一硬比特的通道信息符合通道条件,更新第一硬比特;以及若第一硬比特的通道信息不符合通道条件,不更新第一硬比特。
在一范例实施例中,所述第一硬比特的通道信息包括至少一第一软比特,并且判断第一硬比特的通道信息是否符合通道条件的步骤包括:判断所述第一软比特是否符合第一状态;若所述第一软比特符合第一状态,判定第一硬比特的通道信息符合通道条件;以及若所述第一软比特不符合第一状态,判定第一硬比特的通道信息不符合通道条件。
在一范例实施例中,若所述硬比特具有所述错误,所述解码方法还包括:计数迭代次数;判断迭代次数是否达到预设次数;若迭代次数没有达到预设次数,设定通道条件为第一通道条件;以及若迭代次数达到预设次数,设定通道条件为第二通道条件,其中第一通道条件与第二通道条件不相同。
在一范例实施例中,所述解码方法还包括:根据至少一软决策电压读取所述存储单元,以取得所述硬比特的通道信息。
在一范例实施例中,所述硬决策电压包括第一硬决策电压,所述软决策电压包括第一软决策电压与第二软决策电压,第一软决策电压小于第一硬决策电压,并且第二软决策电压大于第一硬决策电压。
在一范例实施例中,所述解码方法还包括:若解码失败,根据至少一新的硬决策电压读取所述存储单元,以取得至少一新的硬比特;以及根据所述硬比特与所述新的硬比特,决定所述新的硬比特的通道信息。
在一范例实施例中,若所述硬比特具有所述错误,所述解码方法还包括:计数迭代次数;判断迭代次数是否达到中止次数;若迭代次数达到中止次数,判定解码失败;以及若迭代次数没有达到中止次数,对更新后的所述硬比特执行奇偶校验程序,以重新取得所述校验子,并且根据重新取得的所述校验子判断更新后的所述硬比特是否具有所述错误。
本发明的一范例实施例提供一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块及存储器控制电路单元。连接接口单元用以电连接至主机系统。可复写式非易失性存储器模块包括多个存储单元。存储器控制电路单元电连接至连接接口单元与可复写式非易失性存储器模块。其中存储器控制电路单元用以根据至少一硬决策电压读取所述存储单元,以取得至少一硬比特。存储器控制电路单元还用以对所述硬比特执行奇偶校验程序,以取得多个校验子,其中每一所述硬比特是对应至所述校验子的至少其中之一。存储器控制电路单元还用以根据所述校验子判断所述硬比特是否具有至少一错误。若所述硬比特具有所述错误,存储器控制电路单元还用以根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特。若所述硬比特不具有所述错误,存储器控制电路单元还用以输出所述硬比特。
在一范例实施例中,所述硬比特包括第一硬比特。若所述硬比特具有所述错误,存储器控制电路单元根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特的操作包括:判断所述校验权重信息中对应于第一硬比特的第一校验权重信息是否符合权重条件;若第一校验权重信息符合权重条件,判断第一硬比特的通道信息是否符合通道条件;若第一硬比特的通道信息符合通道条件,更新第一硬比特;以及若第一硬比特的通道信息不符合通道条件,不更新第一硬比特。
在一范例实施例中,所述第一硬比特的通道信息包括至少一第一软比特,并且存储器控制电路单元判断第一硬比特的通道信息是否符合通道条件的操作包括:判断所述第一软比特是否符合第一状态;若所述第一软比特符合第一状态,判定第一硬比特的通道信息符合通道条件;以及若所述第一软比特不符合第一状态,判定第一硬比特的通道信息不符合通道条件。
在一范例实施例中,若所述硬比特具有所述错误,所述存储器控制电路单元还用以计数迭代次数。存储器控制电路单元还用以判断迭代次数是否达到预设次数。若迭代次数没有达到预设次数,存储器控制电路单元还用以设定通道条件为第一通道条件。若迭代次数达到预设次数,存储器控制电路单元还用以设定通道条件为第二通道条件,其中第一通道条件与第二通道条件不相同。
在一范例实施例中,所述存储器控制电路单元还用以根据至少一软决策电压读取所述存储单元,以取得所述硬比特的通道信息。
在一范例实施例中,若解码失败,所述存储器控制电路单元还用以根据至少一新的硬决策电压读取所述存储单元,以取得至少一新的硬比特。存储器控制电路单元还用以根据所述硬比特与所述新的硬比特,决定所述新的硬比特的通道信息。
在一范例实施例中,若所述硬比特具有所述错误,所述存储器控制电路单元还用以计数迭代次数。存储器控制电路单元还用以判断迭代次数是否达到中止次数。若迭代次数达到中止次数,存储器控制电路单元还用以判定解码失败。若迭代次数没有达到中止次数,存储器控制电路单元还用以对更新后的所述硬比特执行奇偶校验程序,以重新取得所述校验子,并且根据重新取得的所述校验子判断更新后的所述硬比特是否具有所述错误。
本发明的一范例实施例提供一种存储器控制电路单元,其用于可复写式非易失性存储器模块,其中可复写式非易失性存储器模块包括多个存储单元,存储器控制电路单元包括:主机接口、存储器接口、错误检测与校正电路及存储器管理电路。主机接口用以电连接至主机系统。存储器接口用以电连接至可复写式非易失性存储器模块。存储器管理电路电连接至主机接口、存储器接口及错误检测与校正电路。其中存储器管理电路用以发送读取指令序列,其中读取指令序列用以指示根据至少一硬决策电压读取所述存储单元,以取得至少一硬比特。错误检测与校正电路用以对所述硬比特执行奇偶校验程序,以取得多个校验子,其中每一所述硬比特是对应至所述校验子的至少其中之一。错误检测与校正电路还用以根据所述校验子判断所述硬比特是否具有至少一错误。若所述硬比特具有所述错误,错误检测与校正电路还用以根据所述硬比特的一通道信息与对应于所述硬比特的一校验权重信息来更新所述硬比特。若所述硬比特不具有所述错误,存储器管理电路还用以输出所述硬比特。
在一范例实施例中,所述硬比特包括第一硬比特。若所述硬比特具有所述错误,错误检测与校正电路根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特的操作包括:判断所述校验权重信息中对应于第一硬比特的第一校验权重信息是否符合权重条件;若第一校验权重信息符合权重条件,判断第一硬比特的通道信息是否符合通道条件;若第一硬比特的通道信息符合通道条件,更新第一硬比特;以及若第一硬比特的通道信息不符合通道条件,不更新第一硬比特。
在一范例实施例中,所述第一硬比特的通道信息包括至少一第一软比特,并且错误检测与校正电路判断第一硬比特的通道信息是否符合通道条件的操作包括:判断所述第一软比特是否符合第一状态;若所述第一软比特符合第一状态,判定第一硬比特的通道信息符合通道条件;以及若所述第一软比特不符合第一状态,判定第一硬比特的通道信息不符合通道条件。
在一范例实施例中,若所述硬比特具有所述错误,所述错误检测与校正电路还用以计数迭代次数。错误检测与校正电路还用以判断迭代次数是否达到预设次数。若迭代次数没有达到预设次数,错误检测与校正电路还用以设定通道条件为第一通道条件。若迭代次数达到预设次数,错误检测与校正电路还用以设定通道条件为第二通道条件,其中第一通道条件与第二通道条件不相同。
在一范例实施例中,所述读取指令序列还用以指示根据至少一软决策电压读取所述存储单元,以取得所述硬比特的通道信息。
在一范例实施例中,若解码失败,所述存储器管理电路还用以发送新的读取指令序列,其中新的读取指令序列用以指示根据至少一新的硬决策电压读取所述存储单元,以取得至少一新的硬比特。存储器管理电路还用以根据所述硬比特与所述新的硬比特,决定所述新的硬比特的通道信息。
在一范例实施例中,若所述硬比特具有所述错误,所述错误检测与校正电路还用以计数迭代次数。错误检测与校正电路还用以判断迭代次数是否达到中止次数。若迭代次数达到中止次数,错误检测与校正电路还用以判定解码失败。若迭代次数没有达到中止次数,错误检测与校正电路还用以对更新后的所述硬比特执行奇偶校验程序,以重新取得所述校验子,并且根据重新取得的所述校验子判断更新后的所述硬比特是否具有所述错误。
基于上述,当从可复写式非易失性存储器模块中读取的比特存在错误时,本发明的一范例实施例可以根据所读取的各个比特的通道信息与对应于各个比特的校验权重信息,来决定要更新哪些比特。藉此,相对于以往仅仅根据每一次的迭代运算的结果来更新码字,本发明的一范例实施例可以有效提升解码效率。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
附图说明
图1是根据本发明的一范例实施例所示出的主机系统与存储器存储装置的示意图;
图2是根据一范例实施例所示出的电脑、输入/输出装置与存储器存储装置的示意图;
图3是根据一范例实施例所示出的主机系统与存储器存储装置的示意图;
图4是示出图1所示的存储器存储装置的概要方块图;
图5是根据一范例实施例所示出的存储器控制电路单元的概要方块图;
图6是根据一范例实施例所示出的奇偶校验矩阵的示意图;
图7是根据一范例实施例所示出的根据一个硬决策电压来读取可复写式非易失性存储器模块的范例示意图;
图8是根据一范例实施例所示出的硬比特与软比特对应在SLC型快闪存储器模块的临界电压分布上的范例示意图;
图9是根据一范例实施例所示出的MLC型快闪存储器模块的临界电压分布的范例示意图;
图10与图11是根据一范例实施例所示出的硬比特与软比特对应在MLC 型快闪存储器模块的临界电压分布上的范例示意图;
图12至图14是根据一范例实施例所示出的硬比特与软比特对应在TLC 型快闪存储器模块的临界电压分布上的范例示意图;
图15是根据一范例实施例所示出的矩阵相乘的示意图;
图16是根据一范例实施例所示出的硬比特与软比特对应在SLC型快闪存储器模块的临界电压分布上的范例示意图;
图17是根据一范例实施例所示出的解码方法的流程图;
图18是根据另一范例实施例所示出的解码方法的流程图。
附图标记说明:
1000:主机系统;
1100:电脑;
11:微处理器;
12:随机存取存储器;
13:输入/输出装置;
14:系统总线;
15:数据传输接口;
16:鼠标;
17:键盘;
18:显示器;
19:打印机;
20:U盘;
21:记忆卡;
22:固态硬盘;
23:数码相机;
24:SD卡;
25:MMC卡;
26:记忆棒;
27:CF卡;
28:嵌入式存储装置;
100:存储器存储装置;
102:连接接口单元;
104:存储器控制电路单元;
106:可复写式非易失性存储器模块;
304(0)~304(R):实体抹除单元;
202:存储器管理电路;
204:主机接口;
206:存储器接口;
252:缓冲存储器;
254:电源管理电路;
256:错误检测与校正电路;
600:奇偶校验矩阵;
702、1002、1102、1104、1202、1204、1302、1304、1306、1402、1404、 1602:硬决策电压;
704、706、1004、1006、1106、1108、1110、1112、1206、1208、1210、 1212、1308、1310、1312、1314、1316、1318、1406、1408、1410、1412、 1604、1606、1608、1610、1612、1614:软决策电压;
710、720、910、920、930、940、2210、2220、2230、2240、2250、2260、 2270、2280:分布;
730、950、960、970:重叠区域;
740、1010、1120、1130、1220、1230、1320、1330、1340、1420、1430、 1620:不稳定区;
750、760、1020、1030、1140、1150、1160、1240、1250、1260、1350、 1360、1370、1380、1440、1450、1460、1630、1640、1650、1660、1670、 1680:稳定区;
1510:码字;
1520:校验向量;
S1702、S1704、S1706、S1708、S1710:本发明一范例实施例中解码方法各步骤;
S1802、S1804、S1806、S1808、S1810、S1812、S1814、S1816、S1818、 S1820、S1822:本发明另一范例实施例中解码方法各步骤。
具体实施方式
一般而言,存储器存储装置(也称,存储器存储系统)包括可复写式非易失性存储器模块与控制器(也称,控制电路)。通常存储器存储装置是与主机系统一起使用,以使主机系统可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据本发明的一范例实施例所示出的主机系统与存储器存储装置的示意图。图2是根据一范例实施例所示出的电脑、输入/输出装置与存储器存储装置的示意图。
请参照图1,主机系统1000一般包括电脑1100与输入/输出(input/output, I/O)装置13。电脑1100包括微处理器11、随机存取存储器(random access memory,RAM)12、系统总线14与数据传输接口15。输入/输出装置13包括如图2的鼠标16、键盘17、显示器18与打印机19。必须了解的是,图2所示的装置非限制输入/输出装置13,输入/输出装置13可还包括其他装置。
在本发明实施例中,存储器存储装置100是通过数据传输接口15与主机系统1000的其他元件电连接。通过微处理器11、随机存取存储器12与输入 /输出装置13的运作可将数据写入至存储器存储装置100或从存储器存储装置100中读取数据。例如,存储器存储装置100可以是如图2所示的U盘20、记忆卡21或固态硬盘(Solid State Drive,SSD)22等的可复写式非易失性存储器存储装置。
图3是根据一范例实施例所示出的主机系统与存储器存储装置的示意图。
一般而言,主机系统1000为可实质地与存储器存储装置100配合以存储数据的任意系统。虽然在本范例实施例中,主机系统1000是以电脑系统来作说明,然而,在本发明另一范例实施例中主机系统1000可以是数码相机、摄影机、通信装置、音频播放器或视频播放器等系统。例如,在主机系统为数码相机(摄影机)23时,可复写式非易失性存储器存储装置则为其所使用的SD 卡24、MMC卡25、记忆棒(memory stick)26、CF卡27或嵌入式存储装置28(如图3所示)。嵌入式存储装置28包括嵌入式多媒体卡(Embedded MMC, eMMC)。值得一提的是,嵌入式多媒体卡是直接电连接于主机系统的基板上。
图4是示出图1所示的存储器存储装置的概要方块图。
请参照图4,存储器存储装置100包括连接接口单元102、存储器控制电路单元104与可复写式非易失性存储器模块106。
在本范例实施例中,连接接口单元102是相容于序列先进附件(Serial AdvancedTechnology Attachment,SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元102也可以是符合并列先进附件(Parallel Advanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准、通用序列总线 (Universal Serial Bus,USB)标准、安全数位(SecureDigital,SD)接口标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II, UHS-II)接口标准、记忆棒(Memory Stick,MS)接口标准、多媒体存储卡(Multi Media Card,MMC)接口标准、嵌 入式多媒体存储卡(Embedded MultimediaCard,eMMC)接口标准、通用快闪存储器(Universal Flash Storage,UFS)接口标准、小型快闪(Compact Flash,CF)接口标准、整合式驱动电子接口 (Integrated DeviceElectronics,IDE)标准或其他适合的标准。连接接口单元 102可与存储器控制电路单元104封装在一个晶片中,或者连接接口单元102 是布设于一包含存储器控制电路单元104之晶片外。
存储器控制电路单元104用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令,并且根据主机系统1000的指令在可复写式非易失性存储器模块106中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块106是电连接至存储器控制电路单元104,并且用以存储主机系统1000所写入的数据。可复写式非易失性存储器模块 106具有实体抹除单元304(0)~304(R)。例如,实体抹除单元304(0)~304(R)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一实体抹除单元分别具有复数个实体程序化单元,并且属于同一个实体抹除单元之实体程序化单元可被独立地写入且被同时地抹除。例如,每一实体抹除单元是由128 个实体程序化单元所组成。然而,必须了解的是,本发明不限于此,每一实体抹除单元是可由64个实体程序化单元、256个实体程序化单元或其他任意个实体程序化单元所组成。
更具体来说,每一个实体抹除单元包括多条字符线与多条比特线,每一条字符线与每一比特线交叉处配置有一个存储单元。每一个存储单元可存储一或多个比特。在同一个实体抹除单元中,所有的存储单元会一起被抹除。在此范例实施例中,实体抹除单元为抹除之最小单位。也即,每一实体抹除单元含有最小数目之一并被抹除之存储单元。例如,实体抹除单元为实体区块。另一方面,同一条字符线上的存储单元会组成一或多个实体程序化单元。若每一个存储单元可存储2个以上的比特,则同一条字符线上的实体程序化单元可被分类为下实体程序化单元与上实体程序化单元。一般来说,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度。在此范例实施例中,实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。例如,实体程序化单元为实体页面或是实体扇(sector)。若实体程序化单元为实体页面,则每一个实体程序化单元通常包括数据比特区与冗余比特区。数据比特区包含多个实体扇,用以存储使用者的数据,而冗余比特区用以存储系统的数据(例如,错误更正码)。在本范例实施例中,每一个数据比特区包含32个实体扇,且一个实体扇的大小为512比特组(byte,B)。然而,在其他范例实施例中,数据比特区中也可包含8个、16个或数目更多或更少的实体扇,本发明并不限制实体扇的大小以及个数。
在本范例实施例中,可复写式非易失性存储器模块106为单阶存储单元 (SingleLevel Cell,SLC)NAND型快闪存储器模块,即一个存储单元中可存储 1个比特。然而,本发明不限于此,可复写式非易失性存储器模块106也可是多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块、复数阶存储单元(Trinary Level Cell,TLC)NAND型快闪存储器模块、其他快闪存储器模块或其他具有相同特性的存储器模块。
图5是根据一范例实施例所示出的存储器控制电路单元的概要方块图。
请参照图5,存储器控制电路单元104包括存储器管理电路202、主机接口204与存储器接口206。
存储器管理电路202用以控制存储器控制电路单元104的整体运作。具体来说,存储器管理电路202具有多个控制指令,并且在存储器存储装置100 运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路202的操作时,等同于说明存储器控制电路单元104 的操作,以下并不再赘述。
在本范例实施例中,存储器管理电路202的控制指令是以固件型式来实作。例如,存储器管理电路202具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置100 运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在本发明另一范例实施例中,存储器管理电路202的控制指令也可以程序码型式存储于可复写式非易失性存储器模块106的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路202具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元104被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块106中的控制指令载入至存储器管理电路202的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在本发明另一范例实施例中,存储器管理电路202的控制指令也可以一硬件型式来实作。例如,存储器管理电路202包括微控制器、存储器管理单元、存储器写入单元、存储器读取单元、存储器抹除单元与数据处理单元。存储器管理单元、存储器写入单元、存储器读取单元、存储器抹除单元与数据处理单元是电连接至微控制器。其中,存储器管理单元用以管理可复写式非易失性存储器模块106的实体抹除单元;存储器写入单元用以对可复写式非易失性存储器模块106下达写入指令以将数据写入至可复写式非易失性存储器模块106中;存储器读取单元用以对可复写式非易失性存储器模块106下达读取指令以从可复写式非易失性存储器模块106中读取数据;存储器抹除单元用以对可复写式非易失性存储器模块106下达抹除指令以将数据从可复写式非易失性存储器模块106中抹除;而数据处理单元用以处理欲写入至可复写式非易失性存储器模块106的数据以及从可复写式非易失性存储器模块106中读取的数据。
主机接口204是电连接至存储器管理电路202并且用以接收与识别主机系统1000所传送的指令与数据。也就是说,主机系统1000所传送的指令与数据会通过主机接口204来传送至存储器管理电路202。在本范例实施例中,主机接口204是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口204也可以是相容于PATA标准、IEEE1394标准、PCIExpress标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、 eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口206是电连接至存储器管理电路202并且用以存取可复写式非易失性存储器模块106。也就是说,欲写入至可复写式非易失性存储器模块106的数据会经由存储器接口206转换为可复写式非易失性存储器模块106 所能接受的格式。
在本发明一范例实施例中,存储器控制电路单元104还包括缓冲存储器 252、电源管理电路254与错误检测与校正电路256。
缓冲存储器252是电连接至存储器管理电路202并且用以暂存来自于主机系统1000的数据与指令或来自于可复写式非易失性存储器模块106的数据。
电源管理电路254是电连接至存储器管理电路202并且用以控制存储器存储装置100的电源。
错误检测与校正电路256是电连接至存储器管理电路202并且用以执行错误检测与校正程序以确保数据的正确性。具体来说,当存储器管理电路202 从主机系统1000中接收到写入指令时,错误检测与校正电路256会为对应此写入指令的数据产生对应的错误更正码(error correcting code,ECC code),并且存储器管理电路202会将对应此写入指令的数据与对应的错误更正码写入至可复写式非易失性存储器模块106中。之后,当存储器管理电路202从可复写式非易失性存储器模块106中读取数据时会同时读取此数据对应的错误更正码,并且错误检测与校正电路256会依据此错误更正码对所读取的数据执行错误检测与校正程序。
在此范例实施例中,错误检测与校正电路256所使用的错误更正码是低密度奇偶校验(Low-density parity-check,LDPC)码。换言之,错误检测与校正电路256会根据一个低密度奇偶校验演算法来编码与解码。错误检测与校正电路256会设定一个奇偶校验矩阵(parity check matrix),其维度是m-乘 -n(m-by-n)。m与n为正整数。正整数n代表一个码字(codeword)包含了多少个比特,而正整数m代表一个码字包含了多少个奇偶校验比特,即正整数n 减去正整数m的差(n-m)代表一个码字中有多少个信息比特(或称讯息比特)。
图6是根据一范例实施例所示出的奇偶校验矩阵的示意图。
请参照图6,奇偶校验矩阵600的维度是3-乘-8。一般来说正整数m与n 会大于3与8,图6只是用来举例说明,本发明并不限制正整数m与n为多少。奇偶校验矩阵600的每一列(row)也代表了一限制(constraint)。以第一列为例,若某一个码字是有效码字(validcodeword),则将此码字中第1、2、5、 6、与第8个比特做模2(modulo-2)的加法之后,会得到比特“0”。在此领域有通常知识者应能理解如何用奇偶校验矩阵600来编码,在此便不再赘述。
当存储器控制电路单元104(或存储器管理电路202)要将多个比特写入至可复写式非易失性存储器模块106时,错误检测与校正电路256会对每(n-m) 个欲被写入的比特都产生对应的m个奇偶校验比特。接下来,存储器控制电路单元104(或存储器管理电路202)会把这n个比特写入至可复写式非易失性存储器模块106。可复写式非易失性存储器模块106是通过改变一个存储单元的临界电压来存储一或多个比特。
图7是根据一范例实施例所示出的根据一个硬决策电压来读取可复写式非易失性存储器模块的范例示意图。
请参照图7,横轴代表存储单元的临界电压,而纵轴代表存储单元个数。例如,图7是表示某一个字符线上各个存储单元的临界电压。在此假设当某一个存储单元的临界电压是落在分布710时,此存储单元所存储的是比特”1”;相反地,若某一个存储单元的临界电压是落在分布720时,此存储单元所存储的是比特”0”。值得一提的是,本范例实施例是以SLC型快闪存储器模块为例,因此临界电压的分布有两种可能。然而,在其他范例实施例中,临界电压的分布可能四种、八种或其他任意个可能,而硬决策(hard decision)电压 702可以在任意两个分布之间。此外,本发明也不限制每一个分布所代表的比特。
在本范例实施例中,当要从可复写式非易失性存储器模块106读取数据时,存储器控制电路单元104(或存储器管理电路202)会发送一读取指令序列至可复写式非易失性存储器模块106。此读取指令序列包括一或多个指令或程序码,并且用以指示根据硬决策电压702来读取多个存储单元所组成的实体程序化单元,以取得多个比特。若某一个存储单元的临界电压小于硬决策电压702,则此存储单元会导通,并且存储器控制电路单元104(或存储器管理电路202)会读到比特”1”。相反地,若某一个存储单元的临界电压大于硬决策电压702,则此存储单元不会导通,并且存储器控制电路单元104(或存储器管理电路202)会读到比特”0”。值得注意的是,分布710与分布720会包含一个重叠区域730。重叠区域730表示有一些存储单元中所存储的应该是比特”1”(属于分布710),但其临界电压大于硬决策电压702;或者,有一些存储单元中所存储的应该是比特”0”(属于分布720),但其临界电压小于硬决策电压702。换言之,所读取的比特中,有部份的比特会有错误。为说明方便,以下将根据硬决策电压而读取出的比特统称为硬比特(hard bits)。
在本范例实施例中,每一个硬比特都有一个相对应的通道信息(channelinformation),其用以指示读取出此硬比特的存储单元的临界电压是落于稳定区或不稳定区。具体而言,若一个硬比特的通道信息指出对应的存储单元的临界电压落于稳定区,表示此硬比特有较大的机率是对的。反之,若一个硬比特的通道信息指出对应的存储单元的临界电压落于不稳定区,则表示此硬比特有较大的机率是错的。例如,在图7的范例实施例中,假设以软决策(soft decision)电压704与706来切割分布710与分布720,则可将分布710与分布 720划分为不稳定区740、稳定区750及稳定区760。不稳定区740是软决策电压704与706之间的区域,稳定区750是软决策电压704左方的区域,并且稳定区760是软决策电压706右方的区域。不稳定区740包含至少部份的重叠区域730。一般来说,若一个存储单元的临界电压落在不稳定区740中,则从此存储单元中读取出的硬比特有较大的机率是错的。然而,若一个存储单元的临界电压落在稳定区750或760中,则从此存储单元中读取出的硬比特有较大的机率是对的。在此范例实施例中,软决策电压704与706是根据硬决策电压702来决定的。其中,软决策电压704是小于硬决策电压702,并且软决策电压706是大于硬决策电压702。在一范例实施例中,一个硬决策电压可以对应至多个软决策电压的组合,且每一个软决策电压的组合可以是记载于一查找表中以供查询与使用。例如,在一个软决策电压的组合中的软决策电压704与706会大于另一个软决策电压的组合中的软决策电压704 与706。在另一范例实施例中,每一次使用的软决策电压则可以是根据硬决策电压702而在一预设电压范围内随机决定的。
在本范例实施例中,一个硬比特的通道信息包括一或多个软比特。存储器控制电路单元104(或存储器管理电路202)可以根据软决策电压来读取存储单元,以获得软比特。在本范例实施例中,用来读取软比特的指令是包含于上述用来读取硬比特的读取指令序列中。因此,每从一个存储单元中读取一个硬比特,就会伴随取得一个相对应的软比特。或者,在另一范例实施例中,用来读取软比特的指令则是实作于另外专用来读取软比特的读取指令序列中,并且此读取指令序列可以在任意时间点被发送。例如,在判定一或多个硬比特发生错误时,才发送此读取指令序列至可复写式非易失性存储器模块 106,从而获得对应的软比特,且不以此为限。
图8是根据一范例实施例所示出的硬比特与软比特对应在SLC型快闪存储器模块的临界电压分布上的范例示意图。
请参照图8,以SLC型快闪存储器模块为例,在下达一读取指令序列至可复写式非易失性存储器模块106之后,对应于每一个被读取的存储单元,可复写式非易失性存储器模块106会回传一个硬比特与相对应的软比特。特别是,本发明并不限制硬比特与软比特的传输顺序与传输时间。例如,在一范例实施例中,可复写式非易失性存储器模块106可以每传送一个硬比特就伴随传送相对应的一个软比特。或者,在另一范例实施例中,可复写式非易失性存储器模块106也可以先传送至少部份的硬比特,在传送相对应的至少部份的软比特等,本发明不加以限制。
如图8所示,在此范例实施例中,若硬比特是“1”并且对应的软比特是“0”,表示对应的存储单元有可能是存储比特“1”,并且此存储单元的临界电压落于稳定区750。当接收到的硬比特是“1”并且对应的软比特是“1”时,表示对应的存储单元有可能是存储比特“1”,并且此存储单元的临界电压落于不稳定区 740。当接收到的硬比特是“0”并且对应的软比特是“1”时,表示对应的存储单元有可能是存储比特“0”,并且此存储单元的临界电压落于不稳定区740。当接收到的硬比特是“0”并且对应的软比特是“0”时,表示对应的存储单元有可能是存储比特“0”,并且此存储单元的临界电压落于稳定区760。此外,在本范例实施例中,软比特是通过将根据软决策电压704与软决策电压706所各别读取出的比特值作异(XOR)操作而获得。然而,在另一范例实施例中,软比特也可以是通过其他的逻辑运算而获得,本发明不加以限制。
图9是根据一范例实施例所示出的MLC型快闪存储器模块的临界电压分布的范例示意图。
请参照图9,以MLC型快闪存储器模块为例,随着不同的临界电压,每一存储单元具有4种存储状态,并且此些存储状态分别地代表"11"、"10"、"00" 与"01"等比特。例如,当某一个存储单元的临界电压是落在分布910时,此存储单元所存储的是比特”11”。当某一个存储单元的临界电压是落在分布 920时,此存储单元所存储的是比特”10”。当某一个存储单元的临界电压是落在分布930时,此存储单元所存储的是比特”00”。当某一个存储单元的临界电压是落在分布940时,此存储单元所存储的是比特”01”。
在此范例实施例中,每一存储单元可存储2个比特。也即,每一个存储状态包括最低有效比特(Least Significant Bit,LSB)以及最高有效比特(Most Significant Bit,MSB),并且LSB与MSB是根据施予至存储单元的不同的硬决策电压而取得。在本范例实施例中,存储状态(即,"11"、"10"、"00"与"01") 中从左侧算起的第1个比特为LSB,而从左侧算起的第2个比特为MSB。在另一范例实施例中,临界电压与存储状态的对应也可是随着临界电压越大而以"11"、"10"、"01"与"00"排列,或是其他排列。此外,在另一范例实施例中,也可定义从左侧算起的第1个比特为MSB,而从左侧算起的第2个比特为 LSB。值得注意的是,在重叠区域950~970中,部分存储单元的临界电压发生重叠,从而有较大的机率导致读取出的LSB或MSB发生错误。
图10与图11是根据一范例实施例所示出的硬比特与软比特对应在MLC 型快闪存储器模块的临界电压分布上的范例示意图。
请参照图10,以MLC型快闪存储器模块为例,当欲读取某一个存储单元的LSB时,根据所施加的硬决策电压1002、软决策电压1004及软决策电压1006,分布910~940会被划分为不稳定区1010、稳定区1020及稳定区1030,并且一个硬比特与相对应的软比特会被取得。其中,此硬比特即是此存储单元的LSB,并且此软比特指示对应于此硬比特,此存储单元的临界电压是落于稳定区或者不稳定区。如图10所示,当硬比特是“1”并且对应的软比特是“0”时,表示对应的存储单元的LSB有可能是“1”,并且此存储单元的临界电压落于稳定区1020。
请参照图11,当欲读取某一个存储单元的MSB时,根据所施加的硬决策电压1102、硬决策电压1104、软决策电压1106、软决策电压1108、软决策电压1110及软决策电压1112,分布910、920、930及940会被划分为不稳定区1120、不稳定区1130、稳定区1140、稳定区1150及稳定区1160,并且一个硬比特与相对应的软比特会被取得。其中,此硬比特即是此存储单元的MSB,并且此软比特指示对应于此硬比特,此存储单元的临界电压落于稳定区或者不稳定区。如图11所示,当硬比特是“0”并且对应的软比特是“1”时,表示对应的存储单元的LSB有可能是“0”,并且此存储单元的临界电压落于不稳定区1120或不稳定区1130。
图12至图14是根据一范例实施例所示出的硬比特与软比特对应在TLC 型快闪存储器模块的临界电压分布上的范例示意图。
请参照图12,以TLC型快闪存储器模块为例,依照不同的临界电压,存储单元具有8种存储状态(即,"111"、"110"、"100"、"101"、"001"、"000"、 "010"与"011"),并且这些存储状态分别对应至分布2210、2220、2230、2240、 2250、2260、2270及2280。每一个存储状态包括3个比特,即从左侧算起之第1个比特的最低有效比特LSB、从左侧算起之第2个比特的中间有效比特 (Center Significant Bit,CSB)以及从左侧算起之第3个比特的最高有效比特 MSB。值得说明的是,此8种存储状态之排列顺序,可依制造商之设计而定,非以本范例之排列方式为限。
当欲读取某一个存储单元的LSB时,根据所施加的硬决策电压1202、硬决策电压1204、软决策电压1206、软决策电压1208、软决策电压1210及软决策电压1212,分布2210、2220、2230、2240、2250、2260、2270及2280 会被划分为不稳定区1220、不稳定区1230、稳定区1240、稳定区1250及稳定区1260,并且一个硬比特与相对应的软比特会被取得。其中,此硬比特即是存储单元的LSB,并且此软比特指示对应于此硬比特,此存储单元的临界电压落于稳定区或者不稳定区。如图12所示,当硬比特是“1”并且对应的软比特是“1”时,表示对应的存储单元的LSB有可能是“1”,并且此存储单元的临界电压落于不稳定区1220或不稳定区1230。
请参照图13,当欲读取某一个存储单元的CSB时,根据所施加的硬决策电压1302、硬决策电压1304、硬决策电压1306、软决策电压1308、软决策电压1310、软决策电压1312、软决策电压1314、软决策电压1316及软决策电压1318,分布2210、2220、2230、2240、2250、2260、2270及2280会被划分为不稳定区1320、不稳定区1330、不稳定区1340、稳定区1350、稳定区1360、稳定区1370及稳定区1380,并且一个硬比特与相对应的软比特会被取得。其中,此硬比特即是存储单元的CSB,并且此软比特指示对应于此硬比特,此存储单元的临界电压是落于稳定区或者不稳定区。如图13所示,当硬比特是“0”并且对应的软比特是“1”时,表示对应的存储单元的CSB有可能是“0”,并且此存储单元的临界电压落于不稳定区1320、不稳定区1330或不稳定区1340。
请参照图14,当欲读取某一个存储单元的MSB时,根据所施加的硬决策电压1402、硬决策电压1404、软决策电压1406、软决策电压1408、软决策电压1410及软决策电压1412,分布2210、2220、2230、2240、2250、2260、 2270及2280会被划分为不稳定区1420、不稳定区1430、稳定区1440、稳定区1450及稳定区1460,并且一个硬比特与相对应的软比特会被取得。其中,此硬比特即为此存储单元的MSB,并且此软比特指示对应于此硬比特,此存储单元的临界电压是落于稳定区或者不稳定区。如图14所示,当硬比特是“1”并且对应的软比特是“0”时,表示对应的存储单元的MSB有可能是“1”,并且此存储单元的临界电压落于稳定区1440。值得一提的是,在图7至图14的任一个范例实施例中,软决策电压的值与数量以及软比特的数量,都可以适应性地被增加或减少,本发明不加以限制。换言之,根据软比特,存储器控制电路单元104(或存储器管理电路202)可以概略地得知对应的存储单元的临界电压是落于稳定区或不稳定区。而进一步搭配硬比特,存储器控制电路单元104(或存储器管理电路202)即可更明确地得知对应的存储单元的临界电压是落于哪一个(或多个)稳定区或哪一个(或多个)不稳定区。例如,在图14的范例实施例中,当软比特是0时,表示对应的存储单元的临界电压可能落于稳定区1440、稳定区1450及稳定区1460的其中之一;而若进一步基于对应的硬比特是1,则表示对应的存储单元的临界电压应是落于稳定区1440,而不是稳定区1450或稳定区1460。也即,存储器控制电路单元104(或存储器管理电路202)可以仅依据软比特或者同时依据硬比特与对应的软比特来判定存储单元的临界电压是落于稳定区或不稳定区,本发明不加以限制。
在存储器控制电路单元104(或存储器管理电路202)根据硬决策电压(例如,图7的硬决策电压702)从可复写式非易失性存储器模块106读取上述硬比特以后,这些硬比特会被分成长度为n的一或多个码字。错误检测与校正电路256会解码每一个码字。具体来说,错误检测与校正电路256会先对一个码字中的硬比特执行低密度奇偶校验演算法的奇偶校验以取得多个校验子 (syndrome)。例如,错误检测与校正电路256会将上述的奇偶校验矩阵与一个码字作模2的矩阵相乘,此矩阵相乘可以通过以下方程式(1)表示。
[H][V]=[S]…(1)
H为上述的奇偶校验矩阵。V为一个码字,其维度是n-乘-1。S为一校验向量,其中包括了上述的多个校验子,并且校验向量的维度是m-乘-1。错误检测与校正电路256会根据这些校验子判断码字V中的硬比特是否具有错误。具体来说,若校验向量S中的每一个校验子都是比特”0”,表示码字V中可能没有错误。若校验向量S中有一或多个校验子是比特”1”,则表示码字V 中至少有一个错误。
图15是根据一范例实施例所示出的矩阵相乘的示意图。
请参照图15,奇偶校验矩阵600与码字1510相乘的结果是校验向量 1520。码字1510中的每一个硬比特是对应到校验向量1520中的至少一个校验子。举例来说,码字1510中的第一个硬比特V0(对应至奇偶校验矩阵600 中的第一行)是对应到校验子S0;硬比特V1(对应至奇偶校验矩阵600中的第二行)是对应到校验子S0与校验子S1。若硬比特V0发生了错误,则校验子 S0可能会是比特”1”。若硬比特V1发生了错误,则校验子S0与S1可能会是比特”1”。换言之,若奇偶校验矩阵600中第i列(column)第j行的元素(element) 为”1”,则码字1510中第j个硬比特至少会对应到校验向量1520中第i个校验子,其中i与j为正整数。
若码字1510中的硬比特没有错误,则错误检测与校正电路256会输出码字1510中的硬比特。若码字1510中的硬比特有错误,则错误检测与校正电路256会执行一次迭代运算,以根据码字1510中每一个硬比特的通道信息与对应于每一个硬比特的校验权重信息来更新码字1510。具体而言,错误检测与校正电路256会根据每一个硬比特所对应的校验子来取得对应于每一个硬比特的校验权重信息。举例来说,错误检测与校正电路256可以将对应至同一个硬比特的校验子相加以取得对应于此硬比特的校验权重信息。如图15所示,对应于硬比特V0的校验权重信息等于校验子S0;对应于硬比特V1的校验权重信息等于校验子S0与校验子S1的相加,以此类推。值得注意的是,在此对校验子S0~S2所做的加法是一般的加法,而不是模2的加法。然而,在另一范例实施例中,错误检测与校正电路256也可以将每一个校验子乘上一个权重,并且累加校验子与权重相乘的结果以取得校验权重信息。例如,对应于硬比特V1的校验权重信息会等于W0S0+W1S1,其中权重W0与W1 为实数。错误检测与校正电路256可以根据校验子对应的硬比特的个数来决定权重。例如,校验子S0是对应到5个硬比特,而校验子S1是对应到3个硬比特。因此,错误检测与校正电路256可以将权重W0设定的比权重W1 还要小(或者大)。本发明并不限制如何设定每一个校验子的权重。在另一范例实施例中,错误检测与校正电路256也可以把校验子S0~S2的至少其中之一当作一个函数的输入,并且把此函数的输出当作校验权重信息。此函数可以是线性函数、多项式函数、指数函数或是其他非线性函数,本发明并不在此限。
在取得对应于各个硬比特的校验权重信息之后,错误检测与校正电路256 会判断码字1510中的每一个硬比特所对应的校验权重信息是否符合一权重条件。例如,错误检测与校正电路256会比较每一个硬比特所对应的校验权重信息,并且将数值最大的N个校验权重信息视为符合权重条件的校验权重信息。其中N是正整数。例如,假设N=4,并且错误检测与校正电路256获得对应于硬比特V0~V7的校验权重信息分别是“1”、“2”、“1”、“1”、“2”、“2”、“1”及“2”,则由于硬比特V1、V4、V5及V7所对应的校验权重信息是最大的四个,因此错误检测与校正电路256会将硬比特V1、V4、V5及V7所对应的校验权重信息视为符合权重条件的校验权重信息。然而,若N小于4,则错误检测与校正电路256可以随机或依照其他的规则从硬比特V1、V4、V5 及V7中选择一个~三个作为符合权重条件的校验权重信息所对应的硬比特。接着,假设硬比特V1所对应的校验权重信息(也称为第一校验权重信息)符合此权重条件,则错误检测与校正电路256会进一步判断硬比特V1的通道信息是否符合一通道条件。例如,错误检测与校正电路256会判断对应于硬比特V1的一或多个软比特(也称为第一软比特)是否符合一第一状态。若第一软比特符合第一状态,则错误检测与校正电路256会判定硬比特V1的通道信息符合通道条件。反之,若第一软比特不符合第一状态,则错误检测与校正电路256会判定硬比特V1的通道信息不符合通道条件。
例如,假设第一软比特只有一个比特,则错误检测与校正电路256可以判断第一软比特是否是一第一值。接续于前述图7至图14的范例实施例,此第一值例如是“1”,而用以表示硬比特V1所对应的存储单元的临界电压是落于不稳定区。若第一软比特是第一值,则错误检测与校正电路256会判定第一软比特符合第一状态。反之,若第一软比特不是第一值,则错误检测与校正电路256会判定第一软比特不符合第一状态。例如,接续于前述图7至图14的范例实施例,若对应于硬比特V1的第一软比特的值是“0”,则表示硬比特V1所对应的存储单元的临界电压是落于稳定区,并且错误检测与校正电路256会判定第一软比特不符合第一状态。此外,若第一软比特包括多个比特,则此第一状态可用以限定第一软比特的各个比特的状态。例如,当第一软比特包括3个比特时,则此第一状态可以是“111”,且不限于此。
若硬比特V1的通道信息符合通道条件,错误检测与校正电路256会更新硬比特V1。例如,将硬比特V1由“0”更新成“1”,或者将硬比特V1由“1”更新成“0”。反之,若硬比特V1的通道信息不符合通道条件,则错误检测与校正电路256不会更新硬比特V1。在一范例实施例中,此更新硬比特的操作也可称为比特翻转(bit flipping)。
此外,在一范例实施例中,若码字1510中的硬比特有错误,错误检测与校正电路256也可以仅根据码字1510中各个硬比特的通道信息来决定要更新码字1510中的哪一个硬比特。例如,错误检测与校正电路256会检查码字 1510中各个硬比特的通道信息是否符合上述通道条件,并且仅更新通道信息符合上述通道条件的硬比特。藉此,可减少运算量,加快每一次迭代运算的速度。
在将码字1510中需要更新的硬比特都更新之后,错误检测与校正电路 256会重新对更新后的码字1510中的硬比特执行上述奇偶校验程序,以重新取得上述校验子,并且根据重新取得的校验子判断更新后的码字1510中的硬比特是否仍具有至少一错误。若更新后的码字1510中的硬比特仍具有错误,则错误检测与校正电路256会再次执行上述根据码字1510中每一个硬比特的通道信息与对应于每一个硬比特的校验权重信息来更新此些硬比特的操作。反之,若更新后的码字1510中的硬比特不具有错误,则错误检测与校正电路 256会输出更新后的码字1510中的硬比特。
在一范例实施例中,若错误检测与校正电路256判定码字1510中存在错误,则错误检测与校正电路256会计数一迭代次数,例如,将迭代次数加1,并且判断计数后的迭代次数是否达到一中止次数。在此,中止次数例如是30 次或者更多或更少。若计数后的迭代次数达到中止次数,则错误检测与校正电路256会判定解码失败,并且停止解码。若计数后的迭代次数没有达到中止次数,则错误检测与校正电路256会执行上述根据码字1510中每一个硬比特的通道信息与对应于每一个硬比特的校验权重信息来更新此些硬比特的操作。
在一范例实施例中,错误检测与校正电路256还会判断计数后的迭代次数是否达到一预设次数。其中,此预设次数少于上述中止次数,并且例如是 20次或者更多或更少。若计数后的迭代次数没有达到预设次数,错误检测与校正电路256会将上述通道条件设定为一第一通道条件。若计数后的迭代次数达到预设次数,错误检测与校正电路256会将上述通道条件设定为一第二通道条件。其中,第一通道条件与第二通道条件不相同。举例来说,在图8 的范例实施例中,假设在前20次的迭代运算中,某一个硬比特所对应的软比特是“0”,因此此硬比特没有被更新过。在经过20次的迭代运算之后,若错误检测与校正电路256仍无法获得正确的码字,则错误检测与校正电路256 会放宽通道条件,而可以更新此硬比特,从而提升获得正确码字的机率。
图16是根据一范例实施例所示出的硬比特与软比特对应在SLC型快闪存储器模块的临界电压分布上的范例示意图。
请参照图16,在此范例实施例中,每一个硬比特的通道信息包括多个软比特。这些软比特具有多个状态。根据这些软比特的不同状态,此硬比特所对应的存储单元的临界电压可以被更详细的归类至多个层级的其中之一。如图16所示,当欲读取某一个存储单元时,根据所施予的硬决策电压1602、软决策电压1604、软决策电压1606、软决策电压1608、软决策电压1610、软决策电压1612及软决策电压1614,分布710与720会被划分为不稳定区1620、稳定区1630、稳定区1640、稳定区1650、稳定区1660、稳定区1670 及稳定区1680,并且一个硬比特与相对应的软比特(1)~软比特(3)会被取得。其中,软比特(1)是根据软决策电压1604与软决策电压1606所各别读取出的比特值作异操作而获得;软比特(2)是根据软决策电压1608与软决策电压1610 所各别读取出的比特值作异操作而获得;软比特(3)是根据软决策电压1612 与软决策电压1614所各别读取出的比特值作异操作而获得。例如,若软比特(1)~软比特(3)的状态是“111”,表示此硬比特所对应的存储单元的临界电压落于不稳定区1620;若硬比特是“0”且软比特(1)~软比特(3)的状态是“011”,表示此硬比特所对应的存储单元的临界电压落于稳定区1640,以此类推。换言之,若一个硬比特所对应的软比特(1)~软比特(3)的状态是“000”,则表示此硬比特发生错误的机率最小。若一个硬比特所对应的软比特(1)~软比特(3)的状态是“001”或“011”,则表示此硬比特发生错误的机率逐渐升高。若一个硬比特所对应的软比特(1)~软比特(3)的状态是“111”,则表示此硬比特发生错误的机率最高。然而,在另一范例实施例中,若不对读取出的软比特作异等逻辑操作或者增减所执行的逻辑操作,则通道信息所包括的软比特的数量可以是更多或更少。
在此范例实施例中,假设在第1次至第P次的迭代运算中,预设的通道条件是:软比特(1)~软比特(3)的状态是“111”。在第1次至第P次的迭代运算中,即使对应于某一硬比特的校验权重信息符合权重条件,只要此硬比特所对应的软比特(1)~软比特(3)的状态不是“111”,则此硬比特就不会被更新。在第P次的迭代运算之后,通道条件变更为:软比特(1)~软比特(3)的状态是“011”。因此,在第P次的迭代运算之后,若某一硬比特的校验权重信息符合权重条件,且对应于此硬比特的软比特(1)~软比特(3)符合此变更后的通道条件,则此硬比特就可以被更新,从而提升获得正确的码字的机率。此外,也可设定在第P+1次至第Q次的迭代运算中,通道条件是:软比特(1)~软比特 (3)的状态是“001”,在第Q+1次至第R次的迭代运算中,通道条件是:没有条件,或者加以变化。其中,P、Q及R是正整数,且R>Q>P。此外,在一范例实施例中,也可将通道条件设定为:始终是软比特(1)~软比特(3)的状态是“111”或者始终是没有条件等等,而不会随迭代次数增加而变更。
值得一提的是,硬比特的通道信息不一定是通过软决策电压读取存储单元而获得。在一范例实施例中,存储器控制电路单元104(或存储器管理电路 202)也可以根据不同的硬决策电压来读取某一个存储单元的读取结果,得知此存储单元的临界电压是落于稳定区或不稳定区,进而决定从此存储单元中读取出的硬比特的通道信息。
具体而言,以图15为例,在一范例实施例中,假设存储器控制电路单元 104(或存储器管理电路202)起初不知道组成上述实体程序化单元的各个存储单元的临界电压是落于稳定区或不稳定区,因此,在取得码字1510中的硬比特之后,存储器控制电路单元104(或存储器管理电路202)可以将码字1510 中各个硬比特的通道信息都视为符合通道条件,并且根据对应于各个硬比特的校验权重信息来更新码字1510中需要更新的硬比特。之后,若解码失败,存储器控制电路单元104(或存储器管理电路202)会查询一查找表或者通过稍微增加或减少此硬决策电压(即,旧的硬决策电压)以取得至少一新的硬决策电压,并发送一新的读取指令序列至可复写式非易失性存储器模块106。此新的读取指令序列包括一或多个指令或程序码,并且用以指示根据新的硬决策电压来读取上述存储单元,以取得多个新的硬比特。然后,存储器控制电路单元104(或存储器管理电路202)会比较根据旧的硬决策电压从某一个存储单元读取出的硬比特与根据新的硬决策电压从此存储单元读取出的新的硬比特是否相同。若相同,表示此存储单元的临界电压是落于稳定区;若不相同,表示此存储单元的临界电压是落于不稳定区。存储器控制电路单元104(或存储器管理电路202)可以根据此存储单元的临界电压是落于稳定区或不稳定区来决定此新的硬比特的通道信息。例如,当判定此存储单元的临界电压是落于稳定区时,存储器控制电路单元104(或存储器管理电路202)可以设定此新的硬比特所对应的软比特是“0”;当判定此存储单元的临界电压是落于不稳定区时,存储器控制电路单元104(或存储器管理电路202)可以设定此新的硬比特所对应的软比特是“1”等,且不限于此。或者,在使用一特定数量的多个硬决策电压来读取上述存储单元之后,存储器控制电路单元104(或存储器管理电路202)也可以将读取出的硬比特的变化次数(包括从“0”变“1”以及从“1”变“0”)超过一特定次数的存储单元的临界电压判定为落于不稳定区,反之则判定为落于稳定区。此外,这种根据硬比特的变化程度来决定硬比特的通道信息的方式也可以搭配上述软决策电压所取得的软比特来使用,本发明不加以限制。
值得一提的是,在上述各个范例实施例中,稳定区也可以命名为高信赖度(highreliable)区或具有类似涵义的名称,并且不稳定区也可以命名为低信赖度(lowreliable)区或具有类似涵义的名称,或者以分层级的方式来命名。例如,在图16的范例实施例中,也可以将区域1620命名为最低稳定度(信赖度)区、将区域1630与区域1640命名为次低稳定度(信赖度)区、将区域1650与区域 1660命名为次高稳定度(信赖度)区、并且将区域1670与区域1680命名为最高稳定度(信赖度)区等等,且不限于此。
图17是根据一范例实施例所示出的解码方法的流程图。
请参照图17,在步骤S1702中,根据至少一硬决策电压读取所述存储单元,以取得至少一硬比特。
在步骤S1704中,对所述硬比特执行奇偶校验程序,以取得多个校验子,其中每一所述硬比特是对应至所述校验子的至少其中之一。
在步骤S1706中,根据所述校验子判断所述硬比特是否具有至少一错误。
若所述硬比特具有所述错误,在步骤S1708中,根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特。之后,重复执行步骤S1704。
若所述硬比特不具有所述错误,在步骤S1710中,输出所述硬比特。
图18是根据另一范例实施例所示出的解码方法的流程图。
请参照图18,在步骤S1802中,根据至少一硬决策电压读取所述存储单元,以取得至少一硬比特。
在步骤S1804中,对所述硬比特执行奇偶校验程序,以取得多个校验子,其中每一所述硬比特是对应至所述校验子的至少其中之一。
在步骤S1806中,根据所述校验子判断所述硬比特是否具有至少一错误。
若所述硬比特不具有所述错误,在步骤S1808中,输出所述硬比特。
若所述硬比特具有所述错误,在步骤S1810中,计数一迭代次数,并且在步骤S1812中,判断迭代次数是否达到中止次数。
若迭代次数已达到中止次数,在步骤S1814中,判定解码失败。
若迭代次数没有达到中止次数,在步骤S1816中,判断迭代次数是否达到预设次数。在此,预设次数会小于中止次数。
若迭代次数没有达到预设次数,在步骤S1818中,将通道条件设定为第一通道条件。若当时的通道条件已经是第一通道条件,则步骤S1818也可略过。
若迭代次数已达到预设次数,在步骤S1820中,将通道条件设定为第二通道条件。
在步骤S1822中,根据所述硬比特的通道信息与对应于所述硬比特的校验权重信息来更新所述硬比特。之后,重复执行步骤S1804。
在一范例实施例中,在步骤S1814中,还会判断解码失败的次数是否达到一特定次数。若尚未达到此特定次数,步骤S1802会被重复执行。例如,存储器控制电路单元104(或存储器管理电路202)会下达另一读取指令序列至可复写式非易失性存储器模块106,以根据与前一次使用的硬决策电压不相同的另一硬决策电压来读取所述存储单元,并且再次取得至少一硬比特。之后,步骤S1804与步骤S1806等会被依序执行。反之,若解码失败的次数已达到此特定次数,则此次的解码程序会被停止。
然而,图17与图18中各步骤已详细说明如上,在此便不在赘述。值得注意的是,图17与图18中各步骤可以实作为多个程序码或是电路,本发明并不在此限。此外,图17与图18的方法可以搭配以上实施例使用,也可以单独使用,本发明并不在此限。
综上所述,本发明一范例实施例的解码方法、存储器存储装置及存储器控制电路单元,在进行错误更正时是采用比特翻转,并且搭配与存储单元的临界电压有关的通道信息来辅助确认要被翻转的比特,从而可有效提升解码效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (24)
1.一种解码方法,用于一可复写式非易失性存储器模块,其特征在于,该可复写式非易失性存储器模块包括多个存储单元,该解码方法包括:
根据至少一硬决策电压读取该些存储单元,以取得至少一硬比特;
对该至少一硬比特执行一奇偶校验程序,以取得多个校验子,其中每一该至少一硬比特是对应至该些校验子的至少其中之一;
根据该些校验子判断该至少一硬比特是否具有至少一错误;
若该至少一硬比特具有该至少一错误,根据该至少一硬比特的一通道信息与对应于该至少一硬比特的一校验权重信息来更新该至少一硬比特;以及
若该至少一硬比特不具有该至少一错误,输出该至少一硬比特。
2.根据权利要求1所述的解码方法,其特征在于,该至少一硬比特包括一第一硬比特,
若该至少一硬比特具有该至少一错误,根据该至少一硬比特的该通道信息与对应于该至少一硬比特的该校验权重信息来更新该至少一硬比特的步骤包括:
判断所述校验权重信息中对应于该第一硬比特的一第一校验权重信息是否符合一权重条件;
若该第一校验权重信息符合该权重条件,判断该第一硬比特的该通道信息是否符合一通道条件;
若该第一硬比特的该通道信息符合该通道条件,更新该第一硬比特;以及
若该第一硬比特的该通道信息不符合该通道条件,不更新该第一硬比特。
3.根据权利要求2所述的解码方法,其特征在于,该第一硬比特的该通道信息包括至少一第一软比特,并且判断该第一硬比特的该通道信息是否符合该通道条件的步骤包括:
判断该至少一第一软比特是否符合一第一状态;
若该至少一第一软比特符合该第一状态,判定该第一硬比特的该通道信息符合该通道条件;以及
若该至少一第一软比特不符合该第一状态,判定该第一硬比特的该通道信息不符合该通道条件。
4.根据权利要求2所述的解码方法,其特征在于,若该至少一硬比特具有该至少一错误,该解码方法还包括:
计数一迭代次数;
判断该迭代次数是否达到一预设次数;
若该迭代次数没有达到该预设次数,设定该通道条件为一第一通道条件;以及
若该迭代次数达到该预设次数,设定该通道条件为一第二通道条件,其中该第一通道条件与该第二通道条件不相同。
5.根据权利要求1所述的解码方法,其特征在于,还包括:
根据至少一软决策电压读取该些存储单元,以取得该至少一硬比特的该通道信息。
6.根据权利要求5所述的解码方法,其特征在于,该至少一硬决策电压包括一第一硬决策电压,该至少一软决策电压包括一第一软决策电压与一第二软决策电压,该第一软决策电压小于该第一硬决策电压,并且该第二软决策电压大于该第一硬决策电压。
7.根据权利要求1所述的解码方法,其特征在于,还包括:
若解码失败,根据至少一新的硬决策电压读取该些存储单元,以取得至少一新的硬比特;以及
根据该至少一硬比特与该至少一新的硬比特,决定该至少一新的硬比特的该通道信息。
8.根据权利要求1所述的解码方法,其特征在于,若该至少一硬比特具有该至少一错误,该解码方法还包括:
计数一迭代次数;
判断该迭代次数是否达到一中止次数;
若该迭代次数达到该中止次数,判定解码失败;以及
若该迭代次数没有达到该中止次数,对更新后的该至少一硬比特执行该奇偶校验程序,以重新取得该些校验子,并且根据重新取得的该些校验子判断更新后的该至少一硬比特是否具有该至少一错误。
9.一种存储器存储装置,其特征在于,包括:
一连接接口单元,用以电连接至一主机系统;
一可复写式非易失性存储器模块,包括多个存储单元;以及
一存储器控制电路单元,电连接至该连接接口单元与该可复写式非易失性存储器模块,
其中该存储器控制电路单元用以根据至少一硬决策电压读取该些存储单元,以取得至少一硬比特,
该存储器控制电路单元还用以对该至少一硬比特执行一奇偶校验程序,以取得多个校验子,其中每一该至少一硬比特是对应至该些校验子的至少其中之一,
该存储器控制电路单元还用以根据该些校验子判断该至少一硬比特是否具有至少一错误,
若该至少一硬比特具有该至少一错误,该存储器控制电路单元还用以根据该至少一硬比特的一通道信息与对应于该至少一硬比特的一校验权重信息来更新该至少一硬比特,
若该至少一硬比特不具有该至少一错误,该存储器控制电路单元还用以输出该至少一硬比特。
10.根据权利要求9所述的存储器存储装置,其特征在于,该至少一硬比特包括一第一硬比特,
若该至少一硬比特具有该至少一错误,该存储器控制电路单元根据该至少一硬比特的该通道信息与对应于该至少一硬比特的该校验权重信息来更新该至少一硬比特的操作包括:
判断所述校验权重信息中对应于该第一硬比特的一第一校验权重信息是否符合一权重条件;
若该第一校验权重信息符合该权重条件,判断该第一硬比特的该通道信息是否符合一通道条件;
若该第一硬比特的该通道信息符合该通道条件,更新该第一硬比特;以及
若该第一硬比特的该通道信息不符合该通道条件,不更新该第一硬比特。
11.根据权利要求10所述的存储器存储装置,其特征在于,该第一硬比特的该通道信息包括至少一第一软比特,并且该存储器控制电路单元判断该第一硬比特的该通道信息是否符合该通道条件的操作包括:
判断该至少一第一软比特是否符合一第一状态;
若该至少一第一软比特符合该第一状态,判定该第一硬比特的该通道信息符合该通道条件;以及
若该至少一第一软比特不符合该第一状态,判定该第一硬比特的该通道信息不符合该通道条件。
12.根据权利要求10所述的存储器存储装置,其特征在于,若该至少一硬比特具有该至少一错误,该存储器控制电路单元还用以计数一迭代次数,
该存储器控制电路单元还用以判断该迭代次数是否达到一预设次数,
若该迭代次数没有达到该预设次数,该存储器控制电路单元还用以设定该通道条件为一第一通道条件,
若该迭代次数达到该预设次数,该存储器控制电路单元还用以设定该通道条件为一第二通道条件,其中该第一通道条件与该第二通道条件不相同。
13.根据权利要求9所述的存储器存储装置,其特征在于,该存储器控制电路单元还用以根据至少一软决策电压读取该些存储单元,以取得该至少一硬比特的该通道信息。
14.根据权利要求13所述的存储器存储装置,其特征在于,该至少一硬决策电压包括一第一硬决策电压,该些软决策电压包括一第一软决策电压与一第二软决策电压,该第一软决策电压小于该第一硬决策电压,并且该第二软决策电压大于该第一硬决策电压。
15.根据权利要求9所述的存储器存储装置,其特征在于,若解码失败,该存储器控制电路单元还用以根据至少一新的硬决策电压读取该些存储单元,以取得至少一新的硬比特,
该存储器控制电路单元还用以根据该至少一硬比特与该至少一新的硬比特,决定该至少一新的硬比特的该通道信息。
16.根据权利要求9所述的存储器存储装置,其特征在于,若该至少一硬比特具有该至少一错误,该存储器控制电路单元还用以计数一迭代次数,
该存储器控制电路单元还用以判断该迭代次数是否达到一中止次数,
若该迭代次数达到该中止次数,该存储器控制电路单元还用以判定解码失败,
若该迭代次数没有达到该中止次数,该存储器控制电路单元还用以对更新后的该至少一硬比特执行该奇偶校验程序,以重新取得该些校验子,并且根据重新取得的该些校验子判断更新后的该至少一硬比特是否具有该至少一错误。
17.一种存储器控制电路单元,用于一可复写式非易失性存储器模块,其特征在于,该可复写式非易失性存储器模块包括多个存储单元,该存储器控制电路单元包括:
一主机接口,用以电连接至一主机系统;
一存储器接口,用以电连接至该可复写式非易失性存储器模块;
一错误检测与校正电路;以及
一存储器管理电路,电连接至该主机接口、该存储器接口及该错误检测与校正电路,
其中该存储器管理电路用以发送一读取指令序列,其中该读取指令序列用以指示根据至少一硬决策电压读取该些存储单元,以取得至少一硬比特,
该错误检测与校正电路用以对该至少一硬比特执行一奇偶校验程序,以取得多个校验子,其中每一该至少一硬比特是对应至该些校验子的至少其中之一,
该错误检测与校正电路还用以根据该些校验子判断该至少一硬比特是否具有至少一错误,
若该至少一硬比特具有该至少一错误,该错误检测与校正电路还用以根据该至少一硬比特的一通道信息与对应于该至少一硬比特的一校验权重信息来更新该至少一硬比特,
若该至少一硬比特不具有该至少一错误,该存储器管理电路还用以输出该至少一硬比特。
18.根据权利要求17所述的存储器控制电路单元,其特征在于,该至少一硬比特包括一第一硬比特,
若该至少一硬比特具有该至少一错误,该错误检测与校正电路根据该至少一硬比特的该通道信息与对应于该至少一硬比特的该校验权重信息来更新该至少一硬比特的操作包括:
判断所述校验权重信息中对应于该第一硬比特的一第一校验权重信息是否符合一权重条件;
若该第一校验权重信息符合该权重条件,判断该第一硬比特的该通道信息是否符合一通道条件;
若该第一硬比特的该通道信息符合该通道条件,更新该第一硬比特;以及
若该第一硬比特的该通道信息不符合该通道条件,不更新该第一硬比特。
19.根据权利要求18所述的存储器控制电路单元,其特征在于,该第一硬比特的该通道信息包括至少一第一软比特,并且该错误检测与校正电路判断该第一硬比特的该通道信息是否符合该通道条件的操作包括:
判断该至少一第一软比特是否符合一第一状态;
若该至少一第一软比特符合该第一状态,判定该第一硬比特的该通道信息符合该通道条件;以及
若该至少一第一软比特不符合该第一状态,判定该第一硬比特的该通道信息不符合该通道条件。
20.根据权利要求18所述的存储器控制电路单元,其特征在于,若该至少一硬比特具有该至少一错误,该错误检测与校正电路还用以计数一迭代次数,
该错误检测与校正电路还用以判断该迭代次数是否达到一预设次数,
若该迭代次数没有达到该预设次数,该错误检测与校正电路还用以设定该通道条件为一第一通道条件,
若该迭代次数达到该预设次数,该错误检测与校正电路还用以设定该通道条件为一第二通道条件,其中该第一通道条件与该第二通道条件不相同。
21.根据权利要求17所述的存储器控制电路单元,其特征在于,该读取指令序列还用以指示根据至少一软决策电压读取该些存储单元,以取得该至少一硬比特的该通道信息。
22.根据权利要求21所述的存储器控制电路单元,其特征在于,该至少一硬决策电压包括一第一硬决策电压,该些软决策电压包括一第一软决策电压与一第二软决策电压,该第一软决策电压小于该第一硬决策电压,并且该第二软决策电压大于该第一硬决策电压。
23.根据权利要求17所述的存储器控制电路单元,其特征在于,若解码失败,该存储器管理电路还用以发送一新的读取指令序列,其中该新的读取指令序列用以指示根据至少一新的硬决策电压读取该些存储单元,以取得至少一新的硬比特,
该存储器管理电路还用以根据该至少一硬比特与该至少一新的硬比特,决定该至少一新的硬比特的该通道信息。
24.根据权利要求17所述的存储器控制电路单元,其特征在于,若该至少一硬比特具有该至少一错误,该错误检测与校正电路还用以计数一迭代次数,
该错误检测与校正电路还用以判断该迭代次数是否达到一中止次数,
若该迭代次数达到该中止次数,该错误检测与校正电路还用以判定解码失败,
若该迭代次数没有达到该中止次数,该错误检测与校正电路还用以对更新后的该至少一硬比特执行该奇偶校验程序,以重新取得该些校验子,并且根据重新取得的该些校验子判断更新后的该至少一硬比特是否具有该至少一错误。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410164195.3A CN105023613B (zh) | 2014-04-22 | 2014-04-22 | 解码方法、存储器存储装置及存储器控制电路单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410164195.3A CN105023613B (zh) | 2014-04-22 | 2014-04-22 | 解码方法、存储器存储装置及存储器控制电路单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105023613A CN105023613A (zh) | 2015-11-04 |
CN105023613B true CN105023613B (zh) | 2019-06-14 |
Family
ID=54413517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410164195.3A Active CN105023613B (zh) | 2014-04-22 | 2014-04-22 | 解码方法、存储器存储装置及存储器控制电路单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105023613B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107179960B (zh) * | 2016-03-09 | 2020-05-26 | 群联电子股份有限公司 | 解码方法、存储器控制电路单元及存储器存储装置 |
US9904594B2 (en) * | 2016-04-15 | 2018-02-27 | Micron Technology, Inc. | Monitoring error correction operations performed in memory |
CN107436820B (zh) * | 2016-05-27 | 2020-07-17 | 深圳大心电子科技有限公司 | 解码方法、存储器存储装置及存储器控制电路单元 |
CN106027072B (zh) * | 2016-05-30 | 2021-11-16 | 联想(北京)有限公司 | 一种译码处理方法及电子设备 |
TWI631830B (zh) * | 2016-12-30 | 2018-08-01 | 慧榮科技股份有限公司 | 解碼方法與相關解碼裝置 |
US11146291B2 (en) * | 2020-03-02 | 2021-10-12 | Micron Technology, Inc. | Configuring iterative error correction parameters using criteria from previous iterations |
US11048443B1 (en) * | 2020-03-25 | 2021-06-29 | Sandisk Technologies Llc | Non-volatile memory interface |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102623067A (zh) * | 2011-01-28 | 2012-08-01 | 马维尔国际贸易有限公司 | 用于基于闪存的存储器系统的软解码系统和方法 |
CN102985975A (zh) * | 2010-03-12 | 2013-03-20 | Lsi公司 | 闪存的低密度奇偶校验擦除译码 |
CN103186352A (zh) * | 2011-12-30 | 2013-07-03 | 三星电子株式会社 | 从存储设备读取数据的方法、纠错设备和存储系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7966550B2 (en) * | 2007-03-31 | 2011-06-21 | Sandisk Technologies Inc. | Soft bit data transmission for error correction control in non-volatile memory |
US8644067B2 (en) * | 2011-11-30 | 2014-02-04 | Sandisk Technologies Inc. | Systems and methods of decoding data using soft bits at a non-binary decoder that uses probabilistic decoding |
US9177664B2 (en) * | 2012-02-22 | 2015-11-03 | Silicon Motion, Inc. | Method, memory controller and system for reading data stored in flash memory |
-
2014
- 2014-04-22 CN CN201410164195.3A patent/CN105023613B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102985975A (zh) * | 2010-03-12 | 2013-03-20 | Lsi公司 | 闪存的低密度奇偶校验擦除译码 |
CN102623067A (zh) * | 2011-01-28 | 2012-08-01 | 马维尔国际贸易有限公司 | 用于基于闪存的存储器系统的软解码系统和方法 |
CN103186352A (zh) * | 2011-12-30 | 2013-07-03 | 三星电子株式会社 | 从存储设备读取数据的方法、纠错设备和存储系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105023613A (zh) | 2015-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105023613B (zh) | 解码方法、存储器存储装置及存储器控制电路单元 | |
US9583217B2 (en) | Decoding method, memory storage device and memory control circuit unit | |
US20190252035A1 (en) | Decoding method, memory storage device and memory control circuit unit | |
US9543983B2 (en) | Decoding method, memory storage device and memory control circuit unit | |
US9471421B2 (en) | Data accessing method, memory storage device and memory controlling circuit unit | |
CN105468292B (zh) | 数据存取方法、存储器储存装置及存储器控制电路单元 | |
CN102543196B (zh) | 数据读取方法、存储器储存装置及其控制器 | |
CN104733051B (zh) | 奇偶校验码的解码方法、存储器储存装置及控制电路单元 | |
CN105022674B (zh) | 解码方法、存储器存储装置、存储器控制电路单元 | |
CN112241333B (zh) | 用于存储器系统的编码器及其方法 | |
CN106158040A (zh) | 读取电压准位估测方法、存储器存储装置及控制电路单元 | |
CN105304142B (zh) | 解码方法、存储器存储装置及存储器控制电路单元 | |
CN103631670A (zh) | 存储器储存装置、存储器控制器与数据处理方法 | |
CN104424045B (zh) | 解码方法、存储器储存装置与非易失性存储器模块 | |
CN106297883A (zh) | 解码方法、存储器存储装置及存储器控制电路单元 | |
CN104182293B (zh) | 数据写入方法、存储器存储装置与存储器控制器 | |
CN104252317A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
CN104778975B (zh) | 译码方法、存储器存储装置、存储器控制电路单元 | |
CN109901784A (zh) | 数据存取方法、存储器控制电路单元以及存储器储存装置 | |
US10884858B2 (en) | LDPC decoding device, memory system including the same and method thereof | |
CN105304143A (zh) | 解码方法、存储器控制电路单元及存储器存储装置 | |
CN111796774B (zh) | 存储器控制方法、存储器存储装置及存储器控制器 | |
CN107025935A (zh) | 译码方法、内存储存装置及内存控制电路单元 | |
CN105426113B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN111258791B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |