CN110008053A - 存储设备、非易失性存储设备以及存储设备的操作方法 - Google Patents
存储设备、非易失性存储设备以及存储设备的操作方法 Download PDFInfo
- Publication number
- CN110008053A CN110008053A CN201910009213.3A CN201910009213A CN110008053A CN 110008053 A CN110008053 A CN 110008053A CN 201910009213 A CN201910009213 A CN 201910009213A CN 110008053 A CN110008053 A CN 110008053A
- Authority
- CN
- China
- Prior art keywords
- storage unit
- unit
- storage
- wordline
- bad block
- 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.)
- Granted
Links
- 238000011017 operating method Methods 0.000 title claims description 9
- 238000003860 storage Methods 0.000 claims abstract description 293
- 230000015654 memory Effects 0.000 claims abstract description 276
- 238000010801 machine learning Methods 0.000 claims description 15
- 239000000758 substrate Substances 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 2
- 239000013078 crystal Substances 0.000 claims 1
- 239000010410 layer Substances 0.000 description 30
- 101000949825 Homo sapiens Meiotic recombination protein DMC1/LIM15 homolog Proteins 0.000 description 23
- 101001046894 Homo sapiens Protein HID1 Proteins 0.000 description 23
- 102100022877 Protein HID1 Human genes 0.000 description 23
- 238000013519 translation Methods 0.000 description 17
- 238000012937 correction Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 11
- 230000005611 electricity Effects 0.000 description 8
- 230000007547 defect Effects 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 101100049574 Human herpesvirus 6A (strain Uganda-1102) U5 gene Proteins 0.000 description 5
- 101150064834 ssl1 gene Proteins 0.000 description 5
- 101150011582 ssl4 gene Proteins 0.000 description 5
- 102100031885 General transcription and DNA repair factor IIH helicase subunit XPB Human genes 0.000 description 4
- 101000920748 Homo sapiens General transcription and DNA repair factor IIH helicase subunit XPB Proteins 0.000 description 4
- 101000988651 Homo sapiens Humanin-like 1 Proteins 0.000 description 4
- 101001081180 Homo sapiens Humanin-like 10 Proteins 0.000 description 4
- 102100027734 Humanin-like 10 Human genes 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000000151 deposition Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 101150062870 ssl3 gene Proteins 0.000 description 4
- 241000208340 Araliaceae Species 0.000 description 3
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 3
- 235000003140 Panax quinquefolius Nutrition 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 235000008434 ginseng Nutrition 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 3
- 101100083853 Homo sapiens POU2F3 gene Proteins 0.000 description 2
- 101100058850 Oryza sativa subsp. japonica CYP78A11 gene Proteins 0.000 description 2
- 101150059175 PLA1 gene Proteins 0.000 description 2
- 102100026466 POU domain, class 2, transcription factor 3 Human genes 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 101100352374 Oryza sativa subsp. japonica PLA3 gene Proteins 0.000 description 1
- 102100026918 Phospholipase A2 Human genes 0.000 description 1
- 101710096328 Phospholipase A2 Proteins 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 206010000210 abortion Diseases 0.000 description 1
- 231100000176 abortion Toxicity 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
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/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/5628—Programming or writing circuits; Data input circuits
-
- 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/5628—Programming or writing circuits; Data input circuits
- G11C11/5635—Erasing circuits
-
- 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
- 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/08—Address circuits; Decoders; Word-line control 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/10—Programming or data input 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/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase 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/26—Sensing or reading circuits; Data output circuits
- G11C16/28—Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
-
- 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
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- 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/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- 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/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- 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
-
- 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/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/24—Accessing extra cells, e.g. dummy cells or redundant cells
-
- 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/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50004—Marginal testing, e.g. race, voltage or current testing of threshold voltage
-
- 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/5671—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 trapping in an insulator
-
- 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
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- 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/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/562—Multilevel memory programming aspects
- G11C2211/5621—Multilevel programming verification
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种存储设备,包括控制器和具有存储单元和参考存储单元的非易失性存储设备。所述控制器访问所述存储单元的第一存储单元,当访问所述第一存储单元失败时,从所述参考存储单元中读取与第一存储单元相关联的第一参考存储单元,取决于所述第一参考存储单元的读取结果确定坏区,并且将所述存储单元中的属于坏区的第二存储单元设置为坏存储单元。
Description
相关申请的交叉引用
本申请要求于2018年1月4日在韩国知识产权局提交的韩国专利申请No.10-2018-0001239的优先权,其公开内容通过引用整体并入本文。
技术领域
本公开的实施例涉及半导体存储器,并且更具体地,涉及包括非易失性存储设备的存储设备、非易失性存储设备和该存储设备的操作方法。
背景技术
非易失性存储设备包括即使在断电时也保持存储在其中的数据的存储单元。非易失性存储设备可以包括闪存设备、相变存储设备、铁电存储设备、磁存储设备、电阻存储设备等。
如果在存储单元中或在存储单元的周围材料中发生缺陷,则对存储单元的访问可能失败。如果对存储单元的访问失败,则可以将包括其中访问失败的存储单元的存储空间设置为坏区(bad area)。对被设置为坏区的存储空间的访问是禁止的,从而导致非易失性存储设备或存储设备的存储容量减小。
发明内容
本公开的实施例提供了一种包括降低由于设置坏区而导致的存储容量减小的非易失性存储设备的存储设备、非易失性存储设备和该存储设备的操作方法。
根据示例性实施例,存储设备包括:包括存储单元和参考存储单元的非易失性存储设备,以及访问存储单元中的第一存储单元的控制器,当访问第一存储单元失败时,控制器从参考存储器之中读取与第一存储单元相关联的第一参考存储单元;根据第一参考存储单元的读取结果,从所述存储单元中确定坏区;并从存储单元中将属于坏区的第二存储单元设置为坏存储单元。
根据示例性实施例,非易失性存储设备包括:包括存储单元和参考存储单元的存储单元阵列,通过字线连接到存储单元阵列的行解码器电路,通过位线连接到存储单元阵列的页面缓冲器电路,以及控制逻辑电路,控制逻辑电路控制行解码器电路和页面缓冲器电路以便访问存储单元的第一存储单元,并当对第一存储单元的访问失败时,控制行解码电路和页面缓冲器电路以读取与第一存储单元相关联的第一参考存储单元。取决于第一参考存储单元的读取结果来设置与第一存储单元相关联的坏区。
根据示例性实施例,一种包括包含存储单元和参考存储单元的非易失性存储设备以及非易失性存储设备的控制器的存储设备的操作方法,包括:访问存储单元中的第一存储单元;当对第一存储单元的访问失败时,从参考存储单元中读取与第一存储单元相关联的第一参考存储单元;并取决于第一参考存储单元的读取结果确定与第一存储单元相关联的坏区。
根据示例性实施例,存储设备包括非易失性存储块和控制器。非易失性存储块具有平面(plane),平面中的每一个包括串(string),并且由不同的串选择线寻址,同一平面内的串的每一个由不同的位线寻址,并且包括用户存储单元和参考存储单元,同一串内的用户存储单元中的每一个由相同的位线和不同的字线寻址,并且同一串内的参考存储单元中的每一个由相同的位线和不同的字线或不同的选择线寻址,所述选择线可以是串选择线。控制器:(1)访问非易失性存储块内的用户存储单元中的第一用户存储单元,(2)响应于关于访问第一用户存储单元确定访问错误,在非易失性存储块内的参考存储单元中读取与第一用户存储单元相关联的第一参考存储单元,并且(3)基于读取第一参考存储单元的第一读取结果,确定第一用户存储单元是否可用于存储数据。
附图说明
通过参考附图详细描述本发明的示例性实施例,本公开的上述和其他目的和特征将变得显而易见。
图1是示出根据本公开的实施例的存储设备的框图。
图2是示出根据本公开的实施例的存储设备的操作方法的流程图。
图3是示出根据本公开的实施例的非易失性存储设备的框图。
图4是示出图3的存储块的一个存储块的示例的电路图。
图5示出了图4的存储块的单元晶体管。
图6示出了图4的存储块的单元晶体管的另一示例。
图7是示出确定坏区的方法的流程图。
图8示出了由于写入操作和擦除操作引起的存储单元的阈值电压的变化的示例。
图9示出了当写入操作失败时存储单元的阈值电压分布。
图10示出了在用户存储单元中当发生写入失败时读取参考存储单元的示例。
图11示出了地选择晶体管、伪存储单元或串选择晶体管的阈值电压分布的示例。
图12示出了当发生写入失败时坏区确定器确定少数子字线失败的示例。
图13示出了当发生写入失败时坏区确定器确定多数子字线失败的示例。
图14示出了当发生写入失败时坏区确定器确定行失败的示例。
图15示出了由于分布或随着时间的推移而导致的存储单元的阈值电压的变化的示例。
图16示出了其中坏区确定器读取参考存储单元以确定单独失败(left-alone)的示例。
图17示出了其中坏区确定器读取参考存储单元和外围参考存储单元以确定单独失败的示例。
图18示出了其中当发生读取失败时坏区确定器确定少数子字线失败的示例。
图19示出了其中当发生读取失败时坏区确定器确定多数子字线失败的示例。
图20示出了其中当发生读取失败时坏区确定器确定行失败的示例。
图21示出了其中通过擦除操作形成的存储单元的阈值电压的示例。
图22是示出了根据本公开另一实施例的非易失性存储设备的框图。
图23是根据本公开另一实施例的非易失性存储设备的框图。
图24是示出了坏区确定器的示例的框图。
图25示出了机器学习分类模块的分类器的示例。
图26示出了机器学习分类模块的分类器的另一示例。
图27示出了机器学习分类模块的分类器的另一示例。
具体实施方式
下面,可以详细并且清楚地描述本公开的实施例,以达到本领域普通技术人员容易实现本公开的程度。
图1是示出根据本公开的实施例的存储设备100的框图。参考图1,存储设备100包括非易失性存储设备110和控制器120。
非易失性存储设备110可以在控制器120的控制下执行写入、读取和擦除操作。非易失性存储设备110可以通过第一通道(例如,输入/输出通道)来从控制器120接收命令和地址。非易失性存储设备110可以通过第一通道与控制器120交换数据。
非易失性存储设备110可以通过第二通道(例如,控制信号通道)从控制器120接收控制信号。例如,非易失性存储设备110可以与控制器120通信指示何时发送命令、地址或数据的时序信号。
非易失性存储设备110可以包括两个或更多非易失性存储器芯片。非易失性存储设备110可以通过第二通道从控制器120接收指示两个或更多非易失性存储器芯片的访问目标的芯片选择信号。非易失性存储设备110可以通过第二通道向控制器120输出指示忙状态或就绪状态的信号。
控制器120被配置为驱动管理存储设备100或非易失性存储设备110的固件。控制器120被配置为控制非易失性存储设备110。例如,控制器120可以通过第一通道和第二通道控制非易失性存储设备110使得非易失性存储设备110执行写入、读取或擦除操作。
控制器120可以在外部主机设备(未示出)的控制下控制非易失性存储设备110。例如,控制器120可以遵循与用于与非易失性存储设备110通信的第一格式不同的第二格式与外部主机设备通信。控制器120传送到非易失性存储设备110的数据单元可以与控制器120传送到外部主机设备的数据单元不同。
控制器120包括错误校正块121、闪存转换层122以及坏区确定器123。错误校正块121可以对控制器120将在非易失性存储设备110中写入的数据执行纠错编码。例如,纠错块121可以从数据生成奇偶校验,并且可以将奇偶校验添加到数据。
纠错块121可以对从非易失性存储设备110读取的数据执行纠错解码。例如,通过使用包括在数据中的奇偶校验,纠错块121可以检测数据中存在的错误并且可以纠正检测到的错误。
闪存转换层122可以将外部主机设备访问存储设备100的第一接口方式转换(或转化)为控制器120访问非易失性存储设备110的第二接口方式。例如,闪存转换层122可以将外部主机设备的地址系统转换为非易失性存储设备110的地址系统。
外部主机设备可以从存储设备100接收容量信息(例如,用户区域的容量信息),并且可以基于容量信息将逻辑地址分配给存储设备100。外部主机设备可以基于逻辑地址访问存储设备100。
基于物理地址访问非易失性存储设备110。闪存转换层122可以将外部主机设备的逻辑地址转换为非易失性存储设备110的物理地址。闪存转换层122可以将外部主机设备的访问单元(例如,数据大小)转换为非易失性存储设备110的访问单元。
闪存转换层122管理非易失性存储设备110的存储空间。例如,闪存转换层122可以管理非易失性存储设备110的存储空间的用于取决于外部主机设备的请求来存储数据的用户区域,或者用于管理用户区域或执行后台操作的保留区域。
闪存转换层122还可以管理非易失性存储设备110的存储空间的坏区。例如,闪存转换层122可以禁止相对于非易失性存储设备110的存储空间的被确定为坏区的存储空间的写入或读取操作。
坏区确定器123可以确定非易失性存储设备110的存储空间的坏区。例如,当在非易失性存储设备110中发生访问失败时,坏区确定器123可以确定与访问失败相关的坏区。
例如,坏区确定器123可以确定访问失败的类型,并且可以取决于访问失败的类型不同地设置坏区。例如,坏区确定器123可以不同地设置坏区的大小、坏区的方向性等。
在一个实施例中,纠错块121、闪存转换层122或坏区确定器123可以使用诸如电子电路、半导体电路、集成电路或集成电路上的知识产权(IP)块的硬件来实现。又例如,错误校正块121、闪存转换层122或坏区确定器123可以通过由硬件运行的固件或软件来实现。
图2是示出根据本公开的实施例的存储设备100的操作方法的流程图。参考图1和图2,在操作S110中,控制器120可以访问非易失性存储设备110的存储单元。例如,控制器120可以将访问命令和地址发送到非易失性存储设备110,并且非易失性存储设备110可以响应访问命令来访问存储单元。
在操作S120中,如果未发生访问失败,则访问可能成功。如果发生访问失败,则执行操作S130。例如,访问失败可以包括在非易失性存储设备110中未完成访问的失败事件或者在非易失性存储设备110中完成访问但是由控制器120确定访问失败的失败事件。
例如,在写入操作的情况下,如果在非易失性存储设备110中完成写入操作,则控制器120可以确定写入操作是成功的。如果在非易失性存储设备110中存储单元的写入操作未完成而失败,则非易失性存储设备110可以向控制器120发送指示写入失败的通知。控制器120可以基于来自非易失性存储设备110的通知来确定写入失败。
在读取操作的情况下,非易失性存储设备110可以对存储单元执行读取操作,并且可以将读取操作的结果发送到控制器120。控制器120的错误校正块121可以对从非易失性存储设备110发送的数据执行错误纠正解码。
如果纠错解码成功,即,如果完全纠正了数据错误,则控制器120可以确定读取操作是成功的。如果纠错解码失败,即,如果数据中存在包括不可纠正错误的数据,则控制器120可以确定读取操作失败。
例如,在擦除操作的情况下,如果在非易失性存储设备110中完成了擦除操作,则控制器120可以确定擦除操作成功。如果存储单元的擦除操作在非易失性存储设备110中未完成而失败,则非易失性存储设备110可以向控制器120发送指示擦除失败的通知。控制器120可以基于来自非易失性存储设备110的通知来确定擦除失败。
在操作S130中,控制器120可以读取与存储单元有关的参考存储单元。参考存储单元可以具有与存储单元相同的结构,并且可以以与存储单元相同的方式访问。参考存储单元可以是存储单元的一部分。存储单元可以用于存储用户数据,但是参考存储单元可以用于存储具有特定阈值电压范围的参考数据。
存储在参考存储单元中的参考数据可包括已知的特定模式。由于存储在参考存储单元中的数据是已知的,因此控制器120可以从参考存储单元的读取操作中检测存储在参考存储单元中的参考数据的特性变化。在操作S140中,控制器120的坏区确定器123可以取决于参考存储单元的读取操作的结果来确定坏区。
例如,控制器120可以根据存储在与发生访问失败的第一存储单元相关的第一参考存储单元中的第一参考数据的特性变化来确定访问失败的类型,并且可以确定坏区。控制器120可以通过将存储在第一参考存储单元中的第一参考数据的特性或特性变化和存储在与第一参考存储单元不同的第二参考存储单元中的第二参考数据的特性或特性变化进行比较来确定访问失败和坏区的类型。
控制器120可以通过将存储在与发生访问失败的第一存储单元相关的第一参考存储单元中的第一参考数据的特性或特性变化和存储在与第一存储单元不同的第二存储单元中的数据的特征或特征变化进行比较来确定访问失败的类型和坏区。
在一个实施例中,在操作S130和操作S140中,控制器120可以将用于确定失败类型的特殊命令发送到非易失性存储设备110。非易失性存储设备110可以响应特殊命令而执行两个或更多读取操作(例如,参考存储单元的读取操作)以确定失败类型。非易失性存储设备110可以将读取操作的结果发送到控制器120。控制器120可以取决于读取操作的结果来确定坏区。
例如,非易失性存储设备110可以响应于特殊命令而执行两个或更多读取操作(例如,参考存储单元的读取操作)以确定失败类型。非易失性存储设备110可以自动确定访问失败的类型,并且可以将访问失败的类型发送到控制器120。控制器120可以取决于访问失败的类型确定坏区。
例如,控制器120可以将读取命令发送到非易失性存储设备110。非易失性存储设备110可以响应于读取命令执行读取操作(例如,对参考存储单元的读取操作)。如果需要,控制器120可以将两个或更多读取命令发送到非易失性存储设备110。控制器120可以取决于读取操作的结果或读取操作结果的组合来确定失败类型和坏区。
在操作S150中,控制器120的闪存转换层122可以执行坏区处理。例如,闪存转换层122可以禁止关于坏区的写入或擦除操作。闪存转换层122可以将存储在坏区中的数据的可读的有效数据移动到非易失性存储设备110的另一个存储空间。
如果存在先前映射到坏区的逻辑地址,则闪存转换层122可以将逻辑地址重新映射到非易失性存储设备110的另一个存储空间。闪存转换层122可以禁止坏区被用作用户区域或保留区域。
图3是示出根据本公开的实施例的非易失性存储设备110的框图。参考图1和图3,非易失性存储设备110包括存储单元阵列111、行解码器电路112、页面缓冲器电路113、数据输入/输出电路114、通过-失败检查电路(PFC)115和控制器逻辑电路116。
存储单元阵列111包括多个存储块BLK1至BLKz。存储块BLK1至BLKz中的每一个包括多个存储单元。存储块BLK1至BLKz中的每一个可以通过至少一条地选择线GSL、伪字线DWL、字线WL和至少一个串选择线SSL连接到行解码器电路112。
存储块BLK1至BLKz中的每一个可以通过多条位线BL被连接到页面缓冲器电路113。多个存储块BLK1至BLKz可以被共同连接到多条位线BL。多个存储块BLK1至BLKz的存储单元可以具有相同的结构。
在一个实施例中,存储块BLK1至BLKz中的每一个可以对应于擦除操作的单元。可以为每个存储块擦除存储单元阵列111的存储单元。可以同时擦除属于一个存储块的存储单元。作为另一示例,存储块BLK1至BLKz中的每一个可以被划分为多个子块。多个子块中的每一个可以对应于擦除操作的单元。
在一个实施例中,多个存储块BLK1至BLKz中的每一个可以包括由块地址标识的物理存储空间。字线WL中的每一个可以对应于由行地址标识的物理存储空间。多个位线BL中的每一个可以对应于由列地址标识的物理存储空间。
在一个实施例中,多个存储块BLK1至BLKz中的每一个可以包括多个物理页面,其每一个包括多个存储单元。多个物理页面中的每一个可以指代编程操作的单元。可以同时对每个物理页面的存储单元编程。每个物理页面可以包括多个逻辑页面。
分别在每个物理页面的存储单元中编程的位可以构成逻辑页面。在每个物理页面的存储单元中编程的第一位可以构成第一逻辑页面。在每个物理页面的存储单元中编程的第K位(K是正整数)可以构成第k个逻辑页面。
行解码器电路112通过多条地选择线GSL、多条伪字线DWL、字线WL和多条串选择线SSL被连接到存储单元阵列111。行解码器电路112在控制逻辑电路116的控制下操作。
行解码器电路112可以解码通过第一通道(例如,输入/输出通道)从控制器120接收的地址,并且可以取决于经解码的地址控制要施加到串选择线SSL、伪字线DWL、字线WL和地选择线GSL的电压。
例如,在写入操作中,行解码器电路112可以将编程电压施加到由地址选择的存储块的所选字线,并且可以将通过电压施加到所选择的存储块的未选择字线。行解码器电路112可以将关断电压施加到所选择的存储块的地选择线GSL,并且可以将导通电压施加到伪字线DWL和串选择线SSL。
在读取操作中,行解码器电路112可以将选择读取电压施加到由地址选择的存储块的所选字线,并且可以将非选择读取电压施加到所选择的存储块的未选择字线。行解码器电路112可以将导通电压施加到所选存储块的地选择线GSL、伪字线DWL和串选择线SSL。
在擦除操作中,行解码器电路112可将擦除电压(例如,接地电压或低电压,其电平类似于接地电压的电平)施加到由地址选择的存储块的字线。行解码器电路112可以浮置(float)所选存储块的地选择线GSL、伪字线DWL和串选择线SSL。
页面缓冲器电路113通过多条位线BL与存储单元阵列111连接。页面缓冲器电路113通过多条数据线DL与数据输入/输出电路114连接。页面缓冲器电路113在控制逻辑电路116的控制下操作。
在写入操作中,页面缓冲器电路113可以存储要写入存储单元中的数据。页面缓冲器电路113可以基于所存储的数据将电压施加到多个位线BL。在与读取操作、写入操作或擦除操作相关联的验证读取操作中,页面缓冲器电路113可以感测位线BL的电压并且可以存储感测操作的结果。
数据输入/输出电路114通过多条数据线DL与页面缓冲器电路113连接。数据输入/输出电路114可以通过输入/输出通道将由页面缓冲器电路113读取的数据输出到控制器120,并且可以通过输入/输出通道将从控制器120接收的数据发送到页面缓冲器电路113。
在与写入操作或擦除操作相关联的验证读取操作之后,通过-失败检查电路(pass-fail check circuit)115可以从页面缓冲器电路113接收感测结果。通过-失败检查电路115可以基于接收的感测结果来确定写入或擦除操作的通过或失败。
例如,在与写入操作相关联的验证读取操作中,页面缓冲器电路113可以计数导通的导通单元的数量。如果导通单元的数量不小于阈值,则通过-失败检查电路115可以确定写入操作失败(例如,写入失败)。如果导通单元的数量小于阈值,则通过-失败检查电路115可以确定写入操作是成功的(例如,写入通过)。
例如,在与擦除操作相关联的验证读取操作期间,页面缓冲器电路113可以计数被关断的关断单元的数量。如果关断单元的数量不小于阈值,则通过-失败检查电路115可以确定擦除操作失败(例如,擦除失败)。如果关断单元的数量小于阈值,则通过-失败检查电路115可以确定擦除操作是成功的(例如,擦除通过)。通过或失败确定的结果被提供给控制逻辑电路116。
控制逻辑电路116可以从控制器120通过第一通道接收命令,并通过第二通道(控制通道)接收控制信号。控制逻辑电路116可以响应控制信号接收通过第一通道输入的命令,可以将通过第二信道接收的地址路由到行解码器电路112,并且可以将通过第一信道接收的数据路由到数据输入/输出电路114。
控制逻辑电路116可以对接收的命令进行解码,并且可以取决于经解码的命令控制非易失性存储设备110。在与写入操作或擦除操作相关联的验证读取操作中,控制逻辑电路116可以从通过-失败检查电路115接收通过或失败确定结果。
控制逻辑电路116可以在逐步增加编程电压或擦除电压的电平的同时重复写入操作或擦除操作的循环。控制逻辑电路116可以重复写入操作或擦除操作的循环,直到从通过-失败检查电路115接收到通过结果。
如果直到执行写入操作或擦除操作的循环与预先定义的最大循环值一样多时,从通过-失败检查电路115接收到失败结果,则控制逻辑电路116可以确定写入操作或擦除操作最终失败。控制逻辑电路116可以通过第一通道或第二通道向控制器120通知写入操作或擦除操作失败。
图4是图3的存储块BLK1至BLKz的一个存储块BLKa的示例的电路图。参考图4,可以以行和列的方式将多个单元串CS布置(disposed)在衬底SUB上。可以将多个单元串CS共同连接到在衬底SUB上(或之中)形成的公共源极线CSL。在图4中,示出了衬底SUB的位置以帮助理解存储块BLKa的结构。
图4中示出了公共源极线CSL被连接到单元串CS的下端(lower end)的示例。然而,公共源极线CSL电被连接到单元串CS的下端就足够了,并且本公开不限于公共源极线CSL物理地位于单元串CS的下端的情况。图4中示出了单元串CS以4乘4的矩阵排列的示例。然而,存储块BLKa中的单元串CS的数量可以增加或减少。
可以将每行的单元串CS连接到地选择线GSL以及到第一串选择线SSL1至第四串选择线SSL4的对应的串选择线。可以将每列的单元串CS连接到第一位线BL1至第四位线BL4的对应的位线。为了便于说明,连接到第二串选择线SSL2和第三串选择线SSL3的单元串CS被描绘为淡色(light)的。
每个单元串CS可以包括至少一个连接到地选择线GSL的地选择晶体管GST、连接到第一伪字线DWL1的第一伪存储单元DMC1、分别连接到多个字线WL1至WL8的多个存储单元MC1到MC8、连接到第二伪字线DWL2的第二伪存储单元DMC2、以及分别连接到串选择线SSL1、SSL2、SSL3或SSL4的串选择晶体管SST。
在每个单元串CS中,地选择晶体管GST、第一伪存储单元DMC1、存储单元MC1至MC8、第二伪存储单元DMC2和串选择晶体管SST可以沿垂直于衬底SUB方向串联连接并且可以沿垂直于衬底SUB的方向顺序堆叠。
在每个单元串CS中,可以在存储单元MC1至MC8之间提供一个或多个伪存储单元。伪存储单元DMC1和DMC2可以具有与存储单元MC1至MC8相同的结构。伪存储单元DMC1和DMC2可以不被编程(例如,可以是编程禁止的)或者可以被编程为与存储单元MC1至MC8不同。
例如,存储单元MC1到MC8可以被编程为取决于数据具有各种阈值电压,并且伪存储单元DMC1和DMC2可以被编程为具有特定范围内的阈值电压。如在伪存储单元DMC1和DMC2中那样,串选择晶体管SST和地选择晶体管GST可以被编程为具有特定范围内的阈值电压。
在一个实施例中,位于相同高度并且与一个串选择线SSL1、SSL2、SSL3或SSL4相关联的存储单元可以形成一个物理页面。一个物理页面的存储单元可以被连接到一个子字线。位于相同高度的物理页面的子字线可以被共同连接到一个字线。
在一个实施例中,位于相同高度的物理页面的子字线可以在形成子字线的高度处彼此连接。再例如,位于相同高度的物理页面的子字线可以在例如金属层的其高度不同于形成子字线的高度的另一层间接地彼此连接。
可以在三维(3D)存储器阵列处提供存储块BLKa。3D存储器阵列是在具有布置(disposed)在硅衬底上方的有源区和与那些存储单元MC的操作相关联的电路的存储单元MC的一个或多个物理层中单片地形成。与存储单元MC的操作相关联的电路可以位于这种衬底之上或之内。术语“单片”意味着阵列的每个级别(level)的层直接沉积(deposite)在3D存储器阵列的每个底层级别(underlying level)的层上。
在本发明的实施例中,3D存储器阵列包括垂直单元串CS(或NAND串),其垂直定向使得至少一个存储单元位于另一存储单元上方。至少一个存储单元可以包括电荷陷阱层。每个单元串还可以包括放置(place)在存储单元MC上的至少一个选择晶体管。至少一个选择晶体管可以具有与存储单元MC相同的结构,并且可以与存储单元MC一致地形成。
通过引用并入本文的以下专利文献描述了用于三维存储器阵列的合适配置,其中三维存储器阵列被配置为多个级别,其在级别间共享字线和/或位线:美国专利第7679133号、第8553466号、第8654587号、第8559235号和美国专利公开第2011/0233648号。
存储单元MC1到MC8的一些存储单元可以被用作参考存储单元。参考存储单元可以不被用于存储用户数据,但是它们可以被用于存储参考数据。参考数据可以具有易于监视阈值电压的变化的模式。
在一个实施例中,用于存储用户数据的存储单元MC1至MC8中的存储单元可以是用户存储单元UC(参考图5)。被用于存储参考数据的存储单元可以是参考存储单元RC。在一个实施例中,存储单元可以被解释为基本上等同于用户存储单元UC,因为仅存储单元MC1至MC8的用户存储单元UC被用于存储用户数据。
图5示出了图4的存储块BLKa的单元晶体管。图5中示出了多个六面体。图5的每个六面体可以指示一个单元晶体管。一个单元晶体管可以是地选择晶体管GST、伪存储单元DMC、存储单元MC或串选择晶体管SST。
参考图4和图5,单元晶体管可以形成第一平面PLA1至第四平面PLA4。第一平面PLA1包括与第一串选择线SSL1相关联的单元晶体管。第二平面PLA2包括与第二串选择线SSL2相关联的单元晶体管。
第三平面PLA3包括与第三串选择线SSL3相关联的单元晶体管。第四平面PLA4包括与第四串选择线SSL4相关联的单元晶体管。为了便于说明,图5中未示出地选择线GSL、伪字线DWL1和DWL2、字线WL1至WL8,串选择线SSL1至SSL4以及位线BL1至BL4。
在图5中,由粗线包围的单元晶体管指示存储单元MC1至MC8。在存储单元MC1至MC8中,用空心六面体(empty hexahedron)描绘用户存储单元UC,并且用点填充六面体描绘参考存储单元RC。在一个实施例中,每个物理页面的一些存储单元可以被用作参考存储单元RC。
图6示出了图4的存储块BLKa的单元晶体管的另一示例。图6的每个六面体可以指示一个单元晶体管。与图5相比,参考存储单元RC还可以包括地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST。
地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST可以被编程为具有特定范围内的阈值电压。当用户存储单元UC或参考存储单元RC的阈值电压改变时,地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压也可以改变。
因此,地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压也可被用于确定访问失败的类型。
图7是示出确定坏区的方法(操作S130和操作S140)的流程图。参考图1、图3、图4和图7,在操作S210中,控制器120可以检测存储单元的访问失败。在操作S220中,控制器120可以读取与发生访问失败的存储单元有关的参考存储单元。
在操作S230中,控制器120的坏区确定器123可以确定访问失败是否是固件失败。例如,由于读取操作或写入操作,单元晶体管可能经历阈值电压的扰动。而且,单元晶体管的阈值电压可以随时间逐渐变化。
为了补偿单元晶体管的阈值电压的扰动或单元晶体管的阈值电压随时间的变化,控制器120的固件被配置为重新调整单元晶体管的阈值电压。如果控制器120的固件没有在适当的时间(或指定的时间)重新调节阈值电压,并且因此单元晶体管保持不变,则单元晶体管的阈值电压可能超过阈值。
如果单元晶体管的阈值电压超过阈值,则在访问与单元晶体管相关的存储单元(或用户存储单元)时可能发生访问失败。这样的失败可能是一个单独(left-alone)的失败。单独的失败由于控制器120固件的异常操作而发生,而不是由于单元晶体管的缺陷。
因此,如果访问失败是单独失败,则在操作S235中,坏区确定器123可以确定不存在坏区。控制器120可以重新使用发生访问失败的存储单元(下文中称为“失败的存储单元(failed memory cell)”)。例如,控制器120可以将失败存储单元所属的存储块的有效数据移动到另一个存储块。之后,控制器120可以擦除并重新使用失败的存储单元的存储块。
如果在操作S230中确定访问失败不是单独失败,则执行操作S240。在操作S240中,坏区确定器123可以确定访问失败是否是少数子字线失败。例如,坏区确定器123可以确定是否由于少数子字线或与少数子字线相关的存储单元的缺陷而发生访问失败。
少数子字线可以是连接到一个字线的子字线之中的与一个字线或多个子字线连接的所有子字线,其数量小于特定比率(例如,一半)。如果访问失败是少数子字线失败,则在操作S245中,坏区确定器123可以将对应于访问失败的少数子字线的存储单元确定为坏存储单元(即,坏区)。
如果在操作S240中确定访问失败不是少数子字线失败,则执行操作S250。在操作S250中,坏区确定器123可以确定访问失败是否是多数子字线失败。例如,坏区确定器123可以确定是否是由于多数子字线或与多数子字线相关的存储单元的缺陷而发生访问失败。
多数子字线可以是连接到一个字线的子字线之中的与一个字线或多个子字线连接的所有子字线,其数量不小于特定比率(例如,一半)。如果访问失败是多数子字线失败,则在操作S255中,坏区确定器123可以将对应于访问失败的多数子字线的存储单元确定为坏存储单元(即,坏区)。例如,坏区确定器123可以将多数子字线所属的字线的所有存储单元确定为坏存储单元。
如果在操作S250中确定访问失败不是多数子字线失败,则执行操作S260。在操作S260中,坏区确定器123可以确定访问失败是否是行失败。例如,坏区确定器123可以确定是否是由于串选择线或与对应于访问失败的存储单元相关的串选择晶体管(例如,与相同的行相关)的缺陷而发生访问失败。
如果访问失败是行失败,则在操作S265中,坏区确定器123可以将对应于访问失败的存储单元所属的整个行(例如,平面)确定为坏区。如果访问失败不是行失败,则在操作S270中,坏区确定器123可以将对应于访问失败的存储单元所属的整个存储块(例如,整个子块)确定为坏区。
参考图7描述了单独失败、少数子字线失败、多数子字线失败和行失败的示例。然而,能够通过参考存储单元确定的失败类型不限于此。坏区确定器123可以通过使用参考存储单元来不同地确定失败类型。
坏区确定器123可以取决于所确定的失败类型来不同地确定坏区。在坏区确定器123不能确定失败类型的情况下,坏区确定器123可以将与访问失败相对应的存储单元所属的整个存储块(例如,整个子块)确定为坏区。
图8示出了由于写入操作和擦除操作导致的存储单元的阈值电压的变化的示例。在图8中,横轴代表存储单元MC的阈值电压,纵轴代表存储单元的数量。
已擦除的存储单元具有擦除状态“E”的阈值电压。被编程的存储单元可以具有擦除状态“E”和第一至第七编程状态P1至P7的阈值电压。
在一个实施例中,被编程的存储单元具有的编程状态的数量不限于此。可以取决于要在每个存储单元中写入的位数来确定被编程的存储单元具有的编程状态的数量。
图9示出了当写入操作失败时存储单元的阈值电压分布。在图9中,横轴代表存储单元MC的阈值电压,纵轴代表存储单元的数量。与图8相比,被编程到第七编程状态P7的存储单元的阈值电压分布P7'可以形成为低于目标电平。
在一个实施例中,当写入操作失败时,除了被编程到第七编程状态P7的存储单元的阈值电压分布P7'之外,被编程到任何其他编程状态的存储单元的阈值电压分布也可以形成为低于目标水平。
图10和图11示出了当发生写入失败时确定访问失败是否是单独失败的示例。详细地说,图10显示了当在用户存储单元UC中发生写入失败时读取参考存储单元RC的示例。
参考图4和图11,当在特定用户存储单元UC中发生写入失败时,控制器120可以读取属于作为特定用户存储单元UC的相同单元串的地选择晶体管GST、伪存储单元DMC1和DMC2或者串选择晶体管SST作为参考存储单元RC。
图11显示了地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压分布的示例。在图11中,横轴代表阈值电压Vth,纵轴代表地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的数量。
参考图1、图4、图10和图11,上电压VH和下电压VL形成正常电压范围。例如,当在上电压VH和下电压VL之间具有阈值电压时,地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST可以正常操作。
如果地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压高于上电压VH或低于下电压VL,则地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST可能操作异常。
如上所述,控制器120可以控制地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压,以便不从正常电压范围改变到异常电压范围。如果地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压变为异常电压范围,则可能发生访问失败。
当发生写入失败时,坏区确定器123可以确定与对应于写入失败的存储单元属于相同单元串的地选择晶体管GST、伪存储单元DMC1和DMC2或者串选择晶体管SST是否属于异常电压范围。
如果地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压属于异常电压范围,则坏区确定器123可以确定写入失败是单独失败。如果地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的阈值电压属于正常电压范围,则坏区确定器123可以确定写入失败不是单独失败。
在一个实施例中,坏区确定器123可以向非易失性存储设备110发送用于地选择晶体管GST、伪存储单元DMC1和DMC2或串选择晶体管SST的读取命令。坏区确定器123可以从非易失性存储设备110接收读取结果,并且可以确定写入失败是否是单独失败。
作为另一示例,坏区确定器123可以向非易失性存储设备110发送用于请求非易失性存储设备110确定写入失败是否是单独失败的特殊命令。非易失性存储设备110可以读取地选择晶体管GST、伪存储单元DMC1和DMC2或者串选择晶体管SST,并且可以确定写入失败是否是单独的失败。非易失性存储设备110可以将确定结果发送到控制器120。
图12示出了其中当发生写入失败时,坏区确定器123确定少数子字线失败的示例。参考图1、图4和图12,坏区确定器123可以确定在与发生写入失败的存储单元共享字线的存储单元中是否进一步发生写入失败。
如果在共享字线的子字线中发生访问失败的子字线的数量是一个或小于特定比率(例如,一半),则坏区确定器123可以确定由于少数子字线失败而访问失败。坏区确定器123可以将连接到发生写入失败的子字线的存储单元确定为坏区。
在一个实施例中,控制器120可以对与其中发生访问失败的第一子字线共享字线的第二子字线的存储单元执行写入操作。坏区确定器123可以根据第二子字线的写入结果确定写入失败是否是少数子字线失败。
在一个实施例中,可以通过读取参考存储单元来确定第二子字线的存储单元的写入失败。例如,写入用户存储单元UC中的模式可以随用户数据的位值而变化。因此,即使在第二子字线中的一个中存在缺陷,也可以依据于用户数据的位值成功进行写入操作。
相反,写入参考存储单元RC中的参考数据具有固定模式(fixed pattern)。例如,参考数据可以具有以这样的方式确定的模式,使得很容易地确定(或验证)图9的编程失败的存储单元的阈值电压分布。因此,可以通过读取参考数据来容易地确定第二子字线的写入失败。
图13示出了其中当发生写入失败时,坏区确定器123确定多数子字线失败的示例。参考图1、图4和图13,坏区确定器123可以确定在与发生写入失败的存储单元共享字线的存储单元中是否还写入失败。
如果属于字线的子字线中发生访问失败的子字线的数量不小于特定比率(例如,一半),或者在所有共享字线的子字线中发生访问失败,则坏区确定器123可以确定访问失败为多数子字线失败。坏区确定器123可以将连接到发生写入失败的多数子字线的存储单元确定为坏区。
在一个实施例中,控制器120可以对与发生访问失败的第一子字线共享字线的第二子字线的存储单元执行写入操作。坏区确定器123可以取决于第二子字线的写入结果来确定写入失败是否是多数子字线失败。
如参考图12所述的,坏区确定器123可以读取第二子字线的参考存储单元RC,以便很容易地确定第二子字线的写入失败。坏区确定器123可以根据参考存储单元RC的读取结果来确定第二子字线的写入失败。
图14示出了其中当发生写入失败时坏区确定器123确定行失败的示例。参考图1、图4和图14,坏区确定器123可以确定在与发生写入失败的存储单元属于同一行的存储单元中是否进一步发生写入失败。
如果属于同一行的子字线中发生访问失败的子字线的数量不小于特定比率(例如,一半),或者在属于同一行的子字线的所有的子字线中发生访问失败,则坏区确定器123可以确定行失败。坏区确定器123可以将与发生写入失败的存储单元属于同一行的存储单元确定为坏区。
也就是说,坏区确定器123可以将与发生写入失败的存储单元属于相同的行的其他存储单元称为参考存储单元。坏区确定器123可以根据其他存储单元的访问结果来确定行失败。
在一个实施例中,控制器120可以对与发生访问失败的第一子字线属于相同的行的第二子字线的存储单元执行写入操作。坏区确定器123可以根据第二子字线的写入结果来确定写入失败是否是行失败。
如参考图12所述的,坏区确定器123可以读取第二子字线的参考存储单元RC,以便很容易地确定第二子字线的写入失败。坏区确定器123可以取决于参考存储单元RC的读取结果来确定第二子字线的写入失败。
图15示出了由于分布(distribution)或随着时间的推移(over time)而导致的存储单元的阈值电压的变化的示例。在图15中,横轴代表存储单元MC的阈值电压,纵轴代表存储单元的数量。
参考图1、图4和图15,在写入操作之后,存储单元可以具有擦除状态“E”和第一编程状态P1至第七编程状态P7。如果存储单元受到干扰的影响,则具有如擦除状态“E”的相对低的阈值电压的存储单元的阈值电压增加。
具有如第七编程状态P7的相对高的阈值电压的存储单元的阈值电压随时间减小。由于干扰或随着时间的推移的影响,在存储单元中可能发生读取失败。为了防止读取失败,控制器120可以执行读取回收操作(read reclaim operation),读取在写入之后经过特定时间的数据或者错误率达到阈值的数据并且将所读取的数据写入任何其他存储单元。
图16和图17示出了其中坏区确定器123确定单独失败的示例。详细地说,图16示出了坏区确定器123读取参考存储单元RC以确定单独失败的示例。参考图1、图4和图16,当发生读取失败时,坏区确定器123可以读取与发生读取失败的用户存储单元UC连接相同的子字线的参考存储单元RC。
如图16所示,坏区确定器123可以确定参考存储单元RC的阈值电压受到干扰或随着时间的推移的影响。参考存储单元RC的阈值电压是导致读取失败的异常阈值电压的情况可能意味着没有适当地执行读取回收操作。因此,坏区确定器123可以确定不存在坏区。
图17示出了其中坏区确定器123读取参考存储单元RC1和外围参考存储单元RC2以确定单独失败的示例。参考图1、图4和图17,当发生读取失败时,坏区确定器123可以读取与发生读取失败的用户存储单元UC连接相同的子字线的第一参考存储单元RC1。
坏区确定器123还可以读取与第一参考存储单元RC1相邻的第二参考存储单元RC2。例如,坏区确定器123还可以读取在发生读取失败的子字线之上或之下的子字线的第二参考存储单元RC2。坏区确定器123还可以读取与发生读取失败的子字线共享字线的相邻子字线的第二参考存储单元RC2。
坏区确定器123可以确定第一参考存储单元RC1和第二参考存储单元RC2的阈值电压是正常阈值电压还是异常阈值电压。第一参考存储单元RC1和第二参考存储单元RC2的阈值电压是导致读取失败的异常阈值电压的情况可能意味着没有适当地执行读取回收操作。因此,坏区确定器123可以确定不存在坏区。
在一个实施例中,坏区确定器123可以向非易失性存储设备110发送用于第一参考存储单元RC1或第二参考存储单元RC2的读取命令。坏区确定器123可以从非易失性存储设备110接收读取结果,并且可以确定写入失败是否是单独失败。
作为另一示例,坏区确定器123可以向非易失性存储设备110发送用于请求非易失性存储设备110去确定读取失败是否是单独失败的特殊命令。非易失性存储设备110可以读取第一参考存储单元RC1或第二参考存储单元RC2以确定读取失败是否是单独的失败。非易失性存储设备110可以将确定结果发送到控制器120。
图18示出了其中当发生读取失败时坏区确定器123确定少数子字线失败的示例。参考图1、图4和图18,当发生读取失败时,坏区确定器123可以读取与发生读取失败的用户存储单元UC连接相同的子字线的第一参考存储单元RC1。
坏区确定器123还可以读取与第一参考存储单元RC1相邻的第二参考存储单元RC2。例如,坏区确定器123还可以读取在发生读取失败的子字线之上或之下的子字线的第二参考存储单元RC2。
坏区确定器123还可以读取与发生读取失败的子字线共享字线的相邻子字线的第二参考存储单元RC2。坏区确定器123还可以读取相对于发生读取失败的子字线在对角线方向上放置(placed)的相邻子字线的第二参考存储单元RC2。
坏区确定器123可以确定第一参考存储单元RC1和第二参考存储单元RC2的阈值电压是正常阈值电压还是异常阈值电压。如果从连接到一个字线的子字线中数量小于给定比率(例如,一半)的属于一个字线的子字线的一个子字线的参考存储单元RC2的阈值电压或子字线的参考存储单元RC2的阈值电压变为导致读取失败的异常阈值电压,则坏区确定器123可以将相关子字线的存储单元确定为坏区。
例如,如果特定子字线的存储单元受到比子字线的存储单元的干扰或时间的流逝更强烈的影响,则特定子字线或特定子字线的存储单元中可能存在缺陷。因此,坏区确定器123可以将读取失败确定为少数子字线失败。
在一个实施例中,坏区确定器123可以向非易失性存储设备110发送用于第一参考存储单元RC1或第二参考存储单元RC2的读取命令。坏区确定器123可以从非易失性存储设备110接收读取结果,并且可以确定读取失败是否是少数子字线失败。
作为另一示例,坏区确定器123可以向非易失性存储设备110发送用于请求非易失性存储设备110确定读取失败是否是少数子字线失败的特殊命令。非易失性存储设备110可以读取第一参考存储单元RC1或第二参考存储单元RC2,以确定读取失败是否是少数子字线失败。非易失性存储设备110可以将确定结果发送到控制器120。
图19示出了当发生读取失败时,坏区确定器123确定多数子字线失败的示例。参考图1、图4和图19,当发生读取失败时,坏区确定器123可以读取与发生读取失败的用户存储单元UC连接的相同的子字线的第一参考存储单元RC1。
坏区确定器123还可以读取与第一参考存储单元RC1相邻的第二参考存储单元RC2。例如,坏区确定器123还可以读取在发生读取失败的子字线之上或之下的子字线的第二参考存储单元RC2。
坏区确定器123还可以读取与发生读取失败的子字线共享字线的相邻子字线的第二参考存储单元RC2。坏区确定器123还可以读取相对于发生读取失败的子字线在对角线方向上放置(placed)的相邻子字线的第二参考存储单元RC2。
坏区确定器123可以确定第一参考存储单元RC1和第二参考存储单元RC2的阈值电压是正常阈值电压还是异常阈值电压。如果从连接到一个字线的子字线之中的连接到一个字线的所有子字线中的参考存储单元的阈值电压或其数量不小于给定比率(例如,一半)的子字线的参考存储单元的阈值电压,变为导致读取失败的异常阈值电压,则坏区确定器123可以将相关字线的存储单元确定为坏区。也就是说,坏区确定器123可以将读取失败确定为多数子字线失败。
在一个实施例中,坏区确定器123可以向非易失性存储设备110发送用于第一参考存储单元RC1或第二参考存储单元RC2的读取命令。坏区确定器123可以从非易失性存储设备110接收读取结果,并且可以确定读取失败是否是多数子字线失败。
对于另一示例,坏区确定器123可以向非易失性存储设备110发送用于请求非易失性存储设备110确定读取失败是否是多数子字线失败的特殊命令。非易失性存储设备110可以读取第一参考存储单元RC1或第二参考存储单元RC2,以确定读取失败是否是多数子字线失败。非易失性存储设备110可以将确定结果发送到控制器120。
图20示出了其中当发生读取失败时坏区确定器123确定行失败的示例。参考图1、图4和图20,当发生读取失败时,坏区确定器123可以读取与发生读取失败的用户存储单元UC连接相同的子字线的第一参考存储单元RC1。
坏区确定器123还可以读取与第一参考存储单元RC1相邻的第二参考存储单元RC2。例如,坏区确定器123还可以读取在发生读取失败的子字线之上或之下的子字线的第二参考存储单元RC2。
坏区确定器123还可以读取与发生读取失败的子字线共享字线的相邻子字线的第二参考存储单元RC2。坏区确定器123还可以读取相对于发生读取失败的子字线在对角线方向上放置的相邻子字线的第二参考存储单元RC2。
坏区确定器123可以确定第一参考存储单元RC1和第二参考存储单元RC2的阈值电压是正常阈值电压还是异常阈值电压。如果从属于相同行的子字线中属于相同行的所有子字线的参考存储单元的阈值电压或其数量不小于给定比率(例如,一半)的子字线的参考存储单元的阈值电压是异常阈值电压,则坏区确定器123可以将读取失败确定为行失败。
在一个实施例中,坏区确定器123可以向非易失性存储设备110发送用于第一参考存储单元RC1或第二参考存储单元RC2的读取命令。坏区确定器123可以从非易失性存储设备110接收读取结果,并且可以确定读取失败是否是行失败。
作为另一示例,坏区确定器123可以向非易失性存储设备110发送用于请求非易失性存储设备110确定读取失败是否是行失败的特殊命令。非易失性存储设备110可以读取第一参考存储单元RC1或第二参考存储单元RC2以确定读取失败是否是行失败。非易失性存储设备110可以将确定结果发送到控制器120。
图21示出了通过擦除操作形成的存储单元的阈值电压的示例。在图21中,横轴代表阈值电压,纵轴代表存储单元的数量。参考图1、图4和图21,在擦除操作中控制存储单元以具有属于正常电压范围的阈值电压。实线指示属于正常电压范围的存储单元的阈值电压的示例。
当在擦除操作中存储单元的阈值电压的至少一部分不属于的正常电压范围时,发生擦除失败。虚线指示当发生擦除失败时存储单元的阈值电压的示例。当发生擦除失败时,如参考图18所描述的,坏区确定器123可以读取第一参考存储单元RC1和第二参考存储单元RC2。
坏区确定器123可以确定第一参考存储单元RC1和第二参考存储单元RC2的阈值电压是否属于异常阈值范围。例如,参考数据可以具有以这样的方式确定的模式,使得确定为擦除失败的阈值电压分布,即,属于异常电压范围的阈值电压很容易地确定(或验证)。坏区确定器123可以通过读取参考数据来确定擦除失败是否是少数子字线失败。
同样地,如参考图19所描述的,当发生擦除失败时,坏区确定器123可以读取第一参考存储单元RC1和第二参考存储单元RC2。坏区确定器123可以根据第一参考存储单元RC1和第二参考存储单元RC2的阈值电压来确定擦除失败是否是多数子字线失败。
类似地,如参考图20所描述的,当发生擦除失败时,坏区确定器123可以读取第一参考存储单元RC1和第二参考存储单元RC2。坏区确定器123可以根据第一参考存储单元RC1和第二参考存储单元RC2的阈值电压来确定擦除失败是否是行失败。
图22是示出根据本公开另一实施例的非易失性存储设备110_1的框图。参考图1和图23,非易失性存储设备110_1包括存储单元阵列111、行解码器电路112、页面缓冲器电路113、数据输入/输出电路114、通过-失败检查电路115和控制逻辑电路116_1。
与图3的非易失性存储设备110的控制逻辑电路116相比,图22的非易失性存储设备110_1的控制逻辑电路116_1包括坏区确定器117。坏区确定器117可以在发生写入失败或擦除失败时确定失败类型和坏区。
坏区确定器117可以将坏区的信息发送到外部控制器120。控制器120可以从非易失性存储设备110_1接收坏区的信息。闪存转换层122可以禁止访问坏区。
图23是示出根据本公开另一实施例的非易失性存储设备110_2的框图。参考图1和图23,非易失性存储设备110_2包括存储单元阵列111、行解码器电路112、页面缓冲器电路113、数据输入/输出电路114、通过-失败检查电路115和控制逻辑电路116_2。
与图22的非易失性存储设备110_1的控制逻辑电路116_1相比,图23的非易失性存储设备110_2的控制逻辑电路116_2包括纠错块118。类似于参考图1描述的纠错块121,纠错块118可以对要写入存储单元阵列111的数据执行纠错编码,并且可以对从存储单元阵列111读取的数据执行纠错解码。
当发生写入失败、读取失败或擦除失败时,坏区确定器117可以确定失败类型和坏区。坏区确定器117可以将坏区的信息发送到外部控制器120。控制器120可以从非易失性存储设备110_2接收坏区的信息。闪存转换层122可以禁止访问坏区。
图24是示出坏区确定器123或117的示例的框图。参考图1和图24,坏区确定器123/117包括信息收集模块211和机器学习分类模块212。信息收集模块211可以收集用于执行机器学习分类的信息。
例如,信息收集模块211可以收集访问失败信息AFI和参考存储单元信息RCI。访问失败信息AFI可以包括访问类型、地址、温度、数据类型、历史等。参考存储单元信息RCI可以包括对参考存储单元执行读取操作的结果。
信息收集模块211可以将访问失败信息AFI和参考存储单元信息RCI发送到机器学习分类模块212。机器学习分类模块212可以对访问失败信息AFI和参考存储单元信息RCI执行基于机器学习的分类。基于机器学习的分类可以包括决策树、神经网络、支持向量机等。
作为基于机器学习的分类的结果,机器学习分类模块212可以输出坏区信息BAI。闪光转换层122可以取决于坏区信息BAI设置坏区。
图25示出了机器学习分类模块212的分类器的示例。在一个实施例中,分类器CF1可以是决策树。参考图24和图25,分类器CF1包括根节点RN、第一分支节点BN1至第四分支节点BN4以及第一叶节点LN1至第六叶节点LN6。根节点RN第一分支节点BN1至第四分支节点BN4以及第一叶节点LN1至第六叶节点LN6可以通过分支连接。
在根节点RN和第一分支节点BN1至第四分支节点BN4中的每一个中,可以对访问失败信息AFI和参考存储单元信息RCI中的至少一个执行比较。取决于比较结果选择连接到每个节点的多个分支中的一个。如果下一个分支节点连接到所选择的分支,则还可以在下一个分支节点执行比较。
在其中叶节点连接到所选择的分支的情况下,可以获得叶节点的值作为坏区信息BAI。在一个实施例中,可以在根节点RN处比较访问失败信息AFI中的具有最高选择性的信息和参考存储单元信息RCI。
图26示出了机器学习分类模块212的分类器的另一示例。在一个实施例中,分类器CF2可以是神经网络。参考图24和图26,分类器CF1包括第一输入节点IN1至第四输入节点IN4、第一隐藏节点HN1至第十隐藏节点HN10以及输出节点ON。可以在构造神经网络时预先确定输入节点的数量、隐藏节点的数量和输出节点的数量。
第一输入节点IN1至第四至输入节点IN4形成输入层。第一隐藏节点HN1至第五隐藏节点HN5形成第一隐藏层。第六隐藏节点HN6至第十隐藏节点HN10形成第二隐藏层。输出节点ON形成输出层。可以在构建神经网络时预先确定隐藏层的数量。
可以将访问失败信息AFI和参考存储单元信息RCI输入到第一输入节点IN1至第四输入节点IN4。可以将不同种类的访问失败信息AFI和参考存储单元信息RCI输入到不同的输入节点。将每个输入节点的信息发送到第一隐藏层的第一隐藏节点HN1到第五隐藏节点HN5,其中权重被应用于其信息。
将第一隐藏节点HN1至第五隐藏节点HN5中的每一个的输入发送至第二隐藏节点的第六隐藏节点HN6至第十隐藏节点HN10,其中权重被应用于其输入。将第六至第十隐藏节点HN6至HN10的输入发送到输出节点ON,其中权重被施加到其输入。可以输出输出节点ON的信息作为坏区信息BAI。
图27示出了机器学习分类模块212的分类器的另一示例。在一个实施例中,访问分类器CF3可以是支持向量机。在图27中,横轴“x”代表访问失败信息AFI,纵轴“y”代表参考存储单元信息RCI。图27中分布的样品的形状(正方形SR和圆形CR)指示不同的坏区信息BAI。机器学习分类模块212可以取决于访问失败信息AFI和参考存储单元信息RCI是否包括在关于线A或线B的任何区域中来确定坏区信息BAI。
在上述实施例中,通过使用术语“块”来指代根据本公开的实施例的组件。“块”可以用各种硬件设备实现,例如集成电路、专用IC(ASCI)、现场可编程门阵列(FPGA)和复杂可编程逻辑设备(CPLD)、例如固件和硬件设备驱动的应用程序的软件或硬件设备和软件的组合。而且,“块”可以包括用半导体设备实现的电路或知识产权(IP)。
如本领域中的传统,可以根据执行所描述的一个或多个功能的块来描述和说明实施例。这些块(本文可称为单元或模块等)在物理上由诸如逻辑门、集成电路、微处理器、微控制器、存储器电路、无源电子元件、有源电子元件、光学组件、硬连线电路等的模拟和/或数字电路实现,并且可以可选地由固件和/或软件驱动。例如,电路可以体现在一个或多个半导体芯片中,或者在诸如印刷电路板等的衬底支撑件上。构成块的电路可以由专用硬件、或由处理器(例如,一个或多个编程的微处理器和相关电路)、或由执行块的一些功能的专用硬件和执行其他功能的处理器的组合来实现。在不脱离本公开的范围的情况下,实施例的每个块可以在物理上分成两个或更多个交互的和离散的块。同样地,在不脱离本公开的范围的情况下,可以将实施例的块物理地组合成更复杂的块。
根据本公开的实施例,确定一种类型的访问失败,并且取决于访问失败的类型来不同地设置坏区。因此,提供了一种包括降低了由于设置坏区而导致的存储容量的减小的非易失性存储设备的存储设备、非易失性存储设备以及存储设备的操作方法。
虽然已经参考本公开的示例性实施例描述了本公开,但是对于本领域普通技术人员来说显而易见的是,在不脱离权利要求中所阐述的本公开的精神和范围的情况下,可以对其进行各种改变和修改。
Claims (20)
1.一种存储设备,包括:
包括存储单元和参考存储单元的非易失性存储设备;以及
控制器,其:
访问所述存储单元中的第一存储单元,
当对所述第一存储单元的访问失败时,读取所述参考存储单元中的与所述第一存储单元相关联的第一参考存储单元,
根据所述第一参考存储单元的读取结果,确定从所述存储单元中的坏区,以及
从所述存储单元中识别属于所述坏区的第二存储单元作为坏存储单元。
2.如权利要求1所述的存储设备,其中,所述控制器向所述非易失性存储设备发送:
用于访问所述第一存储单元的第一命令,以及
当所述非易失性存储设备向所述控制器通信访问失败时,用于读取所述第一参考存储单元的第二命令。
3.如权利要求2所述的存储设备,其中,所述控制器:
向所述非易失性存储设备发送用于读取所述参考存储单元中的第二参考存储单元的第三命令,以及
取决于通过运行所述第二命令和所述第三命令获得的结果确定所述坏区。
4.如权利要求1所述的存储设备,其中,所述第一存储单元和所述第一参考存储单元与相同的串选择线和相同的字线相关联。
5.如权利要求1所述的存储设备,其中,所述第一存储单元和所述第一参考存储单元与相同的串选择线和相同的位线相关联。
6.如权利要求1所述的存储设备,其中,当由于单独失败而导致对第一存储单元的访问失败时,所述控制器确定所述坏区不存在。
7.如权利要求1所述的存储设备,其中:
所述存储单元被连接到子字线,并且所述子字线的两个或更多个子字线被分组并被连接到字线中的每一个,以及
当由于连接到特定字线的少数子字线的失败而导致对所述第一存储单元的访问失败时,所述控制器将所述少数子字线识别为所述坏区。
8.如权利要求1所述的存储设备,其中:
所述存储单元被连接到子字线,并且所述子字线的两个或更多个子字线被分组并被连接到字线中的每一个,以及
当由于连接到特定字线的多数子字线的失败而导致对所述第一存储单元的访问失败时,所述控制器将所述特定字线识别为所述坏区。
9.如权利要求1所述的存储设备,其中:
所述非易失性存储设备包括以行和列的形式布置在衬底上的单元串,所述单元串包括所述存储单元,
所述单元串的所述存储单元沿垂直于所述衬底的方向堆叠,以及
当由于特定行的失败而导致对所述第一存储单元的访问失败时,所述控制器将所述单元串中的所述特定行的单元串识别为所述坏区。
10.如权利要求1所述的存储设备,其中:
所述非易失性存储设备包括存储块,所述存储块中的每一个包括所述存储单元,以及
当由于所述存储块的特定存储块的失败而导致对所述第一存储单元的访问失败并且未确定失败的特定原因时,所述控制器识别所述第一存储单元所属的特定存储块为所述坏区。
11.如权利要求1所述的存储设备,其中,对所述第一存储单元的访问是写入操作、读取操作或擦除操作。
12.如权利要求1所述的存储设备,其中,所述参考存储单元包括伪存储单元、选择晶体管、存储对应于特定阈值电压范围的参考数据的参考存储单元或用于存储用户数据的存储单元。
13.如权利要求1所述的存储设备,其中,所述控制器取决于所述第一参考存储单元的阈值电压分布识别所述坏区。
14.如权利要求1所述的存储设备,其中,所述控制器将所述第一参考存储单元的阈值电压分布与所述参考存储单元中的第二参考存储单元的阈值电压分布进行比较以识别所述坏区。
15.如权利要求1所述的存储设备,其中:
所述控制器包括机器学习分类模块,以及
所述机器学习分类模块取决于所述第一存储单元的失败信息和所述第一参考存储单元的读取结果来识别所述坏区。
16.一种非易失性存储设备,包括:
包括存储单元和参考存储单元的存储单元阵列;
通过字线连接到所述存储单元阵列的行解码器电路;
通过位线连接到所述存储单元阵列的页面缓冲器电路;以及
控制逻辑电路,其控制:
所述行解码器电路和所述页面缓冲器电路访问所述存储单元的第一存储单元,以及
当对所述第一存储单元的访问失败时,所述行解码器电路和所述页面缓冲器电路,读取与所述第一存储单元相关联的第一参考存储单元,其中
所述控制逻辑电路取决于所述第一参考存储单元的读取结果识别与所述第一存储单元相关联的坏区。
17.如权利要求16所述的非易失性存储设备,其中,所述控制逻辑电路控制所述页面缓冲器电路以将所述第一参考存储单元的读取结果输出到外部设备。
18.如权利要求16所述的非易失性存储设备,其中,所述控制逻辑电路取决于所述第一参考存储单元的读取结果识别所述坏区,并将所述坏区的信息输出到外部设备。
19.一种由包括控制器和具有存储单元和参考存储单元的非易失性存储设备的存储设备运行的操作方法,所述方法包括:
访问所述存储单元中的第一存储单元;
当对所述第一存储单元的访问失败时,从所述参考存储单元中读取与所述第一存储单元相关联的第一参考存储单元;以及
取决于所述第一参考存储单元的读取结果识别与所述第一存储单元相关联的坏区。
20.如权利要求19所述的方法,其中,当由于单独失败而导致对第一存储单元的访问失败时,确定所述坏区不存在。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180001239A KR102460526B1 (ko) | 2018-01-04 | 2018-01-04 | 불휘발성 메모리 장치를 포함하는 스토리지 장치, 불휘발성 메모리 장치, 그리고 스토리지 장치의 동작 방법 |
KR10-2018-0001239 | 2018-01-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110008053A true CN110008053A (zh) | 2019-07-12 |
CN110008053B CN110008053B (zh) | 2024-08-06 |
Family
ID=67058693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910009213.3A Active CN110008053B (zh) | 2018-01-04 | 2019-01-04 | 存储设备、非易失性存储设备以及存储设备的操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10755795B2 (zh) |
KR (1) | KR102460526B1 (zh) |
CN (1) | CN110008053B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102460526B1 (ko) * | 2018-01-04 | 2022-11-01 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 스토리지 장치, 불휘발성 메모리 장치, 그리고 스토리지 장치의 동작 방법 |
US10593730B1 (en) | 2018-10-10 | 2020-03-17 | Micron Technology, Inc. | Three-dimensional memory array |
US10832790B1 (en) * | 2019-09-26 | 2020-11-10 | Western Digital Technologies, Inc. | Performance of non data word line maintenance in sub block mode |
KR20210080987A (ko) * | 2019-12-23 | 2021-07-01 | 에스케이하이닉스 주식회사 | 메모리 장치 및 메모리 장치의 동작방법 |
CN111710356B (zh) * | 2020-05-29 | 2022-07-05 | 北京大学 | 编码型闪存装置和编码方法 |
KR20230095157A (ko) | 2021-12-21 | 2023-06-29 | 삼성전자주식회사 | 패리티 관리 모듈을 포함하는 스토리지 컨트롤러, 이를 포함하는 스토리지 장치, 및 스토리지 장치의 동작 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120254680A1 (en) * | 2011-03-28 | 2012-10-04 | Eun Chu Oh | Nonvolatile memory device and bad area managing method thereof |
CN104835525A (zh) * | 2014-02-07 | 2015-08-12 | 爱思开海力士有限公司 | 半导体存储器件和包括半导体存储器件的存储系统 |
KR20160032910A (ko) * | 2014-09-17 | 2016-03-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN106531205A (zh) * | 2015-09-10 | 2017-03-22 | 爱思开海力士有限公司 | 存储系统及其操作方法 |
CN106847339A (zh) * | 2015-12-04 | 2017-06-13 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7275190B2 (en) * | 2004-11-08 | 2007-09-25 | Micron Technology, Inc. | Memory block quality identification in a memory device |
KR101464255B1 (ko) | 2008-06-23 | 2014-11-25 | 삼성전자주식회사 | 플래시 메모리 장치 및 그것을 포함한 시스템 |
KR20130078973A (ko) | 2012-01-02 | 2013-07-10 | 삼성전자주식회사 | 메모리 장치의 불량 저장 영역 관리 방법 및 이를 이용한 저장 장치 |
US8902657B2 (en) | 2012-09-07 | 2014-12-02 | Kabushiki Kaisha Toshiba | Semiconductor memory device and controller |
KR102137934B1 (ko) | 2013-10-02 | 2020-07-28 | 삼성전자 주식회사 | 메모리 컨트롤러 구동방법 및 메모리 컨트롤러를 포함하는 메모리 시스템 |
JP2015097136A (ja) | 2013-11-15 | 2015-05-21 | 株式会社東芝 | 不揮発性半導体記憶装置、及び半導体装置 |
JP5731622B2 (ja) | 2013-11-26 | 2015-06-10 | ウィンボンド エレクトロニクス コーポレーション | フラッシュメモリ、バッドブロックの管理方法および管理プログラム |
KR102161738B1 (ko) | 2014-04-07 | 2020-10-05 | 삼성전자주식회사 | 불휘발성 메모리 장치, 메모리 시스템 및 불휘발성 메모리 장치의 동작 방법 |
US9804922B2 (en) | 2014-07-21 | 2017-10-31 | Sandisk Technologies Llc | Partial bad block detection and re-use using EPWR for block based architectures |
JP6391172B2 (ja) | 2015-09-10 | 2018-09-19 | 東芝メモリ株式会社 | メモリシステム |
US9760303B2 (en) | 2015-09-29 | 2017-09-12 | Sandisk Technologies Llc | Partially-bad block operation in 3-D nonvolatile memory |
KR102480015B1 (ko) * | 2015-12-11 | 2022-12-21 | 삼성전자 주식회사 | 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 동작 방법 |
JP6238378B2 (ja) | 2016-02-09 | 2017-11-29 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
KR102469539B1 (ko) * | 2017-12-22 | 2022-11-22 | 삼성전자주식회사 | 비휘발성 메모리 장치, 비휘발성 메모리 장치의 동작 방법 및 저장 장치 |
KR102460526B1 (ko) * | 2018-01-04 | 2022-11-01 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 스토리지 장치, 불휘발성 메모리 장치, 그리고 스토리지 장치의 동작 방법 |
-
2018
- 2018-01-04 KR KR1020180001239A patent/KR102460526B1/ko active IP Right Grant
- 2018-08-21 US US16/107,976 patent/US10755795B2/en active Active
-
2019
- 2019-01-04 CN CN201910009213.3A patent/CN110008053B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120254680A1 (en) * | 2011-03-28 | 2012-10-04 | Eun Chu Oh | Nonvolatile memory device and bad area managing method thereof |
CN104835525A (zh) * | 2014-02-07 | 2015-08-12 | 爱思开海力士有限公司 | 半导体存储器件和包括半导体存储器件的存储系统 |
KR20160032910A (ko) * | 2014-09-17 | 2016-03-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN106531205A (zh) * | 2015-09-10 | 2017-03-22 | 爱思开海力士有限公司 | 存储系统及其操作方法 |
CN106847339A (zh) * | 2015-12-04 | 2017-06-13 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
KR102460526B1 (ko) | 2022-11-01 |
US10755795B2 (en) | 2020-08-25 |
US20190206508A1 (en) | 2019-07-04 |
KR20190083508A (ko) | 2019-07-12 |
CN110008053B (zh) | 2024-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008053A (zh) | 存储设备、非易失性存储设备以及存储设备的操作方法 | |
US10802728B2 (en) | Storage device and operating method of storage device | |
KR102696971B1 (ko) | 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법 | |
KR102656190B1 (ko) | 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법 | |
CN102592668B (zh) | 非易失性存储设备和系统及编程非易失性存储设备的方法 | |
US9009398B2 (en) | Write operations for defect management in nonvolatile memory | |
CN111161777A (zh) | 非易失性存储器装置、对其执行操作的方法以及存储装置 | |
US9659666B2 (en) | Dynamic memory recovery at the sub-block level | |
CN108122588A (zh) | 非易失性存储器设备及包括其的存储设备 | |
CN105810249B (zh) | 用于非易失性存储器装置的操作参数的快速适应性整理 | |
CN107731252A (zh) | 非易失性存储器设备和包括其的存储设备 | |
CN105122215A (zh) | 三维存储器的适应性操作 | |
WO2016069126A1 (en) | Read scrub with adaptive read counter management | |
US11508443B2 (en) | Nonvolatile memory device including a peripheral circuit to verify a program operation | |
CN102403039A (zh) | 半导体存储器件及其操作方法 | |
CN108694989B (zh) | 存储设备及其坏块指派方法 | |
JP2008123330A (ja) | 不揮発性半導体記憶装置 | |
CN107039072A (zh) | 非易失性存储器设备和非易失性存储器设备的操作方法 | |
CN108628757A (zh) | 非易失性存储器设备和包括其的存储系统 | |
US20160322108A1 (en) | Use of Dummy Word Lines for Metadata Storage | |
CN104900270B (zh) | 半导体器件及其操作方法 | |
US20110238889A1 (en) | Semiconductor memory device from which data can be read at low power | |
US20190087106A1 (en) | Memory system and memory control method | |
CN103390426A (zh) | 通过使用回复偏压来减少存储器中擦除干扰的方法与装置 | |
US20230148416A1 (en) | Memory device, method for operating memory device, memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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 |