CN115346585A - 用于nand闪速存储器的方法和装置 - Google Patents
用于nand闪速存储器的方法和装置 Download PDFInfo
- Publication number
- CN115346585A CN115346585A CN202211064837.3A CN202211064837A CN115346585A CN 115346585 A CN115346585 A CN 115346585A CN 202211064837 A CN202211064837 A CN 202211064837A CN 115346585 A CN115346585 A CN 115346585A
- Authority
- CN
- China
- Prior art keywords
- data
- bit line
- bit lines
- bit
- page buffer
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1057—Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5671—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge trapping in an insulator
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/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/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1069—I/O lines read out arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1084—Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/12—Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
-
- 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)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
公开了用于NAND闪速存储器的方法和装置。在实施例中,提供了一种用于对NAND闪速存储器进行编程的方法。该方法包括:在未选位线维持禁止电压的同时,用偏置电压电平对所选存储单元的所选位线进行预上电;将验证电压施加到耦合到所选存储单元的所选字线;以及在第一时间间隔内对耦合到接通单元的所选位线进行放电。该方法还包括:读出所选位线上的读出电压电平;当读出电压电平高于阈值电平时,用禁止电压电平加载所选位线,并且当读出电压电平等于或低于阈值电平时,用编程电压加载所选位线;以及针对各个所选位线重复读出和加载操作。
Description
本申请是申请号为202080009779.7,申请日为2020年4月15日,名称为“用于NAND闪速存储器的方法和装置”的分案申请。
相关申请的交叉引用
本申请是2019年11月18日提交的标题为“用于NAND闪速存储器的方法和装置(METHODS AND APPARATUS FOR NAND FLASH MEMORY)”的美国专利申请号为16/687,556的部分接续申请案(CIP)。该CIP申请要求于2019年5月5日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash Memory Read and Write Operations)”的美国临时专利申请号为62/843,556的、于2019年5月15日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash Memory Read and Write Operations)”的美国临时专利申请号为62/848,567的、于2019年7月7日提交的标题为“NAND闪速存储器读取和写入操作(NAND FlashMemory Read and Write Operations)”的美国临时专利申请号为62/871,198的、以及于2019年8月7日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash Memory Readand Write Operations)”的美国临时专利申请号为62/884,139的根据35U.S.C.§119的权益,以引证的方式将所有这些美国临时专利申请全文并入文本。
申请16/687,556要求于2018年11月18日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash Memory Read and Write Operations)”的美国临时专利申请号为62/768,979的、于2018年11月20日提交的标题为“NAND闪速存储器读取和写入操作(NANDFlash Memory Read and Write Operations)”的美国临时专利申请号为62/770,150的、于2018年11月30日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash MemoryRead and Write Operations)”的美国临时专利申请号为62/774,128的、于2018年12月20日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash Memory Read and WriteOperations)”的美国临时专利申请号为62/783,199的、以及于2019年1月31日提交的标题为“NAND闪速存储器读取和写入操作(NAND Flash Memory Read and Write Operations)”的美国临时专利申请号为62/799,669的根据35 U.S.C.§119的权益,以引证的方式将所有这些美国临时专利申请全文并入文本。
技术领域
本发明的示例性实施例总体上涉及半导体和集成电路领域,更具体地,涉及NAND闪速存储器(flash memory)的设计和操作。
背景技术
存储设备广泛用于工业和消费电子产品中。在许多情况下,存储器的限制影响例如移动电话的工业或消费设备的尺寸、性能或成本。
在许多设备中使用的一种类型的存储器被称为NAND闪速存储器。这种类型的存储器被组织成一个或多个区块,并且各个区块包括由字线和位线访问的存储单元串。利用耦合到位线的页缓冲器将数据编程到存储单元中或从存储单元读取。在典型的NAND闪速存储器中,一次可以编程或读取的位线的数量等于页缓冲器的数量。这被称为“页编程”或“页读取”。增加页缓冲器的数量可以增加数据读/写吞吐量,以增强存储性能。然而,页缓冲器的电路尺寸相当大,并且通常占据存储器的管芯尺寸的大约20%到40%。因此,页缓冲器的典型数量被在今天的512Gb到1Tb的产品中限制在16Kb到64KB的范围内,这限制了NAND闪速存储器的读/写性能。
发明内容
在各种示例性实施例中,提供了与二维(2D)或三维(3D)NAND存储器阵列一起使用的NAND闪速存储器架构和方法。这些实施例也可以应用于单层单元(Single-Level Cell,SLC)、多层单元(Multi-Level Cell,MLC)、三层单元(Triple-Level Cell,TLC)、四层单元(Quad-Level Cell,QLC)或每单元任意数量位的技术。
在实施例中,NAND架构包括位线选择栅极,该位线选择栅极将页缓冲器连接到大量位线,以增加读/写吞吐量。在另一实施例中,位线选择栅极将页缓冲器耦合到非相邻的位线,以缓解电容耦合。在其它实施例中,使用额外的旁通栅极和数据寄存器来增强NAND存储器的操作。在另一些实施例中,提供了致使性能提高的新颖的编程和读取操作。
在实施例中,提供了一种用于对NAND闪速存储器进行编程的方法,其包括:在字线上设置编程条件,以设置与多个位线相关联的多个存储单元的编程;以及顺序地启用位线选择栅极,以将数据从页缓冲器加载到存储器的多个位线。在各个位线加载有所选数据之后,停用相关联的位线选择栅极,使得使用位线电容将所选数据维持在位线上。该方法还包括:在所有位线被加载有数据之后等待编程间隔完成,以对与多个位线相关联的多个存储单元进行编程。多个存储单元的至少一部分是同时编程的。
在实施例中,提供了一种NAND闪速存储器,其包括具有多个位线和多个字线的存储器阵列、以及存储待写入到存储器阵列中的数据或从存储器阵列读取的数据的页缓冲器。页缓冲器包括多个数据线,并被配置成同时对存储器阵列的多个单元串中的存储单元进行编程。存储器还包括位线选择栅极,其选择性地将页缓冲器的各个数据线连接到存储器阵列的两个或更多个位线。
在实施例中,提供了一种用于编程NAND闪速存储器的方法。该方法包括:在未选位线维持禁止电压的同时,用偏置电压电平对所选存储单元的所选位线进行预上电;将验证电压施加到耦合到所选存储单元的所选字线;以及在第一时间间隔内使耦合到接通单元的所选位线放电。方法还包括:读出所选位线上的读出电压电平;当读出电压电平高于阈值电平时,用禁止电压电平加载所选位线,并且当读出电压电平等于或低于阈值电平时,用编程电压加载所选位线;以及针对各个所选位线重复读出和加载操作。
在实施例中,提供了一种用于读取多层单元NAND闪速存储器的方法。NAND闪速存储器包括耦合到位线和字线的存储单元串以及耦合到位线的单位数据锁存器。方法包括:通过执行以下操作来读取单元的位:将所选字线电压电平施加到单元,以读出单元的输出;当输出指示单元是断开单元时,将锁存器翻转到第一数据值;以及重复施加和翻转的操作,直到所有字线电压都已经被施加到单元为止,使得位的值被存储在锁存器中。方法还包括对要读取的单元的各个位重复读取操作。
本发明的另外特征和益处将从下面阐述的详细描述、附图和权利要求中变得明了。
附图说明
从下面给出的详细描述和本发明的各种实施例的附图中,将更全面地理解本发明的示例性实施例,然而,不应将其视为将本发明限制于特定实施例,而仅用于解释和理解。
图1A示出了根据本发明实施例的NAND闪速存储器架构的示例性框图。
图1B示出了根据本发明实施例构造的NAND闪速存储器架构的另一实施例。
图1C示出了常规3D NAND闪速存储单元阵列和页缓冲器的详细实施例。
图1D示出了3D NAND存储器阵列的常规结构的配置。
图1E示出了根据本发明的阵列结构的实施例。
图1F示出了根据本发明的3D阵列结构的实施例。
图2A示出了根据本发明实施例的页缓冲器和位线选择栅极配置的实施例。
图2B示出了根据本发明实施例的页缓冲器配置的另一实施例。
图2C至图2E示出了例示根据本发明的位线选择栅极的实施例。
图3A至图3D示出了页缓冲器电路的实施例。
图4A至图4D示出了根据本发明的页缓冲器和位线选择栅极的操作。
图5A至图5E示出了根据本发明的用于多页编程的示例性波形。
图6A至图6C示出了根据本发明实施例的多页读取操作。
图6D示出了根据本发明的页缓冲器、位线选择栅极和数据寄存器的示例性实施例。
图6E示出了根据本发明的页缓冲器和位线选择栅极的示例性实施例。
图6F示出了根据本发明的单层芯片页缓冲器和位线选择栅极的示例性实施例。
图7A至图7D示出了根据本发明的读取操作波形的实施例。
图8A至图8C示出了编程和编程验证操作的实施例。
图9A至图9D示出了被分成子阵列的NAND闪速存储器阵列架构。
图10A至图10E示出了根据本发明的3D阵列架构的实施例。
图11A示出了根据本发明的3D阵列的实施例,其中位线被用作临时数据存储。
图11B示出了根据本发明的波形的实施例,其例示了如何将数据加载到多个位线中。
图11C示出了根据本发明的将数据加载到多个位线的波形的另一实施例。
图11D示出了根据本发明的例示从位线电容器读取数据的示例性波形。
图12A至图12B示出了根据本发明的提供SLC和TLC编程的3D阵列的实施例。
图13示出了例示位线到位线电容的NAND闪速存储器阵列的实施例。
图14示出了具有用于防止位线耦合的位线屏蔽的阵列。
图15A至图15B示出了用于缓解位线到位线耦合的电路和对应波形的另一实施例。
图16示出了解决如参考图15A至图15B描述的最后的位线耦合问题的电路的示例性实施例。
图17A示出了包括如图16例示的偶数和奇数页缓冲器的电路的实施例。
图17B至图17C示出了用于图17A的电路中的阵列(或子阵列)的2D和3D版本的实施例。
图18A至图18B示出了具有分开的位线结构的电路。
图19A至图19B示出了根据本发明的位线选择栅极电路及其对应操作波形的另一个实施例。
图20A至图20B示出了解决位线耦合而不牺牲读取数据吞吐量的电路和相关联的读取波形的实施例。
图21A至图21B示出了根据本发明的读出电路和相关联的操作波形的实施例。
图22A至图22B示出了根据本发明的读出电路和相关联的波形的示例性实施例。
图23A至图23B示出了根据本发明的读出电路和相关联的波形的示例性实施例。
图24A至图24B示出了根据本发明的读出电路和相关联的波形的示例性实施例。
图25A至图25C示出了根据本发明的页缓冲器和位线解码器电路的示例性实施例。
图26A示出了根据本发明的仅利用一个数据锁存器来执行的电路的示例性实施例。
图26B示出了与图26A所示的电路一起使用的编程验证操作。
图26C示出了图26A所示的数据缓冲器的电路实现方式的实施例。
图27A至图27B示出了使用图20A所示的读出电路和关联波形的另一实施例。
图27C示出了根据本发明的使用图3C所示的页缓冲器电路的编程验证操作的另一实施例。
图28A至图28B示出了用于读取操作的波形的示例性实施例。
图29A示出了常规3D NAND闪速存储器的页缓冲器电路的布局布置。
图29B示出了具有两个相邻子阵列601a和601b的常规阵列配置。
图30A示出了根据本发明的用于3D阵列的页缓冲器和电路的布局布置的实施例。
图30B示出了由如图30A所示的两个相邻子阵列形成的瓦片(tile)的示例性实施例。
图31A至图31B示出了根据本发明的页缓冲器配置的实施例。
图32示出了根据本发明的页缓冲器和位线选择栅极结构的示例性实施例。
图33A示出了根据本发明的页缓冲器和位线选择栅极结构的另一实施例。
图33B至图33C示出了被配置成用于MLC编程的实施例。
图34A示出了常规3D NAND闪速存储器的页缓冲器和位线连接。
图34B至图34C示出了根据本发明的3D NAND闪速存储器的页缓冲器和位线连接。
图35示出了三层单元TLC的示例性Vt分布。
图36示出了根据本发明的单个锁存器页缓冲器电路的实施例。
图37A至图37C示出了用于使用图36所示的单个锁存器页缓冲器读取位的方法。
图37D至图37E示出了与图36所示的电路的操作相关联的示例性图。
图38A至图38B示出了波形的实施例,该波形例示了用于使用图36所示的电路读取位的信号。
图39示出了根据本发明的页缓冲器电路的另一实施例。
图40示出了波形的实施例,该波形例示了用于使用图39所示的电路读取位的信号。
图41A示出了使用互补逻辑实现的图36所示的页缓冲器电路的示例性替代实施例。
图41B至图41D示出了与图41A所示的页缓冲器电路的操作相关联的示例性方法和示意图。
图42A至图42F示出了根据本发明的提供用于使用单位锁存器读取多层单元的各种配置的字线电压的示意图。
图43示出了根据本发明的使用单位锁存器读取多层单元的示例性方法。
图44A至图44B示出了根据本发明的示例性阵列结构以及数据加载和输出序列。
图45A至图45C示出了根据本发明的示例性阵列结构以及数据加载和输出序列。
图46A至图46C示出了根据本发明的示例性阵列结构以及数据加载和输出序列。
图47A至图47B例示了根据本发明的刷新操作的实施例。
具体实施方式
在各种示例性实施例中,提供了用于NAND闪速存储器架构的设计和操作的方法和装置,该NAND闪速存储器架构可以与二维(2D)或三维(3D)NAND阵列一起使用。这些实施例也可以应用于单层单元(SLC)、多层单元(MLC)、三层单元(TLC)、四层单元(QLC)或每单元任意数量的位技术。
本领域普通技术人员将认识到,以下详细描述仅是说明性的,而不旨在以任何方式进行限制。受益于本公开的这些技术人员将容易地想到本发明的其它实施例。现在将详细参考如附图中例示的本发明的示例性实施例的实现方式。在整个附图和下面的详细描述中,相同的附图标记将用于表示相同或相似的部分。
图1A示出了根据本发明实施例的NAND闪速存储器架构100的示例性框图。架构100包括可使用多个字线(WL[0-m])和位线(BL[0-k])访问的2D或3D NAND闪速存储器阵列101。架构100包括行解码器102和页缓冲器103。页缓冲器103包含多个页缓冲器,例如图2A和图3A所示的页缓冲器200。页缓冲器103执行用于编程操作的编程缓冲器和用于读取操作的读出放大器两者的功能。在常规的NAND闪速存储器中,各个页缓冲器连接到被称为全位线(All Bit Line,ABL)结构的一位线或被称为半位线(Half Bit Line,HBL)结构的两位线。在任一情况下,可一起编程和读取的位线的数量等于页缓冲器的数量。这被称为“页编程”或“页读取”。增加页缓冲器的数量可以增加数据读/写吞吐量,以增强存储性能。然而,页缓冲器的电路尺寸相当大。它通常占据管芯尺寸的大约20%至40%。因此,页缓冲器的典型数量被在今天的512Gb到1Tb的产品中限制在16Kb到64KB的范围内,这限制了NAND闪速存储器的读/写性能。
在示例性实施例中,架构100包括位线选择栅极块106。位线选择栅极块106包含多个位线选择栅极,例如图2A和图2B所示的选择栅极210。位线选择栅极允许页缓冲器耦合到多个位线。通过使用所公开的新颖架构,可一起编程并读取多个位线。这被称为“多页编程”和“多页读取”。这可以在不增加页缓冲器的数量的情况下显著地增加数据读/写吞吐量。
在实施例中,提供数据寄存器104a-d,并且也可以称其为数据高速缓存。尽管示出了四个数据寄存器,但是可以存在任意期望数量的数据寄存器。数据寄存器允许阵列101的操作与数据输入/输出(I/O)之间的并行性。在操作期间,当阵列101使用页缓冲器103执行读取或写入操作时,可将新数据加载到数据寄存器104a-d中或从数据寄存器输出。这可以增强存储器的性能。在实施例中,架构100包括连接到外部数据总线DQ[0-n]的输入/输出(I/O)缓冲器106。
图1B示出了根据本发明实施例构造的NAND闪速存储器架构107的另一实施例。在本实施例中,阵列被分成多个子阵列101a至101p。各个子阵列具有各自的行解码器102a至102p、位线选择栅极106a至106p和页缓冲器103a至103p。在实施例中,各个子阵列具有与图1A所示的阵列101相同数量的位线,例如,子阵列101a的BLa[0-k]和子阵列101p的BLp[0-k]。在实施例中,页缓冲器的总数与图1A所示的实施例相同,以保持管芯尺寸相同。假定子阵列的数量是P,则各个子阵列101a至101p的页缓冲器103a至103p的数量将减少到1/P。结果,连接到各个页缓冲器的位线的数量增加P倍。
图1C示出了常规3D NAND闪速存储单元阵列101和页缓冲器103的详细实施例。存储器阵列101包含位线BL[0-K]。各个位线连接到页缓冲器200a到200k中的一个。
图1D示出了3D NAND存储器阵列的常规结构的配置。3D存储单元阵列101位于页缓冲器电路103的顶部,以节省硅面积。
图1E示出了根据本发明的阵列结构的实施例。位线BL[0-k]通过位线选择栅极106连接到页缓冲器103。因此,与常规架构相比,可以减少页缓冲器103的数量。例如,两个位线连接到各个页缓冲器,这减少了所使用的页缓冲器的数量。
图1F示出了根据本发明的3D阵列结构的实施例。3D单元阵列被分成位于页缓冲器103a到103d顶部的子阵列101a至101d。通过位线选择栅极106a至106d访问子阵列101a至101d。各个子阵列连接到一个页缓冲器。
图2A示出了根据本发明实施例的页缓冲器和位线选择栅极配置的实施例。位线201a至201n是阵列或子阵列中的多个位线BL[0]至BL[n]。位线可包含多个NAND闪速存储单元串,例如串211a到211n。可以使用2D或3D阵列架构来形成串。位线通过包括单独的选择栅极202a至202n的位线选择栅极210连接到页缓冲器200。各个位线选择栅极202a到202n可分别通过选择栅极信号BSG[0]到BSG[n]来选择性地启用或停用。连接到一个页缓冲器的位线的数量可以是任意数量,例如2、4、8、16等。对于可以连接到一个页缓冲器的位线的数量没有限制。
页缓冲器200用作编程缓冲器和读出放大器两者。页缓冲器200包含多个锁存器207a至207n,以存储编程数据。读出放大器208操作为从单元读取数据。在编程模式中,锁存器207a至207n将编程数据施加到位线。在编程验证模式中,读出放大器208从单元读取数据,并且更新存储在锁存器207a至207n中的编程数据。在读取模式中,读出放大器208从单元读取数据并将其存储在锁存器207a至207b中,然后可以将数据传送到输出缓冲器。
在编程期间的常规系统中,一个页缓冲器一次可仅将一个数据值提供到一个位线。在读取和编程验证期间,一个页缓冲器一次仅可从一个位线读取数据。因此,编程、验证和读取中的总位线等于页缓冲器的数量。例如,在一个常规系统中,各个位线连接到一个页缓冲器。这被称为全位线(ABL)架构。在另一常规设计中,与一个页缓冲器共享两个位线。这种架构被称为半位线(HBL)架构。这种架构减少了一半数量的页缓冲器。然而,在读取和写入模式期间,仅一半位线可以连接到页缓冲器,因此数据吞吐量减少1/2。
在各种示例性实施例中,公开了一种新颖的架构,以利用一个页缓冲器同时读取和写入多个位线,因此可以显著地增加数据吞吐量。例如,在图2A中,假定选择字线WL[m],那么可由一个页缓冲器200同时读取和编程单元204a至204n。因此,可以减少页缓冲器的数量,并且可以增加读取和写入数据吞吐量。下面提供对新颖的NAND闪速存储器架构的设计和操作的更详细描述。
还应注意,单元204a至204n可属于不同页。页可以通过位线选择栅极信号BSG[0]至BSG[n]来选择。因此,该架构可以提供多个位线读取和写入操作、或者多页读取和写入操作。
在传统的页缓冲器设计中,页缓冲器中的锁存器的数量由存储在一个单元中的位的数量确定。例如,对于SLC设计,页缓冲器可以仅具有一个锁存器,以存储1位数据。对于MLC设计,页缓冲器可具有两个锁存器,以存储2位数据。对于TLC,页缓冲器可以具有3个锁存器,以存储3位数据。对于QLC,页缓冲器可以具有4个锁存器,以存储4位数据。然而,根据本发明的实施例,可添加额外的锁存器,以进一步增强多页读取和写入操作的优点。
图2B示出了根据本发明实施例的页缓冲器配置的另一实施例。如图2B例示,阵列可具有多层位线选择栅极,例如202a至202n和205a至205k。在这种情况下,选择栅极202a至202n是连接到控制信号BSGA[0]至BSGA[n]的第一层位线选择栅极。选择栅极205a至205k是连接到控制信号BSGB[0]至BSGB[k]的第二层位线选择栅极。与图2A所示的实施例相比,该实施例减少了控制信号的数量。例如,假定16个位线共享一个页缓冲器,则图2A中的实施例使用16个控制信号,而图2B中的实施例使用8个控制信号(例如,4个用于第一层且4个用于第二层)。在各种实施例中,不存在对可以使用的位线选择栅极的层数的限制。例如,阵列可具有2、3、4等层位线选择栅极。在实施例中,位线选择栅极可使用任意合适的器件来实现。它们不仅限于NMOS器件。
图2C至图2E示出了例示根据本发明的位线选择栅极的实施例。
图2C示出了这样的电路,其例示了可如何通过原生器件或耗尽模式器件来实现位线选择栅极202a到202n,以增加位线预上电电压和电流。
图2D示出了这样的电路,其例示了可如何通过PMOS器件来实现位线选择栅极202a到202n。
图2E示出了这样的电路,其例示了可如何通过PMOS-NMOS对来实现位线选择栅极202a到202n。而且,位线选择栅极可由高压(High Voltage,HV)器件或低压(Low Voltage,LV)器件来实现。这些修改和变化在实施例的范围内。
图3A示出了页缓冲器电路200的实施例。页缓冲器200电路被配置成编程缓冲器和读出放大器(sense amplifier)两者。编程缓冲器包括三个锁存器207a至207c。锁存器207a至207c将数据存储在如图所示的Q0、Q1和Q2节点中。锁存器207a至207c的数据可以通过接通设置器件311a至311c而被设置为0(0V),并且通过接通复位器件312a至312c而被复位为1(VDD)。还示出了锁存器旁通栅极220a至220d。在编程模式期间,首先将3位数据D0、D1和D2加载到三个锁存器207a至207c中。信号P0至P3根据编程的Vt电平选择并接通旁通栅极220a至220d中的一个,以将锁存器207a至207c的数据旁通到所选位线,以编程所选单元。还示出了读出放大器208。
在读取模式期间,可由读出放大器208从单元读取数据,然后将其锁存于三个锁存器207a到207c中。读出放大器的读出节点302由(SA)表示。读出节点302连接到读出器件310的栅极。读出放大器208包括预上电器件303和放电器件304。在位线预上电期间,接通预上电器件303,以将SA节点302和位线预上电到VDD。在读取模式期间,向信号PREB施加VDD,以断开预上电器件303,或向信号施加参考电压Vref,以限制预上电器件303的上拉电流。上拉电流被设计成低于接通单元电流,因此接通单元可使位线放电,以将SA节点302拉低。
在接通单元将位线电压放电到读出器件310的Vt以下之后,取决于读取D0到D2位中的哪一者,向到S0到S2的所选信号施加脉冲,以接通设置器件311a到311c,以设置锁存器207a到207c。锁存器207a至207c先前被复位为数据1(VDD)。对于接通单元,位线和SA节点302放电成低于读出器件310的Vt,这断开读出器件310,因此锁存器的数据保持在1(VDD)。对于断开单元,因为SA节点302保持在VDD,这接通读出器件310并且允许锁存器被设置为数据0(VDD)。
更详细的操作将在下面参考图6A至图6C描述读出放大器208的操作。
应当注意,图3A所示的示例性电路不具有偏压器件。然而,图3B例示了包括偏压器件306的替代电路。偏压器件306用作级联级,以控制位线的预上电电压。在图3A所示的实施例中,偏压器件的功能由位线选择栅极执行,该功能由图7D和图20A至图20B所示的读取操作波形例示。
在另一实施例中,图3A所示的页缓冲器电路可以修改成如图3D所示的那样,以包括偏压器件306。在图3D所示的实施例中,BIAS信号向偏压器件306施加偏压,以控制位线预上电电压。因此,可向位线选择栅极的信号供应VDD电平。
图3B示出了页缓冲器电路200的另一实施例。图3B所示的页缓冲器200用于电流读出,而图3A所示的实施例用于电压读出。在该实施例中,将例如比较器305的增益级添加到读出放大器208,以放大读出节点302的电压。在另一实施例中,比较器305由反相器代替。而且,可以添加偏压器件306,以变成级联级。偏压器件306将位线的预上电电压限制在(BIAS-Vt)而非VDD,因此减少了预上电时间。
图3C示出了将单个数据锁存器用于SLC应用的页缓冲器电路200的另一实施例。页缓冲器200电路被配置成编程缓冲器和读出放大器两者。编程缓冲器包括数据锁存器207。还示出了锁存器旁通栅极220。在编程模式期间,信号PGM接通旁通栅极220,以将锁存器207的数据旁通到所选位线,以对所选单元进行编程。还示出了读出放大器208。在读取模式期间,可由读出放大器208从单元读取数据,然后将其锁存于数据锁存器207中。读出放大器的读出节点302由(SA)表示。读出放大器208包括预上电器件303。在读取和编程验证模式期间,信号PREB接通预上电器件303,以将SA节点充电至VDD,并且还通过偏压器件306对所选位线充电。信号BIAS施加于偏压器件306,以控制所选位线的预上电电压。位线将被预上电到BIAS-Vt,其中,Vt是偏压器件306的阈值电压。在位线被预上电之后,通过向所选字线施加读取电压来读取所选单元。如果所选单元是接通单元,则其将使位线电压放电。当位线电压放电至低于BIAS-Vt时,偏压器件306将被接通并将SA节点下拉至与位线相同的电压。当位线电压放电至读出器件310的Vt以下时,读出器件310断开。如果单元是断开单元,则位线将保持在预上电电压,SA节点将保持在VDD。SA节点电压将接通读出器件310。设置器件311和复位器件312用于设置和复位锁存器207的Q和QB节点。当器件310接通时,信号SET或RES可被供以VDD电平脉冲,以接通器件311或312,以分别将锁存器207的Q节点设置为数据0(0V)或数据1(VDD)。
图4A至图4D示出了根据本发明的页缓冲器和位线选择栅极的操作。
图4A示出了使用TLC页缓冲器200的示例性实施例。TLC页缓冲器200包括三个数据锁存器207a至207c和读出放大器208。对于使用MLC和QLC的实施例,页缓冲器可分别包含两个和四个数据锁存器。页缓冲器200通过位线选择栅极202a至202c连接到多个位线201a至201c。位线电容206a至206c分别表示位线201a至201c的位线电容。
图4B例示了基本的TLC编程操作。TLC编程操作将三个数据位编程到一个所选单元中。TLC编程可包含多个编程步骤,以将单元从已擦除Vt编程为八个Vt电平,以表示三个数据位。假定选择了单元204a。在各个编程步骤中,可根据编程哪一Vt电平来选择数据锁存器207a到207c中的一个,以将数据加载到所选位线201a,以编程单元204a。例如,当编程D0位时,将存储在锁存器0 207a中的数据加载到所选位线201a,以编程所选单元204a。当编程D1位时,可以将存储在锁存器1 207b中的数据加载到所选位线201a,以编程所选单元204a。当编程D2位时,可以将存储在锁存器2 207c中的数据加载到所选位线201a,以编程所选单元204a。在该操作中,被编程的单元的数量等于页缓冲器的数量。因此,其被称为“单页编程”。
图4C示出了根据本发明的多页编程操作。在实施例中,将存储在锁存器207a至207c中的数据同时编程到多个位线201a至201c上的多个单元204a至204c。如果页缓冲器具有N个数据锁存器,则其可以同时对N个单元进行编程。这显著地增加了N倍的编程数据吞吐量。
为了加载多页数据,可以顺序地接通位线选择栅极202a至202c,以将数据从锁存器207a至207c分别加载到位线201a至201c,如箭头线所示。在将数据加载到位线201a到201c之后,断开位线选择栅极202a到202c,然后数据由位线电容206a到206c保持。之后,将编程条件施加至所选择的字线WL[m],以根据存储在位线电容206a至206c中的数据来编程所选择的单元204a至204c。通过使用这些操作,可以同时对多个位线的数据进行编程。
在示例性实施例中,页缓冲器执行两种编程功能模式。一种是TLC编程,另一种是SLC编程。当页缓冲器执行TLC编程时,使用数据锁存器207a至207c来存储一个单元的三位数据D0、D1和D2,并且将这三个数据位编程到单个单元中。在SLC编程中,可以使用三个数据锁存器来存储三个单位数据,然后将该数据编程到三个单元中。这被称为“多页编程”。
通过使用上述多页SLC编程,可以显著地增加数据吞吐量。因此,该模式可以用于将数据高速编程到单元中。稍后在空闲时间中,可从SLC单元读出数据并使用TLC模式将其重新编程到其它单元,然后可擦除SLC单元,以增加存储器的存储容量。
所公开的多页编程操作不仅可应用于SLC,而且可应用于多层单元,例如MLC、TLC和QLC等。例如,参考图4C,假定使用TLC模式将三个页的数据编程到所选的单元204a到204c中。各个单元可存储八个Vt电平中的一个,以表示三个数据位D0、D1及D2。在第一步骤中,将第一页的数据加载到数据锁存器207a至207c中。然后,使用先前描述的操作将数据顺序地加载到位线201a至201c,然后将编程条件施加到单元204a至204c,以根据位线数据对各个单元进行编程。单元将被编程到对应于D0位的Vt电平。可执行编程验证操作,以检查单元的Vt。编程验证操作将在稍后参考图6A至图6C描述。在成功编程数据之后,可以清除锁存器207a到207c中的数据。
在第二步骤中,将第二页的数据加载到三个锁存器207a到207c中,然后顺序地加载到位线201a到201c,以将单元204a到204c编程到对应于D1位的Vt电平。在成功编程第二页的数据之后,可以清除锁存器207a至207c中的数据。在第三步骤中,将第三页的数据加载到锁存器207a到207c,然后将其施加到位线201a到201c,以将单元204a到204c编程到对应于D2位的Vt电平。通过重复序列,可将单元编程到任何数量的多层单元,例如MLC、TLC、QLC等。
图4D示出了根据本发明的另一示例性编程实施例。假定芯片具有多个数据寄存器212a到212c。各个数据寄存器包含多位锁存器,例如Reg 0至Reg 2。在SLC编程模式期间,将第一数据寄存器212a的数据加载到锁存器207a至207c,然后将其分别加载到位线201a至201c,以对单元204a至204c进行编程。在成功编程数据之后,可以将下一寄存器212b的数据加载到锁存器207a到207c,然后将其分别加载到位线201a到201c,以编程另一页,例如单元214a到214b。这样,可以同时编程多个页的数据,以增加编程数据吞吐量。
对于TLC编程模式,可以将存储在第一数据寄存器212a中的数据传送到锁存器207a至207c,然后将其编程到对应于所选单元204a至204c的D0位的Vt电平。然后,可将存储在第二数据寄存器212b中的数据传送到锁存器207a到207c,然后将其编程到对应于所选单元204a到204c的D1位的Vt电平。可重复该操作,以将第三数据寄存器212c的数据编程到所选单元204a至204c的D2位。
在实施例中,数据寄存器212a至212c中的数据可以以任意适当的顺序编程到单元。例如,在另一实施例中,在第一步骤中,可将存储在数据寄存器212a至212c的Reg 0中的数据顺序传送到数据锁存器207a,然后将其加载到位线201a至201c,然后编程到用于单元204a至204c的D0位的Vt电平。在第二步骤中,可将存储在数据寄存器212a至212c的Reg 1中的数据顺序传送到数据锁存器207b,然后将其加载到位线201a至201c,然后编程到用于单元204a至204c中的D1位的Vt电平。在第三步骤中,可将存储在数据寄存器212a至212c的Reg2中的数据顺序传送到数据锁存器207c,然后将其加载到位线201a至201c,然后编程到用于单元204a至204c中的D2位的Vt电平。
图5A示出了用于如图4C所示的电路的多页编程的示例性波形。现在参考图4C和图5A两者,在时间T1,BSG[0]到BSG[2]可变高,以接通位线选择栅极202a到202c。假定页缓冲器的输出数据被称为PB。页缓冲器(Page Buffer,PB)可以将VDD施加到所有位线BL[0]到BL[2]。所选单元串的漏极选择栅极(Drain Select Gate,DSG)被供以VDD。源极选择栅极(Source Select Gate,SSG)被供以0V。因此,可将串STRG[0]到STRG[2]的沟道区充电到漏极选择栅极的VDD-Vt。
在时间T2,分别向所选字线WL[m]和其它未所选字线供应例如20V的编程电压和例如10V的禁止电压。字线的电压可将所有串STRG[0]至STRG[2]的沟道区耦合至约8V的电压。该电压可抑制单元的编程。由于位线被供以VDD,所以漏极选择栅极被反向偏压。因此,漏极选择栅极将被断开,以防止沟道电压泄漏到位线。
在时间T3,断开位线选择栅极BSG[0]到BSG[2]。例如图4C所示的206a至206c的位线电容将位线的电压保持在VDD。
在时间T4,接通第一位线选择栅极BSG[0],并且页缓冲器(PB)将第一数据施加到第一位线BL[0]。如果数据是“1”(VDD),则串STRG[0]的沟道将保持在例如8V的禁止电压。如果数据为“0”(0V),则将接通漏极选择栅极并将串STRG[0]放电到0V。这将导致第一所选单元204a被编程。在T5时间断开第一位线选择栅极BSG[0]之后,由于位线电容206a,位线BL[0]和串STRG[0]可保持在0V。
可重复这些步骤,以顺序接通位线选择栅极BSG[1]到BSG[2],以将数据从页缓冲器(PB)加载到位线BL[1]和BL[2]及其串STRG[1]和STRG[2]。
在加载所有数据之后,在时间T6,计时器可开始在从10us到30us的时间间隔内对编程脉冲Tpgm进行计数。然后,结束编程脉冲。通过使用以上过程,可向多个位线加载不同数据并同时对其进行编程。
应当注意,图5A的波形是用于说明而不是按比例绘制的。实际上,总编程时间由Tpgm支配。数据加载时间可以忽略。因此,多页编程可以显著地减少总编程时间并且增加编程数据吞吐量。
图5B示出了根据本发明的用于多页编程的波形的另一实施例。这些波形类似于图5A所示的波形,除了可以在时间T1将位线预上电到VDD之后断开位线选择栅极BSG[0]到BSG[2](如506例示)。因此,位线的电压由位线电容保持。
图5C示出了根据本发明的用于多页编程的波形的另一实施例。这些波形类似于图5A,除了可在T6时间将数据加载到多个位线(如508例示)之后断开所选串的漏极选择栅极(DSG)。这样,如果浮动位线具有泄漏,则位线电压需要从VDD下降到低于漏极选择栅极的Vt,以接通漏极选择栅极。因此,该方法为串的禁止电压提供了更高的故障裕度。
图5D示出了用于多页编程的波形的另一实施例,其中,图5C所示的操作被应用于图5B所示的波形,以产生图5D所示的波形。在实施例中,在T1时间预上电(如510例示)串之后,断开所选串的漏极选择栅极(DSG)。DSG可在T3时间接通(如512例示),以将多个页的数据加载到串中,然后在T6时间断开(如514例示),以增加浮动位线的泄漏裕度。
图5E示出了根据本发明的用于多页编程的波形的另一实施例。在时间T1,接通所选漏极选择栅极(DSG),并且断开源极选择栅极(SSG)。从T1至T2时间,页缓冲器(PB)供应多页数据:数据0、数据1和数据2。顺序接通位线选择栅极BSG[0]至BSG[2],以将数据加载到BL[0]至BL[2]和STRG[0]至STRG[2]。在时间T3,分别向所选字线和未选字线供应编程电压20V和禁止电压10V。字线的电压将数据值为“1”的STRG[0]至STRG[2]的沟道区耦合至约8V的电压,以禁止单元的编程。对于存储数据值“0”(0V)的串,漏极选择栅极接通,因此其将导致串的电容与位线电容之间的电荷共享。由于位线电容远高于串的电容,结果,串的电压非常接近于0V。这将导致所选单元被编程。
在实施例中,图2A所示的电路允许通过使用页缓冲器200同时对多页单元进行编程验证和读取。
图6A至图6C示出了根据本发明实施例的多页读取操作。在实施例中,多页读取操作包括三个步骤。三个步骤是对位线预上电、对位线放电和读出。
图6A示出了执行预上电位线步骤的示例性电路。在操作期间,接通所有位线选择栅极202a到202c,并且接通例如图3A所示的读出放大器208中的器件303的预上电器件,以将位线电容206a到206c预上电到例如VDD或Vbias-Vt的预上电电压,如虚线所示。
图6B示出了执行放电位线步骤的示例性电路。在操作期间,断开位线选择栅极201a到202c。将读取偏压条件施加到所选单元204a到204c。向例如WL[m]的所选字线供应读取电压,以根据单元的Vt接通或断开单元204a到204c。接通单元将同时对位线放电。假定单元204a和204b分别是接通单元和断开单元。接通单元204a将位线电容206a放电到0V。断开单元204b将不使位线放电,因此位线电容206b将保持在预上电电压。由于接通单元电流非常低(例如,仅约1uA),且位线电容由于其连接到许多串而为高,因此该位线放电步骤可能花费约25us到35us。因此,读取时间由位线放电时间支配。因此,通过使用根据本发明的多个位线放电,总读取时间减少且读取数据吞吐量显著增加。
图6C示出了执行读出步骤的示例性电路。在该步骤中,顺序接通位线选择栅极202a至202c,以允许由位线电容206a至206c存储的数据被页缓冲器的读出放大器208读出,如虚线所示。当位线选择栅极接通时,其将导致位线电容与页缓冲器电路的读出节点302之间的电荷共享,如图3A所示。因为读出节点302的电容远低于位线电容,所以读出节点302将在非常短的时间内被上拉或下拉。因此,可以在非常短的时间内读取各个位线的数据。
在数据被存储在数据锁存器207a至207c中之后,数据可以被传送到数据寄存器,然后数据寄存器可以开始输出数据。同时,页缓冲器可以开始从单元读取下一页的数据。如果芯片没有数据寄存器,则数据可以直接从页缓冲器的数据锁存器输出,然后页缓冲器可以开始从单元读取下一页的数据。
在实施例中,图6A至图6C所示的操作也可用于多页编程验证。编程验证操作与读取操作非常类似。唯一的差别是字线电压和数据锁存器的操作。在读取模式中,将从单元读取的数据直接存储在数据锁存器中。在编程验证模式中,将从单元读取的数据用于更新数据锁存器中的数据。
参考图6B,对于编程验证条件,可向所选字线供应编程验证电压而不是读取电压,以便检查单元的Vt。在图6C中,在读出放大器208读取单元的数据之后,数据将用于更新存储在锁存器207a至207c中的数据,以用于下一编程脉冲。更新锁存器的逻辑操作是公知的,因此在此不进行描述。
图6D示出了根据本发明的页缓冲器、位线选择栅极和数据寄存器的示例性实施例。在实施例中,根据本发明,页缓冲器200和位线选择栅极202增加了编程和读取数据吞吐量。在该实施例中,芯片包含多个数据寄存器212a至212n。还示出了NAND闪速存储单元串211a至211f、包括读出放大器208和多个数据锁存器207a至207c的页缓冲器200、以及位线选择栅极202a至202f。在操作期间,第一数据寄存器212a的数据被传送到数据锁存器207a至207c,然后通过位线选择栅极202a到202c将该数据加载到位线201a到201c,以编程第一组串215a,并且第二数据寄存器212n的数据传送到数据锁存器207a到207c,然后通过位线选择栅极202d至202f将该数据加载到位线201d到201f,以编程第二组串215b。
在读取操作期间,读取第一组串215a的数据并将其存储在位线201a至201c的电容中。该数据由读出放大器208通过位线选择栅极202a至202c读出并锁存在数据锁存器207a至207c中。然后,将数据锁存器207a至207c的数据传送到第一数据寄存器212a。类似地,读取第二组串215b的数据并将其传送到第二数据寄存器212n。然后,可以将数据从数据寄存器212a到212n输出到I/O电路。
图6E示出了根据本发明的页缓冲器和位线选择栅极的示例性实施例。根据本发明,页缓冲器200和位线选择栅极202操作为增加编程和读取数据吞吐量。该实施例类似于图6D所示的实施例,除了排除了数据寄存器212a至212n。页缓冲器200包括多个数据锁存器207a至207c。数据锁存器207a至207c直接连接到I/O(输入/输出)总线600。在编程操作期间,将数据从I/O总线600顺序地加载到数据锁存器207a至207c,然后加载到位线201a至201o和串组215a至215m。在读取操作期间,从位线201a至201o读取串组215a至215m的数据并顺序地加载至数据锁存器207a至207c,然后输出至I/O总线600。
图6F示出了根据本发明的单层单元(SLC)页缓冲器和位线选择栅极的示例性实施例。根据本发明,页缓冲器200和位线选择栅极202操作为增加编程和读取数据吞吐量。该实施例类似于图6A所示的实施例,除了页缓冲器200具有用于SLC应用的单个数据锁存器207。页缓冲器200通过位线选择栅极202a至202n连接到多个位线201a至201n。在编程操作期间,可以通过信号BSG[0]至BSG[n]顺序接通位线选择栅极202a至202n,以将编程数据从页缓冲器200分别加载至位线201a至201n。数据被存储在位线电容206a至206n中,并且分别被编程到所选单元204a至204n。因为可以通过使用一个编程脉冲同时编程多个单元204a至204n,所以该实施例显著增加了编程吞吐量。
在读取操作期间,可以读取单元204a至204n的数据并该将数据存储在位线电容206a至206n中。可以顺序接通位线选择栅极202a至202n,以分别由页缓冲器的读出放大器208读出位线电容206a至206n的数据。因为可以通过使用一个位线放电周期同时读取多个单元204a至204n,因此本实施例显著地增加了读取吞吐量。
图7A示出了根据本发明的图6A至图6C所示实施例的读取操作波形的实施例。图3A中示出了页缓冲器200的详细电路。在时间T1,所选字线被供以读取电压Vread,以读取所选单元,未选字线被供以旁通电压Vpass,该电压高于接通未选单元的、NAND单元串中未选单元的Vt。接通漏极选择栅极(DSG)和源极选择栅极(SSG)。源极线(Source Line,SL)被供以0V。这些条件将接通单元接通并将断开单元断开。
在时间T2,接通位线选择栅极BSG[0]至BSG[2],并且如图3A中的页缓冲器电路所示,激活预上电信号PREB,以将BL[0]至BL[2]预上电到(位线选择栅极的)VDD-Vt或预定电压。
在时间T3,断开位线选择栅极BSG[0]至BSG[2]。位线BL[0]至BL[2]将变为浮动的,且所选单元将开始对位线放电。对于接通单元,该单元将传导电流,以将单元串和位线放电到0V。对于断开单元,位线将由于单元被断开而保持在预上电电压。
因为接通单元电流非常低,可能仅为1uA到5uA,且位线电容大,所以可能花费长时间来对位线放电。对位线放电的时间在约25us到35us的范围内。结果,示出为Tdis的位线放电时间可支配整个读取时间。然而,根据本发明,所有BL[0]至BL[2]同时放电,因此显著地减少总读取时间。
在预定放电时间Tdis之后,在时间T4,可接通第一位线选择栅极BSG[0]。这使得电荷共享发生在读出节点(SA)与BL[0]之间。因为BL[0]具有比读出放大器的读出节点(SA)高得多的电容,所以读出节点(SA)可在非常短的时间内充电到几乎VDD或放电到几乎0V。然后,激活第一设置信号S0,以将数据锁存到页缓冲器的第一数据锁存器。在锁存数据之后,可以断开BSG[0],以将BL[0]与读出节点(SA)隔离。
参考图3A所示的页缓冲器电路,在读取操作开始时,锁存器207a至207c被复位至数据1。在时间T4,设置信号S0接通设置器件311a。如果读出节点(SA)电压接近VDD,则其将接通读出器件310并允许信号S0将锁存器207a设置为数据0(断开单元)。如果读出节点(SA)电压接近0V,则其将断开读出器件310,因此设置信号S0将不设置锁存器207a,并且锁存器207a保持在数据1(接通单元)。
在时间T5,激活预上电信号PREB,以将读出节点(SA)预上电至VDD。然后,接通第二位线选择栅极BSG[1],以读取第二位线BL[1]的数据。重复从T4到T5的步骤,以从BL[1]和BL[2]读取数据,并使用设置信号S1和S2分别将数据锁存在数据锁存器207b和207c中。
如果芯片没有数据寄存器,则可以在数据锁存到页缓冲器后,直接从页缓冲器输出数据。如果芯片具有如图4D中的212a到212c所示的数据寄存器,则数据可以从页缓冲器传送到数据寄存器。因此,数据寄存器可将数据输出到I/O缓冲器,同时页缓冲器读取下一位线的数据。
在该实施例中,可以通过仅使用一个页缓冲器电路来读取多个位线。由于位线BL[0]到BL[2]同时放电,所以总读取时间和读取数据吞吐量增加三倍。
图7A所示的波形是用于读取一个Vt电平。对于例如MLC、TLC和QLC的多层单元,波形可以不同的所选字线电压重复多次,以读取所选单元的多个位。
图7A所示的波形示出了实施例的基本概念。可以根据许多设计考虑或要求来修改波形。例如,在另一实施例中,可以在T3之后而不是在T1施加字线电压。这些修改和变化将保持在实施例的范围内。
在另一实施例中,再次参考图7A,在时间T2,信号BSG[0]至BSG[2]被供以偏压Vbias,以限制位线的预上电电压。位线BL[0:2]将被预上电至位线选择栅极的Vbias-Vt。因为位线被预上电到较低的电压,所以这减少了位线放电时间Tdis。在示例性实施例中,Vbias可以略高于图3A所示的读出器件310的Vt。这种情况减少了接通单元将位线电压放电至读出器件310的Vt以下的时间。对于断开单元,因为位线预上电电压高于读出器件310的Vt,所以读出器件将接通,以允许信号S0设置锁存器207a。
在使用图3D所示的页缓冲器电路的另一示例性实施例中,位线的预上电电压可以由偏压器件306限制。在预上电期间,信号BIAS被供以偏压Vbias,以将位线BL[0]至BL[2]预上电至偏压器件306的Vbias-Vt。信号BSG[0]至BSG[0]被供以VDD电平。这减少了位线放电时间Tdis。在示例性实施例中,Vbias可以略高于Vt1+Vt2,其中,Vt1和Vt2分别是偏压器件306和读出器件310的阈值电压。这样,位线被预上电至略高于读出器件310的Vt,因此减少位线放电时间。
图7B示出了根据本发明的读取操作波形的另一实施例。该实施例类似于图7A所示的实施例,除了在时间T1,源极线(SL)被供以正电压,例如VDD。
在时间T2,激活如图3A中的页缓冲器电路所示的放电信号(Discharge Signal,DIS),以将读出节点(SA)和位线BL[0]到BL[2]放电到0V。
在时间T3,断开位线选择栅极BSG[0]到BSG[2],因此位线BL[0]至BL[n]变为浮动的。接通单元可以开始对位线充电。位线可被充电到(接通单元的)Vread-Vt。
在时间T4,激活预上电信号PREB,以将读出节点(SA)预上电至VDD。然后,接通位线选择栅极BSG[0]。BSG[0]的电压可不高于(位线选择栅极的)位线电压+Vt。因此,对于接通单元,位线选择栅极将被断开。读出节点(SA)将保持在VDD。对于断开单元,因为BL保持在0V,所以位线选择栅极将被接通。由于位线与读出节点之间的电荷共享,读出节点(SA)将放电至几乎0V。然后,激活锁存信号LAT,以将读出节点的数据锁存在页缓冲器中。然后,可以重复从时间T4到T5的步骤,以从下一位线读取数据。
图7C示出了根据本发明的读取操作波形的另一实施例。该实施例使用电流读出操作。例如,图3B所示的页缓冲器电路可以用于执行电流读出。图7C所示的操作类似于图7A所示的操作,除了在时间T1,激活预上电信号PREB,以预上电读出节点(SA)和位线BL[0]至BL[2]。向图3B所示的偏压器件306施加偏压,以将位线预上电电压限制在(偏压器件的)Vbias-Vt。时间T3与T4之间的位线放电时间短得多,因为电流读出不需要位线电压放电到接近0V。只需将位线电压放电至Vbias-Vt以下,即可接通偏压器件。在时间T4,向预上电信号PREB供应参考电压Vref,以限制图3B所示的预上电器件303的上拉电流。上拉电流低于接通单元的电流。因此,对于接通单元,读出节点(SA)可被放电到与接通单元的电压相同的位线电压。对于断开单元,读出节点(SA)保持在VDD。结果,比较器305的增益级将SA电压放大到全VDD和0V。然后,执行如图7A所述的操作。
图7D示出了利用电流读出的根据本发明的读取操作波形的另一实施例。该实施例与图7C所示的实施例类似,除了图3B所示的偏压器件306被去除。因此,由位线选择栅极202a至202n执行偏压器件的功能。在预上电及读出期间,位线选择栅极BSG[0]到BSG[n]被供以偏压Vbias,如图7D所示。
图8A示出了编程和编程验证脉冲的实施例。如图8A所示,字线(WL)经历编程脉冲801和编程验证脉冲802。在这些时间期间,字线相应地被供以编程电压和验证电压。对于编程脉冲801,顺序地加载多个页的数据(如803所示),然后同时编程(如804所示)。对于验证脉冲802,同时对多个页的位线放电(如805所示),然后顺序读出位线的数据(如806所示)。
图8B示出了读取操作的实施例。如图8B所示,同时对多个页的位线放电(如807所示),然后顺序读出位线的数据(如808所示)。
图8C示出了MLC读取或编程验证操作的实施例。如图8C所示,字线被供以多电平电压809a至809c。对于各个电平,同时对多个位线进行放电,如801a到801c所示,且顺序地进行读出,如811a到811c所示。
图9A示出了传统NAND闪速存储器阵列架构。如图9A所示,使用M个字线和N个位线访问阵列901。提供页缓冲器902,其包含与位线的数量相同数量的缓冲器。
图9B示出了根据本发明的阵列架构的实施例。如图9B所示,阵列被分成两个子阵列901a和901b。各个子阵列使用M/2个字线和N个位线来访问。各个子阵列通过2到1位线选择栅极903a和903b连接到页缓冲器902a及902b中的一者。因此,页缓冲器902a和902b的数量可以各自是N/2。结果,总页缓冲器的数量是N,其与图9A所示的阵列中相同。因此,图9A至图9B所示的阵列架构的硅面积是类似的。然而,如上所述,与图9A所示的阵列相比,图9B中的阵列架构可使读取数据吞吐量加倍。此外,图9B所示的阵列架构的位线长度是图9A所示的阵列的BL长度的1/2,因此其BL电容也是一半。因此,BL放电时间可以减少到1/2。因为BL放电时间在总的读取时间中处于支配对位,所以总的读取时间可以减少大约1/2。请注意,此读取时间减少可有益于随机读取及顺序读取操作两者。而且,子阵列901a和901b可以被独立地读取和编程。这导致2平面操作。
图9C示出了使用4个子阵列901a至901d的阵列架构的另一实施例。各个子阵列使用N/4个页缓冲器,例如902a到902d。位线通过4到1BL选择栅极(例如903a到903d)连接到页缓冲器。结果,总页缓冲器数量与图9A所示的阵列相同。因此,该阵列架构的硅面积与图9A所示的阵列类似。然而,根据本发明,与图9A的阵列相比,该阵列具有4倍的读取数据吞吐量。此外,对于这种阵列架构,位线长度变为1/4,其位线电容以及位线放电时间也变为1/4。结果,读取时延也变成1/4。而且,4个子阵列901a到901d可以被独立地读取和编程,这导致4平面操作。
在各种示例性实施例中,阵列被分成任意数量的子阵列。可以获得更多的子阵列、更短的读取时延和更高的数据吞吐量。
图9D假定阵列被分成K个子阵列。读取时延变为1/K,并且数据吞吐量变为阵列的K倍,如图9A所示。例如,典型的SLC NAND闪速存储器读取时延为大约25us,并且数据吞吐量为大约640MB/s。假定阵列被分成32个子阵列,则读取时延可以被减少到25us/32=0.8us,并且数据吞吐量可以被增加到640Mb/s×32=20.5GB/s,而管芯尺寸保持大致相同。当使用例如8或16的低I/O引脚数时,这种高数据吞吐量可能使I/O速度饱和。因此,与具有高I/O引脚数的产品一起使用可以是最有利的,这些产品例如为混合存储立方体(Hybrid MemoryCube,HMC)和高带宽存储器(High Bandwidth Memory,HBM)等。
图10A至图10E示出了3D阵列架构的实施例。
图10A示出了具有3D阵列1001的阵列架构,其包含多个WL层和在Y方向上延伸的位线。页缓冲器电路1002位于阵列1001下方。这种配置可以减小管芯尺寸,并且还允许集成更多的页缓冲器。页缓冲器可以通过位线触点1003连接到位线。
图10B示出了包括4个子阵列1001a至1001d的3D阵列架构的实施例。页缓冲器可以被分成4个组1002a到1002d。如图所示,各个页缓冲器组可以通过位线触点1003a至1003d连接到对应的子阵列。该架构的管芯尺寸保持与图10A所示的阵列大致相同,然而,读取时延可减少1/4,并且读取数据通过量可增加4倍。
图10C示出了根据本发明的3D阵列架构的另一实施例。图10C中的阵列被分成K个子阵列1001a到1001k。页缓冲器也被分成K个组1002a到1002k。通过使用这种架构,管芯尺寸可以保持与图10A中的阵列大致相同,然而,读取时延可以减少1/K,并且读取数据吞吐量可以增加K倍。
图10D示出了如图10C所示的3D子阵列1001a及其页缓冲器电路1002a的实施例。子阵列1001a包括多个位线1004a至1004n,并且各个位线耦合到串,比如,位线1004n耦合到串1005a至1005m。还示出了包括位线解码器的页缓冲器电路1002a。页缓冲器和位线解码器1002a位于3D子阵列1001a下方,以节省硅面积。位线1004a至1004n通过触点1003a至1003a’连接到页缓冲器和位线解码器1002a。
在常规阵列中,页缓冲器的数量必须等于执行全位线(ABL)编程和读取的位线的数量,等于执行半位线(HBL)编程和读取的位线的数量的一半。在各种示范性实施例中,页缓冲器的数量可为位线的1/K,其中,K为位线选择栅极信号的数量,例如BSG[0:K-1]。然而,所有位线仍可同时被编程和读取。通过使用这种方法,阵列可以被分成K个子阵列,如图10D所示。子阵列可以如图10C所示排列。这导致与常规阵列相同的管芯尺寸,同时数据吞吐量可以增加K倍,并且各个子阵列的位线长度可以减少1/K,这将位线放电时间减少1/K。结果,可以实现总共K2(K×K)的读取数据吞吐量提高。
图10E示出了3D子阵列1001a及其页缓冲器电路1002a的另一实施例。如图10E所示,页缓冲器和位线解码器1002a位于3D子阵列1001a的顶部上。在一个实施例中,页缓冲器和位线解码器1002a通过使用例如绝缘体上硅(Silicon-on-Insulator,SOI)等的3D工艺形成。在另一实施例中,页缓冲器和位线解码器1002A形成在另一管芯或晶片上。管芯或晶片可以通过使用3D集成工艺,例如铜柱、微凸块、Cu-Cu键合、硅通孔(Through-Silicon Via,TSV)和其他合适的技术,来连接到3D子阵列1001a。
图11A示出了根据本发明的3D阵列的另一实施例。在该实施例中,位线用作临时数据存储。如上所述,数据可以从页缓冲器200加载到多条位线,例如201a到201c,并且由例如206a到206c的位线电容保持。
图11B示出了波形,其例示了如何将数据加载到如图11A例示的多个位线BL[0]到BL[2]中。在该实施例中,可断开漏极选择栅极(DSG),以使串与位线隔离。
图11C示出了将数据加载到多个位线的波形的另一实施例。在该实施例中,位线上的多个或所有串的漏极选择栅极(DSG)被接通,且位线上的多个或所有串的字线被供以旁通电压(Vpass),例如6V,以接通所有单元。源极选择栅极(SSG)被断开。通过使用这些操作,可以通过增加串的沟道电容来增加位线的电容。
图11D示出了例示从位线电容器(例如,206)读取数据的波形。假定位线BL[0]至BL[2]在其位线电容中存储数据0至数据2。通过顺序接通位线选择栅极BSG[0]到BSG[2],可在位线电容与页缓冲器电路200的读出节点302之间发生电荷共享,如图3A所示。因为位线电容远大于读出节点302,所以读出节点302将在极短时间内变成几乎位线电压。因此,位线选择栅极BSG[0]到BSG[2]可非常快速地切换,以非常高速地读取BL[0]到BL[2]的数据。
位线电容206a至206c所保持的数据可以通过使用如图6C所述的读出操作来读取。因此,位线电容器可以用于存储数据。参考图9D,假定阵列被分成K个子阵列。各个阵列包含N个位线。因此,整个阵列包含K×N个位线。根据本发明,可以实现使用位线电容器存储K×N位数据。
在一个实施例中,阵列将数据存储在位线电容中,该位线电容可以用作工作存储器,例如DRAM。系统可以像DRAM一样读取、写入和刷新数据。当准备将数据存储到NAND闪速存储单元以用于非易失性存储时,可将数据从位线电容器读取到页缓冲器,如图6C所示,然后将其编程到NAND闪速存储单元,如图4B至图5C所述。
在另一实施例中,位线可用作数据寄存器,以临时存储输入数据。可使用图6C的操作从位线读取数据,然后将其编程到NAND闪速存储单元的选定页。例如,参考图9C,输入数据可以被临时存储到子阵列901a到901c中的位线。接着,可从这些子阵列的位线读取数据并将其编程到子阵列901d。这种存储操作提供了大容量的“空闲”数据寄存器,而没有增加电路的面积。
图12A示出了根据本发明的3D阵列的另一实施例。该电路能够执行TLC和SLC编程模式。图12A中的阵列包括位线选择栅极202a到202c和数据锁存器207a到207c,其分别存储用于TLC编程的数据位D0、D1和D2。还示出了锁存器旁通栅极220a至220c,其也在图3A至图3B中示出。在TLC模式期间,页缓冲器将把三位数据D0到D2编程到单个单元。在SLC模式期间,页缓冲器将把三位数据D0到D2编程到位于三个位线中的三个不同单元。在TLC编程期间,SLC信号断开旁通栅极221a至221c。位选择栅极信号BSG[0]到BSG[2]选择性地接通位线选择栅极202a到202c中的一个。信号P0至P2根据编程的Vt电平选择性地接通旁通栅极220a至220d中的一个,以将锁存器的数据旁通到所选位线。
在SLC编程期间,位线选择栅极202a到202c和锁存器旁通栅极220a到220c可全部断开。信号SLC接通旁通栅极221a到221c。因此,锁存器207a至207c的数据分别被旁通到位线201a至201c。这样,可通过同时使用存储于页缓冲器中的多个锁存器中的数据来编程多位线。
图12B示出了根据本发明的3D阵列的另一实施例。如图12B所示,阵列包括位线选择栅极202a到202c和数据锁存器207a到207c,其分别存储用于TLC编程的数据位D0、D1和D2。还示出了锁存器旁通栅极220a至220c,其也在图3A至图3B中示出。在TLC编程期间,SLCB信号接通旁通栅极222a和222b。信号BSG[0]到BSG[2]选择性地接通位线选择栅极202a到202c中的一个。信号P0至P2根据编程的Vt电平选择性地接通旁通栅极220a至220d中的一个,以将锁存器的数据旁通到所选位线。
在SLC编程期间,位线选择栅极202a到202c和锁存器旁通栅极220a到220c可全部接通。SLCB信号断开旁通栅极222a和222b。因此,锁存器207a至207c的数据可以分别被旁通到位线201a至201c。这样,可通过同时使用存储于页缓冲器中的多个锁存器中的数据来编程多位线。
图13示出了NAND闪速存储器阵列的实施例。在图13所示的阵列中,例如401a至401c的位线到位线电容可以支配位线的寄生电容。尤其对于高密度阵列,位线可能非常长,且位线间距可能非常紧密。当将数据加载到多个位线时,这可能导致位线到位线耦合问题。
作为示例,在接通位线选择栅极202a以将数据从页缓冲器200加载到位线BL[0]201a之后,断开选择栅极202a。接着,接通选择栅极202b,以将下一数据从页缓冲器200加载到BL[1]201b。在加载期间,BL[0]与先前加载的数据一起浮动。因此,BL[1]201b的数据可能通过电容401a耦合BL[0]201a。结果,BL[0]201a的数据可能由于该耦合而改变。类似地,在BL[1]201b的数据被加载之后,断开选择栅极202b。接通选择栅极202c,以将下一数据从页缓冲器200加载到BL[2]201c。BL[2]201c的数据可能耦合到BL[1]201b,以改变BL[1]的数据。
图14示出了具有用于防止如上所述的位线耦合的位线屏蔽的阵列。该阵列包括添加到位线的屏蔽器件402a至402d。页缓冲器200操作为仅将数据加载到例如BL[0]和BL[2]的偶数位线或例如BL[1]和BL[3]的奇数位线。当偶数位线被加载时,信号SHD[1]接通器件402b和402d,以将VDD从VSHD信号旁通到奇数位线BL[1]和BL[3]。这样,当数据被加载到例如BL[0]和BL[2]的偶数位线时,它们被奇数位线BL[1]与BL[3]屏蔽,因此在位线之间不会产生耦合。同时,因为奇数位线BL[1]和BL[3]被供以禁止数据VDD,所以奇数位线上的单元可以不被编程。因此,在实施例中,一次仅一半的位线可以被编程,这可能将编程吞吐量减少一半。然而,通过使用本文所述的阵列架构,编程吞吐量可以增加许多倍,使得使用上述位线屏蔽可以是可接受的。
图15A示出了用于缓解位线到位线耦合的电路的另一实施例。在图15A所示的电路中,如图所示,多个位线BL[0]到BL[5]通过位线选择栅极202a到202f交替地连接到页缓冲器200a和200b。各个页缓冲器包括三个如上所述的数据锁存器。页缓冲器将数据提供给奇数或偶数位线,使得当一组位线在使用中时,由另一组位线提供屏蔽。应当注意,图15A所示的位线和位线选择栅极的数量是示例性的。本发明可应用于任意数量的位线和位线选择栅极。
图15B示出了例示如何将数据加载到图15A的位线中以缓解耦合的波形。在操作期间,顺序接通信号BSG[0]、BSG[2]和BSG[4],以将数据D[0]、D[2]和D[4]加载到位线BL[0]、BL[2]和BL[4]。顺序接通信号BSG[1]、BSG[3]和BSG[5],以将数据D[1]、D[3]和D[5]加载到位线BL[1]、BL[3]和BL[5]。应当注意线BSG[0]至BSG[5]的时序。当接通BSG[1]以将D[1]加载到BL[1]时,BSG[0]仍然接通,因此BL[0]不浮动。当BL[1]耦合BL[0]时,页缓冲器200a维持BL[0]的数据。因此,缓解或解决耦合问题。类似地,当接通BSG[2]以将D[2]加载到BL[2]时,BSG[1]仍然接通,因此BL[1]不浮动。当BL[2]耦合BL[1]时,页缓冲器200b维持BL[1]的数据。因此,通过使用图15A的电路,可以减少或消除位线耦合问题。然而,当加载该组的最后位线BL[5]时,尽管其可能不耦合BL[4],但其可能耦合下一组中的相邻位线(未示出)。为了解决这个问题,可以再一次加载BL[0]的数据。这恢复了相邻位线的数据。
图16示出了解决如参考图15A至图15B描述的最后位线耦合问题的电路的示例性实施例。图16的电路包括两个相邻的位线组403a和403b。对于这些组,对其位线选择栅极202a到202f及202a’到202f’进行镜像。当组403a将数据从BL[0]加载到BL[5]时,组403b将数据从BL[0]’加载到BL[5]’。例如,同时加载BL[5]和BL[5]’的数据,这解决了BL[5]与BL[5]’之间的耦合问题。
图17A示出了包括如图16例示的偶数和奇数页缓冲器200a至200d的电路的实施例,并且这些页缓冲器被放置在阵列404的两侧。例如,阵列404也可以是如图9D中901a所示的子阵列。
图17A至图17C示出了用于图17A的电路中的阵列(或子阵列)404的2D和3D版本的实施例。
图18A至图18B示出了具有分开的位线结构的电路。
图18A示出了包括连接到全局位线GBL[0]到GBL[3]的多个页缓冲器200a到200d的电路。全局位线连接到多个区块405a到405n。各个区块接收位线选择栅极信号,例如BSG0[0:5]到BSGn[0:5]。
图18B示出了图18A中示出的一个区块(例如区块405a)的电路的实施例。如图18A例示,例如GBL[1]的全局位线通过位线解码器202a到202c连接到子位线BL[1]、BL[3]和BL[5]。位线选择栅极的结构类似于图17A所示的结构。因此,可以使用图15B所示的波形将数据施加到子位线BL[0]到BL[5]和BL[0]’到BL[5]’,以解决位线耦合问题。
图19A示出了根据本发明的位线选择栅极电路的另一实施例。该实施例中的电路与图15A所示的电路类似,除了使用四个页缓冲器200a至200d,并且可以一次加载用于两个位线的数据。
图19B示出了例示图19A的电路的操作的波形。在操作期间,当BSG[0]变高时,其将接通两个位线选择栅极202a和202a’,以将数据D[0]和D[1]分别从页缓冲器200a和200b加载到BL[0]和BL[1]。当BSG[1]变高时,其将接通两个位线选择栅极202b和202b’,以将数据D[2]和D[3]分别从页缓冲器200c和200d加载到BL[2]和BL[3]。应当注意,当接通BSG[1]时,BSG[0]仍然接通。因此,消除了BL[1]与BL[2]之间的耦合。这种相同的机制应用于所有其它选择栅极。结果,解决了位线耦合问题。
请注意,图13所述的位线耦合问题不仅可在写入操作中加载数据时发生,而且可在读取操作中发生。参考图7A所示的读取波形,在时间T3至T4期间,当例如BL[0]至BL[2]的多个位线一起放电时,具有接通单元的位线将由接通单元放电。可通过位线到位线电容(如图13所示的401a至401c)将相邻位线与断开单元耦合。因此,相邻位线的电压可能被拉低,并且导致断开单元被错误地读取为接通单元。为了解决该问题,可实现如图14所示的屏蔽器件,其中,对于读取操作,屏蔽电压VSHD可为0V。然而,屏蔽读取操作可能仅读取偶数或奇数位线,因此其将读取数据吞吐量减少一半。为了解决这个问题,提供了图15A至图17C所示的解决方案。
图20A示出了解决位线耦合而不牺牲读取数据通过量的电路的实施例。图20A的电路包括连接到位线BL[0]到BL[2]的位线选择栅极202a到202c。上拉器件501是耦合到位线选择栅极202a到202c的PMOS上拉器件。在另一实施例中,上拉器件501可以是NMOS。
图20B示出了由图20A所示的电路执行读取操作的波形。时间间隔T1是“发展阶段”,时间间隔T2是“评估阶段”。在发展阶段(T1)期间,VREF被供以0V,位线选择栅极BSG[0]到BSG[2]被供以Vbias。这将位线BL[0]到BL[2]充电到预定电压Vbias-Vt,其中,Vt是选择栅极202a至202c的阈值电压。
在评估阶段(T2)期间,可以向信号VREF供应将上拉器件501的电流限制成低于接通单元电流(例如10nA到100nA)的电压。断开并然后顺序接通BSG[0]至BSG[2],以将位线BL[0]至BL[2]分别连接到读出节点SA。如果位线具有接通单元,则位线电压可由于接通单元电流而低于Vbias-Vt。因此,读出节点SA可被拉低至与位线电压相同。另一方面,如果所选位线具有断开单元,则位线将完全充电到Vbias-Vt,并且位线选择栅极将断开。因此,读出节点SA将转到VDD。信号SA可以被发送到比较器的输入或PMOS晶体管的栅极,以确定数据。
图21A示出了根据本发明的读出电路的另一实施例。该实施例类似于图20A至图20B,除了可使用大的上拉器件502来对位线进行预上电。
图21B示出了例示图21A的电路的操作的波形。
图22A示出了根据本发明的读出电路的另一实施例。该实施例类似于图21A至图21B,除了使用偏压器件503来限制位线的预上电电压。因此,位线选择栅极信号BSG[0]到BSG[2]被供以数字信号VDD和0V。
图22B示出了例示图22A的电路的操作的波形。
图23A示出了根据本发明的读出电路的另一实施例。该实施例类似于图22A至图22B,除了通过使用上拉器件504a到504c对位线预上电。
图23B示出了例示图23A的电路的操作的波形。
图24A示出了根据本发明的读出电路的另一实施例。该实施例使用“源极读出”。
图24B示出了例示图24A所示的读出电路的操作的波形,其中T1是“发展”阶段,T2是“评估”阶段。在操作期间,向所选字线供应读取电压(Vrd),并且向未选字线供应旁通电压(Vpass)。所选单元串的源极线(SL)被供以VDD。增加了放电器件505,以对位线放电。位线选择栅极BSG[0]到BSG[2]被供以偏压(Vbias),以将放电电流限制成低于接通单元的电流,例如10nA到100nA。接通单元将电流从源极线SL传导到位线,且对位线充电直到约Vrd-Vt(cell),其中Vt(cell)是接通单元的阈值电压。对于断开单元,位线将放电到0V。如图24B所示,当接通单元的位线被充电时,其可以耦合到断开单元的位线。然而,在耦合停止之后,断开单元的位线将由放电器件505放电到0V。在评估阶段(T2),断开放电器件505。接通偏压器件503。顺序接通位线选择栅极BSG[0]至BSG[2],以将位线连接至读出节点SA,以根据位线电压来确定数据。
图25A示出了根据本发明的页缓冲器和位线解码器电路的另一实施例。图25A示出了页缓冲器电路200和位线选择栅极202a至202f。偶数位线选择栅极202a、202c和202e连接到PB[0],奇数位线选择栅极202b、202d和202f连接到PB[1]。页缓冲器200分别通过屏蔽电压选择栅极230a和203b耦合到PB[0]和PB[1]。屏蔽电压选择栅极230a和230b控制页缓冲器200分别将数据加载到PB[0]或PB[1]或从其读取数据。PB[0]和PB[1]分别通过选择栅极231a和231b耦合到“屏蔽”电压源(VSH)。屏蔽电压可以是0V、VDD或任意其它合适的电压。当页缓冲器200从偶数(或奇数)位线读取数据或将数据加载到偶数(或奇数)位线时,屏蔽电压被施加到奇数(或偶数)位线。这消除了参考图13所述的位线电容耦合问题。
作为示例,为了对偶数位线执行多页读取或写入操作,接通屏蔽电压选择栅极230a,并且断开230b。顺序接通偶数位线选择栅极BSG[0]、BSG[2]和BSG[4],以将数据从偶数位线BL[0]、BL[2]和BL[4]读取到页缓冲器200,或者将数据从页缓冲器200加载到偶数位线。同时,断开选择栅极231a并接通231b。这将屏蔽电压VSH施加到PB[1]。全部接通奇数位线选择栅极BSG[1]、BSG[3]和BSG[5],以将屏蔽电压VSH旁通到奇数位线BL[1]、BL[3]和BL[5]。利用这些操作,偶数位线被奇数位线彼此屏蔽,因此消除了位线电容耦合。
图25B示出了根据本发明的页缓冲器和位线解码器电路的另一实施例。该实施例类似于图25A所示的实施例,除了位线屏蔽电压VSH由选择栅极232a到232f施加。偶数选择栅极232a、232c和232e连接到控制信号SB1,奇数选择栅极232b、232d和232f连接到控制信号SB2。当页缓冲器200从偶数位线BL[0]、BL[2]和BL[4]读取数据或将数据加载到偶数位线时,接通屏蔽电压选择栅极230a并且断开栅极230b。控制信号SB1将断开偶数选择栅极232a、232c和232e。控制信号SB2将接通奇数选择栅极232b、232d和232f,以将屏蔽电压VSH旁通到奇数位线BL[1]、BL[3]和BL[5]。类似地,当奇数位线被读取或加载数据时,偶数位线可以被供以屏蔽电压。
图25C示出了根据本发明的页缓冲器和位线解码器电路的另一实施例。在该实施例中,位线选择栅极202a至202f都连接到页缓冲器200。偶数位线和奇数位线通过选择栅极232a到232f耦合到屏蔽电压VSH。当页缓冲器200读取或向偶数位线BL[0]、BL[2]和BL[4]加载数据时,断开偶数选择栅极232a、232c和232e。可以顺序接通偶数位线选择栅极202a、202c和202e,以将数据从偶数位线读取到页缓冲器200,或者将数据从页缓冲器200加载到偶数位线。同时,断开奇数位线选择栅极202b、202d和202f。接通奇数选择栅极232b、232d和232f,以将屏蔽电压VSH旁通到奇数位线BL[1]、BL[3]和BL[5]。类似地,当奇数位线被读取或加载数据时,偶数位线可以被供以屏蔽电压。
在之前的实施例中,例如,如图4A所示,芯片可以包含多个数据锁存器,以在编程和读取期间存储多页数据。然而,具有较少数据锁存器的实施例是可能的。
图26A示出了根据本发明的电路的示例性实施例,其仅需要一个数据锁存器来执行与上述使用多个数据锁存器相同的操作。在另一实施例中,图26A的电路可以被配置成不使用数据锁存器。在图26A的电路中,四个位线BL[0]到BL[3]通过四个位线选择栅极202a至202d连接到页缓冲器506。位线选择栅极连接到信号BSG[0]至BSG[3]。还应当注意,阵列可以使用图25A至图25C所示的偶数/奇数位线架构。未选的偶数或奇数位线被供以直流电压,以屏蔽这些位线免于位线耦合。为简单起见,图26A所示的电路仅示出了所选的位线。
数据线510连接到偏压器件508。偏压器件508用于将数据线510和所选位线预上电至偏压。偏压器件508的栅极连接到偏压BIAS或反馈电路或比较器,以提高预上电速度。
器件507是加载器件。加载器件507的栅极连接至参考电压VREF,以生成用于读出操作的期望加载电流。在另一实施例中,加载器件507可以由NMOS器件实现。而且,加载器件可以包括多个不同尺寸的器件,例如用于快速预上电的较大器件和用于数据读出的较小器件。
假定选择字线509进行编程,以0V加载位线BL[0]和BL[1],以编程单元0和单元1。以VDD加载位线BL[2]和BL[3],以禁止单元2和单元3。根据本发明实施例提供的新颖的编程操作,通过顺序地接通位线选择栅极202a至202d来顺序地加载位线数据,以利用位线电容存储位线数据。
在一个编程脉冲后,执行编程验证,以检查已编程单元的Vt并确定下一个编程数据。作为示例,假定单元0到单元3具有四种不同的情况。假定单元0仍然是接通单元。这意味着单元0尚未成功编程。BL[0]的下一个数据应为0V,以继续对单元0进行编程。假定单元1已成功编程到期望的Vt,因此它将在验证期间变为断开单元。这意味着BL[1]的下一个数据应改为VDD,以便禁止单元1。假定单元2和单元3分别是接通单元和断开单元,因为它们当前的编程数据是VDD,这意味着它们不需要被编程。BL[2]和BL[3]的下一个数据应保持在VDD,以禁止单元2和单元3。
图26B示出了与图26A所示的电路一起使用的编程验证操作。该操作基本上包含三个步骤,即:预上电位线步骤511、使位线放电步骤512、以及读出和更新位线数据步骤513。对于步骤511(预上电位线),在时间T0,向BSG[0]至BSG[3]供应VDD,以接通所有位线选择栅极202a至202d。向VREF供应0V,以完全接通加载器件507,以便进行快速预上电。向BIAS供应偏压Vbias。这种情况将BL[0]至BL[1]从0V预上电到Vbias-Vt。Vt是偏压器件508的阈值电压。同时,将BL[2]和BL[3]保持在VDD。通常,BIAS信号具有大约Vt到VDD的范围,并且应该大于Vt,以接通偏压器件(例如,图26A所示的器件508)。将BL电压预上电到BIAS电压减去图26A所示的器件508的Vt。
对于步骤512(使位线放电),在时间T1,断开所有位线选择栅极BSG[0]至BSG[3]。接通所选串的源极选择栅极SSG 516和漏极选择栅极DSG 515。分别向所选字线509和其他未选字线供应验证电压和旁通电压。向源极线518供应0V。这将把接通单元(即单元0和单元2)接通,以分别使BL[0]和BL[2]放电。BL[0]将从Vbias-Vt放电至低于Vbias-Vt的电压。相比之下,BL[2]可能仍高于Vbias-Vt,因为BL[2]的初始电压是VDD。由于大位线电容,使用接通单元电流将BL[2]放电至Vbias-Vt以下将花费很长时间。BL[1]和BL[3]将分别保持在预上电电压Vbias-Vt和VDD。因为单元1和单元3是断开单元s,所以它们不使BL[1]和BL[3]放电。
在时间T2,断开源极选择栅极516或漏极选择栅极515,以阻止单元0和单元2使BL[0]和BL[2]放电。之后,位线电压将由大位线电容维持。在另一实施例中,源极选择栅极SSG516和漏极选择栅极DSG 515从T2到T9保持在高电平。这将导致接通单元(即单元0和单元2)继续使BL[0]和BL[2]放电。然而,由于读出时间(T2至T9)很短,单元2的电流不在验证结束前将BL[2]放电至Vbias-Vt以下。
在步骤513(读出和更新位线数据),在时间T2,向VREF供应参考电压Vref,以控制加载器件507的加载电流。加载电流优选低于接通单元电流。然后,在时间T2至T9之间的间隔内,顺序接通位线选择栅极BSG[0]至BSG[3],以分别将读出电路连接至BL[0]至BL[3]。读出电路将验证位线电压,并根据结果将下一数据加载到位线。
在时间T2,选择栅极信号BSG[0]将接通图26A所示的位线选择栅极202a。这导致在BL[0]与数据线DL 510和信号节点SA 514之间发生电荷共享。因为BL[0]的电容远大于数据线510和SA514的电容,所以数据线510和SA 514都将在很短的时间内被拉低到接近BL[0]的电压,该电压低于Vbias-Vt。将SA 514节点连接到数据缓冲器506。数据缓冲器506将基于SA的电平确定验证数据为1。
在时间T3,基于验证结果,LOAD信号将变高,以将0V加载回BL[0]。然后,BSG[0]将变低,以将BL[0]与数据线510和读出电路隔离。结果,因为BL[0]加载有0V,所以单元0将被下一编程脉冲再次编程。
在一个实施例中,从时间T2到T4,向BSG[0]供应VDD+Vt。这在下一数据是VDD时允许页缓冲器将全VDD加载到位线。显然,BSG[0]可以被供以VDD,这只将位线加载到VDD-Vt。在另一实施例中,BSG[0]可以使用两步脉冲,其中VDD用于验证,VDD+Vt用于加载下一数据。
在时间T4,BSG[1]将接通下一位线选择栅极202b,以将读出电路连接至BL[1],以验证BL[1]的电压。将BL[1]预先预上电至Vbias-Vt。因为数据线510的电容远小于BL[1]的电容,所以电荷共享的结果将导致数据线510的电压变得非常接近BL[1]的电压(例如,Vbias-Vt)这将使偏压器件508断开。因此,SA节点514将被加载器件507的加载电流充电至全VDD。这指示下一数据将为1。
在时间T5,LOAD信号将变高,以将VDD加载到BL[1]。然后,BSG[1]将变低,以将BL[1]与页缓冲器电路隔离。结果,单元1将被禁止进行下一次编程,因为它已经通过了编程验证。
在时间T6,BSG[2]将接通下一位线选择栅极202c,以验证BL[2]的电压。因为BL[2]保持在高于Vbias-Vt的电压,所以偏压器件508将被断开。如果前一位线将SA拉低,则SA节点将被器件507的加载电流充电至全VDD。这指示下一数据将为1。
在时间T7,LOAD信号将变高,以将VDD加载到BL[2]。然后,BSG[2]将变低,以将BL[2]与页缓冲器电路隔离。对于下一编程脉冲,单元2将再次被禁止。
在时间T8,BSG[3]将接通下一位线选择栅极202d,以验证BL[3]的电压。因为BL[3]保持在VDD,所以偏压器件508将被断开。如果前一位线将SA拉低,则SA节点将被器件507的加载电流充电至全VDD。这指示下一数据将为1。
在T9时间,LOAD信号将变高,以将VDD加载到BL[3]。然后,BSG[3]将变低,以将BL[3]与页缓冲器电路隔离。对于下一编程脉冲,单元3将再次被禁止。
在位线被验证并加载有下一数据之后,可以将所选字线升高到编程电压,例如20V,以执行下一编程脉冲,如图5E中的时间T3所示。
应当注意,在读出步骤513期间,如果先前选择的位线具有接通单元,则电荷共享后的数据线510电压可能会略低于Vbias-Vt。这可能导致偏压器件508接通。如果所选位线有断开单元,则加载器件507的加载电流将位线和数据线充电至Vbias-Vt,并将SA节点514拉至VDD。然而,这可能导致延迟。为了解决这个问题,在另一实施例中,可以在读出步骤513期间稍微降低VBIAS电压,如图26B中的虚线517所示。这将防止偏压器件507被稍低的数据线510接通。
在另一实施例中,偏压器件508可包含两个器件,一个用于预上电,另一个用于读出。用于读出的器件可以具有更长的沟道长度或不同的Vt调节注入,以使其Vt略高。在另一实施例中,两个偏压器件的栅极可以连接到不同的偏压。用于读出的偏压可以略低于用于预上电的偏压。
而且,在读出步骤513期间,如果先前选择的位线的下一数据为VDD,则将数据线510上拉至VDD。如果下一位线有接通单元,如果位线电容不够高,则这可能会导致电荷共享电压变得太高。为了解决这个问题,在另一实施例中,在前一个位线选择栅极断开之后,在下一个位线选择栅极接通之前,数据缓冲器506可以施加短脉冲,以将数据线510放电至0V,然后让偏压器件508将数据线510预上电至Vbias-Vt。这可以在各次电荷共享之前为数据线510提供期望的初始电压。在另一实施例中,如图24A中的505所示的放电器件可以连接到数据线510,以执行放电。
图26A至图26B所示的电路和操作波形是展示本发明的一个实施例的示例。众所周知,可以以许多其他方式修改电路和操作波形。例如,可以使用图20A至图24B所示的读出电路来代替图26A所示的读出电路。这些修改和变化在本发明的范围内。
图26C示出了图26A中的数据缓冲器506的电路实现方式的实施例。电路包括数据锁存器520。数据锁存器520通过施加RES脉冲以接通NMOS 521而被复位。这将DA节点525拉低至0V。前级读出电路的SA节点连接到PMOS 523。如图26B所述,对于具有断开单元的位线,将SA节点上拉至VDD。这将断开PMOS 523。对于具有接通单元的位线,将SA节点下拉到低于Vbias–Vt。这将接通PMOS 523。在SA电压准备好之后,可以施加LATB脉冲,以接通PMOS 522。如果SA较低,它将DA节点525上拉至VDD。如果SA较高,则DA节点525将保持在0V。之后,可以施加LOAD脉冲,以将锁存器520的数据加载到数据线DL中。
请注意,图26C所示的实施例是旨在最小化电路尺寸的示例性电路。显然,可以使用更复杂的电路(例如读出放大器或比较器电路)来代替由PMOS 522和523形成的输入级。这些变化和修改应保持在本发明的范围内。
图26C示出了使用图20A所示的读出电路的电路实现方式的另一实施例。在该实施例中,取消了如图26A所示的偏压器件508。偏压器件的功能由BSG[0]至BSG[3]执行,如图27B中的波形所示。
如前所述,在编程期间将编程数据加载到位线并存储在位线电容中。在验证期间,直接从位线验证单元的数据,并将下一个编程数据加载回位线。无需将数据存储在页缓冲器或数据锁存器中。这显著降低了对大量数据锁存器的需求。例如,当使用八个位线选择栅极BSG[0]到BSG[7]时,图4A所示的先前方法需要八个数据锁存器,以存储BL[0]到BL[7]的八个数据。对于图26A所示的本实施例,由于编程数据被加载到位线并存储在位线电容中,所以将只需要一个数据锁存器,如果输入数据被直接加载到位线中则根本不需要数据锁存器。这可以显著降低电路尺寸和数据吞吐量,特别是对于仅使用SLC单层单元的产品,其可能在页缓冲器中没有多位数据锁存器。
图27C示出了使用图6F所示的页缓冲器200和位线选择栅极202a至202n的实施例的根据本发明的编程验证操作的另一实施例。在图3C中示出了页缓冲器200的详细实施例。例如,如图3C例示,页缓冲器电路200包括连接到SA节点的偏压器件306和预上电器件303。还示出了读出器件310、锁存器旁通栅极220、设置器件311、复位器件312和具有Q和QB节点的数据锁存器207。以上图3C的描述提供了详细的电路操作。
如图27C例示,将假定如图6F中的201a至201d所示的四个位线BL[0]至BL[3]用于执行编程验证操作。假定BL[0]和BL[1]是编程位线而BL[2]和BL[3]是禁止位线。BL[0]和BL[1]中存储的数据分别为0(0V),BL[2]和BL[3]中存储的数据分别为1(VDD)。
在T0时间,向信号BSG[0:3]供应VDD,以接通位线选择栅极202a至202d。信号PREB供应0V,以接通预上电器件303,以将SA节点充电至VDD。信号BIAS供应偏压Vbias。这将编程位线BL[0]和BL[1]从0V充电到偏压器件306的Vbias-Vt,而禁止位线BL[2]和BL[3]保持在VDD。在优选实施例中,Vbias可以略高于Vt1+Vt2,其中,Vt1和Vt2是偏压器件306和读出器件310的阈值电压。这允许接通单元将位线电压快速放电至读出器件310的Vt以下。
在T1时间,向信号SET供应脉冲,以将锁存器207的Q节点设置为0V。
在T2时间,信号BSG[0:3]变低,以断开位线选择栅极202a至202d。向所选字线(Word Line,WL)供应验证电压VR。信号DSG变高,以接通所选串的漏极选择栅极。假定BL[0]和BL[2]上的所选单元是接通单元(Vt<VR),而BL[1]和BL[3]上的单元是断开单元(Vt>VR)。接通单元使BL[0]和BL[2]的电压放电。由于BL[0]和BL[2]的初始电压不同,所以一段时间后,BL[0]放电至Vt以下,而BL[2]则高于Vt甚至Vbias-Vt。
在T3时间,信号BSG[0]变高,以接通位线选择栅极202a,以将BL[0]耦合到页缓冲器200。由于BL[0]的电压低于Vbias-Vt,因此偏压器件306被接通,以将页缓冲器的SA节点拉低至与BL[0]相同的电压。SA电压断开读出器件310。
在T4时间,向信号RES供应脉冲,以接通复位器件312。然而,因为读出器件310被SA节点的电压断开,所以锁存器207不被复位,并且锁存器207的Q节点保持0V。
在T5时间,向信号PGM、BIAS和PREB供应脉冲,以更新BL[0]上的编程数据。其将数据0(0V)从锁存器207的Q节点加载到BL[0]。因此,BL[0]上的编程数据更新为0(0V)。因为已编程位线BL[0]上的单元为接通单元,指示该单元尚未成功编程,因此其将由下一编程脉冲再次进行编程。
在T6时间,信号BSG[0]变低,以断开BL[0]的位线选择栅极202a。信号BSG[1]变高,以接通BL[1]的位线选择栅极202b,以将BL[1]耦合到页缓冲器。因为BL[1]上的单元是断开单元,所以BL[1]的电压保持在预上电电压Vbias-Vt,这断开偏压器件306。因此,页缓冲器的SA节点被上拉至VDD,以接通读出器件310。
在T7时间,向信号RES供应脉冲,以接通复位器件312。因为读出器件310由SA节点的电压接通,所以复位器件312将锁存器207的Q节点复位到VDD。
在T8时间,向信号PGM、BIAS和PREB供应脉冲,以更新BL[1]上的编程数据。其将数据1(VDD)从锁存器207的Q节点加载到BL[1]。为了将VDD加载到BL[1],信号PGM、BIAS和PREB的电平可以是VDD+Vt。因此,BL[1]上的编程数据从0(0V)更新为1(VDD)。由于已编程位线BL[1]上的单元为断开单元,指示该单元被成功编程。因此,它将在下一编程脉冲期间被禁止。
在T9和T10时间,信号BSG[2]和BSG[3]变高,以分别接通BL[2]和BL[3]上的位线选择栅极202c和202d。重复前述从T3到T6时间的操作,以分别验证单元并更新BL[2]和BL[3]的位线数据。因为BL[2]和BL[3]电压都高于Vbias-Vt,所以偏压器件306被断开,并且SA节点被上拉到VDD。与BL[1]类似,BL[2]和BL[3]的锁存器207的Q节点将被复位脉冲RES复位到数据1(VDD),并由PGM、BIAS和PREB脉冲更新,以将BL[2]和BL[3]充电到数据1(VDD)。结果,原本被禁止的BL[2]和BL[3]保持在禁止电压VDD。
在上述实施例中,VDD用作禁止电压。在另一实施例中,禁止电压可以是VDD-Vt。在这种情况下,在时间T8,当向信号PGM、BIAS和PREB施加脉冲时,脉冲可以处于VDD电平,这将BL充电至VDD-Vt。
图28A示出了用于读取操作的波形的示例性实施例。这些波形类似于图26B所示的编程验证波形,除了取消了将下一个数据加载回位线的步骤。而且,所选字线被供以读取电压而不是验证电压。读取波形例示了如何顺序读取四个单元,即单元0到单元3。在这个示例中,单元0和单元2是接通单元s,单元1和单元3是断开单元s。在步骤511(预上电位线)期间,将所有位线BL[0]至BL[3]预上电至Vbias-Vt。在步骤512(使位线放电)期间,接通单元将使BL[0]和BL[1]放电至低于Vbias-Vt的电压。在步骤513(读出)期间,顺序接通位线选择栅极BSG[0]至BSG[3],以将读出电路连接至BL[0]至BL[3]。这导致在数据线510的电容与位线之间发生电荷共享。由于数据线510的电容远小于位线电容,因此SA节点514将在很短的时间内被上拉下拉。
图28B示出了用于与图17A所示的电路实施例一起使用的读取操作的波形的另一实施例。该波形类似于图27B所示的验证波形,除了取消了将下一个数据加载回位线的步骤。
图29A示出了常规3D NAND闪速存储器的页缓冲器电路的布局布置。闪速存储器包括3D NAND闪速存储器子阵列601。子阵列601包含多个单元串,如图17C所示的等效电路。位线位于阵列601的顶部并沿Y方向延伸。页缓冲器602通过触点603a到603n连接到位线。在全位线(ABL)设计中,页缓冲器的数量与位线的数量相同。各个位线连接到一个页缓冲器。在半位线(HBL)设计中,页缓冲器的数量是位线的一半。各个页缓冲器连接到两条位线。电路604用于数据路径、冗余、页缓冲器驱动器、字线驱动器等。页缓冲器602和电路604位于阵列601下方,以减小管芯尺寸。
图29B示出了具有两个相邻子阵列601a和601b的常规阵列配置。应当注意,页缓冲器602a和602b与电路604a和604b是交错的,使得电路604a和604b可以分别驱动页缓冲器602b和602a。图29B所示的结构被称为“瓦片(tile)”。可以通过在X和Y方向上排列多个瓦片来形成大型存储器阵列。
图30A示出了根据本发明的用于3D阵列的页缓冲器和电路的布局布置的实施例。在本实施例中,3D子阵列被分成多个扇区601a至601d。扇区之间的位线是分开的。扇区601a到601d的位线通过触点603a到603n分别连接到页缓冲器602a到602d。触点603a到603n可以位于扇区601a到601d的边缘上。电路604a至604d是用于数据路径、冗余、页缓冲器驱动器、字线驱动器等的电路。
对于图29A所示的常规技术,位线的数量是1KB。1Kb位线连接到602中的1KB页缓冲器,以同时执行编程、验证和读取操作。对于图30A所示的根据本发明的实施例,假定子阵列被分成4个扇区,如601a至601d所示。各个扇区将包含1KB位线,各个位线的长度是常规技术位线长度的1/4。
假定本发明具有与常规技术相同的页缓冲器总数1KB。页缓冲器被分成4组602a到602d。各组包含256B页缓冲器。通过使用4个位线选择栅极,例如图27A所示的202a到202d,各组256B页缓冲器可以连接到各个扇区的1KB位线,并对所有位线进行同步编程、验证和读取操作。结果,本发明可以同时对总共4KB位线进行读写操作。这将数据吞吐量显著增加了4倍,而不会增加管芯尺寸。
而且,由于各个扇区的位线长度仅为常规电路的1/4,因此读取和验证速度可以得到显著提高。这将位线电容减少到大约1/4,因此大大减少了位线充电和放电时间。
根据本发明,子阵列可以分成任意数量的扇区。使用的扇区越多,可以同时执行读写的页就越多。例如,假定子阵列被分成N个扇区。可以同时进行读写操作的总页变为N倍,因此数据吞吐量增加了N倍。另外,位线长度变为1/N,这将访问速度提高了N倍。本发明的实施例的考虑是位线选择栅极的增加,其非常低并且可以忽略不计。
图30B示出了由如图30A所示的两个相邻子阵列形成的瓦片的示例性实施例。第二子阵列的页缓冲器602e到602h和电路604e到604h可以与第一子阵列的页缓冲器和电路交错。因此,电路604a至604d可分别驱动页缓冲器602e至602h,电路604e至604h可分别驱动页缓冲器602a至602d。
图31A至图31B示出了根据本发明的页缓冲器配置的实施例。这些实施例类似于图30A至图30B,除了页缓冲器602a至602d和电路604a至604d的布局布置不同。类似于图30A至图30B的实施例,扇区601a到601d的位线使用触点603a到603n分别连接到页缓冲器602a到602d。
尽管图30A至图30B中的实施例示出了3D阵列结构,但是对于本领域技术人员来说将明了的是,本发明可以在2D阵列结构中实现。在这些2D实施例中,页缓冲器和电路位于扇区的侧面。
图32示出了根据本发明的页缓冲器和位线选择栅极结构的示例性实施例。在本实施例中,页缓冲器701通过数据线703连接到多个阵列扇区702a至702d。扇区的数量可以是任意数量。为清楚起见,将假定使用四个扇区:扇区0至扇区3。各个扇区的位线通过位线选择栅极(例如704a到704h和705a到705h)连接到数据线703。还将假定使用八个位线选择栅极,例如BSG0[0]至BSG0[7]和BSG3[0]至BSG3[7]。对于3D阵列结构,位线选择栅极(例如704a至704h和705a至705h)、页缓冲器701和数据线703可以位于阵列扇区702a和702d下方。
本实施例中的划分的扇区结构提供了多个优点。第一,由于数据线703间距远大于位线间距,所以总位线电容将成为1/8位线长度的电容加上数据线电容。结果,总位线电容比常规阵列小得多。这将显著地提高读取和验证操作中位线的预上电和放电速度。
第二,页缓冲器701可以将不同的数据加载到多个扇区702a至702d中的位线,以使用先前描述的操作来执行多页编程和验证操作。这将显著地增加编程数据吞吐量。
第三,页缓冲器701可以使用先前描述的操作对多个扇区702a至702d中的位线同时执行预上电和放电操作。这将显著地增加读取数据吞吐量。虽然数据线703的长度比图26A所示的先前实施例的数据线510长,但由于数据线703的电容相对小于位线电容,因此图26A中描述的读取和验证操作对于该实施例仍将操作。然而,由于数据线703的电容较大,速度可能较慢。
第四,多个扇区的位线电容可以用作数据缓存,以使用图11B至图11C所示的波形存储多页数据。例如,当将数据编程到扇区0中的所选页时,接下来的三页的数据可以输入并存储在扇区1、扇区2和扇区3的位线中。在另一实施例中,存储在扇区1、扇区2和扇区3中的数据可以使用TLC三层单元模式编程到扇区0中的页中。
对于图26A、图27A和图32所示的实施例,编程数据可以直接存储在位线电容中。这减少了各个位线的页缓冲器所需的数据锁存器的数量。因此,可以在芯片内封装更多页缓冲器,以增加读写数据吞吐量。然而,在“编程挂起”期间,如果请求数据在编程期间位于扇区中,则可能需要将位线中存储的数据移动到其他未选的扇区,然后才可以进行读取操作。在读取操作完成后,可以从未选的扇区中读取数据,并重新加载到所选扇区中,以继续编程操作。
为此,当对平面或组中的所有扇区进行多扇区编程时,可以留出一个扇区。因此,当系统发出编程挂起时,可以将所选扇区的数据传送到所留扇区。在从所选扇区读取请求的数据后,可以将所留扇区中存储的数据传送回所选扇区,以继续编程。
图33A示出了根据本发明的页缓冲器和位线选择栅极结构的另一实施例。在本实施例中,页缓冲器820通过位线选择栅极823a到823n连接到第一组位线821a到821n。页缓冲器820通过位线选择栅极824a到824n连接到第二组位线822a到822n。
假定选择第一位线组821a至821n中的页825进行编程,则第二位线组822a至822n可用于存储编程数据。多页编程可以通过使用以下步骤进行。首先,通过使用图11A至图11C中描述的操作将输入数据D[0]至D[N]顺序加载到第二位线组822a至822n中。数据将由位线电容保持。其次,可以使用图11D中描述的操作由页缓冲器820顺序地读取第二位线组保持的数据,并通过使用在图5A至图5E中描述的操作将其加载到第一位线组821a至821n,以编程所选的页825。
在一个编程脉冲之后,可以通过使用图7A至图7D中描述的操作来执行编程验证操作,以从所选页825中的编程单元读取数据。在图7A至图7D的T4到T6之间的时间间隔内,可以将第一位线组821a到821n的数据与存储在第二位线组822a到822n中的输入数据进行比较,以生成下一编程数据,并且将下一编程数据加载回第一位线组821a至821n。然后施加下一编程脉冲。
可以交替地重复编程和编程验证操作,直到从所选页825读取的数据等于存储在第二位线组822a至822n中的输入数据为止。然后,编程操作完成。可以清除存储在第一位线组821a至821n和第二位线组822a至822n中的数据。
类似地,当所选页位于第二位线组822a至822n时,可以将输入数据加载至第一位线组821a至821n并由位线电容存储。输入数据可用于验证第二位线组822a至822n中所选页的编程数据。
在另一实施例中,当加载输入数据时,可顺序一起接通位线选择栅极823a至823n与824a至824n,以将输入数据加载至第一位线组821a至821n和第二位线组822a至822n,因为第一编程数据可能与输入数据相同。
在读取操作期间,可以应用图7A至图7D中描述的操作来并行地使第一组位线821a至821n预上电和放电。然后,可顺序接通位线选择栅极823a至823n,以将位线821a至821n的数据读出至页缓冲器820。图33A所示的实施例也可应用于多层单元(MLC)、三层单元(TLC)、四层单元(QLC)或任意其他层单元的编程。
图33B示出了配置成用于MLC编程的实施例。将假定选择第一位线组821a至821n中的页825。可以将输入数据的第一页(上页)顺序加载到第二位线组的偶数位线,例如822a、822c、...、822m,并将其由位线电容存储。可以将输入数据的第二页(下页)顺序加载到第二位线组的奇数位线,例如822b、822d、...、822n,并将其由位线电容存储。
接着,将存储在偶数位线822a中的上页数据和存储在奇数位线822b中的下页数据顺序读取到页缓冲器820。页缓冲器820可以包含两个数据锁存器,以存储两位数据。页缓冲器820将根据两位数据确定第一单元的阈值电压电平(Vt)的编程数据,然后将编程数据加载到第一位线组821a至821n的第一偶数位线821a。
然后,由存储在第二位线组的位线822c和822d中的数据确定下一个编程数据,然后将其加载到第一位线组的第二偶数位线821c。重复该操作,直到所有的编程数据都被加载到第一位线组的偶数位线821a、821c、...、821m为止。然后,施加编程脉冲,以对所选字线825上的偶数单元进行编程。
在编程验证期间,将存储在第二位线组822a至822n中的两位数据顺序读取到页缓冲器820,以与从选择页825读取的数据进行比较,以确定下一个编程数据。将下一个编程数据加载回第一位线组821a至821n的偶数位线。然后,将施加下一编程脉冲。重复这些操作,直到成功编程用于MLC的所有三个Vt电平,然后完成编程操作。
之后,可以分别将下一个上页和下页的数据加载到第二位线组822a至822n的偶数位线和奇数位线。应用上述操作,以将数据编程到第一位线组的奇数位线821b、821d、...、821n中。
第一位线组821a至821n的偶数位线和奇数位线属于两页。在读取偶数位线页的读取操作期间,向选择页825的字线供应第一读取电压,以通过使用图7A至图7D中描述的操作读取上页的数据。将数据顺序地存储到第二位线组822a到822n的偶数位线。
接着,向所选页825的字线供应第二读取电压,以通过使用图7A至图7D中描述的操作读取下页的数据。可以将存储在第二位线组822a至822n的偶数位线中的上页数据读取到页缓冲器820,以与存储在第一位线组中的数据进行比较,以确定下页的数据。然后将下页的数据存储在第二位线组822a至822n的奇数位线中。
接着,向所选页825的字线供应第三读取电压,以通过使用图7A至图7D中描述的操作再次读取下页的数据。可以将存储在第二位线组822a到822n的偶数位线中的上页数据和存储在第二位线组822a到822n的奇数位线中的先前读取的下页数据读取到页缓冲器820,以与存储在第一位线组中的数据进行比较,以确定下页的数据。然后将下页的数据存储在第二位线组822a至822n的奇数位线中。
因此,当对第二位线组822a至822n执行编程操作和读取操作时,第一位线组821a至821n可分别用于存储输入数据和输出数据。
图33C示出了TLC编程应用的另一实施例。该操作类似于图33B所示的操作,除了TLC单元的三个输入页(即上页、中页和下页)分别被加载到822a、822b、822c到822l、822m和822n。页缓冲器820包含三个数据锁存器,以存储从第二位线组(例如位线822a、822b和822c)读取的三位数据。页缓冲器820将根据三位数据确定编程数据并将编程数据加载到第一位线组。结果,存储在第二组位线822a、822b和822c中的数据被编程到第一组位线821a。在读取操作期间,从第一组的位线821a上的单元读取的三位数据将分别存储在第二组的位线822a、822b和822c中。由于TLC编程和读取操作类似于图33B中描述的MLC操作,因此将不再重复详细操作。
图33A至图33C所示的实施例可以执行“编程挂起”功能。例如,假定页825正在编程中。输入数据存储在第二位线组822a至822n中。如果系统想要读取第一位线组821a至821n的另一页,则可以挂起编程操作。清除第一组位线821a至821n中的编程数据,并且使用图7A至图7D中描述的操作执行读取操作,以从所选页读取数据。在读操作完成之后,可以恢复编程操作。可以读取存储在第二位线组822a至822n中的输入数据,以再次生成用于第一位线组821a至821n的编程数据。
另一方面,如果读取页位于第二位线组822a至822n中,则可以清除第一位线组821a至821n的数据。可以读取存储在第二位线组822a至822n中的数据并将其传送到第一位线组821a至821n。之后,读取第二位线组822a至822n中的所选页。在完成读取操作之后,可以将存储在第一位线组821a至821n中的数据传送回第二位线组822a至822n。然后,可以恢复编程操作。
图33A至图33C所示的实施例还可以执行“同时读/写”或“边读边写”操作。假定第一位线组821a至821n正在使用图26A至图28B中描述的方法执行编程操作。这种方法将输入数据存储在所选位线中,并在编程验证期间直接更新位线中的数据。它不需要将输入数据存储在另一地点。因此,当编程第一位线组821a至821n时,第二位线组822a至822n可以使用图7A至图7D中描述的操作同时执行读取操作。
图33A至图33C所示的实施例还可以执行将存储在SLC页中的数据转换为MLC或TLC页的“数据折叠”操作。该模式用于提高编程数据吞吐量。在顺序写入操作期间,系统可以使用SLC模式写入数据。这显著减少了写入时间。然后在空闲时间期间,读取存储在SLC页中的数据并使用MLC或TLC模式将其重新编程到其他页。之后,擦除SLC页。这可以增加数据存储密度。
再次参考图33C,假定页826是SLC页。为了将数据从SLC页826传送到TLC页825,通过使用图7A至图7D中描述的操作读取SLC页826的数据。通过SLC页826上的单元对第二组位线822a至822n预上电和放电。然后,通过使用图33B至图33C中描述的MLC和TLC编程操作通过页缓冲器820顺序读取第二组位线822a至822n的数据,以确定TLC页825的编程数据。例如,第二位线822a、822b和822c的数据用于确定第一组位线821a的编程数据。结果,存储在SLC页826中的数据被编程到TLC页825的1/3位线,例如位线821a、821d、...、821l。
之后,可以读取第二位线组822a至822n中的下一个SLC页,并重复上述操作,以将数据编程到TLC页825的下一个1/3位线,例如位线821b、821e、...、821m。之后,第二位线组822a至822n中的第三SLC页可被读取编程至TLC页825的下面的1/3位线,例如位线821c、821f、...、821n。
图34A示出了常规3D NAND闪速存储器的页缓冲器和位线连接。金属位线901a到901d在3D单元阵列的顶部延伸。3D单元未在图34A中示出,但是在图10D、图10E和图17C中可以看到详细的3D阵列结构。页缓冲器电路902a到902d位于3D阵列下方。位线901a至901d通过竖直触点903a至903d连接页缓冲器902a至902d。
虽然图34A中的实施例示出了页缓冲器902a至902d在X方向上的间距是位线901a至901d的间距的四倍,但该图仅为示范目的的示例。实际比例由实际布局尺寸和技术确定。例如,如果页缓冲器902a至902d的X间距是位线901a至901d的X间距的32倍,则沿着Y方向的页缓冲器的数量将变为32,而不是4。
图34B示出了根据本发明的页缓冲器和位线连接的实施例。本实施例示出了位线选择栅极904a至904d。位线选择栅极904a将位线901a至901d连接到页缓冲器902a。位线选择栅极904d将位线901m至901p连接到页缓冲器902d。通过使用这种结构,可以同时读写的位线数量增加了4倍。这将数据吞吐量提高了4倍。
而且,因为位线长度减少到1/4,所以位线电容减少到1/4。因此,在读取操作和编程验证操作的读取时间中占主导地位的位线放电时间可以粗略地减少到大约1/4。如果页缓冲器的X间距是位线的32倍,则数据吞吐量可以增加32倍。读取和编程验证时间可以粗略地减少到大约1/32。
图34C示出了图33A至图33C所示实施例的页缓冲器和位线连接的另一实施例。在本实施例中,第一组位线901a至901d通过位线选择栅极904a连接到页缓冲器902a。第二组位线901e至901h通过位线选择栅极904b连接到页缓冲器902a。该实施例的位线长度是图34B所示实施例的位线长度的1/2。
图35示出了三层单元TLC的示例性Vt分布。如图所示,单元具有八个Vt电平Vt0至Vt7,以表示三位数据D0至D2。一个单元的D0到D2位可以属于三个页:页0到页2。这三页的数据可以独立读取。
如图35例示,黑条指示用于读取各个位的字线电压电平。为了读取单元的D0位,向所选的字线顺序供应电压VR1和VR5。向未选的字线供应高于Vt7的旁通电压VPAS,以接通NAND单元串上的所有其他未选单元。
当施加VR1时,Vt0单元将接通,Vt1至Vt7单元将断开。当施加VR5时,Vt0至Vt4单元将接通,Vt5至Vt7单元将断开。然后,控制逻辑对由VR1和VR5读出的两个数据执行异或(XOR)函数,以确定D0位数据。
类似地,为了读取D1位,向所选字线依次供应电压VR2、VR4和VR6。控制逻辑对由VR2、VR4、VR6读出的三个数据执行异或函数,以确定D1位数据。
类似地,为了读取D2位,向所选字线依次供应电压VR3和VR7。控制逻辑对由VR3和VR7读出的两个数据执行异或函数,以确定D2位数据。
在实施例中,页缓冲器具有三个数据锁存器,以存储针对D0和D2位读出的两个数据以及针对D1位读出的三个数据。因此,存储在数据锁存器中的数据可用于执行异或函数,以生成D0至D2位的最终数据。
图35所示的数据分配是示例性的而非限制性的,因为存在许多其他方式来分配D0到D2位。可以调整或修改各种实施例,以适用于几乎任何数据分配。在实施例中,可以通过使用页缓冲器中的一个数据锁存器来读取TLC单元。
图36示出了根据本发明的单位锁存器页缓冲器电路的实施例。数据锁存器918(包括具有Q和QB节点的两个反相器)将数据存储在Q节点中。偏压器件910连接到位线BL。预上电器件911连接到读出节点SA。还包括锁存器旁通栅极912。为锁存器918提供了复位器件913和设置器件914。读出器件915的栅极连接到SA节点。
图37A示出了用于使用图36所示的单位锁存器页缓冲器读取D0位的方法。在各种实施例中,位于与存储器阵列相同的集成电路上的控制单元或状态机生成图36和图41A所示的各种控制信号。在步骤920a中,通过接通器件913和915将数据锁存器918的Q节点复位到数据1(VDD),如虚线916所示。读出器件915通过接通预上电器件911以将SA节点上拉至VDD来接通。在步骤920b中,向所选字线供应VR1,以读取耦合到位线(BL)的单元。如果该单元是断开单元,则读出节点SA将被拉高并且将接通读出器件915,如虚线919所示。在步骤920c中,将向设置器件914施加SET脉冲,以将锁存器的Q节点设置(或翻转)为数据0(0V),如虚线917所示。如果单元是接通单元,则读出节点SA将被拉低并且将断开读出器件915,如虚线919所示,因此锁存器的Q节点将保持在数据1(VDD)。参考图37D,如STEP 1所示,当向选择字线施加电压VR1时,Vt0单元将接通,而Vt1至Vt7单元将断开。因此,先前描述的操作将Vt0单元的锁存器设置为数据1,将Vt1至Vt7单元的锁存器设置为数据0。
再次参考图37A,在步骤920d中,向所选字线供应VR5,以读取单元。如果该单元是断开单元,则读出节点SA将被拉高并且将接通读出器件915。将向复位器件913施加RES脉冲,以将锁存器的Q节点复位(或翻转)到数据1(VDD),如步骤920e所示。如果单元为接通单元,则读出节点SA将被拉低并断开读出器件915,于是Q节点的数据将保持不变。再次参考图37D,如STEP 2所示,当向选择字线施加电压VR5时,Vt0至Vt4单元将接通,而Vt5至Vt7单元将断开。因此,先前描述的操作将Vt5至Vt7单元的锁存器复位为数据1,而Vt0至Vt4的数据保持不变。结果,通过使用单个数据锁存器成功读取了图35所示的D0位数据。
图37B示出了用于使用图36所示的单个锁存器页缓冲器读取D1位的示例性方法。在步骤921a中,通过接通器件913和915将数据锁存器918的Q节点复位到数据1(VDD),如虚线916所示。在步骤921b中,向所选字线供应VR2,以读取单元。如果该单元是断开单元,则读出节点SA将被拉高并且将接通读出器件915。将向设置器件914施加SET脉冲,以将锁存器的Q节点设置到数据0(0V),如步骤921c所示。如果单元是接通单元,则读出节点SA将被拉低并且将断开读出器件915,因此锁存器的Q节点将保持在数据1(VDD)。参考图37E,如STEP 1所示,当向选择字线施加VR2时,Vt0和Vt1单元将接通,而Vt2至Vt7单元将断开。因此,先前描述的操作将Vt0和Vt1单元的锁存器设置为数据1,将Vt2至Vt7单元的锁存器设置为数据0。
再次参考图37B,在步骤921d中,向所选字线供应VR4,以读取单元。如果该单元是断开单元,则读出节点SA将被拉高并且将接通读出器件915。将向复位器件913施加RES脉冲,以将锁存器的Q节点复位到数据1(VDD),如步骤921e所示。如果单元为接通单元,则读出节点SA将被拉低并断开读出器件915,于是Q节点的数据将保持不变。再次参考图37E,如STEP 2所示,当向选择字线施加VR4时,Vt0至Vt3单元将接通,而Vt4至Vt7单元将断开。因此,先前描述的操作将Vt4至Vt7单元的锁存器复位为数据1,而Vt0至Vt3的数据保持不变。
再次参考图37B,在步骤921f中,向所选字线施加VR6,以读取单元。如果该单元是断开单元,则读出节点SA被拉高并且将接通读出器件915。将向设置器件914施加SET脉冲,以将锁存器的Q节点设置到数据0(0V),如步骤921g所示。如果单元为接通单元,则读出节点SA将被拉低并断开读出器件915,于是Q节点的数据将保持不变。参考图37E,如STEP 3所示,当向选择字线施加VR6时,Vt0至Vt5单元将接通,而Vt6至Vt7单元将断开。因此,先前描述的操作将Vt6至Vt7单元的锁存器复位为数据0,而Vt0至Vt5的数据保持不变。结果,通过使用单个数据锁存器成功读取了图35所示的D1位数据。
图37C示出了用于使用图36所示的单个锁存器页缓冲器读取D2位的示例性方法。除了在步骤922b和922d中施加的字线电压分别是VR3和VR7之外,该操作与图37A基本相同。为简单起见,可参考图37A进行描述,此处不再赘述。
图38A示出了波形的实施例,其例示了根据本发明的使用图36所示的单锁存器页缓冲器电路读取D0位的信号。从时间T1到T5的波形例示了图37A所示的步骤920a到920c的操作。从时间T5到T8的波形例示了图37A中的步骤920d和920e的操作。
在时间T1,PREB信号变低,以接通预上电器件911。这将拉高SA节点并接通读出器件915。RES脉冲变高,以将锁存器的Q节点复位为数据1(VDD)。同时,BIAS信号变高至VDD或电压Vpre,以将位线BL预上电至VDD-Vt或Vpre-Vt。Vt是偏压器件910的阈值电压。
在时间T2,PREB信号变高至VDD以断开预上电器件911,或变高至电压Vref以从预上电器件911提供加载电流。加载电流可能低于接通单元的电流。所选字线WL被供以第一读取电压VR1。这将接通Vt0单元并开始使位线BL放电,如图所示。Vt1到Vt7单元将保持断开,因此它们的位线不会放电。BIAS电压低于电压Vbias。这将断开偏压器件910。
当位线放电至Vbias-Vt以下时,偏压器件910将接通,以使SA节点放电,如T3时间所示。在另一实施例中,BIAS信号在T2时间变为0V,以断开偏压器件910,并且在T3时间变为Vbias或VDD,以接通偏压器件910。这将使SA节点放电至BL电压。在另一实施例中,电压Vbias-Vt被设计为低于读出器件915的阈值电压。因此,对于接通单元,读出器件915将被断开。相反,对于断开单元,BL和SA节点将保持较高,因此读出器件915接通。在时间T4,向设置器件914施加SET脉冲,以将断开单元的数据锁存器Q设置为数据0(0V)。接通单元的数据锁存器将保持在数据1(VDD)。完成图37A所示的步骤920a至920c。
在时间T5,PREB信号再次变低,以接通预上电器件911。BIAS信号变至VDD或Vpre,以将位线预上电至VDD-Vt或Vpre-Vt。在时间T6,PREB信号变高至VDD以断开预上电器件911,或变高至电压Vref以从充电器件911提供加载电流。所选字线WL被供以第二读取电压VR5。这将接通Vt0至Vt4单元并开始使位线放电。Vt5到Vt7单元将保持断开,因此它们的位线不会放电。
当位线放电至Vbias-Vt以下时,偏压器件910将接通,以使SA节点放电,如时间T7所示。在另一实施例中,BIAS信号在时间T6变为0V,以断开偏压器件910,并且在时间T7变为Vbias或VDD,以接通偏压器件910。这将使SA节点放电至BL电压并断开读出器件915。对于断开单元,BL和SA节点都将保持较高,因此器件915接通。在时间T8,向复位器件913施加RES脉冲,以将断开单元的数据锁存器Q复位为数据1(VDD)。接通单元的数据锁存器将保持不变。完成图37A所示的步骤920d至920e。
图38B是波形的实施例,其例示用于使用图36所示的单锁存器页缓冲器电路读取D1位的信号。操作与读取D0位类似,除了向所选字线顺序供应三个电压VR2、VR4和VR6。在时间间隔T1至T5期间,执行图37B中的步骤921a至921c。在时间间隔T5至T9期间,执行图37B中的步骤921d至921e。在时间间隔T9至T12期间,执行图37B中的步骤921f至921g。
图39示出了根据本发明的页缓冲器电路的另一实施例。所例示的页缓冲器包含三个数据锁存器918a至918c。三个数据锁存器存储三个数据Q[0]至Q[2]。数据锁存器分别由信号R0至R2和S0至S2复位和设置。页缓冲器电路通过位线选择栅极924a到924c连接到三个位线BL[0]到BL[2]。
在编程期间,顺序接通信号P0至P2和BSG[0]至BSG[2],以分别将编程数据从Q[0]至Q[2]施加到位线BL[0]至BL[2]。
在读取操作期间,顺序接通信号BSG[0]至BSG[2],以将位线BL[0]至BL[2]分别连接到读出节点SA。读出节点SA将根据BL[0]至BL[2]的电压接通或断开器件915。复位和设置脉冲R0到R2和S0到S2将分别应用于复位或设置对应的数据锁存器。
图40示出了波形的实施例,其例示了使用图39所示的页缓冲器电路从位线BL[0]至BL[2]读取D0位的信号。操作类似于图38A,除了在时间T1至T2期间,BSG[0]至BSG[2]一起接通,以对BL[0]至BL[2]预上电。在时间T2至T3期间,向所选字线供应第一读取电压VR1。断开BSG[0]至BSG[2],以允许BL[0]至BL[2]由接通单元同时放电。在时间T3至T5期间,顺序接通BSG[0]至BSG[2],以将BL[0]至BL[2]分别连接到SA节点。施加对应的设置脉冲S0至S2,以将断开单元的数据锁存器Q[0]至Q[2]设置为数据0(0V)。结果,完成图37A所示的步骤920a至920c。
从时间T5到T6,接通BSG[0]到BSG[2],以再次对BL[0]至BL[2]预上电。在时间T6至T7期间,向所选字线供应第二读取电压VR5。断开BSG[0]至BSG[2],以允许BL[0]至BL[2]由接通单元同时放电。在时间T7至T8期间,顺序接通BSG[0]至BSG[2],以将BL[0]至BL[2]分别连接到SA节点。施加对应的复位脉冲R0至R2,以将断开单元的数据锁存器Q[0]至Q[2]复位为数据1(VDD)。结果,完成图37A所示的步骤920d和920e。
在实施例中,可以应用与图40所示的操作类似的操作来从BL[0]到BL[2]读取D1和D2位。当读取D1位时,如图38B所示,可以向所选字线顺序供应三个电压VR2、VR4和VR6。当读取D2位时,操作与图40类似,除了向所选字线顺序供应电压VR3和VR7。
通过使用本文描述的新颖方法和装置,在保持相同数据吞吐量的同时,页缓冲器中的数据锁存器的数量可以减少到1/3。这允许阵列具有更多“平面”,以进一步增加数据吞吐量,并由于更短位线长度导致更短位线放电时间而减少读取时延。
应当注意,虽然实施例以TLC为例,但同样的方法可以应用于任意数量的多层单元,例如MLS、QLC等。例如,对于MLC,页缓冲器可以包含两个数据锁存器,以同时从两个位线读取。对于QLC,页缓冲器可以包含四个数据锁存器,以同时从四个位线读取数据。
图41A示出了使用互补逻辑实现的图36所示的页缓冲器电路的示例性替代实施例。在该实施例中,设置和复位器件933、934和935从NMOS晶体管变为PMOS晶体管,并且连接到器件935的功率电平从0V变为VDD。这样,电路的操作将变为使用接通单元条件而不是断开单元条件来翻转锁存器938。
图41B至图41D示出了与图41A所示的页缓冲器电路的操作相关联的示例性方法和图。
图41B示出了用于使用图41A所示的页缓冲器电路读取D1位的示例性方法。在该实施例中,如步骤941b、941d和941f所示,所选字线电压从斜升变为从VR6、VR4到VR2的斜降。
在步骤941a中,通过接通器件933和940将锁存器复位为数据0。器件940将SA节点拉至0V,以接通器件935,以便将节点QB拉至VDD。
在步骤941b中,向所选字线供应读取电压VR6。如果单元是接通单元,则其将使位线和读出节点SA放电,如虚线939所示。当读出节点SA放电至低于VDD-Vt时,将接通器件935。
在步骤941c中,向器件934施加SETB脉冲,以将锁存器的Q节点设置为数据1(VDD)。如果单元是断开单元,则读出节点SA将被拉高至VDD,这将断开器件935,因此锁存器的Q节点将保持在数据0(0V)。
参考图41D,如STEP 1所示,当向选择字线施加VR6时,Vt0至Vt5单元将接通,而Vt6至Vt7单元将断开。因此,Vt0至Vt5的锁存器数据将被设置为1,而Vt6和Vt7的锁存器数据将保持为0。
在步骤941d中,向所选字线供应VR4。接通单元将使位线和读出节点SA放电至低于VDD-Vt,以接通器件935,而断开单元的读出节点SA将被上拉至VDD,以断开器件935。
在步骤941e中,向器件933施加RESB脉冲,以将锁存器的接通单元的Q节点复位为数据0(0V),而锁存器的断开单元的Q节点保持不变。
参考图41D,如STEP 2所示,当向选择字线施加VR4时,Vt0至Vt3单元将接通,而Vt4至Vt7单元将断开。因此,Vt0至Vt3的锁存器数据将被设置为0,而Vt4至Vt7的锁存器数据将保持不变。
在步骤941f中,向所选字线供应VR2。接通单元将使位线和读出节点SA放电至低于VDD-Vt,以接通器件935,而断开单元的读出节点SA将被上拉至VDD,以断开器件935。
在步骤941g中,向器件934施加SETB脉冲,以将锁存器的接通单元的Q节点复位为数据1(VDD),而锁存器的断开单元的Q节点保持不变。
参考图41D,如STEP 3所示,当向选择字线施加VR2时,Vt0和Vt1单元将接通,而Vt2至Vt7单元将断开。因此,Vt0和Vt1的锁存器数据将被设置为1,而Vt2至Vt7的锁存器数据将保持不变。
结果,通过使用单个数据锁存器成功读取了图35所示的D1数据。而且,类似的操作也可用于读取D0和D2位。为简单起见,读取D0和D2位的详细操作在这里不再赘述。
图41C示出了在本实施例中与图41A的电路一起使用的用于读取D1位的波形图。图41C中的波形类似于图38B所示的波形,除了字线电压从VR6、VR4斜降到VR2而不是斜升,并且数据锁存器最初复位为数据0(0V)而不是数据1(VDD)。而且,在图41A中示出了控制器件940的DIS信号。图41A所示的页缓冲器电路可应用于实现3位数据锁存器页缓冲器电路,如图39所示,并且通过在图40所示的波形上使用斜降而不是斜升字线电压进行操作。
图42A至图42B示出了根据本发明的提供用于使用单位锁存器读取各种类型的多层单元的字线电压电平的图。例如,图42A示出了用于读取多层单元(MLC)的图。图42B示出了用于读取四层单元(QLC)的图。黑条指示用于读取各个位的字线电压电平。例如,参考图42A,为了读取D0,使用字线电压VR2,而为了读取D1,使用字线电压VR1和VR3。
当读取数据时,独立读取位D0、D1、D2。例如,如果系统只需要从图35所示的单元中读取D2数据,那么使用参考图37C所示和描述的操作来读取D2数据。不读取D0和D1的数据。因此,可实施通用处理流程,以利用所示的字线电压电平来读取任意一个或多个数据位。
应当注意,多层单元的数据分配不限于一种配置。因此,根据数据分配配置读取操作。
图42C至图42F示出了用于为TLC分配D0-D2的四个示例性配置。假定图36所示的页缓冲器电路用于实现TLC读取操作。在图42C中示出了一种配置,其中Vt0的D0-D1数据被分配为1。因此,可以通过将锁存器918的初始数据设置为1、施加斜升字线电压、然后对于各个字线电压电平翻转断开单元的数据来读取数据。用于读取D0的斜升字线电压为VR3、VR7;用于读取D1的斜升字线电压为VR2、VR4、VR6;用于读取D2的斜升字线电压为VR1、VR5。
图42D示出了一种配置,其中Vt0的D0-D1数据被分配为0。因此,可以通过将锁存器918的初始数据设置为0、施加斜升字线电压、然后对于各个字线电压电平翻转断开单元的数据来读取数据。斜升字线电压与图42C相同。
图42E示出了另一种配置,其中Vt7的D0-D1数据被分配为1。因此,可以通过将锁存器918的初始数据设置为1、施加斜降字线电压、然后针对各个字线电压电平翻转接通单元的数据来读取数据。用于读取D0的斜降字线电压是VR7,然后是VR3;用于读取D1的斜降字线电压是VR6、VR4,然后是VR2;用于读取D2的斜降字线电压是是VR5,然后是VR1。
图42F示出了一种配置,其中Vt7的D0-D1数据被分配为0。因此,可以通过将锁存器918的初始数据设置为0、施加斜降字线电压、然后针对各个字线电压电平翻转接通单元的数据来读取数据。斜升字线电压与图42E相同。
图43示出了根据本发明的使用单位锁存器读取多层单元中的位的示例性方法4300。例如,该方法适用于使用图36所示的单位锁存器电路读取多层单元。
在框4302,识别要从多层单元读取的一个或多个位。例如,如图35例示的位D0、D1和D2被识别为要读取。
在框4304,识别要用于读取各个所识别位的字线电压电平。例如,识别图35所示的字线电压电平,以读取位D0、D1和D2。例如,为了读取D0,识别字线电压电平VR1和VR5。为了读取D1,识别字线电压电平VR2、VR4和VR6,并且为了读取D2,识别字线电压电平VR3和VR7。
在框4306,选择要读取的位。例如,选择位D0进行读取。
在框4308,选择第一字线电压电平,以用于读取所选位。例如,选择字线电压电平VR1来读取位D0,如图35例示。
在框4310,将单位锁存器的锁存器输出设置为初始电平。例如,如图36所示,将锁存器918的Q输出设置为初始值1。
在框4312,将所选字线电平施加到单元。例如,施加字线电压电平VR1,以读取单元。
在框4314,如果确定单元是断开单元,则读出该单元的输出并且翻转锁存器。例如,如图36例示,在SA节点处读出单元的输出。如果单元是断开单元,则翻转锁存器的Q输出。例如,通过RES信号将锁存器918的Q输出翻转为值0。还应当注意,在另一实施例中,可以使用如图41A所示的互补逻辑来实现锁存器电路,并且在这种情况下,在单元是接通单元时翻转锁存器。
在框4316,确定是否有更多字线电压电平要施加到单元以读取所选位。如果有更多字线电压电平要施加,则该方法进行到框4318。如果没有更多字线电压电平要施加,则该方法进行到框4320。在该示例中,为了读取D0,下一个字线电压电平VR5将被施加到单元。该方法然后进行到框4318,以将该电压电平施加到单元并处理读出的结果。
在框4318,选择要施加的下一个字线电压电平。该方法然后进行到框4312。应当注意,当该方法返回到框4314时,如果单元是断开单元,则锁存器918的Q输出被SET信号再次翻转到值1。因此,每次调整都翻转(或切换)锁存器918的输出。
在框4320,锁存器保持数据位的值。例如,由于没有更多的字线电压电平施加到单元,因此锁存器918保持所选数据位的值。
在框4322,确定是否有更多数据位要从单元读取。如果有更多数据位要读取,则方法进行到框4306。如果没有更多数据位要读取,则方法结束。例如,为了读取D1位,方法进行到框4306,以选择要读取的该位。再次执行上述操作,以读取D1位。该方法将再次返回到框4306,以再次执行上述操作以读取D2位。读取D2位后,方法结束。
因此,方法4300操作为使用根据本发明的单位锁存器来读取多层单元中的位。应当注意,所提供的操作是示例性的,并且添加、删除、改变和/或修改在实施例的范围内。
在各种示例性实施例中,提供了使用位线电容来存储编程和读取数据并且使用页缓冲器来加载和读出数据以增加数据吞吐量的方法和装置。然而,由于位线电容需要时间充放电,因此当数据直接加载到位线电容时,I/O总线可以使用较慢的时钟速率,以确保正确加载数据。这可能降低I/O总线速度。
图44A至图44B示出了根据本发明的示例性阵列结构以及数据加载和输出序列。
图44A示出了包括存储单元阵列101和包含页缓冲器207a至207m的页缓冲器块103的示例性架构。该架构还包括将页缓冲器连接到位线BLa[0:n]至BLm[0:n]的位线选择栅极106。示出了具有从8位到64位的带宽的I/O总线600。
图44B示出了图44A所示电路的数据加载序列。顺序接通位线选择栅极信号BSG[0:n],以分别将数据从I/O总线600加载到BLa[0]至BLm[n]。在T1时间期间,信号BSG[0]变高,以选择BLa[0]至BLm[0]分别连接到页缓冲器207a至207m。数据从I/O总线600顺序加载到页缓冲器207a到207m,然后加载到BLa[0]到BLm[0],定义为PAGE[0]。假定有4KB页缓冲器,I/O总线宽度为1个字节。还假定I/O总线时钟周期是10ns。4KB数据从I/O总线600加载到4KB页缓冲器106,然后从第一字节数据到最后一个字节加载到BLa[0]到BLm[0]。各个字节花费10ns,因此加载4KB页的时间间隔T1将为40微秒(us)。这个时间对于将数据的第一个字节加载到位线中已经远远足够。然而,在信号BSG[0]变低之前,数据的最后一个字节只有10ns来加载到位线。这可能没有足够的时间将最后一个字节的数据加载到高电容位线中,因此加载数据操作可能失败。
对于输出数据,可以使用与图44B所示的波形相同的波形。在T1时间间隔期间,信号BSG[0]选择BLa[0]至BLm[0]连接到页缓冲器207a至207m。同时,I/O总线从页缓冲器207a到207m输出数据。同样,对于最后一个字节,将数据从位线读取到I/O总线也只有10ns。读取最后一个字节的短时间可能不够,因此输出数据操作可能失败。
为了解决上述问题,一种解决方案是延迟BSG[0]变低的时间。然而,这降低I/O速度,因此不优选。另一种技术是添加额外的数据寄存器,如图1A中的104a至104d所示。然而,这增大了管芯尺寸。
图45A至图45C示出了根据本发明的示例性阵列结构以及数据加载和输出序列。
图45A示出了根据本发明的示例性架构。阵列101被分成两个子阵列,即ARRAY1101a和ARRAY2 101b。ARRAY1和ARRAY2分别通过位线选择栅极区块106a和106b连接到页缓冲器块103a和103b。位线选择栅极区块106a和106b分别连接到不同的选择栅极信号BSG1[0:n]和BSG2[0:n]。页缓冲器块103a和103b连接到I/O总线600。
图45B示出了与图45A所示的架构一起使用的示例性数据加载序列。信号BSG1[0:n]和BSG2[0:n]如图所示交错。I/O总线600交替地将数据加载到页缓冲器块103a和103b。例如,在时间间隔T1期间,I/O总线将第一页数据(PG1[0])加载到第一页缓冲器块103a。然后,页缓冲器103a将数据加载到由BSG1[0]选择的位线。在时间间隔T2期间,I/O总线将第二页数据(PG2[0])加载到第二页缓冲器块103b。同时,由于信号BSG1[0]一直较高,所以第一页缓冲器块103a继续将第一页数据加载到BSG1[0]所选的位线。结果,消除了图44A至图44B所示的最后一个数据字节的加载时间不足的问题。
假定页缓冲器块103a和103b各自为2KB页缓冲器。在与图44A至图44B所示示例相同的I/O带宽和时钟速率下,时间间隔T2的长度为20微秒(us),这对于将第一页缓冲器103a的最后一个字节加载到位线来说已经远远足够。结果,解决了图44A至图33B所示的加载时间问题。而且,可以增加I/O总线的时钟速率,以提高数据传送速率。
图45C示出了图45A所示实施例的数据输出序列。在时间间隔T3期间,信号BSG1[0]变高,以选择ARRAY1中的位线来连接到第一页缓冲器块103a,以读取第一页数据(PG1[0])。在时间间隔T4期间,信号BSG2[0]变高,以选择ARRAY2中的位线来连接到第二页缓冲器块103b,以读取第二页数据(PG2[0])。在相同的时间间隔T4期间,I/O总线从页缓冲器块103a输出第一页数据。
利用图45B所示的相同I/O带宽和时钟速率,T3时间长度为20微秒(us),这足以将数据从位线读取到页缓冲器。结果,解决了图44B所示的输出操作的问题。而且,可以增加I/O总线的时钟速率,以提高数据传送速率。
图46A至图46C示出了根据本发明的示例性阵列结构以及数据加载和输出序列。
图46A示出了根据本发明的示例性架构的另一实施例。在本实施例中,阵列进一步分成四个子阵列,即ARRAY1 101a至ARRAY4 101d。四个子阵列分别通过四个位线选择栅极区块106a至106d连接到四个页缓冲器块103a至103d。位线选择栅极区块106a至106d分别受四组选择栅极信号BSG1[0:n]和BSG4[0:n]控制。
图46B示出了与图46A所示的架构一起使用的数据加载序列。如图所示,位线选择栅极区块106a至106d的选择栅极信号组BSG1[0:n]至BSG4[0:n]交错。在时间间隔T1期间,第一页数据被加载到第一页缓冲器块103a。在时间间隔T2期间,第一页数据继续加载到信号BSG1[0]所选的位线。根据图44B所示的I/O宽度和时钟速率,时间间隔T1和T2分别为10微秒(us)和30微秒(us)。因此,对于本实施例,数据有更多的时间加载到位线电容中。另外,还可以进一步提高I/O时钟速率,以提高数据传送速率。
图46C示出了与图46A所示的架构一起使用的输出数据序列。在时间间隔T3时间期间,将第一页数据从由BSG1[0]选择的位线读取到第一页缓冲器块103a。在时间间隔T4时间期间,将第一页数据从页缓冲器块103a输出到I/O总线。时间间隔T3和T4时间分别为30微秒(us)和10微秒(us)。因此,对于本实施例,数据有更多的时间从位线读取到页缓冲器。另外,还可以进一步提高I/O时钟速率,以提高数据传送速率。在各种示例性实施例中,所使用的子阵列的数量不受限制,例如,子阵列的数量可以是2、4、8、16或任意合适的数量。
在各种示例性实施例中,在编程操作期间,将编程数据加载到多个位线并存储在位线电容中,以执行编程操作。如果位线上的禁止电压(VDD)泄漏到VDD-Vt以下,可能会接通所选串的漏极选择栅极(DSG),导致存储在该串的沟道中的禁止电压(8V)泄漏到位线。结果,被禁止的单元可能被意外编程。
参考图5A,编程脉冲(Tpgm)的时间间隔大约为10us至30us。位线电容约为1pF至5pF。如果漏电流高于20nA,它可能会在编程脉冲时间间隔内将位线电压从VDD泄漏到VDD-Vt以下。通常,位线的结漏电流远低于20nA。然而,当位线长度减小时,位线电容减小,并且裕度变小。
为了解决这个问题,可以执行“刷新”操作,以维持位线电压。参考图6F所示的电路,在编程操作期间,编程数据存储在位线电容206a至206n中。为了维持位线电容206a至206n的电压,可以执行刷新操作,以顺序接通位线选择栅极202a至202n,以将页缓冲器200分别连接到位线201a至201n,以便使用读出放大器208读出所选位线电压并将电压恢复到全VDD或0V电平。
图47A至图47B示出了根据本发明的用于刷新操作的波形的实施例。参考图3C所示的详细页缓冲器电路讨论所提供的波形。
图47A示出了用于刷新存储禁止数据1(VDD)的位线的操作。假定位线(BL)有泄漏,并且电压下降到VDD-dV,其中dV是低于Vt的角接(delta)电压。在T0时间,向PREB和BIAS信号两者供应0V,以接通预上电器件303并断开偏压器件306,以将SA节点充电至VDD。在T1时间,施加SET脉冲,以将锁存器207的Q节点设置为0V。在T2时间,向BIAS信号供应Vbias,以接通偏压器件306,以便读出BL电压。PREB被供以Vref,以限制预上电器件303的上拉电流。因为BL电压高于Vbias-Vt,所以偏压器件306被断开,而SA节点保持VDD,以接通读出器件310。在T3时间,施加RES脉冲,以接通复位器件312。因为读出器件310被接通,所以这将锁存器207的Q节点复位到VDD。在T4时间,向PGM、BIAS和PREB信号供应VDD+Vt脉冲。这将分别接通旁通栅极220和偏压器件306,并断开预上电器件303。BL将由锁存器207的Q节点从VDD-dV充电至VDD。因此,所选位线的刷新操作完成。在T5时间,断开当前位线选择栅极(BSG),并且可以接通下一位线选择栅极(BSG),以重复T0到T5时间的操作,以刷新下一位线。
图47B示出了用于刷新存储编程数据0(0V)的位线的操作。假定位线(BL)有泄漏,并且电压增大到dV,其中dV是低于Vt的角接(delta)电压。在T0时间,向PREB和BIAS信号两者供应0V,以接通预上电器件303并断开偏压器件306,以将SA节点充电至VDD。在T1时间,施加SET脉冲,以将锁存器207的Q节点复位为0V。在T2时间,向BIAS供应Vbias,以接通偏压器件306,以便读出BL电压。PREB被供以Vref,以限制预上电器件303的上拉电流。由于BL电压低于Vbias-Vt,因此偏压器件306被接通并将SA节点拉低至与BL相同的电压。因为SA电压低于Vt,所以它断开读出器件310。在T3时间,施加RES脉冲,以接通复位器件312。然而,因为读出器件310被断开,所以锁存器207的Q节点将保持在0V。在T4时间,向PGM、BIAS和PREB信号供应VDD+Vt脉冲。这将分别接通旁通栅极220和偏压器件306,并断开预上电器件303。BL将由锁存器207的Q节点从dV放电至0V。结果,所选位线的刷新操作完成。在T5时间,断开当前位线选择栅极(BSG),并且可以接通下一位线选择栅极(BSG),并且重复T0到T5时间的操作,以刷新下一位线。
在上述实施例中,VDD用作禁止电压。在另一实施例中,禁止电压可以是VDD-Vt。在这种情况下,在时间T4,当向信号PGM、BIAS和PREB施加脉冲时,脉冲可以处于VDD电平,这将BL充电至VDD-Vt。
图47A至图47B例示了根据本发明的刷新操作的实施例。刷新操作的频率取决于位线电容和位线漏电流。在整个编程脉冲期间,可以重复执行刷新操作,以刷新所有选择的位线。
尽管已经示出和描述了本发明的示例性实施例,但是对于本领域普通技术人员来说明了的是,基于本文的教导,在不脱离示例性实施例及其更广泛方面的情况下,可以进行改变和修改。因此,所附权利要求旨在将所有这些落入本发明的示例性实施例的真实精神和范围内的改变和修改包括在其范围内。
Claims (18)
1.一种用于对NAND闪速存储器进行编程的方法,其中,所述NAND闪速存储器包括多于一组的位线,并且其中,每一组位线通过位线选择栅极连接到页缓冲器,所述方法包括:
使用第一组位线的位线电容将编程数据存储到第一组位线中;
将存储在所述第一组位线中的数据读取到所述页缓冲器中;
使用第二组位线的位线电容将来自所述页缓冲器的数据存储到第二组位线中;以及
将存储在所述第二组位线中的数据编程到相应的存储器单元中。
2.根据权利要求1所述的方法,其中,所述第一组位线存储单一位数据,以用于单层单元(SLC)操作。
3.根据权利要求1所述的方法,其中,所述第一组位线存储多个位的数据,以用于多层单元(MLC)操作。
4.根据权利要求1所述的方法,其中,所述第一组位线将两个位的数据存储在两个位线电容中,以用于多层单元操作。
5.根据权利要求1所述的方法,其中,所述第一组位线将三个位的数据存储在三个位线电容中,以用于三层单元(TLC)操作。
6.根据权利要求1所述的方法,其中,读取所述数据的操作包括:通过使用所述页缓冲器的读出电路顺序地接通所选位线选择栅极以读取所述数据来从所述第一组位线的所述位线电容读取所述数据。
7.根据权利要求1所述的方法,其中,存储所述数据的操作包括:通过顺序地接通所选位线选择栅极以将所述数据从所述页缓冲器加载到所述第二组位线中来将所述数据存储到所述第二组位线的所述位线电容中。
8.根据权利要求1所述的方法,还包括:执行编程验证操作,其中将存储在所述第一组位线中的所述编程数据与从所述第二组位线中的经编程单元读取的数据进行比较,以确定下一编程数据。
9.根据权利要求8所述的方法,其中,所述编程验证操作被应用于至少一个单元,所述至少一个单元被配置成将多个数据位存储在所述闪速存储器中。
10.根据权利要求8所述的方法,其中,对于所述MLC操作,所述编程验证操作将存储在第二组的两个位线电容中的编程数据与从第一组中的经编程单元读取的数据进行比较,以确定所述下一编程数据。
11.根据权利要求8所述的方法,其中,对于所述TLC操作,所述编程验证操作将存储在第二组的三个位线电容中的编程数据与从第一组中的经编程单元读取的数据进行比较,以确定所述下一编程数据。
12.一种用于对NAND闪速存储器进行编程的方法,其中,所述NAND闪速存储器包括分别连接到两组或更多组的选择栅极的两组或更多组的位线,并且其中,所述两组或更多组的选择栅极分别连接到两个或更多个页缓冲器,所述方法包括:
通过以下步骤将第一组数据加载到第一组位线中:
将所述第一组数据加载到第一页缓冲器中;
使第一组位线选择栅极将所述第一组数据从所述第一页缓冲器加载到所述第一组位线中;以及
将所述第一组数据存储在所述第一组位线的位线电容中;
通过以下步骤将第二组数据加载到第二组位线中:
将所述第二组数据加载到第二页缓冲器中;
使第二组位线选择栅极将所述第二组数据从所述第二页缓冲器加载到所述第二组位线中;以及
将所述第二组数据存储在所述第二组位线的位线电容中;以及
施加编程脉冲,以将存储在所有位线电容中的数据编程到所述NAND闪速存储器中。
13.根据权利要求12所述的方法,其中,在施加所述编程脉冲的操作之前,所述方法包括:通过以下步骤将额外的一组或多组数据加载到额外的一组或多组位线中:
A.将下一组数据加载到下一页缓冲器中;
B.使下一组位线选择栅极将所述下一组数据从所述下一页缓冲器加载到下一组位线中;
C.将所述下一组数据存储在所述下一组位线的位线电容中;以及
重复A、B和C的操作,直到将所有额外的一组或多组数据组分别加载到所述额外的一组或多组位线中。
14.根据权利要求12所述的方法,其中,所述NAND闪速存储器包括两个子阵列,并且其中,所述方法操作以在将数据加载到被耦合到第一子阵列的位线与将数据加载到被耦合到第二子阵列的位线之间进行交替。
15.根据权利要求12所述的方法,其中,所述NAND闪速存储器包括多于两个的子阵列,并且其中,所述方法操作以将数据加载到位线中,所述位线耦合到以从一个子阵列到下一子阵列依次排列的多个子阵列。
16.一种用于对NAND闪速存储器进行编程的方法,其中,所述NAND闪速存储器包括分别连接到两组或更多组的选择栅极的两组或更多组的位线,并且其中,所述两组或更多组的选择栅极分别连接到两个或更多个页缓冲器,所述方法包括:
从所述NAND闪速存储器的所选存储器单元读取数据;
将所述数据存储在位线电容中,所述位线电容耦合到所述所选存储器单元;
通过以下步骤输出所述数据:
使第一组位线选择栅极将存储在第一组位线的位线电容中的第一组数据传送到第一页缓冲器;
输出来自所述第一页缓冲器的所述第一组数据;
使第二组位线选择栅极将存储在第二组位线的位线电容中的第二组数据传送到第二页缓冲器;以及
输出来自所述第二页缓冲器的所述第二组数据;以及
重复所述输出操作,直到所有存储在所述位线电容中的数据已从所述页缓冲器输出。
17.根据权利要求16所述的方法,其中,所述NAND闪速存储器包括两个子阵列,并且其中,所述方法操作以在输出来自耦合到第一子阵列的位线的数据与输出来自耦合到第二子阵列的位线的数据之间进行交替。
18.根据权利要求16所述的方法,其中,所述NAND闪速存储器包括多于两个的子阵列,并且其中,所述方法操作以输出来自位线的数据,所述位线耦合到以从一个子阵列到下一子阵列依次排列的多个子阵列。
Applications Claiming Priority (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962843556P | 2019-05-05 | 2019-05-05 | |
US62/843,556 | 2019-05-05 | ||
US201962848567P | 2019-05-15 | 2019-05-15 | |
US62/848,567 | 2019-05-15 | ||
US201962871198P | 2019-07-07 | 2019-07-07 | |
US62/871,198 | 2019-07-07 | ||
US201962884139P | 2019-08-07 | 2019-08-07 | |
US62/884,139 | 2019-08-07 | ||
US16/687,556 | 2019-11-18 | ||
US16/687,556 US11056190B2 (en) | 2018-11-18 | 2019-11-18 | Methods and apparatus for NAND flash memory |
PCT/US2020/028367 WO2020226866A1 (en) | 2019-05-05 | 2020-04-15 | Methods and apparatus for nand flash memory |
CN202080009779.7A CN113490983B (zh) | 2019-05-05 | 2020-04-15 | 用于nand闪速存储器的方法和装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080009779.7A Division CN113490983B (zh) | 2019-05-05 | 2020-04-15 | 用于nand闪速存储器的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115346585A true CN115346585A (zh) | 2022-11-15 |
Family
ID=73051152
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211064837.3A Pending CN115346585A (zh) | 2019-05-05 | 2020-04-15 | 用于nand闪速存储器的方法和装置 |
CN202080009779.7A Active CN113490983B (zh) | 2019-05-05 | 2020-04-15 | 用于nand闪速存储器的方法和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080009779.7A Active CN113490983B (zh) | 2019-05-05 | 2020-04-15 | 用于nand闪速存储器的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN115346585A (zh) |
WO (1) | WO2020226866A1 (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3983969B2 (ja) * | 2000-03-08 | 2007-09-26 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US8120959B2 (en) * | 2008-05-30 | 2012-02-21 | Aplus Flash Technology, Inc. | NAND string based NAND/NOR flash memory cell, array, and memory device having parallel bit lines and source lines, having a programmable select gating transistor, and circuits and methods for operating same |
US8355287B2 (en) * | 2009-08-25 | 2013-01-15 | Aplus Flash Technology, Inc. | Method and apparatus for operation of a NAND-like dual charge retaining transistor NOR flash memory device |
KR101278103B1 (ko) * | 2011-09-26 | 2013-06-24 | 에스케이하이닉스 주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
KR101897826B1 (ko) * | 2012-01-30 | 2018-09-12 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 이의 동작 방법 |
KR101415744B1 (ko) * | 2013-02-20 | 2014-07-09 | 서울대학교산학협력단 | 스트링선택트랜지스터들의 문턱전압을 모니터링하는 ssl 상태 확인 빌딩을 구비한 3차원 적층형 낸드 플래시 메모리 어레이, 그 모니터링 및 구동방법 |
US9218874B1 (en) * | 2014-08-11 | 2015-12-22 | Sandisk Technologies Inc. | Multi-pulse programming cycle of non-volatile memory for enhanced de-trapping |
CN106796548B (zh) * | 2014-09-06 | 2021-02-05 | Neo半导体公司 | 非易失性存储器装置及其存储方法和编程方法 |
-
2020
- 2020-04-15 CN CN202211064837.3A patent/CN115346585A/zh active Pending
- 2020-04-15 CN CN202080009779.7A patent/CN113490983B/zh active Active
- 2020-04-15 WO PCT/US2020/028367 patent/WO2020226866A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN113490983B (zh) | 2022-09-20 |
CN113490983A (zh) | 2021-10-08 |
WO2020226866A1 (en) | 2020-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113711310B (zh) | 用于nand闪速存储器的方法和装置 | |
US9336883B2 (en) | Semiconductor memory device and method of operating the same | |
US9666286B2 (en) | Self-timed SLC NAND pipeline and concurrent program without verification | |
US9583220B2 (en) | Centralized variable rate serializer and deserializer for bad column management | |
US9570123B2 (en) | Non-volatile memory serial core architecture | |
US8374031B2 (en) | Techniques for the fast settling of word lines in NAND flash memory | |
US8737132B2 (en) | Charge cycling by equalizing the source and bit line levels between pulses during no-verify write operations for NAND flash memory | |
US12100460B2 (en) | Methods and apparatus for NAND flash memory | |
US7751250B2 (en) | Memory device with power noise minimization during sensing | |
US11972811B2 (en) | Methods and apparatus for NAND flash memory | |
US20230022531A1 (en) | Methods and apparatus for nand flash memory | |
US12002525B2 (en) | Methods and apparatus for NAND flash memory | |
US9076506B2 (en) | Variable rate parallel to serial shift register | |
CN113490983B (zh) | 用于nand闪速存储器的方法和装置 | |
CN116529824A (zh) | 用于nand闪速存储器的方法和装置 | |
CN118160037A (zh) | 用于nand闪速存储器的方法和装置 | |
TW202324415A (zh) | 用於nand快閃記憶體之方法與裝置 | |
WO2022072906A1 (en) | Methods and apparatus for nand flash memory |
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 |