掌桥专利:专业的专利平台
掌桥专利
首页

存储器子系统中的选择栅极维护

文献发布时间:2023-06-19 11:45:49


存储器子系统中的选择栅极维护

技术领域

本公开的实施例大体上涉及存储器子系统,且更确切地说涉及存储器子系统中的选择栅极维护。

背景技术

存储器子系统可包含存储数据的一或多个存储器装置。存储器装置可为例如非易失性存储器装置和易失性存储器装置。一般来说,主机系统可利用存储器子系统以在存储器装置处存储数据和从存储器装置检索数据。

发明内容

本申请的一个方面针对一种系统,所述系统包括:存储器装置;以及处理装置,其操作性地与所述存储器装置耦合以执行包括以下的操作:接收擦除所述存储器装置的数据块的请求;确定所述数据块上执行的编程/擦除循环的数目;执行擦除所述数据块的擦除操作;确定所述数据块上执行的编程/擦除循环的所述数目满足扫描阈值条件;在所述数据块上执行第一阈值电压完整性扫描以确定与所述数据块的至少一个选择栅极装置的当前阈值电压相关联的第一错误率;以及响应于与所述至少一个选择栅极装置的所述当前阈值电压相关联的所述第一错误率满足错误阈值准则,在所述至少一个选择栅极装置上执行润色操作以将所述当前阈值电压调整到所述目标阈值电压。

本申请的另一方面针对一种方法,所述方法包括:检测触发事件的发生;确定数据块上执行的编程/擦除循环的数目;确定所述数据块上执行的编程/擦除循环的所述数目是否满足阈值条件;以及响应于所述数据块上执行的编程/擦除循环的所述数目满足所述阈值条件,在至少一个选择栅极装置上执行润色操作以将所述至少一个选择栅极装置的当前阈值电压调整到目标阈值电压。

本申请的又一方面针对一种包括指令的非暂时性计算机可读存储介质,所述指令当由处理装置执行时致使所述处理装置执行包括以下的操作:接收擦除所述存储器装置的数据块的请求;确定所述数据块上执行的编程/擦除循环的数目;执行擦除所述数据块的擦除操作;确定所述数据块上执行的编程/擦除循环的所述数目满足扫描阈值条件;在所述数据块上执行第一阈值电压完整性扫描以确定与所述数据块的至少一个选择栅极装置的当前阈值电压相关联的第一错误率;以及响应于与至少一个选择栅极装置的所述当前阈值电压相关联的所述第一错误率满足错误阈值准则,在所述至少一个选择栅极装置上执行润色操作以将所述当前阈值电压调整到所述目标阈值电压。

附图说明

根据下文给出的详细描述和本公开的各种实施例的附图,将更充分地理解本公开。

图1示出根据本公开的一些实施例的包含存储器子系统的实例计算系统。

图2是示出根据本公开的一些实施例的存储器子系统中的存储器装置的数据块中的选择栅极装置的框图。

图3是根据本公开的一些实施例的响应于块擦除操作执行存储器装置的数据块中的选择栅极维护的实例方法的流程图。

图4是根据本公开的一些实施例的响应于块失效操作执行存储器装置的数据块中的选择栅极维护的实例方法的流程图。

图5是其中可操作本公开的实施例的实例计算机系统的框图。

具体实施方式

本公开的方面是针对存储器子系统中的选择栅极维护。存储器子系统可为存储装置、存储器模块,或存储装置和存储器模块的混合。下文结合图1描述存储装置和存储器模块的实例。一般来说,主机系统可利用包含一或多个组件(例如,存储数据的存储器装置)的存储器子系统。主机系统可以提供数据以存储在存储器子系统处并且可以请求从存储器子系统检索数据。

存储器装置可为非易失性存储器装置。非易失性存储器装置是一或多个裸片的封装。每个裸片可由一或多个平面组成。平面可分组为逻辑单元(LUN)。对于一些类型的非易失性存储器装置(例如,NAND装置),每个平面由物理块集合组成。每一块由页集合组成。每个页由存储器单元(“单元”)集合组成。单元是存储信息的电子电路。下文中,数据块是指用以存储数据的存储器装置的单元,且可以包含一组存储器单元、字线群组、字线或个别存储器单元。存储器页(在本文中也被称为“页”)存储对应于从主机系统接收的数据的二进制数据的一或多个位。数据块的存储器单元可以沿着若干单独的字线布置。每一数据块可包含若干子块,其中每一子块由从共享位线延伸的相关联支柱(例如,竖直导电迹线)限定。因为子块可单独地存取(例如,以执行编程或读取操作),所以数据块可包含用以选择性地启用与特定子块相关联的支柱同时停用与其它子块相关联的支柱的结构。在一个实施例中,此结构包含定位于每一支柱的任一端或两端处的一或多个选择栅极装置。取决于所施加的控制信号,这些选择栅极装置可启用或停用信号穿过支柱的传导。在一个实施例中,与数据块中的每一支柱相关联的选择栅极装置被单独地控制。

常规存储器装置可使用具有相对长沟道的浮动栅极晶体管来实施这些选择栅极装置,所述相对长沟道当处于适当状态时提供良好的信号隔离。然而,其它存储器装置可使用具有相对短沟道的替换栅极晶体管来实施这些选择栅极装置。替换栅极晶体管是可编程装置,且因此提供更通用的益处,但对某一量的信号泄漏敏感。此外,替换栅极晶体管的可编程阈值电压可随时间移位。虽然初始设定于特定目标值,但包含装置上执行的编程/擦除循环的数目、温度改变等在内的许多因素可能致使选择栅极装置的阈值电压随时间增加或减小。此相对于目标值的移位可能导致电荷损失,从而致使选择栅极装置不恰当地工作,且可能导致存储在相应子块的字线上的数据中发生可靠性问题。

本公开的方面通过周期性地执行选择栅极装置上的维护操作以将那些选择栅极装置的当前阈值电压(其可能已随时间移位)调整回到目标阈值电压来解决上述和其它缺陷。在一个实施例中,响应于擦除给定数据块的请求或使数据块失效的请求,存储器子系统控制器确定在数据块上执行的编程/擦除循环的数目,且确定编程/擦除循环的数目是否满足扫描阈值条件。响应于编程/擦除循环的数目满足扫描阈值条件,存储器子系统控制器可在数据块上执行阈值电压完整性扫描以确定与数据块的至少一个选择栅极装置的当前阈值电压相关联的错误率。如果与至少一个选择栅极装置的当前阈值电压相关联的第一错误率满足错误阈值准则,则存储器子系统控制器可在至少一个选择栅极装置上执行润色编程操作以将当前阈值电压调整回到目标阈值电压。在另一实施例中,如果数据块上执行的编程/擦除循环的数目满足分离阈值条件(例如,较高数目的编程/擦除循环),则存储器子系统控制器可盲目地执行润色操作,而不首先执行阈值电压完整性扫描。

在选择栅极装置上周期性地执行润色操作确保数据块中的选择栅极装置的阈值电压不会从选择栅极装置被设计成操作所处的目标阈值电压移位太远。这使得响应于接收到相应控制信号而正确地启用和停用选择栅极装置。这改进了由每一相应选择栅极装置控制的子块中存储的数据的完整性,因为数据操作(例如,编程或读取操作)可聚焦于既定子块上,而不会对数据块的其它子块造成不合需要的影响。此外,可在从目标电压移位太远以致选择栅极变得不可修复且防止需要完全引退数据块之前校正选择栅极装置的阈值电压。因此,本文中所描述的润色操作可维持存储器装置的预期容量且改进存储器装置的使用寿命。

图1示出根据本公开的一些实施例的包含存储器子系统110的实例计算系统100。存储器子系统110可包含介质,例如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130)或此类介质的组合。

存储器子系统110可为存储装置、存储器模块,或存储装置和存储器模块的混合。存储装置的实例包含固态驱动器(SSD)、快闪驱动器、通用串行总线(USB)快闪驱动器、嵌入式多媒体控制器(eMMC)驱动器、通用快闪存储(UFS)驱动器、安全数字(SD)卡,和硬盘驱动器(HDD)。存储器模块的实例包含双列直插式存储器模块(DIMM)、小外形DIMM(SO-DIMM),和各种类型的非易失性双列直插式存储器模块(NVDIMM)。

计算系统100可为计算装置,例如台式计算机、膝上型计算机、网络服务器、移动装置、交通工具(例如,飞机、无人机、火车、汽车或其它运输工具)、具有物联网(IoT)功能的装置、嵌入式计算机(例如,交通工具、工业设备或联网商业装置中包含的嵌入式计算机),或包含存储器和处理装置的此类计算装置。

计算系统100可包含耦合到一或多个存储器子系统110的主机系统120。在一些实施例中,主机系统120耦合到不同类型的存储器子系统110。图1示出耦合到一个存储器子系统110的主机系统120的一个实例。如本文中所使用,“耦合到......”或“与......耦合”通常是指组件之间的连接,其可以是间接通信连接或直接通信连接(例如,不具有中间组件),无论有线或无线,包含例如电连接、光学连接、磁连接等连接。

主机系统120可包含处理器芯片组以及由处理器芯片组执行的软件堆栈。处理器芯片组可包含一或多个核心、一或多个高速缓存、存储器控制器(例如,NVDIMM控制器),和存储协议控制器(例如,PCIe控制器、SATA控制器)。主机系统120使用存储器子系统110,例如,将数据写入到存储器子系统110以及从存储器子系统110读取数据。

主机系统120可经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含(但不限于)串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、光纤通道、串行附接SCSI(SAS)、双数据速率(DDR)存储器总线、小型计算机系统接口(SCSI)、双列直插式存储器模块(DIMM)接口(例如,支持双数据速率(DDR)的DIMM套接接口)等。物理主机接口可用于在主机系统120与存储器子系统110之间发射数据。当存储器子系统110通过PCIe接口与主机系统120耦合时,主机系统120可以进一步利用NVM高速(NVM Express,NVMe)接口来存取存储器组件(例如,存储器装置130)。物理主机接口可提供用于在存储器子系统110与主机系统120之间传送控制、地址、数据和其它信号的接口。图1示出存储器子系统110作为实例。一般来说,主机系统120可经由相同通信连接、多个单独的通信连接和/或通信连接的组合存取多个存储器子系统。

存储器装置130、140可包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合。易失性存储器装置(例如,存储装置140)可以是(但不限于)随机存取存储器(RAM),例如动态随机存取存储器(DRAM)和同步动态随机存取存储器(SDRAM)。

非易失性存储器装置(例如,存储器装置130)的一些实例包含“与非”(NAND)型快闪存储器和就地写入存储器,例如三维交叉点(“3D交叉点”)存储器。非易失性存储器的交叉点阵列可以结合可堆叠交叉栅格数据存取阵列基于体电阻的改变来执行位存储。另外,与许多基于快闪的存储器对比,交叉点非易失性存储器可执行就地写入操作,其中可在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。NAND型快闪存储器包含(例如)二维NAND(2D NAND)和三维NAND(3D NAND)。

存储器装置130中的每一个可包含一或多个存储器单元阵列。一种类型的存储器单元,例如单层级单元(SLC)可每单元存储一个位。其它类型的存储器单元,例如多层级单元(MLC)、三层级单元(TLC)和四层级单元(QLC)可每单元存储多个位。在一些实施例中,存储器装置130中的每一个可包含一或多个存储器单元阵列,例如SLC、MLC、TLC、QLC或这些的任何组合。在一些实施例中,特定存储器装置可包含存储器单元的SLC部分,以及MLC部分、TLC部分或QLC部分。存储器装置130的存储器单元可分组为页,页可指用以存储数据的存储器装置的逻辑单元。对于一些类型的存储器(例如,NAND),页可进行分组以形成块。

尽管描述了非易失性存储器组件,例如3D交叉点非易失性存储器单元阵列及NAND型快闪存储器(例如,2D NAND、3D NAND),但存储器装置130可基于任何其它类型的非易失性存储器,例如只读存储器(ROM)、相变存储器(PCM)、自选存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(FeTRAM)、铁电随机存取存储器(FeRAM)、磁随机存取存储器(MRAM)、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻性随机存取存储器(RRAM)、基于氧化物的RRAM(OxRAM)、或非(NOR)快闪存储器、电可擦除可编程只读存储器(EEPROM)。

存储器子系统控制器115(或为简单起见,控制器115)可与存储器装置130通信以执行操作,例如在存储器装置130处读取数据、写入数据或擦除数据,以及其它这类操作。存储器子系统控制器115可以包含硬件,例如一或多个集成电路和/或离散组件、缓冲存储器或其组合。硬件可包含具有专用(即,硬译码)逻辑的数字电路系统以执行本文中所描述的操作。存储器子系统控制器115可以是微控制器、专用逻辑电路系统(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等),或其它合适的处理器。

存储器子系统控制器115可包含处理器117(例如,处理装置),其被配置成执行存储在本地存储器119中的指令。在所示出的实例中,存储器子系统控制器115的本地存储器119包含嵌入式存储器,其被配置成存储用于执行控制存储器子系统110的操作的各种过程、操作、逻辑流和例程的指令,包含处理存储器子系统110与主机系统120之间的通信。

在一些实施例中,本地存储器119可包含存储存储器指针、所提取数据等的存储器寄存器。本地存储器119还可包含用于存储微码的只读存储器(ROM)。虽然图1中的实例存储器子系统110已示出为包含存储器子系统控制器115,但在本公开的另一实施例中,存储器子系统110不包含存储器子系统控制器115,而是可依靠外部控制(例如,由外部主机或由与存储器子系统分开的处理器或控制器提供)。

通常,存储器子系统控制器115可以从主机系统120接收命令或操作,且可将所述命令或操作转换为指令或适当命令以实现对存储器装置130的所需存取。存储器子系统控制器115可负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测和错误校正码(ECC)操作、加密操作、高速缓存操作和与存储器装置130相关联的逻辑地址(例如,逻辑块地址(LBA)、名字空间)和物理地址(例如,物理块地址)之间的地址转译。存储器子系统控制器115可进一步包含主机接口电路系统以经由物理主机接口与主机系统120通信。主机接口电路系统可以将从主机系统接收到的命令转换成存取存储器装置130的命令指令,以及将与存储器装置130相关联的响应转换成用于主机系统120的信息。

存储器子系统110还可以包含未示出的额外电路系统或组件。在一些实施例中,存储器子系统110可包含高速缓存或缓冲器(例如,DRAM)和地址电路系统(例如,行解码器和列解码器),所述地址电路系统可从存储器子系统控制器115接收地址并解码所述地址以存取存储器装置130。

