CN115132255A - 使用存储电荷损失裕度检查进行开放块管理 - Google Patents
使用存储电荷损失裕度检查进行开放块管理 Download PDFInfo
- Publication number
- CN115132255A CN115132255A CN202210293194.3A CN202210293194A CN115132255A CN 115132255 A CN115132255 A CN 115132255A CN 202210293194 A CN202210293194 A CN 202210293194A CN 115132255 A CN115132255 A CN 115132255A
- Authority
- CN
- China
- Prior art keywords
- scl
- amount
- open block
- open
- memory
- 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
- 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
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- 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/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- 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/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- 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/30—Power supply 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50004—Marginal testing, e.g. race, voltage or current testing of threshold voltage
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50016—Marginal testing, e.g. race, voltage or current testing of retention
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/147—Voltage reference generators, voltage or current regulators; Internally lowered supply levels; Compensation for voltage drops
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请案涉及使用存储电荷损失裕度检查进行开放块管理。一种系统包含存储器装置;和处理装置,其以操作方式与所述存储器装置耦合以执行包括以下操作的操作:识别已在所述存储器装置的开放块上发生的存储电荷损失SCL的量,所述开放块具有一或多个经擦除页;确定所述SCL量满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和响应于确定所述SCL量满足所述阈值准则,使所述开放块保持开放以用于编程所述一或多个经擦除页。
Description
技术领域
本公开的实施例大体上涉及存储器子系统,且更具体来说,涉及使用存储电荷损失(SCL)裕度检查进行开放块管理。
背景技术
存储器子系统可以包含存储数据的一或多个存储器装置。存储器装置可为例如非易失性存储器装置和易失性存储器装置。一般来说,主机系统可利用存储器子系统以在存储器装置处存储数据且从存储器装置检索数据。
发明内容
在一个方面中,本申请案提供一种系统,其包括:存储器装置;和处理装置,其以操作方式与所述存储器装置耦合以执行包括以下操作的操作:识别已在所述存储器装置的开放块上发生的存储电荷损失(SCL)的量,所述开放块具有一或多个经擦除页;确定所述SCL量满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和响应于确定所述SCL量满足所述阈值准则,使所述开放块保持开放以用于编程所述一或多个经擦除页。
在另一个方面中,本申请案提供一种方法,其包括:识别已在存储器装置的开放块上发生的存储电荷损失(SCL)的量,所述开放块具有一或多个经擦除页;确定所述SCL量满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和响应于确定所述SCL量满足所述阈值准则,使所述开放块保持开放以用于编程所述一或多个经擦除页。
在另一个方面中,本申请案提供一种包括指令的非暂时性计算机可读存储媒体,所述指令当由处理装置执行时致使所述处理装置执行包括以下操作的操作:识别已在存储器装置的开放块上发生的存储电荷损失(SCL)的量,所述开放块具有一或多个经擦除页;确定第二SCL量不满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和响应于确定所述第二SCL量不满足所述阈值准则,抛弃所述开放块。
附图说明
根据下文给出的详细描述和本公开的各种实施例的附图,将更充分地理解本公开。然而,图式不应视为将本公开限制于具体实施例,而是仅用于解释和理解。
图1说明根据本公开的一些实施例的包含存储器子系统的实例计算系统。
图2是根据本公开的一些实施例的使用存储电荷损失(SCL)裕度检查进行开放块管理的方法的流程图。
图3是说明根据本公开的一些实施例的开放块的图式。
图4是其中可操作本公开的实施例的实例计算机系统的框图。
具体实施方式
本公开的方面针对于开放块存储电荷损失(SCL)裕度检查。存储器子系统可以为存储装置、存储器模块,或存储装置和存储器模块的组合。下文结合图1描述存储装置和存储器模块的实例。一般来说,主机系统可利用包含一或多个组件(例如存储数据的存储器装置)的存储器子系统。主机系统可提供数据以存储于存储器子系统处,且可请求从存储器子系统检索数据。
存储器子系统可以包含高密度非易失性存储器装置,其中当没有电力被供应到存储器装置时需要数据的保持。非易失性存储器装置的一个实例为与非(NAND)存储器装置。下文结合图1描述非易失性存储器装置的其它实例。非易失性存储器装置是一或多个裸片的封装。每一裸片可由一或多个平面组成。对于一些类型的非易失性存储器装置(例如,NAND装置),每一平面由物理块集组成。每一块由页集合组成。每个页由一组存储器单元(“单元”)组成。单元是存储信息的电子电路。取决于单元类型,单元可存储一或多个二进制信息位,且具有与所存储的位数相关的各种逻辑状态。逻辑状态可以由二进制值(例如,“0”和“1”或这类值的组合)表示。
存储器装置可以包含以二维网格布置的多个位。存储器单元蚀刻到列(下文也称为位线)和行(下文也称为字线)的阵列中的硅晶片上。字线可以指存储器装置的存储器单元的一或多个行,所述一或多个行与一或多个位线一起使用以生成存储器单元中的每一个的地址。位线和字线的相交点构成存储器单元的地址。下文中,块是指用于存储数据的存储器装置的单元,并且可以包含存储器单元的群组、字线群组、字线或个别存储器单元。可以将一或多个块分组在一起以形成存储器装置的平面,以便允许在每一平面上进行并发操作。存储器装置可以包含执行两个或更多个存储器平面的并发存储器页存取的电路系统。举例来说,存储器装置可包含用于存储器装置的每个平面的相应存取线驱动器电路和电力电路以促进对包含不同页类型的两个或更多个存储器平面的页进行并发存取。
可通过将特定电压施加到存储器单元来对存储器单元进行编程(写入),这产生由存储器单元保持的电荷。举例来说,可将电压信号VCG施加到单元的控制电极以使单元向电流跨单元在源极电极和漏极电极之间的流动开放。更具体地,对于每一单独的存储器单元(具有存储于其上的电荷Q),可存在阈值控制栅极电压VT(本文中还被称为“阈值电压”或简称为“阈值”),以使得对于控制栅极电压(VCG)低于阈值电压,即VCG<VT,源极-漏极电流为低。一旦控制栅电压超过阈值电压,即VCG>VT,电流便显著增加。因为电极和栅极的实际几何形状在单元与单元之间变化,所以阈值电压甚至对于实施于同一裸片上的单元也可不同。因此,存储器单元可表征为阈值电压的分布P,P(Q,VT)=dW/dVT,其中dW表示当电荷Q置于单元上时,任何给定单元的阈值电压在区间[VT,VT+dVT]内的概率。
存储器装置可具有与装置的单元所容许的控制电压的工作范围相比较窄的分布P(Q,VT)。因此,多个非重叠分布P(Qk,VT)(“谷值”)可以拟合到工作范围,从而允许存储并可靠地检测多个电荷值Qk,k=1、2、3…。分布(谷值)穿插有电压间隔(谷值裕度),其中装置的存储器单元没有(或极少)具有其阈值电压。因此,此类谷值裕度可用于分离各种电荷状态Qk,可通过在读取操作期间检测单元的相应阈值电压VT存在于哪两个谷值裕度之间来确定单元的逻辑状态。这实际上允许单个存储器单元存储多个信息位:在2N-1个明确限定的谷值裕度和2N个谷值下操作的存储器单元能够可靠地存储N个信息位。具体来说,可通过比较由存储器单元展现的所测量的阈值电压VT与对应于存储器装置的已知谷值裕度(例如,裕度的中心)的一或多个参考电压电平(读取电平)来进行读取操作。
在存储器装置中观察到的一个现象是Vt分布移位,在本文中也称为时间电压移位(TVS)。举例来说,关于块的经编程页,在电荷随例如时间和/或温度减少时,存储电荷损失(SCL)可致使Vt分布朝向较低电压移位。也就是说,SCL和朝向较低电压的对应Vt分布移位可与从编程操作到读取操作经过的时间成比例。相反地,关于块的经擦除页,在电荷随例如时间和/或温度增加时,存储电荷增益(SCG)可致使Vt分布朝向较高电压移位。也就是说,类似于SCL,SCG和朝向较高电压的对应Vt分布移位可与从擦除操作到编程操作经过的时间成比例。如果在经擦除页上发生过多SCG,那么当数据经编程到经擦除页中时可存在可靠性问题。归因于存储器单元处于经擦除状态,可能难以跟踪和/或预测SCG。到经擦除页的SCG大到足以被检测到时,SCG的量和对应Vt分布移位可能已经成为阻碍达成可靠编程的问题。
一种可用以解决在编程经擦除块时存在的SCG问题的方法是紧接在使用编程之前擦除块,并且接着允许经擦除块存在于开放状态(即,目前正被编程状态)中以在时间限值(例如,大约一小时)内被填充。在时间限值到期之后,抛弃经擦除块并且随后可开放新块以用于在时间限值内的数据写入。通过进行此操作,经擦除块可在被完全填充之前被抛弃。这可归因于与对块进行完全填充相比必须更频繁地对块进行部分填充而引起多余块耗损,进而造成存储装置的总写入字节(TBW)容量的整体减小。此外,此方法可归因于需要在数据写入之前擦除新块而引起性能降低。
本公开的方面通过提供使用存储电荷损失(SCL)裕度检查管理开放块的存储器子系统来解决以上和其它缺陷。如上文所论述,可能难以检测已在块的经擦除页上发生的SCG的量。然而,已在块的经编程页上发生的SCL量通常与已在块的经擦除页上发生的SCG的量有关系。因此,存储器子系统可使用已在块的经编程页上发生的SCL量作为已在块的经擦除页上发生的SCG的量的代理。
为了确定SCL量,存储器子系统可使用任何适合的扫描方法扫描开放块的经编程页的经编程字线以测量一值,并且接着将所述值与已知参考进行比较以确定开放块的经编程页上的SCL量。适合的扫描方法的实例包含但不限于直接Vt测量、读取电平校准、读取感测电流、等。由于SCL随时间增加,因此扫描可在开放块的最早经编程页内含有的最早经编程数据(例如,TLC/QLC数据)上发生以确保SCL量是可针对开放块确定的SCL的最高可能量,且自从开放块中的最早经编程页被编程起,可以设置的时间频率执行所述扫描。存储器子系统随后可确定SCL量是否满足阈值准则。举例来说,可将SCL量与对应于可接受的SCL量的阈值进行比较以确定在超过先前分配的时间后是否继续使用开放块。更具体地,如果SCL量小于或等于阈值(SCL量可接受),那么满足所述阈值准则,且开放块将保持开放以用于编程剩余的经擦除页。如果SCL量超过阈值并且因而是不可接受的,那么不满足所述阈值准则并且将抛弃开放块。在抛弃之后,随后可开放新块以用于编程。
由上文所描述的存储器子系统执行的方法可以根据本文中所描述的实施例的任何适合的存储器装置架构予以实施。在一个实施例中,可以用实施替换栅极NAND(RG NAND)技术的存储器装置来实施所述方法。替换栅极(RG)NAND装置是实施RG架构而非浮动栅极(FG)架构的NAND装置。RG NAND架构消除了FG NAND架构中常见的单元间隙,从而减少或消除了由这些单元间隙产生的电容。更具体地,RG NAND架构对应于单个绝缘体结构。与FGNAND架构相比,RG NAND架构可以实现更小的尺寸、改进的读取和写入延迟,并提高传送速率。
本公开的优点包含但不限于防止过量的编程/擦除循环、允许TBW的准确预测,以及由于新块较不需要频繁地进行擦除而提高了性能。
图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高速(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)和五层级单元(PLC))可每单元存储多个位。在一些实施例中,存储器装置130中的每一个可包含一或多个存储器单元阵列,如SLC、MLC、TLC、QLC、PLC或此类的任何组合。在一些实施例中,特定存储器装置可包含存储器单元的SLC部分,以及MLC部分、TLC部分、QLC部分或PLC部分。存储器装置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可以包含处理装置,其包含经配置以执行存储在本地存储器119中的指令的一或多个处理器(例如,处理器117)。在所说明的实例中,存储器子系统控制器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执行媒体管理操作)。在一些实施例中,存储器子系统110为受管理存储器装置,其为具有在裸片上的控制逻辑(例如,本地控制器132)和用于同一存储器装置封装内的媒体管理的控制器(例如,存储器子系统控制器115)的原始存储器装置130。受管理存储器装置的实例是受管理NAND(MNAND)装置。
存储器子系统110包含可实施开放块存储电荷损失(SCL)裕度检查的开放块管理(OBM)组件113。OBM组件113可扫描在具有一或多个经擦除页的开放块上经编程的数据以确定已在开放块上发生的SCL量,获得与将在开放块上发生的可接受SCL量对应的阈值,并且确定SCL量是否超过阈值。由于SCL可用作SCG的代理,因此OBM组件113进行的确定可用以确定是否保持块开放以用于编程一或多个经擦除页。因此,如果SCL量满足阈值准则(例如,小于或等于阈值),那么OBM组件113保持开放块开放以用于编程一或多个经擦除页。否则,OBM组件113抛弃开放块。OBM组件113随后可开放新块用于编程。
在一些实施例中,存储器子系统控制器115包含PV组件113的至少一部分。在一些实施例中,OBM组件113是主机系统110、应用程序或操作系统的部分。在其它实施例中,本地媒体控制器135包含OBM组件113的至少一部分并且被配置成执行本文中所描述的功能性。下文参考图2和3描述有关OBM组件113的操作的进一步细节。
图2是根据本公开的一些实施例的使用存储电荷损失(SCL)裕度检查进行开放块管理的方法200的流程图。方法200可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,方法200由图1的OBM组件113执行。虽然以特定顺序或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,应理解,所说明实施例仅为实例,且所说明过程可以不同次序进行,且一些过程可并行地进行。另外,在各个实施例中可以省略一或多个过程。因此,在每个实施例中并不需要所有过程。其它过程流也是可能的。
在操作210处,处理逻辑识别已在所述存储器装置的开放块上发生的存储电荷损失(SCL)的量,其中所述开放块具有一或多个经擦除页。举例来说,开放块可为NAND块。在一些实施例中,确定SCL量包含扫描开放块的一或多个经编程页,并基于所述扫描确定所述SCL量为已在所述一或多个经编程页上发生的SCL量。更具体地,可扫描一或多个经编程页的一或多个经编程字线以测量一值,并且接着可将所述值与已知参考进行比较以确定开放块的经编程页上的SCL量。可使用任何合适方法识别SCL量(例如,在扫描时)。这类方法的实例包含但不限于直接Vt测量、读取电平校准、读取感测电流等。举例来说,可紧接在编程之后进行第一测量,并且接着可在某一稍后时间进行第二测量。第一测量和第二测量之间的差是SCL的量度。
所述扫描可自从开放块中的最早经编程页被编程起,以设置的时间频率在开放块的最早经编程页内含有的最早经编程数据(例如,TLC/QLC数据)上发生。可实施多种方法以确定数据的新旧。举例来说,编程时间可保持在页元数据中和/或单独的元数据表中。可将扫描设定为从最早经编程数据(例如,TLC/QLC数据)被编程到块中的时间开始每小时运行一次直到归因于存储电荷增益(SCG)将所述块完全编程或抛弃的时间为止。将在下文参考图3描述关于开放块的结构的另外细节。
在操作220处,处理逻辑获得与将在开放块上发生的可接受SCL量对应的阈值。获得所述阈值可包含基于表征数据确定阈值。可需要数个级别的表征数据。一个级别的表征数据包含SCL与SCG的比率的测量,使得可获得SCL和SCG之间的关系。另一级别的表征数据包含通过在数据编程之前针对各种SCG量执行可靠性测试来识别合格/不合格点(例如,理解在应抛弃块之前多少SCG是可接受的)。
SCL和SCG之间的关系可基于数个因素而变化。这类因素的实例包含但不限于块已发现的温度和编程/擦除循环。在一个实例中,SCL与SCG的比率可等于约1.23:1。阐述此比率的另一方式是每123mV的SCL对应于100mV的SCG。
在操作230处,处理逻辑确定SCL量是否满足关于阈值的阈值准则。进行所述确定以用于决定在超过先前分配的时间(例如,1小时)后是否继续使用开放块。在一个实施例中,如果SCL量小于或等于阈值,那么满足所述阈值准则,且如果SCL量超过阈值,那么不满足所述阈值准则。
如果已在开放块上发生的SCL量满足所述阈值准则(例如,小于或等于阈值),那么这意味着已在开放块上发生的SCL量是可接受的。因此,鉴于SCL和SCG之间的关系,已在开放块的一或多个经擦除页上发生的SCG量类似地应为可接受的。因此,处理逻辑保持开放块开放以用于在操作240处编程一或多个经擦除页。
响应于确定不满足阈值准则(例如,已在开放块上发生的SCL量超过阈值),确定已在开放块上发生的此SCL量是不可接受的。因此,鉴于SCL和SCG之间的关系,已在开放块的一或多个经擦除页上发生的SCG量类似地应为不可接受的(例如,过高而无法进行可靠地编程)并且应向编程关闭所述开放块。因此,在操作250处,处理装置抛弃开放块。随后处理逻辑可在操作260处开放新块用于编程。
在操作240处保持开放块开放之后或在操作260处开放新块之后,处理逻辑可重复操作210-230以识别已在新开放块上发生的第二SCL量,获得阈值,并且确定已在新开放块上发生的SCL量是否满足阈值准则。
图3说明实例开放块310的图式300。举例来说,开放块310可为NAND块。如所示出,块310包含一组经编程页320和一组经擦除页330。所述一组经编程页320包含经编程页320-1到320-5,其中经编程页320-1对应于具有最早经编程数据的最早经编程页,且经编程页320-5对应于具有最新经编程数据的最新经编程页。所述一组经擦除页330包含经擦除页332。编程顺序是从最早经编程数据(例如,从页322-1)向上进行。
如上文参考图2进一步详细地描述,在经编程页的SCL与经擦除页的SCG之间存在一关系,使得SCL量可用作SCG的代理。因此,如果确定已在开放块310上发生的SCL量(例如,已在页320-1上发生的SCL量)满足阈值准则(例如,由于小于或等于与可接受SCL量对应的阈值),那么保持开放块310开放以用于至少编程经擦除页332。否则,抛弃开放块310并且可开放新开放块用于编程。
图4说明计算机系统400的实例机器,在所述实例机器内可执行用于使得所述机器执行本文中所论述的方法中的任何一或多个的指令集。在一些实施例中,计算机系统400可对应于主机系统(例如,图1的主机系统120),其包含、耦合到或利用存储器子系统(例如,图1的存储器子系统110)或可用于进行控制器的操作(例如,以执行操作系统从而进行对应于图1的OBM组件113的操作)。在替代性实施例中,机器可连接(例如联网)到LAN、内联网、外联网和/或因特网中的其它机器。机器可作为对等(或分布式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器而以客户端-服务器网络环境中的服务器或客户端机器的容量进行操作。
所述机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、网络器具、服务器、网络路由器、交换机或桥接器,或能够执行(依序或以其它方式)指定将由所述机器采取的动作的指令集的任何机器。另外,尽管说明单个机器,但还应认为术语“机器”包含机器的任何集合,所述集合单独地或共同地执行一(或多)个指令集以进行本文中所论述的方法中的任何一或多种。
实例计算机系统400包含处理装置402、主存储器404(例如,只读存储器(ROM)、闪存存储器、动态随机存取存储器(DRAM)例如同步DRAM(SDRAM)或RDRAM等)、静态存储器406(例如,闪存存储器、静态随机存取存储器(SRAM)等),以及数据存储系统418,其经由总线430彼此通信。
处理装置402表示一或多个通用处理装置,例如微处理器、中央处理单元等。更特定来说,处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置402也可以是一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器或类似物。处理装置402被配置成执行指令426以用于执行本文中所论述的操作和步骤。计算机系统400可另外包含网络接口装置408以在网络420上通信。
数据存储系统418可包含机器可读存储媒体424(也称为计算机可读媒体),其上存储有一或多个指令426集或体现本文中所描述的任何一或多种方法或功能的软件。指令426还可在由计算机系统400执行期间完全或至少部分地驻存在主存储器404内和/或处理装置402内,主存储器404和处理装置402也构成机器可读存储媒体。机器可读媒体424、数据存储系统418和/或主存储器404可对应于图1的存储器子系统110。
在一个实施例中,指令426包含用于实施对应于PV组件(例如,图1的OBM组件113)的功能性的指令。尽管在实例实施例中机器可读存储媒体424展示为单个媒体,但是应认为术语“机器可读存储媒体”包含存储一或多组指令的单个媒体或多个媒体。术语“机器可读存储媒体”还应被认为包含能够存储或编码供机器执行的指令集合且致使机器执行本公开的方法中的任何一种或多种的任何媒体。术语“机器可读存储媒体”因此应被视为包含但不限于固态存储器、光学媒体和磁性媒体。
已在针对计算机存储器内的数据位的操作的算法和符号表示方面呈现了先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用以将其工作的主旨最有效地传达给所属领域的其他技术人员的方式。在本文中,且一般将算法构想为产生所要结果的操作的自洽序列。操作是要求对物理量进行物理操纵的操作。通常(但未必),这些量采用能够存储、组合、比较以及以其它方式操纵的电或磁信号的形式。已经证实,主要出于常用的原因,将这些信号称为位、值、元素、符号、字符、项、编号等等有时是便利的。
然而,应牢记,所有这些和类似术语将与适当物理量相关联,且仅仅为应用于这些量的便利标记。本公开可以指操控和变换计算机系统的寄存器和存储器内的表示为物理(电子)数量的数据为计算机系统存储器或寄存器或其它这类信息存储系统内的类似地表示为物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。
本公开还涉及用于执行本文中的操作的设备。这一设备可以出于所需目的而专门构造,或其可包含通过存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此类计算机程序可存储于计算机可读存储媒体中,例如包含软盘、光盘、CD-ROM和磁性光盘的任何类型的盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡或适合于存储电子指令的任何类型的媒体,其各自耦合到计算机系统总线。
本文中呈现的算法和显示器在本质上并不与任何特定计算机或其它设备相关。各种通用系统可以与根据本文中的教示的程序一起使用,或可以证明构造用以执行所述方法更加专用的设备是方便的。将如下文描述中所阐述的那样来呈现各种这些系统的结构。另外,未参考任何特定编程语言来描述本公开。应了解,可使用各种编程语言来实施如本文中所描述的本公开的教示内容。
本公开可提供为计算机程序产品或软件,其可包含在其上存储有可用于编程计算机系统(或其它电子装置)以进行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机构。在一些实施例中,机器可读(例如计算机可读)媒体包含机器(例如计算机)可读存储媒体,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储媒体、光学存储媒体、闪存存储器组件等。
在前述说明书中,本公开的实施例已经参照其特定实例实施例进行描述。将显而易见的是,可在不脱离如所附权利要求书中阐述的本公开的实施例的更广精神和范围的情况下对本公开进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书和图式。
Claims (20)
1.一种系统,其包括:
存储器装置;和
处理装置,其以操作方式与所述存储器装置耦合以执行包括以下操作的操作:
识别已在所述存储器装置的开放块上发生的存储电荷损失SCL的量,所述开放块具有一或多个经擦除页;
确定所述SCL量满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和
响应于确定所述SCL量满足所述阈值准则,使所述开放块保持开放以用于编程所述一或多个经擦除页。
2.根据权利要求1所述的系统,其中识别所述SCL量包括:
扫描所述开放块的经编程页;和
基于所述扫描确定所述SCL量为已在所述经编程页上发生的SCL量。
3.根据权利要求2所述的系统,其中识别所述SCL量包括执行直接阈值电压测量、读取电平校准或读取感测电流中的至少一个。
4.根据权利要求2所述的系统,其中所述经编程页是所述开放块的最早经编程页。
5.根据权利要求4所述的系统,其中自从所述最早经编程页被编程起以设置的时间频率扫描所述最早经编程页。
6.根据权利要求1所述的系统,其中所述操作另外包括:
在使所述开放块保持开放之后,识别已在所述开放块上发生的第二SCL量;
确定所述第二SCL量由于超过阈值而不满足所述阈值准则;和
响应于确定所述第二SCL量不满足所述阈值准则,抛弃所述开放块。
7.根据权利要求6所述的系统,其中所述操作另外包括在抛弃所述开放块之后开放新块用于编程。
8.一种方法,其包括:
识别已在存储器装置的开放块上发生的存储电荷损失SCL的量,所述开放块具有一或多个经擦除页;
确定所述SCL量满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和
响应于确定所述SCL量满足所述阈值准则,使所述开放块保持开放以用于编程所述一或多个经擦除页。
9.根据权利要求8所述的方法,其中识别所述SCL量包括:
扫描所述开放块的经编程页;和
基于所述扫描确定所述SCL量为已在所述经编程页上发生的SCL量。
10.根据权利要求9所述的方法,其中识别所述SCL量包括执行直接阈值电压测量、读取电平校准或读取感测电流中的至少一个。
11.根据权利要求9所述的方法,其中所述经编程页是所述开放块的最早经编程页。
12.根据权利要求11所述的方法,其中自从所述最早经编程页被编程起以设置的时间频率扫描所述最早经编程页。
13.根据权利要求8所述的方法,其另外包括:
在使所述开放块保持开放之后,识别已在所述开放块上发生的第二SCL量;
确定所述第二SCL量由于超过阈值而不满足所述阈值准则;和
响应于确定所述第二SCL量不满足所述阈值准则,抛弃所述开放块。
14.根据权利要求13所述的方法,其中所述操作另外包括在抛弃所述开放块之后开放新块用于编程。
15.一种包括指令的非暂时性计算机可读存储媒体,所述指令当由处理装置执行时致使所述处理装置执行包括以下操作的操作:
识别已在存储器装置的开放块上发生的存储电荷损失SCL的量,所述开放块具有一或多个经擦除页;
确定第二SCL量不满足与将在所述开放块上发生的可接受SCL量对应的阈值准则;和
响应于确定所述第二SCL量不满足所述阈值准则,抛弃所述开放块。
16.根据权利要求15所述的非暂时性计算机可读存储媒体,其中识别所述SCL量包括:
扫描所述开放块的经编程页;和
基于所述扫描确定所述SCL量为已在所述经编程页上发生的SCL量。
17.根据权利要求16所述的非暂时性计算机可读存储媒体,其中识别所述SCL量包括执行直接阈值电压测量、读取电平校准或读取感测电流中的至少一个。
18.根据权利要求16所述的非暂时性计算机可读存储媒体,其中所述经编程页是所述开放块的最早经编程页。
19.根据权利要求18所述的非暂时性计算机可读存储媒体,其中自从所述最早经编程页被编程起以设置的时间频率扫描所述最早经编程页。
20.根据权利要求15所述的非暂时性计算机可读存储媒体,其中所述操作另外包括在抛弃所述开放块之后开放新块用于编程。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/210,713 US11715531B2 (en) | 2021-03-24 | 2021-03-24 | Open block management using storage charge loss margin checking |
US17/210,713 | 2021-03-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115132255A true CN115132255A (zh) | 2022-09-30 |
Family
ID=83365005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210293194.3A Pending CN115132255A (zh) | 2021-03-24 | 2022-03-23 | 使用存储电荷损失裕度检查进行开放块管理 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11715531B2 (zh) |
CN (1) | CN115132255A (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5920501A (en) * | 1997-12-12 | 1999-07-06 | Micron Technology, Inc. | Flash memory system and method for monitoring the disturb effect on memory cell blocks due to high voltage conditions of other memory cell blocks |
-
2021
- 2021-03-24 US US17/210,713 patent/US11715531B2/en active Active
-
2022
- 2022-03-23 CN CN202210293194.3A patent/CN115132255A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US11715531B2 (en) | 2023-08-01 |
US20220310183A1 (en) | 2022-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11682446B2 (en) | Selective wordline scans based on a data state metric | |
US11640262B2 (en) | Implementing variable number of bits per cell on storage devices | |
US11762767B2 (en) | Storing highly read data at low impact read disturb pages of a memory device | |
CN115428083A (zh) | 使用可变预读取电压电平来管理非易失性存储器装置中的写入操作 | |
CN116168753A (zh) | 存储器装置缺陷扫描 | |
US20240134571A1 (en) | Using duplicate data for improving error correction capability | |
US20220180955A1 (en) | Managing probabilistic data integrity scan intervals | |
US11450392B2 (en) | Selective read disturb sampling | |
CN117636922A (zh) | 产生表征相对于电压分布施加的读取电压电平的元数据的存储器装置 | |
US20230122275A1 (en) | Voltage calibration scans to reduce memory device overhead | |
US11875865B2 (en) | Select gate reliability | |
CN115132258A (zh) | 优化存储电荷损失管理 | |
CN114639413A (zh) | 错误恢复操作 | |
US11715531B2 (en) | Open block management using storage charge loss margin checking | |
US11881284B2 (en) | Open translation unit management using an adaptive read threshold | |
US11599300B2 (en) | Voltage threshold prediction-based memory management | |
US11934690B2 (en) | Memory sub-system refresh | |
US11726671B2 (en) | Memory access mode selection | |
US11756625B2 (en) | Adaptive temperature compensation for memory devices | |
US20220188226A1 (en) | Dynamic program-verify voltage adjustment for intra-block storage charge loss uniformity | |
CN116312697A (zh) | 用虚设数据来同时编程弃用字线单元 | |
CN115732008A (zh) | 存储器装置中用于检测读取干扰的牺牲串 | |
CN115132251A (zh) | 存储器子系统中的存储器装置的所有级别的动态开始电压编程 |
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 |