控制器、半导体存储系统、数据储存系统及其操作方法

文档序号:9766631阅读:294来源:国知局
控制器、半导体存储系统、数据储存系统及其操作方法
【专利说明】控制器、半导体存储系统、数据储存系统及其操作方法
[0001]相关申请的交叉引用
[0002]本申请要求在2014年10月21日提交的韩国专利申请N0.10-2014-0142355的优先权,其整体内容通过引用合并于此。
技术领域
[0003]本发明的各种示范实施例涉及半导体设计技术,尤其涉及控制器、半导体存储系统、数据储存系统及其操作方法。
【背景技术】
[0004]半导体存储器件一般分成易失性存储器件,例如动态随机存取存储器(DRAM,Dynamic Random Access Memory)和静态 RAM (SRAM,Static Random Access Memory),以及非易失性存储器件,例如只读存储器(ROM,Read Only Memory)、屏蔽ROM(MROM)、可编程ROM (PROM)、可擦除 PROM (EPROM)、电 EPROM (EEPROM)、铁磁 RAM (FRAM)、相变 RAM (PRAM)、磁RAM (MRAM)、电阻 RAM (RRAM)以及闪存。
[0005]易失性存储器件会在电力中断时遗失储存的数据,而非易失性存储器件则可以在电源中断时仍保留储存的数据。尤其是,由于闪存器件的高编程速度、低功耗以及大数据储存容量,因此被广泛用作计算机系统中的储存媒介。
[0006]在非易失性存储器件中,尤其是闪存器件,每一存储单元中可储存的数据状态都根据存储单元中所储存位数来确定,每单元储存I位数据的存储单元称为单比特位单元或单电平单元(single-level cell,SLC),每单元储存多位数据(即是2或更多位数据)的存储单元称为多比特位单元、多电平单元(mult1-level cel I, MLC)或多状态单元。多比特位单元的优点在于高集成化,然而随着每一存储单元中编程的位数增大,可靠性会下降并且读取错误率提高,
[0007]例如:当要在存储单元中编程k位时,在存储单元中会形成2k个阈值电压中之一。由于存储单元的电气特性间的些微差异,因此使用相同数据编程的存储单元的阈值电压形成阈值电压分布。对应于2kf数据值的阈值电压分布分别对应于k位信息。
[0008]然而,可用于阈值电压分布的电压窗口受到限制。因此随着k值增大,阈值电压分布之间的距离缩短,并且相邻阈值电压分布彼此重叠。当相邻的阈值电压分布彼此重叠,读取数据可能包括几个或几十个错误位。
[0009]图1为示意性例示3位多电平单元(3位MLC)非易失性存储器件的编程与擦除状态的阈值电压分布。
[0010]图2为示意性例示由于3位MLC非易失性存储器件特性退化下的编程与擦除状态的阈值电压分布。
[0011]在MLC非易失性存储器件中,例如其中在存储单元中编程k位数据的MLC闪存器件,存储单元具有2kf阈值电压分布中之一,例如:3位MLC具有8个阈值电压分布中之一。
[0012]由于存储单元之间的特性差异,所以使用相同数据编程的存储单元的阈值电压会形成阈值电压分布。在3位MLC非易失性存储单元中,如图1中所例示,形成对应于7个编程状态“P1”至“P7”和擦除状态“E”的阈值电压分布。图1显示其中阈值电压分布不重叠并且在其间具有读取电压容限的理想情况。
[0013]请参阅图2的闪存范例,存储单元会因为陷入浮栅或隧穿氧化膜的电子随着时间放电而经历电荷耗损。当隧穿氧化膜迭代编程与擦除操作而劣化时,会加速这种电荷耗损。电荷耗损导致存储单元的阈值电压下降,例如:如图2中所例示,由于电荷耗损,因此阈值电压分布向左位移。
[0014]进一步,编程干扰、擦除干扰及/或背面图案依赖性也会导致阈值电压增大。随着存储单元的特性劣化,如上述,相邻状态的阈值电压分布会重叠,如图2中所例示。
[0015]—旦阈值电压分布重叠,当特定读取电压施大至选取的字线时,读取数据会包括各种错误,例如:当存储单元根据已施大至选取字线的读取电压Vread3的感测状态为导通时,则存储单元被确定为具有第二编程状态“P2”。当存储单元根据已施大至选取字线的读取电压Vread3的感测状态为关断时,则存储单元被确定为具有第三编程状态“P3”。然而,当阈值电压分布重叠时,会将实际上具有第三编程状态“P3”的存储单元错误确定为具有第二编程状态“P2”。总之,当如图2中例示阈值电压分布重叠时,读取数据会包括各种错误。
[0016]因此,需要一种用于精确确定储存在半导体存储器件的存储单元中的数据的最佳读取电压的方案。