在一些实施例中,存储器装置130包含本地媒体控制器135,其结合存储器子系统控制器115操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子系统控制器115)可在外部管理存储器装置130(例如,执行存储器装置130上的媒体管理操作)。在一些实施例中,存储器装置130是受管理存储器装置,其是与本地控制器(例如,本地控制器135)组合以在同一存储器装置封装内进行媒体管理的原始存储器装置。受管理存储器装置的实例是受管理NAND(MNAND)装置。

在一个实施例中,存储器子系统110包含选择栅极维护组件113,其可用于在存储器装置130或存储器装置140的数据块的选择栅极装置上周期性地执行维护操作。在一个实施例中,维护操作包含润色操作,其中选择栅极维护组件113迭代地将一系列编程脉冲施加到选择栅极装置以将选择栅极装置的当前阈值电压调整回到目标阈值电压;以及在每一迭代之后,验证当前阈值电压是否已达到目标阈值电压。在一个实施例中,响应于擦除给定数据块的请求或使数据块失效的请求,选择栅极维护组件113确定在数据块上执行的编程/擦除循环的数目,且确定编程/擦除循环的数目是否满足扫描阈值条件。响应于编程/擦除循环的数目满足扫描阈值条件,选择栅极维护组件113可在数据块上执行阈值电压完整性扫描以确定与数据块的至少一个选择栅极装置的当前阈值电压相关联的错误率。如果与所述至少一个选择栅极装置的当前阈值电压相关联的第一错误率满足错误阈值准则,则选择栅极维护组件113可在至少一个选择栅极装置上执行润色操作以将当前阈值电压调整回到目标阈值电压。在另一实施例中,如果编程/擦除循环的数目足够高,则选择栅极维护组件113可盲目地执行润色操作而不首先执行阈值电压完整性扫描。下文描述关于选择栅极维护组件113的操作的另外细节。

图2是示出根据本公开的一些实施例的存储器子系统中的存储器装置的数据块中的选择栅极装置的框图。在一个实施例中,数据块200表示组成存储器装置130或存储器装置140的数据块中的任一个。数据块200可以是存储器装置中的若干物理块中的一个,且可包含一组存储器页。存储器页存储对应于从主机系统接收的数据的二进制数据的一或多个位。数据块200的存储器单元可沿着若干单独的字线230布置。数据块200可包含共享位线210,其具有自其延伸到单独源极线220的若干支柱212、214、216、218。每一支柱可以是竖直导电迹线,且支柱212、214、216、218中的每一个与字线230中的每一个的相交点形成存储器单元。因此,支柱212、214、216、218中的每一个形成数据块200内的单独子块,其中每一子块可单独地存取。为了启用待在给定子块上执行的存取操作(例如,编程操作或读取操作),数据块200包含若干选择栅极装置以选择性地启用与特定子块相关联的支柱(例如,支柱212),同时停用与其它子块相关联的支柱(例如,支柱214、216、218)。举例来说,每一支柱可包含第一端(例如,漏极端)处的若干选择栅极装置(例如,SGD0、SGD1、SGD2),和第二端(例如,源极端)处的若干选择栅极装置(例如,SGS0、SGS1、SGS2)。

在一个实施例中,使用可编程替换栅极晶体管形成数据块200中的选择栅极装置。因此,选择栅极装置具有经编程阈值电压。取决于相对于阈值电压施加的控制信号的量值,选择栅极装置可启用或停用信号穿过相应支柱的传导。举例来说,如果施加到选择栅极装置的控制信号的量值小于阈值电压,则选择栅极装置可关断且可防止信号流动穿过相应支柱。相反,如果控制信号的量值大于阈值电压,则选择栅极装置可接通且可允许信号流动穿过相应支柱。在一个实施例中,单独地控制与数据块200中的每一支柱相关联的选择栅极装置,使得可防止特定支柱中的信号流动,同时准许其它支柱中的信号流动。替换栅极晶体管具有相对短内部沟道长度,且因此对某一量的信号泄漏敏感。相应地,在一个实施例中,数据块200中的每一支柱具有漏极端和源极端中的每一个处的多个选择栅极装置,从而有效地增加内部沟道长度以在关断时提供较好信号隔离。

选择栅极装置的可编程阈值电压可随时间移位。虽然初始设定于特定目标值,但例如装置上执行的编程/擦除循环的数目、温度的改变等许多因素可能致使选择栅极装置的阈值电压随时间增加或减小。此相对于目标值的移位可能导致电荷损失,从而致使选择栅极装置不恰当地工作,且可能导致存储在相应子块的字线230上的数据中发生可靠性问题。相应地,在一个实施例中,选择栅极维护组件113可在数据块200的选择栅极装置SGD0、SGD1、SGD2或SGS0、SGS1、SGS2上周期性地执行维护操作。在一个实施例中,维护操作包含润色操作,其中选择栅极维护组件113迭代地将一系列编程脉冲施加到选择栅极装置以将选择栅极装置的当前阈值电压调整回到目标阈值电压;以及在每一迭代之后,验证当前阈值电压是否已达到目标阈值电压。在返回到目标阈值电压后,选择栅极装置可恰当地工作,使得其将响应于接收到相应控制信号而正确地接通或关断。

