CN105529049B - 控制器、半导体存储系统、数据储存系统及其操作方法 - Google Patents
控制器、半导体存储系统、数据储存系统及其操作方法 Download PDFInfo
- Publication number
- CN105529049B CN105529049B CN201510350141.0A CN201510350141A CN105529049B CN 105529049 B CN105529049 B CN 105529049B CN 201510350141 A CN201510350141 A CN 201510350141A CN 105529049 B CN105529049 B CN 105529049B
- Authority
- CN
- China
- Prior art keywords
- ecc decoding
- read voltage
- decoding
- controller
- uscs
- 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
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1012—Adding 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 codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1108—Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3707—Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
- H03M13/3715—Adaptation to the number of estimated errors or to the channel state
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明揭示一种控制器的操作方法,包括:根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(USC,unsatisfied syndrome check)的数量来更新;以及当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于第一ECC解码迭代期间更新值之中的USC最小数量。
Description
相关申请的交叉引用
本申请要求在2014年10月21日提交的韩国专利申请No.10-2014-0142355的优先权,其整体内容通过引用合并于此。
技术领域
本发明的各种示范实施例涉及半导体设计技术,尤其涉及控制器、半导体存储系统、数据储存系统及其操作方法。
背景技术
半导体存储器件一般分成易失性存储器件,例如动态随机存取存储器(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)以及闪存。
易失性存储器件会在电力中断时遗失储存的数据,而非易失性存储器件则可以在电源中断时仍保留储存的数据。尤其是,由于闪存器件的高编程速度、低功耗以及大数据储存容量,因此被广泛用作计算机系统中的储存媒介。
在非易失性存储器件中,尤其是闪存器件,每一存储单元中可储存的数据状态都根据存储单元中所储存位数来确定,每单元储存1位数据的存储单元称为单比特位单元或单电平单元(single-level cell,SLC),每单元储存多位数据(即是2或更多位数据)的存储单元称为多比特位单元、多电平单元(multi-level cell,MLC)或多状态单元。多比特位单元的优点在于高集成化,然而随着每一存储单元中编程的位数增大,可靠性会下降并且读取错误率提高,
例如:当要在存储单元中编程k位时,在存储单元中会形成2k个阈值电压中之一。由于存储单元的电气特性间的些微差异,因此使用相同数据编程的存储单元的阈值电压形成阈值电压分布。对应于2k个数据值的阈值电压分布分别对应于k位信息。
然而,可用于阈值电压分布的电压窗口受到限制。因此随着k值增大,阈值电压分布之间的距离缩短,并且相邻阈值电压分布彼此重叠。当相邻的阈值电压分布彼此重叠,读取数据可能包括几个或几十个错误位。
图1为示意性例示3位多电平单元(3位MLC)非易失性存储器件的编程与擦除状态的阈值电压分布。
图2为示意性例示由于3位MLC非易失性存储器件特性退化下的编程与擦除状态的阈值电压分布。
在MLC非易失性存储器件中,例如其中在存储单元中编程k位数据的MLC闪存器件,存储单元具有2k个阈值电压分布中之一,例如:3位MLC具有8个阈值电压分布中之一。
由于存储单元之间的特性差异,所以使用相同数据编程的存储单元的阈值电压会形成阈值电压分布。在3位MLC非易失性存储单元中,如图1中所例示,形成对应于7个编程状态“P1”至“P7”和擦除状态“E”的阈值电压分布。图1显示其中阈值电压分布不重叠并且在其间具有读取电压容限的理想情况。
请参阅图2的闪存范例,存储单元会因为陷入浮栅或隧穿氧化膜的电子随着时间放电而经历电荷耗损。当隧穿氧化膜迭代编程与擦除操作而劣化时,会加速这种电荷耗损。电荷耗损导致存储单元的阈值电压下降,例如:如图2中所例示,由于电荷耗损,因此阈值电压分布向左位移。
进一步,编程干扰、擦除干扰及/或背面图案依赖性也会导致阈值电压增大。随着存储单元的特性劣化,如上述,相邻状态的阈值电压分布会重叠,如图2中所例示。
一旦阈值电压分布重叠,当特定读取电压施大至选取的字线时,读取数据会包括各种错误,例如:当存储单元根据已施大至选取字线的读取电压Vread3的感测状态为导通时,则存储单元被确定为具有第二编程状态“P2”。当存储单元根据已施大至选取字线的读取电压Vread3的感测状态为关断时,则存储单元被确定为具有第三编程状态“P3”。然而,当阈值电压分布重叠时,会将实际上具有第三编程状态“P3”的存储单元错误确定为具有第二编程状态“P2”。总之,当如图2中例示阈值电压分布重叠时,读取数据会包括各种错误。
因此,需要一种用于精确确定储存在半导体存储器件的存储单元中的数据的最佳读取电压的方案。
发明内容
本发明的各种实施例涉及能够精准确定用于储存在存储单元中的数据的最佳读取电压的控制器、半导体存储系统、数据储存系统及其操作方法。
依照本发明的实施例,一种控制器的操作方法,包括:根据第一读取电压将第一ECC解码迭代预定迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(USC,unsatisfied syndrome check)的数量来更新;以及当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压产生的软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于第一ECC解码迭代期间更新值之中的USC最小数量。
第一ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
第一ECC解码的迭代可以包括:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码的第一步骤;基于第一ECC解码结果中所包括的未满足的故障校验(USC)来确定第一ECC解码已失败还是已成功的第二步骤;当确定第一ECC解码已失败时,基于USC的数量来更新第一读取电压的值的第三步骤;以及将第一步骤至第三步骤迭代预定迭代次数直到第一ECC解码成功的第四步骤。
第二步骤可以确定在第一步骤至第三步骤的每次迭代当中从第一步骤结果所获得的USC的数量。
第三步骤可以根据在第一步骤至第三步骤每次迭代当中从第一步骤结果所获得的USC的数量来更新第一读取电压的值。
第三步骤可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
第三步骤可以根据底下的等式1来更新第一读取电压的值。
[等式1]
要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
该差值(Δ)可以根据等式2来确定。
[等式2]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中USC_RDCNT代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
差值(Δ)可以是固定的。
差值(Δ)的大小可以取决于等式2的大小。
差值(Δ)为正数或负数取决于等式2呈现出正数或负数。
依照本发明的实施例,控制器的操作方法可以包括:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码的第一步骤;根据第一ECC解码结果中所包括的未满足的故障校验(USC)来确定第一ECC解码已失败还是已成功的第二步骤;当确定第一ECC解码已失败时,根据USC的数量来更新第一读取电压的值的第三步骤;以及将第一步骤至第三步骤迭代预定迭代次数直到第一ECC解码成功的第四步骤。
控制器的操作方法可以还包括第五步骤,当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于第四步骤期间更新值之中的USC最小数量。
USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
第二步骤可以确定在第一步骤至第三步骤每次迭代当中从第一步骤结果所获得的USC的数量。
第三步骤可以根据在第一步骤至第三步骤每次迭代当中从第一步骤结果所获得的USC的数量来更新第一读取电压的值。
第三步骤可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
第三步骤可以根据底下的等式1来更新第一读取电压的值。
[等式1]
要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
差值(Δ)可以根据底下等式2来确定。
[等式2]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中USC_RDCNT代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
差值(Δ)可以是固定的。
差值(Δ)的大小取决于等式2的大小。
差值(Δ)为正数或负数取决于等式2呈现出正数或负数。
根据本发明的实施例,控制器可以包括:器件,用于根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(USC,unsatisfied syndrome check)的数量来更新;以及器件,用于:当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于第一ECC解码迭代期间更新值之中的USC最小数量。
第一ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
用于迭代第一ECC解码的器件可以包括:第一装置,用于:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;第二装置,用于:基于第一ECC解码结果中所包括的未满足的故障校验(USC)来确定第一ECC解码已失败还是已成功;以及第三装置,用于:当确定第一ECC解码已失败时,基于USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一ECC解码成功。
第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
第三装置可以根据在第一装置至第三装置每次迭代当中由第一装置所获得的USC的数量来更新第一读取电压的值。
第三装置可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
第三装置可以根据底下的等式1来更新第一读取电压的值。
[等式1]
要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
差值(Δ)可以根据底下等式2来确定。
[等式2]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中USC_RDCNT代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
差值(Δ)可以是固定的。
差值(Δ)的大小取决于等式2的大小。
差值(Δ)为正数或负数取决于等式2呈现出正数或负数。
根据本发明的实施例,控制器可以包括:第一装置,用于根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;第二装置,用于根据第一ECC解码结果中所包括的未满足的故障校验(USC)来确定第一ECC解码已失败还是已成功;以及第三装置,用于当确定第一ECC解码已失败时根据USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一ECC解码成功。
控制器可以还包括第四装置,用于:当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
第一ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
第三装置可以根据在第一装置至第三装置每次迭代当中由第一装置所获得的USC的数量来更新第一读取电压的值。
第三装置可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
第三装置可以根据底下的等式1来更新第一读取电压的值。
[等式1]
要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
差值(Δ)可以根据底下等式2来确定。
[等式2]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中USC_RDCNT代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
差值(Δ)可以是固定的。
差值(Δ)的大小取决于等式2的大小。
差值(Δ)为正数或负数取决于等式2呈现出正数或负数。
根据本发明的实施例,半导体存储系统可以包括:半导体存储器件以及控制器。控制器可以包括:装置,用于:根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验(USC,unsatisfied syndrome check)的数量来更新;以及装置,用于:当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于第一ECC解码迭代期间更新值之中的USC最小数量。
第一ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
用于迭代第一ECC解码的装置可以包括:第一装置,用于根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;第二装置,用于根据第一ECC解码结果中所包括的未满足的故障校验(USC)来确定第一ECC解码已失败还是已成功;以及第三装置,用于当确定第一ECC解码已失败时根据USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一ECC解码成功。
第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
第三装置可以根据在第一装置至第三装置每次迭代当中由第一装置所获得的USC的数量来更新第一读取电压的值。
第三装置可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
第三装置可以根据底下的等式1来更新第一读取电压的值。
[等式1]
要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
差值(Δ)可以根据底下等式2来确定。
[等式2]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中USC_RDCNT代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
差值(Δ)可以是固定的。
差值(Δ)的大小取决于等式2的大小。
差值(Δ)为正数或负数取决于等式2呈现出正数或负数。
根据本发明的实施例,半导体存储系统可以包括:半导体存储器件以及控制器。控制器可以包括:第一装置,用于根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;第二装置,用于根据第一ECC解码结果中所包括的未满足的故障校验(USC),确定第一ECC解码已失败还是已成功;以及第三装置,用于当确定第一ECC解码已失败时根据USC的数量来更新第一读取电压的值。控制器可以将第一装置至第三装置的操作迭代预定迭代次数,直到第一ECC解码成功。
控制器可以还包括第四装置,用于:当直至预定的迭代次数而第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
第一ECC解码可以为低密度奇偶校验(LDPC,low density parity check)解码。
USC可以为由LDPC解码的故障校验所产生的向量的非零组件。
第二装置可以确定在第一装置至第三装置操作每次迭代当中由第一装置所获得的USC的数量。
第三装置可以根据在第一装置至第三装置每次迭代当中由第一装置所获得的USC的数量来更新第一读取电压的值。
第三装置可以根据第一读取电压与USC平均数量之间的预定关系来更新第一读取电压的值。
第三装置可以根据底下的等式1来更新第一读取电压的值。
[等式1]
要更新的第一读取电压=对应于目前迭代的第一读取电压+差值(Δ),
差值(Δ)可以根据底下等式2来确定。
[等式2]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中USC_RDCNT代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
差值(Δ)可以是固定的。
差值(Δ)的大小取决于等式2的大小。
差值(Δ)为正数或负数取决于等式2呈现出正数或负数。
根据本发明的各种实施例,可以有效确定储存在半导体存储器件的存储单元中数据的最佳读取电压。
附图说明
图1为示意性例示3位多电平单元(3位MLC)非易失性存储器件的编程与擦除状态的阈值电压分布。
图2为示意性例示3位MLC非易失性存储器件特性退化下的编程与擦除状态的阈值电压分布。
图3为示意性例示根据本发明实施例的半导体存储系统的框图。
图4为例示图3中所示半导体存储系统的详细框图。
图5为例示图3中所示存储块的电路图。
图6A为例示通过泰纳(tanner)图表示的LDPC解码的示意图。
图6B为例示LDPC码的示意图。
图6C为例示根据LDPC解码的故障(syndrome)校验处理的示意图。
图7A为例示随着硬决策读取电压改变而USC的数量转变的图示。
图7B为例示随着硬决策读取电压改变而根据RBER的USC的数量转变的图示。
图8为例示图3中所示控制器操作的流程图。
图9至图13为示意性例示根据本发明实施例的三维(3D)非易失性存储器件的图示。
图14至图16为示意性例示根据本发明实施例的3D非易失性存储器件的图示。
图17为示意性例示包括根据本发明实施例中半导体存储系统的电子器件的框图。
图18为示意性例示包括根据本发明实施例中半导体存储系统的电子器件的框图。
图19为示意性例示包括根据本发明实施例中半导体存储系统的电子器件的框图。
图20为示意性例示包括根据本发明实施例中半导体存储系统的电子器件的框图。
图21为示意性例示包括根据本发明实施例中半导体存储系统的电子器件的框图。
图22为包括图21中所示电子器件的数据处理系统的框图。
具体实施方式
底下将参照附图来更详细说明各种实施例。然而,本发明可以以不同形式实施,并且不应解释为局限于此处所陈述的实施例。相反,提供这些实施例以使得此公开充分和完整、并且将本发明范围完整传达给本领域技术人员。附图并不必然依照比例,并且在某些实例中,比例会放大以便清晰例示实施例的特征。在整个公开内容中,附图标记直接对应于本发明的各种附图与实施例中相似的编号部分。另请注意,在本说明书中,“连接/耦接”表示一个组件不仅直接耦接另一个组件,也通过中间组件间接耦接另一个组件。此外,句子当中没有特别提到时,单数型态可以包括复数型态。应了解,本文中“上”与“之上”的含意应广义解释,这样“上”不仅表示“直接在某物上”,也表示在某物“上”而其间具有中间部件或层,并且“之上”不仅表示直接在某物顶部上,也表示在某物顶部上而其间具有中间部件或层。当声称第一层在第二层“上”或衬底“上”时,不仅代表第一层直接形成于第二层或衬底上的情况,也代表第三层存在于第一层与第二层或衬底之间的情况。
图3为示意性例示根据本发明实施例的半导体存储系统10的框图。
图4为例示图3中所示半导体存储系统10的详细框图。
图5为例示图3中所示存储块211的电路图。
请参阅图3和图5,半导体存储系统10可以包括半导体存储器件200以及存储控制器100。
半导体存储器件200可以在存储控制器100的控制之下执行一个或多个擦除、编程以及读取操作。半导体存储器件200可以通过输入/输出线接收命令CMD、地址ADDR以及数据DATA。半导体存储器件200可以通过电源线接收电源PWR,以及通过控制线接收控制信号CTRL。控制信号可以包括命令锁存使能(CLE,command latch enable)信号、地址锁存使能(ALE,address latch enable)信号、芯片使能(CE,chip enable)信号、写入使能(WE,writeenable)信号、以及读取使能(RE,read enable)信号等等。
存储控制器100可以控制半导体存储器件200的整体操作。存储控制器100可以包括用于校正错误位的ECC单元130。ECC单元130可以包括ECC编码器131以及ECC解码器133。
ECC编码器131可以对要编程进入半导体存储器件200的数据执行错误校正编码,以输出已加入奇偶位的数据。奇偶位可以储存在半导体存储器件200中。
ECC解码器133可以对从半导体存储器件200读取的数据执行错误校正解码,ECC解码器133可以确定错误校正解码是否成功,并且可以根据确定结果输出指令信号。ECC解码器133可以使用ECC编码产生的奇偶位来校正数据的错误位。
当错误位数量超出ECC单元130的错误校正容量,则ECC单元不可以校正错误位。在此情况下,ECC单元130可以产生错误校正失败信号。
ECC单元130可以通过编码调制来校正错误,例如低密度奇偶校验(LDPC,low-density parity-check)码、博斯-乔赫里-霍克文黑姆(BCH,Bose-Chaudhuri-Hocquenghem)码、turbo码、里德-所罗门(RS,Reed-Solomon)码、卷积码、递归系统码(RSC,Recursive Systematic Code)、网格编码调制(TCM,Trellis-Coded Modulation)、以及块编码调制(BCM,Block Coded Modulation),等等。ECC编码器130可以包括用于错误校正的所有电路、系统或器件。
如上述,当错误位数量超出ECC单元130的错误校正容量,则ECC单元可以产生错误校正失败信号。根据本发明的实施例,ECC单元130可以使用硬决策读取数据与软决策数据来执行错误位校正操作。
控制器100和半导体存储器件200可以集成在单一半导体器件中,例如:控制器100和半导体存储器件200可以集成在诸如固态硬盘(SSD,solid-state drive)的单一半导体器件中。固态硬盘可以包括储存器件,用于将数据储存在半导体存储器中。当半导体存储系统10用于SSD中时,换言之,可以显著改善与半导体存储系统10耦接的主机(未显示)的操作速度。
控制器100和半导体存储器件200可以集成在诸如记忆卡的单一半导体器件中。例如:控制器100和半导体存储器件200可以集成在单一半导体器件中来构成记忆卡,例如个人计算机记忆卡国际协会(PCMCIA)的PC卡、小型快闪(CF)卡、智能媒体(SM)卡、memorystick、多媒体卡(MMC)、小型多媒体卡(RS-MMC)、微型多媒体卡(MMCmicro)、SD(securedigital)卡、Mini-SD卡、Micro-SD卡、SDHC、和UFS(通用快闪储存)卡等等。
针对其他范例,半导体存储系统10可以被提供作为包括电子器件的各种组件之一,例如计算机、超移动PC(UMPC)、工作站、网络笔记本电脑、个人数字助理(PDA)、便携计算机、网络平板个人电脑、无线电话、移动电话、智能电话、电子书阅读器、便携式多媒体播放器(PMP)、便携式游戏设备、导航器件、黑盒子、数字相机、数字多媒体广播(DMB)播放器、3D电视、智能型电视、数字音频记录器、数字音频播放器、数字图像记录器、数字图像播放器、数字视频记录器、数字视频播放器、数据中心储存器件、可以在无线环境中收发信息的器件、家庭网络电子器件之一、计算机网络电子器件之一、远程通信网路电子器件之一、射频识别(RFID)器件或计算系统组件设备。
请参阅图4,存储控制器100可以包括储存单元110、CPU 120、ECC单元130、主机接口140、存储接口150以及一个系统总线160。储存单元110可以作为CPU 120的工作存储器来操作。
主机接口140可以通过各种接口协议中的一个或多个与主机通信,例如通用行串行总线(USB,universal serial bus)、多媒体卡(MMC,multi-media card)、高速外围组件互连(PCI-E,peripheral component interconnect express)、小型计算机系统接口(SCSI,small computer system interface)、行串行附加SCSI(SAS)、行串行先进技术附件(SATA,serial advanced technology attachment)、行并行先进技术附件(PATA,paralleladvanced technology attachment)、先进小型磁盘接口(ESDI,enhanced small diskinterface)以及集成驱动电子器件(IDE,integrated drive electronics)。
ECC单元130可以检测并校正从半导体存储器件200读取的数据中所包括的错误。存储接口150可以与半导体存储器件200接口。CPU 120可以执行各种一般控制操作。
半导体存储器件200可以包括存储单元阵列210、控制电路220、电压供应单元230、电压发送单元240、读/写电路250以及列选择单元260。
存储单元阵列210可以包括多个存储块211。用户数据可以储存在存储块211中。
请参阅图5,存储块211可以包括分别耦接至位线BL0至BLm-1的多个单元串211。每一列的单元串221都可以包括一个或多个漏极选择晶体管DST以及一个或多个源极选择晶体管SST。多个存储单元或存储单元晶体管可以串行耦接在选择晶体管DST与SST之间。每一存储单元MC0至MCn-1都可以由在每一单元中都储存多位数据信息的多电平单元(MLC,multi-level cell)所形成。单元串221可以分别电耦接至对应位线BL0至BLm-1。
图5示范例示包括NAND型闪存单元的存储块211。然而,存储器件200的存储块211将不受限于NAND闪存,而是可以包括NOR型闪存、其中组合了二种或多种存储单元的复合式闪存,以及其中控制器嵌入存储芯片内部中的一NAND闪存。半导体器件的操作特性可以适用于电荷陷阱快闪(CTF,charge trap flash),其中由绝缘层形成电荷储存层,以及适用于其中电荷储存层由导电浮栅形成的闪存器件。
请回头参阅图4,控制电路220可以控制有关半导体存储器件200的编程、擦除和写入操作的整体操作。
电压供应单元230可以根据操作模式,将字线电压(例如编程电压、读取电压以及通过电压)供应到相应的字线,并且可以提供要供应给体块的电压,例如其中形成存储单元的阱区。电压供应电路230的电压产生操作可以在控制电路220的控制之下执行。
电压供应单元230可以产生多个可变读取电压,用来产生多个读取数据。
电压发送单元240可以选择存储块211之一或存储单元阵列210的扇区之一,并且可以在控制电路220的控制之下选择已选取存储单元的字线之一。电压发送单元240可以在控制电路220的控制之下将电压供应电路230产生的字线电压提供给选取的字线或未选取的字线。
读/写电路250可以受到控制电路220的控制,并且可以根据操作模式作为感应放大器或写入驱动器来操作,例如:在验证/正常读取操作期间,读/写电路250可以作为感应放大器来操作,用于读取来自存储单元阵列210的数据。在正常读取操作期间,列选择单元260可以根据行地址信息将从读/写电路250读取的数据输出至外界,例如存储控制器100。在另一方面,在验证读取操作期间,读取数据可以被提供至半导体存储器件200中所包括的通过/失败验证电路(未例示),并且用于确定存储单元的编程操作是否成功。
在编程操作期间,读/写电路250可以用作写入驱动器来操作,用于根据要储存在存储单元阵列210中的数据来驱动位线。在编程操作期间,读/写电路250可以从缓冲器(未例示)接收要写入存储单元阵列210中的数据,并且可以根据该输入数据来驱动位线。为此,读/写电路250可以包括分别对应于列(或位线)或列配对(或位线配对)的多个分页缓冲器(PB,page buffer)251。每一分页缓冲器251中都包括多个锁存器。
图6A为例示通过tanner图表示的LDPC解码的示意图。
图6B为例示LDPC码的示意图。
图6C为例示根据LDPC解码的故障校验处理的示意图。
储存系统中会共享错误校正码(ECC,Error Correction Code),储存器件中发生的各种物理现象导致噪声效果,毁损储存的信息。错误校正编码方案可以用来保护已储存信息抵挡所发生的错误,这可以通过在存储器件中储存信息之前将信息编码来达成。编码处理通过在信息中添加冗余而将信息位顺序转换成码字。然后可以使用此冗余,以便通过解码处理将可能毁损的码字中的信息复原。
在迭代编码方案当中,码建构为数个简单构成码的串联,并且通过在接收简单构成码的解码器之间交换信息而根据迭代解码算法来解码。通常来说,使用描述构成码之间的互连的二分图或tanner图定义该码。在此情况下,解码可以称为越过图形边缘迭代消息。
迭代码可以包括低密度奇偶校验(LDPC,low density parity check)码。LDPC码为通过稀疏奇偶校验矩阵H来定义的线性二进制区块码。
请参阅图6A,LDPC码具有奇偶校验矩阵,其中每行与列中1的数量非常小,并且其结构可以由tanner图定义,包括校验节点610、可变节点620和用于将校验节点610连接至可变节点620的边缘615。在校验节点处理之后从校验节点610传递至可变节点620的值变成校验节点消息615A,并且在可变节点处理之后从可变节点620传递至校验节点610的值变成可变节点消息615B。
根据“和-积”算法通过迭代解码来执行LDPC码的解码处理。根据次优消息传递算法(suboptimal message-passing algorithm),例如“最小和”算法(其为和-积算法的简化版)来提供解码方法。
例如:请参阅图6B,LDPC码的tanner图包括代表LDPC码奇偶校验等式的5个校验节点610、代表码符号的10个可变节点620以及代表校验节点610与可变节点620之间关系的边缘615。边缘615将每一校验节点610连接至可变节点620,该可变节点对应于由校验节点610所表示的奇偶校验等式中所包括的码符号。图6B示范例示规则LDPC码,其中耦接至每一校验节点610的可变节点620的数量固定为4,并且耦接至每一可变节点620的校验节点610的数量固定为2。
图6C显示对应于tanner图的奇偶校验矩阵H。奇偶校验矩阵H类似于奇偶校验等式的图形表示。在奇偶校验矩阵H中,在每一列和每一行中包括相同数量的1。换言之,奇偶校验矩阵H的每一列都具有两个1,对应于每一可变节点620与校验节点610之间的连接,并且每一行具有四个1,对应于每一校验节点610与可变节点620之间的连接。
通过迭代tanner图中可变节点620与校验节点610之间交换消息的处理来执行LDPC码的解码处理,其中所述消息在每一节点中产生并更新。在此情况下,每一节点根据和-积算法或类似的次优算法来更新消息。
对具有预定长度的码字(根据第一硬决策读取电压从存储块211的存储单元读取)的LDPC解码可以包括多次迭代,每一次迭代都包括初次更新可变节点620之后更新校验节点610、更新可变节点620以及故障校验。在单次迭代之后,当故障校验的结果满足预定条件,则可以结束LDPC解码。当故障校验的结果未满足预定条件,则可以使用与第一硬决策读取电压不同的第二硬决策读取电压对存储块211的存储单元执行另一单次迭代。迭代次数可以受限于最大读取计数。当迭代次数已经达到最大读取计数而故障校验结果还未满足预定条件时,则对码字的LDPC解码可以被确定为ECC解码已经失败。
请参阅图6C,故障校验为这种处理:识别奇偶校验矩阵H与向量“v”(通过更新可变节点620所获得)的乘积结果Hvt是否满足预定条件。当奇偶校验矩阵H与向量“v”的乘积结果Hvt变成零向量,则乘积结果Hvt被评估为满足预定条件。
图6C显示故障校验处理,图6C示范显示非零向量“01000”作为乘积结果Hvt,换言之,图6C显示故障校验并未满足预定条件,并且应该用另一个硬决策读取电压来执行另一单次迭代。
考虑非零向量“01000”作为乘积结果Hvt,则不符合零向量条件的非零向量组件数量为1。在此描述当中,在单次迭代当中不满足乘积结果Hvt的故障校验中零向量条件的组件被定义为未满足的故障校验(USC)。图6C显示其中USC的数量为1的故障校验结果。
图7A为例示随着硬决策读取电压改变而USC的数量转变的图示。
图7B为例示随着硬决策读取电压改变而根据原始位错误率(RBER)的USC的数量转变的图示。
图7A显示NAND闪存器件的存储单元的阈值电压分布,其为高斯分布。图7A也显示USC的数量与硬决策读取电压Vth之间的关系,其中硬决策读取电压Vth为当RBER为10e-3并且ECC目标码字长度为18342时以0.025为单位所量测得出。在给定的阈值电压分布当中,在硬决策读取电压Vth为“0”(Vth=0)的点之处最佳读取电压Vopt为“0”,并且USC的数量在该最佳读取电压Vopt(Vth=0)周围最小化。
图7B显示根据各种RBER的NAND闪存器件的存储单元中USC的数量与硬决策读取电压Vth之间的关系。尽管有各种RBER,然而USC的数量在硬决策读取电压Vth为“0”(Vth=0)的点之处的最佳读取电压Vopt周围最小化。
因此,虽然无法明确显示USC的数量与码字中错误发生率之间有直接关联,然而还是显示出USC的数量与码字中错误发生率之间有颇大的关联。因此,USC的数量可以代表码字的品质。
如上述,ECC单元130可以检测并校正来自半导体存储器件200的读取数据中所包括的错误,以便根据最佳读取电压Vopt从来自存储块211的存储单元所读取的码字当中复原无错信息位顺序。
例如:当确定根据第一硬决策读取电压读取的码字上LDPC解码已经ECC解码失败,则因为依照单次迭代的结果故障校验未满足零向量条件,所以ECC单元130可以用与第一硬决策读取电压不同的第二硬决策读取电压来执行LDPC解码的另一单次迭代。也就是,ECC单元130可以根据与第一硬决策读取电压不同的第二硬决策读取电压来读取来自存储单元的码字,并且可以根据第二硬决策读取电压来对码字执行LDPC解码的另一单次迭代。
重试或迭代的效率可以取决于如何确定用于重试的第二硬决策读取电压。也就是,当以最小重试次数确定最佳读取电压Vopt时,则可以用最小重试次数从码字当中复原信息位顺序。
根据本发明的实施例,针对最小重试次数,USC可以用来确定最佳读取电压Vopt。
根据本发明的实施例,当根据当前与先前迭代中当前与先前硬决策读取电压来分析从存储块211的存储单元读取的码字的USC的数量的梯度时,可能的是确定方向变化和用于重试的硬决策读取电压Vth的值,并且根据图7A和图7B中所示NAND闪存器件的存储单元的USC的数量与硬决策读取电压Vth之间的关系,使用最小重试次数确定最佳读取电压Vopt。
进一步,根据本发明的实施例,即使因为直到LDPC解码迭代次数已经到达最高读取计数时故障校验未满足零向量条件而确定码字上根据硬决策读取电压Vth的LDPC解码已经失败,仍可能通过使用具有软决策数据的ECC解码而以最小重试次数来确定最佳读取电压Vopt,其中所述软决策数据以图7A和图7B中所示的NAND闪存器件的存储单元的USC的数量与硬决策读取电压Vth之间的关系为基础根据对应于USC最小数量的硬决策读取电压Vth来产生。
图8为例示控制器100操作的流程图。
请参阅图8,控制器100的操作可以包括步骤S810的硬决策ECC解码,并且进一步包括步骤S830的软决策ECC解码。
如参考图6A至图7B所描述,步骤S810的硬决策ECC解码可以重复ECC解码,诸如根据基于USC确定出的多个硬决策读取电压对从存储块211的存储单元读取的码字进行的LDPC解码。
例如:当因为依照单次迭代的结果故障校验未满足零向量条件而确定根据第一硬决策读取电压对从存储块211的存储单元读取的码字的LDPC解码已经ECC解码失败时,控制器100可以用与第一硬决策读取电压不同的第二硬决策读取电压来重试LDPC解码的另一单次迭代。根据本发明的实施例,针对最小重试次数,USC可以用来确定硬决策读取电压。
当甚至直至在步骤S810的硬决策ECC解码期间LDPC解码的迭代次数到达最大读取计数为止根据硬决策读取电压对码字的LDPC解码仍被确定为在满足故障校验的零向量条件方面失败时,则步骤S830的软决策ECC解码可以执行ECC解码。通过根据最佳读取电压Vopt来产生软决策数据,步骤S830的软决策ECC解码可以执行ECC解码,其中所述最佳读取电压Vopt对应于在执行迭代直到在步骤S810的硬决策ECC解码期间的最大读取计数的过程当中所获得USC的数量之中的USC最小数量。
请参阅图8,控制器100的操作可以步骤S801的初始化可变RDCNT以及差值Δ开始,即是RDCNT=1并且Δ=Δini。可变RDCNT可以用来确定是否执行LDPC解码的迭代直到最大读取计数,差值Δ可以用来确定用于重试的硬决策读取电压。
然后,在步骤S810的硬决策ECC解码期间,在步骤S811,控制器100可以根据预定的第一硬决策读取电压而从存储块211的存储单元读取预定长度的码字,其中第一硬决策读取电压由电压供应单元230产生。在步骤S813,控制器100可以对在步骤S811读取的码字执行ECC解码,例如参考图6A至图7B描述的LDPC解码。详细来说,如参考图6A至图7B的描述,在可变节点620的初次更新之后,控制器100可以更新校验节点610和可变节点620。
然后在步骤S815,控制器100可以根据步骤S813上ECC解码的结果,确定步骤S813上ECC解码是否成功。例如:控制器100可以识别奇偶校验矩阵H与向量“v”(通过由于步骤S813的ECC解码而更新可变节点620所获得)的乘积结果Hvt是否为零向量。
如参阅图6A至图7B的描述,当在步骤S815确定乘积结果Hvt为零向量时,则在步骤S803可以确定步骤S813的ECC解码已经成功。
在另一方面,当乘积结果Hvt并非零向量,例如图6C中所示的范例“01000”,则依照步骤S815上的确定,可以确定步骤S813的ECC解码已失败。
步骤S813和S815可以形成参阅图6A至图7B所描述的单次迭代。
当在步骤S815已经确定步骤S813的ECC解码已经失败,则在步骤S817,控制器100可以确定对来自存储块211的存储单元的码字的读取计数(即,LDPC解码的迭代次数)是否已经到达最大读取计数。控制器100可以通过确定可变RDCNT的值是否到达预定最大值来执行步骤S817。
当控制器100在步骤S817确定可变RDCNT的值到达最大读取计数,则可以额外执行步骤S830的软决策ECC解码,因为尽管已经到达迭代的最大读取计数硬决策ECC解码仍失败。
否则,当控制器100在步骤S817确定可变RDCNT的值尚未到达最大读取计数时,则LDPC解码的迭代次数未到达最大读取计数。因此,控制器100可以根据与第一硬决策读取电压不同的第二硬决策读取电压对从存储块211的存储单元读取的码字重试LDPC解码迭代。另一方面,控制器100可以在LDPC解码迭代期间储存在步骤S815识别的USC的数量。
详细来说,在步骤S819,控制器100可以储存对应于第一硬决策读取电压的USC的数量,或在步骤S815识别的USC的数量。例如:参阅图6C,非零向量“01000”中所包括的USC的数量为1。在步骤S819,控制器100可以储存对应于当前迭代的USC(USC_RDCNT)数量,或对应于第一硬决策读取电压的USC(USC_RDCNT)数量。
如图7A和图7B中所例示,USC的数量大体上可以为第一硬决策读取电压上的探测值,或可以为第一硬决策读取电压上的平均值。从硬决策读取电压与USC的平均数量之间的预先储存关系表(例如表示图7A和图7B中所例示的硬决策读取电压与USC平均数量之间关系的表)可以获得USC的平均数量。
USC的数量可以储存在存储单元阵列210与储存单元110的一个或多个中。
然后在步骤S821中,控制器100可以确定差值Δ,用于确定第二硬决策读取电压以便重试迭代。差值Δ可以根据以下等式1来确定。
[等式1]
Δ=[USC_RDCNT]–[USC_RDCNT-1],其中[USC_RDCNT]代表对应于当前迭代的USC的数量,并且[USC_RDCNT-1]代表对应于先前迭代的USC的数量。
在初次迭代期间,差值Δ可以为步骤S801上设定的初始值Δini。
例如:差值Δ可以是固定的,在此情况下可以根据具有对应于固定差值Δ的固定间隔的硬决策读取电压来重试迭代。
另外,例如:差值Δ的大小取决于等式1的大小。例如:差值Δ的大小可以随等式1的大小变大而变大。例如:差值Δ的大小可以随等式1的大小变小而变小。在相反范例中,差值Δ的大小可以随等式1的大小变大而变小。例如:差值Δ的大小可以随等式1的大小变小而变大。
从硬决策读取电压与USC的平均数量之间的预先储存关系表,例如表示图7A和图7B中所例示的硬决策读取电压与USC平均数量之间关系的表格,可以获得等式1与差值Δ之间的大小关系。
在这种情况下,用于迭代重试的硬决策读取电压之间的间隔在USC平均数量急剧改变的区段中可以相对较小,而用于迭代重试的硬决策读取电压之间的间隔在USC平均数量些微改变的区段中可以相对较大,如例示硬决策读取电压与USC平均数量之间关系的图7A和图7B中可见。
在步骤S821,控制器100可以根据等式1是呈现正数还是负数来确定差值Δ为正还是为负、或确定用于迭代重试的第二硬决策读取电压大于还是小于第一硬决策读取电压。
例如:请参阅图7A和图7B,当等式1呈现正数时,这表示对应于当前迭代的USC(USC_RDCNT)数量大于对应于先前迭代的USC(USC_RDCNT-1)数量,或表示USC的数量随着硬决策读取电压变化而变大,第一硬决策读取电压大于最佳读取电压Vopt。在这种情况下,差值Δ可以设定为负。然后,用于迭代重试的第二硬决策读取电压可以设定为小于第一硬决策读取电压。
例如:请参阅图7A和图7B,当等式1呈现负数时,这表示对应于当前迭代的USC(USC_RDCNT)数量小于对应于先前迭代的USC(USC_RDCNT-1)数量,或表示USC的数量随着硬决策读取电压变化而变小,第一硬决策读取电压小于最佳读取电压Vopt。在这种情况下,差值Δ可以设定为正。然后,用于迭代重试的第二硬决策读取电压可以设定为大于第一硬决策读取电压。
然后在步骤S823,控制器100可以根据第一硬决策读取电压以及在步骤S821设定的差值Δ来设定用于迭代重试的第二硬决策读取电压。控制器100可以通过将第一硬决策读取电压与步骤S821上设定的差值Δ求和来执行步骤S821。
请参阅图7A和图7B,如上述,当在步骤S821将差值Δ设定为负时,在步骤S823可以将第二硬决策读取电压设定成小于第一硬决策读取电压。根据负差值Δ的第二硬决策读取电压可以介于最佳读取电压Vopt与大于最佳读取电压Vopt的第一硬决策读取电压之间。在另一方面,当在步骤S821将差值Δ设定为正时,在步骤S823可以将第二硬决策读取电压设定成大于第一硬决策读取电压。根据正差值Δ的第二硬决策读取电压,可以介于最佳读取电压Vopt与小于最佳读取电压Vopt的第一硬决策读取电压之间。
另一方面,在步骤S823,控制器100可以将代表迭代重试次数的可变RDCNT的值加起来。
然后,控制器100可以重复硬决策ECC解码的步骤S810。步骤S810可以被反复执行直达最大读取计数,直到在步骤S815确定步骤S813的ECC解码已经成功为止。
当甚至直至在步骤S810的硬决策ECC解码期间LDPC解码的迭代次数到达最大读取计数为止在步骤S815步骤S813的根据硬决策读取电压对码字的LDPC解码在满足故障校验的零向量条件方面仍已经失败时,控制器100可以执行步骤S830的软决策ECC解码。换言之,尽管已经将步骤S810硬决策ECC解码迭代执行至最大读取计数,当在步骤S815已经确定步骤S813的硬决策ECC解码已经失败时,还是会额外执行步骤S830软决策ECC解码。
在步骤S831,在步骤S830的软决策ECC解码期间,控制器100可以通过根据与USC的数量之中的USC最小数量相对应的硬决策读取电压来确定最佳读取电压Vopt,其中USC的数量在步骤S810的硬决策ECC解码期间在执行迭代直到最大读取计数次数的过程当中获得。在步骤S831确定的最佳读取电压Vopt可以对应于USC的数量之中的USC最小数量,所述USC的数量在步骤S810硬决策ECC解码期间在执行迭代直到最大读取计数次数的过程当中所获得。根据软决策数据(其根据在最佳读取电压Vopt周围所确定的多个软决策读取电压所产生),非常有可能在软决策ECC解码当中成功。
因此在步骤S833,控制器100可以根据在步骤S831确定的最佳读取电压Vopt周围所确定的多个软决策读取电压读取来自存储块211的存储单元的码字。在步骤S835,控制器100可以对在步骤S833读取的码字执行ECC解码。在步骤S837,控制器100可以确定步骤S835的ECC解码是否成功。
当在步骤S837确定根据多个软决策读取电压在步骤S835对码字的ECC解码已经失败时,则在步骤S805最终确定从存储块211的存储单元读取的数据已经失败。
图9至图13为示意性例示根据本发明实施例的三维(3D)非易失性存储器件的图示。图9至图13例示根据本发明实施例的以3D形式实施的半导体存储器件,例如闪存器件。
图9为图5中所示存储单元阵列210的框图。
请参阅图9,存储单元阵列210可以包括多个存储块BLK1至BLKh,多个存储块BLK1至BLKh的每一个都具有3D结构或垂直结构,例如:多个存储块BLK1至BLKh的每一个都可以包括沿着第一至第三方向延伸的结构。
多个存储块BLK1至BLKh的每一个都可以包括沿着第二方向延伸的多个NAND串NS。沿着第一方向和第三方向可以提供多个NAND串NS,NAND串NS中的每一个都可以耦接至位线BL、一个或多个串选择线SSL、一个或多个接地选择线GSL、多个字线WL、一个或多个虚设字线DWL以及共享源极线CSL。也就是,多个存储块BLK1至BLKh中的每一个都可以耦接至多个位线BL、多个串选择线SSL、多个接地选择线GSL、多个字线WL、多个虚设字线DWL以及多个共享源极线CSL。
图10为图9中所示多个存储块BLK1至BLKh中的一个存储块BLKi的透视图。图11为沿着图10中所示存储块BLKi的I-I’线的剖面图。
请参阅图10和图11,存储块BLKi可以包括沿着第一至第三方向延伸的结构。
可以提供衬底1111。例如:衬底1111可以包括掺杂第一类型杂质的硅材料。例如:衬底1111可以包括掺杂p型杂质的硅材料或p型阱,例如口袋p阱。衬底1111可以进一步包括围绕p型阱的n型阱。在该描述当中,示范性假设衬底1111为p型硅。然而,衬底1111将不受限于p型硅。
衬底1111之上可以提供沿着第一方向延伸的多个掺杂区1311至1314,例如:多个掺杂区1311至1314可以具有与衬底1111的杂质不同的第二类型杂质,例如:多个掺杂区1311至1314可以掺杂n型杂质。在该描述当中,示范性假设第一掺杂区至第四掺杂区1311至1314为n型。然而,第一掺杂区至第四掺杂区1311至1314将不受限于n型。
在衬底1111的介于第一掺杂区与第二掺杂区1311与1312之间的区域之上,可以沿着第二方向顺序提供沿着第一方向延伸的多个绝缘材料1112,例如:多个绝缘材料1112与衬底1111可以在第二方向上间隔预定距离。在第二范例中,多个绝缘材料1112可以在第二方向上彼此间隔。在第三范例中,绝缘材料1112可以包括绝缘体,例如氧化硅。
在衬底1111的介于第一掺杂区1311与第二掺杂区1312之间的区域之上,可以沿着第一方向顺序提供多个柱体1113,并且柱体可以沿着第二方向穿透绝缘材料1112,例如:多个柱体1113中的每一个都可以穿透绝缘材料1112,与衬底1111接触,例如:多个柱体1113的每一个都可以由多种材料构成。多个柱体1113每一个的表面层1114可以包括具有第一类型的硅材料。多个柱体1113每一个的表面层1114可以包括掺杂与衬底1111的杂质相同类型的杂质的硅材料。在该描述当中,示范性假设柱体1113每一个的表面层1114包括p型硅。然而,多个柱体1113每一个的表面层1114将不受限于包括p型硅。
多个柱体1113每一个的内层1115都可以由绝缘材料形成,例如:多个柱体1113每一个的内层1115都可以填入绝缘材料,例如氧化硅。
在第一掺杂区与第二掺杂区1311与1312之间的区域中,沿着绝缘材料1112、柱体1113以及衬底1111的露出表面可以提供绝缘层1116,例如:绝缘层1116的厚度可以小于绝缘材料1112之间距离的一半。换言之,在(i)绝缘材料1112的第一绝缘材料底部表面之上提供的绝缘层1116与(ii)绝缘材料1112的第二绝缘材料顶部表面之上提供的绝缘层1116之间,可以提供其中设置了不同于绝缘材料1112与绝缘层1116的材料的区域。绝缘材料1112位于第一绝缘材料底下。
在第一掺杂区与第二掺杂区1311与1312之间的区域中,可以在绝缘层1116的表面之上提供导电材料1211至1291,例如:在衬底1111与相邻于衬底1111的多种绝缘材料1112之间,可以提供沿着第一方向延伸的导电材料1211。尤其是,在(i)设置在衬底1111之上的绝缘层1116与(ii)设置在相邻于衬底1111的绝缘材料1112底部表面之上的绝缘层1116之间,可以提供沿着第一方向延伸的导电材料1211。
在(i)设置在绝缘材料1112之中的特定绝缘材料顶部表面之上的绝缘层1116与(ii)设置在绝缘材料1112之中的另一绝缘材料(其设置在特定绝缘材料1112之上)的底部表面之上的绝缘层1116之间,可以提供沿着第一方向延伸的导电材料,例如:在绝缘材料1112之间可以提供沿着第一方向延伸的多个导电材料1221至1281。另外,在最上面绝缘材料1112之上可以提供沿着第一方向延伸的导电材料1291,例如:沿着第一方向延伸的导电材料1211至1291可以为金属材料。在另一个范例中,沿着第一方向延伸的导电材料1211至1291可以为导电材料,例如多晶硅。
在第二掺杂区与第三掺杂区1312与1313之间,可以提供与设置在第一掺杂区与第二掺杂区1311与1312之间结构相同的结构,例如:沿着第一方向延伸的多个绝缘材料1112、顺序排列在第一方向上并且沿着第二方向穿透多个绝缘材料1112的多个柱体1113、提供在多个绝缘材料1112与多个柱体1113的表面之上的绝缘层1116、以及沿着第一方向延伸的多个导电材料1212至1292可以被提供在第二掺杂区与第三掺杂区1312与1313之间。
在第三掺杂区与第四掺杂区1313与1314之间,可以提供与设置在第一掺杂区与第二掺杂区1311与1312之间结构相同的结构,例如:沿着第一方向延伸的多个绝缘材料1112、顺序排列在第一方向上并且沿着第二方向穿透多个绝缘材料1112的多个柱体1113、提供在多个绝缘材料1112与多个柱体1113的表面之上的绝缘层1116、以及沿着第一方向延伸的多个导电材料1213至1293可以被提供在第三掺杂区与第四掺杂区1313与1314之间。
在多个柱体1113之上可以分别提供漏极1320,例如:漏极1320可以为掺杂第二类型材料的硅材料,例如:漏极1320可以为掺杂n型材料的硅材料。在该描述当中,示范性假设漏极1320为掺杂n型材料的硅材料。然而,漏极1320并不受限于n型硅材料,例如:漏极1320的宽度可以宽于多个柱体1113中的对应者的宽度,例如:在多个柱体1113中的对应者的顶部表面之上,可以提供焊盘形状的漏极1320。
在漏极1320之上可以提供往第三方向延伸的导电材料1331至1333,导电材料1331至1333可以沿着第一方向顺序设置,导电材料1331至1333可以分别耦接至对应区域中的漏极1320。例如:漏极1320和沿着第三方向延伸的导电材料1333可以分别通过接触插塞彼此耦接,例如:沿着第三方向延伸的导电材料1331至1333可以为金属材料。在其他范例中,导电材料1331至1333可以为例如多晶硅的导电材料。
请参阅图10与图11,多个柱体1113中的每一个都可以耦接至绝缘层1116以及沿着第一方向延伸的导电材料1211至1291、1212至1292以及1213至1293,来形成串,例如:多个柱体1113中的每一个可以与绝缘层1116以及沿着第一方向延伸的导电材料1211至1291、1212至1292以及1213至1293一起形成NAND串NS。该NAND串NS可以包括多个晶体管结构TS。
图12为图11中所示晶体管结构TS的剖面图。
请参阅图10至图12,绝缘层1116可以包括第一子绝缘层至第三子绝缘层1117、1118和1119。
多个柱体1113中的每一个中P型硅的表面层1114可以用作本体。与多个柱体1113中的每一个相邻的第一子绝缘层1117可以用作隧穿绝缘层,例如:与多个柱体1113中的每一个相邻的第一子绝缘层1117可以包括热氧化物层。
第二子绝缘层1118可以用作电荷储存层,例如:第二子绝缘层1118可以用作电荷俘获层。第二子绝缘层1118可以包括氮层或金属氧化物层,例如氧化铝层、氧化锆层等等。
第三子绝缘层1119与导电材料1233相邻,可以用作阻挡绝缘层,例如:与沿着第一方向延伸的导电材料1233相邻的第三子绝缘层1119可以具有单层或多层结构。第三子绝缘层1119可以为高介电层,例如氧化铝层、氧化锆层等等,具有大于第一绝缘层和第二子绝缘层1117和1118的介电常数。
导电材料1233可以用作栅极或控制栅。换言之,栅极或控制栅1233、阻挡绝缘层1119、电荷俘获层1118、隧穿绝缘层1117以及本体1114可以形成晶体管或存储单元晶体管结构,例如:第一子绝缘层至第三子绝缘层1117至1119可以形成氧化物-氮-氧化物(ONO)结构。在该描述当中,多个柱体1113中的每一个中的P型硅的表面层1114可以称为在第二方向上延伸的本体。
存储块BLKi可以包括多个柱体1113。换言之,存储块BLKi可以包括多个NAND串NS。尤其是,存储块BLKi可以包括沿着第二方向或与衬底1111垂直的方向延伸的多个NAND串NS。
NAND串NS每一个都可以包括多个晶体管结构TS,其堆叠在第二方向上。每一NAND串NS的多个晶体管结构TS中的一个或多个可以用作串选择晶体管SST。每一NAND串NS的多个晶体管结构TS中的一个或多个可以用作接地选择晶体管GST。
栅极或控制栅可以对应于沿着第一方向延伸的导电材料1211至1291、1212至1292以及1213至1293,换言之,栅极或控制栅可以沿着第一方向延伸,来形成字线WL以及两个或多个选择线,例如一个或多个串选择线SSL以及一个或多个接地选择线GSL。
沿着第三方向延伸的导电材料1331至1333可以耦接至NAND串NS的一端,例如:沿着第三方向延伸的导电材料1331至1333可以用作位线BL,换言之,在一个存储块BLKi中,单个位线BL可以耦接至多个NAND串。
沿着第一方向延伸的第二类型掺杂区1311至1314可以耦接至NAND串NS的另一端。沿着第一方向延伸的第二类型掺杂区1311至1314可以用作共享源极线CSL。
总结来说,存储块BLKi可以包括沿着一方向(例如,第二方向,垂直于衬底1111)延伸的多个NAND串NS,并可以操作作为NAND闪存块,例如电荷俘获型存储器,其中多个NAND串NS耦接至单个位线BL。
请参阅图10和图12,描述了沿着第一方向延伸的导电材料1211至1291、1212至1292以及1213至1293被提供在9个层上。然而,沿着第一方向延伸的第一导电材料1211至1291、1212至1292以及1213至1293并不受限于9个层,例如:沿着第一方向延伸的导电材料可以被提供在8、16或更多层上。换言之,NAND串可以包括8、16或更多晶体管。
参阅图10至图12,描述了3个NAND串NS耦接至单个位线BL。然而,本实施例并不受限于3个NAND串NS耦接至单个位线BL。在另一个实施例中,在存储块BLKi中,m个NAND串NS可以耦接至单个位线BL,m为整数。在此,沿着第一方向延伸的导电材料1211至1291、1212至1292以及1213至1293的数量以及共享源极线1311至1314的数量也可以调整以致对应于耦接至单个位线BL的NAND串NS的数量。
参阅图10至图12,描述了3个NAND串NS耦接至沿着第一方向延伸的单一导电材料。然而,本实施例并不受限于3个NAND串NS耦接至单一导电材料。在另一个实施例中,n个NAND串NS可以耦接至单一导电材料,n为整数。在此,沿着第三方向延伸的导电材料1331至1333的数量也可以调整以致对应于耦接至单一导电材料的NAND串NS的数量。
图13为例示参考图10至图12所述存储块BLKi的等效电路图。
请参阅图10至图13,NAND串NS11至NS31可以提供在第一位线BL1与共享源极线CSL之间。第一位线BL1可以对应于沿着第三方向延伸的导电材料1331。在第二位线BL2与共享源极线CSL之间可以提供NAND串NS12至NS32,第二位线BL2可以对应于沿着第三方向延伸的导电材料1332。在第三位线BL3与共享源极线CSL之间可以提供NAND串NS13至NS33,第三位线BL3可以对应于沿着第三方向延伸的导电材料1333。
每一NAND串NS的串选择晶体管SST都可以耦接至对应的位线BL,每一NAND串NS的接地选择晶体管GST都可以耦接至共享源极线CSL。每一NAND串NS的串选择晶体管SST与接地选择晶体管GST之间都可以提供存储单元MC。
NAND串NS可以用行与列为单位来定义,共同耦接至单个位线的NAND串NS可以形成单一列,例如:耦接至第一位线BL1的NAND串NS11至NS31可以对应于第一列,耦接至第二位线BL2的NAND串NS12至NS32可以对应于第二列,耦接至第三位线BL3的NAND串NS13至NS33可以对应于第三列。
耦接至单串选择线SSL的NAND串NS可以形成单一行,例如:耦接至第一串选择线SSL1的NAND串NS11至NS31可以形成第一行,耦接至第二串选择线SSL2的NAND串NS21至NS23可以形成第二行,耦接至第三串选择线SSL3的NAND串NS31至NS33可以形成第三行。
每一NAND串NS都可以定义一高度,例如:在每一NAND串NS中,接地选择晶体管GST的高度可以定义为值“1”。在每一NAND串NS中,当从衬底1111起测量时,越靠近串选择晶体管SST,存储单元的高度就越高。在每一NAND串NS中,与串选择晶体管SST相邻的存储单元MC6的高度可以定义为值“8”,是接地选择晶体管GST的8倍大。
相同行中NAND串NS的串选择晶体管SST可以共享相同的串选择线SSL,而不同行中NAND串NS的串选择晶体管SST可以分别与不同的串选择线SSL1、SSL2和SSL3耦接。
在相同行的NAND串NS中具有相同高度的存储单元MC可以共享字线WL。在预定高度处,在不同行但是在相同阶层或相同高度处的NAND串NS的存储单元MC会共享字线WL。在预定高度或相同阶层上,相同行的NAND串NS的虚设存储单元DMC可以共享虚设字线DWL。在预定高度或阶层上,不同行的NAND串NS的虚设存储单元DMC可以共享虚设字线DWL,
例如:位于相同阶层、高度或层上的字线WL或虚设字线DWL都可以在提供了沿着第一方向延伸的导电材料1211至1291、1212至1292以及1213至1293的层上共同耦接。例如:在给定阶层、高度或层上提供的导电材料1211至1291、1212至1292以及1213至1293可以通过接触耦接至上层。在第一方向上延伸的导电材料1211至1291、1212至1292以及1213至1293可以共同耦接在上层。相同行中的NAND串NS的接地选择晶体管GST可以共享接地选择线GSL。不同行中的NAND串NS的接地选择晶体管GST可以共享接地选择线GSL。换言之,NAND串NS11至NS13、NS21至NS23以及NS31至NS33可以共同耦接至接地选择线GSL。
共享源极线CSL可以共同耦接至NAND串NS,例如:第一掺杂区至第四掺杂区1311至1314可以在衬底1111的有源区耦接。例如:第一掺杂区至第四掺杂区1311至1314可以通过接触耦接至上层。第一掺杂区至第四掺杂区1311至1314可以共同耦接在上层。
如图13中所示,相同高度或阶层上的字线WL可以共同耦接。因此,当特定高度处字线WL被选取时,则耦接至选取字线WL的所有NAND串NS被选取。不同行中的NAND串NS可以耦接至不同的串选择线SSL。因此,在耦接至相同字线WL的NAND串NS之中,根据串选择线SSL1至SSL3的选择,未选取行的NAND串NS可以与位线BL1至BL3电隔离。换言之,通过选择串选择线SSL1至SSL3中之一,就可以选择一行NAND串NS。根据位线BL1至BL3的选择,可以以列为单位选择选取行的NAND串NS。
在每一NAND串NS中,可以提供虚设存储单元DMC。在图13中,虚设存储单元DMC被提供在每一NAND串NS中的第三存储单元MC3与第四存储单元MC4之间。换言之,在虚设存储单元DNC与接地选择晶体管GST之间可以提供第一至第三存储单元MC1至MC3,在虚设存储单元DNC与串选择晶体管SST之间可以提供第四至第六存储单元MC4至MC6。在该实施例中,示范性假设每一NAND串NS中的存储单元MC都通过虚设存储单元DMC分成存储单元群组。存储单元群组之中的,与接地选择晶体管GST相邻的存储单元群组(例如MC1至MC3)可以称为下方存储单元群组。存储单元群组之中的与串选择晶体管SST相邻的存储单元群组(例如MC4至MC6)可以称为上方存储单元群组。
本文将参考图9至图13来描述包括一个或多个单元串的非易失性存储器件操作方法,期中每一单元串都排列在与衬底垂直的方向上,与存储控制器耦接并包括存储单元、串选择晶体管和接地选择晶体管。运用操作方法,所述非易失性存储器件:可以被提供第一读取命令,以根据第一硬决策读取电压以及与第一硬决策读取电压不同的第二硬决策读取电压来执行第一和第二硬决策读取操作;可以获取硬决策数据;可以根据硬决策数据的错误位状态来选择第一和第二硬决策电压之一;可以根据与第一和第二硬决策读取电压都不同的软读取电压来获取软决策数据;以及可以将软决策数据提供给存储控制器。
图14至图16为示意性例示根据本发明实施例的3D非易失性存储器件的图示。图14至图16例示根据本发明实施例的以3D形式实施的半导体存储器件,例如闪存器件。
图14为例示图5中所示存储块211中的一个存储块BLKj的透视图。图15为例示图14中所示存储块BLKj沿着VII-VII’线的剖面图。
请参阅图14和图15,存储块BLKj可以包括沿着第一至第三方向延伸的结构。
可以提供衬底6311。例如:衬底6311可以包括掺杂第一类型杂质的硅材料。例如:衬底6311可以包括掺杂p型杂质的硅材料或p型阱,例如口袋p阱。衬底6311可以进一步包括围绕p型阱的n型阱。在该实施例当中,示范性假设衬底6311为p型硅。然而,衬底6311将不受限于p型硅。
沿着X方向与Y方向延伸的第一至第四导电材料层6321至6324可以置于衬底6311之上。第一至第四导电材料层6321至6324可以在Z方向上彼此间隔。
沿着X方向与Y方向延伸的第五至第八导电材料层6325至6328可以置于衬底6311之上。第五至第八导电材料层6325至6328可以在Z方向上彼此间隔。第五至第八导电材料层6325至6328可以在Y方向上与第一至第四导电材料6321至6324间隔。
多个下方柱体DP形成,以穿透第一至第四导电材料6321至6324。多个下方柱体DP每一个都可以在Z方向上延伸。多个上方柱体DP形成,以穿透第五至第八导电材料6325至6328。多个上方柱体UP每一个都可以在Z方向上延伸。
下方柱体DP与上方柱体UP中的每一个可以包括内部材料层6361、中间层6362以及表面层6363。中间层6362可以用作单元晶体管的沟道。表面层6363可以包括阻挡绝缘层、电荷储存层以及隧穿绝缘层。
多个下方柱体DP与多个上方柱体UP可以通过管栅PG耦接。管栅PG可以形成于衬底6311中,例如:管栅PG可以包括与多个下方柱体DP和多个上方柱体UP大体上相同的材料。
掺杂第二类型杂质的掺杂材料层6312可以置于多个下方柱体DP之上,掺杂材料层6312可以在X方向与在Y方向上延伸。例如:掺杂第二类型杂质的掺杂材料层6312可以包括n型硅材料。掺杂第二类型杂质的掺杂材料层6312可以用作共享源极线CSL。
在多个上方柱体1113每一个之上可以形成漏极6340。例如:漏极6340可以包括n型硅材料。在漏极6340之上可以形成第一和第二上方导电材料层6351和6352。第一和第二上方导电材料层6351和6352可以在Y方向上延伸。
第一和第二上方导电材料层6351和6352可以在X方向上彼此间隔。例如:第一和第二上方导电材料层6351和6352可以由金属制成。例如:第一和第二上方导电材料层6351和6352可以通过接触插塞耦接至漏极6340。第一和第二上方导电材料层6351和6352可以分别用作第一和第二位线BL1和BL2。
第一导电材料层6321可以用作源极选择线SSL、第二导电材料层6322可以用作第一虚设字线DWL1,并且第三和第四导电材料层6323和6324可以分别用作第一和第二主字线MWL1和MWL2。第五和第六导电材料层6325和6326可以分别用作第三和第四主字线MWL3和MWL4、第七导电材料层6327可以用作第二虚设字线DWL2,并且第八导电材料层6328可以用作漏极选择线DSL。
多个下方柱体DP每一个以及与下方柱体DP相邻的第一至第四导电材料层6321至6324可以形成下方串,多个上方柱体UP每一个以及与上方柱体UP相邻的第五至第八导电材料层6325至6328可以形成上方串,下方串与上方串可以通过管栅PG耦接。下方串的一端可以耦接至用作共享源极线CSL的第二类型掺杂材料层6312。上方串的一端可以通过漏极6340耦接至对应位线。下方串与上方串可以通过管栅PG耦接。单一下方串与单一上方串可以形成单一单元串,其耦接在用作共享源极线CSL的第二类型掺杂材料层6312与用作位线BL的上方导电材料层6351和6352中的对应者之间。
换言之,下方串可以包括源极选择晶体管SST、第一虚设存储单元DMC1以及第一和第二主存储单元MMC1和MMC2。上方串可以包括第三和第四主存储单元MMC3和MMC4、第二虚设存储单元DMC2以及漏极选择晶体管DST。
请参阅图14和图15,上方串与下方串可以形成具有多个晶体管结构TS的NAND串NS。晶体管结构TS与参阅图12描述的晶体管大体上相同。
图16为例示参考图14至图15所述存储块BLKj的等效电路图。图16示范性显示存储块BLKj中所包括串之中的第一和第二串。
请参阅图16,存储块BLKj可以包括多个单元串,每一单元串都包括通过管栅PG彼此耦接的单一上方串与单一下方串,如参阅图14和图15所描述。
在存储块BLKj中,沿着第一通道层CH1(未显示)堆叠的存储单元CG0至CG31、一个或多个源极选择栅SSG以及一个或多个漏极选择栅DSG可以形成第一串ST1。沿着第二通道层CH2(未显示)堆叠的存储单元CG0至CG31、一个或多个源极选择栅SSG以及一个或多个漏极选择栅DSG可以形成第二串ST2。
第一和第二串ST1和ST2可以耦接至单一漏极选择线DSL以及单一源极选择线SSL。第一串ST1可以耦接至第一位线BL1,并且第二串ST2可以耦接至第二位线BL2。
图16显示了第一和第二串ST1和ST2耦接至单一漏极选择线DSL以及单一源极选择线SSL。在另一个实施例中,第一和第二串ST1和ST2可以耦接至单一源极选择线SSL以及单一位线BL。在这种情况下,第一串ST1可以耦接至第一漏极选择线DSL1,并且第二串ST2可以耦接至第二漏极选择线DSL2。在另一个实施例中,第一和第二串ST1和ST2可以耦接至单一漏极选择线DSL以及单一位线BL。在这种情况下,第一串ST1可以耦接至第一源极选择线SSL1,并且第二串ST2可以耦接至第二源极选择线SSL2。
图17为示意性例示包括根据本发明实施例的存储控制器15000与半导体存储器件16000的电子器件10000的框图。
请参阅图17,像是蜂窝电话、智能电话或平板PC的电子器件10000可以包括通过闪存器件实施的半导体存储器件16000以及用于控制半导体存储器件16000的存储控制器15000。
半导体存储器件16000可以对应于上面参阅图3至图13所描述的半导体存储器件200。半导体存储器件16000可以储存随机数据。
存储控制器15000可以对应于参阅图3至图13所描述的存储控制器。存储控制器15000可以由处理器11000控制,其控制电子器件10000的整体操作。
半导体存储器件16000中储存的数据可以在存储控制器15000的控制之下通过显示器13000来显示。存储控制器15000在处理器11000的控制之下操作。
无线电收发器12000可以通过天线ANT接收与输出无线电信号。例如:无线电收发器12000可以将接收自天线ANT的无线电信号转换成待由处理器11000处理的信号。因此,处理器11000可以处理来自无线电收发器12000的转换信号,并且可以将已处理的信号储存在半导体存储器件16000中。否则,处理器11000可以通过显示器13000显示已处理的信号。
无线电收发器12000可以将来自处理器11000的信号转换成无线电信号,并且可以通过天线ANT将转换的无线电信号输出至外部装置。
输入设备14000可以接收用来控制处理器11000的操作的控制信号,或要由处理器11000处理的数据,并且可以由指针设备来实施,例如触摸板或计算机鼠标、键区或键盘。
处理器11000可以控制显示器13000,使得可以通过显示器13000显示来自半导体存储器件16000的数据、来自无线电收发器12000的无线电信号或来自输入设备14000的数据。
图18为示意性例示包括根据本发明实施例的存储控制器24000与半导体存储器件25000的电子器件20000的框图。
存储控制器24000和半导体存储器件25000可以分别对应于上面参阅图3至图13所描述的存储控制器100和半导体存储器件200。
请参阅图18,电子器件20000可以由数据处理器件来实施,例如个人计算机(PC)、平板计算机、网络笔记本电脑、电子书阅读器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器或MP4播放器,并且可以包括例如闪存器件的半导体存储器件25000,以及控制半导体存储器件25000的操作的存储控制器24000。
电子器件20000可以包括处理器21000,来控制电子器件20000的整体操作。存储控制器24000可以受到处理器21000的控制。
处理器21000可以根据来自输入设备22000的输入信号、通过显示器23000来显示半导体存储器件25000中储存的数据。例如:输入设备22000可以由指针设备来实施,例如触摸板或计算机鼠标、键区或键盘。
图19为示意性例示包括根据本发明实施例中控制器32000与半导体存储器件34000的电子器件30000的框图。
控制器32000和半导体存储器件34000可以分别对应于上面参阅图3至图13所描述的存储控制器100和半导体存储器件200。
请参阅图19,电子系统30000可以包括卡接口31000、控制器32000以及半导体存储器件34000,例如闪存器件。
电子器件30000可以通过卡接口31000来与主机交换数据。卡接口31000可以为安全数字(SD)卡接口或多媒体(MMC)卡接口,这将不限制本发明的范围。卡接口31000可以根据主机的能够与电子器件30000通信的通信协议与主机和控制器32000联接。
控制器32000可以控制电子器件30000的整体操作,并且控制卡接口31000与半导体存储器件34000之间的数据交换。控制器32000的缓冲存储器33000可以缓冲在卡接口31000与半导体存储器件34000之间传输的数据。
控制器32000可以通过数据总线DATA以及地址总线ADDRESS,与卡接口31000和半导体存储器件34000耦接。根据一个实施例,控制器32000可以通过地址总线ADDRESS从卡接口31000接收要读取或写入的数据的地址,并且可以将其传送至半导体存储器件34000。进一步,控制器32000可以通过与卡接口31000或半导体存储器件34000连接的数据总线DATA来接收或传输要读取或写入的数据。
当电子器件30000与主机连接,例如PC、平板PC、数字相机、数字音频播放器、移动电话、中控台游戏硬件或数字机顶盒,则主机可以通过卡接口31000以及控制器32000与半导体存储器件34000交换数据。
图20为示意性例示包括根据本发明实施例中存储控制器44000与半导体存储器件45000的电子器件40000的框图。
存储控制器44000和半导体存储器件45000可以分别对应于上面参阅图3至图13所描述的存储控制器100和半导体存储器件200。
请参阅图20,电子器件40000可以包括例如闪存器件的半导体存储器件45000、控制半导体存储器件45000的数据处理操作的存储控制器44000、以及控制电子器件40000整体操作的处理器41000。
进一步,电子器件40000的图像传感器42000可以将光学信号转换成数字信号,并且转换的数字信号可以在处理器41000的控制之下储存在半导体存储器件45000中。否则,转换的数字信号可以在处理器41000的控制之下通过显示器43000显示。
图21为示意性例示包括根据本发明实施例中存储控制器61000与半导体存储器件62000A、62000B和62000C的电子器件60000的框图。
存储控制器61000和半导体存储器件62000A、62000B和62000C可以分别对应于上面参阅图3至图13所描述的存储控制器100和半导体存储器件200。
请参阅图21,电子器件60000可以由数据储存器件,例如固态硬盘(SSD)来实施。
电子器件60000可以包括多个半导体存储器件62000A、62000B和62000C,以及控制各种半导体存储器件62000A、62000B和62000C每一个的数据处理操作的存储控制器61000。
电子器件60000可以由存储系统或存储器模块来实施。
例如:存储控制器61000可以在电子器件60000之外或之中实施。
图22为包括参阅图21所描述电子器件6000的数据处理系统的框图。
请参阅图21和图22,数据储存器件70000可以由独立磁盘冗余阵列(RAID,redundant array of independent disks)系统来实施。数据储存器件70000可以包括RAID控制器71000以及多个存储系统72000A至72000N,其中N为自然数。
存储系统72000A至72000N每一个都可以对应于参阅图21描述的电子器件60000。存储系统72000A至72000N可以形成RAID系统。数据储存器件70000可以由SSD实施。
在编程操作期间,RAID控制器71000可以根据基于从主机输出的RAID阶层信息而从多个RAID阶层中选取的一个来将从主机输出的编程数据输出至存储系统72000A至72000N之一。
在编程操作期间,RAID控制器71000可以基于从主机输出的RAID阶层信息根据从多个RAID阶层所选取的一个来将从存储系统72000A至72000N之一读取的数据传输给主机。
虽然已经针对特定实施例来描述本发明,然而精通技术人士将了解,在不背离如以下权利要求范围所定义的本发明精神与领域之下,可以进行各种变更与修改。
通过以上实施例可以看出,本申请提供了以下的技术方案。
技术方案1.一种控制器的操作方法,包括:
根据第一读取电压将第一ECC解码迭代预定迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验USC的数量来更新;以及
当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于第一ECC解码迭代期间更新值之中的USC最小数量。
技术方案2.如技术方案1所述的控制器的操作方法,其中所述第一ECC解码为低密度奇偶校验LDPC解码。
技术方案3.如技术方案2所述的控制器的操作方法,其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件。
技术方案4.一种控制器的操作方法,包括:
第一步骤,根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;
第二步骤,基于所述第一ECC解码的结果中所包括的未满足的故障校验USC来确定所述第一ECC解码已失败还是已成功;
第三步骤,当确定所述第一ECC解码已失败时,基于所述USC的数量来更新所述第一读取电压的值;以及
第四步骤,将所述第一步骤至第三步骤迭代预定迭代次数,直到所述第一ECC解码成功。
技术方案5.如技术方案4所述的控制器的操作方法,还包括:
第五步骤,当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于所述第四步骤期间更新值之中的USC最小数量。
技术方案6.如技术方案4所述的控制器的操作方法,其中所述第一ECC解码为低密度奇偶校验LDPC解码。
技术方案7.一种控制器,包括:
装置,用于:根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验USC的数量来更新;以及
装置,用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于所述第一ECC解码迭代期间更新值之中的USC最小数量。
技术方案8.如技术方案7所述的控制器,其中所述第一ECC解码为低密度奇偶校验LDPC解码。
技术方案9.如技术方案8所述的控制器,其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件。
技术方案10.一种控制器,包括:
第一装置,用于:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;
第二装置,用于:基于所述第一ECC解码的结果中所包括的未满足的故障校验USC来确定所述第一ECC解码已失败还是已成功;以及
第三装置,用于:当确定所述第一ECC解码已失败时,基于USC的数量来更新所述第一读取电压的值,
其中所述控制器将所述第一装置至第三装置的操作迭代预定迭代次数,直到所述第一ECC解码成功。
技术方案11.如技术方案10所述的控制器,还包括:
第四装置,用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于所述第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
技术方案12.如技术方案10所述的控制器,其中所述第一ECC解码为低密度奇偶校验LDPC解码。
技术方案13.一种半导体存储系统,包括:
半导体存储器件;以及
控制器,
其中所述控制器包括:
装置,用于:根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验USC的数量来更新;以及
装置,用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于所述第一ECC解码迭代期间更新值之中的USC最小数量。
技术方案14.如技术方案13所述的半导体存储系统,其中所述第一ECC解码为低密度奇偶校验LDPC解码。
技术方案15.如技术方案14所述的半导体存储系统,其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件。
技术方案16.一种半导体存储系统,包括:
半导体存储器件;以及
控制器,
其中所述控制器包括:
第一装置,用于:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码;
第二装置,用于:基于所述第一ECC解码结果中所包括的未满足的故障校验USC来确定所述第一ECC解码已失败还是已成功;以及
第三装置,用于:当确定所述第一ECC解码已失败时,基于USC的数量来更新所述第一读取电压的值,以及
其中所述控制器将所述第一装置至第三装置的操作迭代预定迭代次数,直到所述第一ECC解码成功。
技术方案17.如技术方案16所述的半导体存储系统,其中,所述控制器还包括第四装置,所述第四装置用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于所述第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
技术方案18.如技术方案16所述的半导体存储系统,其中所述第一ECC解码为低密度奇偶校验LDPC解码。
Claims (9)
1.一种控制器的操作方法,包括:
根据第一读取电压将第一ECC解码迭代预定迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验USC的数量来更新;以及
当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于第一ECC解码迭代期间更新值之中的USC最小数量,
其中所述第一ECC解码为低密度奇偶校验LDPC解码,以及
其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件。
2.一种控制器的操作方法,包括:
第一步骤,根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码,其中所述第一ECC解码为低密度奇偶校验LDPC解码;
第二步骤,基于所述第一ECC解码的结果中所包括的未满足的故障校验USC来确定所述第一ECC解码已失败还是已成功,其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件;
第三步骤,当确定所述第一ECC解码已失败时,基于所述USC的数量来更新所述第一读取电压的值;以及
第四步骤,将所述第一步骤至第三步骤迭代预定迭代次数,直到所述第一ECC解码成功。
3.如权利要求2所述的控制器的操作方法,还包括:
第五步骤,当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于所述第四步骤期间更新值之中的USC最小数量。
4.一种控制器,包括:
装置,用于:根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验USC的数量来更新;以及
装置,用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于所述第一ECC解码迭代期间更新值之中的USC最小数量,
其中所述第一ECC解码为低密度奇偶校验LDPC解码,以及
其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件。
5.一种控制器,包括:
第一装置,用于:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码,其中所述第一ECC解码为低密度奇偶校验LDPC解码;
第二装置,用于:基于所述第一ECC解码的结果中所包括的未满足的故障校验USC来确定所述第一ECC解码已失败还是已成功,其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件;以及
第三装置,用于:当确定所述第一ECC解码已失败时,基于USC的数量来更新所述第一读取电压的值,
其中所述控制器将所述第一装置至第三装置的操作迭代预定迭代次数,直到所述第一ECC解码成功。
6.如权利要求5所述的控制器,还包括:
第四装置,用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于所述第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
7.一种半导体存储系统,包括:
半导体存储器件;以及
控制器,
其中所述控制器包括:
装置,用于:根据第一读取电压将第一ECC解码迭代预定的迭代次数直到所述第一ECC解码成功,所述第一ECC解码是对从半导体存储器件读取的码字执行的,其中所述第一读取电压的值基于未满足故障校验USC的数量来更新;以及
装置,用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对码字执行第二ECC解码,该第一读取电压的值对应于所述第一ECC解码迭代期间更新值之中的USC最小数量,
其中所述第一ECC解码为低密度奇偶校验LDPC解码,以及
其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件。
8.一种半导体存储系统,包括:
半导体存储器件;以及
控制器,
其中所述控制器包括:
第一装置,用于:根据第一读取电压对从半导体存储器件读取的码字执行第一ECC解码,其中所述第一ECC解码为低密度奇偶校验LDPC解码;
第二装置,用于:基于所述第一ECC解码结果中所包括的未满足的故障校验USC来确定所述第一ECC解码已失败还是已成功,其中所述USC为由所述LDPC解码的故障校验所产生的向量的非零组件;以及
第三装置,用于:当确定所述第一ECC解码已失败时,基于USC的数量来更新所述第一读取电压的值,以及
其中所述控制器将所述第一装置至第三装置的操作迭代预定迭代次数,直到所述第一ECC解码成功。
9.如权利要求8所述的半导体存储系统,其中,所述控制器还包括第四装置,所述第四装置用于:当直至所述预定的迭代次数而所述第一ECC解码仍失败时,则通过根据所述第一读取电压而产生软决策数据来对所述码字执行第二ECC解码,该第一读取电压的值对应于所述第一装置至第三装置迭代操作期间更新值之中的USC最小数量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2014-0142355 | 2014-10-21 | ||
KR1020140142355A KR20160046467A (ko) | 2014-10-21 | 2014-10-21 | 컨트롤러, 반도체 메모리 시스템, 데이터 저장 시스템 및 그것의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105529049A CN105529049A (zh) | 2016-04-27 |
CN105529049B true CN105529049B (zh) | 2020-11-06 |
Family
ID=55749879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510350141.0A Active CN105529049B (zh) | 2014-10-21 | 2015-06-23 | 控制器、半导体存储系统、数据储存系统及其操作方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9680504B2 (zh) |
KR (1) | KR20160046467A (zh) |
CN (1) | CN105529049B (zh) |
TW (1) | TWI649753B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9977713B2 (en) * | 2015-03-20 | 2018-05-22 | SK Hynix Inc. | LDPC decoder, semiconductor memory system and operating method thereof |
TWI562152B (en) * | 2015-05-29 | 2016-12-11 | Phison Electronics Corp | Decoding method, memory storage device and memory control circuit unit |
KR102673873B1 (ko) * | 2016-06-30 | 2024-06-10 | 삼성전자주식회사 | 데이터 복구 방법 및 이를 적용하는 메모리 시스템 및 레이드 스토리지 시스템 |
KR102559925B1 (ko) * | 2016-07-21 | 2023-07-26 | 에스케이하이닉스 주식회사 | Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법 |
US10120585B2 (en) * | 2016-08-10 | 2018-11-06 | SK Hynix Inc. | Memory system of optimal read reference voltage and operating method thereof |
US10409672B2 (en) * | 2016-11-16 | 2019-09-10 | SK Hynix Inc. | Media quality aware ECC decoding method selection to reduce data access latency |
JP2018152146A (ja) * | 2017-03-09 | 2018-09-27 | 東芝メモリ株式会社 | 半導体記憶装置及びデータ読み出し方法 |
US10331514B2 (en) | 2017-03-17 | 2019-06-25 | Micron Technology, Inc. | Tiered error correction code (ECC) operations in memory |
US11237908B2 (en) | 2017-03-29 | 2022-02-01 | SK Hynix Inc. | Memory system and operating method thereof |
KR102386703B1 (ko) * | 2017-09-13 | 2022-04-14 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그것의 동작 방법 |
US10469103B1 (en) * | 2017-04-19 | 2019-11-05 | Seagate Technology Llc | Adaptive read retry optimization |
US10236067B2 (en) * | 2017-08-02 | 2019-03-19 | International Business Machines Corporation | State-dependent read voltage threshold adaptation for nonvolatile memory |
TWI631570B (zh) * | 2017-09-04 | 2018-08-01 | 威盛電子股份有限公司 | 錯誤檢查糾正解碼方法與裝置 |
US10700706B2 (en) * | 2017-09-22 | 2020-06-30 | SK Hynix Inc. | Memory system with decoders and method of operating such memory system and decoders |
US11005503B2 (en) * | 2018-03-16 | 2021-05-11 | SK Hynix Inc. | Memory system with hybrid decoding scheme and method of operating such memory system |
CN110444245B (zh) * | 2018-05-03 | 2023-07-18 | 爱思开海力士有限公司 | 具有混合迭代解码能力的存储器系统及其操作方法 |
KR102475805B1 (ko) * | 2018-08-20 | 2022-12-09 | 에스케이하이닉스 주식회사 | 디코더, 그것의 동작 방법 및 메모리 시스템 |
JP2020087491A (ja) | 2018-11-21 | 2020-06-04 | キオクシア株式会社 | 半導体記憶装置 |
KR20200079134A (ko) * | 2018-12-24 | 2020-07-02 | 에스케이하이닉스 주식회사 | 컨트롤러 및 이를 포함하는 메모리 시스템 |
KR20210033713A (ko) * | 2019-09-19 | 2021-03-29 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그 동작 방법 |
CN113131947B (zh) * | 2019-12-30 | 2023-11-10 | 华为技术有限公司 | 译码方法、译码器和译码装置 |
KR20210143581A (ko) | 2020-05-20 | 2021-11-29 | 에스케이하이닉스 주식회사 | 컨트롤러 및 이를 포함하는 메모리 시스템 |
CN112234998A (zh) * | 2020-08-17 | 2021-01-15 | 西安电子科技大学 | 一种使用滑动窗口译码空间耦合ldpc码的方法及装置 |
KR102532038B1 (ko) | 2021-12-15 | 2023-05-12 | 삼성전자주식회사 | 에러 정정 코드(ecc) 디코딩 방법 및 이를 수행하는 메모리 시스템 |
US20240333310A1 (en) * | 2023-04-03 | 2024-10-03 | Dell Products L.P. | Storage device syndrome-weight-based error correction system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101976584A (zh) * | 2010-10-27 | 2011-02-16 | 记忆科技(深圳)有限公司 | 准循环低密度奇偶校验码译码器及译码方法 |
WO2012039983A1 (en) * | 2010-09-24 | 2012-03-29 | Rambus Inc. | Memory device with ecc history table |
US8312354B1 (en) * | 2007-12-27 | 2012-11-13 | Marvell International Ltd. | Method and apparatus for improved performance of iterative decoders on channels with memory |
CN102985975A (zh) * | 2010-03-12 | 2013-03-20 | Lsi公司 | 闪存的低密度奇偶校验擦除译码 |
CN103035294A (zh) * | 2011-09-28 | 2013-04-10 | 三星电子株式会社 | 从非易失性存储器读数据的方法及实施方法的设备和系统 |
CN103730162A (zh) * | 2012-10-15 | 2014-04-16 | Lsi公司 | 用于多级单元的非易失性存储器的加速软读取 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7197690B2 (en) | 2002-05-31 | 2007-03-27 | Broadcom Corporation | Bandwidth efficient coded modulation scheme based on MLC (multi-level code) signals having multiple maps |
US7020829B2 (en) | 2002-07-03 | 2006-03-28 | Hughes Electronics Corporation | Method and system for decoding low density parity check (LDPC) codes |
US7383487B2 (en) | 2004-01-10 | 2008-06-03 | Broadcom Corporation | IPHD (iterative parallel hybrid decoding) of various MLC (multi-level code) signals |
EP1832002A1 (en) | 2004-12-29 | 2007-09-12 | Intel Corporation | Multilevel low density parity-check |
KR20060106041A (ko) | 2005-04-06 | 2006-10-12 | 이광재 | 반-비아씨엠 기법을 이용하는 다중 레벨 부호 송수신기 |
US8406048B2 (en) * | 2008-08-08 | 2013-03-26 | Marvell World Trade Ltd. | Accessing memory using fractional reference voltages |
CN101803205B (zh) | 2008-08-15 | 2013-12-18 | Lsi公司 | 近码字的ram列表解码 |
KR101718543B1 (ko) * | 2010-11-17 | 2017-03-22 | 한국과학기술원 | 개선된 비트 반전 알고리즘 기반의 저밀도 패리티 검사 부호를 위한 복호 방법, 장치 및 이를 위한 기록 매체 |
US8719663B2 (en) * | 2010-12-12 | 2014-05-06 | Lsi Corporation | Cross-decoding for non-volatile storage |
US8484519B2 (en) | 2011-08-19 | 2013-07-09 | Stec, Inc. | Optimal programming levels for LDPC |
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 |
US8869011B2 (en) * | 2013-01-03 | 2014-10-21 | International Business Machines Corporation | Unequal error protection scheme for headerized sub data sets |
KR102110767B1 (ko) * | 2013-12-24 | 2020-06-09 | 삼성전자 주식회사 | 메모리 컨트롤러 구동방법 및 메모리 컨트롤러 |
-
2014
- 2014-10-21 KR KR1020140142355A patent/KR20160046467A/ko not_active Application Discontinuation
-
2015
- 2015-02-26 TW TW104106232A patent/TWI649753B/zh active
- 2015-02-27 US US14/634,182 patent/US9680504B2/en active Active
- 2015-06-23 CN CN201510350141.0A patent/CN105529049B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8312354B1 (en) * | 2007-12-27 | 2012-11-13 | Marvell International Ltd. | Method and apparatus for improved performance of iterative decoders on channels with memory |
CN102985975A (zh) * | 2010-03-12 | 2013-03-20 | Lsi公司 | 闪存的低密度奇偶校验擦除译码 |
WO2012039983A1 (en) * | 2010-09-24 | 2012-03-29 | Rambus Inc. | Memory device with ecc history table |
CN101976584A (zh) * | 2010-10-27 | 2011-02-16 | 记忆科技(深圳)有限公司 | 准循环低密度奇偶校验码译码器及译码方法 |
CN103035294A (zh) * | 2011-09-28 | 2013-04-10 | 三星电子株式会社 | 从非易失性存储器读数据的方法及实施方法的设备和系统 |
CN103730162A (zh) * | 2012-10-15 | 2014-04-16 | Lsi公司 | 用于多级单元的非易失性存储器的加速软读取 |
Also Published As
Publication number | Publication date |
---|---|
TW201616510A (zh) | 2016-05-01 |
US9680504B2 (en) | 2017-06-13 |
US20160112068A1 (en) | 2016-04-21 |
CN105529049A (zh) | 2016-04-27 |
KR20160046467A (ko) | 2016-04-29 |
TWI649753B (zh) | 2019-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105529049B (zh) | 控制器、半导体存储系统、数据储存系统及其操作方法 | |
CN105913879B (zh) | 控制器、半导体存储系统及其操作方法 | |
CN105957553B (zh) | 控制器、半导体存储系统及其操作方法 | |
CN106128510B (zh) | 控制器、半导体存储系统及其操作方法 | |
US10623025B2 (en) | Operating method of memory system | |
US9798614B2 (en) | Controller, semiconductor memory system and operating method thereof | |
US10103749B2 (en) | LDPC decoder, semiconductor memory system and operating method thereof | |
US9977713B2 (en) | LDPC decoder, semiconductor memory system and operating method thereof | |
US9619327B2 (en) | Flash memory system and operating method thereof | |
US9825651B2 (en) | Controller, semiconductor memory system and operating method thereof | |
US20160247576A1 (en) | Memory controller and operating method thereof | |
US20180341543A1 (en) | Controller, semiconductor memory system and operating method thereof | |
KR102556479B1 (ko) | Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법 | |
US11387845B2 (en) | LDPC decoder, operating method of LDPC decoder, and semiconductor memory system | |
US20170097870A1 (en) | Operating method of memory system | |
US10528496B2 (en) | Controller and operating method thereof | |
KR20170007635A (ko) | 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |