CN106448733B - 非易失性存储器设备、编程方法和其编程验证方法 - Google Patents

非易失性存储器设备、编程方法和其编程验证方法 Download PDF

Info

Publication number
CN106448733B
CN106448733B CN201610665846.6A CN201610665846A CN106448733B CN 106448733 B CN106448733 B CN 106448733B CN 201610665846 A CN201610665846 A CN 201610665846A CN 106448733 B CN106448733 B CN 106448733B
Authority
CN
China
Prior art keywords
fail
program
reference value
value
respect
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
CN201610665846.6A
Other languages
English (en)
Other versions
CN106448733A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN106448733A publication Critical patent/CN106448733A/zh
Application granted granted Critical
Publication of CN106448733B publication Critical patent/CN106448733B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital 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/5621Digital 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/5628Programming or writing circuits; Data input circuits
    • 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
    • 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
    • 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
    • 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/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable 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)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Read Only Memory (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

本发明公开了非易失性存储器设备和编程方法和其编程验证方法。一种用于非易失性存储器设备的编程验证方法,包括:关于第一级执行第一失败位计数操作以生成第一失败位累积值,并且将第一失败位累积值与第一失败参考值相比较以确定编程失败。当第一失败位累积值小于第一失败参考值时,执行用于第二阶段的第二失败位计数操作以生成第二失败位累积值。将第二失败位累积值与第二参考值相比较以确定编程失败。第二失败参考值不同于第一失败参考值。

Description

非易失性存储器设备、编程方法和其编程验证方法
对相关申请的交叉引用
于2015年8月13日提交的并且题目为“Nonvolatile Memory Device and ProgramMethod and Program Verification Method Thereof”的韩国专利申请第10-2015-0114801号通过引用被整体合并于此。
技术领域
在这里描述的一个或多个实施例涉及一种非易失性存储器设备、编程方法和编程验证方法。
背景技术
从包括硅(Si)、锗(Ge)、砷化镓(GaAs)、磷化铟(InP)等等的一个或多个半导体材料制造半导体存储器。
半导体存储器设备包括易失性存储器设备和非易失性存储器设备。被称为闪速存储器设备的一种非易失性存储器设备因为其快速的操作速度、低功率、低噪声和大容量特性,在各个领域中被使用。闪速存储器设备可以使用增量阶跃脉冲编程(ISPP)方案对数据进行编程。在此种方案中,通过执行多个编程循环来对数据进行编程。每个编程循环可以包括将编程脉冲施加到字线的编程步骤和对存储单元的状态进行验证的验证步骤。
在验证步骤中,根据对失败位(例如,未被编程到目标编程状态的存储单元)进行计数的结果来确定编程通过或编程失败。根据该确定的结果来执行下一个编程循环。执行失败位计数操作的时间可能比执行编程步骤或验证读取操作的时间长。因此,下一个编程循环的执行可能由于较长的计数操作而延迟。这降低总的编程速度。
发明内容
根据一个或多个实施例,一种用于非易失性存储器设备的编程验证方法包括:关于多个级中的第一级执行第一失败位计数操作以生成第一失败位累积值;将第一失败位累积值与第一失败参考值相比较以确定编程失败;当第一失败位累积值小于第一失败参考值时,关于级中的第二级执行第二失败位计数操作以生成第二失败位累积值;以及将第二失败位累积值与第二参考值相比较以确定编程失败,其中,关于多个存储单元的验证读取结果被划分到级中,并且其中第二失败参考值不同于第一失败参考值。
根据一个或多个其他实施例,一种非易失性存储器设备的编程验证方法包括:基于第一失败参考值关于多个级中的至少一个执行失败位计数操作以确定编程失败;以及基于不同于第一失败参考值的第二失败参考值关于剩余的级中的至少一个执行失败位计数操作以确定编程失败,其中,关于多个存储单元的验证读取结果被划分到级中。
根据一个或多个其他实施例,一种用于非易失性存储器设备的编程方法包括:向所选择的字线施加编程电压;向所选择的字线施加至少一个验证电压以关于连接到所选择的字线的存储单元执行验证读取操作;以及基于验证读取操作的结果来确定编程通过或编程失败,其中,确定编程通过或编程失败包括基于验证读取操作的结果关于存储单元执行失败位计数操作以生成失败位累积值并且将失败位累积值与失败参考值相比较以确定编程通过,其中,在执行失败位计数操作时改变失败参考值。
附图说明
通过参考附图来详细描述示例性实施例,特征对于本领域技术人员将明显,在附图中:
图1图示出非易失性存储器系统的实施例;
图2图示出非易失性存储器设备的实施例;
图3图示出存储单元阵列的实施例;
图4图示出存储单元的阈值电压分布和存储单元的编程操作的示例;
图5图示出非易失性存储器设备的另一个实施例;
图6图示出通过/失败(P/F)检查器的操作的实施例;
图7图示出图6的操作方法的实施例;
图8图示出多个编程循环的实施例;
图9图示出与图8中的编程循环有关的实施例;
图10图示出P/F检查器的时序图的实施例;
图11图示出非易失性存储器设备的时序图的实施例;
图12图示出参考值管理单元的实施例;
图13图示出非易失性存储器设备的另一个实施例;
图14图示出图13的非易失性存储器设备的操作的实施例;
图15图示出非易失性存储器设备的另一个实施例;
图16图示出图15的非易失性存储器设备的P/F检查器的操作的实施例;
图17图示出与图16的P/F检查器有关的操作方法的实施例;
图18图示出图14的非易失性存储器设备的P/F检查器的另一个操作的实施例;
图19图示出与图18中的P/F检查器的操作有关的操作方法的时序图的实施例;
图20图示出非易失性存储器设备的编程操作的实施例;
图21图示出非易失性存储器设备的单元阵列中的存储块的实施例;
图22图示出存储卡系统的实施例;
图23图示出固态驱动系统的实施例;并且
图24图示出电子系统的实施例。
具体实施方式
现在将在下文中参考附图更全面地描述示例实施例;然而,它们可以具体表现为不同的形式并且不应当被理解为限于在本文阐明的实施例。更确切些,提供这些实施例使得本公开将是彻底的和完全的,并且将向本领域技术人员传达示意性实施方式。可以将实施例组合以形成附加的实施例。
根据示例实施例的非易失性存储器设备可以通过执行多个编程循环对存储单元进行编程。编程循环中的每一个可以包括编程步骤和验证步骤,并且验证步骤可以包括验证读取操作和失败位计数操作。
非易失性存储器设备可以通过经由在失败位计数操作关于多个级中的每一个的计数操作生成计数值和累积值并且将累积值与参考值(或,可变参考值)相比较来确定编程通过或编程失败。非易失性存储器设备可以基于编程通过或编程失败来执行下一个编程循环。在这时,非易失性存储器设备可以在失败位计数操作期间改变与每个级相对应的参考值,并且因此非易失性存储器设备可以在关于所有级的失败位计数操作被执行之前提前确定编程通过或编程失败。可以在编程通过或编程失败被确定之后跳过关于剩余的级的计数操作。因此,可以减少由于失败位计数操作所引起的开销。这意味着非易失性存储器设备的编程性能被提高。
图1图示出包括存储器控制器110和非易失性存储器设备120的非易失性存储器系统100的实施例。在示例实施例中,可以利用一个芯片、一个半导体封装或一个模块来实施非易失性存储器系统100。替换地,可以利用一个芯片、一个半导体封装或一个模块来实施非易失性存储器系统100的存储器控制器110和非易失性存储器设备120中的每一个。非易失性存储器系统100可以连接到外部设备(例如,主机、应用处理器,等等),并且可以用作外部设备的存贮介质。非易失性存储器系统100例如可以是存储卡、记忆棒、或者诸如固态驱动器(SSD)之类的大容量存储介质。
例如,在外部设备的控制下,存储器控制器110可以控制非易失性存储器设备120。存储器控制器110可以向非易失性存储器设备120传送地址ADDR和命令CMD,或者可以与非易失性存储器设备120交换数据和控制信号CTRL。例如,为了将数据存储在非易失性存储器设备120中,存储器控制器401a可以向存储器模块120传送地址ADDR、命令CMD、数据和控制信号CTRL。为了从非易失性存储器设备120读取数据,存储器控制器110可以向非易失性存储器设备120传送地址ADDR、命令CMD和控制信号CTRL。
在示例实施例中,存储器控制器110可以向非易失性存储器设备120传送地址ADDR和命令CMD,并且可以与非易失性存储器设备120交换数据和控制信号CTRL。
存储器控制器110可以包括错误校正电路(ECC)111。ECC 111可以检测和校正从非易失性存储器设备120读取的数据的错误。例如,ECC 111可以生成关于第一数据的纠错码以被存储在非易失性存储器设备120中。ECC 111可以从非易失性存储器设备120中读取第一数据并且可以基于关于第一数据的纠错码来检测和校正第一数据的错误。在示例实施例中,ECC 111可以具有错误校正能力。例如,ECC 111可以在错误校正能力内检测和校正错误位。
非易失性存储器设备120可以根据控制器110的控制进行操作。例如,非易失性存储器设备120可以响应于来自存储器控制器110的信号对数据进行存储(或编程)。非易失性存储器设备120可以响应于来自存储器控制器110的信号而读出所存储的数据。
在示例实施例中,非易失性存储器设备120可以包括NAND闪速存储器。在另一个实施例中,非易失性存储器设备120可以包括另一种类型的存储器,包括但不限于相变随机存取存储器(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)、磁阻RAM(MRAM)、或NOR闪速存储器或者它们的组合。
在示例实施例中,非易失性存储器设备120可以基于增量阶跃脉冲编程(ISPP)方案对来自存储器控制器110的数据进行存储(或编程)。ISPP方案可以包括多个编程循环。每个编程循环可以包括将编程电压施加到所选择的字线的编程步骤和对连接到所选择的字线的存储单元进行验证的验证步骤。可以根据先前编程循环中的验证步骤的验证结果来执行每个编程循环。例如,第二编程循环可以在第一编程循环中的验证步骤的验证结果指示编程失败的情况下被执行,并且可以在第一编程循环中的验证步骤的验证结果指示编程通过的情况下不被执行。
在示例实施例中,验证步骤可以包括读取所选择的存储单元的编程状态的验证读取操作以及根据对通过验证读取操作读取的数据(或值)的失败位进行计数的结果来确定编程失败或编程通过的确定操作。在确定操作期间,可以检测失败位的数量,并且可以通过将失败位的数量与参考值相比较来确定编程失败或编程通过。在示例实施例中,可以根据能够被ECC 111校正的错误位的数量或非易失性存储器设备120的读取裕量来确定参考值。
根据示例实施例的非易失性存储器设备120可以改变在验证步骤的确定操作期间用于确定编程失败或编程通过的参考值,由此使得可以提前确定编程失败或编程通过。因而,可以提高非易失性存储器设备120的编程速度。将参考附图来描述非易失性存储器设备120和其操作方法。
图2是图示出图1的非易失性存储器设备的框图。参考图1和图2,非易失性存储器设备120可以包括存储单元阵列121、地址译码器122、电压生成器123、控制电路124、页缓冲电路125、数据输入/输出电路126和通过/失败检查器127。
存储单元阵列121可以包括多个存储单元。例如,存储单元阵列121可以包括沿着行方向和列方向布置的多个存储单元。每个存储单元可以存储一个或多个位。
地址译码器122可以通过字线WL、串选择线SSL和地选择线GSL而连接到存储单元阵列121。地址译码器122可以对来自存储器控制器110的地址ADDR进行译码。地址译码器122可以基于已译码地址ADDR选择字线WL中的至少一个,可以驱动如此选择的至少一个字线,并且可以控制所选择的字线的电压。
电压生成器123可以生成非易失性存储器120操作所需要的各种电压。例如,电压生成器123可以生成多个编程电压、多个通过电压、多个验证电压、多个选择读取电压、多个非选择读取电压、多个擦除电压,等等。
控制电路124可以响应于来自外部设备的命令CMD和控制信号CTRL来控制地址译码器123、电压生成器123、页缓冲电路125、输入/输出电路126和通过/失败检查器127。
页缓冲电路125可以通过多个位线BL连接到存储单元阵列121并且可以通过多个数据线DL连接到输入/输出电路126。在控制电路124的控制之下,页缓冲电路125可以控制位线BL,使得通过数据线来自输入/输出电路126的数据被存储在存储单元阵列121中。在控制电路124的控制之下,页缓冲电路125可以读取存储在存储单元阵列121中的数据。
在示例实施例中,页缓冲电路125可以存储关于连接到所选择的字线的存储单元的验证读取操作的结果。页缓冲电路125可以输出验证读取操作的结果作为页缓冲信号PBS。
在示例实施例中,页缓冲电路125可以具有多级布置。例如,页缓冲电路125可以包括多个级,每个级包括多个页缓冲器。页缓冲器可以分别地连接到位线BL。每个页缓冲器可以存储与连接到所选择的字线的存储单元中的每一个有关的验证读取操作的结果。
页缓冲电路125可以响应于来自控制电路124的传递信号TF输出在每个级的页缓冲器中所存储的验证读取操作的结果作为页缓冲信号PBS。例如,页缓冲电路125可以响应于来自控制电路124的传递信号TF输出在第一级的页缓冲器中所存储的值(例如,验证读取操作的结果)作为页缓冲信号PBS。之后,页缓冲电路125可以响应于来自控制电路124的传递信号TF输出在第二级的页缓冲器中所存储的值(例如,验证读取操作的结果)作为页缓冲信号PBS。也就是说,关于一个验证读取操作,页缓冲电路125可以基于来自控制电路124或多个级的传递信号TF顺序地或非顺序地输出页缓冲信号PBS若干次。
数据输入/输出电路126可以通过数据线DL连接到页缓冲电路125。输入/输出电路126可以在控制电路124的控制下将从存储器控制器110接收的数据传递到页缓冲电路125。在控制电路124的控制下,输入/输出电路126可以与控制信号CTRL同步地将从页缓冲电路125接收的数据传递至存储器控制器110。
通过/失败(P/F)检查器127可以基于来自页缓冲电路125的页缓冲信号PBS对失败位进行计数。在示例实施例中,失败位可以指示在连接到所选择的字线的存储单元之中的、未被编程到目标编程状态的存储单元的数量。
P/F检查器127可以将所计数的失败位与参考值相比较,并且可以基于比较的结果来输出通过信号PASS或失败信号FAIL。例如,在所计数的失败位大于参考值的情况下,P/F检查器127可以向控制电路124传递指示编程失败的失败信号FAIL。在该情况下,控制电路124可以响应于失败信号FAIL进一步执行后面的编程操作、下一个编程循环、或者下一个编程循环的验证读取操作。
在示例实施例中,如上所述,页缓冲电路125可以包括多个级并且可以关于级输出页缓冲信号PBS若干次。在这时,P/F检查器127可以关于被接收若干次的页缓冲信号PBS中的每一个来执行失败位计数操作,并且可以累积失败位计数结果以生成累积失败位的数量。
无论何时生成累积失败位的数量,根据示例实施例的P/F检查器127可以改变关于每个级的参考值。例如,P/F检查器127可以通过将第一参考值与基于关于第一级和第二级的页缓冲信号PBS所生成的累积失败位的数量相比较来确定编程通过或失败。P/F检查器127可以通过将第二参考值与基于关于第一级至第四级的页缓冲信号PBS所生成的累积失败位的数量相比较来确定编程通过或失败。在示例实施例中,第二参考值可以大于第一参考值,例如,参考值可以随着所计数的级的数量减小而减小。
在示例实施例中,可以基于所计数的级的数量来确定第一和第二参考值。例如,参考值可以随着所计数的级的数量减小而减小,并且因此可以提前确定编程失败。因此,可以减少根据失败位计数操作的开销。在示例实施例中,可以从控制电路124提供所计数的级的数量作为传递信息TFI。P/F检查器127可以基于来自控制电路124的传递信息TFI来改变参考值。在示例实施例中,传递信息TFI可以包括关于页缓冲电路125的多个级之中的、被激活的级的数量的信息。替换地,传递信息TFI可以包括传递信号TF。
图3图示出存储单元阵列121的实施例,并且图4图示出存储单元阵列121中的存储单元的阈值电压分布和与存储单元有关的编程操作的示例。
参考图2和图3,存储单元阵列121可以包括多个单元串STR。每个单元串STR可以包括串选择晶体管SST、多个存储单元MC和地选择晶体管GST。在单元串STR中,串选择晶体管SST可以连接到串选择线SSL。存储单元MC可以分别连接到多个字线WL_1至WL_i。在单元串STR中,地选择晶体管GST可以连接到地选择线GSL。
在每个单元串STR中,存储单元可以彼此串联连接。在每个单元串STR中,串选择晶体管SST可以在串联连接的存储单元MC和对应于每个单元串STR的位线(例如,BL_1)之间。在每个单元串STR中,地选择晶体管GST可以在串联连接的存储单元MC和公共源极线CSL之间。
在非易失性存储器设备120的编程操作期间,可以选择字线WL_1至WL_i中的至少一个,并且可以按照页或按照字线对连接到所选择的字线的存储单元进行编程。
参考图2至图4,存储单元阵列121的存储单元可以具有擦除状态E或第一至第三编程状态P1至P3之一。在示例实施例中,可以将具有擦除状态E的存储单元中的每一个编程为具有擦除状态E或第一至第三编程状态P1至P3之一。
如上所述,非易失性存储器设备120可以基于ISPP方案对存储单元进行编程。例如,如在图4的第二部分所图示的,非易失性存储器设备120可以通过执行多个编程循环来对存储单元进行编程。每个编程循环可以包括将编程电压Vpgm施加到所选择的字线的编程步骤和对存储单元的编程状态进行验证的验证步骤VFY。
无论何时重复编程循环时,可以将在编程步骤PGM中将施加到所选择的字线的编程电压Vpgm增加预先确定的电平。验证步骤VFY可以包括验证读取操作VFY_R和确定操作DO。
验证读取操作VFY_R可以指示基于第一至第三验证电压Vvfy1至Vvfy3读取存储单元的操作。例如,可以使用第一验证电压Vvfy1来读取目标编程状态是第一编程状态P1的存储单元。当使用第一验证电压Vvfy1时,可以将目标编程状态是第一编程状态P1且尚未被编程到第一编程状态P1的存储单元读取为开启(ON)单元。当使用第一验证电压Vvfy1时,可以将目标编程状态是第一编程状态P1且被编程到第一编程状态P1的存储单元读取为关闭(OFF)单元。例如,使用第一验证电压Vvfy1被读取为开启单元的存储单元可以是编程失败单元,并且使用第一验证电压Vvfy1被读取为关闭单元的存储单元可以是编程通过单元。
类似于以上描述,也可以使用第二或第三验证电压Vvfy2或Vvfy3来验证具有第二或第三编程状态P2或P3的目标编程状态的存储单元。
如上所述,页缓冲电路125可以响应于来自控制电路124的传递信号TF通过页缓冲信号PBS输出验证读取操作的结果。在验证步骤VFY的确定操作DO期间,P/F检查器127可以基于页缓冲信号PBS对失败位进行计数。
在这时,P/F检查器127可以关于被接收若干次的页缓冲信号PBS中的每一个来执行失败位计数操作,并且可以生成累积失败位的数量。P/F检查器127可以通过将累积失败位的数量与多个参考值中的每一个相比较来确定编程通过或编程失败。
例如,在确定操作DO期间,P/F检查器127可以接收对应于第一级的页缓冲信号PBS,并且可以基于所接收的页缓冲信号PBS对失败位的第一数量进行计数。可以通过将失败位的第一数量与第一参考值相比较来确定编程失败或编程通过。在失败位的第一数量小于第一参考值的情况下,P/F检查器127可以接收对应于第二级的页缓冲信号PBS,并且可以基于所接收的页缓冲信号PBS对失败位的第二数量进行计数。P/F检查器127可以通过将失败位的第一和第二数量的累积数量与第二参考值相比较来确定编程失败或编程通过。
在于确定操作DO期间确定编程失败的情况下,P/F检查器127可以向控制电路124发送失败信号FAILURE,使得关于其余级的确定操作DO或计数操作被终止。控制电路124可以响应于失败信号FAIL来执行下一个编程循环或下一个编程循环的验证步骤。
在示例实施例中,可以根据确定操作DO的结果来确定是否执行后面的编程循环。例如,可以在完成第一编程循环中的第一验证步骤的第一确定操作之后确定是否执行第二编程循环的第二编程步骤。
在示例实施例中,可以与下一个编程循环的编程步骤一起执行确定操作DO。例如,可以与第二编程循环的第二编程步骤一起执行第一编程循环中的第一验证步骤的第一确定操作DO。
图5图示出图2中的非易失性存储器设备120的实施例。在示例实施例中,将参考图5来描述P/F检查器127和其操作方法。图5中的功能块可以是示例并且在另一个实施例中可以是不同的。
此外,可以假定,非易失性存储器设备120通过执行多个编程循环对所选择的存储单元进行编程。在示例实施例中,每个编程循环可以包括将编程电压施加到所选择的字线的编程步骤和对所选择的存储单元的编程状态进行验证的验证步骤。在每个编程循环中,验证步骤可以包括使用至少一个验证电压读取所选择的存储单元的验证读取操作以及基于验证读取操作的结果来确定编程通过或编程失败的确定操作。
此外,以下将描述的计数操作可以指示基于来自页缓冲电路124的页缓冲器信号集合PBS_s来对失败位进行计数的操作。例如,在确定操作DO期间,P/F检查器127可以从页缓冲电路124接收页缓冲信号集合PBS_s若干次,并且可以执行计数操作若干次。
而且,以下将被描述的关于特定级的计数操作可以是通过基于与特定级相对应的页缓冲器信号集合对连接到特定级中的页缓冲器的存储单元之中的、编程操作没有完成的存储单元(例如,失败位)的数量进行计数来生成计数值的操作。
此外,可以假定,在下面将被公开的计数值CV指示对应于或连接到一个级(例如,第一级STG_1)中的页缓冲器的存储单元之中的编程操作没有完成的存储单元的数量、或者连接到或对应于一个级(例如,第一级STG_1)中的页缓冲器的存储单元中的每个具有目标编程状态的存储单元之中的编程操作没有完成的存储单元的数量。换句话说,可以假定计数值CV指示关于特定级的失败位。
此外,可以假定以下将被描述的累积值AV指示在编程循环中的验证步骤的计数操作的累积计数值。例如,在P/F检查器127关于第一至第三级STG_1至STG_3中的每一个执行计数操作以生成第一至第三计数值CV_1至CV_3的情况下,第一累积值AV_1可以是第一计数值CV_1,第二累积值AV_2是第一和第二计数值CV_1和CV_2之和,并且第三累积值AV_3是第一至第三计数值CV_1至CV_3之和。
参考图5,页缓冲电路125可以包括多个级STG_1至STG_k。级STG_1、STG_2,...,STG_k可以分别包括多个页缓冲器PB_1~BL_k,PB_k+1~PB_2k,...,PB_p+1~PB_ak。页缓冲器PB_1~BL_k,PB_k+1~PB_2k,...,PB_p+1~PB_ak可以分别地连接到多个位线BL_1~BL_k,BL_k+1~BL_2k,...,BL_p+1~BL_ak。
在示例实施例中,级STG_1至STG_k中的每一个可以包括相同数量的页缓冲器。在级STG_1至STG_k中的每一个中,页缓冲器PB可以彼此连接。例如,在级STG_1至STG_k中的每一个中,页缓冲器(例如,PB_1至PB_k)可以连接到线或(wired-OR)结构并且可以分别响应于对应的传递信号TF_1至TF_k而输出第一页缓冲信号PBS_1。同样地,在级STG_1至STG_k中的每一个中,页缓冲器(例如,PB_k+1至PB_2k)可以被连接到线或结构并且可以分别响应于对应的传递信号TF_1至TF_k而输出第二页缓冲信号PBS_2。
页缓冲器PB_1至PB_k、PB_k+1至PB_2k,...,PB_p+1至PB_ak中的每一个可以存储关于连接到所选择的字线的存储单元中的对应的一个的验证读取操作的结果。例如,在关于连接到所选择的字线的存储单元之中的、直接地或间接地连接到第一位线BL_1的存储单元的验证读取操作的结果指示编程失败的情况下,连接到第一位线BL_1的页缓冲器PB_1可以存储逻辑低的逻辑值。在关于连接到所选择的字线的存储单元之中的、直接地或间接地连接到第二位线BL_2的存储单元的验证读取操作的结果指示编程通过的情况下,连接到第二位线BL_2的页面缓冲器PB_2可以存储逻辑高的逻辑值。
页缓冲电路125可以响应于来自控制电路124的传递信号TF将存储在页面缓冲器PB中的值输出为页缓冲信号PBS_1至PBS_a。例如,控制电路125可以向页缓冲电路125顺序地或非顺序地传递第一至第k传递信号TF_1至TF_k。页缓冲电路125可以响应于第一至第k传递信号TF_1至TF_k分别激活第一至第k级STG_1至STG_k以输出页缓冲信号PBS_1至PBS_a。
例如,页缓冲电路125可以响应于来自控制电路124的第一传递信号TF_1将存储在页面缓冲器PB_1、PB_k+1、…、PB_p+1中的值输出为页缓冲信号PBS_1、PBS_2,...,PBS_a。页缓冲电路125可以响应于来自控制电路124的第一二传递信号TF_2将存储在页面缓冲器PB_1、PB_k+1、…、PB_p+1中的值输出为页缓冲信号PBS_1、PBS_2,...,PBS_a。也就是说,在编程循环中的验证步骤VFY的确定操作DO期间,页缓冲电路125可以响应于控制电路124的传递信号TF_1至TF_k输出页缓冲信号PBS_1至PBS_a若干次。
这时,可以对于级STG_1至STG_k中的每一个输出页缓冲信号PBS_1至PBS_a。为了描述方便,与每个级相对应的页缓冲信号可以被称为页缓冲信号集合。
也就是说,页缓冲电路125可以响应于来自控制电路124的第一传递信号TF_1将存储在第一级STG_1中的页面缓冲器PB中的值输出为第一页缓冲信号集合PBS_s1,并且可以响应于来自于其的第二传递信号TF_2将存储在第二级STG_2中的页面缓冲器PB中的值输出为第二页缓冲信号集合PBS_s2。
为了描述方便,可以假定,控制电路124输出第一至第k传递信号TF_1至TF_k,使得第一至第k级STG_1至STG_k的第一至第k页缓冲信号集合PBS_s1至PBS_sk被顺序地输出。然而,在另一个实施例中,从控制电路124输出的第一至第k传递信号TF_1至TF_k的次序可以不同。例如,控制电路124可以输出第一至第k传递信号TF_1至TF_k,使得第一至第k级STG_1至STG_k的第一至第k页缓冲信号集合PBS_s1至PBS_sk被非顺序地输出。在示例实施例中,第一至第k页缓冲信号集合PBS_s1至PBS_sk中的每一个可以包括来自分开的页缓冲器的第一至第a页缓冲信号PBS_1至PBS_a。
P/F检查器127可以从页缓冲电路125接收页缓冲信号PBS_1至PBS_a。P/F检查器127可以从控制电路124接收控制信号CS和传输信息TFI。P/F检查器127可以基于所接收的信号确定编程通过或失败,并且可以将通过信号PASS或失败信号FAIL作为确定结果向控制电路124提供。在示例实施例中,传输信息TFI可以包括关于它们的信息的传输信号TF_1至TF_k。
P/F检查器127可以包括计数单元127a、累积单元127b、参考值管理单元127c和比较单元127d。计数单元127a可以响应于来自控制电路124的控制信号CS对关于来自页缓冲电路125的页缓冲信号PBS_1至PBS_a的失败位进行计数。
例如,页缓冲电路125可以响应于第一传输信号TF_1输出第一页缓冲信号集合PBS_s1。在示例实施例中,第一页缓冲信号集合PBS_s1可以包括来自第一级STG_1中的页缓冲器PB_1、PB_k+1、…、PB+p+1的页缓冲信号PBS_1至PBS_a。P/F检查器127的计数单元127a可以对关于第一页缓冲信号集合PBS_s1中的页缓冲信号PBS_1至PBS_a的失败位进行计数,并且可以生成第一计数值CV_1。
同样地,页缓冲电路125可以响应于第二传输信号TF_2输出第二页缓冲信号集合PBS_s2。在示例实施例中,第二页缓冲信号集合PBS_s2可以包括来自第二级STG_2中的页缓冲器PB_2、PB_k+2、…、PB+p+2的页缓冲信号PBS_1至PBS_a。P/F检查器127的计数单元127a可以对关于第二页缓冲信号集合PBS_s2中的页缓冲信号PBS_1至PBS_a的失败位进行计数,并且可以生成第二计数值CV_2。
因而,计数单元127a可以基于页缓冲信号集合PBS_s1至PBS_sk来生成多个计数值CV_n(n是自然数)。可以向累积单元127b提供计数值CV_n中的每一个。
累积单元127b可以将来自计数单元127a的计数值CV_n累积,并且可以生成累积值AV_n。例如,累积单元127b可以基于第一计数值CV_1生成第一累积值AV_1。之后,累积单元127b可以从计数单元127a接收第二计数值CV_2,并且可以将第二计数值CV_2和第一累积值AV_1求和以生成第二累积值AV_2。同样地,累积单元127b可以顺序地将来自计数单元127a的计数值CV_n累积以生成累积值AV_n。
参考值管理单元127c可以基于来自控制电路124的传输信息TFI生成多个参考值RV_n。在示例实施例中,传输信息TFI可以包括关于在一个编程循环中的验证步骤VFY的确定操作DO期间被激活的级的数量的信息。例如,在确定操作DO期间,在第一级STG_1被激活并且由此第一页缓冲信号集合PBS_s1被输出的情况下,参考值管理单元127c可以输出第一参考值RV_1;在第一至第四级STG_1至STG_4被激活并且由此第一至第四页缓冲信号集合PBS_s1至PBS_s4被输出的情况下,参考值管理单元127c可以输出第四参考值RV_4。例如,参考值管理单元127c可以生成依照被激活的级的数量或页缓冲信号集合的数量而变化的参考值。在示例实施例中,随着被激活的级的数量更大,对应的参考值RV_n可以更大。
在示例实施例中,参考值管理单元127c可以包括基于ECC 111的纠错能力、读取裕量、单元中所存储的位的数量或者目标编程状态中的至少一个在先前被确定的代表参考值。可以基于代表参考值来确定基于传输信息TFI所生成的每一个参考值RV_n。在示例实施例中,参考值RV_n可以与代表参考值成比例。
比较单元127d可以接收来自累积单元127b的累积值AV_n和来自参考值管理单元127c的参考值RV_n,可以将累积值AV_n与参考值RV_n相比较,并且可以将通过信号PASS或失败信号FAIL作为比较结果来输出。
例如,在通过来自控制电路124的传输信息TF来分别激活分别作为第一至第四级STG_1至STG_4被输出的第一至第四页缓冲信号集合PBS_s1至PBS_s4的情况下,累积单元127b可以作为对第一至第四计数值CV_1至CV_4进行累积的结果输出第四累积值AV_4,并且参考值管理单元127c可以响应于来自控制电路124的传输信息TFI来生成第四参考值RV_4。比较单元127d可以将第四累积值AV_4与第四参考值RV_4相比较。在第四累积值AV_4大于或等于第四参考值RV_4的情况下,比较单元127d可以确定当前编程循环的编程操作为编程失败。在第四累积值AV_4小于第四参考值RV_4的情况下,P/F检查器127可以继续关于剩余的级执行计数操作或确定操作以确定编程通过或编程失败。
在编程失败的情况下,比较单元127d可以向控制电路124输出失败信号FAILURE,并且控制电路124可以控制页缓冲电路125和P/F检查器127使得不执行关于剩余的级的计数操作。在示例实施例中,控制电路124可以响应于失败信号FAIL执行下一个编程循环或下一个编程循环的验证步骤。
根据示例实施例,在用于确定编程通过或失败的确定操作DO期间,可以根据页缓冲电路125的级之中的被激活的级来改变参考值。因此,可以在执行关于所有级的计数操作之前提前确定编程失败。
例如,为了确定编程通过或失败,一种类型的P/F检查器可以通过关于页缓冲电路的所有级所执行的失败位计数操作来生成最终的累积值,并且可以将最终的累积值与代表参考值(例如,预先确定的值或特定值)相比较。然而,根据示例实施例的P/F检查器127可以基于被激活的级改变参考值以提前确定编程失败,因此减少由于计数操作所引起的开销。
例如,可以假定,页缓冲电路127包括第一至第八级STG_1至STG_8,并且代表参考值是128位值。在该假定的情况下,一种类型的P/F检查器可以对关于所有第一至第八级的失败位进行计数以生成最终的累积值,并且该P/F检查器可以将最终的累积值与作为代表参考值的128位值相比较以确定编程通过或失败。然而,根据实施例的P/F检查器127可以分别将关于第一至第八级STG1至STG8的第一至第八累积值AV_1至AV_8与第一至第八参考值RV_1至RV_8相比较以确定编程通过或编程失败。
在这种情况下,第一至第八参考值RV_1至RV_8中的每一个可以与对应于代表参考值的128位值成比例。例如,第一参考值RV_1可以是对应于关于一个级(例如,第一级STG_1)的累积值的比较目标的16位值(128位*1/8)。同样地,第二参考值RV_2可以是对应于关于两个级(例如,第一和第二级STG_1和STG_2)的累积值的比较目标的32位值(128位*2/8)。如果第二累积值AV_2大于第二参考值RV_2——即,32位值,则可能出现编程失败。在这种情况下,可以跳过关于第三至第八级STG_3至STG_8的失败位计数操作。
如上所述,可以依照被激活的级的数量改变参考值,并且因此可以提前确定编程失败。因为减少由于失败位计数操作所引起的开销,所以可以提高非易失性存储器设备的编程性能。
在示例实施例中,每个页缓冲器PB可以包括至少一个锁存器和传输晶体管。每个页缓冲器中的至少一个锁存器可以是感测锁存器、数据锁存器、高速缓存锁存器,等等。传输晶体管可以响应于来自控制电路124的传输信号TF将存储在至少一个锁存器中的信息作为页缓冲信号PBS来输出。在另一个实施例中,页缓冲器可以具有不同的结构。
可以例如通过模拟电路、数字电路或者模拟电路与数字电路的组合来实施计数单元127a、累积单元127b、参考值管理单元127c和比较单元127d中的每一个。在另一个实施例中,P/F检查器127可以具有不同的结构。
图6图示出图5中的通过/失败检查器的操作的示例。在示例实施例中,根据图6的流程图的操作方法可以对应于用于确定编程通过或失败的确定操作DO。在示例实施例中,确定操作DO可以包括多个计数操作。
参考图5和图6,在操作S110中,P/F检查器127可以被重置并且变量n可以被设置为‘1’。例如,可以基于来自控制电路124的控制信号CS进行P/F检查器127的重置和变量n的设置。
在操作S120中,P/F检查器127可以对第n级STG_n的失败位进行计数以生成第n累积值AV_n。例如,如上所述,页缓冲电路125可以响应于来自控制电路124的第n传输信号TF_n激活第n级STG_n,并且可以将第n级STG_n的页缓冲器PB的信息作为页缓冲信号PBS(例如,第n页缓冲信号集合PBS_sn)来输出。P/F检查器127可以通过基于第n页缓冲信号集合PBS_sn对第n级STG_n的失败位进行计数来生成第n计数值CV_n,并且可以基于如此生成的计数值CV_n来生成第n累积值AV_n。在示例实施例中,在不存在先前计数的级的情况下,第n计数值CV_n可以与第n累积值AV_n相同。
在操作S130中,P/F检查器127可以将第n累积值AV_n与第n参考值RV_n相比较。例如,如上所述,P/F检查器127的参考值管理单元127d可以基于来自控制电路124的传输信息TFI输出第n参考值RV_n。如上所述,第n参考值RV_n可以是基于被计数的或被激活的级的数量的值。
在第n累积值AV_n大于或等于第n参考值RV_n的情况下,在操作S140中,P/F检查器127可以确定当前编程循环的编程操作为编程失败,并且可以向控制电路124输出失败信号FAIL。在示例实施例中,在编程失败的情况下,可以终止确定操作DO,并且可以通过控制电路124来执行下一个编程循环。
在第n累积值AV_n小于第n参考值RV_n的情况下,在操作S150中,可以确定变量n是否与最大值(例如,k是自然数)相同。因此,可以确定是否关于页缓冲电路124的所有级STG_1至STG_k执行计数操作。在变量n与最大值不同的情况下,在操作S160中,变量n可以增加一并且过程可以继续到操作S120。
在变量n与最大值相同的情况下,在操作S170中,P/F检查器127可以确定当前编程循环的编程操作为编程通过,并且可以向控制电路124输出通过信号PASS。在示例实施例中,控制电路124可以响应于通过信号PASS终止编程操作,或者可以执行用于其他目标编程状态的编程循环。
图7图示出图6的操作方法的实施例。在示例实施例中,图7是图示出在非易失性存储器设备120的编程操作期间P/F检查器127和施加到存储单元阵列121(例如,所选择的字线)的字线电压的操作的时序图。
为了描述方便和说明简洁,可以假定,每一个编程循环包括编程步骤PGM和验证步骤VFY,并且验证步骤VFY可以包括验证读取操作VFY_R和确定操作DO。可以假定,与下一个编程循环的编程步骤一起执行确定操作DO。在一个实施例中,可以根据确定操作DO的结果来执行下一个编程循环的编程步骤。在一个实施例中,确定操作DO和下一个编程循环的编程步骤或验证读取操作可以被并行执行(或者将是重叠的),并且可以根据关于先前的编程循环的确定操作的结果来执行下一个编程循环的确定操作。
此外,为说明的简要起见,将验证读取操作例示为读取电压Vvfy被施加一次。在一个实施例中,在验证读取操作期间可以根据目标编程状态、存储单元中所存储的位的数量或者存储单元的类型施加多个验证电压。此外,可以假定,页缓冲电路125包括第一至第八级STG_1至STG_8,并且P/F检查器127关于第一至第八级STG1至STG8中的每一个生成计数值和累积值。
参考图5和图7,如上所述,非易失性存储器设备120可以基于ISPP方案对连接到所选择的字线的存储单元进行编程。例如,参考图4来描述ISPP方案。
P/F检查器127可以基于验证读取操作VFY_R的结果来执行确定操作DO。如上所述,P/F检查器127可以基于从页缓冲电路125接收的关于级STG_1至STG_k的页缓冲信号集合PBS_s1至PBS_sk对失败位进行计数。
例如,可以在第一编程循环PL1的第一编程步骤PGM1中向所选择的字线施加编程电压Vpgm1。在第一编程循环PL1的验证步骤中执行的是将验证电压Vvfy施加到所选择的字线以读取所选择的存储单元的第一验证读取操作VFY_R1。P/F检查器127可以通过基于第一验证读取操作VFY_R1的结果执行第一确定操作DO1来确定编程通过或编程失败。
在这时,P/F检查器127可以基于参考图5和6所描述的方法来确定编程通过或编程失败。因而,P/F检查器127可以通过生成关于页缓冲电路125的级STG_1至STG_k的累积值来确定编程通过或编程失败,并且分别将累积值与不同的参考值相比较。在示例实施例中,在关于特定级的累积值与对应于其的参考值的比较的结果指示编程通过的情况下,可以跳过关于剩余的级的计数操作。
如图7中所图示的,在第一确定操作DO1的结果指示编程失败的情况下,可以执行第二编程循环PL2的第二验证读取操作VFY_R2。可以根据第二编程循环PL2的第二验证读取操作VFY_R2的结果来执行第二确定操作DO2。同样地,P/F检查器127可以执行第二确定操作DO2以确定编程通过或编程失败。在第二确定操作DO2的结果指示编程失败的情况下,可以执行第三编程循环PL3的第三验证读取操作VFY_R3。P/F检查器127可以基于第三编程循环PL3的第三验证读取操作VFY_R3的结果来执行第三确定操作DO3,并且可以基于第三确定操作DO3的结果来确定编程通过或编程失败。在第三确定操作DO3的结果指示编程通过的情况下可以不执行以下编程循环(多个)。
在示例实施例中,执行编程循环PL1至PL3的第一至第三确定操作DO1至DO3所花费的时间可以彼此不同。例如,第一确定操作DO1的执行时间可以比第二确定操作DO2的执行时间短。这可以意味着在第一确定操作DO1期间被计数的级的数量小于在第二确定操作DO2期间被计数的级的数量。因此,因为通过使用根据关于每个级的累积值可变的参考值来确定编程通过或失败,P/F检查器127可以提前确定编程失败并且可以跳过关于剩余的级的计数操作。因为在确定操作DO期间减少由于计数操作所引起的开销,所以可以提高非易失性存储器设备的编程性能。
图8图示出图7的多个编程循环之一的实施例。在图8中,X轴对应于时间。在示例实施例中,为了描述方便,可以假定,页缓冲电路127包括第一至第八级STG_1至STG_8,并且控制电路124输出传输信号TF,使得第一至第八级STG_1至STG_8被顺序地激活。在该假定的情况下,P/F检查器127可以关于第一至第八级STG_1至STG_8顺序地执行第一至第八计数操作CO_1至CO_8以依次生成第一至第八计数值CV_1至CV_8和第一至第八累积值AV_1至AV_8。在一个实施例中,页缓冲电路125可以进一步包括多个级,并且控制电路124可以输出传输信号TF,使得第一至第八级STG_1至STG_8被顺序地输出。
参考图5、图7和图8,非易失性存储器设备120可以执行将编程电压Vpgm施加到所选择的字线的编程步骤PGM和将验证电压Vvfy施加到所选择的字线的验证读取操作VFY_R。非易失性存储器设备120可以基于验证读取操作VFY_R的结果来执行确定操作DO。
例如,如上所述,页缓冲电路125可以包括第一至第八级STG_1至STG_8并且可以响应于来自控制电路124的传输信号TF顺序地输出与第一至第八级STG_1至STG_8相对应的页缓冲信号集合PSB_s1至PSB_s8。可以向P/F检查器127提供页缓冲信号集合PSB_s1至PSB_s8。P/F检查器127可以基于顺序地从页缓冲电路125接收的第一至第八页缓冲信号集合PSB_s1至PSB_s8来顺序地执行第一至第八计数操作CO_1至CO_8以依次生成第一至第八计数值CV_1至CV_8和第一至第八累积值AV_1至AV_8。P/F检查器127可以分别将第一至第八累积值AV_1至AV_8与第一至第八参考值RV_1至RV_8相比较以确定编程通过或失败。
首先,例如,P/F检查器127可以关于第一级STG_1执行第一计数操作CO1以生成第一计数值CV_1和第一累积值AV_1。P/F检查器127可以将第一累积值AV_1与第一参考值RV_1相比较。可以由参考值管理单元127c基于来自控制电路124的传输信息TFI来生成第一参考值RV_1。
之后,P/F检查器127可以关于第二级STG_2执行第二计数操作CO2以生成第二计数值CV_2和第二累积值AV_2。第二累积值AV_2可以是第一累积值AV_1和第二计数值CV_2之和。P/F检查器127可以将第二累积值AV_2与第二参考值RV_2相比较。可以由参考值管理单元127c基于传输信息TFI来生成第二参考值RV_2。
同样地,P/F检查器127可以关于第三至第八级STG_3至STG_8顺序地执行第三至第八计数操作CO_3至CO_8以依次生成第三至第八计数值CV_3至CV_8和第三至第八累积值AV_3至AV_8。在示例实施例中,第三至第八累积值AV_3至AV_8中的每一个可以是对应的计数值和先前的累积值之和。P/F检查器127可以分别将第三至第八累积值AV_3AV_8与第三至第八参考值RV_1至RV_8相比较。可以由参考值管理单元127c基于传输信息TFI来生成第三至第八参考值RV_3至RV_8中的每一个。
在示例实施例中,可以在P/F检查器127的确定操作DO期间一起执行下一个编程循环的编程步骤。因而,可以在P/F检查器127的确定操作DO期间向所选择的字线施加编程电压Vpgm。
如上所述,根据示例实施例的P/F检查器127可以在编程循环的确定操作DO期间基于所计数或激活的级来改变参考值,由此使得可以在关于所有级的计数操作被完成或执行之前,提前确定编程失败。在示例实施例中,在关于特定级的失败位计数操作的结果指示编程失败的情况下,可以跳过关于剩余的级的计数操作。
图9图示出根据图8的操作的实施例。在图9中,X轴对应于时间。为了描述方便,将省略关于重复的组件和操作的描述。参考图5、图7和图9,从t0至t1,P/F检查器127可以关于第一级STG_1执行第一计数操作CO1以生成第一累积值AV_1。在t1,P/F检查器127可以将第一累积值AV_1与第一参考值RV_1相比较。
在第一累积值AV_1小于第一参考值RV_1的情况下,从t1至t2,P/F检查器127可以关于第二级STG_2执行第二计数操作CO2以生成第二累积值AV_2。在t2,P/F检查器127可以将第二累积值AV_2与第二参考值RV_2相比较。
在示例实施例中,在第二累积值AV_2小于第二参考值RV_2的情况下,从t2至t3,P/F检查器127可以关于第三级STG_3执行第三计数操作CO3以生成第三累积值AV_3。在t3,P/F检查器127可以将第三累积值AV_3与第三参考值RV_3相比较。
在示例实施例中,在第三累积值AV_3大于第三参考值RV_3的情况下,P/F检查器127可以确定当前编程循环的编程操作为编程失败,并且可以向控制电路124输出失败信号FAIL。P/F检查器127可以跳过关于剩余的级(例如,第四至第八级STG_4至STG_8)的第四至第八计数操作CO_4至CO_8。控制电路124可以响应于失败信号FAIL来执行下一个编程循环的验证读取操作VFY_R。
如上所述,一种类型的P/F检查器可以执行直到t4的计数操作(例如,关于第一至第八级STG_1至STG_8执行第一至第八计数操作CO_1至CO_8)并且可以生成最终的累积值。之后,P/F检查器可以确定编程通过或编程失败。然而,根据示例实施例的P/F检查器127可以通过在确定操作DO期间改变参考值在先前确定编程通过或编程失败,由此减少由于计数操作所引起的开销(例如,关于第四至第八级STG_4至STG_8的第四至第八计数操作CO_4至CO_8)。因而,可以提高非易失性存储器设备的编程速度。
图10图示出与图5的P/F检查器的另一个实施例相对应的时序图。为简单起见,可以省略关于以上描述的组件的描述或重复的描述。
参考图5和图10,P/F检查器127可以通过类似于参考图1至图10所描述的方法关于第一至第八级STG_1至STG_8执行第一至第八计数操作CO_1至CO_8。图10的示例实施例与图9的示例实施例的不同之处可以在于,在关于预先确定的数量的级的计数操作之后将累积值与参考值相比较。
例如,P/F检查器127可以关于第一和第二级STG_1和STG_2执行第一和第二计数操作CO_1和CO_2以生成第二累积值AV_2;在t5,P/F检查器127可以将第二累积值AV_2与第二参考值RV_2相比较。之后,P/F检查器127可以关于第三和第四级STG_3和STG_4执行第三和第四计数操作CO_3和CO_4以生成第四累积值AV_4;在t6,P/F检查器127可以将第四累积值AV_4与第四参考值RV_4相比较。
在示例实施例中,如上所述,在比较结果指示编程失败的情况下,P/F检查器127可以输出失败信号FAIL,并且控制电路124可以响应于失败信号FAIL而跳过关于剩余的级的计数操作并且可以执行下一个编程循环或下一个编程循环的验证读取操作。
将示例实施例例示为在执行关于特定级的计数操作之后将累积值与参考值相比较。在一个实施例中,P/F检查器127可以在关于预先确定的数量的级执行计数操作之后将累积值与对应于其的参考值相比较。
图11是非易失性存储器设备的示例实施例的时序图。为简单起见,可以省略关于以上描述的组件的描述或重复的描述。
参考图5和图11,P/F检查器127可以通过类似于参考图1至图10所描述的方法关于第一至第八级STG_1至STG_8执行第一至第八计数操作CO_1至CO_8。图11的示例实施例与图9和图10的示例实施例的不同之处可以在于,执行关于第一至第八级STG_1至STG_8中的每一个的计数操作和比较操作并且在关于特定级的计数操作之后改变参考值。
例如,P/F检查器127可以关于第一级STG_1执行第一计数操作CO_1以生成第一累积值AV_1并且可以将第一累积值AV_1与第一参考值RV_1相比较。之后,P/F检查器127可以关于第二级STG_2执行第二计数操作CO_2以生成第二累积值AV_2并且可以将第二累积值AV_2与第一参考值RV_1相比较。之后,P/F检查器127可以关于第三级STG_3执行第三计数操作CO_3以生成第三累积值AV_3。在这时,P/F检查器127可以将参考值从第一参考值RV_1改变为第三参考值RV_3。P/F检查器127可以将第三累积值AV_3与第三参考值RV_3相比较。
类似地,P/F检查器127可以关于第四至第八级STG_4至STG_8执行第四至第八计数操作CO_4至CO_8以生成第四至第八计数值AV_4至AV_8,并且P/F检查器127可以将累积值与对应于其的参考值相比较。在这时,P/F检查器127可以在关于第五级STG_5的第五计数操作CO_5之后将第三参考值RV_3改变为第五参考值RV_5,可以在关于第八级STG_8的第八计数操作CO_8之后将第五参考值RV_5改变为第八参考值RV_8。
在示例实施例中,如上所述,在比较结果指示编程失败的情况下,P/F检查器127可以输出失败信号FAIL,并且控制电路124可以响应于失败信号FAIL而跳过关于剩余的级的计数操作并且可以执行下一个编程循环或下一个编程循环的验证读取操作。
将示例实施例例示为在执行关于特定级的计数操作之后改变参考值。在另一个实施例中,P/F检查器127可以在关于预先确定的数量的级执行计数操作之后改变参考值。
图12图示出图5的参考值管理单元的实施例。参考图5和图12,可以利用移位寄存器来实施参考值管理单元127c。移位寄存器127c可以从单独的存贮设备(例如,寄存器、熔丝,等等)接收代表参考值RV。在示例实施例中,代表参考值可以是根据ECC 111的纠错能力、读取裕量、存储单元中存储的位的数量或者目标编程状态而在先前确定的值。在示例实施例中,读取裕量可以指示关于编程状态的验证电压与关于编程状态的读取电压之间的差。移位寄存器127c可以响应于来自控制电路124的传输信息TFI而输出参考值RV_n。
例如,控制电路124可以输出传输信号TF,使得顺序地或非顺序地激活页缓冲电路125的多个级。控制电路124可以向参考值管理单元127c提供基于传输信号TF的传输信息TFI。因而,传输信息TFI可以包括关于被激活的级的数量的信息或关于被激活的级的信息。
移位寄存器127c可以响应于传输信息TFI输出参考值RV_n。在示例实施例中,参考值RV_n可以是对应于每个级或对应于每组级的值。
图13图示出非易失性存储器设备的另一个实施例。参考图5来描述控制电路224、页缓冲电路225、多个级STG_1至STG_k、P/F检查器227、计数单元227a、累积单元227b、参考值管理单元227c和比较单元227d。
参考值管理单元227c可以基于传输信息TFI生成参考值RV_n。参考值管理单元227c可以输出固定参考值RV_c。固定参考值RV_c可以是将与计数值CV_n相比较的值。
类似于参考图1至图12所描述的方法,比较单元227d可以将累积值AV_n与对应于其的参考值RV_n相比较,并且可以基于比较结果来确定编程通过或编程失败。比较单元227d可以将计数值CV_n与固定参考值RV_c相比较,并且可以基于比较结果来确定编程通过或编程失败。例如,P/F检查器227可以关于特定级(例如,第三级STG_3)执行计数操作以生成第三计数值CV_3和第三累积值AV_3。P/F检查器227可以将第三计数值CV_3与固定参考值RV_c相比较,并且可以基于比较结果来确定编程通过或编程失败。
在示例实施例中,第三计数值CV_3大于固定参考值RV_c可以意指存在与第三级STG_3相对应的存储单元之中的、与失败位相对应的许多存储单元。例如,在第三计数值CV_3大于固定参考值RV_c的情况下,编程失败的概率可能较高。在第三累积值CV_3大于固定参考值RV_c的情况下,P/F检查器227可以确定当前编程循环的编程操作为编程失败。对于编程失败,控制电路124可以跳过关于剩余的级的计数操作并且可以执行下一个编程循环或下一个编程循环的验证步骤。
图14图示出图13的非易失性存储器系统的操作的实施例。参考图13和图14,P/F检查器227可以执行操作S210至S220。操作S210和S220可以类似于图6的操作S110和S120。
在操作S230中,P/F检查器227可以将第n计数值CV_n与固定参考值RV_c相比较。如参考图13所描述的,P/F检查器227可以将关于一个级(例如,第n级STG_n)的第n计数值CV_n与固定参考值RV_c相比较。在第n计数值CV_n大于或等于固定参考值RV_c的情况下,P/F检查器227可以确定当前编程循环的编程操作为编程失败并且可以执行操作S250。
在第n计数值CV_3小于固定参考值RV_c的情况下,P/F检查器227可以执行操作S240至S290。操作S240至S290可以类似于图6的操作S130至S170的那些。
在示例实施例中,S230和S240的操作的次序可以不同于图14中的次序。例如,可以在操作S230之前执行操作S240,可以根据操作S240的结果执行操作S230,并且可以根据操作S230的结果执行操作S260。替换地,可以并行地(或一起地)执行操作S230和S240。在操作S230或步骤S240的结果指示编程失败的情况下,可以执行操作S250。
图15图示出非易失性存储器设备300的另一个实施例,其可以包括控制电路324、页缓冲电路325和P/F检查器327。如参考图2所描述的,非易失性存储器设备300可以进一步包括诸如存储单元阵列、地址译码器、电压生成器和/或输入/输出电路之类的组件。
页缓冲电路325可以包括多个级STG_1至STG_k,每个级包括多个页缓冲器PB。P/F检查器327可以包括计数单元327a、累积单元327b、参考值管理单元327c和比较单元327d。参考图2来描述非易失性存储器设备300中的各个组件。
与参考图1至图14描述的P/F检查器127和227不同,图15的P/F检查器327可以预测编程通过。例如,P/F检查器327的参考值管理单元327c可以输出失败参考值FRV_n和通过参考值PRV_n。类似于以上描述,P/F检查器327可以响应于控制电路324的传输信息TFI输出失败参考值FRV_n和通过参考值PRV_n。在示例实施例中,失败参考值FRV_n可以指示用于确定编程失败的参考值,并且通过参考值PRV_n可以指示用于确定编程通过的参考值。在示例实施例中,通过参考值PRV_n可以小于或等于失败参考值FRV_n。在示例实施例中,可以根据ECC 111的纠错能力、读取裕量、单元中所存储的位的数量或者目标编程状态中的至少一个来确定通过参考值PRV_n。
例如,P/F检查器327可以对于第一至第三级STG_1至STG_3中的每一个执行计数操作以生成第三累积值AV_3。比较单元327d可以将第三累积值AV_3与第三通过参考值PRV_3相比较。在示例实施例中,在第三累积值AV_3小于第三通过参考值PRV_3的情况下,编程通过的概率可能增加。因此,在第三累积值AV_3小于第三通过参考值PRV_3的情况下,比较单元327d可以输出通过信号PASS。
例如,在关于第一至第八级STG_1至STG_8中的每一个的计数值是5位值并且失败参考值是80位值的情况下,P/F检查器327可以在关于第一至第八级STG_1至STG_8中的每一个执行计数操作之后确定编程通过,并且可以输出通过信号PASS。然而,在关于第三级STG_3的第三通过参考值PRV_3被设置为18位的情况下,P/F检查器327可以在关于第三级STG_3执行计数操作之后确定编程通过并且可以输出通过信号PASS。在这种情况下,可以跳过关于剩余的级(例如,第四至第八级STG_4至STG_8)的计数操作。
在示例实施例中,控制电路324可以响应于通过信号PASS而终止编程操作。替换地,控制电路324可以响应于通过信号PASS进一步执行用于对与另一个目标编程状态相对应的存储单元进行编程的编程循环。
如上所述,P/F检查器327可以将累积值与对应于其的通过参考值PRV_n相比较,由此使得可以提前确定编程通过。在这种情况下,可以减少由于关于剩余的级的计数操作所引起的开销。
图16图示出图15中的通过/失败检查器的操作的实施例。参考图15和图16,P/F检查器327可以执行操作S310至S320。操作S310和S320可以类似于图6的操作S110和S120的那些。
在操作S330中,P/F检查器327可以将第n累积值AV_n与第n通过参考值PRV_n相比较。如上所述,在第n累积值AV_n小于或等于第n通过参考值PRV_n的情况下,编程通过的概率可以增加。也就是说,在第n累积值AV_n小于或等于第n通过参考值PRV_n的情况下,在操作S340中,P/F检查器327可以向控制电路324输出通过信号PASS。
在第n累积值AV_n大于第n通过参考值PRV_n的情况下,在操作S350中,P/F检查器327可以确定变量n是否与最大值k相同。因而,P/F检查器327可以确定是否关于页缓冲电路325中的所有级STG_1至STG_k的所有页缓冲器执行计数操作。在变量n与最大值不同的情况下,在操作S360中,变量n可以增加一,并且过程可以继续到操作S320。
在变量n与最大值相同的情况下,在操作S370中,P/F检查器327可以将第k累积值AV_k(例如,k是最大值)与第k失败参考值FRV_k相比较。在示例实施例中,第k失败参考值FRV_k可以是代表失败参考值。可以根据ECC 111的纠错能力、读取裕量、单元中所存储的位的数量或者目标编程状态中的至少一个来确定代表失败参考值。
在第k累积值AV_k大于或等于第k失败参考值FRV_k的情况下,在操作S380中,P/F检查器327可以向控制电路324传送失败信号FAIL;在第k累积值AV_k小于第k失败参考值FRV_k的情况下,在操作S340中,P/F检查器327可以向控制电路324传送通过信号PASS。
在示例实施例中,控制电路324可以响应于通过信号PASS或失败信号FAIL终止编程操作,或者可以作为对其的响应来执行下一个编程循环或下一个编程循环的验证步骤。
图17图示出图16的操作方法的实施例。为简单起见,可以省略关于以上描述的组件的描述或重复的描述。
参考图15至图17,P/F检查器327可以在控制电路324的控制之下关于第一至第八级STG_1至STG_8中的每一个顺序地执行计数操作。在示例实施例中,如参考图15和图16所描述的,P/F检查器327可以将累积值AV_n与对应于其的通过参考值PRV_n相比较,由此使得可以提前确定编程通过。
例如,如图17中所图示的,P/F检查器327可以关于第一和第二级STG_1和STG_2中的每一个执行计数操作以生成第二累积值AV_2。P/F检查器327可以将第二累积值AV_2与第二通过参考值PRV_2相比较。在第二累积值AV_2小于第二通过参考值PRV_2的情况下,P/F检查器327可以确定当前编程循环的编程操作为编程通过,并且可以向控制电路324输出通过信号PASS。因而,可以将与第一和第二级STG_1和STG_2相对应的存储单元之中多个存储单元尚未完成编程的该情况确定为编程通过。
在示例实施例中,控制电路324可以不执行关于剩余的级(例如,STG_3至STG_8)的计数操作。
图18图示出图14的通过/失败检查器所执行的操作的另一个实施例。参考图14和图18,P/F检查器327可以执行操作S410至S440。操作S410至S440可以类似于图15的操作S310至S340的那些。在第n累积值AV_n大于第n通过参考值PRV_n的情况下,P/F检查器327可以执行操作S450至S490。操作S450至S490可以类似于图6的操作S130至S170的那些。
图19是用于描述图18的操作方法的另一个实施例的时序图。参考图14、图18和图19,P/F检查器327可以在控制电路324的控制之下关于第一至第八级STG_1至STG_8中的每一个执行计数操作,并且可以生成累积值,并且P/F检查器327可以将每个累积值与对应于其的通过参考值和失败参考值相比较。
例如,如图19中所图示的,在控制电路324的控制之下,P/F检查器327可以关于第一级STG_1执行计数操作以生成第一累积值AV_1。在第一累积值AV_1大于第一通过参考值PRV_1并且小于第一失败参考值FRV_1的情况下,在控制电路324的控制之下,P/F检查器327可以关于第二级STG_2执行计数操作以生成第二累积值AV_2。
在示例实施例中,第二累积值AV_2可以小于第二通过参考值PRV_2。在该情况下,P/F检查器327可以确定当前编程循环的编程操作为编程通过,并且可以向控制电路324输出通过信号PASS。在示例实施例中,在编程通过被确定之后,控制电路324可以跳过关于剩余的级(例如,STG_3至STG_8)的计数操作。
图20图示出非易失性存储器设备的编程操作的实施例。可以假定,非易失性存储器设备100中所包括的存储单元中的每一个是存储两个位的多级单元。
参考图2和图20,可以向存储单元阵列121(例如,所选择的字线)施加编程电压Vpgm1至Vpgm7,并且可以向其施加第一至第三验证电压Vvfy1至Vvfy3。编程电压(例如,Vpgm1)和第一至第三验证电压Vvfy1至Vvfy3可以构成编程循环。在示例实施例中,可以分别与计数操作CO_1至CO_7并行地(或在重叠关系中)执行向存储单元阵列121施加编程电压Vpgm1至Vpgm7的编程步骤PGM1至PGM7。在另一个实施例中,可以以不同的方式执行编程步骤PGM1至PGM7。
在示例实施例中,第一验证电压Vvfy1可以是用于验证目标编程状态是第一编程状态P1(例如,参考图4)的存储单元的验证电压,第二验证电压Vvfy2可以是用于验证目标编程状态是第二编程状态P2的存储单元的验证电压,并且第三验证电压Vvfy3可以是用于验证目标编程状态是第三编程状态P3的存储单元的验证电压。
P/F检查器127可以基于借由第一至第三验证电压Vvfy1至Vvfy3的第一验证读取操作VFY_R1的结果来执行计数操作,并且可以基于计数操作的结果来确定编程通过或编程失败。在这时,P/F检查器127可以关于使用第一至第三验证电压Vvfy1至Vvfy3之中的、具有最低电平的验证电压(例如,Vvfy1)所执行的验证读取操作的结果来执行计数操作。例如,P/F检查器127可以基于参考图1至图19描述的计数操作(例如,确定编程通过或编程失败的操作)来执行第一计数操作CO1,并且可以基于第一计数操作CO1来确定编程通过或编程失败。在这时,第一计数操作CO1可以是与第一验证读取操作VFY_R1的结果之中的、对应于使用第一验证电压Vvfy1所执行的验证读取操作的结果相关联的计数操作。也就是说,P/F检查器127可以通过第一计数操作CO1关于目标编程状态是第一编程状态的存储单元来确定编程通过或编程失败。
可以将失败信号FAIL作为第一计数操作CO1的结果输出。在这种情况下,可以向存储单元阵列121施加第一至第三验证读取电压Vvfy1至Vvfy3以执行第二验证读取操作VFY_R2。之后,P/F检查器127可以执行第二计数操作CO2。同样地,第二计数操作CO2可以是与使用第一验证电压Vvfy1所执行的验证读取操作的结果相关联的计数操作。可以将失败信号FAIL作为第二计数操作CO2的结果输出。P/F检查器127可以重复以上描述的操作,直到关于借由第一验证电压Vvfy1的验证读取操作的结果的计数操作的结果被确定为编程通过。
在示例实施例中,可以在第三计数操作CO3确定编程通过PASS。这可以意味着使用第一验证电压Vvfy1所验证的(例如,目标编程状态是第一编程状态P1的存储单元)通常被编程或编程为使得错误被包括在可纠错的范围中或以便通常通过读取裕量被读取。
在示例实施例中,如果使用第一验证电压Vvfy1的验证读取操作的结果被确定为编程通过,则可以不在剩余的验证读取操作中向存储单元阵列121施加第一验证电压Vvfy1。之后,P/F检查器127可以关于使用第二验证电压Vvfy2所执行的验证读取操作的结果来执行计数操作。
例如,在将通过信号PASS结果第三计数操作CO3的结果输出的情况下,可以向存储单元阵列121施加第一至第三验证电压Vvfy1至Vvfy3或第二和第三验证电压Vvfy2和Vvfy3以执行第四验证读取操作VFY_R4。P/F检查器127可以基于第四验证读取操作VFY_R4的结果之中的、对应于使用第二验证电压Vvfy2所执行的验证读取操作的结果来执行第四计数操作CO4。在示例实施例中,可以将失败信号FAIL作为第四计数操作CO4的结果输出。在这种情况下,可以执行第五验证读取操作VFY_R5。
在第四计数操作CO4的结果指示编程失败的情况下,可以执行下一个编程循环的验证读取操作,并且P/F检查器127可以执行第五计数操作CO5。在将通过信号作为第五计数操作CO5的结果输出的情况下,可以不在剩余的验证读取操作中向存储单元阵列121施加第二验证电压Vvfy2。之后,P/F检查器127可以关于使用第三验证电压Vvfy3所执行的验证读取操作的结果来执行计数操作。
例如,在将通过信号PASS作为第五计数操作CO5的结果输出的情况下,可以向存储单元阵列121施加第一至第三验证电压Vvfy1至Vvfy3、第二和第三验证电压Vvfy2和Vvfy3,或第三验证电压Vvfy3以执行第六验证读取操作VFY_R6。P/F检查器127可以基于第六验证读取操作VFY_R6的结果之中的、对应于使用第三验证电压Vvfy3所执行的验证读取操作的结果来执行第六计数操作CO6。在示例实施例中,可以将通过信号PASS作为第六计数操作CO6的结果输出,并且控制电路124可以终止编程操作。
在不同的实施例中,同时被编程的编程状态的数量可以改变。当同时n个编程状态被编程时,可以使用n个验证电压来执行编程和验证。
如上所述,P/F检查器127可以根据存储单元的目标编程状态来顺序地执行计数操作,并且可以基于计数操作的结果来关于每个目标编程状态确定编程通过或编程失败。在这时,如参考图1至图19所描述的,每个计数操作可以基于多个级改变失败参考值或通过参考值,因此减少由于计数操作所引起的开销。例如,如图20中所图示的,执行第一计数操作CO1的时间可以比执行第三计数操作CO3所花费的时间短。这可以意味着在第一计数操作CO1期间所计数的级的数量小于在第三计数操作CO3期间所计数的级的数量。因而,可以减少非易失性存储器设备的编程时间,这是因为通过基于每个级改变或调整失败参考值或通过参考值提前确定编程通过或编程失败。
在以上所描述的实施例的情况下,当确定编程通过或编程失败时,非易失性存储器设备可以通过关于每个级的计数操作生成累积值并且可以将累积值与对应于其的参考值相比较。非易失性存储器设备可以在编程通过或编程失败被确定之后跳过关于剩余的级的计数操作,因此减少由于计数操作所引起的开销。这可以意味着非易失性存储器系统的性能有所提高。
在一个实施例中,非易失性存储器设备可以在关于每个级的计数操作改变失败参考值或通过参考值、可以在关于特定级的计数操作改变失败参考值或通过参考值,或可以在关于特定数量的级执行计数操作之后改变失败参考值或通过参考值。
图21图示出图21的非易失性存储器设备的单元阵列中的一个存储块的实施例。在图21中,其中图示出具有三维结构的第一存储块BLK1。剩余的存储块可以具有与第一存储块BLK1相同的结构。在另一个实施例中,存储块可以具有不同的结构。
参考图21,第一存储块BLK1可以包括多个单元串CS11、CS12、CS21和CS22。单元串CS11、CS12、CS21和CS22沿着行方向和列方向布置并且可以形成行和列。
例如,单元串CS11和CS12可以连接到串选择线SSL1a和SSL1b以形成第一行。单元串CS21和CS22可以连接到串选择线SSL2a和SSL2b以形成第二行。单元串CS11和CS21可以连接到第一位线BL1以形成第一列。单元串CS12和CS22可以连接到第二位线BL2以形成第二列。
单元串CS11、CS12、CS21和CS22中的每一个可以包括多个单元晶体管。单元串CS11、CS12、CS21和CS22中的每一个可以包括串选择晶体管SSTa和SSTb、多个存储单元MC1至MC8、地选择晶体管GSTa和GSTb,和哑存储单元DMC1和DMC2。
在示例实施例中,单元串CS11、CS12、CS21和CS22中所包括的存储单元中的每一个可以是电荷俘获闪存(CTF)存储单元。
存储单元MC1至MC8可以被串联地连接并且可以在作为与通过行方向和列方向所限定的平面垂直的方向的高度方向上堆叠。串选择晶体管SSTa和SSTb可以被串联地连接,并且可以被置于存储单元MC1至MC8和位线BL之间。地选择晶体管GSTa和GSTb可以被串联地连接,并且可以位于存储单元MC1至MC8和公共源极线CSL之间。
在示例实施例中,第一哑存储单元DMC1可以位于存储单元MC1至MC8和地选择晶体管GSTa和GSTb之间。在示例实施例中,第二哑存储单元DMC2可以位于存储单元MC1至MC8和串选择晶体管SSTa和SSTb之间。
单元串CS11、CS12、CS21和CS22的地选择晶体管GSTa和GSTb可以共同连接到地选择线GSL。在示例实施例中,相同的行中的地选择晶体管可以连接到相同的地选择线,并且不同的行中的地选择晶体管可以连接到不同的地选择线。
放置在与衬底(或地选择晶体管GSTa和GSTb)相同的高度的存储单元可以共同连接到相同的字线,并且放置在与其不同的高度的存储单元可以连接到不同的字线。在示例实施例中,在相同的高度的哑存储单元可以连接到相同的哑字线,并且在不同的高度的哑存储单元可以连接到不同的哑字线。
在相同的高度的第一串选择晶体管SSTa之中的、属于相同的行的串选择晶体管可以连接到相同的串选择线,并且属于不同的行的串选择晶体管可以连接到不同的串选择线。例如,第一行中的单元串CS11和CS12的第一串选择晶体管SSTa可以共同连接到串选择线SSL1a,并且第二行中的的单元串CS21和CS22的第一串选择晶体管SSTa可以共同连接到串选择线SSL1a。
同样地,在相同的高度的第二串选择晶体管SSTb之中的、属于相同的行的串选择晶体管可以连接到相同的串选择线,并且不同的行中的串选择晶体管可以连接到不同的串选择线。例如,第一行中的单元串CS11和CS12的第二串选择晶体管SSTb可以共同连接到串选择线SSL1b,并且第二行中的单元串CS21和CS22的第二串选择晶体管SSTb可以共同连接到串选择线SSL2b。
相同的行中的单元串的串选择晶体管可以共同连接到相同的串选择线。例如,第一行中的单元串CS11和CS12的第一和第二串选择晶体管SSTa和SSTb可以共同连接到相同的串选择线。第二行中的单元串CS21和CS22的第一和第二串选择晶体管SSTa和SSTb可以共同连接到相同的串选择线。
在第一存储块BLK1中,可以通过行来执行读取和写入操作。例如,可以通过串选择线SSL1a、SSL1b、SSL2a和SSL2b来选择第一存储块BLK1的一个行。在存储块BLK1中,可以按存储块或按子块来擦除存储单元。
图21中的第一存储块BLK1可以是示例。例如,单元串的数量可以增大或减小,并且单元串的行数和单元串的列数可以依照单元串的数量增大或减小。在第一存储块BLK1中,单元串(GST、MC、DMC、SST,等等)的数量可以增大或减小,并且第一存储块BLK1的高度可以依照单元串(GST、MC、DMC、SST,等等)的数量增大或减小。此外,连接到单元晶体管的线(GSL、WL、DWL、SSL,等等)的数量可以依照单元串(GST、MC、DMC、SST,等等)的数量增大或减小。
图22图示出根据一个或多个实施例的包括存贮设备的存储卡系统1000的实施例。参考图22,存储卡系统1000可以包括存储器控制器1100、非易失性存储器1200和连接器1300。
存储器控制器1100可以连接到非易失性存储器1200并且访问非易失性存储器1200。例如,存储器控制器1200可以适于控制非易失性存储器1100的总体操作,包括但不限于读取操作、写入操作、擦除操作和后台操作。后台操作可以包括以下操作:损耗均衡管理、无用单元收集,等等。
存储器控制器1100可以提供非易失性存储器1100和主机之间的接口,并且可以驱动用于控制非易失性存储器1100的固件。在示例实施例中,控制器1100可以包括组件,诸如但不限于RAM、处理单元、主机接口、存储器接口和纠错单元。
存储器控制器1100可以通过连接器1300与外部设备进行通信。存储器控制器1100可以基于特定通信协议与外部设备进行通信。例如,存储器控制器1100可以通过诸如但不限于以下的各种通信协议中的至少一个与外部设备进行通信:双数据速率(DDR)接口、通用串行总线(USB)、多媒体卡(MMC)、eMMC(嵌入MMC)、外围组件互联(PCI)、高速PCI(PCI-E)、先进技术附件(ATA)、串行ATA、并行ATA、小型计算机小接口(SCSI)、增强小型磁盘接口(ESDI)、集成驱动电路(IDE)、通用闪存存储(UFS)、高速非易失性存储器(NVMe),等等。
可以利用诸如但不限于以下的各种非易失性存储器设备来实施非易失性存储器1200:电可擦除可编程只读存储器(EEPROM)、NAND存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)、旋转扭矩磁性RAM(STT-MRAM),等等。
在示例实施例中,非易失性存储器1200可以包括参考图1至图20描述的非易失性存储器设备。非易失性存储器1200可以基于参考图1至图20描述的编程通过或失败确定方法来执行编程操作。
在示例性实施例中,存储器控制器1100和非易失性存储器1200可以被集成在单个半导体设备中。存储器控制器1100和非易失性存储器1200可以被集成在单个半导体设备中以形成固态驱动器(SSD)。存储器控制器1100和非易失性存储器1200可以被集成在单个半导体设备中以构成构成存储卡。例如,存储器控制器1100和非易失性存储器1200可以被集成在单个半导体设备中以构成存储卡,诸如但不限于:PC卡(个人计算机存储器卡国际联合会(PCMCIA)卡)、紧凑闪存卡(CF)、智能媒体卡(SM、SMC)、记忆棒、多媒体卡(MMC、RS-MMC、MMCmicro)、SD卡(SD、miniSD、microSD、SDHC),和通用闪存存储(UFS)。
可以根据任何各种不同的封装技术将非易失性存储器1200或存储卡系统1000封装。替换地,非易失性存储器1200可以包括通过以上描述的封装技术之一所实施的多个非易失性存储器芯片。
图23图示出根据一个或多个实施例的、包括存贮设备的固态驱动系统2000的实施例。参考图23,固态驱动器(SSD)系统2000可以包括主机2100和SSD 2200。SSD 2200可以通过主机接口2001与主机2100交换信号SGL和可以通过电源连接器2002被供应电力。SSD2200可以包括SSD控制器2210、多个闪速存储器2221至322n、辅助电源2230和缓冲存储器2240。
SSD控制器2210可以响应于来自主机2100的信号SIG通过多个通道CH1至CHn来控制闪速存储器2221至222n。闪速存储器2221至222n可以响应于SSD控制器2210的控制来执行编程操作。
辅助电源2230可以经由电源连接器2002连接到主机2100。可以通过来自主机2100的电力PWR对辅助电源2230进行充电。当没有从主机2100顺利地供给电力时,辅助电源2230可以对SSD系统2000供电。可以将辅助电源2230放置在SSD 2200内部或外部。例如,可以将辅助电源2230放在主板上以向SSD 2200供给辅助电力。
缓冲存储器2240可以充当SSD 2200的缓冲存储器。例如,缓冲存储器2240可以暂时地存储从主机2100或从闪速存储器2221至222n接收的数据,或可以暂时地存储闪速存储器2221至222n的元数据(例如,映射表)。缓冲存储器2240可以包括诸如DRAM、SDRAM、DDRSDRAM、LPDDR SDRAM、SRAM,等等的易失性存储器或诸如FRAM、ReRAM、STT-MRAM、PRAM,等等的非易失性存储器。
在示例实施例中,闪速存储器2221至222n中的每一个可以包括参考图1至20描述的非易失性存储器设备。闪速存储器2221至222n中的每一个可以基于参考图1至20描述的编程通过或失败确定方法来执行编程操作。
图24图示出包括根据一个或多个实施例进行操作的存贮设备和接口的电子系统3000的实施例。可以利用例如能够使用或支持通过移动行业处理器接口(MIPI)联盟所提供的接口的数据处理设备来实施电子系统3000。在示例实施例中,可以利用诸如便携式通信终端、个人数字助理(PDA)、便携式多媒体播放机(PMP)、智能电话,或者可穿戴设备,等等的电子设备来实施电子系统3000。
电子系统3000可以包括应用处理器3100、显示器3220和图像传感器3230。应用处理器3100可以包括DigRF主设备3110、显示串行接口(DSI)主机3120、照相机串行接口(CSI)主机3130,和物理层3140。
DSI主机3120可以通过DSI与显示器3220的DSI设备3225进行通信。例如,可以在DSI主机3120中实施光学串行器SER,并且可以在DSI设备3225中实施光学解串器DES。
CSI主机3130可以通过CSI与图像传感器3230的CSI设备3235进行通信。例如,可以在CSI主机3130中实施光学解串器,并且可以在CSI设备3235中实施光学串行器。
DSI和CSI可以使用物理层和链路层。一个或多个实施例可以被应用于DSI和CSI。
电子系统3000可以进一步包括射频(RF)芯片3240用于与应用处理器3100进行通信。RF芯片3240可以包括物理层3242、DigRF从属设备3244,和天线3246。例如,RF芯片3240的物理层3242和应用处理器3100的物理层3140可以通过MIPI联盟所提供的DigRF接口与彼此交换数据。
电子系统3000可以进一步包括工作存储器3250和嵌入/卡存贮器3255。工作存储器3250和嵌入/卡存贮器3255可以存储从应用处理器3100接收的数据。工作存储器3250和嵌入/卡存贮器3255可以向应用处理器3100提供存储于其中的数据。
工作存储器3250可以暂时地存储已被应用处理器3100处理或将被其处理的数据。工作存储器3250可以包括诸如闪速存储器、PRAM、MRAM、ReRAM,或者FRAM之类的非易失性存储器,或者诸如SRAM、DRAM,或SDRAM之类的易失性存储器。
嵌入/卡存贮器3255可以不管电源而存储数据。在示例实施例中,嵌入/卡存贮器3255可以遵循UFS接口协议。在示例实施例中,嵌入/卡存贮器3255可以包括参考图1至20所描述的非易失性存储器设备。嵌入/卡存贮器3255中所包括的非易失性存储器设备可以基于参考图1至20描述的编程通过或失败确定方法来执行编程操作。
电子系统3000可以通过诸如全球微波接入互操作性(WiMAX)3260、无线局域网网络(WLAN)3262,和超宽频带(UWB)3264,等等的通信模块与外部系统进行通信。
电子系统3000可以进一步包括扬声器3270和麦克风3275以用于处理语音信息。电子系统3000可以进一步包括全球定位系统(GPS)设备3280以用于处理位置信息。电子系统3000可以进一步包括桥芯片3290用于管理外围设备之间的连接。
可以通过将由计算机、处理器、控制器,或者其他信号处理设备执行的代码或指令来执行在本文描述的方法、处理,和/或操作。计算机、处理器、控制器,或者其他信号处理设备可以是在本文描述的那些或者是除在本文描述的元件之外的元件。因为详细地描述了形成方法(或者计算机、处理器、控制器,或者其他信号处理设备的操作)的基础的算法,用于实施方法实施例的操作的代码或指令可以将计算机、处理器、控制器,或者其他信号处理设备变换为用于执行在本文描述的方法的专用处理器。
可以在例如可以包括硬件、软件,或两者的逻辑中实施在本文公开的实施例的控制器、检查器、译码器、和其他处理特征。当至少部分地在硬件中被实施时,控制器、检查器、译码器和其他处理特征例如可以是包括但不限于以下的各种集成电路中的任何一个:专用集成电路、现场可编程门阵列、逻辑门的组合、片上系统、微处理器,或者另一种类型处理或控制电路。
当在软件中被至少部分地实施时,控制器、检查器、译码器和其他处理特征例如可以包括用于存储例如将被计算机、处理器、微处理器、控制器或其他信号处理设备执行的代码或指令的存储器或其他存贮设备。计算机、处理器、微处理器、控制器,或者其他信号处理设备可以是在本文描述的那些或是在本文描述的元件之外的设备。因为详细地描述了形成方法(或者计算机、处理器、控制器,或者其他信号处理设备的操作)的基础的算法,用于实施方法实施例的操作的代码或指令可以将计算机、处理器、控制器,或者其他信号处理设备变换为用于执行在本文描述的方法的专用处理器。
而且,另一个实施例可以包括例如非暂时型计算机可读媒介的计算机可读媒介,用于存储在以上描述的代码或指令。计算机可读媒介可以是可以可移除地或固定地耦合到将执行用于执行在本文描述的实施例方法的代码或指令的计算机、处理器、控制器,或者其他信号处理设备的易失性或非易失性存储器或其他存贮设备。
根据一个或多个前述的实施例,非易失性存储器设备可以改变用于在确定操作期间确定编程通过或编程失败的通过参考值和失败参考值。因此,可以在执行关于所有级的计数操作之前在编程通过的确定操作中提前确定编程通过或编程失败。这可以意味着非易失性存储器设备的编程速度有所提高。因此,可以通过降低由于失败位计数操作所引起的开销来提高性能。
在本文已经公开了示例实施例,并且虽然采用了特定术语,但它们被使用且用于进行一般和描述意义的解释且目的不是进行限制。在一些情况下,自提交本申请起,对于本领域普通技术人员明显的是,与特定实施例结合所描述的特征、特性和/或要素可以单独地使用或同与其他的实施例结合描述的特征、特性和/或要素组合地使用,除非另外指出其他。因此,本领域技术人员将理解,在没有脱离如在所附权利要求中阐明的实施例的精神和范围的情况下,可以进行形式和细节上的各种改变。

Claims (25)

1.一种用于非易失性存储器设备的编程验证方法,该方法包括:
关于多个级中的第一级执行第一失败位计数操作以生成第一失败位累积值;
将第一失败位累积值与第一失败参考值相比较以确定编程失败;
当第一失败位累积值小于第一失败参考值时,关于级中的第二级执行第二失败位计数操作以生成第二失败位累积值;以及
将第二失败位累积值与第二失败参考值相比较以确定编程失败,其中,将关于多个存储单元的验证读取结果存储到级的页缓冲器中,并且其中第二失败参考值不同于第一失败参考值。
2.根据权利要求1所述的方法,其中,比较第一失败位累积值包括:
当第一失败位累积值大于或等于第一失败参考值时,输出失败信号。
3.根据权利要求2所述的方法,进一步包括:
当第一失败位累积值大于或等于第一失败参考值时,跳过将不同于第一失败参考值的第二失败参考值与第二失败位累积值相比较以确定编程失败。
4.根据权利要求1所述的方法,其中:
第一失败位计数操作指示对与第一级相对应的存储单元之中的未被编程到目标编程状态的存储单元进行计数的操作,并且
第二失败位计数操作指示对与第二级相对应的存储单元之中的未被编程到目标编程状态的存储单元进行计数的操作。
5.根据权利要求1所述的方法,其中,第一失败参考值小于第二失败参考值。
6.根据权利要求1所述的方法,进一步包括:
当在第一失败位累积值的比较或第二失败位累积值的比较中确定编程失败时,执行关于存储单元的验证读取操作。
7.根据权利要求1所述的方法,其中,比较第一失败位累积值包括:
将第一失败位累积值与第一通过参考值相比较以确定编程通过。
8.根据权利要求7所述的方法,其中,当第一失败位累积值小于或等于第一通过参考值时,该方法包括:
确定编程操作为编程通过;以及
跳过执行第二失败位计数操作以生成第二失败位累积值和将第二失败参考值与第二失败位累积值相比较以确定编程通过。
9.根据权利要求7所述的方法,其中,第一失败参考值小于第二失败参考值。
10.根据权利要求1所述的方法,其中,执行第一失败位计数操作包括:
关于第一级执行第一失败位计数操作以生成对与第一级相对应的存储单元之中的、未被编程到目标编程状态的存储单元的数量进行指示的第一失败位计数值。
11.根据权利要求10所述的方法,其中,比较第一失败位累积值包括:
将第一失败位计数值与固定参考值相比较以确定编程通过。
12.根据权利要求1所述的方法,其中,根据非易失性存储器设备的读取裕量、单元中所存储的位的数量、将被验证的目标编程状态或外部设备的纠错能力中的至少一个来确定第一和第二失败参考值。
13.根据权利要求1所述的方法,其中,非易失性存储器设备包括三维存储阵列。
14.根据权利要求13所述的方法,其中:
三维存储阵列包括存储单元,并且
在具有安置在硅衬底之上的有源区域的存储单元的阵列的一个或多个物理层级中单片地形成存储单元中的每一个。
15.根据权利要求的13所述的方法,其中,三维存储阵列的存储单元中的每一个是电荷俘获存储单元。
16.根据权利要求的13所述的方法,其中,在层级之间共享三维存储阵列的字线和位线。
17.一种用于非易失性存储器设备的编程验证方法,该方法包括:
基于第一失败参考值关于多个级中的至少一个执行失败位计数操作以确定编程失败;以及
基于不同于第一失败参考值的第二失败参考值关于剩余的级中的至少一个执行失败位计数操作,以确定编程失败,其中,将关于多个存储单元的验证读取结果存储到级的页缓冲器中。
18.根据权利要求17所述的方法,其中,第一失败参考值小于第二失败参考值。
19.根据权利要求17所述的方法,其中,编程失败对应于与至少一个级相对应的存储单元之中的、未被编程到目标编程状态的存储单元的数量大于或等于第一失败参考值。
20.根据权利要求19所述的方法,其中,当情况被确定为编程失败时,跳过基于第二失败参考值确定编程通过。
21.根据权利要求17所述的方法,进一步包括:
基于不同于第一和第二失败参考值的第三失败参考值关于剩余的级中的至少一个执行失败位计数操作,以确定编程失败。
22.一种用于非易失性存储器设备的编程方法,该方法包括:
向所选择的字线施加编程电压;
向所选择的字线施加至少一个验证电压以关于连接到所选择的字线的存储单元执行验证读取操作;以及
基于验证读取操作的结果来确定编程通过或编程失败,其中,确定编程通过或编程失败包括:
基于第一失败参考值关于存储单元的多个级中的至少一个执行失败位计数操作以确定编程失败;以及
基于不同于第一失败参考值的第二失败参考值关于至少一个剩余的级执行失败位计数操作以确定编程失败,其中,将关于存储单元的验证读取结果存储到级的页缓冲器中。
23.根据权利要求22所述的方法,其中,当执行失败位计数操作时,失败参考值顺序地增加。
24.根据权利要求22所述的方法,其中,当执行失败位计数操作时,非顺序地增加失败参考值。
25.根据权利要求22所述的方法,其中,关于存储单元执行失败位计数操作并且比较失败位累积值包括:
在关于所有存储单元执行失败位计数操作之后,确定失败位累积值大于失败参考值的情况为编程失败并且确定失败位累积值小于失败参考值的情况为编程通过。
CN201610665846.6A 2015-08-13 2016-08-12 非易失性存储器设备、编程方法和其编程验证方法 Active CN106448733B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150114801A KR102291456B1 (ko) 2015-08-13 2015-08-13 불휘발성 메모리 장치 및 그것의 프로그램 방법 및 프로그램 검증 방법
KR10-2015-0114801 2015-08-13

Publications (2)

Publication Number Publication Date
CN106448733A CN106448733A (zh) 2017-02-22
CN106448733B true CN106448733B (zh) 2022-04-12

Family

ID=57995430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610665846.6A Active CN106448733B (zh) 2015-08-13 2016-08-12 非易失性存储器设备、编程方法和其编程验证方法

Country Status (3)

Country Link
US (2) US10061633B2 (zh)
KR (1) KR102291456B1 (zh)
CN (1) CN106448733B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102341262B1 (ko) * 2015-08-11 2021-12-20 삼성전자주식회사 메모리 장치 및 메모리 장치의 동작 방법
US10346097B2 (en) * 2015-11-26 2019-07-09 Samsung Electronics Co., Ltd. Nonvolatile memory device and storage device including nonvolatile memory device
KR102514521B1 (ko) * 2016-03-23 2023-03-29 삼성전자주식회사 페이지 버퍼를 포함하는 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법
KR102634421B1 (ko) * 2016-11-21 2024-02-06 에스케이하이닉스 주식회사 페일 비트 카운터 및 이를 포함하는 반도체 메모리 장치
KR102341261B1 (ko) * 2017-11-13 2021-12-20 삼성전자주식회사 매스비트 카운터를 포함하는 메모리 장치 및 그의 동작 방법
KR102680521B1 (ko) * 2019-06-18 2024-07-04 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR20210062343A (ko) * 2019-11-21 2021-05-31 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
KR20210092860A (ko) 2020-01-16 2021-07-27 삼성전자주식회사 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 스토리지 장치
US11355208B2 (en) * 2020-06-30 2022-06-07 Sandisk Technologies Llc Triggering next state verify in progam loop for nonvolatile memory
KR20220157806A (ko) 2021-05-21 2022-11-29 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
US11605437B2 (en) * 2021-06-25 2023-03-14 Sandisk Technologies Llc Memory programming with selectively skipped verify pulses for performance improvement
US11790992B2 (en) * 2021-06-28 2023-10-17 Sandisk Technologies Llc State dependent VPVD voltages for more uniform threshold voltage distributions in a memory device
WO2024138912A1 (en) * 2022-12-30 2024-07-04 Yangtze Memory Technologies Co., Ltd. Memory device and program operation thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101174463A (zh) * 2006-10-31 2008-05-07 海力士半导体有限公司 非易失性存储装置中的多级单元回拷编程方法
CN102403039A (zh) * 2010-09-06 2012-04-04 海力士半导体有限公司 半导体存储器件及其操作方法
CN102483953A (zh) * 2009-06-26 2012-05-30 桑迪士克技术有限公司 检测对非易失性储存器的编程的完成
CN102820057A (zh) * 2011-06-08 2012-12-12 三星电子株式会社 非易失性存储装置及编程非易失性存储装置的方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7355892B2 (en) * 2006-06-30 2008-04-08 Sandisk Corporation Partial page fail bit detection in flash memory devices
US7593259B2 (en) * 2006-09-13 2009-09-22 Mosaid Technologies Incorporated Flash multi-level threshold distribution scheme
US7440319B2 (en) 2006-11-27 2008-10-21 Sandisk Corporation Apparatus with segmented bitscan for verification of programming
US7616499B2 (en) * 2006-12-28 2009-11-10 Sandisk Corporation Retention margin program verification
KR100884234B1 (ko) 2007-05-25 2009-02-18 삼성전자주식회사 프로그램 성능을 향상시킬 수 있는 플래시 메모리 장치 및그것의 프로그램 방법
US7746680B2 (en) * 2007-12-27 2010-06-29 Sandisk 3D, Llc Three dimensional hexagonal matrix memory array
US7872941B2 (en) 2008-07-10 2011-01-18 Hynix Semiconductor Inc. Nonvolatile memory device and method of operating the same
JP2010176761A (ja) 2009-01-30 2010-08-12 Toshiba Corp 半導体記憶装置
KR101022882B1 (ko) * 2009-06-12 2011-03-16 주식회사 하이닉스반도체 불휘발성 메모리 장치의 동작 방법
KR101617641B1 (ko) * 2009-08-27 2016-05-03 삼성전자주식회사 비휘발성 메모리 장치, 그것을 포함한 메모리 시스템, 및 그것의 프로그램 방법
KR101653206B1 (ko) 2010-01-19 2016-09-02 삼성전자주식회사 프로그램 검증 회로 및 이를 포함하는 비휘발성 메모리 장치
KR101676816B1 (ko) * 2010-02-11 2016-11-18 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
JP2011253593A (ja) 2010-06-02 2011-12-15 Toshiba Corp 不揮発性半導体記憶装置
KR101656384B1 (ko) * 2010-06-10 2016-09-12 삼성전자주식회사 불휘발성 메모리 장치의 데이터 기입 방법
US8737141B2 (en) * 2010-07-07 2014-05-27 Stec, Inc. Apparatus and method for determining an operating condition of a memory cell based on cycle information
US8493792B2 (en) * 2010-12-02 2013-07-23 Hynix Semiconductor Inc. Programming method of non-volatile memory device
JP2012133840A (ja) * 2010-12-20 2012-07-12 Samsung Yokohama Research Institute Co Ltd 半導体記憶装置、及び記憶方法
US8867278B2 (en) 2011-02-28 2014-10-21 Samsung Electronics Co., Ltd. Nonvolatile memory device, memory system including the same, and method of operating nonvolatile memory device
JP5259765B2 (ja) 2011-03-29 2013-08-07 株式会社東芝 不揮発性半導体メモリ
JP5542746B2 (ja) * 2011-06-08 2014-07-09 株式会社東芝 半導体記憶装置
US20130159610A1 (en) * 2011-12-16 2013-06-20 Samsung Electronics Co., Ltd. Non-volatile semiconductor memory device related method of operation
JP5740296B2 (ja) * 2011-12-16 2015-06-24 株式会社東芝 半導体記憶装置、半導体記憶装置の制御方法、制御プログラム
KR20140006460A (ko) * 2012-07-05 2014-01-16 에스케이하이닉스 주식회사 불휘발성 메모리 장치, 그것의 동작 방법 및 그것을 포함하는 데이터 저장 장치
KR20140020155A (ko) * 2012-08-08 2014-02-18 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
US9349476B2 (en) * 2013-02-21 2016-05-24 Sandisk Technologies Inc. Methods, systems, and computer readable media for early detection of potential flash failures using an adaptive system level algorithm based on flash program verify
US9449924B2 (en) * 2013-12-20 2016-09-20 Sandisk Technologies Llc Multilevel contact to a 3D memory array and method of making thereof
US9417945B2 (en) * 2014-03-05 2016-08-16 International Business Machines Corporation Error checking and correction for NAND flash devices
KR102235492B1 (ko) * 2014-08-25 2021-04-05 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법
US20160196062A1 (en) * 2015-01-05 2016-07-07 Kabushiki Kaisha Toshiba Memory system
KR102320955B1 (ko) * 2015-02-02 2021-11-05 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 읽기 방법
ITUB20151149A1 (it) * 2015-05-27 2016-11-27 Sk Hynix Inc Memoria non volatile comprendente un blocco di controllo del rilevamento di corrente e corrispondente metodo di verifica di programmazione

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101174463A (zh) * 2006-10-31 2008-05-07 海力士半导体有限公司 非易失性存储装置中的多级单元回拷编程方法
CN102483953A (zh) * 2009-06-26 2012-05-30 桑迪士克技术有限公司 检测对非易失性储存器的编程的完成
CN102403039A (zh) * 2010-09-06 2012-04-04 海力士半导体有限公司 半导体存储器件及其操作方法
CN102820057A (zh) * 2011-06-08 2012-12-12 三星电子株式会社 非易失性存储装置及编程非易失性存储装置的方法

