CN111312320A - 半导体存储装置及其操作方法 - Google Patents
半导体存储装置及其操作方法 Download PDFInfo
- Publication number
- CN111312320A CN111312320A CN201911070077.5A CN201911070077A CN111312320A CN 111312320 A CN111312320 A CN 111312320A CN 201911070077 A CN201911070077 A CN 201911070077A CN 111312320 A CN111312320 A CN 111312320A
- Authority
- CN
- China
- Prior art keywords
- voltage
- bit line
- memory cells
- program
- line voltage
- 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
- 239000004065 semiconductor Substances 0.000 title claims abstract description 102
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000015654 memory Effects 0.000 claims abstract description 613
- 238000012795 verification Methods 0.000 claims description 66
- 230000002093 peripheral effect Effects 0.000 claims description 19
- 238000009826 distribution Methods 0.000 description 32
- 238000010586 diagram Methods 0.000 description 26
- 239000000872 buffer Substances 0.000 description 11
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 9
- 238000011017 operating method Methods 0.000 description 9
- 238000009413 insulation Methods 0.000 description 8
- 239000000758 substrate Substances 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 230000005684 electric field Effects 0.000 description 4
- 230000002401 inhibitory effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000005641 tunneling Effects 0.000 description 4
- 239000003990 capacitor Substances 0.000 description 3
- 101100444020 Caenorhabditis elegans dsl-1 gene Proteins 0.000 description 2
- 101100366714 Caenorhabditis elegans ssl-1 gene Proteins 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101000934888 Homo sapiens Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Proteins 0.000 description 1
- 102100025393 Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Human genes 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 101150013423 dsl-1 gene Proteins 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 235000012773 waffles Nutrition 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- 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
- 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/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed 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/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/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
- 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/24—Bit-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/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/14—Dummy cell management; Sense reference voltage generators
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
半导体存储装置及其操作方法。一种用于操作半导体存储装置的方法包括以下步骤:对代表要针对编程操作进行编程的所有存储单元的被选存储单元进行虚设编程。所述方法还包括以下步骤:将阈值电压小于或等于参考阈值电压的那些被选存储单元确定为第一组存储单元;以及将阈值电压大于所述参考阈值电压的那些被选存储单元确定为第二组存储单元。所述方法还包括以下步骤:通过向所述第一组存储单元施加第一位线电压,向所述第二组存储单元施加与所述第一位线电压不同的第二位线电压并且向所述第一组存储单元和所述第二组存储单元施加相同的编程脉冲,来对所述被选存储单元进行编程。
Description
技术领域
本公开总体上涉及电子装置,并且更具体地,涉及半导体存储装置及其操作方法。
背景技术
存储装置可以形成为其中串平行于半导体基板布置的二维结构,或者可以形成为其中串垂直于半导体基板布置的三维结构。三维存储装置是被设计用于克服二维存储装置的集成度限制的半导体存储装置。三维存储装置可以包括垂直地层叠在半导体基板上的多个存储单元。
发明内容
根据本公开的实施方式,一种用于操作半导体存储装置的方法包括以下步骤:对代表要针对编程操作进行编程的所有存储单元的被选存储单元进行虚设编程。所述方法还包括以下步骤:将阈值电压小于或等于参考阈值电压的那些被选存储单元确定为第一组存储单元;以及将阈值电压大于所述参考阈值电压的那些被选存储单元确定为第二组存储单元。所述方法还包括以下步骤:通过向所述第一组存储单元施加第一位线电压,向所述第二组存储单元施加与所述第一位线电压不同的第二位线电压并且向所述第一组存储单元和所述第二组存储单元施加相同的编程脉冲,来对所述被选存储单元进行编程。
根据本公开的实施方式,一种用于操作半导体存储装置以将被选存储单元编程为第一编程状态至第N编程状态当中的编程状态的方法,其中,N为自然数,该方法包括以下步骤:向与所述被选存储单元联接的字线施加第一编程脉冲;以及通过向所述字线施加与第i编程状态对应的第i验证电压来执行第一编程验证操作,其中,i是等于或大于1且小于或等于N的自然数。所述方法还包括以下步骤:当所述第一编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第i验证电压低的存储单元的位线电压设置为第一位线电压。所述方法还包括以下步骤:当所述第一编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第i验证电压高并且将被编程为所述第i编程状态的存储单元的位线电压设置为编程禁止电压。
根据本公开的实施方式,一种用于操作半导体存储装置以将被选存储单元编程为第一编程状态至第N编程状态当中的编程状态的方法,其中,N为自然数,该方法包括以下步骤:向与所述被选存储单元联接的字线施加第一编程脉冲;以及通过向所述字线施加与第i编程状态对应的第i验证电压来执行第一编程验证操作,其中,i是等于或大于1且小于或等于N的自然数。所述方法还包括以下步骤:确定阈值电压比所述第i验证电压高的被选存储单元的数目是否大于参考值;以及基于确定来设置所述被选存储单元的位线电压。
根据本公开的实施方式,一种半导体存储装置包括:存储单元阵列,该存储单元阵列具有被配置为存储数据的多个存储单元;多条位线,所述多条位线联接到所述多个存储单元;外围电路,该外围电路被配置为对所述多个存储单元当中的所有被选存储单元执行编程操作;以及控制逻辑,该控制逻辑被配置为在执行所述编程操作中控制所述外围电路。所述半导体存储装置在执行所述编程操作中被配置为:对所述被选存储单元进行虚设编程;将阈值电压小于或等于参考阈值电压的那些被选存储单元确定为第一组存储单元;将阈值电压大于所述参考阈值电压的那些被选存储单元确定为第二组存储单元;向所述多条位线中的与所述第一组存储单元联接的位线施加第一位线电压;向所述多条位线中的与所述第二组存储单元联接的位线施加高于所述第一位线电压的第二位线电压;以及向所述第一组存储单元和所述第二组存储单元施加相同的编程脉冲。
根据本公开的实施方式,提供了一种用于操作半导体存储装置的方法,该方法包括以下步骤:对要被编程的被选存储单元进行虚设编程;将经虚设编程的存储单元的阈值电压与预定的参考阈值电压进行比较;将阈值电压小于或等于所述参考阈值电压的存储单元确定为第一组,并且将阈值电压大于所述参考阈值电压的存储单元确定为第二组;以及通过向所述第一组的存储单元施加第一位线电压并且向所述第二组的存储单元施加第二位线电压来对所述被选存储单元进行编程。
所述第二位线电压可以大于所述第一位线电压。
对所述被选存储单元进行编程可以包括:向与所述第一组的存储单元联接的位线施加所述第一位线电压;向与所述第二组的存储单元联接的位线施加所述第二位线电压;向与所述被选存储单元联接的字线施加编程脉冲;以及对所述被选存储单元执行验证操作。
根据本公开的另一实施方式,提供了一种用于操作半导体存储装置的方法,该方法包括多个编程循环,以将被选存储单元编程为第一编程状态至第N编程状态当中的任一种编程状态,其中,所述编程循环包括:向与所述被选存储单元联接的字线施加编程脉冲;向所述字线施加与第i编程状态对应的第i验证电压;基于所述第i编程状态的验证是否通过来设置所述被选存储单元的位线电压,其中,N是大于或等于1的自然数,并且i是大于或等于1且小于或等于N的自然数。
基于第i编程状态的验证是否已通过来设置所述被选存储单元的位线电压可以包括:当所述第i编程状态的验证未通过时,基于所述被选存储单元的阈值电压来设置所述位线电压。
基于所述被选存储单元的阈值电压来设置所述位线电压可以包括:将要被编程为第i编程状态至第N编程状态当中的任一种编程状态的存储单元当中的阈值电压比所述第i验证电压低的存储单元的位线电压设置为第一位线电压;以及将要被编程为第(i+1)编程状态至第N编程状态当中的任一种编程状态的存储单元当中的阈值电压比所述第i验证电压高的存储单元的位线电压设置为第二位线电压。
所述第二位线电压可以大于所述第一位线电压。
基于所述被选存储单元的阈值电压来设置所述位线电压还可以包括:将要被编程为所述第i编程状态的存储单元当中的阈值电压比所述第i验证电压高的存储单元的位线电压设置为编程禁止电压。
所述编程循环还可以包括:在设置所述被选存储单元的位线电压之后,基于所述第i编程状态的验证是否已通过,增大编程脉冲值。
基于所述第i编程状态的验证是否已通过来设置所述被选存储单元的位线电压可以包括:当所述第i编程状态的验证通过时,确定所有编程状态的验证是否已通过;以及当所有编程状态的验证未通过时,将i增大1,并且将所述被选存储单元当中的尚未被完全编程的存储单元的位线电压初始化。
根据本公开的另一实施方式,提供了一种用于操作半导体存储装置的方法,该方法包括多个编程循环,以将被选存储单元编程为第一编程状态至第N编程状态当中的任一种编程状态,其中,所述编程循环包括:向与所述被选存储单元联接的字线施加编程脉冲;向所述字线施加与所述第i编程状态对应的第i验证电压;对阈值电压比所述第i验证电压高的存储单元的数目进行计数;将所计数的结果与预定的参考值进行比较;以及基于比较结果来设置所述被选存储单元的位线电压,其中,N是大于或等于1的自然数,并且i是大于或等于1且小于或等于N的自然数。
基于比较结果来设置所述被选存储单元的位线电压可以包括:当阈值电压比所述第i验证电压高的存储单元的数目小于或等于所述参考值时,基于所述被选存储单元的阈值电压来设置所述位线电压。
基于所述被选存储单元的阈值电压来设置所述位线电压可以包括:将要被编程为第i编程状态至第N编程状态当中的任一种编程状态的存储单元当中的存储单元比所述第i验证电压低的阈值电压的位线电压设置为第一位线电压;以及将要被编程为第(i+1)编程状态至第N编程状态当中的任一种编程状态的存储单元当中的阈值电压比所述第i验证电压高的存储单元的位线电压设置为比所述第一位线电压大的第二位线电压。
基于所述被选存储单元的阈值电压来设置所述位线电压还可以包括:将要被编程为所述第i编程状态的存储单元当中的阈值电压比所述第i验证电压高的存储单元的位线电压设置为编程禁止电压。
基于比较结果来设置所述被选存储单元的位线电压可以包括:当阈值电压比所述第i验证电压高的存储单元的数目大于所述参考值时,将要被编程为所述第i编程状态的存储单元当中的阈值电压比所述第i验证电压低的存储单元以及要被编程为第(i+1)编程状态至第N编程状态当中的任一种编程状态的存储单元的位线电压设置为第一位线电压。
基于比较结果来设置所述被选存储单元的位线电压还可以包括:将要被编程为所述第i编程状态的存储单元当中的阈值电压比所述第i验证电压高的存储单元的位线电压设置为编程禁止电压。
所述编程循环还可以包括:在设置所述被选存储单元的位线电压之后,基于比较结果来确定所述第i编程状态的验证是否已通过。
所述编程循环还可以包括:当所述第i编程状态的验证未通过时,增大编程脉冲值。
根据本公开的另一实施方式,提供了一种半导体存储装置,该半导体存储装置包括:存储单元阵列,该存储单元阵列包括多个存储单元;外围电路,该外围电路被配置为对所述存储单元阵列中所包括的存储单元当中的被选存储单元执行编程操作;以及控制逻辑,该控制逻辑被配置为控制所述外围电路的编程操作,其中,所述半导体存储装置控制所述外围电路对要被编程的被选存储单元进行虚设编程,其中,所述半导体存储装置基于预定的参考阈值电压来将经虚设编程的存储单元分成第一组和第二组,其中,所述半导体存储装置控制所述外围电路通过向所述第一组的存储单元施加第一位线电压并且向所述第二组的存储单元施加第二位线电压来对被选存储单元进行编程。
附图说明
现在,下文中将参照附图描述示例实施方式;然而,这些实施方式可以按不同形式实施,并且不应该被理解为限于本文中阐述的描述。相反,提供这些实施方式,以使本公开清楚并且使本领域的技术人员能够实现本公开。
在附图中,为了例示的清晰起见,可夸大尺寸。应该理解,当元件被称为“在”两个元件“之间”时,它可以是这两个元件之间的唯一元件,或者还可以存在一个或更多个中间元件。在附图中,类似的参考标号始终是指类似的元件。
图1是例示了根据本公开的实施方式的半导体存储装置的框图。
图2是例示图1中示出的存储单元阵列的实施方式的图。
图3是例示了图2中示出的多个存储块当中的一个存储块的电路图。
图4是例示了图2中示出的多个存储块当中的一个存储块的另一实施方式的电路图。
图5是例示了图1中示出的存储单元阵列中所包括的多个存储块当中的一个存储块的实施方式的电路图。
图6是例示了三级单元(TLC)的阈值电压分布的图。
图7是例示了存储单元的根据存储单元之间的编程速度变化的阈值电压分布的图。
图8是例示了具有图7中示出的分布状态的存储单元的编程操作的一部分的曲线图。
图9是例示了根据本公开的实施方式的半导体存储装置的操作方法的流程图。
图10是更详细地例示了图9中示出的步骤的流程图。
图11是更详细地例示了图9中示出的操作的流程图。
图12是例示了经虚设编程的存储单元的阈值电压分布的图。
图13是例示了根据本公开的实施方式的在存储单元被编程的同时存储单元的阈值电压分布的图。
图14是例示了具有图13中示出的分布状态的存储单元的编程操作的一部分的曲线图。
图15是例示了根据本公开的实施方式的半导体存储装置的操作方法的流程图。
图16是更详细地例示了图15中示出的操作的流程图。
图17A和图17B是例示了图16中示出的位线电压设置的图。
图18是例示了根据本公开的实施方式的半导体存储装置的操作方法的流程图。
图19是更详细地例示了图18中示出的操作的流程图。
图20是例示了图19中示出的位线电压设置的图。
图21是例示了包括图1中示出的半导体存储装置的存储装置和用于控制半导体存储装置的存储控制器的示例的框图。
图22是例示了图21中示出的存储装置的应用示例的框图。
图23是例示了包括参照图22描述的存储装置的计算系统的框图。
具体实施方式
在本公开中,在结合附图阅读以下实施方式之后,优点、特征和用于实现它们的方法将变得更加显而易见。然而,本公开可以以不同的形式实现,因此不应该解释为限于本文阐述的实施方式。相反,提供这些实施方式是为了以本公开所属领域的技术人员可以理解本公开的技术构思的程度详细地描述本公开。
在说明书中,当一元件称为“连接”或“联接”到另一元件时,它可以直接连接或联接到另一元件,或者可以通过插置在他们之间的一个或更多个中间元件间接地连接或联接到另一元件。另外,当元件称为“包括”一个组件时,这表示该元件可以进一步包括另一个组件,而不是排除另一个组件,除非另外特别地说明。
下文中,参照附图详细地描述本公开的实施方式。相同的附图标记用于指代与其他附图中所示的元件相同的元件。在以下描述中,可以仅描述理解根据实施方式的操作所必需的内容,并且可以省略对其他部分的描述,以免使实施方式的重要构思模糊不清。
图1是例示了根据本公开的实施方式的半导体存储装置的框图。
参照图1,半导体存储装置100包括存储单元阵列110、地址解码器120、读/写电路130、控制逻辑140和电压发生器150。
存储单元阵列110包括多个存储块BLK1至BLKz。多个存储块BLK1至BLKz通过字线WL联接到地址解码器120。多个存储块BLK1至BLKz通过位线BL1至BLm联接到读/写电路130。多个存储块BLK1至BLKz中的每一个包括多个存储单元。在实施方式中,多个存储单元是非易失性存储单元,并且可以被配置为具有垂直沟道结构的非易失性存储单元。存储单元阵列110可以被配置为具有二维结构的存储单元阵列。在一些实施方式中,存储单元阵列110可以被配置为具有三维结构的存储单元阵列。存储单元阵列110中所包括的多个存储单元中的每一个可以存储至少一比特的数据。在实施方式中,存储单元阵列110中所包括的多个存储单元中的每一个可以是存储一比特的数据的单级单元(SLC)。在另一实施方式中,存储单元阵列110中包括的多个存储单元中的每一个可以是存储两比特的数据的多级单元(MLC)。在又一实施方式中,存储单元阵列110中所包括的多个存储单元中的每一个可以是存储三比特的数据的三级单元(TLC)。在又一实施方式中,存储单元阵列110中所包括的多个存储单元中的每一个可以是存储四比特的数据的四级单元(QLC)。在一些实施方式中,存储单元阵列110可以包括各自存储五比特或更多比特的数据的多个存储单元。
地址解码器120、读/写电路130、控制逻辑140和电压发生器150作为驱动存储单元阵列110的外围电路进行操作。地址解码器120通过字线WL与存储单元阵列110联接。地址解码器120在控制逻辑140的控制下操作。地址解码器120通过设置在半导体存储装置100中的输入/输出缓冲器(未示出)来接收地址。
地址解码器120对接收的地址中的块地址进行解码。地址解码器120根据解码后的块地址选择至少一个存储块。在读取操作期间的读取电压施加操作中,地址解码器120将由电压发生器150生成的读取电压Vread施加到被选存储块当中的被选字线,并将通过电压Vpass施加到其它未选字线。在编程验证操作中,地址解码器120将由电压发生器150生成的验证电压施加到被选存储块当中的被选字线,并将通过电压Vpass施加到其它未选字线。
地址解码器120对接收到的地址中的列地址进行解码。地址解码器12将解码后的列地址发送到读/写电路130。
以页为单元执行半导体存储装置100的读操作和编程操作。在读操作和编程操作的请求中接收到的地址包括块地址、行地址和列地址。地址解码器120根据块地址和行地址而选择一个存储块和一条字线。列地址被地址解码器120解码,以被提供到读/写电路130。
地址解码器120可以包括块解码器、行解码器、列解码器、地址缓冲器等。
读/写电路130包括多个页缓冲器PB1至PBm。读/写电路130可以在存储单元阵列110的读操作中作为“读电路”操作,并且在存储单元阵列110的写操作中作为“写电路”操作。多个页缓冲器PB1至PBm通过位线BL1至BLm连接到存储单元阵列110。为了在读操作和编程验证操作中感测存储单元的阈值电压,多个页缓冲器PB1至PBm感测在向连接到存储单元的位线连续地供应感测电流的同时根据对应存储单元的编程状态流动的电流的改变和量,并且将感测到的电荷作为感测数据锁存。读/写电路130响应于从控制逻辑140输出的页缓冲器控制信号而操作。
在读操作中,读/写电路130通过感测存储单元的数据暂时存储读取的数据,然后将数据DATA输出到半导体存储装置100的输入/输出缓冲器(未示出)。在实施方式中,除了页缓冲器(或页寄存器)以外,读/写电路130还可以包括列选择电路等。
控制逻辑140连接到地址解码器120、读/写电路130和电压发生器150。控制逻辑可以被实现为硬件、软件或其组合。控制逻辑140通过半导体存储装置100的输入/输出缓冲器(未示出)接收命令CMD和控制信号CTRL。控制逻辑140被配置为响应于控制信号CTRL而控制半导体存储装置100的整体操作。另外,控制逻辑140输出用于控制多个页缓冲器PB1至PBm的感测节点预充电电位电平的控制信号。控制逻辑140可以控制读/写电路130执行存储单元阵列110的读操作。
在读操作中,电压发生器150响应于从控制逻辑140输出的控制信号而产生读电压Vread和通过电压Vpass。为了产生具有各种电压电平的多个电压,电压发生器150可以包括用于接收内部电力电压的多个泵电容器,并且通过在控制逻辑140的控制下选择性地启动多个泵电容器来产生多个电压。电压发生器150可以包括电荷泵,并且电荷泵可以包括多个泵电容器。对于不同的实施方式,电压发生器150中所包括的电荷泵的配置可以不同。
地址解码器120、读/写电路130和电压发生器150可以用作对存储单元阵列110执行读操作、写操作和擦除操作的“外围电路”。外围电路在控制逻辑140的控制下对存储单元阵列110执行读操作、写操作和擦除操作。
对于根据本公开的实施方式的半导体存储装置100及其操作方法,控制逻辑140控制外围电路对存储单元阵列110的存储单元当中的被选择为编程目标的存储单元进行虚设编程。控制逻辑140通过将经虚设编程的存储单元的阈值电压与参考阈值电压进行比较来将经虚设编程的存储单元分成第一组和第二组。随后,控制逻辑140控制外围电路通过向第一组存储单元和第二组存储单元施加不同的位线电压来执行编程操作。
执行编程操作,以相对地降低被选存储单元当中的快速单元的编程速度。因此,存储单元之间的阈值电压变化减小,使得能够减少执行编程验证操作的次数。因此,半导体存储装置的编程速度得以提高。下面,参照图6至图14描述根据上述实施方式的通过降低被选存储单元当中的快速单元的编程速度来减少执行编程验证操作的次数的配置。
此外,根据本公开的另一实施方式的半导体存储装置及其操作方法,控制逻辑140控制外围电路执行多个编程循环,以便将存储单元阵列110中所包括的被选存储单元编程为第一编程状态至第N编程状态当中的任一种编程状态。在编程循环中,控制逻辑140控制外围电路向与被选存储单元联接的字线施加编程脉冲,控制外围电路向字线施加与第i编程状态对应的第i验证电压,并且基于第i编程状态的验证是否已通过来设置被选存储单元的位线电压。这里,N可以是大于或等于1的自然数,并且i可以是大于或等于1且小于或等于N的自然数。下面,参照图15至图17B描述根据上述实施方式的通过降低被选存储单元当中的快速单元的编程速度来减少执行编程验证操作的次数的配置。
此外,根据本公开的另一实施方式的半导体存储装置及其操作方法,控制逻辑140控制外围电路执行多个编程循环,以便将存储单元阵列110中所包括的被选存储单元编程为第一编程状态至第N编程状态当中的任一种编程状态。在编程循环中,控制逻辑140控制外围电路向与被选存储单元联接的字线施加编程脉冲,控制外围电路向字线施加与第i编程状态对应的第i验证电压,对具有高于第i验证电压的阈值电压的存储单元的数目进行计数,然后将已计数的数目与预定参考值进行比较,并且基于比较结果来设置被选存储单元的位线电压。这里,N可以是大于或等于1的自然数,并且i可以是大于或等于1且小于或等于N的自然数。下面,参照图18至图20描述根据上述实施方式的通过降低被选存储单元当中的快速单元的编程速度来减少执行编程验证操作的次数的配置。
图2是例示图1中示出的存储单元阵列的实施方式的图。
参照图2,存储单元阵列110包括多个存储块BLK1至BLKz。每个存储块具有三维结构。每个存储块包括层叠在基板上方的多个存储单元。多个存储单元沿着+X、+Y和+Z方向布置。参照图3和图4更详细地描述每个存储块的结构。
图3是例示了图2中示出的存储块BLK1至BLKz当中的存储块BLKa的电路图。
参照图3,存储块BLKa包括多个单元串CS11至CS1m和CS21至CS2m。在实施方式中,多个单元串CS11至CS1m和CS21至CS2m中的每一个可以形成为“U”形。在存储块BLKa中,m个单元串布置在行方向(即,+X方向)上。在图3中,例示了两个单元串布置在列方向(即,+Y方向)上。然而,这是为了便于描述。在不同的实施方式中,可以在列方向上布置不同数目的单元串。例如,可以在列方向上布置三个单元串。
多个单元串CS11至CS1m和CS21至CS2m中的每一个包括至少一个源极选择晶体管SST、第一存储单元MC1至第n存储单元MCn、管式晶体管PT和至少一个漏极选择晶体管DST。
选择晶体管SST和DST以及存储单元MC1至MCn可以具有彼此相似的结构。在实施方式中,选择晶体管SST和DST和存储单元MC1至MCn中的每一个可以包括沟道层、隧穿绝缘层、电荷储存层和阻挡绝缘层。在实施方式中,可以在每个单元串中设置用于提供沟道层的柱。在实施方式中,可以在每个单元串中设置用于提供沟道层、隧穿绝缘层、电荷储存层和阻挡绝缘层中的至少一个的柱。
每个单元串的源极选择晶体管SST联接在公共源极线SL和存储单元MC1至MCp之间。
在实施方式中,在同一行上布置的单元串的源极选择晶体管联接到在行方向上延伸的源极选择线,并且在不同的行上布置的单元串的源极选择晶体管联接到不同的源极选择线。在图3中,第一行上的单元串CS11至CS1m的源极选择晶体管联接到第一源极选择线SSL1。第二行上的单元串CS21至CS2m的源极选择晶体管联接到第二源极选择线SSL2。
在另一实施方式中,单元串CS11至CS1m和CS21至CS2m的源极选择晶体管可以共同联接到一条源极选择线。
每个单元串中的第一存储单元MC1至第n存储单元MCn联接在源极选择晶体管SST和漏极选择晶体管DST之间。
第一存储单元MC1至第n存储单元MCn可以被分成第一存储单元MC1至第p存储单元MCp以及第(p+1)存储单元MCp+1至第n存储单元MCn。第一存储单元MC1至第p存储单元MCp在+Z方向的相反方向上依次布置,并且串联联接在源极选择晶体管SST和管式晶体管PT之间。第(p+1)存储单元MCp+1至第n存储单元MCn在+Z方向上依次布置,并且串联连接在管式晶体管PT和漏极选择晶体管DST之间。第一存储单元MC1至第p存储单元MCp以及第(p+1)存储单元MCp+1至第n存储单元MCn通过管式晶体管PT联接。每个单元串的第一存储单元MC1至第n存储单元MCn的栅极分别联接到第一字线WL1至第n字线WLn。
每个单元串的管式晶体管PT的栅极联接到管线PL。
每个单元串的漏极选择晶体管DST联接在对应位线和存储单元MCp+1至MCn之间。在行方向上布置的单元串联接到在行方向上延伸的漏极选择线。第一行上的单元串CS11至CS1m的漏极选择晶体管联接到第一漏极选择线DSL1。第二行上的单元串CS21至CS2m的漏极选择晶体管联接到第二漏极选择线DSL2。
在列方向上布置的单元串联接到在列方向上延伸的位线。在图3中,第一列中的单元串CS11和CS21联接到第一位线BL1。第m列中的单元串CS1m和CS2m联接到第m位线BLm。
在行方向上布置的单元串中的联接到同一字线的存储单元构成一页。例如,第一行上的单元串CS11至CS1m中的联接到第一字线WL1的存储单元构成一页。第二行上的单元串CS21至CS2m中的联接到第一字线WL1的存储单元构成另一页。当选择了漏极选择线DSL1和DSL2中的任一条时,可以选择在一个行方向上布置的单元串。当选择了字线WL1至WLn中的任一条时,可以在被选单元串中选择一页。
在另一实施方式中,可以设置偶数位线和奇数位线来代替第一位线BL1至第m位线BLm。另外,在行方向上布置的单元串CS11至CS1m或CS21至CS2m当中的偶数编号的单元串可以分别联接到偶数位线,并且在行方向上布置的单元串CS11至CS1m或CS21至CS2m当中的奇数编号的单元串可以分别联接到奇数位线。
在实施方式中,第一存储单元MC1至第n存储单元MCn中的至少一个可以用作虚设存储单元。例如,可以设置至少一个虚设存储单元,以减小源极选择晶体管SST和存储单元MC1至MCp之间的电场。另选地,可以设置至少一个虚设存储单元,以减小漏极选择晶体管DST和存储单元MCp+1至MCn之间的电场。当虚设存储单元的数目增加时,存储块BLKa的操作可靠性得以提高。另一方面,存储块BLKa的大小增加。当虚设存储单元的数目减少时,存储块BLKa的大小减小。另一方面,存储块BLKa的操作可靠性会劣化。
为了高效地控制至少一个虚设存储单元,虚设存储单元中的每一个可以具有阈值电压。在存储块BLK1进行擦除操作之前或之后,可以对虚设存储单元中的全部或一些执行编程操作。当在执行编程操作之后执行擦除操作时,向与相应虚设存储单元联接的虚设字线施加虚设存储单元控制电压的阈值电压,使得虚设存储单元中的每一个可以具有阈值电压。
图4是例示了按照另一实施方式的图2中示出的存储块BLK1至BLKz当中的存储块BLKb的电路图。
参照图4,存储块BLKb包括多个单元串CS11'至CS1m'和CS21'至CS2m'。多个单元串CS11'至CS1m'和CS21'至CS2m'中的每一个沿着+Z方向延伸。多个单元串CS11'至CS1m'和CS21'至CS2m'中的每一个包括层叠在存储块BLKb下方的基板(未示出)上的至少一个源极选择晶体管SST、第一存储单元MC1至第n存储单元MCn以及至少一个漏极选择晶体管DST。
每个单元串中的源极选择晶体管SST联接在公共源极线SL和存储单元MC1至MCn之间。同一行上布置的单元串的源极选择晶体管联接到同一源极选择线。第一行上布置的单元串CS11'至CS1m'的源极选择晶体管联接到第一源极选择线SSL1。第二行上布置的单元串CS21'至CS2m'的源极选择晶体管联接到第二源极选择线SSL2。在另一实施方式中,单元串CS11'至CS1m'和CS21'至CS2m'的源极选择晶体管可以共同联接到一条源极选择线。
每个单元串中的第一存储单元MC1至第n存储单元MCn串联联接在源极选择晶体管SST和漏极选择晶体管DST之间。第一存储单元MC1至第n存储单元MCn的栅极分别联接到第一字线WL1至第n字线WLn。
每个单元串的漏极选择晶体管DST联接在对应位线和存储单元MC1至MCn之间。在行方向上布置的单元串的漏极选择晶体管联接到在行方向上延伸的漏极选择线。第一行上的单元串CS11'至CS1m'的漏极选择晶体管联接到第一漏极选择线DSL1。第二行上的单元串CS21'至CS2m’的漏极选择晶体管联接到第二漏极选择线DSL2。
因此,图4的存储块BLKb具有与图3的存储块BLKa的电路匹配的电路,不同之处在于,从存储块BLKb的单元串中排除了存储块BLKa的管式晶体管PT。
在另一实施方式中,可以设置偶数位线和奇数位线来代替第一位线BL1至第m位线BLm。另外,在行方向上布置的单元串CS11'至CS1m'或CS21'至CS2m'当中的偶数编号的单元串可以分别联接到偶数位线,并且在行方向上布置的单元串CS11'至CS1m'或CS21'至CS2m'当中的奇数编号的单元串可以分别联接到奇数位线。
在实施方式中,第一存储单元MC1至第n存储单元MCn中的至少一个可以用作虚设存储单元。例如,可以设置至少一个虚设存储单元,以减小源极选择晶体管SST和存储单元MC1至MCn之间的电场。另选地,可以设置至少一个虚设存储单元,以减小漏极选择晶体管DST和存储单元MCp+1至MCn之间的电场。当虚设存储单元的数目增加时,存储块BLKb的操作可靠性提高。另一方面,存储块BLKb的大小增加。当虚设存储单元的数目减少时,存储块BLKb的大小减小。另一方面,存储块BLKb的操作可靠性会劣化。
为了高效地控制至少一个虚设存储单元,虚设存储单元中的每一个可以具有阈值电压。在存储块BLKb进行擦除操作之前或之后,可以对虚设存储单元中的全部或一些执行编程操作。当在执行编程操作之后执行擦除操作时,向与相应虚设存储单元联接的虚设字线施加虚设存储单元控制电压的阈值电压,使得虚设存储单元中的每一个可以具有所需的阈值电压。
图5是例示了按照另一实施方式的图1中示出的存储单元阵列110中所包括的多个存储块BLK1至BLKz当中的存储块BLKc的电路图。
参照图5,存储块BLKc包括多个串CS1至CSm。多个串CS1至CSm可以分别联接到多条位线BL1至BLm。多个串CS1至CSm中的每一个包括至少一个源极选择晶体管SST、第一存储单元MC1至第n存储单元MCn以及至少一个漏选择晶体管DST。
选择晶体管SST和DST以及存储单元MC1至MCn中的每一个可以具有相似的结构。在实施方式中,选择晶体管SST和DST以及存储单元MC1至MCn中的每一个可以包括沟道层、隧穿绝缘层、电荷储存层和阻挡绝缘层。在实施方式中,可以在每个单元串中设置用于提供沟道层的柱。在实施方式中,可以在每个单元串中设置用于提供沟道层、隧穿绝缘层、电荷储存层和阻挡绝缘层中的至少一个的柱。
每个单元串中的源极选择晶体管SST联接在公共源极线SL和存储单元MC1至MCn之间。
每个单元串中的第一存储单元MC1至第n存储单元MCn联接在源极选择晶体管SST和漏极选择晶体管DST之间。
每个单元串的漏极选择晶体管DST联接在对应位线和存储单元MC1至MCn之间。
与同一字线联接的存储单元构成一页。当选择了漏极选择线DSL时,可以选择单元串CS1至CSm。当选择了字线WL1至WLn中的任一条时,可以选择被选单元串当中的一页。
在另一实施方式中,可以设置偶数位线和奇数位线来代替第一位线BL1至第m位线BLm。所布置的单元串CS1至CSm当中的偶数编号的单元串可以分别联接到偶数位线,并且单元串CS1至CSm当中的奇数编号的单元串可以分别联接到奇数位线。
如图2至图4中所示,存储单元阵列110的存储单元可以形成为三维结构。如图5中所示,存储单元阵列110的存储单元也可以形成为二维结构。
图6是例示了三级单元(TLC)的阈值电压分布的图。
参照图6,在存储3比特的数据的TLC的情况下,存储单元中的每一个的阈值电压被包括在八种分配状态中的任一种中。即,根据TLC中存储的数据,对应存储单元中的每一个的阈值电压被包括在擦除状态E或第一编程状态PV1至第七编程状态PV7中的任一种中。
为了将存储单元编程为图6中示出的阈值电压状态,可以使用第一验证电压VR1至第七验证电压VR7。在要被编程为第一编程状态PV1的存储单元的情况下,在编程操作期间基于第一验证电压VR1执行验证操作。即,作为验证结果,向与要被编程为第一编程状态PV1的存储单元当中的阈值电压比第一验证电压VR1大的存储单元联接的位线施加编程禁止电压,使得即使当施加后续编程脉冲时,也不控制阈值电压增大。此外,向与要被编程为第一编程状态PV1的存储单元当中的阈值电压比第一验证电压VR1小的存储单元联接的位线施加编程允许电压,使得当施加后续编程脉冲时,阈值电压增大。以这种方式,分别通过第二验证电压VR2至第七验证电压VR7对要被编程为第二编程状态PV2至第七编程状态PV7的存储单元执行验证操作。
图7是例示了存储单元的根据存储单元之间的编程速度变化的阈值电压分布的图。
参照图7,例示了在执行编程操作的同时存储单元的阈值电压状态。即,可以向在编程操作的早期阶段处于擦除状态E的存储单元当中的要被编程为第一编程状态PV1至第七编程状态PV7中的任一种的存储单元施加编程脉冲。因此,处于擦除状态E的对应存储单元中的每一个的阈值电压增加,以具有中间状态VTD1的分布。中间状态VTD1表示在所有要被编程的存储单元被完全编程之前的特定时间的阈值电压分布。
将被执行编程操作的存储单元可以根据它们的特性具有不同的编程速度。因此,尽管向与要被编程的存储单元联接的字线施加具有相同幅度的编程脉冲,但是当存储单元是快速单元时,存储单元中的每一个的阈值电压增加更多,而当存储单元是慢速单元时,存储单元中的每一个的阈值电压增加更少。当如上所述选择的存储单元之间的编程速度变化大时,如图7中所示,广泛地形成了中间状态VTD1的分布宽度。
在图7中示出的示例中,可以看出,中间状态VTD1的分布被广泛地形成为包括第一验证电压VR1至第五验证电压VR5。在正好在施加编程脉冲之后执行的验证操作中,第一验证电压VR1至第五验证电压VR5全部都将被施加。即,通过第一验证电压VR1来确定具有中间状态VTD1的阈值电压分布的存储单元当中的要被编程为第一编程状态PV1的存储单元是否已完成编程。另外,通过第二验证电压VR2来确定要被编程为第二编程状态PV2的存储单元是否已完成编程。以这种方式,通过第五验证电压VR5来确定要被编程为第五编程状态PV5的存储单元是否已完成编程。当省略了使用第五验证电压VR5的验证操作时,要被编程为第五编程状态PV5的存储单元可能被过度编程。
然而,因为中间状态VTD1的分布不包括第六验证电压VR6和第七验证电压VR7,所以可以省略使用第六验证电压VR6和第七验证电压VR7的验证操作。
图8是例示了具有图7中示出的分布状态的存储单元的编程操作的一部分的曲线图。
参照图8,例示了使用增量步进脉冲编程(ISPP)方法进行的编程操作的一部分。即,编程操作包括多个编程循环,并且每个编程循环都包括通过施加编程脉冲VP来增大存储单元的阈值电压的步骤以及通过施加验证电压VR1至VR5来执行存储单元的编程验证的步骤。在图8中例示了三个编程循环。
一起参照图7和图8,当存储单元之间的编程速度变化大时,如图7中所示,将针对每个编程循环全部执行使用第一验证电压VR1至第五验证电压VR5的验证操作。当如上所述地执行使用五个验证电压VR1至VR5的验证操作时,验证花费的时间长。然而,当省略使用部分验证电压(例如,第五验证电压VR5)的验证操作以便减少验证时间时,要被编程为第五编程状态PV5的存储单元中的一些会被过度编程。
对于根据本公开的实施方式的半导体存储装置及其操作方法,对要被编程的存储单元进行虚设编程,并且基于参考阈值电压来将经虚设编程的存储单元划分成第一组和第二组。随后,通过向第一组存储单元施加第一位线电压并且向第二组存储单元施加第二位线电压来对被选存储单元进行编程。因此,快速单元的编程速度相对降低,因此,正被编程的存储单元之间的阈值电压变化减小。因此,能够减少在编程操作中执行验证操作的次数,因此,能够提高半导体存储装置的编程速度。
图9是例示了根据本公开的实施方式的半导体存储装置100的操作方法的流程图。
参照图9,按照根据本公开的实施方式的半导体存储装置100的操作方法,对被选存储单元进行虚设编程(S110),基于参考阈值电压来将经虚设编程的存储单元分成第一组和第二组(S130),并且通过分别向第一组存储单元和第二组存储单元施加第一位线电压和第二位线电压来对被选存储单元进行编程(S150)。
在步骤S110中,对要被编程的物理页中所包括的存储单元进行虚设编程。一起参照图6和图9,在步骤S110中,对在编程操作的早期阶段处于擦除状态的所有存储单元当中的要被编程为第一编程状态PV1至第七编程状态PV7的存储单元进行虚设编程(虚设编程操作)。因此,向与在编程操作的早期阶段处于擦除状态E的所有存储单元当中的将保持擦除状态E的存储单元联接的位线施加编程禁止电压,向要被编程为第一编程状态PV1至第七编程状态PV7的存储单元施加编程允许电压,并且向与被选存储单元联接的字线施加编程脉冲。因此,要被编程为第一编程状态PV1至第七编程状态PV7的存储单元的阈值电压增大。
在步骤S110的虚设编程操作中,可以至少向与被选存储单元联接的字线施加一次编程脉冲。在不同的实施方式中,在步骤S110的虚设编程操作中施加编程脉冲的次数可以不同。
在步骤S130中,基于预定的参考阈值电压,将阈值电压根据步骤S110的虚设编程操作而增大的存储单元分成第一组和第二组。第一组和第二组可以被用作用于划分存储单元的相对编程速度的组。更具体地,在向与经虚设编程的存储单元联接的字线施加参考阈值电压的状态下,感测经虚设编程的存储单元的阈值电压。作为感测结果,当存储单元是开单元(on-cell)时,可以确定存储单元属于第一组,并且当存储单元是关单元(off-cell)时,可以确定存储单元属于第二组。被确定为开单元的第一组存储单元可以是具有相对慢的编程速度的慢速单元。被确定为关单元的第二组存储单元可以是具有相对快的编程速度的快速单元。下面,参照图12描述作为开单元的第一组存储单元和作为关单元的第二组存储单元。
在步骤S150中,通过向与第一组存储单元联接的位线施加第一位线电压并且向与第二组存储单元联接的位线施加第二位线电压来对被选存储单元进行编程。在步骤S150中,可以重复多个编程循环,直到完成编程操作为止。此外,向与第一组存储单元和第二组存储单元当中的已被完全编程为目标编程状态的存储单元联接的位线施加编程禁止电压,使得能防止对应存储单元的阈值电压增大。
第一位线电压可以是编程允许电压。例如,第一位线电压可以是接地电压(0V)。此外,第二位线电压可以是比第一位线电压高的电压。例如,第二位线电压可以是大于0V并且小于编程脉冲的电压电平的值。
因为第二位线电压大于第一位线电压,所以在后续编程操作中被施加第二位线电压的存储单元的编程速度降低。被施加第二位线电压的第二组存储单元是阈值电压高于参考阈值电压的快速单元。当如上所述向快速单元施加相对较高的位线电压时,快速单元的编程速度降低。因此,要被编程的存储单元之间的编程速度变化减小,并且针对每个编程循环执行验证操作的次数较少。因此,可以提高整个编程速度。
图10是更详细地例示了图9中示出的步骤S130的流程图。
参照图10,将经虚设编程的存储单元分成第一组和第二组的步骤S130包括将经虚设编程的存储单元的阈值电压与参考阈值电压进行比较的步骤S210以及确定存储单元的阈值电压是否大于参考阈值电压的步骤S230。作为步骤S230的确定结果,当存储单元的阈值电压不大于参考阈值电压时,确定对应的存储单元属于第一组(S250)。作为步骤S230的确定结果,当存储单元的阈值电压大于参考阈值电压时,确定对应的存储单元属于第二组(S270)。可以对经虚设编程的存储单元中的每一个执行图10中示出的步骤S210、S230、S250和S270。当执行图10中示出的步骤S210、S230、S250和S270时,经虚设编程的存储单元可以被分类为代表慢速单元的第一组和代表快速单元的第二组中的任一个。
具体地,在步骤S210中,在向与经虚设编程的存储单元联接的字线施加参考阈值电压的状态下,感测经虚设编程的存储单元的阈值电压。作为感测结果,当存储单元是开单元时,可以确定存储单元属于第一组,并且当存储单元是关单元时,可以确定存储单元属于第二组。可以确定参考阈值电压是合适的值。例如,可以确定参考阈值电压是通过实验确定的值。参照图12描述参考阈值电压的确定。
图11是更详细地例示了图9中示出的步骤S150的流程图。
参照图11,通过分别向第一组存储单元和第二组存储单元施加第一位线电压和第二位线电压来对被选存储单元进行编程的步骤S150包括向与第一组存储单元联接的位线施加第一位线电压的步骤S310、向与第二组存储单元联接的位线施加第二位线电压的步骤S330、向与第一组存储单元和第二组存储单元联接的字线施加编程脉冲的步骤S350以及对第一组存储单元和第二组存储单元执行验证操作的步骤S370。在执行步骤S370的验证操作之后,确定是否已通过验证(S380)。当验证通过时,编程操作(S150)结束。当验证未通过时,增大编程脉冲值(S390),并且通过行进至步骤S310来执行后续的编程循环。
在步骤S310中,向与被确定是具有相对慢的编程速度的慢速单元的第一组存储单元当中的尚未被完全编程为目标编程状态的存储单元联接的位线施加第一位线电压。在实施方式中,第一位线电压是编程允许电压,并且可以是接地电压(0V)。
在步骤S320中,向与被确定是具有相对快的编程速度的快速单元的第二组存储单元当中的尚未被完全编程为目标编程状态的存储单元联接的位线施加第二位线电压。在实施方式中,第二位线电压的电压电平可以比第一位线电压的电压电平大并且比编程禁止电压的电压电平小。
尽管在图11中例示了在步骤S310之后执行步骤S330的情况,但是本公开不限于此。即,可以在步骤S330之后执行步骤S310,或者可以同时执行步骤S310和S330。
此外,在步骤S310和S330中,可以看出,向与第一组存储单元和第二组存储单元当中的已被完全编程为目标编程状态的存储单元联接的位线施加编程禁止电压。
在向与第一组存储单元联接的位线施加第一位线电压并且向与第二组存储单元联接的位线施加第二位线电压的状态下,向与第一组存储单元和第二组存储单元共同联接的字线施加编程脉冲(S350)。因此,第一组存储单元和第二组存储单元的阈值电压增大。然而,比第一位线电压高的第二位线电压被施加到与作为快速单元的第二组存储单元联接的位线,因此,第二组存储单元的编程速度降低。因此,第一组存储单元和第二组存储单元之间的编程速度变化整体降低,因此中间状态的阈值电压分布存在于较窄的范围内。因此,针对每个编程循环在步骤S370中执行验证操作的次数可以减少,因此执行单个编程循环所需的时间减少。因此,整个编程速度提高。
在步骤S370中,对第一组存储单元和第二组存储单元执行验证操作。按照根据本公开的实施方式的半导体存储装置及其操作方法,通过将存储单元分成第一组和第二组来设置不同的位线电压,因此能够在编程操作期间使存储单元的阈值电压分布变窄。因此,在步骤S370中要执行的验证操作的次数能够减少。下面参照图12和图14来对此进行描述。
图12是例示了经虚设编程的存储单元的阈值电压分布的图。
参照图12,例示了作为通过对要被编程的存储单元当中的除了将保持擦除状态E的存储单元之外的要被编程为第一编程状态PV1至第七编程状态PV7的存储单元执行虚设编程操作得到的结果而形成的阈值电压分布VTD_pre。
如上所述,在作为在图9中示出的步骤S110对要被编程为第一编程状态PV1至第七编程状态PV7的存储单元进行虚设编程得到的结果而形成的阈值电压分布VTD_pre中,可以确定阈值电压比参考阈值电压V_REF低的存储单元属于第一组Group1,并且可以确定阈值电压比参考阈值电压V_REF高的存储单元属于第二组Group2。
可以通过实验确定参考阈值电压V_REF。例如,可以预测通过在擦除状态下对存储单元多次进行虚设编程而大致形成的阈值电压分布VTD_pre。基于所预测的阈值电压分布VTD_pre,可以确定参考阈值电压V_REF,使得属于第一组和第二组的存储单元的数目彼此大致相等。
图13是例示了根据本公开的实施方式的在存储单元被编程的同时存储单元的阈值电压分布的图。
参照图13,当通过向第一组存储单元和第二组存储单元施加不同的位线电压来执行编程操作时,要被编程的存储单元的阈值电压分布形成中间状态VTD2。
对于根据本公开的实施方式的半导体存储装置及其操作方法,在执行虚设编程操作之后,向被分成慢速单元和快速单元的存储单元施加不同的位线电压。即,向与作为慢速单元的第一组Group1的存储单元联接的位线施加第一位线电压,并且向与作为快速单元的第二组Group2的存储单元联接的位线施加比第一位线电压大的第二位线电压。因此,快速单元的编程速度降低,并且存储单元之间的阈值电压变化整体减小。因此,可以看出,中间状态VTD2被相对窄地形成为包括第一验证电压VR1至第三验证电压VR3。一起参照图7和图13,当通过向所有的快速单元和慢速单元都施加相同位线电压来执行编程操作时,阈值电压分布被形成为具有图7中示出的中间状态VTD1。当通过施加不同的位线电压来执行编程操作时,阈值电压分布被形成为具有图13中示出的中间状态VTD2。因为与中间状态VTD1相比,中间状态VTD2的分布被相对窄地形成为包括图13中的第一验证电压VR1至第三验证电压VR3,所以仅在恰好在施加编程脉冲之后执行的验证操作中施加第一验证电压VR1至第三验证电压VR3。即,尽管对于图13中示出的中间状态VTD2,省略了使用第四验证电压VR4至第七验证电压VR7的验证操作,但是存储单元将被过度编程的概率低。因此,在编程操作期间,快速单元的编程速度相对降低,使得正被编程的存储单元之间的阈值电压变化减小。因此,能够减少在编程操作中执行验证操作的次数,因此,能够提高半导体存储装置的编程速度。
图14是例示了具有图13中示出的分布状态的存储单元的编程操作的一部分的曲线图。
参照图14,例示了使用ISPP方法的编程操作的一部分。即,编程操作包括多个编程循环,并且每个编程循环都包括通过施加编程脉冲VP来增大存储单元的阈值电压的步骤以及通过施加验证电压VR1至VR3来执行存储单元的编程验证的步骤。在图14中例示了三个编程循环。
一起参照图13和图14,因为通过如图13中所示降低快速单元的编程速度来窄地形成要被编程的存储单元的阈值电压分布的中间状态VTD2,所以针对每个编程循环仅执行使用第一验证电压至第三验证电压的验证操作。一起参照图8和图14,在图8中,将针对每个编程循环全部执行使用第一验证电压VR1至第五验证电压VR5的验证操作。另一方面,在图14中,仅执行使用第一验证电压VR1至第三验证电压VR3的验证操作,因此能够减少执行验证操作的次数。因此,能够提高半导体存储装置的编程速度。
图15是例示了根据本公开的实施方式的半导体存储装置的操作方法的流程图。在图15中,例示了半导体存储装置的操作方法,该半导体存储装置的操作方法包括多个编程循环,以将被选存储单元编程为第一编程状态至第N编程状态当中的任一种编程状态。这里,N可以是根据要被编程的存储单元所存储的比特的数目而确定的值。在一示例中,在如图6中所示的存储3比特的数据的TLC的情况下,N可以为7。在另一示例中,在存储2比特的数据的MLC的情况下,N可以为1。在又一示例中,在存储4比特的数据的QLC的情况下,N可以为15。如上所述,当存储单元中所存储的比特的数目为“b”时,N可以具有“2b-1”的值。
参照图15,通过向被选字线施加编程脉冲(S410)并且通过向被选字线施加与第i编程状态PVi对应的第i验证电压VRi(S420)来对被选存储单元执行验证操作。这里,i可以为大于或等于1的自然数。另外,i可以是根据存储在存储单元中的比特的数目而确定的值。例如,一起参照图6和图15,在存储3比特的数据的TLC的情况下,i可以是大于或等于1且小于或等于7的自然数。
在步骤S430中,确定对第i编程状态PVi的验证是否已通过。即,当被选存储单元当中的要被编程为第i编程状态PVi的存储单元的所有阈值电压都超过第i验证电压VRi时,第i编程状态PVi的验证通过。
当第i编程状态PVi的验证未通过时,基于验证结果来设置被选存储单元的位线电压(S450)。在步骤S450中,基于被选存储单元的阈值电压来设置位线电压。更具体地,可以通过根据被选存储单元的阈值电压将被选存储单元分成快速单元和慢速单元来设置不同的位线电压。即,可以确定阈值电压比第i验证电压VRi高的存储单元中的至少一些是快速单元。被确定是快速单元的存储单元的位线电压可以与被确定是慢速单元的存储单元的位线电压不同地确定。下面,参照图16、图17A和图17B描述步骤S450的更详细的配置。
在步骤S460中,ISPP的编程脉冲值增加。通过行进至步骤S410来执行后续的编程循环。
上述步骤S410、S420、S430、S450和S460可以构成针对ISPP方法的一个编程循环。可以重复地执行步骤S410、S420、S430、S450和S460,直到第i编程状态PVi的验证操作通过为止。
作为步骤S430的确定结果,当第i编程状态PVi的验证操作通过时,确定所有编程状态的验证是否已通过(S440)。当在步骤S430中确定其验证已通过的编程状态是图6中示出的第一编程状态PV1至第六编程状态PV6中的任一种时,第七编程状态PV7的验证没有通过,因此,操作方法行进至步骤S470。
在步骤S470中,将作为表示确定其验证是否已通过的目标的索引的i增加1,并且尚未被完全编程的存储单元的位线电压被初始化。已被完全编程的存储单元的位线电压可以被保持为编程禁止电压。通过在前一编程中的步骤S450将尚未被完全编程的存储单元分成快速单元和慢速单元,使得不同的位线电压被施加到对应的存储单元。在步骤S470中,将快单元和慢单元的划分初始化,并且通过将存储单元重新划分成快速单元和慢速单元来施加位线电压。下面,参照图16、图17A和图17B来描述该过程。
随后,在步骤S480中,增大ISPP的编程脉冲值。通过行进至步骤S410,执行后续的编程循环。
根据参照图9至图14描述的实施方式,对要被编程的被选存储单元进行虚设编程,并且基于预定的参考电压来将经虚设编程的存储单元分成第一组和第二组。另一方面,根据随后描述的在图15、图16、图17A和图17B中示出的实施方式,基于与正被验证的编程状态PVi对应的验证电压VRi,将存储单元分成第一组和第二组。因此,变成将存储单元分为第一组和第二组的基准的验证电压VRi根据执行编程操作的状态而变化,并且可以通过更灵活地将快速单元与慢速单元区分来施加位线电压。
图16是更详细地例示了图15中示出的步骤S450的流程图。图17A和图17B是例示了图16中示出的位线电压设置的图。下文中,将一起参照图15、图16、图17A和图17B来描述基于验证电压VRi来设置存储单元的位线电压的方法。
为了便于描述,描述了相对于处于编程操作的早期阶段的第一编程状态PVi尚未完成编程操作的情形。这里,i变成1。
在步骤S410中,通过向被选字线施加编程脉冲来使被选存储单元的阈值电压增大。随后,在步骤S420中,向被选字线施加作为与第一编程状态PV1对应的验证电压的第一验证电压VR1。因此,确定对第一编程状态PV1的验证是否已通过。
此外,作为步骤S430的确定结果,当第一编程状态PV1的验证未通过时,操作方法行进至步骤S450。
参照图16,步骤S450包括步骤S510、S530和S550。描述了与第一编程状态相关的示例。要被编程为第一编程状态PV1的存储单元当中的阈值电压比第一验证电压VR1高的存储单元的位线电压被设置为编程禁止电压(S510)。因此,在后续的编程循环中,可以向与要被编程为第一编程状态PV1的存储单元当中的阈值电压比第一验证电压VR1高的存储单元(即,已被完全编程的存储单元)联接的位线施加编程禁止电压。一起参照图16和图17A,将要被编程为第一编程状态PV1的存储单元的阈值电压分布例示为中间状态VTD_PV1。在步骤S510中,已被完全编程为第一编程状态的组B的存储单元的位线电压VBL被设置为编程禁止电压Vinh。
在步骤S530中,要被编程为第一编程状态PV1至第七编程状态PV7的存储单元当中的阈值电压比第一验证电压VR1低的存储单元的位线电压被设置为第一位线电压V1。
一起参照图16和图17A,在步骤S530中,要被编程为第一编程状态PV1的存储单元当中的尚未被完全编程的组A的存储单元的位线电压VBL被设置为第一位线电压V1。另外,一起参照图16和图17B,将要被编程为第二编程状态PV2至第七编程状态PV7的存储单元的阈值电压分布例示为中间状态VTD_PV2-7。在步骤S530中,要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的尚未被完全编程的组C的存储单元的位线电压VBL被设置为第一位线电压V1。一起参照图17A和图17B,可以看出,尚未被完全编程的组A和组C的存储单元的位线电压VBL被设置为第一位线电压V1。这里,组A的存储单元将被编程为第一编程状态PV1,并且组C的存储单元将被编程为第二编程状态PV2至第七编程状态PV7。
在步骤S550中,要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的阈值电压比第一验证电压VR1高的存储单元的位线电压被设置为第二位线电压V2。一起参照图16和图17B,属于组D的存储单元的位线电压VBL被设置为第二位线电压V2。
尽管在图16中例示了依次执行步骤S510、S530和S550的情况,但是本公开不限于此。图16中示出的流程图例示了通过划分存储单元来设置位线电压的方法。因此,可以改变步骤S510、S530和S550的顺序,和/或可以同时执行两个或更多个步骤。
一起参照图17A和图17B,要被编程为第一编程状态PV1的存储单元当中的已被完全编程的存储单元(组B)的位线电压被设置为编程禁止电压Vinh(S510)。要被编程为第一编程状态PV1(组A)以及第二编程状态PV2至第七编程状态PV7(组C)的存储单元当中的阈值电压比第一验证电压VR1低的存储单元(组A和组C)的位线电压被设置为第一位线电压V1(S530)。要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的阈值电压比第一验证电压VR1高的存储单元(组D)的位线电压被设置为第二位线电压V2(S550)。第二位线电压V2可以大于第一位线电压V1。在图16、图17A和图17B中,可以确定属于组D的存储单元是快速单元,并且可以确定属于组A和组C的存储单元是慢速单元。在编程操作中,可以向被确定是快速单元的组D的存储单元施加比第一位线电压V1相对高的第二位线电压V2。可以向被确定是慢速单元的组A和组C的存储单元施加比第二位线电压V2相对低的第一位线电压V1。
因此,快速单元的编程速度相对降低,因此,正被编程的存储单元之间的阈值电压变化减小。即,在图17B中示出的中间状态VTD_PV2-7下,阈值电压比第一验证电压VR1高的组D的存储单元之间的阈值电压变化减小。因此,能够减少在编程操作中执行的验证操作的次数,因此,能够提高半导体存储装置的编程速度。
当重复编程循环,并且作为步骤S430的确定结果,第一编程状态PV1的验证通过时,通过步骤S470将i从1增大至2,并且将位线电压初始化。在后续的编程循环中,在i为2的状态下执行图16中示出的步骤S510、S530和S550。
即,在步骤S510中,将要被编程为第二编程状态PV2的存储单元当中的阈值电压比第二验证电压VR2高的存储单元的位线电压确定为编程禁止电压。随后,在步骤S530中,将要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的阈值电压比第二验证电压VR2低的存储单元的位线电压VBL确定为第一位线电压V1。在步骤S550中,将要被编程为第三编程状态PV3至第七编程状态PV7的存储单元当中的阈值电压比第二验证电压VR2高的存储单元的位线电压VBL确定为第二位线电压V2。对于一些实施方式,第一位线电压V1对于不同的i值是不同的,并且第二位线电压V2对于不同的i值是不同的。对于其它实施方式,第一位线电压V1对于一些i值是不同的,并且第二位线电压V2对于一些i值是不同的。然而,对于任何给定i值,第一位线电压V1大于第二位线电压V2。
如上所述,对于根据本公开的实施方式的半导体存储装置及其操作方法,当重复执行编程循环时,通过针对每个编程循环自适应地确定快速单元来调整位线电压。参照图17A和图17B,可以看出,要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的阈值电压比第一验证电压VR1低的存储单元(组C)被确定为慢速单元,并且要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的阈值电压比第一验证电压VR1高的存储单元(组D)被确定为快速单元,这些是针对每个编程循环确定的。
另外,每当特定编程状态的验证通过时,调整用于确定快速单元的参考电压。当第一编程状态PV1的验证未通过时,成为用于将快速单元(组D)与慢速单元(组A和组C)区分开的基准的电压是第一验证电压VR1。如果在执行编程循环时第一编程状态PV1的验证通过,则用于将快速单元与慢速单元区分开的电压可以变为第二验证电压VR2。类似地,如果在执行编程循环时第二编程状态PV2的验证通过,则用于将快速单元与慢速单元区分开的电压可以变为第三验证电压VR3。
图18是例示了根据本公开的实施方式的半导体存储装置的操作方法的流程图。
参照图18,首先,向被选字线施加编程脉冲(S610),并且向被选字线施加与第i编程状态PVi对应的第i验证电压VRi(S620)。随后,在步骤S630中,对阈值电压比第i验证电压VRi高的存储单元的数目Nc进行计数。
在步骤S640中,确定已计数的存储单元的数目Nc是否大于预定参考值N_ref。当已计数的存储单元的数目Nc小于或等于预定参考值N_ref时,根据第一模式来设置存储单元的位线电压(S650)。当已计数的存储单元的数目Nc大于预定参考值N_ref时,根据与第一模式不同的第二模式来设置存储单元的位线电压(S660)。
当根据第一模式或第二模式来设置存储单元的位线电压时,确定第i编程状态PVi的验证是否已通过(S670)。作为步骤S670的确定结果,当第i编程状态PVi的验证未通过时,增大编程脉冲值(S680),并且通过行进至步骤S610来执行后续的编程循环。作为步骤S670的确定结果,当第i编程状态PVi的验证通过时,对上面的编程状态PVi+1至PV7执行编程操作和验证操作(S690)。
步骤S610至S680可以构成编程操作中的一个编程循环。此外,步骤S690可以包括多个编程循环。例如,步骤S610至S680可以在i增大至2的状态下构成编程循环,并且步骤S690可以包括多个编程循环。
当i为1时,在图18中示出的实施方式中,根据所有存储单元当中的阈值电压比第一验证电压VR1高的存储单元的数目来确定第一模式或第二模式。在第一模式下,基于被选存储单元的阈值电压来设置位线电压。在第二模式下,在不根据被选存储单元的阈值电压来划分被选存储单元的情况下设置位线电压。
当阈值电压比第一验证电压VR1高的存储单元的数目小时,这对应于编程操作的早期阶段。因此,在编程操作的该早期阶段,可以确定阈值电压比第一验证电压VR1高的存储单元是快速单元。因此,向快速单元施加根据第一模式来降低快速单元的编程速度的位线电压。
在第一模式下,如参照图16、图17A和图17B描述地设置位线电压,以便降低快速单元的编程速度。即,基于当前没有通过验证的第i编程状态PVi来将要被编程为PVi+1至PV7的存储单元当中的阈值电压比第i验证电压VRi高的存储单元(快速单元)的位线电压设置为第二位线电压V2(S550)。在第一模式下,将阈值电压比第i验证电压VRi低的存储单元(慢速单元)的位线电压设置为第一位线电压V1(S530)。省略了对如图16、图17A和图17B所示的通过将快速单元与慢速单元区分来设置位线电压的方法的冗余描述。
当阈值电压比第一验证电压VR1高的存储单元的数目大时,这可意指已在一定程度上执行了编程操作。因此,在一定程度上执行了编程操作的情形下,阈值电压比第一验证电压VR1高的存储单元可不被确定是快速单元。根据第二模式,在不将快速单元与慢速单元区分开的情况下执行编程操作。
在第二模式下,在编程操作期间,没有将快速单元与慢速单元彼此区分开。因此,尚未被完全编程的存储单元的所有位线电压被设置为彼此相等。一起参照图19和图20对此进行描述。
图19是例示了图18中示出的步骤S660的流程图。图20是例示了图19中示出的位线电压设置的图。下文中,将参照图19和图20来描述根据第二模式来设置存储单元的位线电压的方法。
为了便于描述,描述了相对于作为编程操作的早期阶段的第一编程状态PVi尚未完成编程操作的情形。这里,i为1。
参照图19,与第二模式对应的步骤S660包括步骤S710和S730。描述了与第一编程状态相关的示例。将要被编程为第一编程状态PV1的存储单元当中的阈值电压比第一验证电压VR1高的存储单元的位线电压设置为编程禁止电压(S710)。因此,在后续的编程循环中,可以向与要被编程为第一编程状态PV1的存储单元当中的阈值电压比第一验证电压VR1高的存储单元(即,已被完全编程的存储单元)联接的位线施加编程禁止电压。如图17A中所示,在步骤S710中,已被完全编程为第一编程状态PV1的组B的存储单元的位线电压VBL被设置为编程禁止电压Vinh。
在步骤S730中,将要被编程为PV1的存储单元当中的阈值电压比第一验证电压VR1低的存储单元的位线电压和要被编程为PV2至PV7的存储单元的位线电压设置为第一位线电压V1。因此,图17A中示出的组A的存储单元(即,要被编程为PV1的存储单元当中的阈值电压比第一验证电压VR1低的存储单元)被设置为第一位线电压V1。类似地,图20中的组C和组D的存储单元的位线电压VBL也被设置为第一位线电压V1。
参照图20,将要被编程为第二编程状态PV2至第七编程状态PV7的存储单元的阈值电压分布例示为中间状态VTD_PV2-7。在步骤S730中,将要被编程为第二编程状态PV2至第七编程状态PV7的存储单元当中的尚未被完全编程的组C的存储单元和已被完全编程的组D的存储单元的位线电压VBL二者设置为第一位线电压V1。一起参照图17A和图20,可以看出,要被编程为第一编程状态PV1的存储单元当中的尚未被完全编程的组A的存储单元以及要被编程为第二编程状态PV2至第七编程状态PV7的组C和组D的存储单元的位线电压VBL二者被设置为第一位线电压V1。第一位线电压V1是编程允许电压,并且可以是例如接地电压(0V)。
在第一模式下,通过将存储单元分成快速单元和慢速单元来设置存储单元的位线电压,如图17A和图17B中所示。在第二模式下,在不将存储单元分成快速单元和慢速单元的情况下设置存储单元的位线电压,如图17A和图20中所示。因此,在编程操作的早期阶段,当阈值电压比第一验证电压VR1高的存储单元的数目Nc小于或等于参考值N_ref时,可以根据第一模式有意地降低快速单元的编程速度。随后,当因为在一定程度上执行了编程操作,所以阈值电压比第一验证电压VR1高的存储单元的数目Nc大于参考值N_ref时,可以在不将存储单元划分成慢速单元和快速单元的情况下施加相同的编程允许电压作为存储单元的位线电压。
图21是例示了包括图1中示出的半导体存储装置的存储装置1000和用于控制半导体存储装置1000的存储控制器200的示例的框图。
参照图21,存储装置1000包括半导体存储装置100和存储控制器200。存储控制器200联接到半导体存储装置100和主机HOST。半导体存储装置100可以是参照图1描述的半导体存储装置。
存储控制器1100响应于来自主机HOST的请求而访问半导体存储装置100。例如,存储控制器1100控制半导体存储装置100的读取操作、编程操作、擦除操作和后台操作。存储控制器200提供半导体存储装置100和主机HOST之间的接口。存储控制器200驱动用于控制半导体存储装置100的固件。
存储控制器200包括随机存取存储器(RAM)210、处理器220、主机接口(I/F)230、存储器I/F 240和纠错块250。
RAM 210被用作处理器220的工作存储器、半导体存储装置100和主机HOST之间的高速缓存存储器和/或半导体存储装置100和主机HOST之间的缓冲存储器。另外,RAM 210可以用作命令队列,该命令队列临时存储要传送到半导体存储装置100的命令。
处理器220控制存储控制器200的整体操作。
主机I/F 230包括用于在主机HOST和存储控制器200之间交换数据的协议。在实施方式中,存储控制器1100通过诸如通用串行总线(USB)协议、多媒体卡(MMC)协议、PCI-快速(PCI-E)协议、高级技术附件(ATA)协议、串行ATA协议、并行ATA协议、小型计算机小型接口(SCSI)协议、增强型小磁盘接口(ESDI)协议、集成驱动电子设备(IDE)协议和专用协议之类的各种接口协议中的至少一种来与主机HOST通信。
存储器I/F 240与半导体存储装置100接口连接。例如,存储器I/F 240可以包括NAND接口或NOR接口。
纠错块250通过使用纠错码(ECC)来检测并纠正从半导体存储装置100接收的数据的错误。处理器220可基于纠错块250的错误检测结果来调整读取电压,并且控制半导体存储装置100执行重读操作。
存储控制器200和半导体存储装置100可以被集成在一个半导体装置中。在实施方式中,存储控制器200和半导体存储装置100可以被集成在一个半导体装置中,以构成存储卡。例如,存储控制器200和半导体存储装置100可以被集成在一个半导体装置中,以构成诸如PC卡(个人计算机存储卡国际协会(PCMCIA)卡)、紧凑型闪存(CF)、智能媒体卡(SM或SMC)、记忆棒、多媒体卡(MMC、RS-MMC或MMCmicro)、SD卡(SD、miniSD、microSD或SDHC)或通用闪存存储器(UFS)这样的存储卡。
存储控制器200和半导体存储装置100可以被集成在一个半导体器件中,以构成半导体驱动器(固态驱动器(SSD))。半导体驱动器(SSD)包括被配置成将数据存储在半导体存储器中的存储装置。当使用包括存储控制器200和半导体存储装置100的存储装置作为半导体驱动器SSD时,联接到存储装置的主机HOST的操作速度能显著提高。
又如,包括存储控制器200和半导体存储器装置100的存储系统100可以被提供为诸如以下各项的电子装置的各种组件之一:计算机、超移动PC(UMPC)、工作站、网络本、个人数字助理(PDA)、便携式计算机、网络平板、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航系统、黑匣子、数码相机、三维电视、数字音频记录仪、数字音频播放器、数字图片记录仪、数字图片播放器、数字视频记录仪、数字视频播放器、能够在无线环境中发送/接收信息的装置、构成家庭网络的各种电子装置之一、构成计算机网络的各种电子装置之一、构成远程信息处理网络的各种电子装置之一、RFID装置、或构成计算系统的各种组件之一。
在实施方式中,包括存储控制器200和半导体存储装置100的存储装置可以按各种形式封装。例如,半导体存储装置100或存储装置可以按诸如堆叠式封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料引线芯片载体(PLCC)、塑料双列直插式封装(PDIP)、华夫包中晶片、晶圆形式晶片、板上芯片(COB)、陶瓷双列直插式封装(CERDIP)、塑料公制四方扁平封装(MQFP)、薄型四方扁平封装(TQFP)、小外形集成电路(SOIC)、缩小外形封装(SSOP)、薄型小外形封装(TSOP)、、薄型四方扁平封装(TQFP)系统级封装(SIP)、多芯片封装(MCP)、晶圆级制造封装(WFP)或晶圆级处理层叠封装(WSP)之类的方式封装。
图22是例示了图21中示出的存储装置1000的应用示例的框图。
参照图22,存储装置2000包括半导体存储装置2100和控制器2200。半导体存储装置2100包括多个半导体存储芯片。多个半导体存储芯片被划分成多个组。
图22例示了多个组通过第一通道CH1至第k通道CHk与控制器2200通信。每个半导体存储芯片可以与参照图1描述的半导体存储装置100相同地配置和操作。
每个组被配置成通过一个公共通道与控制器2200进行通信。控制器2200与参照图21描述的存储控制器200以相同的方式进行配置。控制器2200通过多个通道CH1至CHk来控制半导体存储装置2100的多个存储芯片。
图23是例示了包括参照图22描述的存储装置2000的计算系统3000的框图。
参照图23,计算系统3000包括中央处理单元3100、RAM 3200、用户接口3300、电源3400、系统总线3500和存储装置2000。
存储装置2000通过系统总线3500电联接到中央处理单元3100、RAM 3200、用户接口3300和电源3400。通过用户接口3300供应的数据或由中央处理单元3100处理的数据被存储在存储装置2000中。
图23例示了半导体存储装置2100通过控制器2200与系统总线3500联接。然而,半导体存储装置2100可以直接联接到系统总线3500。控制器2200的功能可以由中央处理单元3100和RAM 3200执行。
图23例示了设置参照图22描述的存储装置2000。然而,存储装置2000可以被包括参照图21描述的存储控制器200和半导体存储装置100的存储装置1000替换。
本公开的多个实施方式提供了编程速度提高的半导体存储装置。本公开的附加实施方式提供了操作所述半导体存储装置的操作方法。
虽然已经参照一定实施方式示出并描述了本公开,但是本领域的技术人员应该理解,可以在不脱离如所附的权利要求书其等同物限定的本公开的精神和范围的情况下对实施方式进行形式和细节上的各种改变。因此,本公开的范围不应该限于上述的实施方式,而是应该不仅由所附的权利要求而且由其等同物来确定。
在上述实施方式中,可以选择性地执行所有步骤或者可以执行一部分步骤,而省略其它步骤。在每个实施方式中,所指示的步骤不一定以所描述的顺序执行并且可以重新布置。在本说明书和附图中公开的实施方式仅是示例,以促进对本公开的理解,并且本公开不限于此。即,对于本领域技术人员而言应该显而易见的是,可以基于本公开的技术范围进行各种修改。
此外,在附图和说明书中已经描述了本公开的实施方式。尽管这里使用了特定术语,但是这些术语仅是为了解释本公开的实施方式。因此,本公开不限于上述实施方式,并且在本公开的精神和范围内许多变形是可能的。对于本领域技术人员而言应该显而易见的是,除了本文中公开的实施方式之外,还可以基于本公开的技术范围进行各种修改。
相关申请的交叉引用
本申请要求于2018年12月11日在韩国知识产权局提交的韩国专利申请号10-2018-0159503的优先权,该韩国专利申请的全部公开以引用方式并入本文中。
Claims (20)
1.一种用于操作半导体存储装置的方法,该方法包括以下步骤:
对代表要针对编程操作进行编程的所有存储单元的被选存储单元进行虚设编程;
将阈值电压小于或等于参考阈值电压的那些被选存储单元确定为第一组存储单元;
将阈值电压大于所述参考阈值电压的那些被选存储单元确定为第二组存储单元;以及
对所述被选存储单元进行编程,其中,对所述被选存储单元进行编程的步骤包括以下步骤:
向所述第一组存储单元施加第一位线电压;
向所述第二组存储单元施加与所述第一位线电压不同的第二位线电压;以及
向所述第一组存储单元和所述第二组存储单元施加相同的编程脉冲。
2.根据权利要求1所述的方法,其中,所述第二位线电压高于所述第一位线电压。
3.根据权利要求2所述的方法,其中,所述第二位线电压低于所述编程脉冲的电压。
4.根据权利要求1所述的方法,其中:
向所述第一组存储单元施加第一位线电压的步骤包括以下步骤:向与所述第一组存储单元联接的位线施加所述第一位线电压;并且
向所述第二组存储单元施加第二位线电压的步骤包括以下步骤:向与所述第二组存储单元联接的位线施加所述第二位线电压。
5.一种用于操作半导体存储装置以将被选存储单元编程为第一编程状态至第N编程状态当中的编程状态的方法,其中,N为自然数,该方法包括以下步骤:
向与所述被选存储单元联接的字线施加第一编程脉冲;
通过向所述字线施加与第i编程状态对应的第i验证电压来执行第一编程验证操作,其中,i是等于或大于1且小于或等于N的自然数;以及
当所述第一编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第i验证电压低的存储单元的位线电压设置为第一位线电压;以及
当所述第一编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第i验证电压高并且将被编程为所述第i编程状态的存储单元的位线电压设置为编程禁止电压。
6.根据权利要求5所述的方法,该方法还包括以下步骤:
当所述第一编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第i验证电压高并且将被编程为大于所述第i编程状态的编程状态的存储单元的位线电压设置为第二位线电压。
7.根据权利要求6所述的方法,其中,所述第二位线电压高于所述第一位线电压。
8.根据权利要求7所述的方法,其中,所述第二位线电压低于所述编程脉冲的电压。
9.根据权利要求5所述的方法,该方法还包括以下步骤:
增大编程脉冲电压;
向与所述被选存储单元联接的所述字线施加第二编程脉冲;以及
通过向所述字线施加与所述第i编程状态对应的所述第i验证电压来执行第二编程验证操作。
10.根据权利要求9所述的方法,该方法还包括以下步骤:
当所述第二编程验证操作通过时,增大所述编程脉冲电压;
向与所述被选存储单元联接的所述字线施加第三编程脉冲;以及
通过向所述字线施加与所述第i编程状态对应的第(i+1)验证电压来执行第三编程验证操作。
11.根据权利要求10所述的方法,该方法还包括以下步骤:
当所述第三编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第(i+1)验证电压低的存储单元的位线电压设置为所述第一位线电压;以及
当所述第三编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第(i+1)验证电压高并且将被编程为第(i+1)编程状态的存储单元的位线电压设置为所述编程禁止电压。
12.根据权利要求11所述的方法,该方法还包括以下步骤:
当所述第三编程验证操作失败时,将所述被选存储单元当中的阈值电压比所述第(i+1)验证电压高并且将被编程为大于所述第(i+1)编程状态的编程状态的存储单元的位线电压设置为第二位线电压。
13.一种用于操作半导体存储装置以将被选存储单元编程为第一编程状态至第N编程状态当中的编程状态的方法,其中,N为自然数,该方法包括以下步骤:
向与所述被选存储单元联接的字线施加第一编程脉冲;
通过向所述字线施加与第i编程状态对应的第i验证电压来执行第一编程验证操作,其中,i是等于或大于1且小于或等于N的自然数;
确定阈值电压比所述第i验证电压高的被选存储单元的数目是否大于参考值;以及
基于确定来设置所述被选存储单元的位线电压。
14.根据权利要求13所述的方法,其中,基于确定来设置所述被选存储单元的位线电压的步骤包括以下步骤:
当所述数目不大于所述参考值时,将所述被选存储单元当中的阈值电压比所述第i验证电压低的存储单元的位线电压设置为第一位线电压;以及
当所述数目不大于所述参考值时,将所述被选存储单元当中的阈值电压比所述第i验证电压高并且将被编程为大于所述第i编程状态的编程状态的存储单元的位线电压设置为与所述第一位线电压不同的第二位线电压。
15.根据权利要求14所述的方法,其中,所述第二位线电压高于所述第一位线电压。
16.根据权利要求15所述的方法,其中,所述第二位线电压低于所述编程脉冲的电压。
17.根据权利要求15所述的方法,其中,基于确定来设置所述被选存储单元的位线电压还包括以下步骤:
当所述数目大于所述参考值时,将所述被选存储单元当中的阈值电压比所述第i验证电压低的存储单元的位线电压设置为所述第一位线电压;以及
当所述数目大于所述参考值时,将所述被选存储单元当中的阈值电压比所述第i验证电压高并且将被编程为大于所述第i编程状态的编程状态的存储单元的位线电压设置为所述第一位线电压。
18.根据权利要求17所述的方法,其中,基于确定来设置所述被选存储单元的位线电压的步骤还包括以下步骤:
将所述被选存储单元当中的阈值电压比所述第i验证电压高并且将被编程为所述第i编程状态的存储单元的位线电压设置为编程禁止电压。
19.一种半导体存储装置,该半导体存储装置包括:
存储单元阵列,该存储单元阵列包括被配置为存储数据的多个存储单元;
多条位线,所述多条位线联接到所述多个存储单元;
外围电路,该外围电路被配置为对所述多个存储单元当中的所有被选存储单元执行编程操作;以及
控制逻辑,该控制逻辑被配置为在执行所述编程操作中控制所述外围电路,
其中,所述半导体存储装置在执行所述编程操作中被配置为:
对所述被选存储单元进行虚设编程;
将阈值电压小于或等于参考阈值电压的那些被选存储单元确定为第一组存储单元;
将阈值电压大于所述参考阈值电压的那些被选存储单元确定为第二组存储单元;
向所述多条位线中的与所述第一组存储单元联接的位线施加第一位线电压;
向所述多条位线中的与所述第二组存储单元联接的位线施加高于所述第一位线电压的第二位线电压;以及
向所述第一组存储单元和所述第二组存储单元施加相同的编程脉冲。
20.根据权利要求19所述的半导体存储装置,其中,所述第二位线电压低于所述编程脉冲的电压。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0159503 | 2018-12-11 | ||
KR1020180159503A KR102688480B1 (ko) | 2018-12-11 | 2018-12-11 | 반도체 메모리 장치 및 그 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111312320A true CN111312320A (zh) | 2020-06-19 |
CN111312320B CN111312320B (zh) | 2023-12-29 |
Family
ID=70970746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911070077.5A Active CN111312320B (zh) | 2018-12-11 | 2019-11-05 | 半导体存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10885993B2 (zh) |
KR (1) | KR102688480B1 (zh) |
CN (1) | CN111312320B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021047954A (ja) * | 2019-09-19 | 2021-03-25 | キオクシア株式会社 | 半導体記憶装置 |
CN111727477A (zh) * | 2020-05-06 | 2020-09-29 | 长江存储科技有限责任公司 | 3d nand闪存的控制方法和控制器 |
KR20220057354A (ko) | 2020-10-29 | 2022-05-09 | 삼성전자주식회사 | 문턱 전압 산포 특성을 향상한 메모리 컨트롤러, 메모리 시스템 및 그 동작 방법 |
KR102605395B1 (ko) * | 2021-07-28 | 2023-11-23 | 인하대학교 산학협력단 | 낸드 플래시 메모리 소자의 동작방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120140566A1 (en) * | 2010-12-02 | 2012-06-07 | Seiichi Aritome | Programming method of non-volatile memory device |
US20130083602A1 (en) * | 2011-09-30 | 2013-04-04 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device |
CN106157999A (zh) * | 2015-05-15 | 2016-11-23 | 爱思开海力士有限公司 | 包括虚设存储单元的半导体存储器件及其操作方法 |
CN107170485A (zh) * | 2016-03-08 | 2017-09-15 | 爱思开海力士有限公司 | 半导体存储设备及其操作方法 |
US9859008B1 (en) * | 2016-09-08 | 2018-01-02 | SK Hynix Inc. | Control circuit, peripheral circuit, semiconductor memory device and method of operating the same |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101821604B1 (ko) * | 2011-07-25 | 2018-01-24 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그램 방법 |
US8902648B2 (en) * | 2011-07-26 | 2014-12-02 | Micron Technology, Inc. | Dynamic program window determination in a memory device |
KR101939235B1 (ko) * | 2011-08-03 | 2019-01-17 | 삼성전자 주식회사 | 비휘발성 메모리 장치 및 그것의 프로그램 방법 |
KR102137075B1 (ko) | 2013-09-10 | 2020-07-23 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그 프로그램 방법 |
JP2017054561A (ja) * | 2015-09-07 | 2017-03-16 | 株式会社東芝 | 半導体記憶装置及びメモリシステム |
KR102502234B1 (ko) * | 2015-12-03 | 2023-02-21 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그램 방법 |
KR102396734B1 (ko) * | 2015-11-23 | 2022-05-12 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그것의 동작 방법 |
KR102683414B1 (ko) * | 2017-01-26 | 2024-07-10 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것의 프로그램 방법 |
-
2018
- 2018-12-11 KR KR1020180159503A patent/KR102688480B1/ko active IP Right Grant
-
2019
- 2019-10-10 US US16/598,922 patent/US10885993B2/en active Active
- 2019-11-05 CN CN201911070077.5A patent/CN111312320B/zh active Active
-
2020
- 2020-11-30 US US17/107,317 patent/US11238947B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120140566A1 (en) * | 2010-12-02 | 2012-06-07 | Seiichi Aritome | Programming method of non-volatile memory device |
US20130083602A1 (en) * | 2011-09-30 | 2013-04-04 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device |
CN106157999A (zh) * | 2015-05-15 | 2016-11-23 | 爱思开海力士有限公司 | 包括虚设存储单元的半导体存储器件及其操作方法 |
CN107170485A (zh) * | 2016-03-08 | 2017-09-15 | 爱思开海力士有限公司 | 半导体存储设备及其操作方法 |
US9859008B1 (en) * | 2016-09-08 | 2018-01-02 | SK Hynix Inc. | Control circuit, peripheral circuit, semiconductor memory device and method of operating the same |
Also Published As
Publication number | Publication date |
---|---|
KR102688480B1 (ko) | 2024-07-26 |
KR20200071605A (ko) | 2020-06-19 |
US20210082530A1 (en) | 2021-03-18 |
CN111312320B (zh) | 2023-12-29 |
US11238947B2 (en) | 2022-02-01 |
US20200185047A1 (en) | 2020-06-11 |
US10885993B2 (en) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109935267B (zh) | 半导体存储器装置及其操作方法 | |
CN109817265B (zh) | 半导体存储装置及其操作方法 | |
CN112037839B (zh) | 半导体存储器装置及其操作方法 | |
CN111312320B (zh) | 半导体存储装置及其操作方法 | |
CN110197693B (zh) | 半导体存储器装置和与操作半导体存储器装置有关的方法 | |
KR20200021821A (ko) | 메모리 컨트롤러 및 그 동작 방법 | |
CN109979513B (zh) | 半导体存储器装置及其操作方法 | |
US9672914B1 (en) | Semiconductor memory device and operating method thereof | |
US11923018B2 (en) | Semiconductor memory device and method with multiple verify voltages | |
CN114464221B (zh) | 半导体存储器设备及其操作方法 | |
KR102362858B1 (ko) | 반도체 메모리 장치 및 그 동작 방법 | |
US20220328107A1 (en) | Semiconductor memory device and method of operating the semiconductor memory device | |
CN112786093B (zh) | 半导体存储器装置及其操作方法 | |
CN115705885A (zh) | 半导体存储器装置及其操作方法 | |
US11961571B2 (en) | Semiconductor memory device detecting program failure, and method of operating the same | |
CN115376574A (zh) | 半导体存储器设备和操作该半导体存储器设备的方法 | |
JP2022142721A (ja) | 半導体メモリ装置を制御するコントローラ及びその動作方法 | |
CN114388037A (zh) | 半导体存储器设备和操作半导体存储器设备的方法 | |
CN114974371A (zh) | 半导体存储器设备、控制器及其操作方法 | |
CN113689894A (zh) | 半导体存储器装置以及操作该半导体存储器装置的方法 | |
CN114360614A (zh) | 半导体存储器装置及其操作方法 | |
CN114974379A (zh) | 半导体存储器设备和操作该半导体存储器设备的方法 | |
CN116798486A (zh) | 对半导体存储器设备的选择晶体管进行编程的方法 | |
CN114141286A (zh) | 半导体存储器装置及其操作方法 |
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 |