CN105719701B - 半导体存储器设备及其操作方法 - Google Patents
半导体存储器设备及其操作方法 Download PDFInfo
- Publication number
- CN105719701B CN105719701B CN201510455742.8A CN201510455742A CN105719701B CN 105719701 B CN105719701 B CN 105719701B CN 201510455742 A CN201510455742 A CN 201510455742A CN 105719701 B CN105719701 B CN 105719701B
- Authority
- CN
- China
- Prior art keywords
- data
- program
- semiconductor memory
- memory system
- user data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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
-
- 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/1072—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 in multilevel memories
-
- 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/1048—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 arrangements adapted for a specific error detection or correction feature
-
- 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/1068—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 in sector programmable memories, e.g. flash disk
-
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
-
- 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/10—Programming or data input circuits
- G11C16/12—Programming voltage switching circuits
-
- 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/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
-
- 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/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/024—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in decoders
-
- 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/14—Implementation of control logic, e.g. test mode decoders
-
- 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/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- 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
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Computer Hardware Design (AREA)
Abstract
本发明涉及一种半导体存储器***的操作方法,包括:对存储在半导体存储***中的第一数据执行第一错误校正码(ECC)解码,其中,第一数据包括用户数据、针对用户数据的ECC数据以及针对用户数据的状态数据;以及在对用户数据的第一ECC解码失败时,通过基于第一数据的状态数据改变读取电压来对用户数据执行第二ECC解码。本发明还涉及一种半导体存储器***以及一种控制器。
Description
相关申请的交叉引用
本申请要求2014年12月17日提交的韩国专利申请10-2014-0182646号的优先权,其全部内容通过引用合并于此。
技术领域
本发明的各种示例性实施例涉及一种半导体存储器***,尤其涉及能够提高数据读取的可靠性的半导体存储器***及其操作方法。
背景技术
诸如快闪存储器设备的非易失性半导体存储器设备尽管断电仍保持存储在存储器块中的数据。非易失性半导体存储器设备能够通过重复地执行编程和擦除数据的操作重复地将数据存储在存储器块中。编程/擦除循环的数量体现这种编程操作和擦除操作的重复数量。单个编程/擦除循环包括单个编程操作和单个擦除操作。随着重复地执行编程操作和擦除操作,编程/擦除循环的数量可能增加。
编程/擦除循环的数量可以参考编程电压被划分为多个编程/擦除循环组。此外,编程/擦除循环的数量可以参考读取电压被划分为多个读取-重试组。
图1A是例示适用于半导体存储器设备中的数据编程的编程/擦除循环组的表。图1B是例示适用于半导体存储器设备中的数据读取的读取-重试组的表。
参考图1A,编程/擦除循环组可以包括第一到第五编程/擦除循环组PGr1、PGr2、PGr3、PGr4和PGr5。例如,第一编程/擦除循环组PGr1可以表示范围在0以上0.2K以下的编程/擦除循环数,第二编程/擦除循环组PGr2可以表示范围在0.2K以上0.5K以下的编程/擦除循环数,第三编程/擦除循环组PGr3可以表示范围在0.5K以上1K以下的编程/擦除循环数,第四编程/擦除循环组PGr4可以表示范围在1K以上2K以下的编程/擦除循环数,第五编程/擦除循环组PGr5可以表示范围在2K以上3K以下的编程/擦除循环数。
第一到第五编程/擦除循环组PGr1、PGr2、PGr3、PGr4和PGr5中的每一个包括多个表示存储器块的地址的索引。多个索引可以分别对应于多个编程电压PVL。例如,第一编程/擦除循环组PGr1的索引0到索引n可以与在数据编程期间分别施加到第0到第n存储器块的编程电压PV10到PV1n的值相对应。第二编程/擦除循环组PGr2的索引0到索引n可以与在数据编程期间施加的编程电压PV20到PV2n的值相对应。第三编程/擦除循环组PGr3的索引0到索引n可以与在数据编程期间施加的编程电压PV30到PV3n的值相对应。第四编程/擦除循环组PGr4的索引0到索引n可以与在数据编程期间施加的编程电压PV40到PV4n的值相对应。第五编程/擦除循环组PGr5的索引0到索引n可以与在数据编程期间施加的编程电压PV50到PV5n的值相对应。
参考图1B,读取-重试组可以包括第一到第五读取-重试组RGr1、RGr2、RGr3、RGr4和RGr5。第一到第五读取-重试组RGr1、RGr2、RGr3、RGr4和RGr5分别对应于第一到第五编程/擦除循环组PGr1、PGr2、PGr3、PGr4和PGr5。
例如,第一读取-重试组RGr1可以表示范围在0以上0.2K以下的编程/擦除循环数,第二读取-重试组RGr2可以表示范围在0.2K以上0.5K以下的编程/擦除循环数,第三读取-重试组RGr3可以表示范围在0.5K以上1K以下的编程/擦除循环数,第四读取-重试组RGr4可以表示范围在1K以上2K以下的编程/擦除循环数,第五读取-重试组RGr5可以表示范围在2K以上3K以下的编程/擦除循环数。
第一到第五读取-重试组RGr1、RGr2、RGr3、RGr4和RGr5中的每一个分别包括索引0到索引n。索引0到索引n中的每一个可以与在多层单元(MLC)快闪存储器设备的数据读取期间分别施加到第0到第n存储器块的多个读取电压的值相对应。例如,第0索引(索引0)可以与在MLC的数据读取期间施加到第0存储器块的读取电压REVL1、REVL2和REVL3的3个值RV10、RV20和RV30相对应。第1索引(索引1)可以与在MLC的数据读取期间施加到第1存储器块的读取电压REVL1、REVL2和REVL3的3个值RV11、RV21和RV31相对应。第n索引(索引n)可以与在MLC的数据读取期间施加到第n存储器块的读取电压REVL1、REVL2和REVL3的3个值RV1n、RV2n和RV3n相对应。
可以以存储器芯片为单位管理多个编程/擦除循环组和多个读取-重试组。
在使用第一到第五编程/擦除循环组PGr1、PGr2、PGr3、PGr4和PGr5将数据编程在半导体存储器设备中,并然后使用第一到第五读取-重试组RGr1、RGr2、RGr3、RGr4和RGr5从半导体存储器设备读取数据时,可能发生失配。
例如,在存储器芯片的编程/擦除循环数为499时,使用第二编程/擦除循环组PGr2对该存储器芯片中的第一存储器块执行数据编程操作。之后,在由于对相同存储器芯片的进一步编程操作存储器芯片的编程/擦除循环数被改编为501时,使用第三编程/擦除循环组PGr3对相同存储器芯片的第三存储器块执行数据编程操作。即,根据编程/擦除循环数,使用彼此不同的第二和第三编程/擦除循环组PGr2和PGr3对相同存储器芯片的第一和第三存储器块执行数据编程操作。
之后,在对第一存储器块的数据读取操作期间,在存储器芯片的编程/擦除循环数在999以下时,参考第三读取-重试组RGr3从第一存储器块读取数据。
因为使用第二编程/擦除循环组PGr2将数据编程到第一存储器块,并参考第三读取-重试组RGr3从第一存储器块读取编程的数据,所以可能发生第一存储器块的读取失败。即,由于编程条件和读取条件之间的差别可能发生第一存储器块的读取失败。
如上所述,在编程条件和读取条件彼此不同时可能发生读取失败。因此,半导体存储器设备的稳定操作可能无法被执行,而劣化半导体存储器设备的特性。
发明内容
本发明的各种实施例针对能够可靠地读取数据的半导体存储器***及其操作方法。
根据本发明的实施例,半导体存储器***的操作方法可以包括:对存储在半导体存储***中的第一数据执行第一错误校正码(ECC)解码,其中,第一数据包括用户数据、针对用户数据的ECC数据以及针对用户数据的状态数据;以及在对用户数据的第一ECC解码失败时,通过基于第一数据的状态数据改变读取电压来对用户数据执行第二ECC解码。
状态数据可以包括在第一数据被存储到半导体存储器***中时使用的编程电压的信息。
编程电压的信息可以是与多个编程电压组之一相对应的索引,多个编程电压组中的每一个是用于将数据存储到半导体存储器***中的编程电压的组,且多个编程电压组中的每一个被编索引。
第二步骤可以根据与索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对用户数据执行第二ECC解码。
半导体存储器***可以是多级单元(MLC)存储器***。
状态数据可以是最低有效位(LSB)数据。
与状态数据相对应的最高有效位(MSB)数据可以具有“FF”值。
状态数据可以包括多个在第一数据被存储到半导体存储器***中时使用的编程电压的信息。
半导体存储器***可以包括状态数据存储区域。
用于编程操作的数据单元的索引和数据单元的状态数据被存储在状态数据存储区域中。
根据本发明的实施例,半导体存储器***可以包括:半导体存储器设备;以及控制器,其中该控制器包括对存储在半导体存储***中的第一数据的用户数据执行第一ECC解码的第一设备,其中,第一数据包括用户数据、针对用户数据的ECC数据以及针对用户数据的状态数据;以及在对用户数据的第一ECC解码失败时,通过基于第一数据的状态数据改变读取电压来对用户数据执行第二ECC解码的第二设备。
状态数据可以包括在第一数据被存储到半导体存储器***中时使用的编程电压的信息。
编程电压的信息可以是与多个编程电压组之一相对应的索引,多个编程电压组中的每一个是用于将数据存储到半导体存储器***中的编程电压的组,且多个编程电压组中的每一个被编索引。
第二设备可以根据与索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对用户数据执行第二ECC解码。
半导体存储器***可以是多级单元(MLC)存储器***。
状态数据可以是最低有效位(LSB)数据。
与状态数据相对应的最高有效位(MSB)数据可以具有“FF”值。
状态数据可以包括多个在第一数据被存储到半导体存储器***中时使用的编程电压的信息。
半导体存储器***可以包括状态数据存储区域。
用于编程操作的数据单元的索引和数据单元的状态数据可以被存储在状态数据存储区域中。
根据本发明的实施例,控制器可以包括:第一设备,其利用第一读取电压对存储在半导体存储***中的第一数据的用户数据执行第一ECC解码,并用于确定对用户数据的第一解码是否成功,其中,第一数据包括用户数据、针对用户数据的ECC数据以及针对用户数据的状态数据;第二设备,其在对用户数据的第一ECC解码失败时,基于第一数据的状态数据将第一读取电压改变为第二读取电压;以及第三设备,其利用第二读取电压对用户数据执行第二ECC解码,并用于确定对用户数据的第二解码是否成功,其中,第三装置通过改变第二读取电压预定次数重复用户数据的第二ECC解码的执行,直到对用户数据的第二ECC解码成功。
状态数据可以包括在第一数据被存储到半导体存储器***中时使用的编程电压的信息。
编程电压的信息可以是与多个编程电压组之一相对应的索引,多个编程电压组中的每一个是用于将数据存储到半导体存储器***中的编程电压的组,且多个编程电压组中的每一个被编索引。
第三设备可以根据与索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对用户数据执行第二ECC解码。
状态数据可以包括在第一数据被存储到半导体存储器***中时使用的多个重复的编程电压的信息。
根据本发明实施例,附加地存储编程/擦除循环组的信息,该信息包括在对存储器块的数据编程操作期间使用的编程电压的信息。在对所编程的数据的ECC解码失败时,可以基于编程/擦除循环组的信息重新读取所编程数据。因此,所编程数据可以被可靠地读取。
根据本发明实施例,作为状态数据附加地存储编程/擦除循环组的信息,该信息包括在将用户数据编程到存储器块中的同时使用的编程电压的信息。当对编程的用户数据的第一ECC解码失败时,可以对编程的用户数据再次执行读取操作,且可以基于编程的状态数据对重新读取的用户数据执行第二ECC解码。因此,用户数据可以被可靠地读取。
附图说明
图1A是例示适用于半导体存储器设备中的编程数据的编程/擦除循环组的表。
图1B是例示适用于从半导体存储器设备读取数据的读取-重试组的表。
图2是示意性例示根据本发明实施例的半导体存储器***的框图。
图3是示意性例示根据本发明实施例的包括在半导体存储器设备中的存储器块的存储器单元阵列电路的电路图。
图4是例示根据本发明实施例的半导体存储器设备的操作的流程图。
图5是例示根据本发明实施例的数据格式的示意图。
图6A到图6C是示意性例示根据本发明实施例的将状态数据存储在存储器块中的操作的图。
图7到图11是示意性例示根据本发明实施例的三维(3D)非易失性存储器设备的图。
图12到图14是示意性例示根据本发明实施例的3D非易失性存储器设备的图。
图15是示意性例示根据本发明实施例的包括半导体存储器***的电子设备的框图。
图16是示意性例示根据本发明实施例的包括半导体存储器***的电子设备的框图。
图17是示意性例示根据本发明实施例的包括半导体存储器***的电子设备的框图。
具体实施方式
下面将参照附图更详细地描述各种实施例。然而,本发明可以以不同形式来实施,并且不应当解释为是对这里阐述的实施例的限制。而是,提供这些实施例从而本公开充分完全,并向本领域的技术人员全面传达本发明的范围。附图不必按尺寸绘制,在一些实例中,比例可能被放大以清楚地例示实施例的特征。在整个公开中,附图标记直接对应于各个图和本发明实施例中的相同部分。还请注意:在本说明书中,“被连接/被耦合”不仅指一个部件直接耦合到另一部件,而且指一个部件经由中间部件间接耦合到另一部件。另外,单数形式可以包括复数形式,只要在句子中没有具体提到。应该容易地理解:本公开中的“在...上(on)”和“在...之上(over)”的含义应该被以最广的方式解释,使得“在...上”的含义不仅为“直接在...上”,还为“以其间具有中间特征或中间层的方式在某物上”,且使得“在...之上”的含义不仅为直接在顶上,还为以其间具有中间特征或中间层的方式在某物顶上。当第一层被称为“在第二层上”或“在基底上”时,不仅指第一层直接形成在第二层或基底上的情形,还指在第一层和第二层或基底之间存在第三层的情形。
图2是示意性例示根据本发明实施例的半导体存储器***110的框图。图2是示例性示出根据本发明实施例的包括半导体存储器***110的数据处理***10。
参考图2,数据处理***10可以包括主机HOST 100以及半导体存储器***110。
主机100可以是下面之一:包括蜂窝电话、MP3播放器、膝上型计算机等的便携式电子设备,以及诸如台式计算机、游戏机、电视、投影仪等的电子设备。
半导体存储器***110可以响应于来自主机100的请求进行操作,且可以存储要由主机100存取的数据。即,半导体存储器***110可以用作主机100的主存储设备或者辅助存储设备。半导体存储器***110可以根据耦合到主机100的主机接口协议被实现为各种存储设备之一。例如,半导体存储器***110包括固态硬盘(SSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、小尺寸多媒体卡(RS-MMC)、微尺寸版本MMC(MMCmicro)、安全数字(SD)卡、迷你安全数字(miniSD)卡、微安全数字(microSD)卡、安全数字高容量(SDHC)、通用存储总线(USB)存储设备、通用快闪存储(UFS)设备、小型快闪(CF)卡、智能媒体卡(SM)卡、存储棒等。
可以用诸如DRAM(动态随机存取存储器)和SRAM(静态RAM)的易失性存储器设备以及诸如ROM(只读存储器)、MROM(掩模型ROM)、PROM(可编程ROM)、EPROM(可擦除ROM)、EEPROM(电可擦除ROM)、FRAM(铁磁ROM)、PRAM(相变RAM)、MRAM(磁RAM)、RRAM(电阻式RAM)和快闪存储器的非易失性存储器设备中的一个或更多个来实现存储设备。
半导体存储器***110可以包括半导体存储器设备200和存储器控制器120。半导体存储器设备200可以存储要由主机100存取的数据。存储器控制器120可以对将数据存储在半导体存储器设备200中进行控制。
控制器120和半导体存储器设备200可以被整合为单一半导体设备。例如,控制器120和半导体存储器设备200可以被整合为单一半导体设备以形成SSD。当半导体存储器***110被用作SSD时,耦合到半导体存储器***110的主机100的操作速度可以被显著地提高。
控制器120和半导体存储器设备200可以被整合为单一半导体设备以配置存储卡。例如,控制器120和半导体存储器设备200可以被整合为单一半导体设备以形成存储卡,诸如个人计算机存储卡国际协会的PC卡(PCMCIA)、小型快闪(CF)卡、智能媒体卡(SM)卡、存储棒、多媒体卡(MMC)、小尺寸多媒体卡(RS-MMC)和微尺寸版本MMC(MMCmicro)、安全数字(SD)卡、迷你安全数字(miniSD)卡、微安全数字(microSD)卡、安全数字高容量(SDHC)、通用快闪存储(UFS)等。
关于另一个例子,半导体存储器***110可以被提供为形成电子设备的各种元件之一,电子设备诸如是计算机、超级移动个人计算机(UMPC)、工作站、网-书(net-book)计算机、个人数字助理(PDA)、便携式计算机、网络本、平板计算机、无线电话、移动电话、智能电话、电子书阅读器、便携式多媒体播放器(PMP)、便携式游戏设备、导航设备、黑匣子、数码照相机、数字多媒体广播(DMB)播放器、3维电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、数据中心的存储设备、能够在无线环境下接收和发送信息的设备、家庭网络的电子设备之一、计算机网络的电子设备之一、远程信息处理网络的电子设备之一、射频识别(RFID)设备、或者计算***的元件和设备。
半导体存储器***110的半导体存储器设备200即使在电源被切断时也可以保持存储在其中的数据。半导体存储器设备200可以通过写操作存储从主机100提供的数据,并且可以通过读操作将所存储的数据提供到主机100。
半导体存储器设备200可以包括存储器块210、控制电路220、电压管理单元230、行解码器240、页缓冲器250以及列解码器260。半导体存储器设备200可以是非易失性存储器设备,例如快闪存储器设备。半导体存储器设备200可以具有3维(3D)堆栈结构。
存储器块210可以包括多个页,每一个页包括耦合到多个字线WL的多个存储器单元。
控制电路220可以控制半导体存储器设备200的整个操作,包括编程、擦除和读取操作。
电压管理单元230可以根据操作模式向多个字线中的每一个提供字线电压(例如,编程、读取)以及通过电压,并且可以向形成多个存储器单元的堆(例如阱区域)提供电压。电压管理单元230可以在控制电路220的控制下提供电压。电压管理单元230可以提供多个可变读取电压以生成多个读取数据。
行解码器240可以选择存储器单元阵列210的多个存储器块或者扇区之一,并且可以在控制电路220的控制下选择所选存储器块的多个字线之一。行解码器240可以在控制电路220的控制下,将由电压管理单元230生成的字线电压分别提供给所选字线和未选字线。
页缓冲器250可以在控制电路220的控制下操作。在编程操作期间,页缓冲器250可以用作用于根据要存储在存储器单元阵列211中的数据驱动位线的写驱动器。在编程操作期间,多个页缓冲器250可以从缓冲器(未示出)接收要编程在存储器单元阵列211中的数据,并可以根据所接收的数据驱动位线。多个页缓冲器250可以分别对应于多个列或位线,或分别对应于多个列对或位线对。页缓冲器250可以包括多个锁存器。
半导体存储器***110的存储器控制器120可以响应于来自主机100的请求控制半导体存储器设备200。例如,存储器控制器120可以将从半导体存储器设备200读取的数据提供到主机100,并且可以将从主机100提供的数据存储在半导体存储器设备200中。为此,存储器控制器120可以控制半导体存储器设备200的编程、读取和擦除操作。
存储器控制器120可以包括主机接口单元(主机I/F)130、处理器140、ECC单元160、电力管理单元(PMU)170、NAND快闪控制器(NFC)180和存储器190。
主机接口单元130可以处理由主机100提供的命令和数据。主机接口单元130可以通过一个或更多接口协议与主机100通信,接口协议诸如是通用串行总线(USB)、多媒体卡(MMC)、***组件快速互连(PCI-E)、小型计算机***接口(SCSI)、串行连接SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、增强小型盘接口(ESDI)和集成驱动电子设备(IDE)。
ECC单元160可以在读取操作期间检测和校正在从半导体存储器设备200读取的数据中包括的错误。ECC单元160可以对从半导体存储器设备200读取的数据进行ECC解码操作,确定ECC解码是否成功,根据该确定提供指令信号,并使用通过ECC编码生成的奇偶校验位校正包括在所读取数据中的错误位。当ECC单元160可能不校正错误位或者所进行的校正操作的数量超过了给定错误校正能力时,根据ECC解码的失败,ECC失败信号生成。
ECC单元160可以通过编码调制校正错误,编码调制诸如是低密度奇偶校验(LDPC)码、博斯-乔赫里-霍克文黑姆(BCH,Bose-Chaudhuri-Hocquenghem)码、turbo码、Reed-Solomon(RS)码、卷积码、RSC(回归***码)、格状编码调制(TCM)、块编码调制(BCM)等。ECC单元160可以包括错误校正电路、错误校正***和错误校正设备。
PMU 170可以管理存储器控制器120的功率或者包括在存储器控制器120中的元件的功率。
NFC 180可以用作存储器控制器120和半导体存储器设备200之间的接口,以供存储器控制器120响应于来自主机100的请求控制半导体存储器设备200,且在半导体存储器设备200是快闪存储器设备(例如NAND快闪存储器设备)时,NFC 180可以生成半导体存储器设备200的控制信号,并在处理器140的控制下处理数据。
存储器190可以用作半导体存储器***110和存储器控制器120的工作存储器,并且可以存储用于驱动半导体存储器***110和存储器控制器120的数据。存储器控制器120响应于来自主机100的请求控制半导体存储器设备200,例如,存储器控制器120向主机100提供从半导体存储器设备200读取的数据,并将从主机100提供的数据存储在半导体存储器设备200中。为此,存储器控制器120控制半导体存储器设备200的编程、读取和擦除操作,且存储器190可以存储存储器控制器120和半导体存储器设备200之间的这种操作所需的数据。
存储器190可以用易失性存储器,例如SRAM或DRAM实现。存储器190可以存储存储器控制器120和半导体存储器设备200之间的操作所需的数据、编程和读取操作所需的数据、以及在编程和读取操作期间要编程和读取的数据。为此,存储器190可以包括编程存储器、数据存储器、写缓冲器、读缓冲器、映射缓冲器等。
存储器190可以存储包括ECC单元160和处理器140之间的数据读取的各操作所需的数据、以及在该数据读取操作期间要存储的数据。即,存储器190可以存储从半导体存储器设备200读取的数据。数据可以包括用户数据、ECC数据和状态数据。状态数据可以包括在数据被编程在半导体存储器设备200的存储器块210中的同时应用的编程/擦除循环组的信息。
处理器140可以执行半导体存储器***110的一般控制操作,且可以响应于来自主机100的编程和读取请求来控制半导体存储器设备200的编程和读取操作。处理器140可以驱动被称为闪存转换层(FTL)的固件,以执行半导体存储器***110的一般控制操作。处理器140可以被实现为微处理器或中央处理单元(CPU)。
在对存储器芯片的存储器块210的数据编程操作期间,处理器140可以使半导体存储器设备200和编程数据参考与存储器芯片的编程/擦除循环数相对应的编程/擦除循环组。
更具体地,要编程到存储器块210的数据可以是用户数据、ECC数据和状态数据。ECC数据可以被用于用户数据的错误检测和错误校正。
下文中,更详细地描述第一和第二错误校正码(ECC)解码操作。如上所述,状态数据可以包括在用户数据被编程在半导体存储器设备200的存储器块210中的同时应用的、包括编程电压的编程/擦除循环组的索引。即,状态数据可以包括用于用户数据的编程的编程电压的信息。状态数据可以表示与要用于被编程在存储器块210中的用户数据的读取的读取电压相对应的编程电压,以便防止编程电压和读取电压之间的失配。
状态数据可以包括编程/擦除循环组的索引,其大小在2字节以下,可以与用户数据和ECC数据一起存储。
当处理器140从ECC单元160接收到表示对用户数据ECC解码失败的信号时,基于参考图1A描述的存储在存储器190中的编程/擦除循环组的信息,处理器140可以检查由与ECC解码失败的用户数据相对应的状态数据表示的编程/擦除循环组,可以控制半导体存储器设备200使用由与ECC解码失败的用户数据相对应的状态数据表示的编程/擦除循环组对应的读取-重试组中包括的读取电压来重新读取用户数据,并将重新读取的用户数据提供给ECC单元160。
图3是示意性例示根据本发明实施例的包括在半导体存储器设备200中的存储器块210的存储器单元阵列电路的电路图。
参考图3,存储器块210可以包括分别耦合到位线BLO到BLm-1的多个单元串(cellstring)221。每一列的单元串221可以包括一个或更多漏极选择晶体管DST和一个或更多源极选择晶体管SST。多个存储器单元或存储器单元晶体管可以被串联地耦合在选择晶体管DST与SST之间。
存储器单元MCO到MCn-1中的每一个可以由在每个单元中存储多个位的数据信息的多级单元(MLC)形成。串221可以被分别电耦合到相应的位线BLO到BLm-1。
图4是例示根据本发明实施例的半导体存储器设备的操作的流程图。图5是例示根据本发明实施例的数据格式的示意图。
参考图4,在步骤S401中,控制器120可以接收从半导体存储器设备200的存储器块210读取的数据。可以通过作为与存储器芯片的存储器块210的编程/擦除循环的电流数相对应的读取-重试组之一的读取电压来读取数据。例如,在对数据执行读取操作的同时,控制器120可以检查包括存储器块210的存储器芯片的编程/擦除循环的当前数量。在实施例中,数据被通过属于第一编程/擦除循环组PGr1的编程电压编程到存储器块210。当所检查的存储器芯片的编程/擦除循环数落入0.2K以上0.5K以下的范围时,控制器120可以控制半导体存储器设备200使用与所检查的落入0.2K以上0.5K以下的范围的存储器芯片的编程/擦除循环数相对应的第二读取-重试组RGr2的读取电压REVL1、REVL2和REVL3来读取数据。将参考图5描述读取的数据。
参考图5,编程在存储器块210中的数据可以包括用户数据51、ECC数据53和状态数据55。ECC数据53可以被用于用户数据51的错误检测和错误校正。状态数据55可以包括在用户数据51被编程在半导体存储器设备200的存储器块210中的同时应用的、包括编程电压的编程/擦除循环组的索引。即,状态数据55可以包括用于用户数据51的编程的编程电压的信息。状态数据55可以表示与要用于被编程在存储器块210中的用户数据51的读取的读取电压相对应的编程电压,以防止编程电压和读取电压之间的失配。
状态数据55可以包括编程/擦除循环组的索引。索引的大小在2字节以下。状态数据55可以与用户数据51和ECC数据53一起被存储。
对包括状态数据55的数据的ECC解码可能失败,从而读取的状态数据55可能具有错误。因此,由于读取的状态数据55具有错误,控制器120可以不通过参考图1A和图1B描述的存储在存储器190中的编程/擦除循环组和读取-重试组的信息来检查与编程/擦除循环组相对应的读取-重试组。将参考图6A到图6C描述存储状态数据55以防止在对状态数据55的读取操作期间的状态数据55的错误的操作。
图6A到图6C是示意性例示根据本发明实施例的将状态数据存储在存储器块中的操作的图。
参考图6A,可以在将LSB数据编程在存储器芯片中期间,将包括编程/擦除循环组的索引的状态数据55编程。
如图6A所例示,2位多级单元(MLC)可以具有2位编程数据的4个状态。包括编程/擦除循环组的索引的状态数据55可以被编程为LSB数据,且“FF”的值可以被编程为与状态数据55相对应的虚假MSB数据。存储虚假MSB和作为LSB数据的状态数据55的MLC可以具有擦除状态E和第一到第三编程状态P1到P3中的擦除状态E和第三编程状态P3之一,因此可以保证噪声容限。
参考图6B,包括在要编程到存储器块210中的数据中的状态数据55可以重复地包括编程/擦除循环组的索引。例如,当状态数据55具有2字节或以下的大小时,可以在状态数据55中包括具有3位大小的编程/擦除循环组的索引的6个备份。稍后,包括编程/擦除循环组的索引的重复备份的状态数据55可以被读取,且主要表示(即包括在状态数据55中的编程/擦除循环组的索引的多个读取表示中、在状态数据中最频繁找到的索引)可以被确定为该编程/擦除循环组的索引。状态数据55可能被错误地读取。然而,当状态数据55包括编程/擦除循环组的索引的重复的备份时,在对状态数据55的读取操作期间状态数据55中包括的编程/擦除循环组的索引的多个表示中的主要表示可以确定编程/擦除循环组的索引。即,在对状态数据55的读取操作期间,在编程/擦除循环组的索引的多个表示中的在状态数据55中重复地找到的主要表示极可能是编程/擦除循环组的索引。
参考图6C,与参考图6A和图6B描述的实施例不同地,编程/擦除循环组的索引可以被存储在单独的状态数据存储区域中。例如,当使用属于第一编程/擦除循环组PGr1的编程电压将数据编程到第一存储器块中时,第一存储器块的地址和第一编程/擦除循环组PGr1的索引可以被存储到单独的状态数据存储区域中。以这种方式,可以确保存储在单独的状态数据存储区域中的状态数据55没有错误。因此,即使在被编程到第一存储器块中的数据具有错误时,控制器120也可以标识存储在单独状态数据存储区域中的状态数据55的编程/擦除循环组的索引,以标识与由状态数据55表示的编程/擦除循环组相对应的读取-重试组,以使用与由状态数据55表示的编程/擦除循环组相对应的读取-重试组来可靠地重新读取编程的数据。
返回参考图4,在步骤S403,控制器120可以对在步骤S401从存储器块210读取的数据执行第一ECC解码,用于错误检测和错误校正。控制器120可以使用包括在在步骤S401从存储器块210读取的数据中的ECC数据53,来对包括在在步骤S401从存储器块210读取的数据中的用户数据51进行第一ECC解码。在步骤S405,控制器120可以确定第一ECC解码是否成功。
当在步骤S405中,第一ECC解码被确定为成功时,控制器120可以向主机100提供执行了第一ECC解码的数据。
当在步骤S405中,第一ECC解码被确定为不成功时,在步骤S407,控制器120可以根据在步骤S401从存储器块210读取的数据的状态数据55来检查编程/擦除循环组的索引。
在步骤S409,控制器120可以标识与由包括在状态数据55中的索引表示的编程/擦除循环组相对应的读取-重试组,并且可以使用与由状态数据55表示的编程/擦除循环组相对应的读取-重试组,设置用于可靠地从存储器块210重新读取编程的数据的读取电压。
在步骤S411,控制器120可以使半导体存储器设备200使用在S409中标识的读取电压再次读取相同的数据。例如,当通过属于第一编程/擦除循环组PGr1的编程电压编程数据时,在步骤S409,控制器120可以标识与由在步骤S401从存储器块210读取的数据的状态数据55中包括的第0个索引(索引0)表示的第一编程/擦除循环组PGr1相对应的第一读取-重试组RGr1,并可以设置用于从存储器块210重新读取相同数据的读取电压REVL1、REVL2和REVL3。在步骤S411,控制器120可以使半导体存储器设备200使用在步骤S409中标识的第一读取-重试组RGr1的读取电压REVL1、REVL2和REVL3从存储器块再次读取相同的数据。
在步骤S413,控制器120可以对在步骤S411从存储器块210读取的数据执行第二ECC解码,用于错误检测和错误校正。控制器120可以使用包括在在步骤S411从存储器块210读取的数据中的ECC数据53,来对包括在在步骤S411从存储器块210读取的数据中的用户数据51进行第二ECC解码。在步骤S415,控制器120可以确定第二ECC解码是否成功。
当在步骤S415第二ECC解码被确定为成功时,控制器120可以向主机100提供执行了第二ECC解码的数据。
当在S415中,第二ECC解码被确定为失败时,控制器120可以在步骤S417将读取-重试组的当前索引的读取电压改变为读取-重试组的下一个索引的读取电压。例如,当在步骤S415利用第一读取-重试组RGr1的第0个索引(索引0)的读取电压REVL1、REVL2和REVL3的第二ECC解码被确定为失败时,在步骤S417,控制器120可以将读取电压从第一读取-重试组RGr1的第0个索引(索引0)的REVL1、REVL2和REVL3改变为第一读取-重试组RGr1的第1个索引(索引1)的读取电压REVL1、REVL2和REVL3。
步骤S411到步骤S417可以被重复,直到对在步骤S411从存储器块210读取的数据的第二ECC解码成功。在重复期间,读取电压REVL1、REVL2和REVL3可以通过读取-重试组的索引被改变。
根据本发明实施例,作为状态数据55附加地存储编程/擦除循环组的信息,该信息包括在将用户数据编程到存储器块中的同时使用的编程电压的信息。当对编程的用户数据的第一ECC解码失败时,可以对编程的用户数据再次执行读取操作,且可以基于编程的状态数据对重新读取的用户数据执行第二ECC解码。因此,用户数据可以被可靠地读取。
当根据本发明实施例的半导体存储器***110的半导体存储器设备200被实现为三维(3D)非易失性存储器设备时,将更加详细地描述半导体存储器设备200。
图7到图14是示意性例示根据本发明实施例的半导体存储器设备的三维(3D)非易失性存储器设备的图,该三维(3D)非易失性存储器设备例如是以3D实现的快闪存储器设备。
图7是图2中所示的存储器块210的存储器单元阵列的框图。
参考图7,存储器单元阵列可以包括多个存储器块BLK1到BLKj,其中j是整数。多个存储器块BLK1到BLKj的每一个可以具有3D结构或者竖直结构。例如,多个存储器块BLK1到BLKj的每一个可以包括沿第一到第三方向(例如X、Y和Z方向)延伸的结构。
多个存储器块BLK1到BLKj的每一个可以包括沿第二方向延伸的多个NAND(与非)串NS。可以沿第一和第三方向设置多个NAND串NS。NAND串NS中的每一个可以被耦合到位线BL、一个或更多串选择线SSL、一个或更多接地选择线GSL、多个字线WL、一个或更多虚假字线DWL以及公共源线CSL。即,多个存储器块BLK1到BLKj中的每一个可以被耦合到多个位线BL、多个串选择线SSL、多个接地选择线GSL、多个字线WL、多个虚假字线DWL以及多个公共源线CSL。
图8是图7中所示多个存储器块BLK1到BLKj的一个BLKj的立体视图。图9是沿着图8所示的存储器块BLKj的线I-I'截取的截面图。
参考图8和图9,存储器块BLKj可以包括沿第一到第三方向延伸的结构。
可以提供基底1111。例如,基底1111可以包括由第一类型杂质掺杂的硅材料。例如,基底1111可以包括由p型杂质掺杂的硅材料,或者例如袋状阱的p型阱。基底1111还可以包括围绕p型阱的n型阱。在说明书中,示例性地假设基底1111是p型硅。然而,基底1111将不限于p型硅。
沿第一方向延伸的多个掺杂区域1311到1314可以被设置在基底1111上。例如,多个掺杂区域1311到1314可以具有不同于基底1111的类型的第二类型。例如,多个掺杂区域1311到1314可以具有n类型。在说明书中,示例性地假设第一到第四掺杂区域1311到1314具有n类型。然而,第一到第四掺杂区域1311到1314将不限于n类型。
沿第一方向延伸的多个绝缘材料1112可以在基底1111上、在第一掺杂区域1311与第二掺杂区域1312之间、顺序地沿第二方向设置。例如,可以沿第二方向设置多个绝缘材料1112和基底1111,使得它们隔开预定距离。例如,多个绝缘材料1112可以被设置为沿第二方向彼此间隔开。例如,绝缘材料1112可以包括诸如氧化硅的绝缘体。
多个柱1113可以被沿第一方向顺序地设置在基底1111的、第一掺杂区域1311和第二掺杂区域1312之间的区域上,并且可以被形成为沿第二方向穿透绝缘材料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之间的距离的一半。即,绝缘层1116可以被布置在绝缘材料1112的第一表面之上。更具体地,绝缘层1116被布置在两个相邻绝缘材料1112之间。例如,绝缘材料1116被设置在绝缘材料1112的第一绝缘材料和第一绝缘材料下面的第二绝缘材料之间。
在第一掺杂区域1311与第二掺杂区域1312之间的区域中,导体材料1211到1291可以被设置在绝缘层1116的第二表面之上。绝缘层1116的第二表面与绝缘层1116的第一表面相对。
沿第一方向延伸的导体材料1211-1291、1212-1292和1213-1293可以被设置在绝缘层1116之间。例如,沿第一方向延伸的多个导体材料1221到1281可以被设置在绝缘材料1112之间。例如,沿第一方向延伸的导体材料1211到1291可以是金属材料。在另一实施例中,沿第一方向延伸的导体材料1211到1291可以是诸如多晶硅的导体材料。
如在第一掺杂区域1311与第二掺杂区域1312之间布置的相同结构可以被设置在第二和第三掺杂区域1312和1313之间。例如,沿第一方向延伸的多个绝缘材料1112沿第一方向顺序地布置。多个柱1113沿第二方向穿透多个绝缘材料1112。绝缘层1116被设置在多个绝缘材料1112和多个柱1113之上。沿第一方向延伸的多个导体材料1212到1292可以被设置在绝缘材料1116之上。
如在第一掺杂区域1311与第二掺杂区域1312之间设置的相同结构可以被设置在第三掺杂区域1313和第四掺杂区域1314之间。例如,沿第一方向延伸的多个绝缘材料1112沿第一方向顺序地布置。多个柱1113沿第二方向穿透多个绝缘材料1112。绝缘层1116被设置在多个绝缘材料1112和多个柱1113之上。沿第一方向延伸的多个导体材料1213到1293可以被设置在绝缘材料1116之上。
漏极1320可以分别被设置在多个柱1113上。例如,漏极1320可以是用第二类型材料掺杂的硅材料。例如,漏极1320可以是用n型材料掺杂的硅材料。在实施例中,示例性假设漏极320是用n型硅材料掺杂的硅材料。然而,漏极320将不限于n型硅材料。例如,漏极1320的宽度可以比对应的多个柱1113的宽度更宽。例如,漏极1320可以以垫形被设置在多个漏极1113的顶表面上。
沿第三方向延伸的导体材料1331到1333可以被设置在漏极1320上。导体材料1331到1333可以沿第一方向顺序地布置。导体材料1331到1333可以被分别地耦合到对应区域中的漏极1320。例如,沿第三方向延伸的导体材料1333和漏极1320可以通过接触孔栓分别彼此耦合。例如,沿第三方向延伸的导体材料1331到1333可以是金属材料。例如,导体材料1331到1333可以是诸如多晶硅的导体材料。
参考图8和图9,多个柱1113中的每一个可以与沿第一方向延伸的多个导体材料1211到1291、1212到1292和1213到1293以及绝缘层1116一起形成串。NAND串NS可以包括多个晶体管结构TS。
图10是图9所示的晶体管结构TS的截面图。
参考图8到图10,绝缘层1116可以包括第一到第三子绝缘层1117、1118和1119。
多个柱1113的每一个的P型硅1114可以用作主体。形成在多个柱1113之上的第一子绝缘层1117可以用作隧道绝缘层。例如,形成在多个柱1113的每一个之上的第一子绝缘层1117可以包括热氧化层。
形成在第一子绝缘层1117之上的第二子绝缘层1118可以用作电荷存储层。例如,第二子绝缘层1118可以用作电荷捕获层。例如,第二子绝缘层1118可以包括氮化物层或金属氧化物层,金属氧化物层诸如是氧化铝层、氧化铪层等。
形成在第二子绝缘层1118和导体材料1233之间的第三子绝缘层1119可以用作阻挡绝缘层。例如,沿第一方向延伸的第三子绝缘层1119可以具有单层或多层结构。第三子绝缘层1119可以是诸如氧化铝层、氧化铪层等的、比第一子绝缘层1117和第二子绝缘层1118具有更高介电常数的高介电性层。
导体材料1233可以用作栅极或控制栅极。即,栅极或控制栅极、阻挡绝缘层1119、电荷捕获层1118、隧道绝缘层1117和主体1114可以形成晶体管或存储器单元晶体管结构。例如,第一到第三子绝缘层1117到1119可以形成氧化物-氮化物-氧化物(ONO)结构。在实施例中,沿第二方向延伸的多个柱1113中的每一个的p型硅1114可以被称为主体。
存储器块BLKj可以包括多个柱1113。即,存储器块BLKj可以包括多个NAND串NS。更具体地,存储器块BLKj可以包括沿第二方向或者垂直于基底的方向延伸的多个NAND串NS。
NAND串NS中的每一个可以包括沿第二方向堆叠的多个晶体管结构TS。每个NAND串NS的多个晶体管结构TS中的一个或更多个可以用作串选择晶体管SST。每个NAND串的多个晶体管结构TS中的一个或更多个可以用作接地选择晶体管GST。
导体材料1211到1291、1212到1292和1213到1293沿第一方向延伸。导体材料1211到1291的两个或更多个可以用作选择线,诸如一个或更多串选择线SSL和一个或更多接地选择线GSL。
各自沿第三方向延伸的导体材料1331到1333可以被耦合到NAND串NS的一端。例如,各自沿第三方向延伸的导体材料1331到1333可以用作位线BL。即,在一个存储器块BLKj中,单一位线BL可以被耦合到多个NAND串。
各自沿第一方向延伸的第二类型掺杂区域1311到1314可以被设置在NAND串NS的另一端处。各自沿第一方向延伸的第二类型掺杂区域1311到1314可以用作公共源线CSL。
总之,存储器块BLKj可以包括各自沿垂直于基底1111的方向(第二方向)延伸的多个NAND串NS。NAND串NS中的每一个可以作为NAND快闪存储器块操作,NAND快闪存储器块例如是电荷捕获型NAND快闪存储器块。
参考图8到图10,各自沿着第一方向延伸的导体材料1211到1291、1221到1292和1213到1293形成9层的结构。然而,导体材料1211到1291、1212到1292和1213到1293不限于9层。在另一实施例中,导体材料可以包括8、16或更多层。即,NAND串可以包括8、16或更多晶体管。
参考图8到图10,3个NAND串NS被耦合到单一位线BL。然而,本发明将不限于耦合到单一位线BL的3个NAND串NS。例如,在存储器块BLKj中,m个NAND串NS可以被耦合到单一位线BL,其中m是整数。这里,也可以调整各自沿第一方向延伸的导体材料1211到1291、1212到1292和1213到1293的数目和公共源线311到314的数目,以便对应于耦合到单一位线BL的NAND串NS的数目。
参考图8到图10,3个NAND串NS被耦合到沿第一方向延伸的单一导体材料。然而,本发明将不限于3个NAND串NS被耦合到单一导体材料的结构。在另一实施例中,n个NAND串NS(n是整数)可以被耦合到单一导体材料。这里,各自沿第三方向延伸的导体材料1331到1333的数目还可以被调整为对应于耦合到单一导体材料的NAND串NS的数目。
图11是参考图8到图10描述的存储器块BLKj的等效电路。
参考图8到图11,NAND串NS11到NS31可以被设置在第一位线BL1和公共源线CSL之间。第一位线BL1可以对应于沿第三方向延伸的导体材料1331。NAND串NS12、NS22和NS32可以被设置在第二位线BL2和公共源线CSL之间。第二位线BL1可以对应于沿第三方向延伸的导体材料1332。NAND串NS13、NS23和NS33可以被设置在第三位线BL3和公共源线CSL之间。第三位线BL3可以对应于沿第三方向延伸的导体材料1333。
每个NAND串NS的串选择晶体管SST可以被耦合到对应位线BL。每个NAND串NS的接地选择晶体管GST可以被耦合到公共源线CSL。存储器单元MC可以被设置在每个NAND串NS的接地选择晶体管GST和串选择晶体管SST之间。
NAND串NS可以被以行和列的单位限定。共同耦合到单一位线的NAND串NS可以形成单个列。例如,耦合到第一位线BL1的NAND串NS11到NS31可以对应于第一列。耦合到第二位线BL2的NAND串NS12到NS32可以对应于第二列。耦合到第三位线BL3的NAND串NS13到NS33可以对应于第三列。耦合到单个串选择线SSL的NAND串NS可以形成单个行。例如,耦合到第一串选择线SSL1的NAND串NS11到NS13可以形成第一行。耦合到第二串选择线SSL2的NAND串NS21到NS23可以形成第二行。耦合到第三串选择线SSL3的NAND串NS31到NS33可以形成第三行。
可以对每一个NAND串NS定义高度。例如,在每个NAND串NS中,接地选择晶体管GST的高度可以被定义为1。在每个NAND串NS中,离串选择晶体管SST越近,存储器单元的高度越高。在每个NAND串NS中,邻近串选择晶体管SST的存储器单元MC6的高度可以被定义为6。
相同行的NAND串NS的串选择晶体管SST可以共享串选择线SSL。不同行中的NAND串NS的串选择晶体管SST可以分别与不同串选择线SSL1、SSL2和SSL3耦合。
相同行的NAND串NS中具有相同高度的存储器单元MC可以共享字线WL。在预定高度处,字线WL可以由不同行的NAND串NS的存储器单元MC共享。在预定高度处,相同行的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的有源区域(active region)处。例如,第一到第四掺杂区域1311到1314可以被经由触点耦合到上层。第一到第四掺杂区域1311到1314可以被公共地耦合在上层处。
如图11所例示,位于相同水平的字线WL可以被公共地彼此耦合。因此,当选择位于特定水平的给定字线WL时,可以选择耦合到所选字线WL的NAND串NS的全部。不同行的NAND串NS可以被耦合到不同串选择线SSL。因此,在耦合到所选字线WL的NAND串NS之中,还耦合到未选择行的NAND串NS可以通过串选择线SSL1到SSL3的选择被从位线BL1到BL3电隔离。即,可以通过选择串选择线SSL1到SSL3来选择NAND串NS的特定行。可以通过位线BL1到BL3的选择进一步选择位于所选择行的NAND串NS之中的特定NAND串NS。
在每一个NAND串NS中,可以设置虚假存储器单元DMC。例如,如图11中所示,第一到第三存储器单元MC1到MC3可以被设置在虚假存储器单元DMC和接地选择晶体管GST之间。
第四到第六存储器单元MC4到MC6可以被设置在虚假存储器单元DMC和串选择晶体管SST之间。在实施例中,每个NAND串NS中的存储器单元MC由虚假存储器单元DMC划分到存储器单元组中。存储器单元组之中邻近接地选择晶体管GST的存储器单元组(例如MC1到MC3)可以被称为下存储器单元组。存储器单元组之中邻近串选择晶体管SST的存储器单元组(例如MC4到MC6)可以被称为上存储器单元组。
将参照图7和图11描述半导体存储器***的操作方法。半导体存储器***可以包括一个或更多单元串。每个单元串被沿垂直于基底的方向布置并与存储器控制器120耦合。每个单元串包括存储器单元、串选择晶体管以及接地选择晶体管。半导体存储器***可以被设置有第一读取命令,以使用第一硬判决读取电压和与第一硬判决读取电压不同的第二硬判决读取电压执行第一和第二硬判决读取操作。半导体存储器***可以形成硬判决数据,可以基于硬判决数据的错误位状态选择第一和第二硬判决电压中的特定一个,可以使用与第一和第二硬判决读取电压不同的软读取电压形成软判决数据,并将软判决数据提供给存储器控制器120。
图12到图14是示意性例示根据本发明实施例的3D非易失性存储器设备的图。图12到图14例示根据本发明实施例的半导体存储器***,例如三维快闪存储器设备。
图12是图7所示的存储器块BLKj的立体图。图13是例示沿图12中所示的线VII-VII'截取的存储器块BLKj的截面图。
参考图12和图13,存储器块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间隔开。
可以通过第一到第四导体材料层6321到6324形成多个下部柱DP。多个下部柱DP中的每一个可以沿Z方向延伸。可以通过第五到第八导体材料层6325到6328形成多个上部柱UP。多个上部柱UP中的每一个可以沿Z方向延伸。
下部柱DP和上部柱UP中的每一个可以包括内部材料层6361、中间层6362和表面层6363。中间层6362可以用作单元晶体管的通道。表面层6363可以包括:阻挡绝缘层、电荷存储层和隧道绝缘层。
多个下部柱DP和多个上部柱UP可以通过管栅(pipe gate)PG耦合。管栅PG可以形成在基底6311中。例如,管栅PG可以包括与多个下部柱DP和多个上部柱UP基本相同的材料。
利用第二型杂质的掺杂材料层6312可以被布置在多个下部柱DP上。掺杂材料层6312可以沿X方向和Y方向延伸。例如,利用第二型杂质的掺杂材料层6312可以包括n型硅材料。利用第二型杂质的掺杂材料层6312可以用作公共源线CSL。
漏极6340可以被形成在多个上部柱UP的每一个上。例如,漏极6340可以包括n型硅材料。第一上部导体材料层6351和第二上部导体材料层6352可以被形成在漏极6340上。第一上部导体材料层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彼此耦合。单个下部串和单个上部串可以结合形成耦合在第二类型掺杂材料层6312和对应位线之间的单个单元串。
即,下部串可以包括源极选择晶体管SST、第一虚假存储器单元DMC1以及第一和第二主存储器单元MMC1和MMC2。上部串可以包括第三和第四主存储器单元MMC3和MMC4、第二虚假存储器单元DMC2以及漏极选择晶体管DST。
参考图12和图13,上部串和下部串可以形成具有多个晶体管结构TS的NAND串NS。晶体管TS的结构可以与参考图10描述的结构相同。
图14是参考图12和图13描述的存储器块BLKj的等效电路。图14例示根据实施例的包括在存储器块BLKj中的串之中的第一和第二串。
参考图14,存储器块BLKj可以包括多个单元串,如参考图12和图13的描述,该多个单元串的每一个包括通过管栅PG彼此耦合的单个上部串和单个下部串。
在存储器块BLKj中,沿第一通道层CH1堆叠的存储器单元、一个或更多源极选择栅以及一个或更多漏极选择栅可以形成第一串ST1。沿第二通道层CH2堆叠的存储器单元、一个或更多源极选择栅以及一个或更多漏极选择栅可以形成第二串ST2。
第一和第二串ST1和ST2可以被耦合到单个漏极选择线DSL和单个源极选择线SSL。第一串ST1可以被耦合到第一位线BL1,且第二串ST2可以被耦合到第二位线BL2。
图14示出经由漏极选择栅DSG0耦合到单个漏极选择线DSL且经由源极选择栅SSG0耦合到单个源极选择线SSL的第一和第二串ST1和ST2。第一和第二串ST1和ST2可以分别被耦合到位线BL1和BL2。在另一实施例中,第一串ST1可以被耦合到第一漏极选择线DSL1,且第二串ST2可以被耦合到第二漏极选择线DSL2。在另一实施例中,第一和第二串ST1和ST2可以被公共地耦合到相同的漏极选择线DSL和单一位线BL。在这种情况下,第一串ST1可以被耦合到第一源极选择线SSL1,且第二串ST2可以被耦合到第二源极选择线SSL2。
图15是示意性例示根据本发明实施例的包括存储器控制器15000和快闪存储器16000的电子设备10000的框图。
参考图15,诸如蜂窝电话、智能电话或平板PC的电子设备10000可以包括由快闪存储器设备实现的快闪存储器16000和控制快闪存储器16000的存储器控制器15000。
快闪存储器16000可以与上面参考图12到图14描述的半导体存储器***110相对应。快闪存储器16000可以存储随机数据。
存储器控制器15000可以由控制电子设备10000的整个操作的处理器11000控制。
可以在被处理器11000控制下操作的存储器控制器15000的控制下,通过显示器13000显示存储在快闪存储器16000处的数据。
无线电收发机12000可以通过天线ANT交换无线电信号。例如,无线电收发机12000可以将从天线ANT接收的无线电信号转换为要由处理器11000处理的信号。从而,处理器11000可以处理来自无线电收发机12000的转换的信号,并且可以将处理的信号存储于快闪存储器16000。否则,处理器11000可以通过显示器13000显示处理的信号。
无线电收发机12000可以将来自处理器11000的信号转换为无线电信号,并可以将转换的无线电信号通过天线ANT输出到外部设备。
输入设备14000可以接收用于控制处理器11000的操作的控制信号或者要由处理器11000处理的数据,并且可以通过诸如触摸垫或者计算机鼠标的定点设备、小键盘或者键盘来实现。
处理器11000可以控制显示器13000,使得通过显示器13000显示来自快闪存储器16000的数据、来自无线电收发机12000的无线电信号或者来自输入设备14000的数据。
图16是示意性例示根据本发明实施例的包括存储器控制器24000和快闪存储器25000的电子设备20000的框图。
参考图16,电子设备20000可以由数据处理设备实现,数据处理设备诸如是个人计算机(PC)、平板计算机、网-书、电子阅读器、个人数字助理(PDA)、电便携式多媒体播放器(PMP)、MP3播放器或者MP4播放器,且电子设备20000可以包括例如快闪存储器25000的快闪存储器设备和控制快闪存储器25000的操作的存储器控制器24000。
电子设备20000可以包括控制电子设备20000的整个操作的处理器21000。存储器控制器24000可以由处理器21000控制。
处理器21000可以根据来自输入设备22000的输入信号通过显示器23000显示存储在半导体存储器***中的数据。例如,输入设备22000可以由诸如触摸面板或计算机鼠标的定点设备、小键盘或键盘实现。
图17是示意性例示根据本发明实施例的包括半导体存储器***34000的电子设备30000的框图。
参考图17,电子设备30000可以包括:卡接口31000、存储器控制器32000和例如快闪存储器设备的半导体存储器***34000。
电子设备30000可以通过卡接口31000与主机交换数据。卡接口31000可以是安全数字(SD)卡接口或多媒体卡(MMC)接口,但不限于此。卡接口31000可以根据主机HOST的能够与电子设备30000通信的通信协议连接(interface)主机HOST和存储器控制器32000。
存储器控制器32000可以控制电子设备30000的整个操作,并且可以控制卡接口31000和半导体存储器***34000之间的数据交换。存储器控制器32000的缓冲存储器33000可以缓冲在卡接口31000和半导体存储器***34000之间传递的数据。
存储器控制器32000可以通过数据总线DATA和地址总线ADDRESS与卡接口31000和半导体存储器***34000耦合。根据实施例,存储器控制器32000可以通过地址总线ADDRESS从卡接口31000接收要读取或写入的数据的地址,并可以将其发送到半导体存储器***34000。
此外,存储器控制器32000可以通过与卡接口31000或半导体存储器***34000连接的数据总线DATA接收或传送数据。
当电子设备30000与主机HOST(诸如PC、平板PC、数码照相机、数字音频播放器、移动电话、控制台、视频游戏硬件或数字机顶盒)连接时,主机HOST可以通过卡接口31000与存储器控制器32000交换半导体存储器***34000的数据。
虽然针对具体实施例描述了本发明,但本领域的技术人员将明白在不脱离按照以下权利要求限定的本发明的实质和范围的情况下可以做出各种改变和修改。
通过以上实施例可以看出,本申请提供了以下的技术方案。
技术方案1.一种半导体存储器***的操作方法,包括:
对存储在所述半导体存储***中的第一数据执行第一错误校正码(ECC)解码,其中,所述第一数据包括用户数据、针对所述用户数据的ECC数据以及针对所述用户数据的状态数据;以及
在对所述用户数据的所述第一ECC解码失败时,通过基于所述第一数据的状态数据改变读取电压来对所述用户数据执行第二ECC解码。
技术方案2.根据权利要求1所述的操作方法,其中所述状态数据包括在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
技术方案3.根据权利要求2所述的操作方法,其中所述编程电压的所述信息是与多个编程电压组之一相对应的索引,所述多个编程电压组中的每一个是用于将数据存储到所述半导体存储器***中的编程电压的组,且所述多个编程电压组中的每一个被编索引。
技术方案4.根据权利要求3所述的操作方法,其中所述第二步骤根据与所述索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对所述用户数据执行所述第二ECC解码。
技术方案5.根据权利要求1所述的操作方法,
其中所述半导体存储器***是多级单元(MLC)存储器***,以及
其中,所述状态数据是最低有效位(LSB)数据。
技术方案6.根据权利要求5所述的操作方法,其中与所述状态数据相对应的最高有效位(MSB)数据具有“FF”值。
技术方案7.根据权利要求1所述的操作方法,其中所述状态数据包括多个在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
技术方案8.根据权利要求1所述的操作方法,
其中所述半导体存储器***包括状态数据存储区域,以及
其中,用于编程操作的数据单元的索引和所述数据单元的状态数据被存储在所述状态数据存储区域中。
技术方案9.一种半导体存储器***,包括:
半导体存储器设备;以及
控制器,
其中所述控制器包括:
对存储在所述半导体存储***中的第一数据的用户数据执行第一ECC解码的第一设备,其中,所述第一数据包括用户数据、针对所述用户数据的ECC数据以及针对所述用户数据的状态数据;以及
在对所述用户数据的所述第一ECC解码失败时,通过基于所述第一数据的状态数据改变读取电压来对所述用户数据执行第二ECC解码的第二设备。
技术方案10.根据权利要求9所述的半导体存储器***,其中所述状态数据包括在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
技术方案11.根据权利要求10所述的半导体存储器***,其中所述编程电压的所述信息是与多个编程电压组之一相对应的索引,所述多个编程电压组中的每一个是用于将数据存储到所述半导体存储器***中的编程电压的组,且所述多个编程电压组中的每一个被编索引。
技术方案12.根据权利要求11所述的半导体存储器***,其中所述第二设备根据与所述索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对所述用户数据执行所述第二ECC解码。
技术方案13.根据权利要求9所述的半导体存储器***,
其中所述半导体存储器***是多级单元(MLC)存储器***,
其中,所述状态数据是最低有效位(LSB)数据,以及
其中,与所述状态数据相对应的最高有效位(MSB)数据具有“FF”值。
技术方案14.根据权利要求9所述的半导体存储器***,其中所述状态数据包括多个在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
技术方案15.根据权利要求9所述的半导体存储器***,
其中所述半导体存储器***包括状态数据存储区域,以及
其中,用于编程操作的数据单元的索引和所述数据单元的状态数据被存储在所述状态数据存储区域中。
技术方案16.一种控制器,包括:
第一设备,其利用第一读取电压对存储在所述半导体存储***中的第一数据的用户数据执行第一ECC解码,并用于确定对所述用户数据的所述第一解码是否成功,其中,所述第一数据包括用户数据、针对所述用户数据的ECC数据以及针对所述用户数据的状态数据;
第二设备,其在对所述用户数据的所述第一ECC解码失败时,基于所述第一数据的状态数据将所述第一读取电压改变为第二读取电压;以及
第三设备,其利用所述第二读取电压对所述用户数据执行第二ECC解码,并用于确定对所述用户数据的第二解码是否成功,
其中,所述第三设备通过改变所述第二读取电压预定次数重复所述用户数据的所述第二ECC解码的执行,直到对所述用户数据的第二ECC解码成功。
技术方案17.根据权利要求16所述的控制器,其中所述状态数据包括在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
技术方案18.根据权利要求16所述的控制器,其中所述编程电压的所述信息是与多个编程电压组之一相对应的索引,所述多个编程电压组中的每一个是用于将数据存储到所述半导体存储器***中的编程电压的组,且所述多个编程电压组中的每一个被编索引。
技术方案19.根据权利要求18所述的控制器,其中所述第三设备根据与所述索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对所述用户数据执行所述第二ECC解码。
技术方案20.根据权利要求16所述的控制器,其中所述状态数据包括在所述第一数据被存储到所述半导体存储器***中时使用的多个重复的编程电压的信息。
Claims (17)
1.一种半导体存储器***的操作方法,包括:
对存储在所述半导体存储器***中的第一数据执行第一错误校正码解码,其中,所述第一数据包括用户数据、针对所述用户数据的错误校正码数据以及针对所述用户数据的状态数据;以及
在对所述用户数据的所述第一错误校正码解码失败时,通过基于所述第一数据的状态数据改变读取电压来对所述用户数据执行第二错误校正码解码,
其中,将通过改变所述读取电压对所述用户数据执行第二错误校正码解码的步骤重复预定次数,直到对所述用户数据的所述第二错误校正码解码成功,
其中,所述状态数据包括编程/擦除循环组的索引,所述索引包括当所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息,
其中,所述编程/擦除循环组对应于数据编程操作期间所述半导体存储器***的编程/擦除循环数,以及
其中,所述状态数据表示与要用于被编程的用户数据的读取的读取电压相对应的编程电压。
2.根据权利要求1所述的操作方法,其中所述编程电压的所述信息是与多个编程电压组之一相对应的索引,所述多个编程电压组中的每一个是用于将数据存储到所述半导体存储器***中的编程电压的组,且所述多个编程电压组中的每一个被编索引。
3.根据权利要求2所述的操作方法,其中对所述用户数据执行所述第二错误校正码解码的步骤是根据与所述索引相对应的一个或更多读取-重试电压并通过读取-重试的方式来执行的。
4.根据权利要求1所述的操作方法,
其中所述半导体存储器***是多级单元存储器***,以及
其中,所述状态数据是最低有效位数据。
5.根据权利要求4所述的操作方法,其中与所述状态数据相对应的最高有效位数据具有“FF”值。
6.根据权利要求1所述的操作方法,其中所述状态数据包括多个在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
7.根据权利要求1所述的操作方法,
其中所述半导体存储器***包括状态数据存储区域,以及
其中,用于编程操作的数据单元的索引和所述数据单元的状态数据被存储在所述状态数据存储区域中。
8.一种半导体存储器***,包括:
半导体存储器设备;以及
控制器,
其中所述控制器包括:
对存储在所述半导体存储器 ***中的第一数据的用户数据执行第一错误校正码解码的第一设备,其中,所述第一数据包括用户数据、针对所述用户数据的错误校正码数据以及针对所述用户数据的状态数据;以及
在对所述用户数据的所述第一错误校正码解码失败时,通过基于所述第一数据的状态数据改变读取电压来对所述用户数据执行第二错误校正码解码的第二设备,
其中,将通过改变所述读取电压对所述用户数据执行第二错误校正码解码的步骤重复预定次数,直到对所述用户数据的所述第二错误校正码解码成功,
其中,所述状态数据包括编程/擦除循环组的索引,所述索引包括当所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息,
其中,所述编程/擦除循环组对应于数据编程操作期间所述半导体存储器***的编程/擦除循环数,以及
其中,所述状态数据表示与要用于被编程的用户数据的读取的读取电压相对应的编程电压。
9.根据权利要求8所述的半导体存储器***,其中所述编程电压的所述信息是与多个编程电压组之一相对应的索引,所述多个编程电压组中的每一个是用于将数据存储到所述半导体存储器***中的编程电压的组,且所述多个编程电压组中的每一个被编索引。
10.根据权利要求9所述的半导体存储器***,其中所述第二设备根据与所述索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对所述用户数据执行所述第二错误校正码解码。
11.根据权利要求8所述的半导体存储器***,
其中所述半导体存储器***是多级单元存储器***,
其中,所述状态数据是最低有效位数据,以及
其中,与所述状态数据相对应的最高有效位数据具有“FF”值。
12.根据权利要求8所述的半导体存储器***,其中所述状态数据包括多个在所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息。
13.根据权利要求8所述的半导体存储器***,
其中所述半导体存储器***包括状态数据存储区域,以及
其中,用于编程操作的数据单元的索引和所述数据单元的状态数据被存储在所述状态数据存储区域中。
14.一种控制器,包括:
第一设备,其利用第一读取电压对存储在半导体存储器 ***中的第一数据的用户数据执行第一错误校正码解码,并用于确定对所述用户数据的所述第一错误校正码解码是否成功,其中,所述第一数据包括用户数据、针对所述用户数据的错误校正码数据以及针对所述用户数据的状态数据;
第二设备,其在对所述用户数据的所述第一错误校正码解码失败时,基于所述第一数据的状态数据将所述第一读取电压改变为第二读取电压;以及
第三设备,其利用所述第二读取电压对所述用户数据执行第二错误校正码解码,并用于确定对所述用户数据的第二解码是否成功,
其中,所述第三设备通过改变所述第二读取电压预定次数重复所述用户数据的所述第二错误校正码解码的执行,直到对所述用户数据的第二错误校正码解码成功,
其中,所述状态数据包括编程/擦除循环组的索引,所述索引包括当所述第一数据被存储到所述半导体存储器***中时使用的编程电压的信息,
其中,所述编程/擦除循环组对应于数据编程操作期间所述半导体存储器***的编程/擦除循环数,以及
其中,所述状态数据表示与要用于被编程的用户数据的读取的读取电压相对应的编程电压。
15.根据权利要求14所述的控制器,其中所述编程电压的所述信息是与多个编程电压组之一相对应的索引,所述多个编程电压组中的每一个是用于将数据存储到所述半导体存储器***中的编程电压的组,且所述多个编程电压组中的每一个被编索引。
16.根据权利要求15所述的控制器,其中所述第三设备根据与所述索引相对应的一个或更多读取-重试电压并通过读取-重试的方式对所述用户数据执行所述第二错误校正码解码。
17.根据权利要求14所述的控制器,其中所述状态数据包括在所述第一数据被存储到所述半导体存储器***中时使用的多个重复的编程电压的信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2014-0182646 | 2014-12-17 | ||
KR1020140182646A KR20160073834A (ko) | 2014-12-17 | 2014-12-17 | 메모리 시스템 및 메모리 시스템 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105719701A CN105719701A (zh) | 2016-06-29 |
CN105719701B true CN105719701B (zh) | 2021-04-06 |
Family
ID=56129522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510455742.8A Active CN105719701B (zh) | 2014-12-17 | 2015-07-29 | 半导体存储器设备及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9710328B2 (zh) |
KR (1) | KR20160073834A (zh) |
CN (1) | CN105719701B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10223198B2 (en) * | 2016-02-18 | 2019-03-05 | Micron Technology, Inc. | Error rate reduction |
TWI612525B (zh) * | 2016-07-07 | 2018-01-21 | 群聯電子股份有限公司 | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 |
US10354723B2 (en) * | 2017-06-29 | 2019-07-16 | SK Hynix Inc. | Memory device and method for programming the same |
KR20190018323A (ko) * | 2017-08-14 | 2019-02-22 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그 동작 방법 |
US10777271B2 (en) * | 2017-09-29 | 2020-09-15 | Intel Corporation | Method and apparatus for adjusting demarcation voltages based on cycle count metrics |
CN109949850A (zh) * | 2017-12-21 | 2019-06-28 | 光宝电子(广州)有限公司 | 储存***与储存方法 |
KR102567314B1 (ko) * | 2018-04-27 | 2023-08-17 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
KR20200029810A (ko) | 2018-09-11 | 2020-03-19 | 에스케이하이닉스 주식회사 | 데이터 처리 시스템 및 그의 동작방법 |
KR20200066911A (ko) * | 2018-12-03 | 2020-06-11 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
KR20200069892A (ko) | 2018-12-07 | 2020-06-17 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US10802750B2 (en) | 2019-02-28 | 2020-10-13 | Silicon Motion Inc. | Universal flash storage memory module, controller and electronic device with advanced turbo write buffer and method for operating the memory module |
US11567682B2 (en) * | 2019-11-15 | 2023-01-31 | Micron Technology, Inc. | Temperature management for a memory device using memory trim sets |
JP2021150733A (ja) * | 2020-03-17 | 2021-09-27 | キオクシア株式会社 | 半導体装置及び半導体記憶装置 |
US20240054046A1 (en) * | 2022-08-09 | 2024-02-15 | Micron Technology, Inc. | Error-handling management during copyback operations in memory devices |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4233563B2 (ja) * | 2005-12-28 | 2009-03-04 | パナソニック株式会社 | 多値データを記憶する不揮発性半導体記憶装置 |
JP4700562B2 (ja) * | 2006-05-18 | 2011-06-15 | 株式会社バッファロー | データ記憶装置およびデータ記憶方法 |
US7886204B2 (en) * | 2006-09-27 | 2011-02-08 | Sandisk Corporation | Methods of cell population distribution assisted read margining |
KR100865830B1 (ko) * | 2007-02-22 | 2008-10-28 | 주식회사 하이닉스반도체 | 메모리 소자의 독출 방법 |
KR101391881B1 (ko) * | 2007-10-23 | 2014-05-07 | 삼성전자주식회사 | 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법 |
KR101413137B1 (ko) * | 2008-07-04 | 2014-07-01 | 삼성전자주식회사 | 메모리 장치 및 메모리 프로그래밍 방법 |
KR101483190B1 (ko) * | 2008-09-05 | 2015-01-19 | 삼성전자주식회사 | 메모리 시스템 및 그것의 데이터 처리 방법 |
US8291297B2 (en) * | 2008-12-18 | 2012-10-16 | Intel Corporation | Data error recovery in non-volatile memory |
KR20100117906A (ko) | 2009-04-27 | 2010-11-04 | 주식회사 하이닉스반도체 | 비휘발성 메모리 소자 및 그 구동 방법 |
KR101626528B1 (ko) * | 2009-06-19 | 2016-06-01 | 삼성전자주식회사 | 플래시 메모리 장치 및 이의 데이터 독출 방법 |
KR20110001101A (ko) | 2009-06-29 | 2011-01-06 | 주식회사 하이닉스반도체 | 불휘발성 메모리 장치 및 그것의 동작 방법 |
JPWO2011013351A1 (ja) * | 2009-07-30 | 2013-01-07 | パナソニック株式会社 | アクセス装置およびメモリコントローラ |
KR20120001405A (ko) | 2010-06-29 | 2012-01-04 | 삼성전자주식회사 | 메모리 시스템 및 그것의 웨어 레벨링 방법 |
US20120008414A1 (en) * | 2010-07-06 | 2012-01-12 | Michael Katz | Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system |
KR101727704B1 (ko) * | 2010-10-04 | 2017-04-18 | 삼성전자주식회사 | 리드 성능을 향상시킬 수 있는 리드 파라미터 변경 방법과 상기 방법을 수행할 수 있는 장치들 |
KR101212387B1 (ko) * | 2011-01-03 | 2012-12-13 | 에스케이하이닉스 주식회사 | 반도체 메모리 소자의 독출 방법 |
US9142323B1 (en) * | 2011-03-01 | 2015-09-22 | Sk Hynix Memory Solutions Inc. | Hardware acceleration of DSP error recovery for flash memory |
JP5204868B2 (ja) * | 2011-04-12 | 2013-06-05 | シャープ株式会社 | 半導体記憶装置 |
US9009574B2 (en) * | 2011-06-07 | 2015-04-14 | Marvell World Trade Ltd. | Identification and mitigation of hard errors in memory systems |
KR20130024304A (ko) * | 2011-08-31 | 2013-03-08 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 이의 동작 방법 |
US9047210B2 (en) * | 2011-09-15 | 2015-06-02 | Sandisk Technologies Inc. | Data storage device and method to correct bit values using multiple read voltages |
US8456919B1 (en) * | 2011-11-10 | 2013-06-04 | Sandisk Technologies Inc. | Method and apparatus to provide data including hard bit data and soft bit data to a rank modulation decoder |
KR101835605B1 (ko) * | 2011-11-24 | 2018-03-08 | 삼성전자 주식회사 | 플래시 메모리 시스템 및 플래시 메모리 시스템의 리드 방법 |
KR20130060749A (ko) * | 2011-11-30 | 2013-06-10 | 에스케이하이닉스 주식회사 | 불휘발성 메모리 장치, 그것의 읽기 방법 및 그것을 포함하는 데이터 저장 장치 |
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 |
KR20130061967A (ko) | 2011-12-02 | 2013-06-12 | 삼성전자주식회사 | 메모리 시스템 및 그것의 웨어 레벨링 방법 |
EP2607884A1 (en) * | 2011-12-23 | 2013-06-26 | Essilor International (Compagnie Générale d'Optique) | Eyeglass rating with respect to protection against uv hazard |
KR101979734B1 (ko) * | 2012-08-07 | 2019-05-17 | 삼성전자 주식회사 | 메모리 장치의 독출 전압 제어 방법 및 이를 이용한 데이터 독출 방법 |
KR102048765B1 (ko) * | 2013-01-15 | 2020-01-22 | 삼성전자주식회사 | 메모리 시스템의 동작 방법 및 메모리 시스템 |
KR102050896B1 (ko) * | 2013-02-19 | 2019-12-02 | 삼성전자주식회사 | 메모리 컨트롤러 및 그것의 동작 방법 |
JP2014165649A (ja) * | 2013-02-25 | 2014-09-08 | Fujitsu Semiconductor Ltd | アナログデジタル変換装置 |
US20140359202A1 (en) * | 2013-05-31 | 2014-12-04 | Western Digital Technologies, Inc. | Reading voltage calculation in solid-state storage devices |
US9209835B2 (en) * | 2013-11-27 | 2015-12-08 | Seagate Technology Llc | Read retry for non-volatile memories |
-
2014
- 2014-12-17 KR KR1020140182646A patent/KR20160073834A/ko not_active Application Discontinuation
-
2015
- 2015-05-06 US US14/705,671 patent/US9710328B2/en active Active
- 2015-07-29 CN CN201510455742.8A patent/CN105719701B/zh active Active
Non-Patent Citations (1)
Title |
---|
Neighbor-cell assisted error correction for MLC NAND flash memories;Yu Cai,et al;《ACM SIGMETRICS Performance Evaluation Review》;20141231;第42卷(第1期);第491-504 * |
Also Published As
Publication number | Publication date |
---|---|
US9710328B2 (en) | 2017-07-18 |
US20160179617A1 (en) | 2016-06-23 |
CN105719701A (zh) | 2016-06-29 |
KR20160073834A (ko) | 2016-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105719701B (zh) | 半导体存储器设备及其操作方法 | |
US9620246B2 (en) | Operating method of memory system | |
US10623025B2 (en) | Operating method of memory system | |
CN105719703B (zh) | 存储***及其操作方法 | |
KR102534633B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN105989885B (zh) | 存储***及其操作方法 | |
KR102547642B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
CN105739914B (zh) | 数据处理***及其操作方法 | |
US20160247576A1 (en) | Memory controller and operating method thereof | |
CN105608015B (zh) | 存储***及其操作方法 | |
CN105988938B (zh) | 存储***及其操作方法 | |
CN106708744B (zh) | 存储***和存储***的操作方法 | |
CN106776352B (zh) | 存储器***和存储器***的操作方法 | |
CN106933506B (zh) | 存储器***及存储器***的操作方法 | |
CN106775441B (zh) | 存储器*** | |
US20160141037A1 (en) | Semiconductor memory system and method of operating the same | |
CN106560781B (zh) | 数据处理*** | |
CN106407133B (zh) | 存储***及其操作方法 | |
CN106126437B (zh) | 存储*** | |
CN106406749B (zh) | 存储***及其操作方法 | |
KR20170060203A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN106354663B (zh) | 存储***和存储***的操作方法 | |
KR20170073944A (ko) | 데이터 처리 시스템 및 데이터 처리 시스템의 동작방법 | |
KR102535700B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
CN106373602B (zh) | 存储***和存储***的操作方法 |
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 |