CN112270947B - 用于存储器的编程方法和装置 - Google Patents

用于存储器的编程方法和装置 Download PDF

Info

Publication number
CN112270947B
CN112270947B CN202011178508.2A CN202011178508A CN112270947B CN 112270947 B CN112270947 B CN 112270947B CN 202011178508 A CN202011178508 A CN 202011178508A CN 112270947 B CN112270947 B CN 112270947B
Authority
CN
China
Prior art keywords
memory cells
verification
levels
memory
programming
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011178508.2A
Other languages
English (en)
Other versions
CN112270947A (zh
Inventor
李海波
张超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yangtze Memory Technologies Co Ltd
Original Assignee
Yangtze Memory Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yangtze Memory Technologies Co Ltd filed Critical Yangtze Memory Technologies Co Ltd
Priority to CN202011178508.2A priority Critical patent/CN112270947B/zh
Publication of CN112270947A publication Critical patent/CN112270947A/zh
Application granted granted Critical
Publication of CN112270947B publication Critical patent/CN112270947B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3468Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
    • G11C16/3481Circuits or methods to verify correct programming of nonvolatile memory cells whilst programming is in progress, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate programming
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits

Landscapes

  • Read Only Memory (AREA)

Abstract

本发明涉及非易失性存储设备,包括存储单元阵列和控制单元,所述存储单元阵列中的每个存储单元具有多个可编程级别;所述控制单元,其耦接至所述存储单元阵列,并且被配置为:动态地选择用于在验证周期中进行验证的多个存储单元,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元,为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压,以及在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证。

Description

用于存储器的编程方法和装置
技术领域
本发明涉及存储器,并且具体涉及一种用于非易失性存储器的编程方法和装置。
背景技术
最近,半导体存储器领域受到越来越多的关注。半导体存储器可以是易失性和非易失性的。非易失性半导体存储器(例如NAND闪存)即使在未通电的情况下也能够保持数据,因此已经广泛用于蜂窝电话、数码相机、个人数字助理、移动计算设备、非移动计算设备和其它设备中。
目前,对于NAND闪存,普通采用步进脉冲编程(ISPP)的方法进行编程,即,依次使用多个逐步增加的脉冲编程电压对存储单元进行编程,每个编程过程可以包括编程操作和后续的验证操作。在编程过程期间,在每次对存储单元执行编程操作后使用验证电压来对这些存储单元进行验证,在下一次编程过程期间限制已通过验证的存储单元,对于未通过验证的存储单元继续使用增加后的脉冲编程电压进行编程并验证,直至通过验证的存储单元的数量达到设定值。
然而,在当前的验证操作中,属于不同编程级别或状态的存储单元需要利用不同的验证电压来顺序地进行验证,这增加了编程时间。
因此,需要提供一种用于在非易失性存储器的编程期间以高效方式进行验证的方法和装置,以降低编程时间。
发明内容
提供本发明内容以便介绍一组概念,这组概念将在以下的具体实施方式中做进一步描述。本发明内容并非旨在标识所保护主题的关键特征或必要特征,也不旨在用于限制所保护主题的范围。
本发明的目的在于提供一种用于存储器的编程方法和装置,用于降低编程所需的时间,尤其是降低编程循环期间的验证操作所花费的时间。
根据本说明书实施例的一个方面,提供一种非易失性存储设备,包括:存储单元阵列,所述存储单元阵列中的每个存储单元具有多个可编程级别;以及控制单元,其耦接至所述存储单元阵列,并且被配置为:动态地选择用于在验证周期中进行验证的多个存储单元,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元,为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压,以及在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证。
可选地,在上述非易失性存储设备的一个示例中,所述至少两个不同的目标编程级别包括待验证的目标编程级别中最低的至少两个目标编程级别。
可选地,在上述非易失性存储设备的一个示例中,所述至少两个不同的目标编程级别包括在所述验证周期中首次进行验证的目标编程级别和在所述验证周期之前的验证周期中未验证通过的目标编程级别。
可选地,在上述非易失性存储设备的一个示例中,所述至少两个不同的目标编程级别包括在所述验证周期之前的不同验证周期中未验证通过的目标编程级别。
可选地,在上述非易失性存储设备的一个示例中,所述至少两个不同的目标编程级别包括相邻的目标编程级别或不相邻的目标编程级别。
可选地,在上述非易失性存储设备的一个示例中,在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证包括:在提供所述验证电压之后的第一验证时间段,对与所述至少两个不同的目标编程级别中的第一目标编程级别对应的第一组存储单元进行验证;以及在提供所述验证电压之后的第二验证时间段,对与所述至少两个不同的目标编程级别中的第二目标编程级别对应的第二组存储单元进行验证,其中,所述第一验证时间段和所述第二验证时间段与所述验证电压相关联。
根据本说明书的实施例的另一方面,提供一种用于非易失性存储设备的方法,所述非易失性存储设备包括存储单元阵列,所述存储单元阵列中的每个存储单元具有多个可编程级别,并且所述方法包括:动态地选择用于在验证周期中进行验证的多个存储单元,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元,为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压,以及在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证。
可选地,在上述方法的一个示例中,所述至少两个不同的目标编程级别包括待验证的目标编程级别中最低的至少两个目标编程级别。
可选地,在上述方法的一个示例中,所述至少两个不同的目标编程级别包括在所述验证周期中首次进行验证的目标编程级别和在所述验证周期之前的验证周期中未验证通过的目标编程级别。
可选地,在上述方法的一个示例中,所述至少两个不同的目标编程级别包括在所述验证周期之前的不同验证周期中未验证通过的目标编程级别。
根据本说明书的实施例的又一方面,提供一种用于非易失性存储设备的装置,所述非易失性存储设备包括存储单元阵列,所述存储单元阵列中的每个存储单元具有多个可编程级别,并且所述装置包括:动态地选择用于在验证周期中进行验证的多个存储单元的模块,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元,为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压的模块,以及在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证的模块。
按照本发明实施例的一种电子设备,包括:存储器,用于存储可执行指令;处理器,耦合至所述存储器,用于在执行所述可执行指令时使得所述电子设备执行本文所述的方法。
按照本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被计算机执行时能够执行本文所述的方法。
应当注意,以上一个或多个方面包括以下详细描述以及在权利要求中具体指出的特征。下面的说明书及附图详细阐述了所述一个或多个方面的某些说明性特征。这些特征仅仅指示可以实施各个方面的原理的多种方式,并且本公开内容旨在包括所有这些方面和其等同变换。
附图说明
以下将结合附图描述所公开的多个方面,这些附图被提供用以说明而非限制所公开的多个方面。
图1示出了根据实施例的非易失性存储器装置的示意图。
图2是根据本发明的实施例用于存储器装置的编程方法的示意流程图。
图3示出了根据本发明的实施例的一种使用双感测操作进行固定验证的方法。
图4示出了根据本发明的实施例的一种使用双感测操作进行动态验证的方法。
图5示出了根据本发明的实施例的另一种使用双感测操作进行动态验证的方法。
图6示出了在当前编程过程期间的感测节点处的放电过程的示例性电压变化图。图7示出了在根据本发明的实施例的编程过程期间、采用双感测算法的感测节点处的放电过程的示例性电压变化图。
图8是根据本发明的实施例用于存储器装置的编程方法的示例流程图。
图9是根据本发明的实施例用于对存储器装置进行编程的电子设备。
具体实施方式
现在将参考多种示例性实施方式来讨论本公开内容。应当理解,这些实施方式的讨论仅仅用于使得本领域技术人员能够更好地理解并从而实施本公开内容的实施例,而并非教导对本公开内容的范围的任何限制。
在当前的NAND编程验证操作中,每个编程级别被指派一个验证电压。当要验证同一个级别的至少一个存储单元时,对所选择的字线WL施加对应的验证电压,其中该验证电压在感测节点SO放电过程期间需要与存储单元的阈值电压进行比较以判断该级别的存储单元是否通过验证。NAND单元的SO放电结果可以被存储在页缓存器的锁存器中,然后将其用于确定该单元的编程结果,即通过验证从而编程结束或未通过验证从而继续编程。
在存储单元的编程过程期间,验证操作中的关键过程是SO放电过程。在预定的放电时间段期间,在感测节点SO处累积的电荷可以通过位线BL和沟道进行放电。如果在该预定的放电时间段期间的总放电量足以使得感测节点SO处发生明显的压降,则可以将相应存储单元的阈值电压认为低于验证电压,这表示该存储单元未通过验证且需要被再次编程和验证。另一方面,如果在该预定的放电时间段期间的总放电量较小,即放电后剩余的电量或电压大于预定电压,则表示该存储单元通过了验证且在下一次编程循环中被限制编程。由此可见,在当前的放电过程中,决定验证结果(即是否通过验证)的关键因素是总放电量,即放电电流与放电时间的积分。由于在当前的验证操作中,所有存储单元都共享相同的放电或验证时间段(即,所有存储单元的放电时间段都相同),因此验证结果仅取决于放电电流,从而存储单元的阈值电压与验证电压之间的比较结果也仅取决于放电电流。这使得属于不同目标编程级别的存储单元需要利用不同的字线WL偏置电压以顺序或串行的方式来进行验证,这将花费较多的验证时间。
在本文中,术语“目标编程级别”指的是存储单元要被编程至的目标状态或对应于存储单元要被编程至的目标阈值电压。举例而言,每个存储单元可以存储1比特数据或2比特数据或更多比特数据,因此可以是单级单元(SLC)类型、多级单元(MLC)类型、三级单元(TLC)类型、四级单元(QLC)类型或更高级类型。每个存储单元可以保持Q个可能的编程级别中的一个级别(即目标编程级别,其也可以被称作编程状态,且可以对应于目标阈值电压),其中Q是等于或大于2的正整数。对于SLC而言,Q=2(即编程级别L0、L1),对于MLC而言,Q=4(即编程级别L0、L1、L2、L3),对于TLC而言,Q=8(即编程级别L0-L7),以及对于QLC而言,Q=16(即编程级别L0-L15),等等。需要注意的是,由于L0是擦除态,因此无需对L0级别的存储单元进行编程和验证。需要理解的是,在下文中描述的要被编程至目标编程级别的存储单元指的是需要进行编程和验证的存储单元。为简单起见,可以将本文中描述的要被编程至目标编程级别Ln的一个或多个存储单元简称为Ln存储单元,例如L1存储单元指的是要被编程至L1级别的一个或多个存储单元,依此类推。
为了解决上述问题,本申请提出了在要被分别编程至不同目标编程级别的多个存储单元的编程期间的一种验证方法,其是利用多重感测算法(例如双感测算法)对要被分别编程至不同目标编程级别的至少两组存储单元同时开始或并行地进行验证的方法,例如包括对应于两个目标编程级别的两组存储单元(如低级别LLow和高级别LHigh的两组存储单元),包括对应于三个目标编程级别的三组存储单元(如低级别LLow、中等级别LMedium和高级别LHigh的三组存储单元),或包括对应于任意数量个编程级别(如L1至Ln)的多组存储单元等等。该方法针对L1存储单元至Ln存储单元的多组存储单元使用不同的放电时间段或验证时间段(例如,针对LLow存储单元使用短放电时间段,针对LMedium存储单元使用大于短放电时间段的中等放电时间段,针对LHigh存储单元使用大于短放电时间段和/或中等放电时间段的长放电时间段等等)和相同的验证电压,从而可以对这些存储单元并行地进行验证以节省验证时间从而节省编程时间。在本文的实施例中,针对LLow存储单元使用较短的放电时间段可以使得该存储单元在放电过程期间有效地降低放电量,从而使其目标阈值电压较低且较容易通过验证。另一方面,针对LHigh存储单元使用较长的放电时间段可以使得该存储单元在放电过程期间增加放大量,从而将其目标阈值电压置于较高值。需要理解的是,虽然在本文中使用了词语“低级别存储单元”、“中等级别存储单元”和“高级别存储单元”来描述要被编程至不同目标编程级别的多组存储单元,但上述词语仅是用于示例目的而非限制目的,在其它实施例中或在实际应用中可以采用任意合适的词语来描述要被编程至不同目标编程级别的多组存储单元。
下面将结合附图来详细描述本发明的各个实施例。
图1示出了根据本发明的实施例的非易失性存储器装置100。非易失性存储器装置100可以包括具有多个存储单元C(1,1)至C(M,N)的存储单元阵列102、控制电路或控制器104以及感测电路106,其中M和N是正整数。在本发明的一些实施例中,感测电路106可以包括多个感测节点(图中未示出),每个感测节点分别耦合至存储单元的位线BL1至BLN,其中,感测电路通过感测选定位线BLn上的电压或电流来检测目标存储单元的状态或阈值电压。在本申请的一些例子中,非易失性存储器装置100可以是NAND型闪存,例如3D NAND闪存。N个存储单元可以耦合到相同的对应字线WL,并且M个存储单元可以耦合到相同的对应位线BL。例如,存储单元C(1,1)至C(1,N)可以耦合到字线WL1,存储单元C(M,1)至C(M,N)可以耦合到字线WLM。在一些实施例中,可以通过控制电路104经由字线对存储单元施加编程电压而同时对耦合到同一字线的存储单元进行编程。存储单元C(1,1)至C(M,1)可以耦合到位线BL1,存储单元C(1,N)至C(M,N)可以耦合到位线BLN。如图1所示,存储单元阵列102的一个端子经由位线晶体管Tb耦合到位线,而另一个端子经由源极线晶体管Ts耦合到源极线。
在本文的实施例中,存储单元C(1,1)至C(M,N)中的每一个可包括晶体管Tc。晶体管Tc可以是例如浮栅晶体管或电荷捕获晶体管。在用于存储单元C(1,1)至C(M,N)的编程操作的编程循环期间,存储单元C(1,1)至C(M,N)的晶体管Tc的栅极端子可以从字线WL1到WLM接收编程脉冲,并且晶体管Tc的位线端子可以从位线BL1到BLN接收位线偏置电压。在下一个编程循环期间,编程脉冲的电压可以按步长增大。该方法通常称为增量步进脉冲编程(ISSP)。ISSP允许电子注入至晶体管Tc的栅极结构,从而将晶体管Tc的阈值电压按步长电压增大。晶体管Tc的阈值电压将增大以通过对应目标编程级别的验证电压。因此,可以根据存储单元C(1,1)至C(M,N)的目标阈值电压来识别存储单元C(1,1)至C(M,N)的目标编程级别。
图2是根据本发明的实施例的用于存储器装置的编程方法200的示意流程图。在一些实施例中,方法200可以由图1中所示的存储器装置来执行,包括图2所示的步骤S202至S236,但不限于图2中所示的顺序和步骤。
在步骤202处,对待编程的多个存储单元施加编程电压以进行编程。例如,通过控制电路或控制器在存储单元的字线上施加编程电压来进行编程。在本文的实施例中,待编程的多个存储单元包括分别要被编程到不同目标编程级别的两组或更多组存储单元,例如分别要被编程到L1级别、L2级别和/或Ln级别的多组存储单元。
在步骤204处,在编程操作后,同时对所编程的至少一组存储单元(例如,在其字线上)施加相同的验证电压来执行阈值电压测试(即验证操作),以通过判断每组存储单元中的每一个的阈值电压是否大于等于该验证电压来验证该存储单元是否完成编程。在本发明的一些实施例中,对于一组存储单元中的每个存储单元,基于该存储单元的目标编程级别来预先设定相对应的验证时间段或放电时间段。在本文的实施例中,为简单起见,以对应于两个不同目标编程级别的两组存储单元为例来进行说明。例如,两组存储单元可以包括一组要被编程至较低编程级别LLow的存储单元(可简称为LLow存储单元)和另一组要被编程至较高编程级别LHigh的存储单元(可简称为LHigh存储单元),其中,针对LLow存储单元预先设定较短的验证时间段,针对LHigh存储单元预先设定较长的验证时间段。需要理解的是,本文中限定的多组存储单元可以包括两组或大于两组的任意数量的存储单元,且每组存储单元所对应的目标编程级别与其它组存储单元的目标编程级别不同。
针对特定存储单元的验证操作可以利用感测节点来实现,例如通过以下方式来实现:针对与特定存储单元对应的感测节点施加特定感测电压,以及将该感测节点放电一段时间后获得的感测电压与预定电压相比较来判断该特定存储单元的验证是否通过。例如,如果该感测节点上的感测电压大于或等于预定电压,则判断该存储单元通过验证;而如果该感测节点上的感测电压小于预定电压,则判断该存储单元未通过验证。在本发明的一些实施例中,针对两个不同编程级别的存储单元的验证操作可以通过与该存储单元相对应的感测节点处的双感测操作或算法来实现,如以下针对具体步骤206-232所描述的。
在步骤206处,可以对与各个存储单元相对应的各个感测节点施加初始预定电压,以对各个感测节点进行预充电。例如,第一感测节点与要验证的第一存储单元(例如LLow存储单元)相对应,第二感测节点与要验证的第二存储单元(例如LHigh存储单元)相对应。
在步骤208处,在将第一和第二感测节点预充电到特定电压(例如所施加的初始预定电压)后,对所述第一和第二感测节点同时进行放电。在本发明的一些实施例中,针对与各个存储单元相对应的各个感测节点可以预先设定分别的预定电压,以用于与对感测节点放电后获得的感测电压做比较。
在步骤210处,在放电经过对应于LLow存储单元的第一验证时间段之后,暂停对第一感测节点的放电。可选地,在暂停对第一感测节点的放电时,可以同时暂停或不暂停对第二感测节点的放电。
在步骤212处,可以获得针对第一感测节点的第一感测电压,例如可以通过感测电路或检测器来获得该感测电压。
在步骤214处,将获得的第一感测电压与对应于该第一感测节点的第一预定电压相比较,以判断该第一感测电压是否大于等于该第一预定电压。如果第一感测电压大于或等于第一预定电压(“是”),则表示与第一感测节点相对应的LLow存储单元的目标阈值电压大于或等于验证电压,从而方法流程200进行到步骤216处,指示针对与第一感测节点对应的LLow存储单元的验证通过。另一方面,如果第一感测电压小于第一预定电压(“否”),则表示与第一感测节点相对应的LLow存储单元的目标阈值电压小于验证电压,从而方法流程200进行到步骤218处,指示与第一感测节点对应的LLow存储单元未通过验证。
当在步骤216处确定LLow存储单元验证通过后,流程200转到步骤220,在此存储该验证结果(例如指示LLow存储单元的验证通过的第一验证结果),且确定LLow存储单元结束编程。
当在步骤218处确定LLow存储单元未通过验证后,流程200转到步骤222,在此存储该验证结果(例如指示LLow存储单元的验证未通过的第一验证结果),且确定需要在下一次编程期间继续对LLow存储单元进行编程,例如可以重新转到步骤202,以在下一次编程循环中对LLow存储单元进行编程。在一些例子中,在216和218处的针对LLow存储单元的验证结果可以被存储在用于存储数据的第一部件中,例如第一锁存器、第一暂存器、第一存储表或存储表的第一单元中。
在本文的实施例中,优选地,在暂停对第一感测节点的放电时(如步骤210所示),可以不暂停对第二感测节点的放电(即,继续对第二节点进行放电)。可选地,可以在暂停对第一感测节点的放电时同时暂停对第二感测节点的放电,直到获得第一感测节点的感测电压或确定了针对LLow存储单元的验证结果后再恢复对第二感测节点的放电。在对第二感测节点放电经过与LHigh存储单元相对应的第二验证时间段之后,可以暂停对第二感测节点的放电,如在步骤224处所示。
在步骤226处,在暂停对第二感测节点的放电后可以获得针对该第二感测节点的第二感测电压。
在步骤228处,将获得的第二感测电压与针对第二感测节点预先设定的第二预定电压相比较,以判断该第二感测电压是否大于等于该第二预定电压。如果第二感测电压大于或等于第二预定电压(“是”),则表示与第二感测节点相对应的LHigh存储单元的目标阈值电压大于或等于验证电压,从而方法流程200进行到步骤230处,指示针对与第二感测节点对应的LHigh存储单元的验证通过。另一方面,如果第二感测电压小于第二预定电压(“否”),则表示与第二感测节点相对应的LHigh存储单元的目标阈值电压小于验证电压,从而方法流程200进行到步骤232处,指示与第二感测节点对应的LHigh存储单元未通过验证。
当在步骤230处确定LHigh存储单元验证通过后,流程200转到步骤234,在此存储该验证结果(例如指示LHigh存储单元的验证通过的第二验证结果),且确定LHigh存储单元结束编程。
当在步骤232处确定LHigh存储单元未通过验证后,流程200转到步骤236,在此存储该验证结果(例如指示LHigh存储单元的验证未通过的第二验证结果),且确定需要在下一次编程期间继续对LHigh存储单元进行编程,例如可以重新转到步骤202,以在下一次编程循环中对LHigh存储单元进行编程。在一些例子中,在230和232处的针对LHigh存储单元的验证结果可以被存储在用于存储数据的第二部件中,例如,第二锁存器、第二暂存器、第二存储表或存储表的第二单元中。
需要理解的是,图2所述的编程方法还可以应用于第三存储单元或更多存储单元(如图2中的步骤226后的省略号所表示的),该第三存储单元或更多存储单元可以包括在待编程的多个存储单元中。在一些例子中,可以以类似于针对第一存储单元和第二存储单元的验证方式来对第三存储单元进行验证操作。
需要指出的是,在本发明的一个实施例中,可以对将要被编程到不同目标编程级别的至少两组存储单元中的每组存储单元预先分配固定的验证电压和固定的验证时间段以用于多个编程循环中,其中,一组存储单元中的两个或更多个存储单元可以共享相同的固定验证电压但分别被分配不同的固定验证时间段。例如,一组目标编程级别为LLow的存储单元和另一组目标编程级别为LHigh的存储单元可以共享相同的验证电压Vpv_LH,但LLow存储单元被分配验证时间段Tdev_L(也可被称为放电时间段),LHigh存储单元被分配不同的验证时间段Tdev_H,其中时间段Tdev_H大于或包含时间段Tdev_L。在下面的表1中示出了在多个编程循环中目标编程级别不同的两组存储单元的验证电压和验证时间段的分配情况。
表1
在本发明的实施例中,表1中的目标编程级别LLow和目标编程级别LHigh可以是相邻的编程级别,例如LLow为L1,LHigh为L2,或者LLow为L3,LHigh为L4,等等。在另一些实施例中,目标编程级别LLow和目标编程级别LHigh可以是不相邻的编程级别,例如LLow为L1,LHigh为L3,或者LLow为L2,LHigh为L5,等等。
虽然上文列出了对应于不同目标编程级别的两组存储单元,但本发明的编程验证方法也可以适用于对应于不同目标编程级别的两组以上存储单元的情况,例如,三组或任意多组存储单元,如下表2所示,示出了在多个编程循环中对应于三个目标编程级别(例如LLow、LMedium、LHigh)的三组存储单元的验证电压和验证时间段的分配情况。
表2
在本发明的实施例中,表2中的目标编程级别LLow、LMedium和LHigh可以是相邻的编程级别,例如LLow为L1,LMedium为L2,LHigh为L3,或者LLow为L4,LHigh为L5,LHigh为L6,等等。在另一些实施例中,目标编程级别LLow、LMedium和LHigh可以是不相邻的编程级别,例如LLow为L1,LMedium为L3,LHigh为L5,或者LLow为L2,LHigh为L4,LHigh为L6,等等。
在本发明的另一个实施例中,在每一个验证周期中可以对将要被编程到不同目标编程级别的至少两组存储单元进行动态地选择,并且为动态选择的至少两组存储单元动态地分配验证电压和验证时间段,其中,同一组存储单元中的两个或更多个存储单元可以共享相同的验证电压但分别被分配不同的验证时间段。
在下面的表3中示出了在多个编程循环中目标编程级别不同的两组存储单元的验证电压和验证时间段的动态分配情况。例如,起初,针对第1编程循环,一组目标编程级别为LLow1的存储单元和一组目标编程级别为LLow2的存储单元可以共享相同的验证电压Vpv_L12,但LLow1存储单元被分配验证时间段Tdev_L1(也可被称为放电时间段),LLow2存储单元被分配不同的验证时间段Tdev_L2,其中时间段Tdev_L2大于或包含时间段Tdev_L1;一组目标编程级别为LMedium1的存储单元和一组目标编程级别为LMedium2的存储单元可以共享相同的验证电压Vpv_M12,但LMedium1存储单元被分配验证时间段Tdev_M1(也可被称为放电时间段),LMedium2存储单元被分配不同的验证时间段Tdev_M2,其中时间段Tdev_M2大于或包含时间段Tdev_M1。经过第1编程循环,一组LLow1的存储单元通过验证,结束编程。到了第2编程循环中,一组目标编程级别为LLow2的存储单元和一组目标编程级别为LMedium1的存储单元可以被动态地配置为共享相同的验证电压Vpv_LM21,但LLow2存储单元被分配验证时间段Tdev_L2’,LMedium1存储单元被分配不同的验证时间段Tdev_M1’,其中时间段Tdev_M1’大于或包含时间段Tdev_L2’;一组目标编程级别为LMedium2的存储单元和一组目标编程级别为LHigh1的存储单元可以被动态地配置为共享相同的验证电压Vpv_MH21,但LMedium2存储单元被分配验证时间段Tdev_M2’,LHigh1存储单元被分配不同的验证时间段Tdev_H1’,其中时间段Tdev_H1’大于或包含时间段Tdev_M2’
表3
一个编程循环可以包括多个验证周期。与固定验证的方式相比,在上述动态验证方式中,控制器可以动态地选择与至少两个目标编程级别相对应的至少两组存储单元,并为所述至少两组存储单元分配相同的验证电压,可以减少一个编程循环中的验证周期的个数,从而进一步缩短编程时间。例如,在图3所示的固定分配验证电压和验证时间段的方法中,第四、第五、第六、第八、第九、第十一编程循环需要三次验证。而图4所示的动态分配验证电压和验证时间段的方法中,第四、第五、第六、第八、第九、第十一编程循环只需要两个验证周期,从而缩短了编程时间。
在另一个实施例中,控制器可以向具有相邻或不相邻的目标编程级别的两组以上(例如,三组)存储单元提供相同的验证电压。
图5示出了根据本申请的一个实施例的使用双感测操作进行动态验证的方法。如图5所示,存储单元阵列中的每个存储单元具有多个可编程级别。例如,第一组存储单元、第二组存储单元、第三组存储单元、第四组存储单元、第五组存储单元、第六组存储单元、第七组存储单元、第八组存储单元的目标编程级别分别是L1、L2、L3、L4、L5、L6、L7、L8。例如,针对第三编程循环,控制器为第一、第二和第三组存储单元提供相同的验证电压V_pv_123,并且分别配置不同的验证时间段T_dev_1、T_dev_2、T_dev_3。针对目标编程级别L1的第一组存储单元经验证通过。接下来,针对第四编程循环,控制器还为第二、第三和第四组存储单元提供相同的验证电压V_pv_234,并且分别配置不同的验证时间段T_dev_2’、T_dev_3’、T_dev_4’,其中,第二和第三组存储单元分别包括与在上个验证周期中未验证通过的目标编程级别L2和L3相对应的一个或多个存储单元,第4组存储单元包括与在该验证周期中首次进行验证的目标编程级别L4相对应的一个或多个存储单元。经过第五编程循环,针对目标编程级别L3的第三组存储单元经验证通过。针对第六编程循环,如果第五组存储单元开始验证,控制器动态地选择第二、第四、第五组存储单元提供相同的验证电压V_pv_245,并且为它们分别分配不同的验证时间段T_dev_2’、T_dev_4’、T_dev_5。针对后续的编程循环,控制器重复上述使用双感测操作进行动态验证的方法。
在上述实施例中,在使用双感测操作的验证过程中,向不同目标编程级别的各组存储单元动态地分配验证电压和验证时间段。针对每个目标编程级别的存储单元,需要仔细校准对其分配的验证电压、验证时间段。优选地,对于具有一个特定目标编程级别的一组存储单元而言,其验证电压、验证时间段被配置为使得在各个编程循环中的放电量是相同的。
图6示出了在当前编程过程期间的感测节点处的放电过程的示例性电压变化图600。
如图6所示,在与待验证的存储单元对应的感测节点SO处施加初始预定电压(例如SO电压)以对该感测节点SO进行预充电。在一段时间后(例如预充电完成后)对感测节点SO进行放电,如图6中的“放电开始”所指示的。在对感测节点放电一段时间后暂停对该感测节点的放电,如图6中的“放电结束”所指示的。如图6所示,在经过从“放电开始”到“放电结束”的一段时间后,由于放电导致感测节点处的电压下降。在暂停对感测节点的放电后可以获得针对该感测节点的当前感测电压(例如“感测结果”处所示的),并将其与预定电压相比较,以判断与该感测节点相对应的存储单元是否通过验证。例如,如果该感测电压大于或等于预定电压,则表示与该感测节点相对应的存储单元通过验证,也即该存储单元的当前阈值电压大于或等于验证电压(达到目标阈值电压)。如果该感测电压小于预定电压,则表示对应的存储单元未通过验证,也即该存储单元的当前阈值电压小于验证电压(未达到目标阈值电压),需要对该存储单元继续进行编程和验证。
根据图6的放电过程可看出,当前的感测算法是一次针对一个编程级别的存储单元进行验证(例如单感测算法),从而针对多个不同编程级别的存储单元需要依次进行验证,且验证不同编程级别的多个存储单元所花费的总时间段是各个存储单元所花的验证时间段之和。举例而言,如果针对L1存储单元所需的验证时间段是5秒,针对L2存储单元所需的验证时间段是10秒,则采用当前感测算法针对L1和L2存储单元的总验证时间段是15秒。需要理解的是,此处的示例性验证时间段仅是出于举例目的,并非是对本申请的验证时间段的任何限制。
图7示出了在根据本发明的实施例的编程过程期间、采用双感测算法的感测节点处的放电过程的示例性电压变化图700。需要理解的是,虽然此处示出的是采用双感测算法针对与两个存储单元对应的感测节点的放电过程,但本发明并不限于两个存储单元的验证,还可以采用多感测算法对多个存储单元同时进行验证。
在图7所示出的感测结果_1是针对一组存储单元中较低编程级别的一个(LLow存储单元)的感测结果,而感测结果_2是针对该组存储单元中较高编程级别的另一个(LHigh存储单元)的感测结果。在图7所示的放电过程期间,在与待验证的两个存储单元对应的两个感测节点SO处施加相同的初始预定电压(例如SO电压)以对分别的感测节点SO进行预充电。在一段时间后对两个感测节点SO进行放电,如图7中的“放电开始”所指示的。在该时间点处,对分别与两个存储单元对应的两个感测节点同时开始进行放电,即,与两个存储单元对应的两个感测节点均被接通。在放电经过一段时间后,例如与LLow存储单元对应的较短放电时间段或较短验证时间段,可以暂停对LLow存储单元的放电(例如关断与LLow存储单元对应的感测节点),并获得该感测节点处的感测电压_1(例如感测结果_1),如图7的“放电暂停”和“感测结果_1”处所示的。在本发明的实施例中,在暂停对LLow存储单元的放电时可以不暂停对LHigh存储单元的放电,或者可选地,暂停对LHigh存储单元的放电。将该感测电压_1与对应于LLow存储单元的预定电压VLow相比较以判断LLow存储单元是否通过验证。在本文的实施例中,当感测电压_1大于或等于预定电压VLow时,可以认为LLow存储单元的阈值电压大于或等于验证电压,即该LLow存储单元通过验证;否则,认为LLow存储单元的阈值电压小于验证电压,即该LLow存储单元未通过验证。该验证结果(例如验证结果_1)可以被存储在用于存储数据的第一部件中,该第一部件例如是以下中的任意一项:锁存器、暂存器、存储表、存储表中的单元。
在获得感测结果_1(或是在存储了相应的验证结果_1)时继续对LHigh存储单元进行放电或在对LHigh存储单元暂停放电一段时间后对LHigh存储单元恢复放电(例如图4所示的“放电暂停”和“放电恢复”所指示的)。如图7所示,在对LHigh存储单元恢复放电后,在LHigh存储单元从放电开始所经过的时间段等于针对LHigh存储单元预先设定的较长放电时间段或验证时间段时,对LHigh存储单元放电结束(例如关断与LHigh存储单元对应的感测节点),并获得针对LHigh存储单元的感测电压_2(例如感测结果_2)。如图7的“放电结束”和“感测结果_2”处所示的。将该感测电压_2与对应于LHigh存储单元的预定电压VHigh相比较以判断LHigh存储单元是否通过验证。在本文的实施例中,当感测电压_2大于或等于预定电压VHigh时,可以认为LHigh存储单元的阈值电压大于或等于验证电压,即该LHigh存储单元通过验证;否则,认为LHigh存储单元的阈值电压小于验证电压,即该LHigh存储单元未通过验证。该验证结果(例如验证结果_2)可以被存储在用于存储数据的第二部件中,该第二部件例如是以下中的任意一项:锁存器、暂存器、存储表、存储表中的单元。在一些实施例中,用于存储数据的第一部件和第二部件可以被增加到页缓存器中。
根据图7的放电过程可看出,本申请的多感测算法(例如图7中的示例性双感测算法)可以针对要被编程至多个目标编程级别的多个存储单元同时开始进行验证,从而针对这些多个存储单元可以并行地进行验证,且验证不同目标编程级别的多个存储单元所花费的总时间段可以等于或约等于验证最高编程级别的存储单元所花的时间段。举例而言,如果针对较低编程级别的L1存储单元所需的验证时间段是5秒,针对较高编程级别的L2存储单元所需的验证时间段是10秒,则采用本申请的双感测算法针对L1和L2存储单元的总验证时间段可以是10秒(在对应于L1存储单元的感测节点暂停放电时不暂停对应于L2存储单元的感测节点的放电的情况下),即两个存储单元所花的总验证时间段对应于较高编程级别的存储单元进行验证所花的时间段(其是预先分配给较高编程级别的存储单元的验证时间段)。需要理解的是,此处的示例性验证时间段仅是出于举例目的,并非是对本申请的验证时间段的任何限制。
图8是根据本发明实施例的用于存储器装置的编程方法的示例流程图800。在本文的实施例中,该存储器装置包括具有多个存储单元的存储单元阵列,如图1中所示。
在框802处,动态地选择用于在验证周期中进行验证的多个存储单元,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元。在一些例子中,多个存储单元至少包括要被编程至第一组目标编程级别的第一存储单元(例如本文的表1和表2中所示的LLow存储单元)和要被编程至高于所述第一目标编程级别的第二目标编程级别的第二组存储单元(例如本文的表1和表2中所示的LMedium存储单元或LHigh存储单元)。每一组存储单元包括要被编程至相应目标编程级别的全部存储单元中的一个或多个存储单元。在本发明的一些例子中,上述第一目标编程级别LLow、第二目标编程级别LMedium可以是相邻的级别,或者可以是不相邻的级别。
在本发明的另一些实施例中,多个存储单元还可以包括要被编程至第三目标编程级别的第三组存储单元(例如本文的表2所示的LHigh存储单元),所述第三目标编程级别不同于第一目标编程级别和第二目标编程级别。在一些例子中,第一目标编程级别LLow、第二目标编程级别LMedium和第三目标编程级别LHigh可以是依次相邻的级别,或者三个目标编程级别中的任意两个级别可以不相邻,例如LLow为L1、LMedium为L3、LHigh为L5。
在框804处,为多个存储单元提供与至少两个不同的目标编程级别对应的相同的验证电压。
在框806处,在验证周期中按照不同的目标编程级别依次对多个存储单元中的每组存储单元进行验证。在一些实施例中,在经过第一验证时间段之后,可以获得针对第一组存储单元的第一验证结果。在经过第一验证时间段之后,可以暂停对第一组存储单元的验证(或者可选地,同时暂停或不暂停对第二组存储单元的验证),并将获得的第一组存储单元的第一验证结果存储在用于存储数据的第一部件中。在经过第二验证时间段之后,可以获得针对第二存储单元的第二验证结果,其中,第二验证时间段包含第一验证时间段。在一些实施例中,在经过第二验证时间段之后,可以暂停对第二存储单元的验证,并将获得的第二存储单元的第二验证结果存储在用于存储数据的第二部件中。
可选地,在多个存储单元还包括第三组存储单元的情况下,在经过第三验证时间段之后,可以暂停对第三组存储单元的验证,并将获得的第三组存储单元的第三验证结果存储在用于存储数据的第三部件中,其中,第三验证时间段包含第一验证时间段和第二验证时间段。
图9是根据本发明的实施例的用于对存储器装置中的存储单元进行编程的电子设备900。图9所示的电子设备900可以利用软件、硬件或软硬件结合的方式来实现。
如图9所示,电子设备900可以包括处理器902和存储器904,其中,存储器904用于存储可执行指令,所述可执行指令当被执行时使得处理器902执行本文所述的方法。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,当计算机程序被执行时,使得计算机执行本文所述的方法。
应当理解,以上描述的方法中的所有操作都仅仅是示例性的,本公开并不限制于方法中的任何操作或这些操作的顺序,而是应当涵盖在相同或相似构思下的所有其它等同变换。
已经结合各种装置和方法描述了处理器。这些处理器可以使用电子硬件、计算机软件或其任意组合来实施。这些处理器是实施为硬件还是软件将取决于具体的应用以及施加在系统上的总体设计约束。作为示例,本公开中给出的处理器、处理器的任意部分、或者处理器的任意组合可以实施为微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、状态机、门逻辑、分立硬件电路、以及配置用于执行在本公开中描述的各种功能的其它适合的处理部件。本公开给出的处理器、处理器的任意部分、或者处理器的任意组合的功能可以实施为由微处理器、微控制器、DSP或其它适合的平台所执行的软件。
本领域技术人员应当理解,以上公开的各个实施例可以在不偏离发明实质的情况下做出各种修改和变形,这些修改和变形都应当落入本发明的保护范围之内,并且,本发明的保护范围应当由权利要求书来限定。

Claims (13)

1.一种非易失性存储设备,包括:
存储单元阵列,所述存储单元阵列中的每个存储单元具有多个可编程级别;以及
控制单元,其耦接至所述存储单元阵列,并且被配置为:在编程期间,动态地选择用于在验证周期中进行验证的多个存储单元,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的,
为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压,以及
在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证,从而对所述多个存储单元并行地进行验证以节省验证时间。
2.根据权利要求1所述的设备,其中,所述至少两个不同的目标编程级别包括待验证的目标编程级别中最低的至少两个目标编程级别。
3.根据权利要求1所述的设备,其中,所述至少两个不同的目标编程级别包括在所述验证周期中首次进行验证的目标编程级别和在所述验证周期之前的验证周期中未验证通过的目标编程级别。
4.根据权利要求1所述的设备,其中,所述至少两个不同的目标编程级别包括在所述验证周期之前的不同验证周期中未验证通过的目标编程级别。
5.根据权利要求1所述的设备,其中,所述至少两个不同的目标编程级别包括相邻的目标编程级别或不相邻的目标编程级别。
6.根据权利要求1所述的设备,其中,在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证包括:
在提供所述验证电压之后的第一验证时间段,对与所述至少两个不同的目标编程级别中的第一目标编程级别对应的第一组存储单元进行验证;以及
在提供所述验证电压之后的第二验证时间段,对与所述至少两个不同的目标编程级别中的第二目标编程级别对应的第二组存储单元进行验证,
其中,所述第一验证时间段和所述第二验证时间段与所述验证电压相关联。
7.一种用于非易失性存储设备的方法,所述非易失性存储设备包括存储单元阵列,所述存储单元阵列中的每个存储单元具有多个可编程级别,并且所述方法包括:在编程期间,
动态地选择用于在验证周期中进行验证的多个存储单元,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元,
为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压,以及
在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证,从而对所述多个存储单元并行地进行验证以节省验证时间。
8.根据权利要求7所述的方法,其中,所述至少两个不同的目标编程级别包括待验证的目标编程级别中最低的至少两个目标编程级别。
9.根据权利要求7所述的方法,其中,所述至少两个不同的目标编程级别包括在所述验证周期中首次进行验证的目标编程级别和在所述验证周期之前的验证周期中未验证通过的目标编程级别。
10.根据权利要求7所述的方法,其中,所述至少两个不同的目标编程级别包括在所述验证周期之前的不同验证周期中未验证通过的目标编程级别。
11.一种用于非易失性存储设备的装置,所述非易失性存储设备包括存储单元阵列,所述存储单元阵列中的每个存储单元具有多个可编程级别,并且所述装置包括:在编程期间,
动态地选择用于在验证周期中进行验证的多个存储单元的模块,所述多个存储单元包括分别与至少两个不同的目标编程级别对应的至少两组存储单元,
为所述多个存储单元提供与所述至少两个不同的目标编程级别对应的相同的验证电压的模块,以及
在所述验证周期中按照不同的目标编程级别依次对所述多个存储单元中的每一组存储单元进行验证从而对所述多个存储单元并行地进行验证以节省验证时间的模块。
12.一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,耦合至所述存储器,用于在执行所述可执行指令时使得所述电子设备执行如权利要求7-10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被计算机执行时能够执行如权利要求7-10中任一项所述的方法。
CN202011178508.2A 2020-10-29 2020-10-29 用于存储器的编程方法和装置 Active CN112270947B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011178508.2A CN112270947B (zh) 2020-10-29 2020-10-29 用于存储器的编程方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011178508.2A CN112270947B (zh) 2020-10-29 2020-10-29 用于存储器的编程方法和装置

Publications (2)

Publication Number Publication Date
CN112270947A CN112270947A (zh) 2021-01-26
CN112270947B true CN112270947B (zh) 2023-08-04

Family

ID=74344910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011178508.2A Active CN112270947B (zh) 2020-10-29 2020-10-29 用于存储器的编程方法和装置

Country Status (1)

Country Link
CN (1) CN112270947B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113228188B (zh) * 2021-03-22 2022-08-16 长江存储科技有限责任公司 存储器件及其编程操作

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105164755A (zh) * 2013-02-05 2015-12-16 桑迪士克技术有限公司 使用动态验证电平对选择栅极晶体管和存储器单元进行编程
CN105390157A (zh) * 2014-08-25 2016-03-09 三星电子株式会社 非易失性存储装置和编程验证方法
CN107017028A (zh) * 2015-12-18 2017-08-04 三星电子株式会社 非易失性存储器设备以及对其进行编程的方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602006011451D1 (de) * 2006-06-21 2010-02-11 Hynix Semiconductor Inc Verfahren und Vorrichtung zum elektrischen Programmieren von Halbleiterspeicherzellen
US7599224B2 (en) * 2007-07-03 2009-10-06 Sandisk Corporation Systems for coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US8089815B2 (en) * 2009-11-24 2012-01-03 Sandisk Technologies Inc. Programming memory with bit line floating to reduce channel-to-floating gate coupling
US20140198576A1 (en) * 2013-01-16 2014-07-17 Macronix International Co, Ltd. Programming technique for reducing program disturb in stacked memory structures
KR102122239B1 (ko) * 2013-07-19 2020-06-15 삼성전자 주식회사 비휘발성 메모리 장치 및 그 프로그램 방법
KR102458918B1 (ko) * 2016-02-24 2022-10-25 삼성전자주식회사 메모리 장치 및 메모리 시스템
KR20180088190A (ko) * 2017-01-26 2018-08-03 삼성전자주식회사 비휘발성 메모리 장치 및 그것의 프로그램 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105164755A (zh) * 2013-02-05 2015-12-16 桑迪士克技术有限公司 使用动态验证电平对选择栅极晶体管和存储器单元进行编程
CN105390157A (zh) * 2014-08-25 2016-03-09 三星电子株式会社 非易失性存储装置和编程验证方法
CN107017028A (zh) * 2015-12-18 2017-08-04 三星电子株式会社 非易失性存储器设备以及对其进行编程的方法

Also Published As

Publication number Publication date
CN112270947A (zh) 2021-01-26

Similar Documents

Publication Publication Date Title
KR100805840B1 (ko) 캐시를 이용한 플래시 메모리 장치 및 그것의 프로그램방법
KR101222063B1 (ko) 불휘발성 메모리 장치 및 그 동작방법
US8125827B2 (en) Flash memory systems and operating methods using adaptive read voltage levels
US9679616B2 (en) Power management
US8767477B2 (en) Non-volatile semiconductor memory device
JP4372196B2 (ja) 初期データを用いる不揮発性メモリのパイプライン形プログラミング
JP2008503028A (ja) マルチレベルビットフラッシュメモリのための消去アルゴリズム
KR101089013B1 (ko) 메모리 제어기, 메모리 시스템, 및 메모리 시스템의 제어 방법
TWI536385B (zh) 非揮發性記憶體裝置及其快取程式化方法
US9378823B2 (en) Programming a memory cell to a voltage to indicate a data value and after a relaxation time programming the memory cell to a second voltage to indicate the data value
US10297337B2 (en) Hierarchical fail bit counting circuit in memory device
US20200395087A1 (en) Soft erase and programming of nonvolatile memory
US20070074194A1 (en) Methods for programming flash memory devices using variable initial program loops and related devices
US7382661B1 (en) Semiconductor memory device having improved programming circuit and method of programming same
US8243519B2 (en) Writing method of a nonvolatile memory device
CN114341772A (zh) 半导体存储器中的功率管理
CN112270947B (zh) 用于存储器的编程方法和装置
US10943650B2 (en) Method for programming memory system
JP4724692B2 (ja) 高速プログラム型のmlcメモリ
KR100861378B1 (ko) 플래시 메모리소자의 프로그램 방법
US20170068604A1 (en) Memory system having idle-memory devices and method of operating thereof
TWI784573B (zh) 半導體記憶裝置
CN112270946B (zh) 存储器编程方法、装置及电子设备
US8995198B1 (en) Multi-pass soft programming
JP2007149322A (ja) 低負荷ビットライン構造を有する不揮発性半導体メモリ及びそのプログラミング方法

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