CN113808645A - 减少邻近字线干扰的模糊精细程序序列的数据存储设备 - Google Patents
减少邻近字线干扰的模糊精细程序序列的数据存储设备 Download PDFInfo
- Publication number
- CN113808645A CN113808645A CN202110366993.4A CN202110366993A CN113808645A CN 113808645 A CN113808645 A CN 113808645A CN 202110366993 A CN202110366993 A CN 202110366993A CN 113808645 A CN113808645 A CN 113808645A
- Authority
- CN
- China
- Prior art keywords
- word lines
- programming
- fine
- fuzzy
- state
- 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
- 238000013500 data storage Methods 0.000 title abstract description 20
- 230000015654 memory Effects 0.000 claims abstract description 88
- 238000000034 method Methods 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 4
- 238000012360 testing method Methods 0.000 description 64
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000000052 comparative effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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/08—Address circuits; Decoders; Word-line control circuits
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/5621—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 storage in a floating gate
- G11C11/5628—Programming or writing circuits; 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
-
- 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
-
- 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
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or 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/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)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
本发明题为“具有用于减少邻近字线干扰的模糊‑精细程序序列的数据存储设备”。本发明提供了一种存储器控制器,在一个实施方案中,该存储器控制器包括存储器接口和控制器电路。该存储器接口被配置为与具有多个字线的存储器连接。该控制器电路被配置为使用模糊‑精细编程对该多个字线的第一部分进行编程以存储第一程序数据;使用该模糊‑精细编程以非精细状态对该多个字线中的一个或多个字线进行编程,该一个或多个字线与该第一部分邻近;以及使用该模糊‑精细编程对该多个字线的第二部分进行编程以存储第二程序数据,该第二部分与该一个或多个字线邻近。
Description
背景技术
本申请整体涉及存储器设备,并且更具体地讲,涉及执行模糊-精细程序序列的存储器设备中的控制器。
由于模糊-精细编程之间的更小阈值电压Vt容限,会在例如BiCS4 X4四层单元(QLC)存储器中出现失败位计数的增加。在开放块高温条件下在边缘字线(WL)处观察到高失败位计数(FBC),这是由于邻近字线干扰(NWI)。
发明内容
本公开包括使用虚拟数据对与边缘字线(本文称为“WLn”)邻近的字线(本文称为“WLn+1”)进行编程或完全跳过对与WLn邻近的WLn+1进行编程的设备、方法和装置。本公开的设备、系统和装置减少NWI。
例如,本公开的一个解决方案是在使用精细编程对WLn+1进行编程之前首先使用模糊编程对WLn+2进行编程。在该示例中,随后使用WLn+2实现模糊-精细编程序列。
本公开的另一个解决方案是完全跳过WLn+1的编程并开始使用模糊-精细编程对WLn+2进行编程。在该示例中,使用WLn+2实现模糊-精细编程序列,这使WLn+1保留在擦除状态。
本公开的模糊-精细编程减少边缘字线(例如WLn)处的邻近字线干扰。本公开的模糊-精细编程可在存储器控制器的固件中实现。
本公开提供了一种存储器控制器,在一个实施方案中,该存储器控制器包括存储器接口和控制器电路。该存储器接口被配置为与具有多个字线的存储器连接。该控制器电路被配置为使用模糊-精细编程对该多个字线的第一部分进行编程以存储第一程序数据;使用该模糊-精细编程以非精细状态对该多个字线中的一个或多个字线进行编程,该一个或多个字线与该第一部分邻近;以及使用该模糊-精细编程对该多个字线的第二部分进行编程以存储第二程序数据,该第二部分与该一个或多个字线邻近。
本公开还提供了一种方法。在一个实施方案中,该方法包括使用控制器电路和模糊-精细编程对多个字线的第一部分进行编程以存储第一程序数据。该方法包括使用控制器电路和模糊-精细编程以非精细状态对该多个字线中的一个或多个字线进行编程,该一个或多个字线与第一部分邻近。该方法还包括使用控制器电路和模糊-精细编程对该多个字线的第二部分进行编程以存储第二程序数据,该第二部分与该一个或多个字线邻近。
本公开还提供了一种装置,在一个实施方案中,该装置包括使用模糊-精细编程对多个字线的第一部分进行编程以使用模糊-精细编程来存储第一程序数据的装置;使用模糊-精细编程以非精细状态对该多个字线中的一个或多个字线进行编程的装置,该一个或多个字线与该第一部分邻近;以及使用模糊-精细编程对该多个字线的第二部分进行编程以存储第二程序数据的装置,该第二部分与该一个或多个字线邻近。
这样,本公开的各个方面提供了至少存储器设备及其设计和架构的技术领域方面的改进。本公开可以以各种形式体现,包括由计算机实现的方法控制的硬件或电路、计算机程序产品、计算机系统和网络、用户界面及应用编程接口;以及硬件实现的方法、信号处理电路、存储器阵列、专用集成电路、现场可编程门阵列等。上述发明内容仅仅旨在给出本公开的各个方面的总体思路,并非以任何方式限制本公开的范围。
附图说明
图1是根据本公开的一些实施方案的系统的框图,该系统包括数据存储设备,该数据存储设备具有基于模糊-精细编程来存储数据的存储器。
图2是示出相对于字线WL0至WL47的常规模糊-精细编程的表格。
图3是示出写入在与字线WL0至WL95的块相关的字线WL0至WLn中的第一程序数据的常规模糊-精细编程的表格。
图4是示出相对于常规模糊-精细编程的四个不同示例性测试而言跨字线的失败位计数的示意图。
图5是示出在WLn+1程序期间使用常规模糊-精细编程在WLn附近添加的额外电荷的示意图。
图6是根据本公开的一些实施方案的示出相对于字线WL0至WL95而言在字线WL0和WLn之间的第一程序数据的模糊-精细编程的表格。
图7是根据本公开的一些实施方案的示出相对于减少邻近字线干扰的模糊-精细编程的四个不同示例性测试而言跨字线的失败位计数的示意图。
图8是根据本公开的一些实施方案的示出用于执行减少邻近字线干扰的模糊-精细编程的过程的流程图。
具体实施方式
在下面的描述中,阐述了许多细节,诸如数据存储设备配置、控制器操作等,以便提供本公开的一个或多个方面的理解。对本领域技术人员显而易见的是,这些具体细节仅仅是示例性的,并非旨在限制本申请的范围。具体地讲,与存储器设备相关联的功能可由硬件(例如模拟或数字电路)、硬件与软件的组合(例如存储在非暂态计算机可读介质中并由处理或控制电路执行的程序代码或固件)或任何其他合适的装置来执行。下面的描述仅仅旨在给出本公开的各个方面的总体思路,并非以任何方式限制本公开的范围。
图1是根据本公开的一些实施方案的系统的框图,该系统包括数据存储设备,该数据存储设备具有基于模糊-精细编程来存储数据的存储器。在图1的示例中,系统100包括数据存储设备102和主机设备150。数据存储设备102包括控制器120和耦接到控制器120的存储器104(例如非易失性存储器)。
数据存储设备102和主机设备150可经由连接(例如通信路径110)诸如总线或无线连接来操作性地耦接。在一些示例中,数据存储设备102可嵌入在主机设备150内。另选地,在其他示例中,数据存储设备102可从主机设备150移除(即,“可移除地”耦接到主机设备150)。作为一个示例,数据存储设备102可以根据可移除通用串行总线(USB)配置来可移除地耦接到主机设备150。在一些具体实施中,数据存储设备102可包括或对应于固态驱动器(SSD),该SSD可用作嵌入式存储驱动器(例如移动嵌入式存储驱动器)、企业存储驱动器(ESD)、客户端存储设备或云存储驱动器或者其他合适的存储驱动器。
数据存储设备102可被配置为经由通信路径110(诸如有线通信路径和/或无线通信路径)耦接到主机设备150。例如,数据存储设备102可包括接口108(例如主机接口),该接口经由通信路径110来实现数据存储设备102与主机设备150之间的通信,诸如在接口108通信地耦接到主机设备150时。
主机设备150可包括电子处理器和存储器。该存储器可被配置为存储可由电子处理器执行的数据和/或指令。该存储器可为单个存储器,或可包括一个或多个存储器,诸如一个或多个非易失性存储器、一个或多个易失性存储器或它们的组合。主机设备150可向数据存储设备102发出一个或多个命令,诸如在数据存储设备102的存储器104处擦除数据、从该存储器读取数据或将数据写入到该存储器的一个或多个请求。例如,主机设备150可被配置为提供要存储在存储器104处的数据(诸如用户数据132)或请求要从存储器104读取的数据。主机设备150可包括移动智能电话、音乐播放器、视频播放器、游戏控制台、电子书阅读器、个人数字助理(PDA)、计算机(诸如膝上型计算机或笔记本计算机)、它们的任何组合或其他合适的电子设备。
主机设备150经由存储器接口来通信,该存储器接口实现从存储器104读取和写入到存储器104。在一些示例中,主机设备150可遵照行业规范诸如通用闪存存储(UFS)主机控制器接口规范来操作。在其他示例中,主机设备150可遵照一种或多种其他规范诸如安全数字(SD)主机控制器规范或其他合适的行业规范来操作。主机设备150还可根据任何其他合适的通信协议来与存储器104通信。
数据存储设备102的存储器104可包括非易失性存储器(例如NAND、BiCS系列存储器或其他合适的存储器)。在一些示例中,存储器104可为任何类型的闪存存储器。例如,存储器104可为二维(2D)存储器或三维(3D)闪存存储器。存储器104可包括一个或多个存储器管芯103。该一个或多个存储器管芯103中的每一者可包括一个或多个块(例如一个或多个擦除块)。每个块可包括一组或多组存储元件,诸如代表性存储元件组107A-107N。存储元件组107A-107N可被配置为字线。存储元件组107可包括多个存储元件(例如本文称为“字串”的存储器单元),诸如分别为代表性存储元件109A和109N。
存储器104可包括支持电路(诸如读取/写入电路140)以支持该一个或多个存储器管芯103的操作。尽管被描绘为单个部件,但是读取/写入电路140可被分成存储器104的单独部件,诸如读取电路和写入电路。读取/写入电路140可在存储器104的该一个或多个存储器管芯103外部。另选地,一个或多个单独存储器管芯可包括对应读取/写入电路,该读取/写入电路可操作以从单独存储器管芯内的存储元件读取和/或写入到单独存储器管芯内的存储元件,而与任何其他存储器管芯处的任何其他读取和/或写入操作无关。
数据存储设备102包括控制器120,该控制器经由总线106、接口(例如接口电路)、另一个结构或它们的组合来耦接到存储器104(例如该一个或多个存储器管芯103)。例如,总线106可包括多个不同信道以使控制器120能够以与其他存储器管芯103的通信并行和独立的方式与该一个或多个存储器管芯103中的每一者通信。在一些具体实施中,存储器104可为闪存存储器。
控制器120被配置为从主机设备150接收数据和指令并且将数据发送到主机设备150。例如,控制器120可经由接口108将数据发送到主机设备150,并且控制器120可经由接口108从主机设备150接收数据。控制器120被配置为将数据和命令发送到存储器104并且从存储器104接收数据。例如,控制器120被配置为发送数据和写入命令以使存储器104将数据存储到存储器104的指定地址。写入命令可指定用于存储数据的存储器104的一部分的物理地址(例如存储器104的字线的物理地址)。
控制器120被配置为将读取命令发送到存储器104,以访问来自存储器104的指定地址的数据。读取命令可指定存储器104的区域的物理地址(例如存储器104的字线的物理地址)。控制器120还可被配置为将与后台扫描操作、垃圾收集操作和/或损耗均衡操作或其他合适的存储器操作相关联的数据和命令发送到存储器104。例如,控制器120被配置为根据如图6至图8所述减少邻近字线干扰的模糊-精细编程来将数据和命令发送到存储器104。
控制器120可包括可用存储器区域122、存储器124、纠错码(ECC)引擎126和电子处理器128。可用存储器区域122可指示存储器104的自由区域池,诸如可用于作为写入操作的一部分而存储数据的一个或多个区域。例如,可用存储器区域122可被组织为表格或其他数据结构,其被配置为跟踪可用于写入操作的存储器104的自由区域。
图1中示出了由控制器120提供的结构和功能特征的一个示例。然而,控制器120不限于由图1中的控制器120提供的结构和功能特征。控制器120可包括未在图1中示出的更少或附加结构和功能特征。
存储器124可被配置为存储可由电子处理器128执行的数据和/或指令。存储器124可包括邻近字线干扰(NWI)减少的模糊-精细编程160以及与存储器104的使用相关联的一个或多个度量162。NWI减少的模糊-精细编程160可为可由电子处理器128执行的指令。下文参照图6至图8更详细地描述了NWI减少的模糊-精细编程160。
可在逐一存储元件的基础上、在逐一字线的基础上、在逐一块的基础上、在逐一管芯的基础上或在其他合适的基础上跟踪度量162。该一个或多个度量162可跟踪编程/擦除(P/E)计数(PEC)、位错误率(BER)、编程时间、擦除时间、对存储元件进行编程的电压脉冲数、擦除存储元件的电压脉冲数、它们的组合或与存储器104相对应的其他合适度量。
图2是示出相对于字线WL0至WL47的常规模糊-精细编程200的表格。该表格包括字线列202、字串列204、模糊列206和精细列208。在字线列202中,该表格包括与字线WL0-WL47相对应的行。在字串列204中,该表格包括与字线WL0-WL47相对应的字串。在模糊列206中,该表格包括与字串列204中的字串相对应的顺序“模糊”写入操作。在精细列208中,该表格包括与字串列204中的字串相对应的顺序“精细”写入操作。
在图2的示例中,通过顺序地以模糊状态对第一字线WL0的字串0-3进行编程来使常规模糊-精细编程200初始化。该顺序编程在图2中示出为模糊列206中的写入操作“0-3”。
在以模糊状态对第一字线WL0的字串0-3进行编程之后,常规模糊-精细编程200随后以模糊状态对第二字线WL1的字串0进行编程,然后以精细状态对第一字线WL0的字串0进行编程。该编程在图2中示出为模糊列206中的写入操作“4”并且示出为精细列208中的写入操作“5”。
常规模糊-精细编程200随后迭代地以模糊状态对一个字串进行编程,然后以精细状态对前一字线中的对应字串进行编程。该迭代编程在图2中示出为模糊列206中的写入操作“6…762”并且示出为精细列208中的对应写入操作“7…763”。
图3是示出写入在与字线WL0至WL95的块相关的字线WL0和WLn中的第一程序数据324的常规模糊-精细编程300的表格。如图3所示,该表格包括字串列302-308(例如字串0、字串1、字串2和字串3)和字线行310-322(例如字线WL0、WL1、WLn-1、WLn、WLn+1、WLn+2和WL95)。
模糊-精细编程是具有多层单元(MLC)的闪存存储器的两步编程。在模糊-精细编程的一个示例中,首先使用二进制编程步骤(其使用大阶跃脉冲来增加闪存单元中的电压电平)基于其最低有效位(LSB)值来对闪存单元进行部分编程。在二进制编程步骤之后,随后再次使用小于二进制编程阶跃脉冲的阶跃脉冲基于其中心有效位(CSB)和最高有效位(MSB)值来将闪存单元部分地编程到临时“模糊”状态。在“模糊”编程步骤之后,“精细”编程施加小于“模糊”阶跃脉冲的阶跃脉冲以设定闪存单元中的最终阈值电压状态。概括地说,模糊-精细编程是先对粗略临时值进行编程、然后将粗略临时值替换为最终细调值的编程过程。
在图3的示例中,将第一程序数据324写入在字线WL0至WLn中。剩余字线326(即,WLn+1至WL95)仍处于擦除状态并且可用于写入为WLn+1程序的一部分。
常规模糊-精细编程300不将虚拟数据写入到任何字线或跳过任何字线。类似地,常规模糊-精细编程200不将虚拟数据写入到任何字线或跳过任何字线。
图4是示出相对于常规模糊-精细编程的四个不同示例性测试402-408而言跨字线的失败位计数的示意图。如图4所示,常规模糊-精细编程的第一示例性测试402是针对在高温数据保留(HTDR)测试期间在开放块(OB)条件下编程的字线零(WL0)。常规模糊-精细编程的第二示例性测试404是针对字线零(WL0)至字线四十七(WL47)编程的OB HTDR测试。常规模糊-精细编程的第三示例性测试406是针对字线零(WL0)至字线九十四(WL94)编程的OBHTDR测试。常规模糊-精细编程的第四示例性测试408是针对字线零(WL0)至字线九十五(WL95)编程的闭合块HTDR测试。
在示例性测试402中,第一子测试具有四千字节内大约450的失败位计数410。如图4所示,“1”表示未经历编程/擦除循环的一组块。第一子测试的数据对应于该组块。
在示例性测试402中,第二子测试具有四千字节内大约500的失败位计数412。如图4所示,“100”表示在OB HTDR实验之前编程/擦除循环100次的一组块。第二子测试的数据对应于该组块。
在示例性测试402中,第三子测试具有四千字节内大约550的失败位计数414。如图4所示,“500”表示在OB HTDR实验之前编程/擦除循环500次的一组块。第三子测试的数据对应于该组块。
在示例性测试402中,第四子测试具有四千字节内大约700的失败位计数416。如图4的示例性测试402中所示,NWI明显引起字线WL0中出现失败位的尖峰。如图4所示,“1500”表示在OB HTDR实验之前编程/擦除循环1500次的一组块。第四子测试的数据对应于该组块。
在示例性测试404中,第一子测试具有四千字节内平均值为大约300的失败位计数区段418。在示例性测试404中,第二子测试具有四千字节内平均值为大约300的失败位计数区段420。在示例性测试404中,第三子测试具有四千字节内平均值为大约350的失败位计数区段422。在示例性测试404中,第四子测试具有四千字节内平均值为大约450的失败位计数区段424。如图4的示例性测试404中所示,数据保留明显引起字线WL0至WL47中出现失败位,但由于存在与WL47相邻的“虚拟”字线,任何特定字线中未出现尖峰。
在示例性测试406中,第一子测试具有四千字节内大约500的失败位计数426。在示例性测试406中,第二子测试具有四千字节内大约550的失败位计数428。在示例性测试406中,第三子测试具有四千字节内大约500的失败位计数430。在示例性测试406中,第四子测试具有四千字节内大约650的失败位计数432。如图4的示例性测试406中所示,NWI明显引起字线WL94中出现失败位的尖峰。
在示例性测试408中,第一子测试具有四千字节内大约300的失败位计数平均值。在示例性测试408中,第二子测试具有四千字节内大约300的失败位计数平均值。在示例性测试408中,第三子测试具有四千字节内大约375的失败位计数平均值。在示例性测试408中,第四子测试具有四千字节内大约450的失败位计数平均值。如图4的示例性测试408中所示,不存在引起高FBC的NWI效应,因为这是闭合块程序。
图5是示出由WLn+1程序504使用常规模糊-精细编程添加的WLn程序502中的额外电荷500的示意图。如图5所示,WLn程序502不包括额外电荷500。然而,WLn+1程序504将额外电荷引入到WLn程序502。额外电荷500增加字线WLn处的阈值电压并且表示来自WLn+1程序504的邻近字线干扰。
图6是根据本公开的一些实施方案的示出模糊-精细编程600的表格。如图6所示,该表格包括字串列602-608(例如字串0、字串1、字串2和字串3)和字线行610-622(例如字线WL0、WL1、WLn-1、WLn、WLn+1、WLn+2和WL95)。
在图6的示例中,将第一程序数据624写入在字线WL0至WLn中。然而,与如上在图3中描述的常规模糊-精细编程300不同,在模糊-精细编程600将WLn+2程序写入到剩余字线626(即,字线WLn+2至WL95)之前,模糊-精细编程600将虚拟数据写入到字线行618(即,字线WLn+1)或完全跳过字线行618。
例如,在模糊-精细编程600将第一程序数据624以精细状态写入到字线WL0至WLn之后,模糊-精细编程600随后以模糊状态对字线618的字串0-3进行编程。在以模糊状态对字线620的字串0-3进行编程之前,模糊-精细编程600可使用“虚拟数据”以精细状态对字线618的字串0-3进行编程。因此,模糊-精细编程600在使用“虚拟数据”以精细状态对字线618进行编程之后以模糊状态使字线620初始化。
在以模糊状态对字线WLn+2的字串0-3进行编程之后,模糊-精细编程600随后以模糊状态对字线WLn+3的字串0进行编程,然后以精细状态对字线WLn+2的字串0进行编程。该编程类似于图2中示出为模糊列206中的写入操作“4”并且示出为精细列208中的写入操作“5”的编程。
模糊-精细编程600随后迭代地以模糊状态对一个字串进行编程,然后以精细状态对前一字线中的对应字串进行编程直到以精细状态对最后字线的最后字串进行编程(例如,字线WL95的字串3)。该迭代编程类似于图2中示出为模糊列206中的写入操作“6…756”并且示出为精细列208中的对应写入操作“7…757”的迭代编程。
另选地,在一些示例中,在模糊-精细编程600将第一程序数据624以精细状态写入到字线WL0至WLn之后,模糊-精细编程600可完全跳过字线618。在这些示例中,模糊-精细编程600随后可执行剩余字线626的迭代编程。因此,模糊-精细编程600跳过字线618,以模糊状态使字线620初始化,然后继续进行模仿如上所述的模糊-精细编程300的模糊-精细编程。
在其他示例中,模糊-精细编程600可始终完全跳过第一字线。例如,模糊-精细编程600可以以精细状态将第一程序数据写入到字线WL1至WLn,这使字线WL0保留在擦除状态,并且模糊-精细编程600可执行剩余字线626的迭代编程,这使字线618保留在擦除状态。
图7是根据本公开的一些实施方案的示出相对于减少邻近字线干扰的模糊-精细编程(称为“模糊-精细编程700”)的四个不同示例性测试702-708而言跨字线的失败位计数的示意图。图7与图4类似且相当。另外,模糊-精细编程700类似于上文在图6中描述的模糊-精细编程600。
如图7所示,第一示例性测试702是针对在高温数据保留(HTDR)测试期间字线零(WL0)编程的开放块(OB)条件的模糊-精细编程700。第二示例性测试704是针对字线零(WL0)至字线四十七(WL47)编程的OB HTDR的模糊-精细编程700。第三示例性测试706是针对字线零(WL0)至字线九十四(WL94)编程的OB HTDR的模糊-精细编程700。第四示例性测试708是针对字线零(WL0)至字线九十五(WL95)编程的闭合块HTDR的模糊-精细编程700。
在示例性测试702中,第一子测试具有四千字节内大约300的失败位计数710。在示例性测试702中,第二子测试具有四千字节内大约300的失败位计数712。在示例性测试702中,第三子测试具有四千字节内大约400的失败位计数714。在示例性测试702中,第四子测试具有四千字节内大约400的失败位计数716。如图7的示例性测试702中所示,已相对于图4的对比示例性测试402明显减少了NWI,因为示例性测试702中不存在失败位计数的尖峰。
在示例性测试704中,第一子测试具有四千字节内平均值为大约300的失败位计数区段718。在示例性测试704中,第二子测试具有四千字节内平均值为大约300的失败位计数区段720。在示例性测试704中,第三子测试具有四千字节内平均值为大约350的失败位计数区段722。在示例性测试704中,第四子测试具有四千字节内平均值为大约400的失败位计数区段724。如图7的示例性测试704中所示,已相对于图4的对比示例性测试404中的第四X明显减少了NWI。
在示例性测试706中,第一子测试具有四千字节内大约300的失败位计数726。在示例性测试706中,第二子测试具有四千字节内大约300的失败位计数728。在示例性测试706中,第三子测试具有四千字节内大约300的失败位计数730。在示例性测试706中,第四子测试具有四千字节内大约400的失败位计数732。如图7的示例性测试706中所示,已相对于图4的对比示例性测试406明显减少了NWI,因为示例性测试706中不存在失败位计数的尖峰。
在示例性测试708中,第一子测试具有四千字节内大约300的失败位计数平均值。在示例性测试708中,第二子测试具有四千字节内大约300的失败位计数平均值。在示例性测试708中,第三子测试具有四千字节内大约375的失败位计数平均值。在示例性测试708中,第四子测试具有四千字节内大约450的失败位计数平均值。如图7的示例性测试708中所示,NWI在图7的示例性测试708和图4的对比示例性测试408中无影响,因为这两个示例408和708闭合了全编程块并且闭合的全编程块使NWI没有机会对任何字线产生影响。
图8是根据本公开的一些实施方案的示出用于执行减少邻近字线干扰的模糊-精细编程的过程800的流程图。参考图1来描述图8。
方法800包括使用控制器电路和模糊-精细编程对多个字线的第一部分进行编程以存储第一程序数据(在框802处)。例如,控制器120执行NWI减少的模糊-精细编程160以对该多个字线的第一部分(例如图6的字线624)进行编程而存储第一程序数据(例如WLn程序)。
方法800包括使用控制器电路和模糊-精细编程以非精细状态对该多个字线中的一个或多个字线进行编程,该一个或多个字线与第一部分邻近(在框804处)。例如,控制器120执行NWI减少的模糊-精细编程160以便以非精细状态对该多个字线中的一个或多个字线(例如图6的字线618)进行编程,该一个或多个字线与第一部分邻近。
方法800包括使用控制器电路和模糊-精细编程对该多个字线的第二部分进行编程以存储第二程序数据,该第二部分与该一个或多个字线邻近(在框806处)。例如,控制器120执行NWI减少的模糊-精细编程160以对该多个字线的第二部分(例如图6的字线626)进行编程而存储第二程序数据(例如WLn+2程序),该第二部分与该一个或多个字线邻近。
在一些示例中,控制器120执行NWI减少的模糊-精细编程160以将该一个或多个字线保持在擦除状态,从而以非精细状态对该多个字线中的该一个或多个字线进行编程。在其他示例中,控制器120执行NWI减少的模糊-精细编程160以便以模糊状态对该一个或多个字线进行编程,从而以非精细状态对该多个字线中的该一个或多个字线进行编程。
在一些示例中,方法800还可包括以第二非精细状态对该多个字线中的第二一个或多个字线进行编程,该第二一个或多个字线与第一部分邻近并且不与该一个或多个字线邻近。例如,控制器120执行NWI减少的模糊-精细编程160以便以第二非精细状态对该多个字线中的第二一个或多个字线(WL0)进行编程,该第二一个或多个字线与第一部分邻近。
在一些示例中,控制器120执行NWI减少的模糊-精细编程160以将该第二一个或多个字线保持在擦除状态,从而以非精细状态对该多个字线中的该第二一个或多个字线进行编程。
在一些示例中,该一个或多个字线和该第二一个或多个字线各自是单个字线。在其他示例中,该一个或多个字线是单个字线并且该第二一个或多个字线是超过一个字线。在又其他示例中,该一个或多个字线是超过一个字线并且该第二一个或多个字线是单个字线。
在一些示例中,对该多个字线的第二部分进行编程以存储第二程序数据还包括以精细状态对该一个或多个字线进行编程,并且响应于以精细状态对该一个或多个字线进行编程而对该多个字线的第二部分进行编程以存储第二程序数据。
就本文所述的过程、系统、方法、启发法等而言,应当理解,尽管此类过程等的步骤已被描述为根据特定有序序列进行,但是此类过程可利用以除本文所述的次序之外的次序执行的所述步骤来实践。还应当理解,可同时执行某些步骤,可添加其他步骤,或可省略本文所述的某些步骤。换句话讲,提供本文中的过程的描述是为了说明某些实施方案,并且不应以任何方式解释为限制权利要求。
因此,应当理解,以上描述旨在是说明性的而非限制性的。在阅读以上描述之后,除所提供的示例之外的许多实施方案和应用都将显而易见。该范围不应参考以上描述来确定,而是应参考所附权利要求以及这些权利要求所享有的等同物的全部范围来确定。预期并期望本文所讨论的技术在未来会出现发展,并且所公开的系统和方法将被并入到此类未来实施方案中。总之,应当理解,本申请能够进行修改和改变。
除非在本文中作出相反的明确指示,否则权利要求书中使用的所有术语旨在被赋予如本文所述技术中知识丰富的人员所理解的其最广泛的合理构造和其普通含义。具体地讲,除非权利要求叙述了相反的明确限制,否则单数冠词诸如“一个”、“该”、“所述”等的使用应当被理解为叙述所指示的元件中的一个或多个元件。
提供说明书摘要是为了让读者快速确定技术公开的性质。应当理解所提交的内容不用来解释或限制权利要求书的范围或含义。另外,在前述具体实施方式中,可以看出,出于精简本公开的目的,在各种实施方案中将各种特征组合在一起。本公开的该方法不应被解释为反映这些受权利要求书保护的实施方案需要比在每个权利要求中明确记载的更多的特征的意图。相反,正如以下权利要求书所反映的,发明主题在于少于单个公开的实施方案的所有特征。因此,以下权利要求书据此并入到具体实施方式中,并且每个权利要求本身作为单独受权利要求书保护的主题。
Claims (20)
1.一种存储器控制器,包括:
存储器接口,所述存储器接口被配置为与具有多个字线的存储器连接;和
控制器电路,所述控制器电路被配置为:
使用模糊-精细编程对所述多个字线的第一部分进行编程以存储第一程序数据,
使用所述模糊-精细编程以非精细状态对所述多个字线中的一个或多个字线进行编程,所述一个或多个字线与所述第一部分邻近,以及
使用所述模糊-精细编程对所述多个字线的第二部分进行编程以存储第二程序数据,所述第二部分与所述一个或多个字线邻近。
2.根据权利要求1所述的存储器控制器,其中为了以所述非精细状态对所述多个字线中的所述一个或多个字线进行编程,所述控制器电路被进一步配置为将所述一个或多个字线保持在擦除状态。
3.根据权利要求1所述的存储器控制器,其中为了以所述非精细状态对所述多个字线中的所述一个或多个字线进行编程,所述控制器电路被进一步配置为以模糊状态对所述一个或多个字线进行编程。
4.根据权利要求1所述的存储器控制器,其中所述控制器电路被进一步配置为使用所述模糊-精细编程以第二非精细状态对所述多个字线中的第二一个或多个字线进行编程,所述第二一个或多个字线与所述第一部分邻近并且不与所述一个或多个字线邻近。
5.根据权利要求4所述的存储器控制器,其中为了以所述第二非精细状态对所述多个字线中的所述第二一个或多个字线进行编程,所述控制器电路被进一步配置为将所述第二一个或多个字线保持在擦除状态。
6.根据权利要求1所述的存储器控制器,其中所述一个或多个字线是单个字线。
7.根据权利要求1所述的存储器控制器,其中为了使用所述模糊-精细编程对所述多个字线的所述第二部分进行编程以存储所述第二程序数据,所述控制器电路被配置为:
以精细状态对所述一个或多个字线进行编程,并且
响应于以所述精细状态对所述一个或多个字线进行编程而对所述多个字线的所述第二部分进行编程以存储所述第二程序数据。
8.一种方法,包括:
使用控制器电路和模糊-精细编程对多个字线的第一部分进行编程以存储第一程序数据;
使用所述控制器电路和所述模糊-精细编程以非精细状态对所述多个字线中的一个或多个字线进行编程,所述一个或多个字线与所述第一部分邻近,以及
使用所述控制器电路和所述模糊-精细编程对所述多个字线的第二部分进行编程以存储第二程序数据,所述第二部分与所述一个或多个字线邻近。
9.根据权利要求8所述的方法,其中以所述非精细状态对所述多个字线中的所述一个或多个字线进行编程还包括将所述一个或多个字线保持在擦除状态。
10.根据权利要求8所述的方法,其中以所述非精细状态对所述多个字线中的所述一个或多个字线进行编程还包括以模糊状态对所述一个或多个字线进行编程。
11.根据权利要求8所述的方法,所述方法还包括:
以第二非精细状态对所述多个字线中的第二一个或多个字线进行编程,所述第二一个或多个字线与所述第一部分邻近并且不与所述一个或多个字线邻近。
12.根据权利要求11所述的方法,其中以所述第二非精细状态对所述多个字线中的所述第二一个或多个字线进行编程还包括将所述第二一个或多个字线保持在擦除状态。
13.根据权利要求8所述的方法,其中所述一个或多个字线是单个字线。
14.根据权利要求8所述的方法,其中对所述多个字线的所述第二部分进行编程以存储所述第二程序数据还包括:
以精细状态对所述一个或多个字线进行编程,并且
响应于以所述精细状态对所述一个或多个字线进行编程而对所述多个字线的所述第二部分进行编程以存储所述第二程序数据。
15.一种装置,包括:
使用模糊-精细编程对多个字线的第一部分进行编程以使用模糊-精细编程来存储第一程序数据的装置;
使用所述模糊-精细编程以非精细状态对所述多个字线中的一个或多个字线进行编程的装置,所述一个或多个字线与所述第一部分邻近;以及
使用所述模糊-精细编程对所述多个字线的第二部分进行编程以存储第二程序数据的装置,所述第二部分与所述一个或多个字线邻近。
16.根据权利要求15所述的装置,其中以所述非精细状态对所述多个字线中的所述一个或多个字线进行编程的所述装置还包括将所述一个或多个字线保持在擦除状态的装置。
17.根据权利要求15所述的装置,其中以所述非精细状态对所述多个字线中的所述一个或多个字线进行编程的所述装置还包括以模糊状态对所述一个或多个字线进行编程的装置。
18.根据权利要求15所述的装置,所述装置还包括:
使用所述模糊-精细编程以第二非精细状态对所述多个字线中的第二一个或多个字线进行编程的装置,所述第二一个或多个字线与所述第一部分邻近并且不与所述一个或多个字线邻近。
19.根据权利要求18所述的装置,其中以所述第二非精细状态对所述多个字线中的所述第二一个或多个字线进行编程的所述装置还包括将所述第二一个或多个字线保持在擦除状态的装置。
20.根据权利要求15所述的装置,其中对所述多个字线的所述第二部分进行编程以存储所述第二程序数据的所述装置还包括:
以精细状态对所述一个或多个字线进行编程的装置,以及
响应于以所述精细状态对所述一个或多个字线进行编程而对所述多个字线的所述第二部分进行编程以存储所述第二程序数据的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/887,747 US11282580B2 (en) | 2020-05-29 | 2020-05-29 | Data storage device with foggy-fine program sequence for reducing neighbor wordline interference |
US16/887,747 | 2020-05-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113808645A true CN113808645A (zh) | 2021-12-17 |
Family
ID=78509205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110366993.4A Pending CN113808645A (zh) | 2020-05-29 | 2021-04-06 | 减少邻近字线干扰的模糊精细程序序列的数据存储设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11282580B2 (zh) |
CN (1) | CN113808645A (zh) |
DE (1) | DE102021105743A1 (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090006767A1 (en) * | 2007-06-27 | 2009-01-01 | Bratin Saha | Using ephemeral stores for fine-grained conflict detection in a hardware accelerated stm |
CN102150216A (zh) * | 2008-09-11 | 2011-08-10 | 桑迪士克公司 | 具有降低的数据存储要求的存储器的多遍编程 |
US20110205817A1 (en) * | 2010-02-19 | 2011-08-25 | Samsung Electronics Co., Ltd. | Method and apparatus for managing open blocks in nonvolatile memory device |
US20120155166A1 (en) * | 2010-12-21 | 2012-06-21 | Yan Li | Alternate Page By Page Programming Scheme |
US20150113342A1 (en) * | 2013-10-17 | 2015-04-23 | Samsung Electronics Co., Ltd. | Nonvolatile memory device including dummy wordline, memory system, and method of operating memory system |
US9269445B1 (en) * | 2014-09-17 | 2016-02-23 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
CN105513635A (zh) * | 2014-09-23 | 2016-04-20 | 群联电子股份有限公司 | 编程方法、存储器存储装置及存储器控制电路单元 |
US20190325951A1 (en) * | 2018-04-20 | 2019-10-24 | SK Hynix Inc. | Memory system and operating method of memory system |
CN110870015A (zh) * | 2019-10-18 | 2020-03-06 | 长江存储科技有限责任公司 | 对存储器件进行编程和验证的方法以及相关的存储器件 |
US20200126623A1 (en) * | 2018-10-22 | 2020-04-23 | SK Hynix Inc. | Semiconductor device and operating method of the semiconductor device |
-
2020
- 2020-05-29 US US16/887,747 patent/US11282580B2/en active Active
-
2021
- 2021-03-10 DE DE102021105743.4A patent/DE102021105743A1/de active Pending
- 2021-04-06 CN CN202110366993.4A patent/CN113808645A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090006767A1 (en) * | 2007-06-27 | 2009-01-01 | Bratin Saha | Using ephemeral stores for fine-grained conflict detection in a hardware accelerated stm |
CN102150216A (zh) * | 2008-09-11 | 2011-08-10 | 桑迪士克公司 | 具有降低的数据存储要求的存储器的多遍编程 |
US20110205817A1 (en) * | 2010-02-19 | 2011-08-25 | Samsung Electronics Co., Ltd. | Method and apparatus for managing open blocks in nonvolatile memory device |
US20120155166A1 (en) * | 2010-12-21 | 2012-06-21 | Yan Li | Alternate Page By Page Programming Scheme |
US20150113342A1 (en) * | 2013-10-17 | 2015-04-23 | Samsung Electronics Co., Ltd. | Nonvolatile memory device including dummy wordline, memory system, and method of operating memory system |
US9269445B1 (en) * | 2014-09-17 | 2016-02-23 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
CN105513635A (zh) * | 2014-09-23 | 2016-04-20 | 群联电子股份有限公司 | 编程方法、存储器存储装置及存储器控制电路单元 |
US20190325951A1 (en) * | 2018-04-20 | 2019-10-24 | SK Hynix Inc. | Memory system and operating method of memory system |
CN110390984A (zh) * | 2018-04-20 | 2019-10-29 | 爱思开海力士有限公司 | 存储器系统和存储器系统的操作方法 |
US20200126623A1 (en) * | 2018-10-22 | 2020-04-23 | SK Hynix Inc. | Semiconductor device and operating method of the semiconductor device |
CN111081301A (zh) * | 2018-10-22 | 2020-04-28 | 爱思开海力士有限公司 | 半导体器件以及半导体器件的操作方法 |
CN110870015A (zh) * | 2019-10-18 | 2020-03-06 | 长江存储科技有限责任公司 | 对存储器件进行编程和验证的方法以及相关的存储器件 |
Also Published As
Publication number | Publication date |
---|---|
US20210375376A1 (en) | 2021-12-02 |
DE102021105743A1 (de) | 2021-12-02 |
US11282580B2 (en) | 2022-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10607708B2 (en) | Operation method of nonvolatile memory device and storage device | |
KR102292642B1 (ko) | 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법 | |
US9009398B2 (en) | Write operations for defect management in nonvolatile memory | |
US11625330B2 (en) | Storage device using buffer memory in read reclaim operation | |
US11183254B2 (en) | Controller and method of operating the same | |
US10861571B1 (en) | Wordline voltage overdrive methods and systems | |
CN112289360A (zh) | 读取重试阈值电压选择 | |
US9817593B1 (en) | Block management in non-volatile memory system with non-blocking control sync system | |
US11562792B2 (en) | Memory system having a non-volatile memory and a controller configured to switch a mode for controlling an access operation to the non-volatile memory | |
US11221769B2 (en) | Performing noise cancellation on a memory device using a neural network | |
CN113918379A (zh) | 存储器系统和用于控制存储器系统的方法 | |
US20200013470A1 (en) | Memory system and non-volatile semiconductor memory | |
CN113782084A (zh) | 用于解决串到串短接的存储器控制器 | |
US11036411B2 (en) | Yield improvement through block budget optimization by using a transient pool of multi-level blocks | |
US11211129B2 (en) | Nonconsecutive sensing of multilevel memory cells | |
US11282580B2 (en) | Data storage device with foggy-fine program sequence for reducing neighbor wordline interference | |
DE102021121974A1 (de) | Speicher-steuereinheit und speichersystem, welches diese enthält | |
KR20140104829A (ko) | 멀티 레벨 셀 비휘발성 메모리 시스템 | |
US20240029787A1 (en) | Memory control circuit providing die-level read retry table, memory package, and storage device | |
JP2019160379A (ja) | 半導体記憶装置及びメモリシステム | |
US20240078018A1 (en) | Storage devices calculating a wordline gap value, and methods of operating the same | |
US20240006004A1 (en) | Method for programming a memory system | |
US20240086079A1 (en) | Memory pattern management for improved data retention in memory devices | |
US20230031193A1 (en) | Memory system and operating method thereof | |
US20240135996A1 (en) | Apparatus with multi-bit cell read mechanism and methods for operating the same |
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 |