用于非易失性
存储器的软位
数据的有效感测
1.优先权声明
2.本技术要求2021年9月16日提交的hsu等人的名称为“平面电平竖直压缩方案(plane level vertical compression scheme)”的美国临时专利申请no.63/244,951的优先权。
背景技术:
3.本公开涉及非易失性存储装置。
4.半导体存储器广泛用于各种电子设备,诸如蜂窝电话、数码相机、个人数字助理、医疗电子器件、移动计算设备、服务器、固态驱动器、非移动计算设备和其他设备。半导体存储器可以包括非易失性存储器或易失性存储器。即使当非易失性存储器未连接到电源(例如,电池)时,非易失性存储器也允许存储和保留信息。非易失性存储器的一个示例为闪存存储器(例如,nand型闪存存储器和nor型闪存存储器)。
5.非易失性存储器的用户可将数据编程(例如,写入)非易失性存储器并随后读回该数据。例如,数码相机可拍摄照片并将该照片存储在非易失性存储器中。随后,数码相机的用户可通过使该数码相机从非易失性存储器读取照片来查看该照片。因为用户经常依赖于他们存储的数据,所以对于非易失性存储器的用户来说重要的是能够可靠地存储数据以使得能够成功地读回该数据。
附图说明
6.类似编号的元件是指不同的图中的共同部件。
7.图1是描绘存储系统的一个实施方案的框图。
8.图2a是存储器管芯的一个实施方案的框图。
9.图2b是集成存储器组件的一个实施方案的框图。
10.图2c和图2d描绘了集成存储器组件的不同实施方案。
11.图3描绘了用于感测来自非易失性存储器的数据的电路系统。
12.图4是单片三维存储器结构的一个实施方案的一部分的透视图。
13.图4a是具有两个平面的存储器结构的一个实施方案的框图。
14.图4b描绘了存储器
单元的块的一个实施方案的一部分的顶视图。
15.图4c描绘了存储器单元的块的一个实施方案的一部分的剖视图。
16.图4d描绘了存储器单元的块的一个实施方案的一部分的剖视图。
17.图4e描绘了存储器单元的块的一个实施方案的一部分的剖视图。
18.图4f是存储器单元的竖直列的一个实施方案的剖视图。
19.图4g描绘了实现竖直nand串的存储器孔的横截面。
20.图4h描绘了实现竖直nand串的存储器孔的横截面。
21.图4i描绘了实现竖直nand串的存储器孔的横截面。
22.图4j同一个块的多个子块中的多个nand串的示意图。
23.图5a描绘了阈值电压分布。
24.图5b描绘了阈值电压分布。
25.图5c描绘了阈值电压分布。
26.图5d描绘了阈值电压分布。
27.图5e描绘了阈值电压分布。
28.图5f描绘了阈值电压分布。
29.图6是描述用于对非易失性存储器进行编程的过程的一个实施方案的流程图。
30.图7示出了两个相邻数据状态的分布的重叠和一组读取值,该组读取值可用于确定单元的数据状态和这样的读取的可靠性。
31.图8示出了硬位和软位的概念。
32.图9a和图9b分别示出了每存储器单元三位数据实施方案中用于计算下页数据的硬位和软位值的读取电平。
33.图10示出了在用于有效软感测的实施方案中使用的硬位和软位值和读取电平的分配。
34.图11示出了在每存储器单元三位数据实施方案中使用表2的编码将有效软感测模式应用于下页数据。
35.图12示出了对应于图11中示出的读取点的在有效软感测读取操作中用于下页数据读取操作的感测操作的实施方案。
36.图13示出了可用于确定存储器单元的硬位和软位值的感测放大器电路的实施方案。
37.图14是有效软感测操作的实施方案的流程图。
具体实施方式
38.在一些存储器系统中,有时使用包括“软位”数据的纠错方法。软位数据提供关于用于在数据状态之间进行区分的标准或“硬位”数据值的可靠性的信息。例如,当数据值基于存储器单元的阈值电压时,硬位读取将确定存储器单元的阈值电压是高于还是低于数据读取值,以便在所存储的数据状态之间进行区分。对于阈值电压略高于或略低于该参考值的存储器单元,这种硬位可能不正确,因为存储器单元实际上意味着处于其他数据状态。为了确定具有接近硬位读取电平的阈值电压,并且因此具有较低可靠性的硬位值的存储器单元,可以执行偏移得稍微高于和稍微低于硬位读取电平的一对附加读取以生成用于硬位值的软位值。软位的使用可以是用于提取存储器单元的数据内容的强大工具,但是因为它需要附加读取来获得随后需要传送到纠错电路系统的软位数据,所以它通常仅在数据不能单独从硬位值准确地确定时才使用。
39.以下提出了有效的软感测读取模式,其需要更少读取值来生成软位数据,并且生成较少的软位数据,从而减少通常与使用软位数据相关联的性能和功耗损失,从而允许有效的软感测模式用作默认读取模式。相对于典型的硬位、软位布置,硬位的读取点偏移,使得存储器单元的数据状态中的一者的硬位值是可靠的,但是另一数据状态的硬位包括较大数量的不可靠硬位值。执行单个软位读取以针对不太可靠的硬位值,但不针对更可靠的硬位值提供可靠性信息,从而减少读数数量和所得数据的量。为了进一步改善性能,可以将硬
位感测和软位感测两者组合成单个感测,诸如通过对感测放大器的节点进行预充电并且通过所选择的存储器单元进行单次放电,但是对于节点上的单个放电感测所得电平两次,一次针对硬位值,并且一次针对软位值。
40.图1是实现本文
所述的本发明技术的存储系统100的一个实施方案的框图。在一个实施方案中,存储系统100是固态驱动器(“ssd”)。存储系统100还可为存储卡、usb驱动器或其它类型的存储系统。本发明的技术不限于任何一种类型的存储器系统。存储系统100连接到主机102,主机可为计算机、服务器、电子设备(例如,智能电话、平板电脑或其它移动设备)、器具或使用存储器并具有数据处理能力的另一种装置。在一些实施方案中,主机102与存储系统100分开,但连接到存储系统。在其它实施方案中,存储系统100嵌入在主机102中。
41.图1中描绘的存储系统100的部件为电子电路。存储系统100包括连接到非易失性存储器130和本地高速易失性存储器140(例如,dram)的存储器控制器120。存储器控制器120使用本地高速易失性存储器140来执行某些功能。例如,本地高速易失性存储器140将逻辑存储在物理地址转换表(“l2p表”)中。
42.存储器控制器120包括连接到主机102并与其通信的主机接口152。在一个实施方案中,主机接口152通过pci express(pcie)实现nvm express(nvme)。也可使用其他接口,诸如scsi、sata等。主机接口152还连接到片上网络(noc)154。noc是集成电路上的通信子系统。noc可跨越同步和异步时钟域,或者使用非时钟的异步逻辑。noc技术将网络理论和方法应用于片上通信,并且与常规总线和交叉开关互连相比带来了显著的改善。与其他设计相比,noc提高了片上系统(soc)的可扩展性以及复杂soc的电源效率。noc的导线和链路由许多信号共享。由于noc中的所有链路可在不同的数据分组上同时运行,因此实现了高度并行。因此,随着集成子系统的复杂性不断增大,与先前的通信架构(例如,专用的点对点信号线、共享总线或具有桥的分段总线)相比,noc提供增强的性能(诸如吞吐量)和可扩展性。在其他实施方案中,noc 154可由总线替换。处理器156、ecc引擎158、存储器接口160和dram控制器164连接到noc 154并与其通信。dram控制器164用于操作本地高速易失性存储器140(例如,dram)并与其通信。在其他实施方案中,本地高速易失性存储器140可为sram或另一种类型的易失性存储器。
43.ecc引擎158执行纠错服务。例如,ecc引擎158根据实现的ecc技术执行数据编码和解码。在一个实施方案中,ecc引擎158是由软件编程的电子电路。例如,ecc引擎158可为可编程的处理器。在其他实施方案中,ecc引擎158是不具有任何软件的定制的专用硬件电路。在另一个实施方案中,ecc引擎158的功能由处理器156实现。
44.处理器156执行各种控制器存储器操作,诸如编程、擦除、读取和存储器管理过程。在一个实施方案中,处理器156由固件编程。在其他实施方案中,处理器156是不具有任何软件的定制的专用硬件电路。处理器156还实现转换模块,作为软件/固件过程或作为专用硬件电路。在许多系统中,使用与一个或多个存储器管芯相关联的物理地址将非易失性存储器向内寻址到存储系统。然而,主机系统将使用逻辑地址来寻址各种存储器位置。这使主机能够将数据分配给连续的逻辑地址,同时存储系统空闲下来按希望的那样在一个或多个存储器管芯的位置间存储数据。为了实现这种系统,存储器控制器120(例如,转换模块)在由主机使用的逻辑地址与由存储器管芯使用的物理地址之间执行地址转换。一个示例性具体实施是维护识别逻辑地址与物理地址之间的当前转换的表(即,上述l2p表)。l2p表中的条
目可包括逻辑地址和对应物理地址的标识。虽然逻辑地址到物理地址表(或l2p表)包括字词“表”,但它们不必是字面意义上的表。而是,逻辑地址到物理地址表(或l2p表)可为任何类型的数据结构。在一些示例中,存储系统的存储器空间非常大,以致于本地存储器140不能保存所有l2p表。在这种情况下,将整组l2p表存储在存储器管芯130中,并且将l2p表的子集高速缓存(l2p高速缓存)在本地高速易失性存储器140中。
45.存储器接口160与非易失性存储器130通信。在一个实施方案中,存储器接口提供切换模式接口。也可使用其他接口。在一些示例性具体实施中,存储器接口160(或控制器120的另一部分)实现用于向一个或多个存储器管芯传输数据以及从一个或多个存储器管芯接收数据的调度器和缓冲器。
46.在一个实施方案中,非易失性存储器130包括一个或多个存储器管芯。图2a是包括非易失性存储器130的存储器管芯200的一个实施方案的功能框图。非易失性存储器130的一个或多个存储器管芯中的每一者都可以实现为图2a的存储器管芯200。图2a中描绘的部件是电路。存储器管芯200包括存储器阵列202,该存储器阵列可包括非易失性存储器单元,如下文更详细地描述。存储器阵列202的阵列端子线包括组织成行的各种字线层,以及组织成列的各种位线层。然而,也可以实现其他取向。存储器管芯200包括行控制电路系统220,该行控制电路系统的输出端208连接到存储器阵列202的相应字线。行控制电路系统220从系统控制逻辑电路260接收一组m行地址信号和一个或多个各种控制信号,并且通常可以包括诸如行解码器222、阵列端子驱动器224和块选择电路系统226等电路以用于读取操作和写入(编程)操作两者。行控制电路系统220还可以包括读取/写入电路系统。存储器管芯200还包括列控制电路系统210,该列控制电路系统包括感测放大器230,该感测放大器的输入端/输出端206连接到存储器阵列202的相应位线。尽管针对阵列202仅示出了单个块,但是存储器管芯可以包括可以被单独访问的多个阵列。列控制电路系统210从系统控制逻辑部件260接收一组n个列地址信号和一个或多个各种控制信号,并且通常可包括诸如列解码器212、阵列端子接收器或驱动器电路214、块选择电路系统216以及读取/写入电路系统和i/o多路复用器之类的电路。
47.系统控制逻辑部件260从存储器控制器120接收数据和命令,并且向主机提供输出数据和状态。在一些实施方案中,系统控制逻辑部件260(其包括一个或多个电路)包括提供存储器操作的管芯级控制的状态机262。在一个实施方案中,状态机262能够由软件编程。在其他实施方案中,状态机262不使用软件并且完全地在硬件(例如,电路)中实现。在另一个实施方案中,状态机262由微控制器或微处理器替换,该微控制器或微处理器在存储器芯片之上或之外。系统控制逻辑部件260还可以包括功率控制模块264,该功率控制模块控制在存储器操作期间供应给存储器结构202的行和列的功率和电压,并且可包括用于产生调节电压的电荷泵和调节器电路。系统控制逻辑部件260包括存储装置266(例如,ram、寄存器、锁存器等),该存储装置可用于存储用于操作存储器阵列202的参数。
48.命令和数据经由存储器控制器接口268(也称为“通信接口”)在存储器控制器120与存储器管芯200之间传送。存储器控制器接口268是用于与存储器控制器120通信的电接口。存储器控制器接口268的示例包括切换模式接口和开放nand闪存接口(onfi)。也可以使用其他i/o接口。
49.在一些实施方案中,存储器管芯200的所有元件(包括系统控制逻辑部件360)可以
形成为单个管芯的一部分。在其他实施方案中,系统控制逻辑部件260中的一些或全部可以形成在不同的管芯上。
50.在一个实施方案中,存储器结构202包括非易失性存储器单元的三维存储器阵列,其中多个存储器级形成在单个衬底诸如晶圆上方。存储器结构可包括任何类型的非易失性存储器,该非易失性存储器在具有设置在硅(或其他类型的)衬底上方的有源区域的存储器单元的一个或多个物理级中一体地形成。在一个示例中,非易失性存储器单元包括具有电荷捕集层的垂直nand串。
51.在另一个实施方案中,存储器结构202包括非易失性存储器单元的二维存储器阵列。在一个示例中,非易失性存储器单元是利用浮动栅极的nand闪存存储器单元。也可使用其他类型的存储器单元(例如,nor型闪存存储器)。
52.包括在存储器结构202中的存储器阵列架构或存储器单元的确切类型不限于上述示例。许多不同类型的存储器阵列架构或存储器技术可用于形成存储器结构202。实现本文提出的要求保护的新实施方案不需要特定的非易失性存储器技术。用于存储器结构202的存储器单元的合适技术的其他示例包括reram存储器(电阻式随机存取存储器)、磁阻式存储器(例如,mram、自旋转移矩mram、自旋轨道扭矩mram)、feram、相变存储器(例如,pcm)等。用于存储器结构202的存储器单元架构的合适技术的示例包括二维阵列、三维阵列、交叉点阵列、堆叠二维阵列、竖直位线阵列等。
53.reram交叉点存储器的一个示例包括可逆电阻切换元件,其布置在由x线和y线(例如,字线和位线)访问的交叉点阵列中。在另一个实施方案中,存储器单元可包括导电桥存储器元件。导电桥存储器元件也可称为可编程金属化单元。基于固体电解质内的离子的物理重新定位,导电桥存储器元件可用作状态改变元件。在一些情况下,导电桥存储器元件可包括两个固体金属电极,一个是相对惰性的(例如,钨),而另一个是电化学活性的(例如,银或铜),在两个电极之间具有固体电解质的薄膜。随着温度升高,离子的迁移率也增加,这导致导电桥存储器单元的编程阈值降低。因此,导电桥存储器元件可在整个温度范围内具有宽范围的编程阈值。
54.另一个示例是通过磁存储元件来存储数据的磁阻随机存取存储器(mram)。这些元件由两个被薄绝缘层隔开的铁磁层形成,这两个铁磁层中的每一个铁磁层都可以保持磁化。这两个层中的一个层是被设置为特定极性的永磁体;另一个层的磁化可以被改变以匹配外磁场对存储存储器的磁化。存储器设备由此类存储器单元的网格构建。在用于编程的一个实施方案中,每个存储器单元位于一对写入线之间,该对写入线被布置成彼此成直角,与单元平行,一个在单元上方并且一个在单元下方。当电流通过它们时,产生感应磁场。下文将更详细地讨论基于mram的存储器实施方案。
55.相变存储器(pcm)利用了硫属化合物玻璃的独特性能。一个实施方案使用gete-sb2te3超晶格通过仅利激光脉冲(或来自另一个源的光脉冲)改变锗原子的配位状态来实现非热相变。因此,编程的剂量是激光脉冲。可以通过阻止存储器单元接收光来抑制存储器单元。在其他pcm实施方案中,存储器单元通过电流脉冲来编程。应当注意,在该文件中使用“脉冲”不需要矩形脉冲,但包括声音、电流、电压光或其他波的(连续或非连续)振动或脉冲串。各个可选择存储器单元或位内的这些存储器元件可以包括作为选择器的另外的串联元件,诸如双向阈值开关或金属绝缘体衬底。
56.本领域普通技术人员将认识到,本文所述的技术不限于单个特定存储器结构、存储器配置或材料构成,但涵盖了在如本文所述的以及如本领域普通技术人员所理解的技术实质与范围内的许多相关的存储器结构。
57.图2a的元件可可被分组为两个部分:(1)存储器结构202和(2)外围电路系统,该外围电路系统包括图2a中描绘的除存储器结构202之外的所有部件。存储器电路的重要特性是其容量,该容量可以通过如下方式增加:增加留给存储器结构202作特定用途的存储系统100的存储器管芯的面积;然而,这减小了可用于外围电路系统的存储器管芯的面积。这可以对外围电路系统的这些元件造成相当严重的限制。例如,需要在可用区域内装配感测放大器电路,这可是对感测放大器设计架构的重大限制。相对于系统控制逻辑部件260,可用面积减小可能会限制可以在芯片上实现的可用功能。因此,在存储系统100的存储器管芯的设计中,需要对存储器结构202的专用面积量以及外围电路系统的专用面积量进行基本权衡。
58.存储器结构202与外围电路系统通常有矛盾的另一个区域是在形成这些区域时所涉及的处理中,因为这些区域通常涉及不同的处理技术以及在单个管芯上实施不同技术时的权衡。例如,当存储器结构202是nand闪存时,这是nmos结构,而外围电路系统通常是基于cmos的。例如,诸如感测放大器电路、电荷泵、状态机中的逻辑元件和系统控制逻辑部件260中的其他外围电路系统的元件通常采用pmos设备。用于制造cmos管芯的处理操作在许多方面将不同于针对nmos闪存nand存储器或其他存储器单元技术所优化的处理操作。
59.为了改进这些限制,下文所述的实施方案可将图2a的元件分离到单独形成的管芯上,然后将这些管芯接合在一起。更具体地,存储器结构202可以形成在一个管芯(称为存储器管芯)上,并且外围电路系统元件中的一些或全部(包括一个或多个控制电路)可以形成在单独的管芯(称为控制管芯)上。例如,存储器管芯可以仅由存储器元件形成,诸如闪存nand存储器、mram存储器、pcm存储器、reram存储器或其他存储器类型的存储器单元阵列。然后可以将外围电路中的一些或全部电路(甚至包括诸如解码器和感测放大器等元件)移到单独的控制管芯上。这允许根据其技术单独地优化存储器管芯中的每个管芯。例如,nand存储器管芯可以针对基于nmos的存储器阵列结构进行优化,而无需担心现在已移到可以针对cmos处理进行优化的控制管芯上的cmos元件。这为外围元件提供了更多空间,如果外围元件被限制于容纳了存储器单元阵列的相同管芯的边缘,则现在可结合可能不容易结合的附加能力。然后可在接合式多管芯存储器电路中将两个管芯接合在一起,其中一个管芯上的阵列连接到另一个管芯上的外围元件。例如,虽然下面将集中介绍一个存储器管芯和一个控制管芯的接合式存储器电路,但其他实施方案可使用更多管芯,诸如两个存储器管芯和一个控制管芯。
60.图2b示出了图2a的布置的另选布置,其可使用晶圆对晶圆接合来实现以提供接合管芯对。图2b描绘了集成存储器组件207的一个实施方案的功能框图。一个或多个集成存储器组件207可用于实现存储系统100的非易失性存储器130。集成存储器组件307包括两种类型的半导体管芯(或更简洁地,“管芯”)。存储器管芯201包括存储器结构202。存储器结构202包括非易失性存储器单元。控制管芯211包括控制电路系统260、210和220(如上所述)。在一些实施方案中,控制管芯211被配置为连接到存储器管芯201中的存储器结构202。在一些实施方案中,存储器管芯201和控制管芯211接合在一起。
61.图2b示出了外围电路系统的示例,其包括形成于外围电路或控制管芯311中的控制电路,这些控制电路耦接到形成于存储器管芯201中的存储器结构202。通用部件以类似于图2a的方式标记。系统控制逻辑部件260、行控制电路系统220和列控制电路系统210位于控制管芯211中。在一些实施方案中,列控制电路系统210的全部或一部分以及行控制电路系统220的全部或一部分位于存储器管芯201上。在一些实施方案中,系统控制逻辑部件260中的一些电路系统位于存储器管芯201上。
62.系统控制逻辑部件260、行控制电路系统220和列控制电路系统210可以由常规工艺(例如,cmos工艺)形成,使得添加更常见于存储器控制器120上的元件和功能诸如ecc可能需要很少的附加工艺步骤或不需要附加工艺步骤(即,用于制造控制器120的相同工艺步骤也可以用于制造系统控制逻辑部件260、行控制电路系统220和列控制电路系统210)。因此,尽管移走管芯(诸如,存储器2管芯201)中的此类电路可减少制造此类管芯所需的步骤数量,但向管芯(诸如,控制管芯311)添加此类电路可能不需要许多附加的工艺步骤。由于使用cmos技术来实现控制电路系统260、210、220中的一些或全部,因此控制管芯211也可称为cmos管芯。
63.图2b示出了控制管芯211上的包括感测放大器230的列控制电路系统210,该列控制电路通过电路径206耦接到存储器管芯201上的存储器结构202。例如,电路径206可以在列解码器212、驱动器电路系统214、块选择器216与存储器结构202的位线之间提供电连接。电路径可以从控制管芯211中的列控制电路系统210延伸穿过控制管芯211上的焊盘,这些焊盘接合到存储器管芯201的对应焊盘,这些对应焊盘连接到存储器结构202的位线。存储器结构202的每条位线都可以在电路径206中具有对应的电路径,包括连接到列控制电路系统210的一对接合焊盘。类似地,行控制电路系统220(包括行解码器222、阵列驱动器224和块选择器226)通过电路径208耦接到存储器结构202。电路径208中的每条电路径可以对应于字线、虚设字线或选择栅极线。也可以在控制管芯211与存储器管芯201之间提供附加的电路径。
64.出于本文档的目的,短语“控制电路”或“一个或多个控制电路”可包括存储器控制器120、状态机262、系统控制逻辑260的全部或一部分、行控制电路系统220的全部或一部分、列控制电路系统210的全部或一部分、微控制器、微处理器和/或其他类似功能电路中的任一者或任何组合。控制电路可以仅包括硬件或者包括硬件和软件(包括固件)的组合。例如,由固件编程以执行本文描述的功能的控制器是控制电路的一个示例。控制电路可以包括处理器、fga、asic、集成电路,或其他类型的电路。
65.在一些实施方案中,集成存储器组件207中存在多于一个控制管芯211和多于一个存储器管芯201。在一些实施方案中,集成存储器组件207包括多个控制管芯211和多个存储器管芯201的堆叠。图2c描绘了堆叠在衬底271上的集成存储器组件207(例如,包括控制管芯211和存储器管芯201的堆叠)的一个实施方案的侧视图。集成存储器组件207具有三个控制管芯211和三个存储器管芯201。在一些实施方案中,存在多于三个存储器管芯201和多于三个控制管芯211。
66.每个控制管芯211附连(例如,接合)到存储器管芯201中的至少一个存储器管芯。描绘了接合焊盘282/284中的一些接合焊盘。可能有更多的接合焊盘。接合在一起的两个管芯201、211之间的空间填充有固态层280,该固态层可由环氧树脂或其他树脂或聚合物形
成。该固态层280保护了管芯201、211之间的电连接,并进一步将管芯固定在一起。各种材料可用作固态层280,但在实施方案中,该材料可以是来自henkel公司的hysol环氧树脂,该公司在美国加利福尼亚州设有办事处。
67.集成存储器组件207可例如以阶梯式偏移堆叠,使得每一级处的接合焊盘不被覆盖并且能够从上方触及。连接到接合焊盘的引线接合部270将控制管芯211连接到衬底271。多个此类引线接合可跨每个控制管芯211的宽度形成(即,形成到图2c的页面中)。
68.存储器管芯硅通孔(tsv)276可用于将信号路由穿过存储器管芯201。控制管芯硅通孔(tsv)278可用于将信号路由穿过控制管芯211。可在半导体管芯201、211中的集成电路形成之前、期间或之后形成tsv276、278。可通过蚀刻穿过晶圆的孔来形成tsv。然后,可将这些孔衬有防金属扩散的阻挡。阻挡层又可以衬有种子层,并且种子层可以镀有电导体,诸如铜,尽管可以使用其他合适的材料,诸如铝、锡、镍、金、掺杂的多晶硅以及合金或其组合。
69.焊球272可任选地附连到衬底271的下表面上的接触焊盘274。焊球272可用于将集成存储器组件207以电气方式和机械方式耦接到主机设备诸如印刷电路板。在集成存储器组件207将用作lga封装件的情况下,可省略焊球272。焊球272可形成集成存储器组件207与存储器控制器120之间的接口的一部分。
70.图2d描绘了堆叠在衬底271上的集成存储器组件207的另一个实施方案的侧视图。图2d的集成存储器组件207具有三个控制管芯211和三个存储器管芯201。在一些实施方案中,存在多于三个存储器管芯201和多于三个控制管芯211。在该示例中,每个控制管芯211接合到至少一个存储器管芯201。任选地,控制管芯211可接合到两个或更多个存储器管芯201。
71.描绘了接合焊盘282、284中的一些接合焊盘。可能有更多的接合焊盘。接合在一起的两个管芯201、211之间的空间填充有固态层280,该固态层可由环氧树脂或其他树脂或聚合物形成。与图2c中的示例相比,图2d中的集成存储器组件207不具有阶梯式偏移。存储器管芯硅通孔(tsv)276可用于将信号路由穿过存储器管芯201。控制管芯硅通孔(tsv)278可用于将信号路由穿过控制管芯211。
72.焊球272可任选地附连到衬底271的下表面上的接触焊盘274。焊球272可用于将集成存储器组件207以电气方式和机械方式耦接到主机设备诸如印刷电路板。在集成存储器组件207将用作lga封装件的情况下,可省略焊球272。
73.如上面已经简要讨论的,控制管芯211和存储器管芯201可接合在一起。每个管芯201、211上的接合焊盘可用于将两个管芯接合在一起。在一些实施方案中,在所谓的cu-cu接合工艺中,接合焊盘在没有焊料或其他附加材料的情况下直接彼此接合。在cu-cu接合工艺中,接合焊盘被控制为高度平坦的,并且形成在高度受控的环境中,该环境基本上没有环境颗粒,否则该环境颗粒可能沉积在接合焊盘上并阻止紧密接合。在这种适当控制的条件下,接合焊盘对准并彼此压靠,以基于表面张力形成相互接合。这种接合可以在室温下形成,尽管也可以施加热量。在使用cu-cu接合的实施方案中,接合焊盘可以是大约5μm见方,并且以5μm到5μm的间距彼此隔开。虽然该工艺在本文中被称为cu-cu接合,但是该术语也可以适用于接合焊盘由除铜之外的材料形成的情况。
74.当接合焊盘的面积小时,可能难以将半导体管芯接合在一起。通过在包括接合焊盘的半导体管芯的表面上提供膜层,可以进一步减小接合焊盘的尺寸和间距。膜层设置在
接合焊盘周围。当管芯被放在一起时,接合焊盘可以彼此接合,并且各个管芯上的膜层可以彼此接合。这种接合技术可以称为混合接合。在使用混合接合的实施方案中,接合焊盘可以是大约5μm见方,并且以1μm到5μm的间距彼此隔开。可以使用接合技术来提供具有更小尺寸和间距的接合焊盘。
75.一些实施方案可以在管芯201、211的表面上包括膜。如果最初没有提供这样的膜,则可以用环氧树脂或其他树脂或聚合物在底部填充管芯之间的空间。底部填充材料可作为液体施加,然后使其硬化为固态层。该底部填充的步骤保护了管芯201、211之间的电连接,并进一步将管芯固定在一起。各种材料可用作底部填充材料,但在实施方案中,底部填充材料可以是来自henkel公司的hysol环氧树脂,该公司在美国加利福尼亚州设有办事处。
76.图3是描绘列控制电路系统210的一部分的一个实施方案的框图,该部分被划分为多个感测放大器230以及被称为管理电路302的公共部分。在一个实施方案中,每个感测放大器230连接到相应的位线,该位线继而连接到一个或多个nand串。在一个示例性具体实施中,每个位线连接到六个nand串,其中每个子块一个nand串。管理电路302连接到一组多个(例如,四个、八个等)感测放大器230。组中的感测放大器230中的每一者经由数据总线304与相关联的管理电路通信。
77.每个感测放大器230操作以在编程、验证、擦除和读取操作期间向位线(参见bl0、bl1、bl2、bl3)提供电压。感测放大器还用于感测连接到位线的nand串中的存储器单元的条件(例如,数据状态),该位线连接到相应的感测放大器。
78.每个感测放大器230包括连接到晶体管308(例如,nmos)的选择器306或开关。基于晶体管308的控制栅极310和漏极312处的电压,晶体管可作为通过门或位线钳位操作。当控制栅极处的电压充分高于漏极上的电压时,晶体管作为通过门操作以将漏极处的电压传递到晶体管的源极314处的位线(bl)。例如,当对未选择的nand串进行预充电和禁止时,编程禁止电压(诸如1v-2v)可通过。或者,编程启用电压(诸如0v)可通过以允许在所选择的nand串中进行编程。选择器306可将电源电压vdd(例如,3v-4v)传递到晶体管308的控制栅极,以使其作为通过门操作。
79.当控制栅极处的电压低于漏极上的电压时,晶体管308作为源极跟随器操作以将位线电压设置或钳位在vcg-vth处,其中vcg为控制栅极310上的电压,并且vth(例如,0.7v)为晶体管308的阈值电压。这假设源极线处于0v。如果vcelsrc是非零,则位线电压被钳位在vcg-vcelsrc-vth处。因此,晶体管有时被称为位线钳位(blc)晶体管,并且控制栅极310上的电压vcg被称为位线钳位电压vblc。该模式可在感测操作期间使用,诸如读取和验证操作。因此,位线电压由晶体管308基于由选择器306输出的电压来设置。例如,选择器306可将vsense+vth(例如,1.5v)传递到晶体管308的控制栅极,以在位线上提供vsense(例如,0.8v)。vbl选择器316可将相对较高电压诸如vdd传递到漏极312,该电压高于晶体管308上的控制栅极电压以在感测操作件提供源极跟随器模式。vbl是指位线电压。
80.vbl选择器316可传递多个电压信号中的一个电压信号。例如,vbl选择器可传递编程禁止电压信号,该编程禁止电压信号在编程循环期间针对未选择的nand串的相应位线从初始电压(例如,0v)增加到编程禁止电压(例如,vbl_inh)。vbl选择器316可以在编程循环期间针对所选择的nand串的相应位线传递编程启用电压信号(诸如0v)。
81.在一种方法中,每个感测电路的选择器306可以与其他感测电路的选择器分开控
制。每个感测电路的vbl选择器316也可以与其他感测电路的vbl选择器分开控制。
82.在感测期间,感测节点318被充电直到初始电压vsense_init(诸如3v)。然后,感测节点经由晶体管308传递到位线,并且感测节点的衰减量用于确定存储器单元是处于导电状态还是非导电状态。感测节点的衰减量还指示存储器单元中的电流icell是否超过参考电流iref。较大的衰减对应于较大电流。如果icell≤iref,则存储器单元处于非导电状态,并且如果icell》iref,则存储器单元处于导电状态。
83.具体地,比较电路320通过在感测时将感测节点电压与跳闸电压进行比较来确定衰减量。如果感测节点电压衰减到低于跳闸电压vtrip,则存储器单元处于导电状态并且其vth等于或低于验证电压。如果感测节点电压未衰减到低于vtrip,则存储器单元处于非导电状态并且其vth高于验证电压。例如,由比较电路320基于存储器单元分别是处于导电状态还是非导电状态而将感测节点锁存器322设置为0或1。例如,在编程-验证测试中,0可以表示失败,并且1可以表示通过。感测节点锁存器中的位可在扫描操作的状态位扫描操作中读出,或在填充操作中从0翻转到1。感测节点锁存器322中的位也可用于锁定扫描中,以决定在下一个编程循环中将位线电压设置为禁止电平还是编程电平。l
84.管理电路302包括处理器330、四组示例性数据锁存器340、342、344和346以及耦接在数据锁存器组与数据总线334之间的i/o接口332。图3示出了四组示例性数据锁存器340、342、344和346;然而,在其他实施方案中,可以实现多于或少于四组。在一个实施方案中,每个感测放大器230存在一组锁存器。可以为每个感测电路提供一组三个数据锁存器,例如,包括单独锁存器adl、bdl、cdl和xdl。在一些情况下,可以使用不同数量的数据锁存器。在每存储器单元三位实施方案中,adl存储用于下页数据的位,bdl存储用于中间页数据的位,cdl存储用于上页数据的位,并且xdl充当用于存储/锁存来自存储器控制器的数据的接口锁存器。
85.处理器330执行计算,诸如确定存储在已感测的存储器单元中的数据以及将所确定的数据存储在该组数据锁存器中。每组数据锁存器340-346用于在读取操作期间存储由处理器330确定的数据位并在编程操作期间存储从数据总线334导入的数据位,这些数据位表示要编程到存储器中的写入数据。i/o接口332在数据锁存器340-346和数据总线334之间提供接口。
86.在读取期间,系统的操作处于状态机262的控制之下,该状态机控制向寻址的存储器单元提供不同的控制栅极电压。当它逐步通过与存储器支持的各种存储器状态相对应的各种预定义控制栅极电压时,感测电路可以在这些电压中的一个电压处跳闸,并且对应输出将经由数据总线304从感测放大器提供给处理器330。此时,处理器330通过考虑感测电路的跳闸事件和关于来自状态机的经由输入线348施加的控制栅极电压的信息来确定所得的存储器状态。然后,它计算存储器状态的二进制编码,并将得到的数据位存储到数据锁存器340-346中。
87.一些具体实施可包括多个处理器330。在一个实施方案中,每个处理器330将包括输出线(未描绘),使得每个输出线以线或连接进行连接。可通过在节点处将多条线连接在一起来提供线或连接或线,其中每条线承载来自相应处理器的高或低输入信号,并且如果输入信号中的任一个输入信号高,则节点的输出高。在一些实施方案中,输出线在连接到线或线之前被反转。该配置使得能够在编程验证测试期间快速确定编程过程何时完成,因为
接收线或的状态机可以确定何时所有被编程的位达到了期望的水平。例如,当每个位达到其所需电平时,该位的逻辑零将被发送到线或线(或数据一被反转)。当所有位输出数据0(或数据一被反转)时,状态机知道终止编程过程。因为每个处理器与八个感测电路通信,所以状态机需要读取线或线八次,或者将逻辑添加到处理器330以累积相关位线的结果,使得状态机只需要读取一次线或线。类似地,通过正确选择逻辑电平,全局状态机可以检测第一位何时改变其状态并相应地改变算法。
88.在存储器单元的编程或验证操作期间,要编程的数据(写入数据)存储在来自数据总线334的数据锁存器组340-346中。在重新编程期间,存储器单元的相应的一组数据锁存器可基于编程脉冲量值存储指示何时使存储器单元能够重新编程的数据。
89.在状态机262的控制下,编程操作将一系列编程电压脉冲施加到所寻址的存储器单元的控制栅极。每个电压脉冲的幅值可以在处理中从先前编程脉冲逐步增加一个步长,该处理被称为增量步进脉冲编程。每个编程电压之后是验证操作以确定存储器单元是否已被编程到所需的存储器状态。在一些情况下,处理器330监测相对于所需存储器状态的读回存储器状态。当两者一致时,处理器330将位线设置为编程禁止模式,诸如通过更新其锁存器。即使将附加的编程脉冲施加到其控制栅极,这也禁止耦接到位线的存储器单元进一步编程。
90.图4是可包括存储器结构202的单片三维存储器阵列/结构的一个示例性实施方案的一部分的透视图,该存储器结构包括被布置为竖直nand串的多个非易失性存储器单元。例如,图4示出了一个存储器块的一部分400。所描绘的结构包括一组位线bl,其位于交替的介电层和导电层的堆叠401上方。出于示例目的,将介电层中的一个标记为d,并且将导电层中的一个(也被称为字线层)标记为w。交替的介电层和导电层的数量可以基于特定具体实施要求而变化。如下文将解释的,在一个实施方案中,交替的介电层和导电层通过隔离区ir分成六个(或不同数量的)区域(例如,子块)。图4示出了分离两个子块的一个隔离区ir。源极线层sl位于交替的介电层和字线层下方。在交替的介电层和导电层的堆叠中形成存储器孔。例如,存储器孔被标记为mh。需注意,在图4中,介电层被描绘为透视图,使得读者可以看到位于交替的介电层和导电层的堆叠中的存储器孔。在一个实施方案中,通过用包括电荷捕集材料的材料填充存储器孔以形成存储器单元的竖直列来形成nand串。每个存储器单元可以存储一个或多个数据位。下文提供了包括存储器结构202的三维单片存储器阵列的更多细节。
91.图4a是说明存储器结构202的一个示例性组织的框图,该存储器结构被分为两个平面402和404。然后,将每个平面分成m个块。在一个示例中,每个平面具有约2000个块。然而,也可以使用不同数量的块和平面。在一个实施方案中,存储器单元的块是擦除单位。即,一个块的所有存储器单元一起被擦除。在其他实施方案中,可以将块划分为子块,并且子块可以是擦除单位。还可以出于其他原因将存储器单元分组为块,诸如为了组织存储器结构以启用信令和选择电路。在一些实施方案中,块表示一组连接的存储器单元,因为块的存储器单元共享一组公共的字线。例如,块的字线全部连接到该块的所有竖直nand串。尽管图4a示出了两个平面402/404,但是可以实现多于或少于两个平面。在一些实施方案中,存储器结构202包括八个平面。
92.图4b至图4j描绘了示例性三维(“3d”)nand结构,其对应于图4的结构并且可用于
实现图2a和图2b的存储器结构202。图4b是描绘平面402的块2的一部分406的顶视图的框图。如从图4b中可见,图4b中描绘的块沿432的方向延伸。在一个实施方案中,存储器阵列具有许多层;然而,图4b仅示出了顶层。
93.图4b描绘了表示对应于存储器孔的竖直列的多个圆。竖直列中的每一个包括多个选择晶体管(也称为选择栅极或选取栅极)和多个存储器单元。在一个实施方案中,每个竖直列实现一个nand串。例如,图4b标记竖直列/nand串426、432、436、446、456、462、466、472、474和476的子集。
94.图4b还描绘了一组位线415,包括位线411、412、413、414、
……
、419。图4b示出了二十四个位线,因为仅示出了该块的一部分。可以设想到,多于二十四个位线可连接到该块的竖直列。表示竖直列的每个圆圈都有一个“x”以指示其与一个位线连接。例如,位线411连接到竖直列426、436、446、456、466和476。
95.图4b中描绘的块包括一组隔离区480、482、484、486和488,其由sio2形成;然而,也可以使用其他介电材料。隔离区480、482、484、486和488用于将块的顶层分为六个区域;例如,图4b中描绘的顶层被分为区域420、430、440、450、460和470,所有这些区域被称为子块。在一个实施方案中,隔离区仅划分用于实现选择栅极的层,使得可以独立地选择不同子块中的nand串。在一个示例性具体实施中,位线仅连接到区域(字块)420、430、440、450、460和470中的每一者中的一个竖直列/nand串。在该具体实施中,每个块具有二十四行活动列,并且每个位线连接到每个块中的六行。在一个实施方案中,连接到公共位线的所有六个竖直列/nand串都连接到相同字线(或字线组)。因此,系统使用漏极侧选择线来选择六个中的要进行存储器操作(编程、验证、读取和/或擦除)的一个(或另一个子集)。
96.尽管图4b示出了在一个块中每个区域420、430、440、450、460和470具有四行竖直列,六个区域就有二十四行竖直列,但是这些确切数字是示例性具体实施。其他实施方案可以包括每一块更多或更少的区域、每一区域更多行或更少行的竖直列、以及每一块更多行或更少行的竖直列。图4b还示出了竖直列是交错的。在其它实施方案中,可以使用不同交错模式。在一些实施方案中,竖直列不交错。
97.图4c描绘了三维存储器结构202的一个实施方案的一部分,示出了沿图4b的线aa的剖视图。该剖视图切穿区域470的竖直列(nand串)472和474(参见图4b)。图4c的结构包括:三个漏极侧选择层sgd0、sgd1和sgd2;三个源极侧选择层sgs0、sgs1和sgs2;三个虚设字线层dd0、dd1和dds;用于连接到数据存储器单元的二百四十个字线层wl0-wl239;以及二百五个介电层dl0-dl249。其他实施方案可实现多于或少于以上针对图4c所述的数字。在一个实施方案中,sgd0、sgd1和sgd2连接在一起,并且sgds0、sgs1和sgs2连接在一起。
98.竖直列472和474被描绘为突出穿过漏极侧选择层、源极侧选择层、虚设字线层以及字线层。在一个实施方案中,每个竖直列都包括竖直nand串。在竖直列和层之下的是衬底453、衬底上的绝缘膜454以及源极线sl。竖直列442的nand串在堆叠的底部处具有源极端并且在堆叠的顶部处具有漏极端。如在图4b中,图4c示出了经由连接器417连接到位线414的竖直列472。
99.为了易于参考,漏极侧选择层、源极侧选择层、虚设字线层以及数据字线层统称为导电层。在一个实施方案中,导电层由tin和钨的组合制成。在其他实施方案中,可使用其他材料形成导电层,该其他材料诸如为掺杂的多晶硅、金属(诸如钨)或金属硅化物。在一些实
施方案中,不同导电层可以由不同材料形成。在导电层之间的是介电层dl0-dl249。例如,介电层dl240在字线层wl235上方并且在字线层wl236下方。在一个实施方案中,介电层由sio2制成。在其他实施方案中,可以使用其他介电材料形成介电层。
100.非易失性存储器单元沿竖直列形成,该竖直列延伸穿过堆叠中的交替的导电层和介电层。在一个实施方案中,存储器单元布置在nand串中。字线层wl0-w239连接到存储器单元(也称为数据存储器单元)。虚设字线层dd0、dd1和ds连接到虚设存储器单元。虚设存储器单元不存储主机数据并且没有资格存储主机数据(从主机或存储系统100外部的实体提供的数据,诸如来自主机用户的数据),而数据存储器单元有资格存储主机数据。主机数据可与由存储器系统100(例如,l2p表)生成的系统数据形成对比。在一些实施方案中,数据存储器单元和虚设存储器单元可具有相同结构。漏极侧选择层sgd0、sgd1和sgd2用于将nand串与位线电连接和断开。源极侧选择层sgs0、sgs1和sgs2用于将nand串与源极线sl电连接和断开。
101.需注意,字线wl0-wl239的堆叠包括堆叠的边缘处的两个边线字线,包括顶部边缘字线wl239和底部边缘字线wl0。字线wl1-wl238为非边缘字线。
102.图4d描绘了三维存储器结构202的一个实施方案的一部分,示出了沿图4b的线bb的剖视图。该剖视图切穿区域430的竖直列(nand串)432和434(参见图4b)。图4d示出了与图4c相同的交替导电层和介电层。图4d还示出了隔离区482。隔离区480、482、484、486和488占据已经用于存储器孔/竖直列/nand串的一部分的空间。例如,隔离区482占据已经用于竖直列434的一部分的空间。更具体地,竖直列434的一部分(例如,直径的一半)已在层sdg0、sgd1、sgd2和dd0中移除以容纳隔离区482。因此,虽然大部分竖直列434是圆柱形的(具有圆形横截面),但层sdg0、sgd1、sgd2和dd0中的竖直列434的部分具有半圆形横截面。在一个实施方案中,在形成交替的导电层和介电层的堆叠之后,蚀刻堆叠以产生隔离区的空间,并且该空间随后填充有sio2。
103.图4e描绘了三维存储器结构202的一个实施方案的一部分,示出了沿图4b的线cc的剖视图。该剖视图切穿竖直列(nand串)452和462(参见图4b)。图4e示出了与图4c相同的交替导电层和介电层。图4e还示出了切成竖直列(nand串)452的隔离区486。
104.图4f描绘了包括竖直列472的一部分的图4c的区域429的剖视图。在一个实施方案中,竖直列是圆形的;然而,在其他实施方案中,可使用其他形状。在一个实施方案中,竖直列472包括由诸如sio2的电介质制成的内芯层490。也可以使用其他材料。包围内芯490的是多晶硅沟道491。也可以使用除了多晶硅之外的材料。需注意,沟道491连接到位线和源极线。包围沟道491的是隧穿电介质492。在一个实施方案中,隧穿电介质492具有ono结构。包围隧穿电介质492的是电荷捕集层493,诸如(例如)氮化硅。也可以使用其他存储器材料和结构。本文所述的技术不限于任何特定材料或结构。
105.图4d描绘了介电层dll239、dll240、dll241、dll242和dll243,以及字线层wll234、wll235、wll236、wll237和wll238。字线层中的每个字线层包括由氧化铝层497包围的字线区域496,该氧化铝层由阻挡氧化物层498包围。在其他实施方案中,阻挡氧化物层可以是与电荷捕集层493平行且相邻的竖直层。字线层与竖直列的物理相互作用形成存储器单元。因此,在一个实施方案中,存储器单元包括沟道491、隧穿电介质492、电荷捕集层493、阻挡氧化物层498、氧化铝层497以及字线区域496。例如,字线层wll238和竖直列472的一部分构成
存储器单元mc1。字线层wl237和竖直列472的一部分构成存储器单元mc2。字线层wll236和竖直列472的一部分构成存储器单元mc3。字线层wll235和竖直列472的一部分构成存储器单元mc4。字线层wll234和竖直列472的一部分构成存储器单元mc5。在其他架构中,存储器单元可具有不同的结构,然而,存储器单元仍将是存储单元。
106.当对存储器单元进行编程时,电子存储在电荷捕集层493的与存储器单元相关联(例如,在存储器单元中)的一部分中。响应于字线区域496上的适当电压,这些电子通过隧穿电介质492从沟道491被吸引到电荷捕集层493中。存储器单元的阈值电压(vth)与所存储的电荷量成比例地增大。在一个实施方案中,通过电子的福勒-诺得海姆(fowler-nordheim)隧穿到电荷捕集层中来实现编程。在擦除操作期间,电子返回到沟道或空穴被注入到电荷捕集层中以与电子重组。在一个实施方案中,使用经由诸如gidl之类的物理机制的空穴注入到电荷捕集层中来实现擦除。
107.图4g示出了图4f的竖直列472的横截面,其中切穿mc5。因此,图4g描绘了字线层wl234、内芯490、沟道491、隧穿电介质492、电荷捕集层493、氧化铝层497和阻挡氧化物层498。
108.图4h示出了图4f的竖直列472的横截面,其中切穿sgd1(实施选择栅极的选择栅极层)。因此,图4h描绘了漏极侧选择线层sgd1、内芯490、沟道491、隧穿电介质492、电荷捕集层493、氧化铝层497和阻挡氧化物层498。
109.图4i示出了图4d的竖直列434的横截面,其中切穿sgd1。因此,图4i描绘了漏极侧选择线层sgd1、内芯490、沟道491、隧穿电介质492、电荷捕集层493、氧化铝层497和阻挡氧化物层498。图4i还示出了隔离区482的一部分。如图4i中可见,由于竖直列(nand串)434与隔离区482相交,竖直列434的选择栅极(选择栅极层和选择线层)是半圆形的(或部分圆形的形状)。
110.图4j是图4至图4i中描绘的存储器阵列202的一部分的示意图。图4j示出了跨整个块延伸的物理数据字线wl0-wl239。图4j的结构对应于图4a的块2中的部分306,包括位线411。在该块内,在一个实施方案中,每个位线连接到六个nand串。因此,图4j示出连接到nand串ns0(其对应于竖直列426)、nand串ns1(其对应于竖直列436)、nand串ns2(其对应于竖直列446)、nand串ns3(其对应于竖直列456)、nand串ns4(其对应于竖直列466)、nand串ns5(其对应于竖直列476)的位线。如上所述,在一个实施方案中,sgd0、sgd1和sgd2连接在一起以作为由隔离区(480、482、484、486和486)分开的每个子块的单个逻辑选择栅极来操作,以形成sgd-s0、sgd-s1、sgd-s2、sgd-s3、sgd-s4和sgd-s5。sgs0、sg1和sgs2也连接在一起以作为在图4e中表示为sgs的单个逻辑选择栅极来操作。尽管选择栅极sgd-s0、sgd-s1、sgd-s2、sgd-s3、sgd-s4和sgd-s5由于隔离区彼此隔离,但每个子块的数据字线wl0-wl239连接在一起。
111.隔离区(480、482、484、486和486)用于允许单独控制子块。第一子块对应于由sgd-s0控制的那些竖直nand串。第二子块对应于由sgd-s1控制的那些竖直nand串。第三子块对应于由sgd-s2控制的那些竖直nand串。第四子块对应于由sgd-s3控制的那些竖直nand串。第五子块对应于由sgd-s4控制的那些竖直nand串。第六子块对应于由sgd-s5控制的那些竖直nand串。
112.图4j仅示出连接到位线411的nand串。然而,块的完整示意图将示出每个位线和连
接到每个位线的六个竖直nand串。
113.虽然图4至图4j的示例性存储器是包括具有电荷捕集材料的竖直nand串的三维存储器结构,但是其他(2d和3d)存储器结构也可与本文所述的技术一起使用。
114.上面讨论的存储器系统可以被擦除、编程和读取。在成功编程过程结束时,在适当时,存储器单元的阈值电压应当在用于编程的存储器单元的阈值电压的一个或多个分布内或在经擦除的存储器单元的阈值电压的分布内。图5a是阈值电压与存储器单元数量的曲线图,并且示出了当每个存储器单元存储每存储器单元一位数据时存储器阵列的示例性阈值电压分布。存储每存储器单元数据一位数据的存储器单元被称为单级单元(“slc”)。存储在slc存储器单元中的数据被称为slc数据;因此,slc数据包括每存储器单元一位。作为每存储器单元一位存储的数据是slc数据。图5a示出了两个阈值电压分布:e和p。阈值电压分布e对应于擦除数据状态。阈值电压分布p对应于编程数据状态。因此,在阈值电压分布e中具有阈值电压的存储器单元处于擦除数据状态(例如,它们被擦除)。因此,在阈值电压分布p中具有阈值电压的存储器单元处于编程数据状态(例如,它们被编程)。在一个实施方案中,被擦除的存储器单元存储数据“1”,并且被编程的存储器单元存储数据“0”。图5a描绘了读取参考电压vr。通过测试(例如,执行一个或多个感测操作)给定存储器单元的阈值电压是高于还是低于vr,系统可确定存储器单元是被擦除(状态e)或还是被编程(状态p)。图5a还描绘了验证参考电压vv。在一些实施方案中,当将存储器单元编程到数据状态p时,系统将测试这些存储器单元是否具有大于或等于vv的阈值电压。
115.图5b至图5f示出了当每个存储器单元存储每存储器单元数据多位时用于存储器阵列的示例性阈值电压分布。存储每存储器单元数据多位的存储器单元被称为多级单元(“mlc”)。存储在mlc存储器单元中的数据被称为mlc数据;因此,mlc数据包括每存储器单元多位。作为每存储器单元多位数据存储的数据是mlc数据。在图5b的示例性实施方案中,每个存储器单元存储两位数据。其他实施方案可使用每存储器单元其他数据容量(例如,诸如每存储器单元三位数据、四位数据、五位数据或六位数据)。
116.图5b示出用于擦除存储器单元的第一阈值电压分布e。还描绘了用于编程存储器单元的三个阈值电压分布a、b和c。在一个实施方案中,分布e中的阈值电压为负,并且分布a、b和c中的阈值电压为正。图5b的每个不同的阈值电压分布对应于一组数据位的预先确定的值。在一个实施方案中,存储在存储器单元中的两位数据中的每位数据都在不同逻辑页面中,称为下页(lp)和上页(up)。在其他实施方案中,存储在存储器单元中的所有数据位都在共同逻辑页中。编程到存储器单元中的数据与该单元的阈值电压电平之间的具体关系取决于该单元所采纳的数据编码方案。表1提供了示例性编码方案。
117.表1
[0118] eabclp1001up1100
[0119]
在被称为全序列编程的一个实施方案中,可使用图6的过程将存储器单元从已擦除数据状态e直接编程到已编程数据状态a、b或c中的任一者(在下文中讨论)。例如,可以首先擦除待编程的存储器单元体,使得体中的所有存储器单元处于擦除数据状态e。然后,编程过程用于将存储器单元直接编程为数据状态a、b和/或c。例如,虽然一些存储器单
元正在从数据状态e编程到数据状态a,但其他存储器单元正在从数据状态e编程到数据状态b和/或从数据状态e编程到数据状态c。图5b的箭头表示全序列编程。在一些实施方案中,数据状态a-c可重叠,其中存储器控制器120(或存储器管芯211)依赖纠错来识别正在存储的正确数据。
[0120]
图5c描绘了存储器单元的示例性阈值电压分布,其中每个存储器单元存储每存储器单元三位数据(其为mlc数据的另一个示例)。图5c示出了对应于八个数据状态的八个阈值电压分布。第一个阈值电压分布(数据状态)er表示被擦除的存储器单元。其他七个阈值电压分布(数据状态)a-g表示被编程的存储器单元,并且因此也被称为已编程状态。每个阈值电压分布(数据状态)对应于一组数据位的预确定值。编程到存储器单元中的数据与该单元的阈值电压电平之间的具体关系取决于该单元所采纳的数据编码方案。在一个实施方案中,使用格雷码分配将数据值分配到阈值电压范围,使得如果存储器的阈值电压错误地移位到其相邻物理状态,那么将仅影响一个位。表2提供了其中存储在存储器单元中的三位数据中的每位数据都在不同逻辑页中的实施方案的编码方案的示例,该逻辑页称为下页(lp)、中间页(mp)和上页(up)。
[0121]
表2
[0122] erabcdefgup11100001mp11001100lp10000111
[0123]
图5c示出了用于从存储器单元读取数据的七个读取参考电压vra、vrb、vrc、vrd、vre、vrf和vrg。通过测试(例如,执行感测操作)给定存储器单元的阈值电压是高于还是低于七个读取参考电压,系统可以确定存储器单元所处于的数据状态(即,a、b、c、d、
……
)。
[0124]
图5c还示出了七个验证参考电压vva、vvb、vvc、vvd、vve、vvf和vvg。在一些实施方案中,当将存储器单元编程到数据状态a时,系统将测试这些存储器单元是否具有大于或等于vva的阈值电压。当将存储器单元编程到数据状态b时,系统将测试这些存储器单元是否具有大于或等于vvb的阈值电压。当将存储器单元编程到数据状态c时,系统将确定这些存储器单元是否具有大于或等于vvc的阈值电压。当将存储器单元编程到数据状态d时,系统将测试这些存储器单元是否具有大于或等于vvd的阈值电压。当将存储器单元编程到数据状态e时,系统将测试这些存储器单元是否具有大于或等于vve的阈值电压。当将存储器单元编程到数据状态f时,系统将测试这些存储器单元是否具有大于或等于vvf的阈值电压。当将存储器单元编程到数据状态g时,系统将测试这些存储器单元是否具有大于或等于vvg的阈值电压。图5c还示出了vev,其为用以测试存储器单元是否已被正确擦除的电压电平。
[0125]
在利用全序列编程的实施方案中,可使用图6的过程将存储器单元从已擦除数据状态er直接编程到已编程数据状态a-g中的任一者(在下文中讨论)。例如,可首先擦除要被编程的存储器单元,使得该中的所有存储器单元处于已擦除数据状态er。然后,使用编程过程将存储器单元直接编程到数据状态a、b、c、d、e、f和/或g。例如,虽然一些存储器单元正从数据状态er编程到数据状态a,但其他存储器单元正从数据状态er编程到数据状态b和/或从数据状态er编程到数据状态c,等等。图5c的箭头表示全序列编程。在一些实施方案中,数据状态a-g可重叠,其中控制管芯211和/或存储器控制器120依赖纠错来识别正在存
储的正确数据。需注意,在一些实施方案中,系统可以使用本领域已知的多遍编程过程而不是使用全序列编程。
[0126]
一般来讲,在验证操作和读取操作期间,将所选择的字线连接到电压(参考信号的一个示例),该电压的电平针对每个读取操作(例如,参见图5c的读取比较电平vra、vrb、vrc、vrd、vre、vrf和vrg)或验证操作(例如,参见图5c的验证目标电平vva、vvb、vvc、vvd、vve、vvf和vvg)指定,以便确定相关存储器单元的阈值电压是否已经达到这个电平。在施加字线电压之后,测量存储器单元的传导电流以确定该存储器单元是否响应于施加到字线的电压而接通(被传导电流)。如果传导电流被测量为大于特定值,那么假设存储器单元被接通并且施加到字线的电压大于存储器单元的阈值电压。如果传导电流未测量为大于特定值,那么假设存储器单元未接通并且施加到字线的电压不大于存储器单元的阈值电压。在读取或验证过程期间,未选择存储器单元在其控制栅极处被提供有一个或多个读取通过电压(也称为旁路电压),使得这些存储器单元将作为通过栅极操作(例如,不管这些存储器单元是被编程还是被擦除都传导电流)。
[0127]
有许多方法来在读取或验证操作期间测量存储器单元的传导电流。在一个示例中,以存储器单元对感测放大器中的专用电容器放电或充电的速率来测量该存储器单元的传导电流。在另一个示例中,选择的存储器单元的传导电流允许(或不允许)包括存储器单元的nand串对对应位线放电。在某时间段之后测量位线上的电压,以查看其是否已经放电。需注意,本文所述的技术可以与本领域中已知的用于验证/读取的不同方法一起使用。也可以使用本领域中已知的其他读取和验证技术。
[0128]
图5d描绘了当每个存储器单元存储四位数据(其为mlc数据的另一个示例)时的阈值电压分布。图5d示出了阈值电压分布(数据状态)s0-s15之间可存在一些重叠。该重叠可由于诸如存储器单元丢失电荷(并因此阈值电压下降)的因素而发生。编程干扰可无意地增大存储器单元的阈值电压。同样,读取干扰可无意地增大存储器单元的阈值电压。随着时间的推移,阈值电压分布的位置可改变。此类改变可增大误码率,从而增加解码时间或甚至使得不可能解码。改变读取参考电压可有助于减轻此类影响。在读取过程中使用ecc可修复错误和歧义。需注意,在一些实施方案中,存储每存储器单元四位数据的存储器单元体的阈值电压分布不重叠并且彼此分开;例如,如图5e所描绘的。图5d的阈值电压分布将包括读取参考电压和验证参考电压,如上所讨论的。
[0129]
当每个存储器单元使用四位时,可使用上面讨论的全序列编程或本领域中已知的多遍编程过程来对存储器进行编程。图5d的每个阈值电压分布(数据状态)对应于一组数据位的预先确定的值。编程到存储器单元中的数据与该单元的阈值电压电平之间的具体关系取决于该单元所采纳的数据编码方案。表3提供了其中存储在存储器单元中的四位数据中的每位数据都在不同逻辑页中的实施方案的编码方案的示例,该逻辑页称为下页(lp)、中间页(mp)、上页(up)和顶页(tp)。
[0130]
表3
[0131] s0s1s2s3s4s5s6s7s8s9s10s11s12s13s14s15tp1111100000110001up1100000011111100mp1110000110000111
lp1000110000011111
[0132]
图5f描绘了当每个存储器单元存储五位数据(其为mlc数据的另一个示例)时的阈值电压分布。在一个示例性具体实施中,当存储器单元存储五位数据时,数据以三十二个数据状态(例如,s0-s31)中的任一个数据状态存储。
[0133]
图6是描述用于对存储器单元进行编程的过程的一个实施方案的流程图。出于本文档的目的,术语编程(program)和编程(programming)与写入(write)和写入(writing)同义。在一个示例性实施方案中,使用上文讨论的一个或多个控制电路(例如,系统控制逻辑260、列控制电路系统210、行控制电路系统220)对存储器阵列202执行图6的过程。在一个示例性实施方案中,图6的过程由集成存储器组件207使用控制管芯211的一个或多个控制电路(例如,系统控制逻辑260、列控制电路系统210、行控制电路系统220)执行以对存储器管芯201上的存储器单元进行编程。该过程包括多个循环,每个循环包括编程阶段和验证阶段。执行图6的过程以实现全序列编程以及包括多遍编程的其他编程方案。当实施多遍编程时,图6的过程用于实现多遍编程过程的任一/每一遍。
[0134]
通常,在编程操作期间(经由所选择的数据字线)施加到控制栅极的编程电压被施加为一系列编程脉冲(例如,电压脉冲)。在编程脉冲之间的是一组验证脉冲(例如,电压脉冲)以执行验证。在许多具体实施中,编程脉冲的幅值随每个连续脉冲而增大预确定的步长。在图6的步骤602中,将编程电压信号(vpgm)初始化为起始幅值(例如,约12v至16v或另一个合适的电平),并且将由状态机262维持的编程计数器pc初始化为1。在一个实施方案中,被选择为编程的一组存储器单元(在本文中被称为所选择的存储器单元)被同时编程并且全部连接至相同的字线(所选择的字线)。可能有其他未选择用于编程的存储器单元(未选择的存储器单元)也连接至选择的字线。也就是说,所选择的字线也将连接至应该禁止编程的存储器单元。此外,当存储器单元达到它们预期的目标数据状态时,它们将被禁止进一步编程。这些nand串(例如,未选择nand串)使其信道升压以禁止编程,这些串包括连接至所选择的字线的要被禁止编程的存储器单元。当信道具有升高的电压时,信道和字线之间的电压差不足以引起编程。为了帮助升压,在步骤604中,控制管芯将对包括连接到将被禁止编程的所选择的字线的存储器单元的nand串的沟道预充电。在步骤606中,包括连接到将被禁止编程的所选择的字线的存储器单元的nand串使其信道升压以禁止编程。此类nand串在本文中被称为“未选择的nand串”。在一个实施方案中,未选择字线接收一个或多个升压电压(例如,约7伏-11伏)(也称为通过电压)以执行升压方案。编程禁止电压被施加到耦接未选择nand串的位线。
[0135]
在步骤608中,将编程电压信号vpgm的编程电压脉冲施加到所选择的字线(被选择用于编程的字线)。如果nand串上的存储器单元应该被编程,则对应的位线被偏置在编程启用电压。在步骤608中,将编程脉冲同时施加到连接到所选择的字线的所有存储器单元,使得同时对连接到所选择的字线的所有存储器单元进行编程(除非它们被禁止编程)。也就是说,它们在同一时间上或在重叠时间期间(两者都被视为是同时的)进行编程。以此方式,连接至所选择的字线的所有存储器单元将同时具有其阈值电压变化,除非它们被禁止编程。
[0136]
在步骤610中,执行编程验证并且已经达到其目标状态的存储器单元被锁定而不能被控制管芯进一步编程。步骤610包括通过在一个或多个验证参考电平下感测来执行编程的验证。在一个实施方案中,通过测试被选择用于编程的存储器单元的阈值电压是否已
经达到适当验证参考电压来执行验证过程。在步骤610中,在存储器单元已经被验证(通过vt的测试)存储器单元已经达到其目标状态之后,存储器单元可以被锁定。
[0137]
如果在步骤612中,确定所有存储器单元都已经达到其目标阈值电压(通过),则该编程过程完成并且成功,因为所有选择的存储器单元都被编程并验证到其目标状态。在步骤614中,报告“通过”状态。否则,如果在612中确定不是所有存储器单元都已经达到其目标阈值电压(失败),则该编程过程将继续到步骤616。
[0138]
在步骤616中,对尚未达到其各自的目标阈值电压分布的存储器单元的数量进行计数。也就是说,对目前为止无法达到其目标状态的存储器单元的数量进行计数。该计数可由状态机262、存储器控制器120或另一个电路来完成。在一个实施方案中,存在一个总计数,其反映了最后一个验证步骤已经失败的当前正在编程的存储器单元的总数。在另一个实施方案中,为每个数据状态保留单独计数。
[0139]
在步骤618中,确定来自步骤616的计数是否小于或等于预先确定的极限。在一个实施方案中,预确定的极限是在存储器单元的页面的读取过程期间可通过纠错码(ecc)校正的位的数量。如果失败单元的数量小于或等于预确定的极限,则该编程过程可停止并且在步骤614中报告“通过”状态。在这种情况下,足够的存储器单元被正确地编程,使得可以在读取过程期间使用ecc来校正校正尚未完全地编程的剩余几个存储器单元。在一些实施方案中,在步骤618中使用的预确定的极限低于在读取过程期间可由纠错码(ecc)校正的位数,以允许未来/附加的错误。当对页面的少于所有的存储器单元进行编程、或比较仅一个数据状态(或少于所有的状态)的计数时,预确定的极限就可以是在存储器单元的页面的读取过程期间ecc可校正的位的数量的一部分(按比例或不按比例)。在一些实施方案中,该极限不是预确定的。相反,它基于已经为页面计数的错误数量、所执行的编程擦除周期数量或其他标准来改变。
[0140]
如果失败存储器单元的数量不小于预确定的极限,则该编程过程在步骤620处继续并且对照编程极限值(pl)检查编程计数器pc。编程极限值的示例包括6、12、16、19、20和30;然而,可以使用其他值。如果编程计数器pc不小于编程极限值pl,则认为该编程过程已经失败并且在步骤624中报告“失败”状态。如果编程计数器pc小于编程极限值pl,则该过程在步骤626处继续,在此期间,编程计数器pc递增了1,并且编程电压信号vpgm被步进到下一幅值。例如,下一脉冲将具有比前一脉冲大步长δvpgm(例如,0.1伏至1.0伏的步长)的幅值。在步骤626之后,该过程循环回到步骤604,并且另一个编程脉冲被(控制管芯)施加到所选择的字线,使得执行图6的编程过程的另一次迭代(步骤604-626)。
[0141]
在一个实施方案中,在编程之前擦除存储器单元,并且擦除是将一个或多个存储器单元的阈值电压从编程数据状态改变为擦除数据状态的过程。例如,将一个或多个存储器单元的阈值电压从图5a的状态p改变为状态e,从图5b的状态a/b/c改变为状态e,从图5c的状态a-g改变为状态er或从图5d的状态s1-s15改变为状态s0。
[0142]
擦除一些存储器设备中的存储器单元的一种技术是将p阱(或其它类型的)基板偏置到高电压以对nand沟道充电。当nand沟道处于高电压时,将擦除启用电压(例如,低电压)施加到存储器单元的控制栅极,以擦除非易失性存储元件(存储器单元)。在本文中,这称为p阱擦除。
[0143]
擦除存储器单元的另一种方法是生成栅极感应漏极泄漏(gidl)电流,以对nand串
沟道进行充电。将擦除启用电压施加到存储器单元的控制栅极,同时保持nand串沟道电势,以擦除存储器单元。在本文中,这称为gidl擦除。p阱擦除和gidl擦除均可用于降低存储器单元的阈值电压(vt)。
[0144]
在一个实施方案中,通过在选择晶体管(例如,sgd和/或sgs)处引起漏极到栅极电压来产生gidl电流。生成gidl电流的晶体管漏极至栅极电压在本文中称为gidl电压。当选择晶体管漏极电压显著高于选择晶体管控制栅极电压时,可产生gidl电流。gidl电流是载流子生成的结果,即,由于频带-频带隧穿而产生的电子空穴对生成和/或陷阱辅助生成。在一个实施方案中,gidl电流可导致一种类型的载流子(例如,空穴)主要移动到nand沟道中,从而升高沟道的电势。另一种类型的载流子(例如电子)通过电场沿位线的方向或沿源极线的方向从沟道提取。在擦除期间,空穴可从沟道隧穿到存储器单元的电荷存储区,并且与其中的电子重组,以降低存储器单元的阈值电压。
[0145]
可在nand串的任一端处生成gidl电流。连接到或接近位线的选择晶体管(例如,漏极侧选择晶体管)的两个端子之间可产生第一gidl电压,以生成第一gidl电流。连接到或接近源极线的选择晶体管(例如,源极侧选择晶体管)的两个端子之间可产生第二gidl电压,以生成第二gidl电流。仅在nand串的一端处基于gidl电流的擦除称为单侧gidl擦除。在nand串的两端处基于gidl电流的擦除称为双侧gidl擦除。
[0146]
在一些实施方案中,控制管芯或存储器管芯执行ecc解码过程(参见ecc引擎)。为了帮助修复在存储数据时可能出现的错误,使用纠错。在编程过程期间,ecc引擎编码数据以添加ecc信息。例如,ecc引擎用于创建码字。在一个实施方案中,数据以页为单位编程。由于在编程或读取时可能发生错误,并且在存储数据时可能发生错误(例如,由于电子漂移、数据保留问题或其他现象),因此纠错与数据页的编程一起使用。许多纠错编码方案是本领域熟知的。这些常规的纠错码(ecc)在包括闪存(和其他非易失性)存储器的大容量存储器中尤其有用,因为此类编码方案可对制造产率和设备可靠性产生重大影响,从而使具有少量不可编程或有缺陷的单元的设备变得可用。当然,在产率节省和提供附加存储器单元以存储代码位(即,编码“速率”)的成本之间存在权衡。因此,一些ecc代码比其他ecc代码更适合闪存存储器设备。一般来讲,闪存存储器设备的ecc代码往往具有比数据通信应用中使用的代码(其可具有低至1/2的编码速率)更高的编码速率(即,更低的代码位/数据位比率)。通常与闪存存储器存储装置结合使用的熟知的ecc代码的示例包括里德-所罗门码、其他bch码、汉明码等。有时,与闪存存储器存储装置结合使用的纠错码是“系统的”,因为最终码字的数据部分与被编码的实际数据没有变化,其中代码或奇偶校验位附加到数据位以形成完整的码字。在其他实施方案中,改变实际数据。
[0147]
给定纠错码的特定参数包括代码的类型、从中导出码字的实际数据的块的大小以及编码之后码字的总长度。例如,如果使用至少60个ecc或奇偶校验位,则应用于512字节(4096位)数据的典型bch码可校正最多四个错误位。里德-所罗门码是bch码的子集,并且也通常用于纠错。例如,典型的里德-所罗门码可使用约72个ecc位在512字节数据扇区中校正最多四个错误。在闪存存储器的情况下,纠错编码提供了制造产率以及闪存存储器随时间推移的可靠性的显著改进。
[0148]
在一些实施方案中,控制器接收将被存储在存储器结构中的主机数据,也称为信息位。信息位由矩阵i=[1 0]表示(需注意,两个位仅用于示例目的,并且许多实施方案具
有长于两个位的码字)。实现纠错编码过程(诸如上文或下文提到的任何过程),其中奇偶校验位被添加到信息位以提供由矩阵或码字ν=[1 0 1 0]表示的数据,指示两个奇偶校验位已经附加到数据位。可使用以更复杂方式将输入数据映射到输出数据的其它技术。例如,可使用低密度奇偶校验(ldpc)码,也称为gallager码。关于ldpc代码的更多细节可见于r.g.gallager的“low-density parity-check codes”,ire trans.inform.theory,vol.it-8,pp.21 28,jan.1962(低密度奇偶校验码,《ire信息理论汇刊》,it-8卷,第21-28页,1962年1月);以及d.mackay的information theory,inference and learning algorithms,cambridge university press 2003,chapter 47(《信息理论、推理和学习算法》,剑桥大学出版社,2003年,第47章)。在实施过程中,此类ldpc码通常应用于跨多个存储元件编码的多个页,但它们不需要跨多个页应用。可通过将一个或多个存储器单元编程到对应于矩阵或码字ν的一个或多个编程状态来将数据位映射到逻辑页并且存储在存储器结构326中。
[0149]
在一个可能的具体实施中,使用迭代概率解码过程,其实现对应于在控制器120中实现的编码的纠错解码。关于迭代概率解码的另外的细节可见于上述d.mackay文本。迭代概率解码尝试通过将初始概率度量分配给码字中的每个位来解码码字。概率度量指示每个位的可靠性,也就是说,该位没有错误的可能性。在一种方法中,概率度量是从llr表获得的对数似然比llr。llr值是从存储元件读取的各种二进制位的值是已知的可靠性的量度。
[0150]
位的llr由下式给出:
[0151][0152]
其中p(v=0|y)是给定所状态读取为y的条件下位为0的概率,并且p(v=1|y)是给定状态读取为y的条件下位为1的概率。因此,llr》0指示位比起1更可能是0,而llr《0指示位比起0更可能是1,以满足纠错码的一个或多个奇偶校验。此外,更大的幅值指示更大的概率或可靠性。因此,llr=63的位比llr=5的位更可能是0,llr=-63的位比llr=-5的位更可能是1。llr=0指示位同样可能为0或1。
[0153]
可针对码字中的位位置中的每个位位置提供llr值。此外,llr表可说明多个读取结果,使得当位值在不同码字中一致时使用较大幅值的llr。
[0154]
控制器接收码字y1和llr并在连续迭代中迭代,其中控制器确定是否已经满足错误编码过程的奇偶校验(等式)。如果已经满足所有奇偶校验检查,则解码过程已收敛,并且码字已被校正。如果尚未满足一个或多个奇偶校验检查,则解码器将调整与奇偶校验不一致的位中的一个或多个位的llr,然后在过程中重新应用奇偶校验检查或下一个检查以确定其是否被满足。例如,可以调整llr的幅值和/或极性。如果仍未满足所讨论的奇偶校验检查,则可以再次在另一迭代中调整llr。在一些但并非所有情况下,调整llr可导致翻转位(例如,从0到1或从1到0)。在一个实施方案中,一旦满足所讨论的奇偶校验检查,如果适用的话,就将另一个奇偶校验检查应用于码字。在其他情况下,过程移动到下一个奇偶校验检查,稍后循环回到失败的检查。过程继续尝试满足所有奇偶校验检查。因此,完成y1的解码过程以获得包括奇偶校验位v和解码信息位i的解码信息。
[0155]
图7示出了结合ecc校正和读取错误处理的常规读取流程。步骤701是读取存储在存储器单元中的数据以确定“硬位”(hb),其中硬位值对应于使用图5a至图5c的值vri的标
准读取,该值vri用于区分不同状态(如果它们是如图5a至图5c中那样的良好限定的、分离的分布)。步骤703使用ecc技术确定读取数据是否可校正,并且如果是,则在步骤705处完成读取过程。当在步骤703中硬位数据变得不可由ecc校正时,在步骤707处,可调用读取错误处理流程,其中这可涉及各种读取类型以恢复读取数据。根据实施方案,可用于恢复数据内容的读取类型的一些示例是:“cfh读取”711,该“cfh读取”是硬位的重新读取,其允许nand串的未选择的字线达到偏置电压的较长时间,或其他另选的读取偏置定时,诸如允许偏置电平(诸如所选择的字线的电压)的较长稳定时间;“软位”读取713,该“软位”读取提供关于硬位值的可靠性的信息;“bes读取”715,该“bes读取”尝试偏移硬位读取电平以便提取数据;以及“dla读取”717,该“dla读取”考虑了相邻字线对读取选择的字线的影响。这些中的一者或多者可以以各种序列或组合来组合,以在基本ecc过程失败的情况下尝试和提取数据内容。对于实施方案中的任一个实施方案,一旦读取错误处理流程707被调用为步骤703,则性能通常严重劣化。以下考虑使用软位数据,同时降低其对存储器性能的影响的技术。图8更详细地考虑软位的用途。
[0156]
图8可用于示出硬位和软位的概念。图8示出了两个相邻数据状态的分布的重叠和一组读取值,该组读取值可用于确定单元的数据状态和这样的读取的可靠性,其中对应的硬位和软位针对值的一个特定编码在下面的表中示出。读取值vh是用于确定硬位(hb)值的初始数据状态值或硬读取值,并且对应于图5a、图5b或图5c的值vri,该值vri用于区分不同状态(如果它们是如图5a至图5c中那样的良好限定的、分离的分布)。余量稍微高于vh的vs+和余量稍微低于vh的vs-的附加读取电平是“软读取”值,并且可用于提供“软位”(sb)值。软位值给出关于初始数据状态值或硬位数据的质量或可靠性的信息,因为软位数据提供关于分布已扩展的程度的信息。ecc代码(诸如低密度奇偶校验码(ldpc))的一些实施方案可使用硬位和软位数据以便增加其能力。尽管图8仅示出一对软位读取值,但是如果期望更高的分辨率,则其他实施方案可使用附加余量的读取值来为给定的硬位生成更多的软位值。更一般地,硬位对应于基于感测操作的假定数据值,并且软信息(其可为单个二进制软位,多个软位或十进制/分数值)指示硬位值的可靠性或可信度。当用于使用软信息的ecc方法中时,可以将软信息视为对应的硬位值正确的概率。
[0157]
在读取操作期间,如果vh低于存储器单元阈值,则存储器单元将是非导电的,并且读取数据值(hb)将读取为“0”。如果存储器单元在图8的任一分布的中心区域内,则vs+和vs-的读取将提供相同的结果;如果这些读取不同,则存储器单元的阈值电压介于这些值之间,并且可以来自上面的分布或下面的分布的尾部区域,使得hb数据是不可靠的。如果数据被认为是可靠的,则在这两个电平下读取并且对结果进行“异或非”给出sb值为“1”,如果不可靠,则给出sb值为“0”。
[0158]
例如,当sb+和sb-读取均为“0”时,则:
[0159]
sb=(sb+)xnor(sb-)
[0160]
=“0”xnor“0”[0161]
=1,
[0162]
sb=1和hb读取值将被视为可靠的。在ecc中的软位解码期间,这将导致上部分布中的存储器单元具有hb=“0”和sb=“1”,指示可靠的正确位(rcb),而具有在sb+和sb-之间的阈值电压的存储器单元将导致sb=“0”以指示hb值不可靠。
[0163]
图9a和图9b分别示出用于使用上表2的编码在每存储器单元三位数据实施方案中计算下页数据的硬位和软位值的读取电平,并且其中软位值1、0分别指示硬位值是可靠的、不可靠的。图9a示出每单元3位中存储器单元的阈值电压分布,类似于图5c所示,但是其中分布不是良好限定的并且显示一定程度的重叠。分布的重叠可来自若干原因,诸如电荷泄漏或干扰,其中一个字线或位线上的操作影响存储在附近存储器单元上的数据状态。另外,在实际写入操作中,分布通常不会如图5c所示那样良好限定,因为具有这样的准确度的存储器单元的写入对性能不利,因为较大数量的精细编程步骤和一些单元将难以编程或过度快速地编程。因为此,编程算法通常允许一定程度的重叠,从而依赖于ecc以准确地提取用户数据内容。
[0164]
用于区分下页数据值的读取点表示为er与a状态之间以及d与e状态之间的竖直虚线,以及在下面写入的对应硬位值。由于分布的重叠,存储er或e数据的多个存储器单元将错误地读取为hb=0,并且存储a或d数据的多个存储器单元将错误地读取为hb=1。例如,可以确定最佳读取值作为设备表征的一部分并且将其存储为控制电路系统的熔丝值。在一些实施方案中,控制电路可以将这些值偏移以提高其准确度作为标准读取操作的一部分或者作为bes读取715的读取错误处理流程707的一部分。
[0165]
为了能够处理更高量的错误,可以使用更强的ecc。然而,这需要存储更多奇偶校验位,从而减少可用于用户数据的存储器单元的比例,从而有效地降低存储器容量。另外,因为涉及更多的计算来编码/解码码字,以及写入和读取附加ecc数据,所以性能受到影响。此外,ecc数据需要通过数据总线结构传送到ecc电路系统并且从ecc电路系统传送。
[0166]
图9b示出了可用于确定对应于图9a的下页硬位值的软位值的软位值和读取点。如图所示,基于一对读取确定软位值到基本硬位读取值的任一侧。例如,这些软位读取值可基于与硬位读取值的偏移,或者是对称的或者是不对称的,并且作为熔丝值存储在寄存器中,该寄存器被确定为设备表征的一部分。在其他实施方案中,可以动态地确定或更新它们。尽管在步骤713处使用软位在提取在步骤703中不可提取的数据内容方面可能相当有效,但其伴随性能损失,因为其需要响应于步骤703处的ecc失败而被调用,针对每个硬位读取使用两个附加读取,需要在附加读取之后传送出软位数据,并且需要执行附加计算。
[0167]
为了改善这种情况,以下引入了“有效软感测模式”的实施方案。在该感测模式中,硬位读取和软位读取可以组合成使用两个感测电平来感测时间效率的一个序列。通过使用有效的软感测读取作为默认模式,可以提供额外的软位信息以用于ecc校正,而不触发读取错误处理流程。由于仅使用两个感测操作来生成硬位和软位数据,因此该技术避免了由标准硬读取加软读取产生的感测时间的三倍增长。另外,通过将硬位和软位感测合并到一个序列中,可以避免读取序列操作中涉及的大部分额外开销(例如,启用电荷泵、斜升字线等)。图10示出了有效软感测模式的用途。
[0168]
图10示出了在用于有效软感测的实施方案中使用的硬位和软位值连同读取电平的分配。图10类似于图8,并且示出了再次在中心区域中具有重叠的两个数据状态的存储器单元vth分布。再次执行硬位读取,但不尝试将其放置在重叠区域的中心处或其附近的经优化以区分两种状态的点处,在该实施方案中,硬位读取偏移到较低vth侧,使得在vh处或其下方读取的任何存储器单元可靠地处于较低数据状态(此处示出为“1”,如在示例性的图8中)。其还分配了“0”的软位值,其中与图8的实施方案相比,sb=0值现在指示可靠的hb值。
如果存储器单元读取高于vh,则其硬位值对应于hb=0的较高vth数据状态。在图10的实施方案中,不同于图8的两个软位读取,仅单个软位读取被执行为偏移到高vth侧的vs值。如果发现存储器单元的vth高于vs,则其被分配hb=0的hb值并且被认为是可靠的(hs=0)。对于具有发现在vh与vs之间的vth的存储器单元,存储器单元被分配hb=0,但被认为是不可靠的(sb=1)。需注意,在图10的实施方案中,仅针对软位数据检查两个状态中的一个状态,使得仅hb=0状态可以具有任一sb值,而hb=1存储器单元将始终具有sb=0。换句话说,软位数据仅在该对重叠分布的一侧(此处为较低侧,对于hb=0)确定,而不在另一侧(此处为高侧,对于hb=1)确定。在该实施方案中,对vh读取的左侧(较高vth)执行单个vs读取,但是在其他实施方案中,该布置可以颠倒。
[0169]
尽管图10的实施方案中生成的数据总量小于图8的数据总量,但是图10的有效软感测模式将通常足以提取用户数据内容而不再排除进一步读取错误处理。由于在图10的确定中仅涉及两个读取,所以感测时间较短,并且可通过将两个读取作为单个感测操作进行来甚至进一步减少,如相对于图12所述。由有效软感测提供的增加的错误容差也可改善写入性能,因为数据不需要被准确地编程,允许放宽的编程公差。
[0170]
图11示出了在每存储器单元三位数据实施方案中使用表2的编码将有效软感测模式应用于下页数据。图11类似于图9a和图9b,但是将hb和sb值结合到单个图中,并且使用用于有效软感测的给定hb读取电平的单个sb读取电平,而不是给定hb的一对sb读取。例如,观察er状态与a状态的区别,对于左手读取,左边的存储器单元对于下页值可靠地为“1”,其中(hb,sb)=(1,0),其中需再次注意,在该编码中,sb=0指示可靠的hb值,并且sb=1指示不可靠的hb值。对于er、a的右手读取,右边的存储器单元指示具有可靠的下页值“0”或(hb,sb)=(0,0)的存储器单元。在左读取电平与右读取电平之间具有vth的存储器单元被分配为0的下页硬位值,但被认为是不可靠的,使得(hb,sb)=(0,1)。类似地,对于区分d和e状态的读取,左读取的左边的存储器单元可靠地为“0”((hb,sb)=(0,0)),高于右读取的存储器单元是可靠的下页“1”数据((hb,sb)=(1,0)),并且两者之间的存储器单元被分配为“1”((hb,sb)=(1,1))的不可靠下页值。
[0171]
图12示出了对应于图11中示出的读取点的在有效软感测读取操作中用于下页数据读取操作的感测操作的实施方案。在顶部处,图12示出了可施加到所选择的存储器单元的字线的控制栅极读取电压vcgrv波形与每单元存储器单元3位的下页数据的有效软感测的时间的关系,其中竖直虚线对应于图11中也由虚线标记的四个读取点(但如下文将解释的,确定的顺序不同)。在波形下方示出了使用顶部处的波形的这些读取如何对应于d和e状态分布的vth值。
[0172]
为了改善读取时间性能,图12的实施方案使用“颠倒顺序”读取模式,但是其他实施方案可使用标准顺序。在标准读取顺序中,施加到所选择的存储器单元的读取电压以下限值开始并且逐渐上升。在颠倒顺序读取模式下,施加到所选择的字线的控制栅极读取电压(vcgrv)最初斜升到高值,并且然后从较高vth状态到较低vth状态执行读取。在下页读取的该示例中,在区分a状态与擦除er状态的读取之前执行区分d和e状态的读取。因此,在初始斜升之后,vcgrv电压下降到e状态读取电平(er)的读取电平,然后下降到a状态读取电平(ar)。该顺序可减少读取序列操作中所涉及的大量额外开销(例如,启用电荷泵,斜升字线等)所需的时间。
[0173]
对于每个读取电压电平,执行两个感测操作以生成硬位和软值,从而允许比使用单独读取电压更快的感测时间。参考图12的底部处的d和e状态分布,hb分界的虚线和sb分界的虚线均是相对接近的vth值,但是其中sb分界以较高vth值偏移到右侧。因此,在其中感测是基于使电压通过所选择的存储器单元放电的实施方案中,如果选择读取电压er,则使得hb和sb vth值在某种程度上传导,但是以不同的量传导。hb分界对应于较低的vth值,因为此时存储器单元对sb分界处的存储器单元将更导电,因此将更快地放电,并且可以使用更短的感测间隔来确定。用相同的控制栅极电压来感测较慢放电的sb分界点,但感测时间较长。
[0174]
图13示出了可用于确定存储器单元的硬位和软位值的感测放大器电路的实施方案。图13的感测放大器电路可对应于图2a或2b的感测放大器230,并且如包括在图3的结构中。在图13的实施方案中,通过将感测线或节点sen 1305预充电到预先确定的电平,将感测节点连接到偏置选择的存储器单元的位线,并且确定节点sen 1305在感测间隔内放电的程度,来确定存储器单元的状态。根据实施方案,许多变化是可能的,但是图13的实施方案示出了一些典型的元件。节点sen 1305可以通过开关spc 1323被预充电到电平vhlb,其中许多mosfet开关的符号在此处使用与晶体管相同的名称和对应的控制信号,其中各种控制信号可由处理器330、状态机262和/或图2a、图2b和图3的实施方案的其他控制元件提供。节点sen 1305可通过到节点scom 1307的开关xxl 1319沿着位线bl 1309连接到所选择的存储器单元,并且然后在可能中间元件之后连接到对应于存储器设备的解码和选择电路的位线选择开关bls 1327。sen节点1305通过开关blq 1313连接到本地数据总线lbus 1301,该开关继而可通过开关dsw 1311连接到数据dbus 1303。可以将开关lpc 1321预充电到电平vlpc,其中vhlb和vlpc的值取决于实施方案的细节和具体实施的细节。
[0175]
在感测操作中,通过将其对应的所选择的字线设置为如上所述的读取电压电平来偏置所选择的存储器单元。在nand阵列具体实施中,所选择的字线的nand串的所选择的栅极和未选择的字线也被偏置为接通。一旦阵列被偏置,所选择的存储器单元就将基于所施加的读取电压与存储器单元的阈值电压的关系来传导电平。电容器1325可用于存储sen节点1305上的电荷,其中在预充电期间,电平clk(和电容器1325的下板)可被设置为低电压(例如,接地或vss),使得sen节点1305上的电压参考该低电压。所选择的存储器的预充电sen节点1305通过到所选择的位线的xxl 1319和bls 1327连接到对应位线1309,并且被允许相对于施加到所选择的存储器单元的控制栅极的电压电平在感测间隔内放电到取决于存储器单元的阈值电压的电平。在感测间隔结束时,可以关断xxl 1319以将所得电荷俘获在sen 1305上。此时,clk电平可稍微升高,类似地升高sen 1305上的电压,以解决放电路径中跨中间元件(诸如xxl 1319)的电压降。因此,sen 1305上控制晶体管1317接通的程度的电压电平将相对于所施加的读取电压反映到所选择的存储器单元的数据状态。本地数据lbus1301也被预充电,使得当选通晶体管stb 1315被接通持续选通间隔时,lbus将放电到clk节点,如sen 1305上的电压电平所确定的。在选通间隔结束时,关断stb 1315以设置lbus上的感测值,并且结果可被锁存到锁存器中的一个锁存器中,如图3所示。
[0176]
现在返回参见图12,在根据需要将所选择的存储器单元偏置到er电压电平以及其他阵列偏置(选择栅极,未选择字线等)之后,针对虚线之间的间隔er对预充电sen节点1305进行放电:如果当stb1315被选通时sen上的电平高到足以使lbus 1301放电,则存储单元的
vth低于hb;如果不是,则其高于hb。在对附加间隔er+进行放电之后,stb 1315是被再次选通:如果lbus 1301现在放电,则存储器单元的vth在hb和sb之间;如果不是,则其高于sb。然后用ar电平下的vcgrv值重复该过程,以确定用于区分a状态和擦除状态的hb和sb值。
[0177]
因此,在相对于图12所示的实施方案之下,对于每个vcgrv电平,左感测结果用于生成hb数据,并且右感测结果与左感测结果组合以生成sb数据。为了优化两个感测(左/右)的性能,图12的实施方案使用“感测时间调制”以用于vth分离而没有字线电压电平变化。
[0178]
相对于有效软感测读取电平控制和参数,类似于读取参数的通常具体实施,这些可以作为设备表征过程的一部分来确定,并作为寄存器值(诸如设置为存储装置266中的熔丝值的控制数据参数)来存储,动态地确定,或这些的某种组合。在一组实施方案中,用于有效软感测的硬位和软位读取电平可参考标准硬读取值。即使使用有效软感测读取过程作为默认读取操作,存储器设备通常将具有标准读取(即,仅硬位)作为读取模式选项,使得图5a至图5c的标准读取值将可用作读取选项。例如,返回参见图11以及与在d和e状态分布之间进行区分有关的读取电平,可以相对于在d状态和e状态分布的尖点处表示为较重虚线的正常hb读取微调值来参考有效软感测电平。左读取的有效软感测读取电平(有效软感测硬位,减电平)和右读取(有效软感测软位,加电平)可以相对于正常hb读取电平来指定。这允许重新使用组特征寄存器以生成有效的软感测左/右偏移,并且在一组实施方案中,可以对所有平面使用公共设置,其中对状态中的每个状态有单独的设置。
[0179]
图14是有效软感测操作的实施方案的高级流程图。在如上文关于图1至图4j所述的存储器系统和相对于图12所述的实施方案的上下文中描述该过程。流程开始于步骤1401以对多个存储器单元执行第一感测操作,以确定在存储器单元的数据状态中的两个数据状态之间进行区分的硬位值。在有效的软感测实施方案中,步骤1401的硬位读取和步骤1403的软位读取均可响应于单个读取命令。例如,返回参见图1,主机102和/或非易失性存储器控制器120可以向存储器130中的一者或多者发出有效的软感测命令。然后,系统控制逻辑260(图2a和图2b)执行感测操作,诸如在上述示例中读取下页数据,以确定存储器单元的硬位值和软位值两者,如图11所示。
[0180]
为了执行步骤1401的硬位确定,在上述实施方案中,存储器阵列被偏置用于读取操作,并且一个或多个对应感测放大器的感测节点被预充电。更具体地,对于用作本文中的示例的实施方案,所选择的存储器单元的控制栅极以读取电压偏置通过其对应的字线以用于在数据状态之间进行区分,并且基于存储器架构根据需要将其他阵列元件(例如,nand串的所选择的栅极和未选择的字线)偏置。当使用诸如图13的感测放大器之类的感测放大器时,在对感测节点sen 1305进行放电时确定数据状态的情况下,感测节点sen 1305被预充电并且连接到所选择的存储器单元的位线以在第一感测间隔(图12的er(hb)分界区域)内放电以确定硬位值。
[0181]
如相对于图11的实施方案所示,硬位确定被偏移到较低vth值,因此感测为低于该值的存储器单元可靠地处于该值中,而感测为高于该值的存储器单元包括可靠硬位值和不可靠硬位值两者。在使用更传统的顺序感测的实施方案中,首先执行用于硬位的硬位感测,然后执行用于在er和a状态之间进行区分的软位,随后执行用于在d和e状态之间进行区分的硬位和软位,其中这些中的每一者都涉及用于每个感测操作的不同偏置和感测节点预充电。在相对于图12示出的颠倒顺序感测操作中,首先针对d状态和e状态区别确定硬位和软
位值,然后是针对er和a状态的硬位和软位值确定。尽管图14的流程呈现硬位确定(步骤1401)在软位确定(步骤1403)之前,但在一些实施方案中,顺序可以颠倒。另外,图14的流程仅具有单个硬位和单个软位确定,在许多情况下(如在图12中),将确定多个硬位/软位对。
[0182]
在步骤1403处,执行第二感测操作以确定软位。在有效软感测过程中,这是仅针对具有硬位值中的第一硬位值但不具有第二硬位值的存储器单元确定的可靠性信息。例如,在图11的实施方案中,当硬位分界向下偏移时,软位值仅用于硬位值的中的较高者。在相对于图12描述的实施方案中,第二感测操作基于预充电感测节点sen 1305的较长放电时间。如果读取涉及在一对状态之间进行区分(诸如在二进制存储器单元实施方案中),则确定仅一个硬位、软位对。在多电平存储器单元的情况下,如上文在图11和图12中的示例中确定附加硬位、软位对,其中下页感测操作还类似于用于er/a状态确定的步骤1401和1403确定硬位、软位对。一旦确定了硬位、软位数据值,它们就可以用于在步骤1405处执行ecc操作。这可以在ecc引擎158中的非易失性存储器控制器120上、在控制管芯211或这些的一些组合上完成。
[0183]
根据第一组方面,非易失性存储器设备包括控制电路,该控制电路被配置为连接到一个或多个非易失性存储器单元。所述控制电路被配置为:在读取电平处执行第一硬位读取操作,所述读取电平被配置为确定所述非易失性存储器单元的一个或多个所选择的非易失性存储器单元中的每一者的第一硬位值,所述第一硬位值指示所述存储器单元是可靠地处于第一数据状态还是不可靠地处于第二数据状态;执行第一软软位读取操作,所述第一软位读取操作被配置为生成第一软位值,所述第一软位值针对确定为处于所述第二数据状态的存储器单元中的每一者,但不针对确定为处于所述第一数据状态的存储器单元指示可靠性值;以及将所述第一硬位值和所述第一软位值提供给纠错码引擎,所述纠错码引擎被配置为从所述第一硬位值和所述第一软位值确定所选择的存储器单元的数据内容。
[0184]
在另外的方面,一种方法包括对多个非易失性存储器单元执行第一感测操作,以在非易失性存储器单元的第一数据状态与非易失性存储器单元的第二数据状态之间进行区分。通过第一感测操作对存储器单元执行第二感测操作,以针对确定为处于第二数据状态的存储器单元,但不针对确定为处于第一数据状态的存储器单元确定第一感测操作的可靠性。使用第一感测操作的结果和第一感测操作的可靠性针对确定为处于第二数据状态的存储器单元,但不针对确定为处于第一数据状态的存储器单元执行纠错码操作,以确定存储在多个非易失性存储器单元中的数据内容。
[0185]
其它方面包括一种非易失性存储器设备,包括:多个非易失性存储器单元,所述多个非易失性存储器单元各自被配置为保持多个数据位;感测放大器电路,所述感测放大器电路包括被配置为连接到第一所选存储器单元的感测节点;以及一个或多个控制电路,所述一个或多个控制电路连接到所述多个非易失性存储器单元和所述感测放大器。所述一个或多个控制电路被配置为接收读取命令并且响应于所述读取命令:将所选择的存储器单元偏置在读取电压电平处;对所述感测节点进行预充电;在第一感测间隔内,通过所偏置选择的存储器单元对所述预充电感测节点放电;基于所述感测节点在所述第一感测间隔期间放电的量来确定所选择的存储器单元的硬位值;在所述第一感测间隔内对所述感测节点放电后,继续在附加感测间隔内通过所偏置选择的存储器单元来对所述预充电感测节点放电;以及基于所述感测节点在组合的第一感测间隔和附加感测间隔期间放电的量来确定所述
第一所选存储器单元的第一软位值。
[0186]
出于本文件的目的,说明书中提到“实施方案”、“一个实施方案”、“一些实施方案”或“另一个实施方案”可用于描述不同的实施方案或相同的实施方案。
[0187]
出于本文件的目的,连接可为直接连接或间接连接(例如,经由一个或多个其它部件)。在一些情况下,当提到元件连接或耦接到另一个元件时,该元件可直接连接到另一个元件,或者经由中间元件间接连接到另一个元件。当元件被提及直接连接至另一个元件时,则在该元件与另一个元件之间没有居间元件。如果两个设备是直接连接或间接连接的,则两个设备是“通信”的,使得它们能够在它们之间进行电子信号通信。
[0188]
出于本文档的目的,术语“基于”可理解为“至少部分地基于”。
[0189]
出于本文档的目的,在没有附加上下文的情况下,诸如“第一”对象、“第二”对象和“第三”对象的数字术语的使用可能不意味着对象的排序,而是可用于识别目的以识别不同的对象。
[0190]
出于本文档的目的,对象的术语“组”可指一个或多个对象的“组”。
[0191]
出于说明和描述的目的,已提供了上述详细描述。其并非旨在详尽的或旨在限制本发明所公开的精确形式。根据以上教导内容,很多修改和变型都是可能的。选择所述实施方案以便最好地解释所建议的技术的原理及其实际应用,从而使本领域的其他技术人员能够在各种实施方案中和适合于设想的具体使用的各种修改中最好地利用它。本发明的范围旨在由所附权利要求书限定。
技术特征:
1.一种非易失性存储器设备,包括:控制电路,所述控制电路被配置为连接到一个或多个非易失性存储器单元,所述控制电路被配置为:在读取电平处执行第一硬位读取操作,所述读取电平被配置为确定所述非易失性存储器单元的一个或多个所选择的非易失性存储器单元中的每一者的第一硬位值,所述第一硬位值指示所述存储器单元是可靠地处于第一数据状态还是不可靠地处于第二数据状态;执行第一软软位读取操作,所述第一软位读取操作被配置为生成第一软位值,所述第一软位值针对确定为处于所述第二数据状态的所述存储器单元中的每一者,但不针对确定为处于所述第一数据状态的存储器单元指示可靠性值;以及将所述第一硬位值和所述第一软位值提供给纠错码引擎,所述纠错码引擎被配置为从所述第一硬位值和所述第一软位值确定所选择的存储器单元的数据内容。2.根据权利要求1所述的非易失性存储器设备,其中所述控制电路形成在控制管芯上,所述非易失性存储器设备还包括:存储器管芯,所述存储器管芯包括所述非易失性存储器单元,所述存储器管芯与所述控制管芯分开形成并且接合到所述控制管芯。3.根据权利要求1所述的非易失性存储器设备,其中第一数据状态和第二数据状态对应于不同的阈值电压范围,所述第一数据状态对应于较低阈值电压。4.根据权利要求1所述的非易失性存储器设备,所述控制电路包括:感测放大器电路,所述感测放大器电路包括被配置为连接到第一所选存储器单元的感测节点,其中,为了对所述第一所选存储器单元执行所述第一硬位读取操作并且执行所述第一软位读取操作,所述控制电路被配置为:将所述第一所选存储器单元偏置在第一电压电平处;将所述感测节点预充电到第一电平;在第一感测间隔内,通过被偏置在所述第一电压电平处的所述第一所选存储器单元来对预充电到所述第一电平的所述感测节点放电;基于所述感测节点在所述第一感测间隔期间放电的量来确定所述第一所选存储器单元的所述第一硬位值;在所述第一感测间隔内对所述感测节点放电后,继续在第一附加感测间隔内,通过被偏置在所述第一电压电平处的所述第一所选存储器单元来对预充电到所述第一电平的所述感测节点放电;以及基于所述感测节点在组合的第一感测间隔和第一附加感测间隔期间放电的量来确定所述第一所选存储器单元的所述第一软位值。5.根据权利要求4所述的非易失性存储器设备,其中所述非易失性存储器单元是多电平存储器单元,所述控制电路被进一步配置为:在读取电平处执行第二硬位读取操作,所述第二读取电平被配置为确定所述非易失性存储器单元的一个或多个所选择的非易失性存储器单元中的每一者的第二硬位值,所述第二硬位值指示所述存储器单元是可靠地处于第三数据状态还是不可靠地处于第四数据状态;执行第二软软位读取操作,所述第二软位读取操作被配置为生成第二软位值,所述第
二软位值针对确定为处于所述第四数据状态的所述存储器单元中的每一者,但不针对确定为处于所述第三数据状态的存储器单元指示可靠性值;以及将所述第二硬位值和所述第二软位值提供给所述纠错码引擎,所述纠错代码引擎被进一步配置为从所述第二硬位值和所述第二软位值确定所选择的存储器单元的所述数据内容。6.根据权利要求5所述的非易失性存储器设备,所述控制电路包括其中,为了对所述第一所选存储器单元执行所述第二硬位读取操作并且执行所述第二软位读取操作,所述控制电路被配置为:将所述第一所选存储器单元偏置在第二电压电平处;将所述感测节点预充电到第二电平;在第三感测间隔内,通过被偏置在所述第二电压电平处的所述第一所选存储器单元来对预充电到所述第二电平的所述感测节点放电;基于所述感测节点在所述第二感测间隔期间放电的量来确定所述第一所选存储器单元的所述第二硬位值;在所述第二感测间隔内对所述感测节点放电后,继续在第二附加感测间隔内,通过被偏置在所述第二电压电平处的所述第一所选存储器单元来对预充电到所述第二电平的所述感测节点放电;以及基于所述感测节点在组合的第二感测间隔和第二附加感测间隔期间放电的量来确定所述第一所选存储器单元的所述第二软位值。7.根据权利要求6所述的非易失性存储器设备,其中所述第二电压电平低于所述第一电压电平,并且所述控制电路被配置为在计算第二硬位值和所述第二软位值之前确定所述第一硬位值和所述第一软位值。8.根据权利要求1所述的非易失性存储器设备,其中所述非易失性存储器单元是多电平存储器单元,所述控制电路被进一步配置为:在读取电平处执行第二硬位读取操作,所述第二读取电平被配置为确定所述非易失性存储器单元的一个或多个所选择的非易失性存储器单元中的每一者的第二硬位值,所述第二硬位值指示所述存储器单元是可靠地处于第三数据状态还是不可靠地处于第四数据状态;执行第二软软位读取操作,所述第二软位读取操作被配置为生成第二软位值,所述第二软位值针对确定为处于所述第四数据状态的所述存储器单元中的每一者,但不针对确定为处于所述第三数据状态的存储器单元指示可靠性值;以及将所述第二硬位值和所述第二软位值提供给所述纠错码引擎,所述纠错代码引擎被进一步配置为从所述第二硬位值和所述第二软位值确定所选择的存储器单元的所述数据内容。9.根据权利要求6所述的非易失性存储器设备,其中所述多电平存储器单元将数据值存储为多个数据页,并且其中所述第一硬位值和所述第二硬位值对应于所述数据页中的第一数据页的值。10.根据权利要求1所述的非易失性存储器设备,其中所述纠错码引擎的至少一部分形成在所述控制电路上,所述非易失性存储器设备被进一步配置为:
在所述纠错码引擎处接收所述第一硬位值和所述第一软位值;以及从所述第一硬位值和所述第一软位值确定所选择的存储器单元的所述数据内容。11.根据权利要求1所述的非易失性存储器设备,还包括:非易失性存储器控制器,所述非易失性存储器控制器包括所述纠错码引擎;以及总线结构,其中所述控制电路被配置为通过所述总线结构将所述第一硬位值和所述第一软位值提供给所述纠错码引擎。12.根据权利要求1所述的非易失性存储器设备,还包括:nand存储器阵列,所述nand存储器阵列包括根据三维架构形成的所述一个或多个非易失性存储器单元。13.根据权利要求1所述的非易失性存储器设备,其中所述控制电路被进一步配置为:存储用于执行所述第一硬位读取操作和用于执行所述第一软位读取操作的参数值,作为相对于被配置用于仅基于硬位读取值来在所述第一数据状态与所述第二数据状态之间进行区分的读取操作的参数值的偏移。14.根据权利要求13所述的非易失性存储器设备,其中执行所述第一硬位读取和所述第一软位读取作为第一读取模式,其中所述控制电路被进一步配置为:使用所述参数值执行作为第二读取模式的读取,所述参数值被配置用于仅基于硬位读取值来在所述第一数据状态与所述第二数据状态之间进行区分。15.一种方法,包括:对多个非易失性存储器单元执行第一感测操作,以在所述非易失性存储器单元的第一数据状态与所述非易失性存储器单元的第二数据状态之间进行区分;通过所述第一感测操作对所述存储器单元执行第二感测操作,以针对确定为处于所述第二数据状态的存储器单元,但不针对确定为处于所述第一数据状态的存储器单元确定所述第一感测操作的可靠性;以及使用所述第一感测操作的结果和所述第一感测操作的所述可靠性针对确定为处于所述第二数据状态的存储器单元,但不针对确定为处于所述第一数据状态的存储器单元执行纠错码操作,以确定存储在所述多个非易失性存储器单元中的数据内容。16.根据权利要求15所述的方法,还包括:在执行所述第一感测操作之前,将所述非易失性存储器单元偏置在第一电压电平处,并且针对所述非易失性存储器单元中的每个非易失性存储器单元将对应的感测节点预充电到第一电平,其中针对所述非易失性存储器单元中的每个非易失性存储器单元执行所述第一感测操作包括:在第一感测间隔内,通过被偏置在所述第一电压电平处的所述存储器单元来对预充电到所述第一电平的所述对应的感测节点放电;以及基于所述感测节点在所述第一感测间隔期间放电的量来在所述第一数据状态与所述第二数据状态之间进行区分,并且其中针对确定为处于所述第二数据状态的所述非易失性存储器单元中的每个非易失性存储器单元执行所述第二感测操作包括:继续在第一附加感测间隔内,通过被偏置在所述第一电压电平处的所述存储器单元来对预充电到所述第一电平的所述对应的感测节点放电;以及
基于所述感测节点在组合的第一感测间隔和第一附加感测间隔期间放电的量来确定所述第一感测的所述可靠性。17.根据权利要求16所述的方法,还包括:对所述多个非易失性存储器单元执行第三感测操作,以在所述非易失性存储器单元的第三数据状态与所述非易失性存储器单元的第四数据状态之间进行区分;以及在执行所述第三感测操作之后,对所述存储器单元执行第四感测操作,以针对确定为处于所述第四数据状态的存储器单元,但不针对确定为处于所述第三数据状态的存储器单元确定所述第三感测操作的可靠性,其中还使用所述第三感测操作的结果和所述第三感测操作的所述可靠性针对确定为处于所述第四数据状态的存储器单元,但不针对确定为处于所述第三数据状态的存储器单元执行纠错码操作,以确定存储在所述多个非易失性存储器单元中的数据内容。18.根据权利要求16所述的方法,还包括:在执行所述第三感测操作之前,将所述非易失性存储器单元偏置在第二电压电平处,并且针对所述非易失性存储器单元中的每个非易失性存储器单元将对应的感测节点预充电到第二电平,其中针对所述非易失性存储器单元中的每个非易失性存储器单元执行所述第三感测操作包括:在第二感测间隔内,通过被偏置在所述第二电压电平处的所述存储器单元来对预充电到所述第二电平的所述对应的感测节点放电;以及基于所述感测节点在所述第二感测间隔期间放电的量来在所述第三数据状态与所述第四数据状态进行区分,并且其中针对确定为处于所述第四数据状态的所述非易失性存储器单元中的每个非易失性存储器单元执行所述第四感测操作包括:在第二附加感测间隔内,通过被偏置在所述第二电压电平处的所述存储器单元来对预充电到所述第二电平的所述对应的感测节点放电;以及基于所述感测节点在组合的第二感测间隔和第二附加感测间隔期间放电的量来确定所述第三感测的所述可靠性。19.根据权利要求18所述的方法,其中所述第二电压电平低于所述第一电压电平,并且所述控制电路被配置为在区分所述第三数据状态与所述第四数据状态之前区分所述第一数据状态与所述第二数据状态。20.一种非易失性存储器设备,包括:多个非易失性存储器单元,所述多个非易失性存储器单元各自被配置为保持多个数据位;感测放大器,所述感测放大器包括被配置为连接到第一所选存储器单元的感测节点;以及一个或多个控制电路,所述一个或多个控制电路连接到所述多个非易失性存储器单元和所述感测放大器,所述一个或多个控制电路被配置为:接收读取命令;响应于所述读取命令:将所选择的存储器单元偏置在读取电压电平处;
对所述感测节点进行预充电;在第一感测间隔内,通过所偏置选择的存储器单元对所述预充电感测节点放电;基于所述感测节点在所述第一感测间隔期间放电的量来确定所选择的存储器单元的硬位值;在所述第一感测间隔内对所述感测节点放电后,继续在附加感测间隔内通过所偏置选择的存储器单元来对所述预充电感测节点放电;以及基于所述感测节点在组合的第一感测间隔和附加感测间隔期间放电的量来确定所述第一所选存储器单元的软位值。
技术总结
一种非易失性存储器通过使用每个状态电平两个感测来将硬位读取和软位读取组合成单个有效的软读取序列,从而提高读取时间效率。不是标准硬位读取,在标准硬位读取中执行两个软位读取,偏移高于和低于硬位读取值,硬位读取被移位使得其可靠地感测一个状态但较不可靠地感测另一状态,并且仅针对较不可靠地感测的状态确定软位数据。这减少了软位数据的量。有效的软感测序列可以用作默认读取模式,从而提供用于ECC校正的软位信息,而不触发读取错误处理流程。将软位和硬位感测合并为一个序列可以避免用于读取序列操作的额外开销。可以避免用于读取序列操作的额外开销。可以避免用于读取序列操作的额外开销。
技术研发人员:
华-玲
受保护的技术使用者:
桑迪士克科技有限责任公司
技术研发日:
2022.05.24
技术公布日:
2023/3/21