【发明内容】

[0017]本发明的各种实施例涉及能够精准确定用于储存在存储单元中的数据的最佳读取电压的控制器、半导体存储系统、数据储存系统及其操作方法。
[0018]依照本发明的实施例,一种控制器的操作方法,包括:根据第一读取电压将第一ECC解码迭代预定迭代次数直到所述第一 ECC解码成功,所述第一 ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(USC,unsatisfied syndrome check)的数量来更新;以及当直至预定的迭代次数而第一 ECC解码仍失败时,则通过根据第一读取电压产生的软决策数据来对码字执行第二 ECC解码,该第一读取电压的值对应于第一 ECC解码迭代期间更新值之中的USC最小数量。
[0019]第一 ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
[0020]USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
[0021]第一 ECC解码的迭代可以包括:根据第一读取电压对从半导体存储器件读取的码字执行第一 ECC解码的第一步骤;基于第一 ECC解码结果中所包括的未满足的故障校验(USC)来确定第一 ECC解码已失败还是已成功的第二步骤;当确定第一 ECC解码已失败时,基于USC的数量来更新第一读取电压的值的第三步骤;以及将第一步骤至第三步骤迭代预定迭代次数直到第一 ECC解码成功的第四步骤。
[0022]第二步骤可以确定在第一步骤至第三步骤的每次迭代当中从第一步骤结果所获得的USC的数量。
[0023]第三步骤可以根据在第一步骤至第三步骤每次迭代当中从第一步骤结果所获得的USC的数量来更新第一读取电压的值。
[0024]第三步骤可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
[0025]第三步骤可以根据底下的等式I来更新第一读取电压的值。
[0026][等式I]
[0027]要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
[0028]该差值(Δ )可以根据等式2来确定。
[0029][等式2]
[0030]Δ = [USC_RDCNT] - [USC_RDCNT_1],其中 USC_RDCNT 代表对应于当前迭代的 USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
[0031]差值(Δ)可以是固定的。
[0032]差值(Δ )的大小可以取决于等式2的大小。
[0033]差值(Δ )为正数或负数取决于等式2呈现出正数或负数。
[0034]依照本发明的实施例,控制器的操作方法可以包括:根据第一读取电压对从半导体存储器件读取的码字执行第一 ECC解码的第一步骤;根据第一 ECC解码结果中所包括的未满足的故障校验(USC)来确定第一 ECC解码已失败还是已成功的第二步骤;当确定第一ECC解码已失败时,根据USC的数量来更新第一读取电压的值的第三步骤;以及将第一步骤至第三步骤迭代预定迭代次数直到第一 ECC解码成功的第四步骤。
[0035]控制器的操作方法可以还包括第五步骤,当直至预定的迭代次数而第一 ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二 ECC解码,该第一读取电压的值对应于第四步骤期间更新值之中的USC最小数量。
[0036]USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
[0037]第二步骤可以确定在第一步骤至第三步骤每次迭代当中从第一步骤结果所获得的USC的数量。
[0038]第三步骤可以根据在第一步骤至第三步骤每次迭代当中从第一步骤结果所获得的USC的数量来更新第一读取电压的值。
[0039]第三步骤可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
[0040]第三步骤可以根据底下的等式I来更新第一读取电压的值。
[0041][等式I]
[0042]要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
[0043]差值(Δ)可以根据底下等式2来确定。
[0044][等式2]
[0045]Δ = [USC_RDCNT] - [USC_RDCNT_1],其中 USC_RDCNT 代表对应于当前迭代的 USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
[0046]差值(Δ)可以是固定的。
[0047]差值(Δ )的大小取决于等式2的大小。
[0048]差值(Δ )为正数或负数取决于等式2呈现出正数或负数。
[0049]根据本发明的实施例,控制器可以包括:器件,用于根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一 ECC解码成功,所述第一 ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(USC,unsatisfied syndrome check)的数量来更新;以及器件,用于:当直至预定的迭代次数而第一 ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二 ECC解码,该第一读取电压的值对应于第一 ECC解码迭代期间更新值之中的USC最小数量。
[0050]第一 ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
[0051]USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
[0052]用于迭代第一 ECC解码的器件可以包括:第一装置,用于:根据第一读取电压对从半导体存储器件读取的码字执行第一 ECC解码;第二装置,用于:基于第一 ECC解码结果中所包括的未满足的故障校验(USC)来确定第一ECC解码已失败还是已成功;以及第三装置,用于:当确定第一 ECC解码已失败时,基于USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一 ECC解码成功。
[0053]第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
[0054]第三装置可以根据在第一装置至第三装置每次迭代当中由第一装置所获得的USC的数量来更新第一读取电压的值。
[0055]第三装置可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
[0056]第三装置可以根据底下的等式I来更新第一读取电压的值。
[0057][等式I]
[0058]要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
[0059]差值(Δ)可以根据底下等式2来确定。
[0060][等式2]
[0061]Δ = [USC_RDCNT] - [USC_RDCNT_1],其中 USC_RDCNT 代表对应于当前迭代的 USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
[0062]差值(Δ)可以是固定的。
[0063]差值(Δ )的大小取决于等式2的大小。
[0064]差值(Δ )为正数或负数取决于等式2呈现出正数或负数。
[0065]根据本发明的实施例,控制器可以包括:第一装置,用于根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;第二装置,用于根据第一 ECC解码结果中所包括的未满足的故障校验(USC)来确定第一 ECC解码已失败还是已成功;以及第三装置,用于当确定第一 ECC解码已失败时根据USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一 ECC解码成功。
[0066]控制器可以还包括第四装置,用于:当直至预定的迭代次数而第一 ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二 ECC解码,该第一读取电压的值对应于第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
[0067]第一 ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
[0068]USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
[0069]第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
[0070]第三装置可以根据在第一装置至第三装置每次迭代当中由第一装置所获得的USC的数量来更新第一读取电压的值。
[0071]第三装置可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
[0072]第三装置可以根据底下的等式I来更新第一读取电压的值。
[0073][等式I]
[0074]要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
[0075]差值(Δ)可以根据底下等式2来确定。
[0076][等式2]
[0077]Δ = [USC_RDCNT] - [USC_RDCNT_1],其中 USC_RDCNT 代表对应于当前迭代的 USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
[0078]差值(Δ)可以是固定的。
[0079]差值(Δ )的大小取决于等式2的大小。
[0080]差值(Δ )为正数或负数取决于等式2呈现出正数或负数。
[0081]根据本发明的实施例,半导体存储系统可以包括:半导体存储器件以及控制器。控制器可以包括:装置,用于:根据第一读取电压将第一 ECC解码迭代预定的迭代次数直到所述第一 ECC解码成功,所述第一 ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(use,unsatisfied syndrome check)的数量来更新;以及装置,用于:当直至预定的迭代次数而第一 ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二 ECC解码,该第一读取电压的值对应于第一 ECC解码迭代期间更新值之中的USC最小数量。
[0082]第一 ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
[0083]USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
[0084]用于迭代第一 ECC解码的装置可以包括:第一装置,用于根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;第二装置,用于根据第一ECC解码结果中所包括的未满足的故障校验(USC)来确定第一 ECC解码已失败还是已成功;以及第三装置,用于当确定第一 ECC解码已失败时根据USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一 ECC解码成功。
[0085]第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
[008
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1