CN114691103A - 用于存储装置的编程方法 - Google Patents
用于存储装置的编程方法 Download PDFInfo
- Publication number
- CN114691103A CN114691103A CN202110067057.3A CN202110067057A CN114691103A CN 114691103 A CN114691103 A CN 114691103A CN 202110067057 A CN202110067057 A CN 202110067057A CN 114691103 A CN114691103 A CN 114691103A
- Authority
- CN
- China
- Prior art keywords
- programming
- steps
- precharge
- voltage
- memory cells
- 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
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种用于存储装置的编程方法,存储装置包含多个存储单元、位线与多条字线。当存储装置处于在一编程操作中,存储单元包含选择存储单元与多个未选择存储单元。编程方法包含进行多个预充电步骤、进行多个编程步骤、以及在预充电步骤和编程步骤后对选择存储单元进行验证步骤。每一预充电步骤包含对用以驱动未选择存储单元的位线施加预充电电压。每一编程步骤包含对用以驱动选择存储单元的字线施加编程电压。
Description
技术领域
本公开属于存储技术领域,涉及一种用于存储装置的编程方法,更特别是一种用于三维(3-dimentional)存储装置的编程方法。
背景技术
随着集成电路中元件的关键尺寸逐渐缩小至工艺技术的极限,设计者已经开始寻找可达成更大存储器密度的技术,由此达成较低的位成本(costs per bit)。然而,随着技术趋势朝向缩小存储单元的尺寸与间距的方向发展,在存储单元进行编程操作期间的编程干扰问题变得越来越严重。
因此,降低存储装置被编程时的编程干扰(program disturbance)问题是相当重要的。
发明内容
本公开有关于一种用于存储装置的编程(program)方法。
根据本公开的一方面,提供一种用于存储装置的编程方法。存储装置包含多个存储单元、一位线与多条字线。当存储装置处于一编程操作时,多个存储单元包含一选择存储单元与多个未选择存储单元。编程方法包含:进行多个预充电步骤、进行多个编程步骤以及在预充电步骤和编程步骤后,对选择存储单元进行验证步骤。每一预充电步骤包含对用以驱动未选择存储单元的位线施加预充电电压。每一编程步骤包含对多条字线中用以驱动选择存储单元的字线施加编程电压。
根据本公开的另一方面,提供一种用于存储装置的编程方法。存储装置包含多个存储单元、一位线与多条字线,当存储装置处于一编程操作时,多个存储单元包含一选择存储单元与多个未选择存储单元。编程方法包含:进行一第一预充电步骤、进行一第一编程步骤、进行多个第二预充电步骤以及进行多个第二编程步骤。第一预充电步骤包含对用以驱动未选择存储单元的位线施加预充电电压。第一编程步骤包含对多条字线中用以驱动选择存储单元的字线施加第一编程电压。每一第二预充电步骤包含对用以驱动未选择存储单元的位线施加预充电电压。每一第二编程步骤包含对多条字线中用以驱动选择存储单元的字线施加第二编程电压。第二编程电压和第一编程电压不同。
为了对本发明的上述及其他方面有更佳的了解,下文特举实施例,并配合所附附图详细说明如下。
附图说明
图1绘示存储装置;
图2A绘示根据一实施例的用于存储装置的编程方法;
图2B绘示根据一实施例的用于存储装置的编程方法的电压时序图;
图3绘示根据一实施例的用于存储装置的编程方法;
图4绘示以一实施例的编程方法编程的存储单元的测试结果;
图5绘示以一实施例的编程方法编程的存储单元的测试结果;
图6绘示根据一实施例的用于存储装置的编程方法;及
图7绘示根据一实施例的用于存储装置的编程方法。
【符号说明】
101:第一存储器串行
102:第二存储器串行
201,202,301~303,604,609,613,618,622,626:预充电步骤
211,212,311~313,601,606,611,615,620,624,628:编程步骤
231~234,331~336,602,605,607,610,612,614,616,619,621,623,625,627,629:处理步骤
222,322,603,608,617,630:验证步骤
BL_1,BL_2:位线
CSL:共同源极线
DWLB0,DWLB1,DWLT0,DWLT1:虚置字线
GSL:接地选择线
MC_01,MC_11,MC_231,MC_241,MC_251,MC_461,MC_471,MC_02,MC_12,MC_232,MC_242,MC_252,MC_462,MC_472:存储单元
S1,S1_1,S2,S2_1,S3,S3_1,S4,S4_1:编程阶段
SSL 1,SSL 2:串行选择线
T1~T8:时间点
Va:脉冲电压
Vdmy1,Vdmy2:虚置电压
Vpass:通过电压
Vpgm,Vpgm1,Vpgm2,Vpgm3,Vpgm4:编程电压
Vpgm1_1,Vpgm2_1,Vpgm3_1,Vpgm4_1:编程电压
Vpre:预充电电压
WL0~WL47:字线
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
在本公开的实施例中,提出一种用于存储装置的编程方法,其可减少存储装置的编程干扰。编程方法可用于三维存储装置,例如三维与非门(NAND)闪存存储器。
须注意的是,本公开并非显示出所有可能的实施例,未于本公开提出的其他实施例也可能可以应用。再者,附图上的尺寸比例并非按照实际产品等比例绘制。因此,说明书和图示内容仅作叙述实施例之用,而非作为限缩本公开保护范围之用。另外,实施例中的叙述,例如细节结构、工艺步骤和材料应用等等,仅为举例说明之用,并非对本公开欲保护的范围做限缩。实施例的步骤和结构各的细节可在不脱离本公开的精神和范围内根据实际应用工艺的需要而加以变化与修饰。以下是以相同/类似的符号表示相同/类似的元件做说明。
再者,说明书与权利要求中所使用的序数例如“第一”、“第二”、“第三”等用词,是为了修饰权利要求的元件或步骤,其本身并不意含及代表该所请元件或步骤有任何之前的序数,也不代表某一所请元件或步骤与另一所请元件或步骤的顺序、或是施行上的顺序,这些序数的使用,仅是用来使具有某命名的一描述元件或步骤得以和另一具有相同命名的描述元件或步骤能作出清楚区分。
适用于进行本公开的编程方法的存储装置可包含多个存储器串行(memorystrings)、多条位线(bit lines)、多条串行选择线(string selectionlines)、多条字线(word lines)、多条接地选择线(ground selection lines)与多条共同源极线(commonsource lines)。为了便于说明,图1仅示例性地显示两个存储器串行。
图1绘示存储装置。存储装置包含第一存储器串行101、第二存储器串行102、多条位线BL、多条串行选择线SSL、多条字线WL、接地选择线GSL与共同源极线CSL。第一存储器串行101不同于第二存储器串行102,第一存储器串行101相邻于第二存储器串行102。
第一存储器串行101包含多个存储单元MC(MC_01,MC_11…MC_231,MC_241,MC_251…MC_461,MC_471)。第二存储器串行102包含多个存储单元MC(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)。多条字线WL包含用以驱动存储单元MC_01与存储单元MC_02的字线WL0、用以驱动存储单元MC_471与存储单元MC_472的字线WL47、以及依序配置于字线WL0和字线WL47之间的多条字线WL1-WL46,存储单元MC_01与存储单元MC_02分别设置于第一存储器串行101与第二存储器串行102的下端,存储单元MC_471与存储单元MC_472分别设置于第一存储器串行101与第二存储器串行102的上端。字线WL1-WL46中的每一个分别用以驱动第一存储器串行101的存储单元MC_11…MC_231,MC_241,MC_251…MC_461中的每一个。字线WL1-WL46中的每一个分别用以驱动第二存储器串行102的存储单元MC_12…MC_232,MC_242,MC_252…MC_462中的每一个。此处所述的用以驱动存储单元的字线可代表,当施加于任一字线WL的电压值改变,作用于被此字线WL驱动的存储单元MC的电场值可随之改变。例如,当施加于字线WL0的电压值改变,作用于存储单元MC_01与存储单元MC_02的电场值可随之改变。
第一存储器串行101电性连接于位线BL_1与共同源极线CSL之间。第二存储器串行102电性连接于位线BL_2与共同源极线CSL之间。具体而言,第一存储器串行101的通道线电性连接于位线BL_1与共同源极线CSL之间,第二存储器串行102的通道线电性连接于位线BL_2与共同源极线CSL之间。位线BL_1可用以驱动第一存储器串行101中的多个存储单元MC(MC_01,MC_11…MC_231,MC_241,MC_251…MC_461,MC_471)。位线BL_2可用以驱动第二存储器串行102中的多个存储单元MC(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)。在一实施例中,第一存储器串行101与第二存储器串行可电性连接于相同位线。此处所述的用以驱动存储单元的位线可代表,当施加于任一位线BL的电压值改变,作用于被此位线BL驱动的存储单元MC的电场值可随之改变。例如,当施加于位线BL_2的电压值改变,作用于第二存储器串行102的存储单元MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472的电场值可随之改变。
串行选择线SSL_1与接地选择线GSL耦接于第一存储器串行101的相对两端。串行选择线SSL_2与接地选择线GSL耦接于第二存储器串行102的相对两端。具体而言,串行选择线SSL_1耦接于位线BL_1与第一存储器串行101的存储单元MC_471之间;串行选择线SSL_2耦接于位线BL_2与第二存储器串行102的存储单元MC_472之间;接地选择线GSL耦接于共同源极线CSL与第一存储器串行101的存储单元MC_01之间且耦接于共同源极线CSL与第二存储器串行102的存储单元MC_02之间。在一实施例中,存储装置可包含多条串行选择线SSL耦接于位线BL_1与存储单元MC_471之间、和/或耦接于位线BL_2与存储单元MC_472之间。存储装置可还包含设置于字线WL47与位线BL之间的虚置字线DWLT0,DWLT1、以及设置于字线WL0与共同源极线CSL之间的虚置字线DWLB0,DWLB1。
当图1所示的存储装置处于编程操作期间时,多个存储单元MC的一个被选择以进行编程,且其他存储单元MC可被理解为未选择存储单元。例如,存储单元MC_241被选择且可被理解为选择存储单元,其他存储单元(即存储单元MC_01,MC_11…MC_231,MC_251…MC_461,MC_471和MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)可被理解为未选择存储单元,包含选择存储单元(MC_241)的第一存储器串行101可被理解为选择存储器串行,且包含未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的第二存储器串行102可被理解为未选择存储器串行。
在编程操作期间,本公开的编程方法包含对第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)进行一个以上的预充电步骤,以关闭第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472),且抑制第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的编程。在编程操作期间,编程方法还包含对第一存储器串行101的选择存储单元(MC_241)进行一个以上的编程步骤,以编程选择存储单元(MC_241)。每一预充电步骤分别进行于每一编程步骤之前。在编程操作期间,编程方法还包含在预充电步骤和编程步骤后,对选择存储单元(MC_241)进行验证步骤,以验证选择存储单元(MC_241)是否被适当地编程。
请同时参照图1、图2A与图2B图。图2A绘示根据一实施例的用于存储装置的编程方法。图2B图绘示图2A所示的用于存储装置的编程方法的电压(或偏压)时序图。图2B的纵轴表示提供至用以驱动选择存储单元(MC_241)的字线WL24、用以驱动未选择存储单元(MC_01,MC_11…MC_231,MC_251…MC_461,MC_471和MC_02,MC_12…MC_232,MC_252…MC_462,MC_472)的字线WL0-WL23,WL25-WL47、虚置字线DWLT0,DWLT1,DWLB0,DWLB1、耦接至第二存储器串行102中的未选择存储单元的串行选择线SSL_2、以及位线BL_2的电压(或偏压)。图2B的横轴表示时间,可依序包括时间点T1、时间点T2…至时间点T8。
用于存储装置的编程方法包含在编程操作期间,进行多个预充电步骤201,202、进行多个编程步骤211,212、以及在多个预充电步骤201,202和多个编程步骤211,212后进行验证步骤222。编程方法可还包含在编程操作期间,进行于预充电步骤201和编程步骤211之间的处理步骤231、进行于编程步骤211和预充电步骤202之间的处理步骤232、进行于预充电步骤202和编程步骤212之间的处理步骤233、以及进行于编程步骤212和验证步骤222之间的处理步骤234。具体而言,预充电步骤201、处理步骤231、编程步骤211、处理步骤232、预充电步骤202、处理步骤233、编程步骤212、处理步骤234、以及验证步骤222可依序进行。
例如,预充电步骤201可包含在时间点T1至时间点T2的时段期间(第一预充电期间),对用以驱动第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的位线BL_2施加预充电电压Vpre,以提升第二存储器串行102的通道电压,且在时间点T1至时间点T2的时段期间对串行选择线SSL_2施加脉冲电压Va,以使第二存储器串行102连接位线BL_2。在预充电步骤201中,字线WL0-WL47与虚置字线DWLT0,DWLT1,DWLB0,DWLB1可为0伏特(V)。编程步骤211可包含在时间点T3至时间点T4的时段期间(第一编程期间),对用以驱动选择存储单元(MC_241)的字线WL24施加编程电压Vpgm,以编程选择存储单元(MC_241),且在时间点T3至时间点T4的时段期间对字线WL0-WL23,WL25-WL47施加通过电压Vpass。在一实施例中,通过电压Vpass小于编程电压Vpgm。在编程步骤211中,对虚置字线DWLT0,DWLB1施加虚置电压Vdmy1,且对虚置字线DWLT1,DWLB0施加虚置电压Vdmy2。在编程步骤211中,串行选择线SSL_2与位线BL_2可为0伏特。
预充电步骤202可包含在时间点T5至时间点T6的时段期间(第二预充电期间),对用以驱动第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的位线BL_2施加预充电电压Vpre,以提升第二存储器串行102的通道电压,且在时间点T5至时间点T6的时段期间对串行选择线SSL_2施加脉冲电压Va,以使第二存储器串行102连接位线BL_2。在预充电步骤202中,字线WL0-WL47与虚置字线DWLT0,DWLT1,DWLB0,DWLB1可为0伏特。编程步骤212可包含在时间点T7至时间点T8的时段期间(第二编程期间),对用以驱动选择存储单元(MC_241)的字线WL24施加编程电压Vpgm,以编程选择存储单元(MC_241),且在时间点T7至时间点T8的时段期间对字线WL0-WL23,WL25-WL47施加通过电压Vpass。在编程步骤212中,对虚置字线DWLT0,DWLB1施加虚置电压Vdmy1,且对虚置字线DWLT1,DWLB0施加虚置电压Vdmy2。在编程步骤212中,串行选择线SSL_2与位线BL_2可为0伏特。虚置电压Vdmy1可大于虚置电压Vdmy2。虚置电压Vdmy1与虚置电压Vdmy2的值可介于脉冲电压Va的值与通过电压Vpass的值之间。
处理步骤231可进行于时间点T2至时间点T3的时段期间。处理步骤232可进行于时间点T4至时间点T5的时段期间。处理步骤233可进行于时间点T6至时间点T7的时段期间。处理步骤234可进行于时间点T8之后。验证步骤222可进行于时间点T8之后且于处理步骤234之后。
在一实施例中,预充电电压Vpre可为4V,脉冲电压Va可为3V,编程电压Vpgm可为24V,通过电压Vpass可为8V,虚置电压Vdmy1与虚置电压Vdmy2可介于3V至8V。第一预充电期间可等于第二预充电期间,例如,第一预充电期间与第二预充电期间可为6微秒(μs)。第一预充电期间可不同于第二预充电期间,例如,第一预充电期间可为7微秒,第二预充电期间可为5微秒。在一实施例中,用于不同预充电步骤的预充电电压Vpre可为定值。
图2A与图2B显示在编程操作期间,在一验证步骤之前包含两个预充电步骤与两个编程步骤的编程方法,然而,编程方法可包含更多验证步骤与更多编程步骤。例如,编程方法可包含N个预充电步骤与N个编程步骤,N个预充电步骤中的每一个分别进行于N个编程步骤中的每一个之前,且N大于1。在一实施例中,N个预充电步骤中的每一个可包含在一预充电期间对位线BL_2施加预充电电压Vpre,N个编程步骤中的每一个可包含在一编程期间对用以驱动选择存储单元(MC_241)的字线WL24施加编程电压Vpgm。预充电期间随着N值增加而减少,且编程期间随着N值增加而减少。在一实施例中,预充电期间和N值成反比,且编程期间和N值成反比。例如,当N值等于2,预充电期间可为6微秒,编程期间可为6微秒;当N值等于3,预充电期间可为4微秒,编程期间可为4微秒;当N值等于6,预充电期间可为2微秒,编程期间可为2微秒。本公开不以此为限。在一实施例中,N个预充电步骤之间可不包含任何验证步骤,和/或N个编程步骤之间可不包含任何验证步骤。例如,预充电步骤201与预充电步骤202之间不包含任何验证步骤,和/或编程步骤211与编程步骤212之间不包含任何验证步骤。
图3绘示根据另一实施例的用于存储装置的编程方法。编程方法可包含,在编程操作期间,在验证步骤322之前进行三个预充电步骤301,302,303与三个编程步骤311,312,313(N=3)。在图3所示的编程方法中,预充电步骤301、处理步骤331、编程步骤311、处理步骤332、预充电步骤302、处理步骤333、编程步骤312、处理步骤334、预充电步骤303、处理步骤335、编程步骤313、处理步骤336、以及验证步骤322可依序进行。预充电步骤301,302,303可相似于图2A与图2B所示的预充电步骤201,202,除了预充电期间不同。编程步骤311,312,313可相似于图2A与图2B所示的编程步骤211,212,除了编程期间不同。在一实施例中,预充电步骤301,302,303可进行于4微秒的预充电期间,编程步骤311,312,313可进行于4微秒的编程期间。
图4绘示以一实施例的编程方法编程的存储单元的测试结果。在比较例中,在编程操作期间,编程方法仅包含一个预充电步骤(N=1),此预充电步骤进行于一验证步骤之前,且预充电步骤以12微秒的预充电期间进行。在实施例1中,在编程操作期间,编程方法包含两个预充电步骤(N=2),两个预充电步骤进行于一验证步骤之前,且每一预充电步骤以6微秒的预充电期间进行。在实施例2中,在编程操作期间,编程方法包含三个预充电步骤(N=3),三个预充电步骤进行于一验证步骤之前,且每一预充电步骤以4微秒的预充电期间进行。在实施例3中,在编程操作期间,编程方法包含六个预充电步骤(N=6),六个预充电步骤进行于一验证步骤之前,且每一预充电步骤以2微秒的预充电期间进行。如图4所示,相较于比较例,实施例1至实施例3的编程干扰抑制较佳。具体而言,实施例3的编程干扰抑制优于实施例2的编程干扰抑制,实施例2的编程干扰抑制优于实施例1的编程干扰抑制。
图5绘示以比较例和实施例1至实施例3的编程方法编程的存储单元的测试结果。如图5所示,比较例和实施例1至实施例3的编程能力(program capabilities)是相似的。也就是说,本公开提供的编程方法可提升编程干扰的抑制效果,且仍维持编程能力。
请同时参照图1与图6。图6绘示根据另一实施例的用于存储装置的编程方法。当图1所示的存储装置处于编程操作期间时,多个存储单元MC的一个被选择以进行编程,且其他存储单元MC可被理解为未选择存储单元。例如,存储单元MC_241被选择且可被理解为选择存储单元,其他存储单元(即存储单元MC_01,MC_11…MC_231,MC_251…MC_461,MC_471和MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)可被理解为未选择存储单元,包含选择存储单元(MC_241)的第一存储器串行101可被理解为选择存储器串行,且包含未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的第二存储器串行102可被理解为未选择存储器串行。
编程方法可包含在编程操作期间,施加一系列渐增的编程电压,以编程选择存储单元(MC_241)。在一系列的编程电压中,编程电压可能(但不限于)逐步增加;也就是编程电压可能以固定的差值增加。编程方法可包含多个编程阶段。每一编程阶段对应于一系列编程电压中的一编程电压。每一编程阶段包含对选择存储单元(MC_241)进行验证步骤、以及早于验证步骤的至少一个编程步骤,编程步骤包含对用以驱动选择存储单元(MC_241)的字线WL24施加对应的编程电压。为了便于说明,图6仅示例性地显示四个编程阶段。
在图6中,编程方法包含依序进行的编程阶段S1,S2,S3,S4。每一编程阶段S1,S2,S3,S4分别对应于每一编程电压Vpgm1,Vpgm2,Vpgm3,Vpgm4。在此实施例中,编程电压可以x伏特的差值渐增(x大于0),换言之,编程电压Vpgm2可理解为Vpgm1+x,编程电压Vpgm3可理解为Vpgm1+2x,编程电压Vpgm4可理解为Vpgm1+3x。
编程阶段S1包含进行编程步骤601、以及在编程步骤601之后进行验证步骤603。编程阶段S1可还包含处理步骤602,进行于编程步骤601与验证步骤603之间。编程步骤601可包含对用以驱动选择存储单元(MC_241)的字线WL24施加编程电压Vpgm1,以编程选择存储单元(MC_241)。对选择存储单元(MC_241)进行验证步骤603,以验证选择存储单元(MC_241)是否被适当地编程。
若编程阶段S1的验证步骤603失败(代表选择存储单元没有被成功编程),编程阶段S2会接着进行,且编程阶段S2包含增加的编程电压Vpgm2与一预充电步骤。编程阶段S2可包含依序进行预充电步骤604、处理步骤605、编程步骤606、处理步骤607与验证步骤608。预充电步骤604可包含对用以驱动第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的位线BL_2施加预充电电压Vpre,以关闭第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472),且抑制第二存储器串行102的未选择存储单元(MC_02,MC_12…MC_232,MC_242,MC_252…MC_462,MC_472)的编程。编程步骤606可包含对字线WL24施加编程电压Vpgm2,以编程选择存储单元(MC_241)。对选择存储单元(MC_241)进行验证步骤608,以验证选择存储单元(MC_241)是否被适当地编程。
若编程阶段S2的验证步骤608失败(代表选择存储单元没有被成功编程),编程阶段S3会接着进行,且编程阶段S3包含,相较于编程阶段S2,更增加的编程电压Vpgm3与更多预充电步骤。编程阶段S3可包含依序进行预充电步骤609、处理步骤610、编程步骤611、处理步骤612、预充电步骤613、处理步骤614、编程步骤615、处理步骤616与验证步骤617。预充电步骤609可包含对位线BL_2施加预充电电压Vpre。编程步骤611可包含对字线WL24施加编程电压Vpgm3。预充电步骤615可相似于预充电步骤609。编程步骤615可相似于编程步骤611。对选择存储单元(MC_241)进行验证步骤617,以验证选择存储单元(MC_241)是否被适当地编程。编程阶段S3可能相似于图2A与图2B图所示的操作方式。
若编程阶段S3的验证步骤617失败(代表选择存储单元没有被成功编程),编程阶段S4会接着进行,且编程阶段S4包含,相较于编程阶段S3,更增加的编程电压Vpgm4与更多预充电步骤。编程阶段S4可包含依序进行预充电步骤618、处理步骤619、编程步骤620、处理步骤621、预充电步骤622、处理步骤623、编程步骤624、处理步骤625、预充电步骤626、处理步骤627、编程步骤628、处理步骤629与验证步骤630。每一预充电步骤618,622,626可包含对位线BL_2施加预充电电压Vpre。每一编程步骤620,624,628可包含对字线WL24施加编程电压Vpgm4。对选择存储单元(MC_241)进行验证步骤630,以验证选择存储单元(MC_241)是否被适当地编程。编程阶段S4可能相似于图3所示的操作方式。
在图6中,编程方法包含四个编程阶段,然而,编程方法可能包含多于四个编程阶段或少于四个编程阶段。在一实施例中,编程方法可包含在编程阶段S4之后进行更多编程阶段,且使用更增加的编程电压。编程电压Vpgm可以上述方式递增地增加,直到选择存储单元(MC_241)被适当地编程,或者直到选择存储单元(MC_241)达到预定的阈值电压(threshold voltage)。在一实施例中,在一编程阶段中,预充电步骤之间可不包含任何验证步骤,和/或编程步骤之间可不包含任何验证步骤。在另一实施例中,一个编程阶段包含仅一个验证步骤,该验证步骤在所有该编程阶段的编程步骤完成后才进行。
在图6中,预充电步骤604可包含在第一预充电期间对位线BL_2施加预充电电压Vpre,每一预充电步骤609,613可包含在第二预充电期间对位线BL_2施加预充电电压Vpre,每一预充电步骤618,622,626可包含在第三预充电期间对位线BL_2施加预充电电压Vpre。第一预充电期间可大于第二预充电期间,第二预充电期间可大于第三预充电期间。在一实施例中,第一预充电期间可为12微秒,第二预充电期间可为6微秒,第三预充电期间可为4微秒。在一实施例中,在一编程阶段,预充电期间取决于预充电步骤的数量。具体而言,预充电期间随着预充电步骤的数量增加而减少。在一实施例中,用于不同编程阶段的预充电电压Vpre可为定值。
在图6中,编程步骤606可包含在第一编程期间对字线WL24施加编程电压Vpgm2,每一编程步骤611,615可包含在第二编程期间对字线WL24施加编程电压Vpgm3,每一编程步骤620,624,628可包含在第三编程期间对字线WL24施加编程电压Vpgm4。第一编程期间可大于第二编程期间,第二编程期间可大于第三编程期间。在一实施例中,第一编程期间可为12微秒,第二编程期间可为6微秒,第三编程期间可为4微秒。在一实施例中,在一编程阶段,编程期间取决于编程步骤的数量。具体而言,编程期间随着编程步骤的数量增加而减少。
当编程电压低的时候,编程干扰可能是轻微的。因此,当编程电压低的时候,预充电步骤可能是非必要的。例如,在图6中,编程阶段S1不包含预充电步骤,由于编程电压Vpgm1是低的。
在一实施例中,每一编程阶段中编程步骤的数量可随着编程电压Vpgm增加而增加,且每一编程阶段中编程期间可随着编程电压Vpgm增加而减少。在一实施例中,每一编程阶段中预充电步骤的数量可随着编程电压Vpgm增加而增加,且每一编程阶段中预充电期间可随着编程电压Vpgm增加而减少。预充电步骤的数量可等于编程步骤的数量。
图7绘示根据一实施例的用于存储装置的编程方法。图7所示的编程方法和图6所示的编程方法的差异在于,图7所示的编程方法可在编程阶段S1,S2,S3,S4之间包含更多编程阶段。例如,图7所示的编程方法可包含编程阶段S11介于编程阶段S1与编程阶段S2之间。除了用于编程阶段S1_1的编程电压Vpgm1_1和用于编程阶段S1的编程电压Vpgm1不同之外,编程阶段S1_1相似于编程阶段S1。编程电压Vpgm1_1大于用于编程阶段S1的编程电压Vpgm1,且小于用于编程阶段S2的编程电压Vpgm2。编程方法可包含编程阶段S2_1介于编程阶段S2与编程阶段S3之间。除了用于编程阶段S2_1的编程电压Vpgm2_1和用于编程阶段S2的编程电压Vpgm2不同之外,编程阶段S2_1相似于编程阶段S2。编程电压Vpgm2_1大于用于编程阶段S2的编程电压Vpgm2,且小于用于编程阶段S3的编程电压Vpgm3。编程方法可包含编程阶段S3_1介于编程阶段S3与编程阶段S4之间。除了用于编程阶段S3_1的编程电压Vpgm3_1和用于编程阶段S3的编程电压Vpgm3不同之外,编程阶段S3_1相似于编程阶段S3。编程电压Vpgm3_1大于用于编程阶段S3的编程电压Vpgm3,且小于用于编程阶段S4的编程电压Vpgm4。编程方法可包含编程阶段S4_1在编程阶段S4之后。除了用于编程阶段S4_1的编程电压Vpgm4_1和用于编程阶段S4的编程电压Vpgm4不同之外,编程阶段S4_1相似于编程阶段S4。编程电压Vpgm4_1大于用于编程阶段S4的编程电压Vpgm4。
在一实施例中,编程方法可在编程阶段S1与编程阶段S2之间、和/或编程阶段S2与编程阶段S3之间、和/或编程阶段S3与编程阶段S4之间、和/或编程阶段S4之后包含多于一个编程阶段。用于多个编程阶段的编程电压Vpgm随着每个编程阶段而增加。
在一实施例中,每个编程阶段中的预充电步骤的数量可对应于编程电压范围,也就是说,当用于一编程阶段的编程电压Vpgm落在编程电压范围内时,该编程阶段中的预充电步骤的数量可为定值。换言之,当用于一编程阶段的编程电压Vpgm增加至特定电压值时,该编程阶段中的预充电步骤的数量才会增加。例如,如图7所示,在达到编程电压Vpgm2之前,编程阶段S1,S1_1…中的每一个的预充电步骤的数量维持于0;当达到编程电压Vpgm2,编程阶段S2中的预充电步骤的数量增加为1。例如,如图7所示,在达到编程电压Vpgm3之前,编程阶段S2,S2_1…中的每一个的预充电步骤的数量维持于1;当达到编程电压Vpgm3,编程阶段S3中的预充电步骤的数量增加为2。
在此实施例中,每个编程阶段中的编程步骤的数量可对应于编程电压范围,也就是说,当用于一编程阶段的编程电压Vpgm落在编程电压范围内时,该编程阶段中的编程步骤的数量可为定值。换言之,当用于一编程阶段的编程电压Vpgm增加至特定电压值时,该编程阶段中的编程步骤的数量才会增加。例如,如图7所示,在达到编程电压Vpgm3之前,编程阶段S2,S21…中的每一个的编程步骤的数量维持于1;当达到编程电压Vpgm3,编程阶段S3中的编程步骤的数量增加为2。预充电步骤的数量可等于编程步骤的数量。
在一比较例中,编程方法包含仅一个预充电步骤与仅一个编程步骤,由于未选择存储单元之间的电位差可能诱发带间泄漏(band to band leakage),使得发生于未选择存储器串行中的未选择存储单元的通道中的局部自升压现象(local self-boosting)可能会在编程步骤崩溃。此外,随着编程步骤的编程期间增加,局部自升压现象的崩溃会更加严重。局部自升压现象的崩溃可能降低未选择存储单元的控制栅极与通道之间的电位差(control gate-to-channel potential differences),从而导致严重的编程干扰。相较于此,本公开提供的编程方法包含多于一个预充电步骤,在一编程操作中进行多于一个预充电步骤有益于建立稳定的局部自升压现象,且可降低或避免局部自升压现象的崩溃,从而可降低或抑制编程干扰。而且,相较于包含仅一个预充电步骤与仅一个编程步骤的编程方法比较例,本公开的编程方法的预充电步骤以短的预充电期间来进行,且本公开的编程方法的编程步骤以短的编程期间来进行。在一编程操作中,数量较多的预充电步骤、以及以短的预充电期间来进行每一预充电步骤,有益于有效率地建立局部自升压现象,且使未选择存储单元处于强的关闭状态。短的编程期间亦有益于建立局部自升压现象且可降低或抑制编程干扰。因此,通过本公开的编程方法,可提升存储装置的编程干扰抑制效果,且可增加编程窗口(program window),同时维持存储装置的编程能力。
根据本公开的概念亦可延伸应用至其它变化情况。
存储器串行可为垂直通道结构,或者可使用单一栅极垂直通道结构、或垂直栅极结构等等。存储单元可为浮栅存储单元或氮化物俘获型存储单元等等。存储单元可为单阶存储单元、多阶存储单元、或三阶存储单元等等。
综上所述,虽然本发明已以实施例公开如上,然其并非用以限定本发明。本发明所属技术领域中具有公知常识的技术人员,在不脱离本发明的精神和范围内,当可作各种的改动与润饰。因此,本发明的保护范围当以的权利要求所界定的范围为准。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种用于一存储装置的编程方法,其特征在于,该存储装置包含多个存储单元、一位线与多条字线,当该存储装置处于一编程操作时,该多个存储单元包含一选择存储单元与多个未选择存储单元,该编程方法包含:
进行多个预充电步骤,这些预充电步骤的每一个包含对用以驱动这些未选择存储单元的该位线施加一预充电电压;
进行多个编程步骤,这些编程步骤的每一个包含对这些字线中用以驱动该选择存储单元的一字线施加一编程电压;以及
在这些预充电步骤和这些编程步骤后,对该选择存储单元进行一验证步骤。
2.根据权利要求1所述的编程方法,其中这些预充电步骤包含一第一预充电步骤与一第二预充电步骤,该第二预充电步骤进行于该第一预充电步骤之后,这些编程步骤包含一第一编程步骤与一第二编程步骤,该第二编程步骤进行于该第一编程步骤之后,该第一编程步骤进行于该第一预充电步骤与该第二预充电步骤之间。
3.根据权利要求2所述的编程方法,其中该第二编程步骤进行于该第二预充电步骤与该验证步骤之间。
4.根据权利要求1所述的编程方法,其中该编程方法包含N个预充电步骤,该N个预充电步骤中的每一个包含以一预充电期间对该位线施加该预充电电压,该预充电期间随着该N增加而减少。
5.根据权利要求4所述的编程方法,其中该编程方法包含N个编程步骤,该N个编程步骤中的每一个包含以一编程期间对该字线施加该编程电压,该编程期间随着该N增加而减少。
6.一种用于一存储装置的编程方法,其特征在于,该存储装置包含多个存储单元、一位线与多条字线,当该存储装置处于一编程操作时,该多个存储单元包含一选择存储单元与多个未选择存储单元,该编程方法包含:
进行一第一预充电步骤,该第一预充电步骤包含对用以驱动这些未选择存储单元的该位线施加一预充电电压;
进行一第一编程步骤,该第一编程步骤包含对这些字线中用以驱动该选择存储单元的一字线施加一第一编程电压;
进行多个第二预充电步骤,这些第二预充电步骤的每一个包含对用以驱动这些未选择存储单元的该位线施加该预充电电压;以及
进行多个第二编程步骤,这些第二编程步骤的每一个包含对这些字线中用以驱动该选择存储单元的该字线施加一第二编程电压,
其中该第二编程电压和该第一编程电压不同。
7.根据权利要求6所述的编程方法,其中该第一编程步骤进行于这些第二编程步骤之前,该第一编程电压小于该第二编程电压。
8.根据权利要求7所述的编程方法,其中该第一编程步骤包含以一第一编程期间对该字线施加该第一编程电压,这些第二编程步骤中的每一个包含以一第二编程期间对该字线施加该第二编程电压,该第一编程期间大于该第二编程期间。
9.根据权利要求6所述的编程方法,其中该第一预充电步骤进行于这些第二预充电步骤之前,该第一预充电步骤包含以一第一预充电期间对该位线施加该预充电电压,这些第二预充电步骤中的每一个包含以一第二预充电期间对该位线施加该预充电电压,该第一预充电期间大于该第二预充电期间。
10.根据权利要求6所述的编程方法,其中该编程法还包含:
进行多个该第一预充电步骤,该多个该第一预充电步骤中的每一个包含对用以驱动这些未选择存储单元的该位线施加该预充电电压;
进行多个该第一编程步骤,该多个该第一编程步骤中的每一个包含对这些字线中用以驱动该选择存储单元的该字线施加该第一编程电压,
其中该多个该第一预充电步骤和该多个该第一编程步骤进行于这些第二预充电步骤和这些第二编程步骤之前,该多个该第一预充电步骤的数量少于这些第二预充电步骤的数量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/137,461 | 2020-12-30 | ||
US17/137,461 US11322207B1 (en) | 2020-12-30 | 2020-12-30 | Program method including multiple precharge steps for memory device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114691103A true CN114691103A (zh) | 2022-07-01 |
CN114691103B CN114691103B (zh) | 2025-05-16 |
Family
ID=81385333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110067057.3A Active CN114691103B (zh) | 2020-12-30 | 2021-01-19 | 用于存储装置的编程方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11322207B1 (zh) |
CN (1) | CN114691103B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022205268A1 (en) * | 2021-04-01 | 2022-10-06 | Yangtze Memory Technologies Co., Ltd. | Programming for three-dimensional nand memory |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020114187A1 (en) * | 2001-02-16 | 2002-08-22 | Samsung Electronics Co., Ltd. | Method of programming NAND-type flash memory |
CN101034589A (zh) * | 2006-03-08 | 2007-09-12 | 旺宏电子股份有限公司 | 在非易失性存储元件中减少编程干扰的装置及其方法 |
KR100842758B1 (ko) * | 2006-12-27 | 2008-07-01 | 주식회사 하이닉스반도체 | 낸드 플래시 메모리 소자의 프로그램 방법 및 이를구현하기 위한 프로그램 바이어스 전압 발생장치 |
US20080158991A1 (en) * | 2006-12-29 | 2008-07-03 | Gerrit Jan Hemink | Systems for programming non-volatile memory with reduced program disturb by using different pre-charge enable voltages |
WO2010125695A1 (en) * | 2009-04-30 | 2010-11-04 | Powerchip Corporation | Programming method for nand flash memory device |
TW201428752A (zh) * | 2012-10-08 | 2014-07-16 | Micron Technology Inc | 降低記憶體裝置中之編程干擾 |
CN106663469A (zh) * | 2014-08-07 | 2017-05-10 | 桑迪士克科技有限责任公司 | 用于电流节省和快速编程的适应性选择性位线预充电 |
CN110211620A (zh) * | 2018-02-28 | 2019-09-06 | 三星电子株式会社 | 具有改进的编程性能的存储器设备及其操作方法 |
CN110390971A (zh) * | 2018-04-16 | 2019-10-29 | 三星电子株式会社 | 非易失性存储器装置及其中的编程方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4113166B2 (ja) * | 2004-07-20 | 2008-07-09 | 株式会社東芝 | 半導体記憶装置 |
US7697338B2 (en) | 2006-11-16 | 2010-04-13 | Sandisk Corporation | Systems for controlled boosting in non-volatile memory soft programming |
KR101296289B1 (ko) * | 2007-08-20 | 2013-08-14 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그래밍 방법 |
KR101463584B1 (ko) * | 2008-07-30 | 2014-11-19 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것의 프로그램 방법 |
JP2011040135A (ja) * | 2009-08-13 | 2011-02-24 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP2014175022A (ja) * | 2013-03-06 | 2014-09-22 | Toshiba Corp | 半導体記憶装置及びそのデータ書き込み方法 |
US20150262679A1 (en) * | 2014-03-13 | 2015-09-17 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
-
2020
- 2020-12-30 US US17/137,461 patent/US11322207B1/en active Active
-
2021
- 2021-01-19 CN CN202110067057.3A patent/CN114691103B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020114187A1 (en) * | 2001-02-16 | 2002-08-22 | Samsung Electronics Co., Ltd. | Method of programming NAND-type flash memory |
CN101034589A (zh) * | 2006-03-08 | 2007-09-12 | 旺宏电子股份有限公司 | 在非易失性存储元件中减少编程干扰的装置及其方法 |
KR100842758B1 (ko) * | 2006-12-27 | 2008-07-01 | 주식회사 하이닉스반도체 | 낸드 플래시 메모리 소자의 프로그램 방법 및 이를구현하기 위한 프로그램 바이어스 전압 발생장치 |
US20080158991A1 (en) * | 2006-12-29 | 2008-07-03 | Gerrit Jan Hemink | Systems for programming non-volatile memory with reduced program disturb by using different pre-charge enable voltages |
WO2010125695A1 (en) * | 2009-04-30 | 2010-11-04 | Powerchip Corporation | Programming method for nand flash memory device |
TW201428752A (zh) * | 2012-10-08 | 2014-07-16 | Micron Technology Inc | 降低記憶體裝置中之編程干擾 |
CN106663469A (zh) * | 2014-08-07 | 2017-05-10 | 桑迪士克科技有限责任公司 | 用于电流节省和快速编程的适应性选择性位线预充电 |
CN110211620A (zh) * | 2018-02-28 | 2019-09-06 | 三星电子株式会社 | 具有改进的编程性能的存储器设备及其操作方法 |
CN110390971A (zh) * | 2018-04-16 | 2019-10-29 | 三星电子株式会社 | 非易失性存储器装置及其中的编程方法 |
Also Published As
Publication number | Publication date |
---|---|
US11322207B1 (en) | 2022-05-03 |
CN114691103B (zh) | 2025-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6856400B2 (ja) | 半導体記憶装置及びメモリシステム | |
US9269445B1 (en) | Semiconductor memory device | |
CN109817262B (zh) | 具有增进抗虚置字线干扰的可靠性的存储器和编程方法 | |
US20160240264A1 (en) | Semiconductor memory device | |
US8565020B2 (en) | Semiconductor memory device | |
US9269441B2 (en) | Method for operating non-volatile memory device | |
JP2017216025A (ja) | 半導体記憶装置 | |
US8493796B2 (en) | Nonvolatile semiconductor memory device | |
CN107195325A (zh) | 半导体存储装置 | |
US11961566B2 (en) | Fast bit erase for upper tail tightening of threshold voltage distributions | |
TW202316438A (zh) | 3d nand快閃記憶體及其操作方法 | |
KR101213922B1 (ko) | 반도체 메모리 소자 및 그 동작 방법 | |
US9805801B1 (en) | Memory devices and methods of their operation during a programming operation | |
CN114691103A (zh) | 用于存储装置的编程方法 | |
JP2011233209A (ja) | 半導体記憶装置 | |
US11798639B2 (en) | Memory device and operation method thereof | |
TWI781830B (zh) | 記憶體裝置與其操作方法 | |
US20220328105A1 (en) | Semiconductor device and erasing method | |
TWI736495B (zh) | 用於記憶裝置之編程方法 | |
KR20080090801A (ko) | 낸드 플래시 메모리소자의 소거방법 | |
US20240212760A1 (en) | Semiconductor memory device for performing blind program operation and method of operating the same | |
CN111081303A (zh) | 存储器编程方法、装置、电子设备及计算机可读存储介质 | |
TWI796760B (zh) | 半導體記憶裝置、記憶體系統及半導體記憶裝置之控制方法 | |
TWI871735B (zh) | 記憶體的寫入方法 | |
TWI766559B (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 |