图3是根据本公开的一些实施例的响应于块擦除操作执行存储器装置的数据块中的选择栅极维护的实例方法的流程图。方法300可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。在一些实施例中,方法300由图1的选择栅极维护组件113执行。虽然以特定序列或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,所说明的实施例应仅作为实例理解,且所说明的过程可以不同次序执行,且一些过程可并行执行。另外,在各种实施例中可以省略一或多个过程。因此,在每一实施例中并非需要全部过程。其它过程流程是可能的。

在操作305处,处理逻辑接收擦除存储器装置130的数据块200的请求。在一个实施例中,存储器子系统控制器115响应于执行内部存储器管理操作(例如,垃圾收集)生成擦除数据块200的请求。举例来说,如果确定数据块200不再含有任何有效数据,则存储器子系统控制器115可确定擦除数据块200上的剩余无效数据使得数据块可改为用于存储其它数据。

在操作310处,处理逻辑确定数据块200上执行的编程/擦除循环的数目(即,编程/擦除计数(PEC))。编程/擦除循环可包含将数据编程为数据块200,且随后擦除数据块200。此过程可在数据块200的使用寿命期间发生很多次,因为数据块在存储器子系统110中被不断地改用。在一个实施例中,选择栅极维护组件113或存储器子系统控制器115中的某一其它组件维持计数器以跟踪数据块200上执行的编程/擦除操作的数目。在一个实施例中,计数器维持在块层级且每当在数据块200上执行编程/擦除循环时递增。在一个实施例中,计数器初始化为初始值(例如,0),且响应于读取操作而递增。相应地,计数器的值表示数据块200的当前编程/擦除计数。

在操作315处,处理逻辑响应于请求而执行擦除数据块200的擦除操作。在一个实施例中,存储器子系统控制器115向存储器装置130发布擦除命令。作为响应,存储器装置130可擦除数据块200中的剩余无效数据。在操作320处,处理逻辑确定是否成功地擦除数据块200。在一个实施例中,响应于向存储器装置130发布擦除命令,存储器子系统控制器115从存储器装置130接收指示数据块200被擦除的确认消息。如果存储器子系统控制器115在阈值时间周期内未接收到确认消息,则存储器子系统控制器115可确定擦除操作不成功。如果擦除操作不成功,则处理可进行到操作350,在该处,处理逻辑引退数据块200。

如果数据块被成功地擦除,则在操作325处,处理逻辑确定数据块200上执行的编程/擦除循环的数目是否满足扫描阈值条件。在一个实施例中,选择栅极维护组件113将在操作310处确定的编程/擦除循环的数目与扫描阈值进行比较。扫描阈值可取决于存储器块如何配置(例如,配置为SLC存储器、MLC存储器、TLC存储器、QLC存储器)。举例来说,扫描阈值可基于测试或其它诊断而设定在某一水平,此时选择栅极完整性扫描适于确定数据块200的选择栅极装置的错误级别或其它可靠性量度。如果编程/擦除循环的数目确实满足或超过扫描阈值,则选择栅极维护组件113可进一步确定编程/擦除循环的数目是否等于数据块200的所限定间隔。所述所限定间隔可表示高于扫描阈值的某一编程/擦除循环数目,使得每当发生所述数目的编程/擦除循环时,可执行选择栅极完整性扫描。举例来说,如果扫描阈值为2000个循环且所限定间隔为100个循环,则选择栅极维护组件113可在2000以上每100个循环执行选择栅极完整性扫描(即,2100、2200、2300等)。因此,在一个实施例中,当编程/擦除循环满足或超过扫描阈值且等于所限定间隔时,满足扫描阈值条件。如果编程/擦除循环的数目不满足或超过扫描阈值或不等于所限定间隔,则处理逻辑确定未满足扫描阈值准则,返回到操作305,且等待接收另一擦除数据块200的请求。

如果数据块200上执行的编程/擦除循环的数目满足扫描阈值条件,则在操作330处,处理逻辑在数据块200上执行第一阈值电压完整性扫描以确定与数据块200的至少一个选择栅极装置SGD0的当前阈值电压相关联的第一错误率。在扫描期间,选择栅极维护组件113识别一或多个可靠性统计数据,例如原始位错误率(RBER),其表示选择栅极经历的每总位数目的位错误数目。在一个实施例中,在扫描期间,选择栅极维护组件113将一或多个读取电压施加到选择栅极装置SGD0,且基于所述一或多个读取电压接收一或多个输出值。举例来说,选择栅极维护组件113从选择栅极装置SGD0读取原始码字(即,一系列固定数目的位),将码字施加到错误校正码(ECC)解码器以生成经解码码字,且将经解码码字与原始码字(即,预期输出值)进行比较。选择栅极维护组件113可对经解码码字与原始码字之间的翻转位的数目进行计数,其中翻转位的数目与码字中位的总数目的比率表示RBER。选择栅极维护组件113可针对额外码字重复此过程,直至已经扫描数据块200中的选择栅极装置中的每一个。

在操作335处,处理逻辑确定与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第一错误率是否满足错误阈值准则。在一个实施例中,选择栅极维护组件113将第一错误率与表示存储器装置的错误校正能力的错误阈值进行比较。如果第一错误率不满足或超过错误阈值,则处理逻辑确定未满足错误阈值准则并返回到操作305。然而,如果第一错误率确实满足或超过错误阈值,则处理逻辑确定满足错误阈值准则。

在一个实施例中,选择栅极维护组件113检查第一错误率以确定当前阈值电压已下降到目标阈值电压以下还是增加到目标阈值电压以上。在一个实施例中,如果当前阈值电压已下降到目标阈值电压以下,则选择栅极维护组件113可执行润色操作以将当前目标阈值电压增加到目标阈值电压。在一个实施例中,选择栅极维护组件113执行单个扫描以确定当前阈值电压已下降到目标阈值电压以下(例如,以识别“低尾”)还是增加到目标阈值电压以上(例如,以识别“高尾”)。在另一实施例中,可执行单独的扫描。举例来说,选择栅极维护组件113可执行第二扫描以确定当前阈值电压是否已增加到目标阈值电压以上。如果当前阈值电压已增加到目标阈值电压以上,则选择栅极维护组件113可引退数据块200。

如果与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第一错误率满足错误阈值准则,则在操作340处,处理逻辑在所述至少一个选择栅极装置SGD0上执行润色操作以将当前阈值电压调整到目标阈值电压。在一个实施例中,选择栅极维护组件113将多个编程脉冲迭代地施加到至少一个选择栅极装置SGD0,施加到数据块200的选择栅极装置的子集,或施加到数据块200的所有选择栅极装置,以将选择栅极装置的当前阈值电压调整回到目标阈值电压。选择栅极维护组件113可在每一迭代之后验证当前阈值电压是否已达到目标阈值电压,以确保阈值电压缓慢地阶升回到目标阈值电压,而不超过目标阈值电压。

在操作345处,处理逻辑在数据块上执行第二阈值电压完整性扫描以确定在执行润色操作之后与数据块200的所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率,且确定在执行润色操作之后与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率是否满足错误阈值准则。如果在执行润色操作之后与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率满足错误阈值准则,则在操作350处,处理逻辑引退数据块200。在一个实施例中,存储器子系统控制器115将数据块200添加到被引退数据块的列表以便防止将来将新数据写入到数据块200。如果在执行润色操作之后与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率不满足错误阈值准则(即,错误率低于错误阈值),则块返回到可用块池,且处理逻辑返回到操作305。

在一个实施例中,选择栅极维护组件113可在操作340处盲目地执行润色操作,而不首先在操作330处执行阈值电压完整性扫描。举例来说,选择栅极维护组件113可将在操作310处确定的编程/擦除循环的数目与第二扫描阈值进行比较,所述第二扫描阈值可高于在操作325处使用的扫描阈值。此第二较高扫描阈值可基于测试或其它诊断而设定在某一水平,此时数据块200的选择栅极装置的阈值电压的大量移位几乎肯定已经发生。相应地,选择栅极维护组件113可绕过阈值电压完整性扫描,且直接进行到在选择栅极装置上执行润色操作。这可防止存储器子系统控制器115浪费功率和带宽来执行扫描。

图4是根据本公开的一些实施例的响应于块失效操作执行存储器装置的数据块中的选择栅极维护的实例方法的流程图。方法400可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,处理装置上运行或执行的指令),或其组合。在一些实施例中,方法400由图1的选择栅极维护组件113执行。虽然以特定序列或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,所说明的实施例应仅作为实例理解,且所说明的过程可以不同次序执行,且一些过程可并行执行。另外,在各种实施例中可以省略一或多个过程。因此,在每一实施例中并非需要全部过程。其它过程流程是可能的。

在操作405处,处理逻辑接收使存储器装置130的数据块200失效的请求。在一个实施例中,存储器子系统控制器115响应于执行内部存储器管理操作(例如,垃圾收集)而生成使数据块200失效的请求。举例来说,如果确定数据块200不再含有任何有效数据,则存储器子系统控制器115可确定使数据块200失效使得数据块可稍后被擦除且改为用于存储其它数据。

在操作410处,处理逻辑确定数据块200上执行的编程/擦除循环的数目(即,编程/擦除计数(PEC))。编程/擦除循环可包含将数据编程为数据块200,且随后擦除数据块200。此过程可在数据块200的使用寿命期间发生很多次,因为数据块在存储器子系统110中被不断地改用。在一个实施例中,选择栅极维护组件113或存储器子系统控制器115中的某一其它组件维持计数器以跟踪数据块200上执行的编程/擦除操作的数目。在一个实施例中,计数器维持在块层级且每当在数据块200上执行编程/擦除循环时递增。在一个实施例中,计数器初始化为初始值(例如,0),且响应于读取操作而递增。相应地,计数器的值表示数据块200的当前编程/擦除计数。

在操作415处,处理逻辑将数据块标记为无效。在一个实施例中,存储器子系统控制器115将数据块的识别符添加到无效数据块的列表。在操作425处,处理逻辑确定数据块200上执行的编程/擦除循环的数目是否满足扫描阈值条件。在一个实施例中,选择栅极维护组件113将在操作410处确定的编程/擦除循环的数目与扫描阈值进行比较。扫描阈值可取决于存储器块如何配置(例如,配置为SLC存储器、MLC存储器、TLC存储器、QLC存储器)。举例来说,扫描阈值可基于测试或其它诊断而设定在某一水平,此时选择栅极完整性扫描适于确定数据块200的选择栅极装置的错误级别或其它可靠性量度。如果编程/擦除循环的数目确实满足或超过扫描阈值,则选择栅极维护组件113可进一步确定编程/擦除循环的数目是否等于数据块200的所限定间隔。所述所限定间隔可表示高于扫描阈值的某一编程/擦除循环数目,使得每当发生所述数目的编程/擦除循环时,可执行选择栅极完整性扫描。举例来说,如果扫描阈值为2000个循环且所限定间隔为100个循环,则选择栅极维护组件113可在2000以上每100个循环执行选择栅极完整性扫描(即,2100、2200、2300等)。因此,在一个实施例中,当编程/擦除循环满足或超过扫描阈值且等于所限定间隔时,满足扫描阈值条件。如果编程/擦除循环的数目不满足或超过扫描阈值或不等于所限定间隔,则处理逻辑确定未满足扫描阈值准则,返回到操作405,且等待接收另一擦除数据块200的请求。

如果数据块200上执行的编程/擦除循环的数目满足扫描阈值条件,则在操作430处,处理逻辑在数据块200上执行第一阈值电压完整性扫描以确定与数据块200的至少一个选择栅极装置SGD0的当前阈值电压相关联的第一错误率。在扫描期间,选择栅极维护组件113识别一或多个可靠性统计数据,例如原始位错误率(RBER),其表示选择栅极经历的每总位数目的位错误数目。在一个实施例中,在扫描期间,选择栅极维护组件113将一或多个读取电压施加到选择栅极装置SGD0,且基于所述一或多个读取电压接收一或多个输出值。举例来说,选择栅极维护组件113从选择栅极装置SGD0读取原始码字(即,一系列固定数目的位),将码字施加到错误校正码(ECC)解码器以生成经解码码字,且将经解码码字与原始码字(即,预期输出值)进行比较。选择栅极维护组件113可对经解码码字与原始码字之间的翻转位的数目进行计数,其中翻转位的数目与码字中位的总数目的比率表示RBER。选择栅极维护组件113可针对额外码字重复此过程,直至已经扫描数据块200中的选择栅极装置中的每一个。

在操作435处,处理逻辑确定与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第一错误率是否满足错误阈值准则。在一个实施例中,选择栅极维护组件113将第一错误率与表示存储器装置的错误校正能力的错误阈值进行比较。如果第一错误率不满足或超过错误阈值,则处理逻辑确定未满足错误阈值准则并返回到操作405。然而,如果第一错误率确实满足或超过错误阈值,则处理逻辑确定满足错误阈值准则。

如果与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第一错误率满足错误阈值准则,则在操作440处,处理逻辑在所述至少一个选择栅极装置SGD0上执行润色操作以将当前阈值电压调整到目标阈值电压。在一个实施例中,选择栅极维护组件113将多个编程脉冲迭代地施加到所述至少一个选择栅极装置SGD0,施加到数据块200的选择栅极装置的子集,或施加到数据块200的所有选择栅极装置,以将选择栅极装置的当前阈值电压调整回到目标阈值电压。选择栅极维护组件113可在每一迭代之后验证当前阈值电压是否已达到目标阈值电压,以确保阈值电压缓慢地阶升回到目标阈值电压,而不超过目标阈值电压。

在操作445处,处理逻辑在数据块上执行第二阈值电压完整性扫描以确定在执行润色操作之后与数据块200的所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率,且确定在执行润色操作之后与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率是否满足错误阈值准则。如果在执行润色操作之后与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率满足错误阈值准则,则在操作450处,处理逻辑引退数据块200。在一个实施例中,存储器子系统控制器115将数据块200添加到被引退数据块的列表以便防止将来将新数据写入到数据块200。如果在执行润色操作之后与所述至少一个选择栅极装置SGD0的当前阈值电压相关联的第二错误率不满足错误阈值准则(即,错误率低于错误阈值),则处理逻辑返回到操作405。

图5示出计算机系统500的实例机器,所述实例机器内可执行用于致使所述机器执行本文中所论述的方法中的任何一或多种的指令集。在一些实施例中,计算机系统500可对应于主机系统(例如,图1的主机系统120),其包含、耦合到或利用存储器子系统(例如,图1的存储器子系统110)或可用于执行控制器的操作(例如,以执行操作系统来执行对应于图1的选择栅极维护组件113的操作)。在替代实施例中,机器可连接(例如,联网)到LAN、内联网、外联网和/或因特网中的其它机器。机器可作为对等(或分布式)网络环境中的对等机器或作为云计算基础架构或环境中的服务器或客户端机器而在客户端-服务器网络环境中的服务器或客户端机器的能力范围内操作。

机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、网络器具、服务器、网络路由器、开关或桥接器,或能够(循序或以其它方式)执行指定待由所述机器采取的动作的指令集的任何机器。另外,尽管说明单个机器,但还应认为术语“机器”包含机器的任何集合,所述机器单独地或共同地执行一(或多个)指令集以执行本文中所论述的方法中的任何一或多种。

实例计算机系统500包含处理装置502、主存储器504(例如,只读存储器(ROM)、快闪存储器、例如同步DRAM(SDRAM)或Rambus DRAM(RDRAM)等动态随机存取存储器(DRAM))、静态存储器506(例如,快闪存储器、静态随机存取存储器(SRAM)等),以及数据存储装置518,其经由总线530彼此通信。

处理装置502表示一或多个通用处理装置,例如微处理器、中央处理单元等。更特定来说,处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置502也可为一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等。处理装置502被配置成执行用于执行本文中所论述的操作和步骤的指令526。计算机系统500可进一步包含网络接口装置508以在网络520上通信。

数据存储系统518可包含机器可读存储介质524(也称为计算机可读介质),其上存储有一或多个指令集526或体现本文中所描述的任何一或多种方法或功能的软件。指令526还可在其由计算机系统500执行期间完全或至少部分地驻留在主存储器504内和/或处理装置502内,主存储器504和处理装置502也构成机器可读存储介质。机器可读存储介质524、数据存储系统518和/或主存储器504可对应于图1的存储器子系统110。

在一个实施例中,指令526包含实施对应于图1的选择栅极维护组件113的功能性的指令。尽管在实例实施例中将机器可读存储介质524展示为单个介质,但术语“机器可读存储介质”应被认为包含存储一或多个指令集的单个介质或多个介质。术语“机器可读存储介质”还应被认为包含能够存储或编码供机器执行的指令集且致使机器执行本公开的方法中的任何一种或多种的任何介质。因此,应认为术语“机器可读存储介质”包含但不限于固态存储器、光学介质以及磁性介质。

已关于对计算机存储器内的数据位的操作的算法和符号表示而呈现先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用以将其工作的主旨最有效地传达给所属领域的其他技术人员的方式。算法在这里并且通常被认为是产生期望的结果的操作的自洽序列。操作是要求对物理量进行物理操纵的操作。这些量通常但未必呈能够被存储、组合、比较和以其它方式操纵的电或磁信号的形式。有时,主要出于通用的原因,已经证明将这些信号称为位、值、要素、符号、字符、项、数字或类似物是方便的。

然而,应牢记,所有这些和类似术语应与适当物理量相关联,且仅仅是应用于这些量的方便的标签。本公开可涉及将计算机系统的寄存器和存储器内的表示为物理(电子)量的数据操纵和变换为计算机系统存储器或寄存器或其它这类信息存储系统内的类似地表示为物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。

本公开还涉及用于执行本文中的操作的设备。此设备可以出于既定目的而专门构造,或其可包含由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此类计算机程序可存储在计算机可读存储介质中,例如但不限于任何类型的盘(包含软盘、光盘、CD-ROM和磁性光盘)、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡或适合于存储电子指令的任何类型的介质,它们各自耦合到计算机系统总线。

本文中呈现的算法和显示器在本质上并不与任何特定计算机或其它设备相关。各种通用系统可与根据本文中的教示的程序一起使用,或可证明构造用以执行所述方法的更加专用的设备是方便的。将如下文描述中所阐述的那样来呈现多种这些系统的结构。此外,并不参考任何特定编程语言来描述本公开。应了解,可使用多种编程语言来实施本文中所描述的本公开的教示。

本公开可提供为计算机程序产品或软件,其可包含在其上存储有可用于编程计算机系统(或其它电子装置)以执行根据本公开的过程的指令的机器可读介质。机器可读介质包含用于以机器(例如,计算机)可读的形式存储信息的任何机构。在一些实施例中,机器可读(例如,计算机可读)介质包含机器(例如,计算机)可读存储介质,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光学存储介质、快闪存储器组件等。

在前述说明书中,已参考其特定实例实施例描述了本公开的实施例。应显而易见的是,可在不脱离如所附权利要求书中阐述的本公开的实施例的更广精神和范围的情况下对本公开进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书和图式。

相关技术
  • 存储器子系统中的选择栅极维护
  • 具有在FDSOI衬底中形成的垂直选择栅极的存储器单元
技术分类

06120113045311