Also Published As

Publication number Publication date
US10061633B2 (en) 2018-08-28
KR102291456B1 (ko) 2021-08-23
US10777264B2 (en) 2020-09-15
US20180358088A1 (en) 2018-12-13
KR20170020658A (ko) 2017-02-23
US20170046210A1 (en) 2017-02-16
CN106448733A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
CN106448733B (zh) 非易失性存储器设备、编程方法和其编程验证方法
US10629279B2 (en) Memory device including massbit counter and method of operating the same
US11756613B2 (en) Nonvolatile memory device
TWI725296B (zh) 記憶體裝置及其操作方法
US9455044B2 (en) Semiconductor memory device performing program and program verify operation on the memory cell array including pass/fail check on the program operation
US9281068B2 (en) Nonvolatile memory and related reprogramming method
CN107808682B (zh) 控制电路、外围电路、半导体存储器件及其操作方法
KR102248835B1 (ko) 불 휘발성 메모리 장치 및 그것의 동작 방법
US9030878B2 (en) Semiconductor memory device including a plurality of cell strings, memory system including the same, and control method thereof
KR20160108770A (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR20140013383A (ko) 불휘발성 메모리 장치 및 그것의 동작 방법
US20170125127A1 (en) Memory system and operating method thereof
US9836216B2 (en) Semiconductor memory device and operating method thereof
US10283203B2 (en) Semiconductor memory device and method of operating the same
US9627075B1 (en) Semiconductor memory device and semiconductor system
US20210166747A1 (en) Memory device and method of operating the memory device
CN105280235B (zh) 半导体存储器件、具有其的存储系统及其操作方法
CN106816168B (zh) 半导体存储器件
CN106504788B (zh) 具有空闲存储器件的存储系统及其操作方法
US10073741B2 (en) Memory system with reduced program time and method of operating the same
US9105346B2 (en) Semiconductor device and method for operating the same
KR20170068163A (ko) 반도체 메모리 장치
CN112908388B (zh) 存储器装置及其操作方法
CN111986714B (zh) 半导体存储器装置
KR20170097990A (ko) 반도체 메모리 장치 및 이의 동작 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant