CN114490428A - 测量耐久性的方法及执行磨损均衡的方法 - Google Patents

测量耐久性的方法及执行磨损均衡的方法 Download PDF

Info

Publication number
CN114490428A
CN114490428A CN202111265668.5A CN202111265668A CN114490428A CN 114490428 A CN114490428 A CN 114490428A CN 202111265668 A CN202111265668 A CN 202111265668A CN 114490428 A CN114490428 A CN 114490428A
Authority
CN
China
Prior art keywords
memory
endurance
count value
cell count
memory block
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
Application number
CN202111265668.5A
Other languages
English (en)
Inventor
吴玄教
崔相炫
卢羌镐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN114490428A publication Critical patent/CN114490428A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital 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/5671Digital 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5644Multilevel memory comprising counting devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一种测量包括多个存储块的非易失性存储器件的耐久性的方法,所述方法包括:周期性地接收用于所述多个存储块当中的第一存储块的读取命令;基于所述读取命令,对所述第一存储块周期性地执行读取操作;基于所述读取操作的结果,周期性地输出与所述第一存储块相关联的至少一个单元计数值;响应于与所述第一存储块相关联的耐久性信息的周期性接收,周期性地存储所述耐久性信息,所述耐久性信息通过累积所述至少一个单元计数值被获得。

Description

测量耐久性的方法及执行磨损均衡的方法
相关申请的交叉引用
于2020年11月13日在韩国知识产权局提交的标题为“Method of MeasuringDurability of Nonvolatile Memory Device and Method of Performing Wear-Leveling in Storage Device Using the Same(测量非易失性存储器件的耐久性的方法及使用其在存储设备中执行磨损均衡的方法)”的韩国专利申请No.10-2020-0151649通过引用全部合并于此。
技术领域
示例实施例总体上涉及半导体集成电路,更具体地,涉及测量非易失性存储器件的耐久性的方法,以及使用测量非易失性存储器件的耐久性的方法在存储设备中执行磨损均衡的方法。
背景技术
特定类型的数据存储设备包括一个或更多个半导体存储器件。这种数据存储设备的示例包括固态驱动器(SSD)。这些类型的数据存储设备可以通过硬盘驱动器(HDD)具有各种设计和/或性能优势。潜在优势的示例包括无需移动机械部件、更高的数据访问速度、稳定性、耐久性和/或低功耗。近期,例如膝上型计算机、汽车、飞机、无人机等各种系统已经采用SSD进行数据存储。
发明内容
实施例涉及一种测量非易失性存储器件的耐久性的方法,所述非易失性存储器件包括多个存储块,所述方法包括:周期性地接收用于所述多个存储块当中的第一存储块的读取命令;基于所述读取命令,对所述第一存储块周期性地执行读取操作;基于所述读取操作的结果,周期性地输出与所述第一存储块相关联的至少一个单元计数值;以及响应于与所述第一存储块相关联的耐久性信息的周期性接收,周期性地存储所述耐久性信息,所述耐久性信息通过累积所述至少一个单元计数值被获得。
实施例还涉及一种在存储设备中执行磨损均衡的方法,所述存储设备包括存储控制器和多个非易失性存储器件,所述多个非易失性存储器件中的每个非易失性存储器件包括多个存储块,所述方法包括:通过周期性地获得与所述多个存储块当中的第一存储块相关联的至少一个单元计数值,周期性地获得与所述第一存储块相关联的耐久性信息;以及基于所述耐久性信息,将存储在所述第一存储块中的第一数据移动到第二存储块。所述的周期性地获得耐久性信息可以包括:由所述存储控制器周期性地提供用于所述第一存储块的读取命令;基于所述读取命令,对所述第一存储块周期性地执行读取操作;由所述多个非易失性存储器件,基于所述读取操作的结果,周期性地提供所述至少一个单元计数值;以及由所述存储控制器周期性地提供所述耐久性信息,所述耐久性信息通过累积所述至少一个单元计数值被获得。
实施例还涉及一种测量非易失性存储器件的耐久性的方法,所述非易失性存储器件包括多个存储块,所述方法包括:在第一时间点,接收用于所述多个存储块当中的第一存储块的第一读取命令;在所述第一时间点,基于第一读取电压,对包括在所述第一存储块中的多个存储单元当中的第一存储单元执行第一读取操作;在所述第一时间点,基于所述第一读取操作的结果生成与所述第一存储单元相关联的第一单元计数值,以输出所述第一单元计数值;在从所述第一时间点过去第一时间间隔的第二时间点,接收用于所述第一存储块的第二读取命令;在所述第二时间点,基于所述第一读取电压,对所述第一存储单元执行第二读取操作;在所述第二时间点,基于所述第二读取操作的结果生成与所述第一存储单元相关联的第二单元计数值,以输出所述第二单元计数值;基于所述第一单元计数值和所述第二单元计数值,获得与所述第一存储块相关联的第一耐久性值;以及响应于所述第一耐久性值的接收,存储所述第一耐久性值。所述第一耐久性值可以对应于所述第一存储单元当中的导通单元的数量的改变,并且所述导通单元可以表示所述第一存储单元当中的具有低于所述第一读取电压的阈值电压的存储单元。
附图说明
通过参照附图详细描述示例实施例,对于本领域技术人员,特征将变得清楚,其中:
图1是示出根据示例实施例的测量非易失性存储器件的耐久性的方法的流程图。
图2是示出根据示例实施例的存储器系统(memory system)的框图。
图3是示出根据示例实施例的非易失性存储器件的框图。
图4是在包括在图3的非易失性存储器件中的存储单元阵列中包括的存储块的示例的透视图。
图5是示出参照图4描述的存储块的等效电路的电路图。
图6是示出根据示例实施例的包括在存储器系统中的存储器控制器(memorycontroller)的示例的框图。
图7是示出图1的测量非易失性存储器件的耐久性的方法的示例的流程图。
图8A和图8B是示出图7的操作的示例的流程图。
图9、图10A和图10B是用于描述图8A和图8B的操作的图。
图11是示出图1的测量非易失性存储器件的耐久性的方法的另一示例的流程图。
图12是示出图11的操作的示例的流程图。
图13和图14是用于描述图12的操作的图。
图15是示出图1的测量非易失性存储器件的耐久性的方法的又一示例的流程图。
图16A和图16B是示出图15的操作的示例的流程图。
图17、图18A、图18B和图18C是用于描述图16A和图16B的操作的图。
图19是示出根据示例实施例的包括在存储器系统中的存储器控制器的另一示例的框图。
图20是用于描述根据示例实施例的被驱动的循环神经网络(RNN)的网络结构的示例的图。
图21是示出根据示例实施例的在存储设备中执行磨损均衡的方法的流程图。
图22是示出根据示例实施例的存储设备和包括存储设备的存储系统(storagesystem)的框图。
图23是示出图21中的将第一存储块中存储的第一数据移动到第二存储块的示例的流程图。
图24是示出根据示例实施例的在存储器件中执行磨损均衡的方法的流程图。
图25是示出根据示例实施例的包括存储系统的数据中心的框图。
具体实施方式
图1是示出根据示例实施例的测量非易失性存储器件的耐久性的方法的流程图。
参照图1,根据示例实施例的测量非易失性存储器件的耐久性的方法可以通过包括多个存储块的非易失性存储器件来执行。非易失性存储器件和包括非易失性存储器件的存储器系统的详细配置将进一步参照图2至图6进行描述。
在根据本示例实施例的测量非易失性存储器件的耐久性的方法中,可以周期性地接收用于多个存储块的读取命令(操作S100)。例如,可以周期性地接收用于多个存储块当中的第一存储块的读取命令。例如,可以从位于非易失性存储器件外部的存储器控制器接收并且可以定期接收(例如,每隔第一时间间隔接收)读取命令。
可以基于读取命令对多个存储块周期性地执行读取操作(操作S200)。例如,可以对第一存储块周期性地执行读取操作。例如,可以在同一时间点对多个存储块中的所有存储块执行读取操作。此外,可以对包括在每个存储块中的存储单元中的一部分或一些存储单元执行并且可以定期执行(例如,每隔第一时间间隔执行)读取操作。
可以基于读取操作的结果周期性地输出与多个存储块相关联的多个单元计数值(操作S300)。例如,可以周期性地输出与第一存储块相关联的至少一个单元计数值。例如,可以在同一时间点生成并输出与多个存储块相关联的多个单元计数值,并且可以生成并输出与每个存储块相关联的至少一个单元计数值。用于生成单元计数值的单元计数操作可以通过非易失性存储器件内部地执行,并且可以基于存储单元的阈值电压分布来执行。单元计数操作可以被称为大规模位计数操作。
可以响应于通过累积多个单元计数值获得的耐久性信息的周期性接收,周期性地存储与多个存储块相关联的耐久性信息(操作S400)。例如,可以响应于通过累积至少一个单元计数值获得的耐久性信息的周期性接收,周期性地存储与第一存储块相关联的耐久性信息。例如,耐久性信息可以包括与多个存储块相关联的多个耐久性值,并且每个存储块可以具有一个耐久性值。可以通过存储器控制器获得并且可以定期生成、更新和提供(例如,每隔第一时间间隔生成、更新和提供)每个耐久性值。例如,耐久性值可以对应于单元计数值的改变。
在根据本示例实施例的测量非易失性存储器件的耐久性的方法中,可以周期性地获得与每个存储块相关联的单元计数值,并且可以通过累积单元计数值来生成与每个存储块相关联的耐久性值。与基于编程/擦除(P/E)循环(cycle)的耐久性值相比,根据本示例实施例的基于单元计数值的耐久性值可以以相对低的成本获得,并且每个存储块的耐久性可以通过基于单元计数值的耐久性值来精确地和/或准确地表示。因此,可以有效地检查多个存储块的耐久性和/或磨损程度,从而可以有效地管理多个存储块。
图2是示出根据示例实施例的存储器系统的框图。
参照图2,存储器系统10可以包括存储器控制器20和非易失性存储器件40。存储器系统10可以包括将存储器控制器20与非易失性存储器件40电连接的多条信号线30。
非易失性存储器件40可以通过存储器控制器20来控制。例如,基于来自主机设备(例如,图22中的主机设备600)的请求,存储器控制器20可以将数据存储(例如,写入或编程)到非易失性存储器件40中,或者可以从非易失性存储器件40检索(例如,读取或感测)数据。
多条信号线30可以包括控制线、命令线、地址线、数据输入/输出(I/O)线和电源线。存储器控制器20可以经由命令线、地址线和控制线向非易失性存储器件40发送命令CMD、地址ADDR和控制信号CTRL。存储器控制器20可以经由数据I/O线与非易失性存储器件40交换数据信号DAT。存储器控制器20可以经由电源线向非易失性存储器件40发送电源电压PWR。虽然在图2中未示出,但是多条信号线30可以包括用于发送数据选通信号(DQS)的DQS线。在示例实施例中,多条信号线30中的至少一部分或全部信号线可以被称为通道(channel)。
图3是示出根据示例实施例的非易失性存储器件的框图。
参照图3,非易失性存储器件100可以包括存储单元阵列110、地址译码器120、页面缓冲器电路130、数据输入/输出(I/O)电路140、电压发生器150和控制电路160。
存储单元阵列110可以经由多条串选择线SSL、多条字线WL和多条接地选择线GSL连接到地址译码器120。存储单元阵列110可以经由多条位线BL连接到页面缓冲器电路130。存储单元阵列110可以包括连接到多条字线WL和多条位线BL的多个存储单元(例如,多个非易失性存储单元)。存储单元阵列110可以被划分为多个存储块BLK1、BLK2、...、BLKz,其中,每个存储块包括存储单元。此外,多个存储块BLK1、BLK2、..、BLKz中的每个存储块可以被划分为多个页面。
在示例实施例中,如将参照图4和图5进一步描述的,存储单元阵列110可以是以三维结构(或垂直结构)形成在衬底上的三维(3D)存储单元阵列。在该示例实施例中,存储单元阵列110可以包括多个单元串(例如,多个垂直NAND串),其中,多个单元串垂直定向使得至少一个存储单元位于另一存储单元之上。
控制电路160可以从外部(例如,从存储器控制器)接收命令CMD和地址ADDR,并且可以基于命令CMD和地址ADDR控制非易失性存储器件100的擦除操作、编程操作和读取操作。擦除操作可以包括执行一系列擦除循环,编程操作可以包括执行一系列编程循环。每个编程循环可以包括编程操作和编程验证操作。每个擦除循环可以包括擦除操作和擦除验证操作。读取操作可以包括正常读取操作和数据恢复读取操作。
在示例实施例中,控制电路160可以基于命令CMD生成用于控制电压发生器150的控制信号CON,可以生成用于控制页面缓冲器电路130的控制信号PBC,并且可以基于地址ADDR生成行地址R_ADDR和列地址C_ADDR。控制电路160可以将行地址R_ADDR提供给地址译码器120,并且可以将列地址C_ADDR提供给数据I/O电路140。
控制电路160可以包括用于执行参照图1描述的根据示例实施例的测量非易失性存储器件的耐久性的方法的单元计数器170。例如,单元计数器170可以执行图1的操作S300中的周期性地生成并输出多个单元计数值的操作。单元计数器170可以被称为大规模位计数器(MBC)。在示例实施例中,单元计数器170可以被设置于或位于控制电路160的外部。
如果非易失性存储器件100是NAND闪存器件,并且包括在存储单元阵列110中的多个存储单元是NAND闪存单元,则每个存储单元可以包括电荷存储层(或电荷俘获层)。每个存储单元可以依据存储在电荷存储层中的电荷数量而具有第一状态或第二状态。例如,当存储在电荷存储层中的电荷数量大于参考数量时(例如,当足够数量的电荷被存储在电荷存储层中时),每个存储单元可以具有第一状态,并且小于参考电流的电流可以流经每个存储单元。当存储在电荷存储层中的电荷数量小于或等于参考数量时(例如,当没有电荷被存储在电荷存储层中时),每个存储单元可以具有第二状态,并且大于或等于参考电流的电流可以流经每个存储单元。具有第一状态的存储单元可以被称为高状态单元(upper statecell)或关断单元,具有第二状态的存储单元可以被称为低状态单元(lower state cell)或导通单元。导通单元的数量可以基于从多个存储单元获得的感测电流(例如,通过对感测电流执行模数转换)来获得。由于可以通过执行单个感测操作对相对大量的存储单元进行计数,因此这种操作可以被称为大规模位计数操作。
地址译码器120可以经由多条串选择线SSL、多条字线WL和多条接地选择线GSL连接到存储单元阵列110。
例如,在数据擦除/写入/读取操作中,地址译码器120可以基于行地址R_ADDR将多条字线WL中的至少一条字线确定为选定字线,并且可以将多条字线WL中除了选定字线以外的其余或剩余字线确定为未选字线。
此外,在数据擦除/写入/读取操作中,地址译码器120可以基于行地址R_ADDR将多条串选择线SSL中的至少一条串选择线确定为选定串选择线,并且可以将多条串选择线SSL中除了选定串选择线以外的其余或剩余串选择线确定为未选串选择线。
此外,在数据擦除/写入/读取操作中,地址译码器120可以基于行地址R_ADDR将多条接地选择线GSL中的至少一条接地选择线确定为选定接地选择线,并且可以将多条接地选择线GSL中除了选定接地选择线以外的其余或剩余接地选择线确定为未选接地选择线。
电压发生器150可以基于电源PWR和控制信号CON生成用于非易失性存储器件100的操作的电压VS。电压VS可以经由地址译码器120施加到多条串选择线SSL、多条字线WL和多条接地选择线GSL。此外,电压发生器150可以基于电源PWR和控制信号CON生成用于数据擦除操作的擦除电压VERS。擦除电压VERS可以直接或经由多条位线BL施加到存储单元阵列110。
例如,在擦除操作期间,电压发生器150可以向存储块(例如,选定存储块)的公共源极线和/或位线BL施加擦除电压VERS,并且可以经由地址译码器120向存储块的所有字线或一部分字线施加擦除允许电压(例如,接地电压)。此外,在擦除验证操作期间,电压发生器150可以向存储块的所有字线同时施加擦除验证电压,或者顺序地向字线逐个施加擦除验证电压。
例如,在编程操作期间,电压发生器150可以经由地址译码器120向选定字线施加编程电压,并且可以向未选字线施加编程通过(pass)电压。此外,在编程验证操作期间,电压发生器150可以经由地址译码器120向选定字线施加编程验证电压,并且可以向未选字线施加验证通过电压。
此外,在正常读取操作期间,电压发生器150可以经由地址译码器120向选定字线施加读取电压,并且可以向未选字线施加读取通过电压。在数据恢复读取操作期间,电压发生器150可以经由地址译码器120向与选定字线相邻的字线施加读取电压,并且可以向选定字线施加恢复读取电压。
页面缓冲器电路130可以经由多条位线BL连接到存储单元阵列110。页面缓冲器电路130可以包括多个页面缓冲器。在示例实施例中,每个页面缓冲器可以连接到一条位线。在其他示例实施例中,每个页面缓冲器可以连接到两条或更多条位线。
页面缓冲器电路130可以存储将被编程到存储单元阵列110中的数据DAT或者可以读取从存储单元阵列110感测到的数据DAT。因此,页面缓冲器电路130可以根据非易失性存储器件100的操作模式用作写入驱动器或感测放大器。
数据I/O电路140可以经由数据线DL连接到页面缓冲器电路130。数据I/O电路140可以基于列地址C_ADDR经由页面缓冲器电路130从非易失性存储器件100的外部向存储单元阵列110提供数据DAT,或者从存储单元阵列110向非易失性存储器件100的外部提供数据DAT。
图4是在包括在图3的非易失性存储器件中的存储单元阵列中包括的存储块的示例的透视图。
参照图4,存储块BLKi可以包括以三维结构(或垂直结构)形成在衬底上的多个单元串(例如,多个垂直NAND串)。存储块BLKi可以包括沿第一方向D1、第二方向D2和第三方向D3延伸的结构。
在衬底111中可以具有第一类型的电荷载流子杂质(例如,第一导电类型)的阱。例如,衬底111可以具有通过注入诸如硼(B)的第3族元素形成的p阱。具体地,衬底111可以具有设置在n阱内的袋状p阱。在示例实施例中,衬底111具有p型阱(或p型袋状阱)。然而,衬底111的导电类型不限于p型。
沿第二方向D2布置的多个掺杂区311、312、313和314可以被设置在衬底111中/上。多个掺杂区311至314可以具有与衬底111的第一类型不同的第二类型的电荷载流子杂质(例如,第二导电类型)。在示例实施例中,第一掺杂区311至第四掺杂区314可以具有n型。然而,第一掺杂区311至第四掺杂区314的导电类型不限于n型。
沿第一方向Dl延伸的多个绝缘材料112可以沿第三方向D3顺序地设置在衬底111的位于第一掺杂区311与第二掺杂区312之间的区域上。例如,多个绝缘材料112可以沿第三方向D3被设置为间隔特定距离。例如,绝缘材料112可以包括诸如氧化物层的绝缘材料。
沿第三方向D3穿过绝缘材料的多个柱体113可以沿第一方向D1顺序地设置在衬底111的位于第一掺杂区311与第二掺杂区312之间的区域上。例如,多个柱体113可以穿过绝缘材料112以接触衬底111。
在示例实施例中,每个柱体113可以包括多种材料。例如,每个柱体113的沟道层114可以包括具有第一导电类型的硅材料。例如,每个柱体113的沟道层114可以包括与衬底111具有相同导电类型的硅材料。在示例实施例中,每个柱体113的沟道层114包括p型硅。然而,每个柱体113的沟道层114不限于p型硅。
每个柱体113的内部材料115可以包括绝缘材料。例如,每个柱体113的内部材料115可以包括诸如氧化硅的绝缘材料。在示例实施例中,每个柱体113的内部材料115可以包括空气间隙。如在此所描述的,术语“空气”可以指大气空气或在制造过程中可能存在的其他气体。
绝缘层116可以沿绝缘材料112、柱体113和衬底111的暴露表面被设置在第一掺杂区311与第二掺杂区312之间的区域上。例如,设置在绝缘材料112的表面上的绝缘层116可以被插入在柱体113与多个堆叠的第一导电材料211、221、231、241、251、261、271、281和291之间。在示例实施例中,绝缘层116可以不被设置在与接地选择线GSL(例如,211)和串选择线SSL(例如,291)对应的第一导电材料211至291之间。在该示例实施例中,接地选择线GSL是堆叠的第一导电材料211至291中的最下面的导电材料,串选择线SSL是堆叠的第一导电材料211至291中的最上面的导电材料。
多个第一导电材料211至291可以被设置在位于第一掺杂区311与第二掺杂区312之间的区域中的绝缘层116的表面上。例如,沿第一方向D1延伸的第一导电材料211可以被设置在与衬底111相邻的绝缘材料112与衬底111之间。例如,沿第一方向D1延伸的第一导电材料211可以被设置在衬底111与位于与衬底111相邻的绝缘材料112的底部的绝缘层116之间。
沿第一方向Dl延伸的第一导电材料可以被设置在位于绝缘材料112当中的特定绝缘材料的顶部的绝缘层116与位于绝缘材料112当中的特定绝缘材料的底部的绝缘层116之间。例如,沿第一方向D1延伸的多个第一导电材料221至281可以被设置在绝缘材料112之间,并且其可以被理解为绝缘层116被设置在绝缘材料112与第一导电材料221至281之间。第一导电材料211至291可以由导电金属形成,但是在其他示例实施例中,第一导电材料211至291可以包括诸如多晶硅的导电材料。
可以在第二掺杂区312与第三掺杂区313之间的区域中设置与第一掺杂区311和第二掺杂区312上的结构相同的结构。在第二掺杂区312与第三掺杂区313之间的区域中,可以设置沿第一方向D1延伸的多个绝缘材料112。此外,沿第一方向D1顺序设置的多个柱体113可以被设置,并且沿第三方向D3穿过多个绝缘材料112。绝缘层116可以被设置在多个绝缘材料112和多个柱体113的暴露表面上,并且多个第一导电材料211至291可以沿第一方向D1延伸。类似地,可以在第三掺杂区313与第四掺杂区314之间的区域中设置与第一掺杂区311和第二掺杂区312上的结构相同的结构。
多个漏极区320可以被分别设置在多个柱体113上。漏极区320可以包括掺杂有第二类型电荷载流子杂质的硅材料。例如,漏极区320可以包括掺杂有n型掺杂剂的硅材料。在示例实施例中,漏极区320包括n型硅材料。然而,漏极区320不限于n型硅材料。
在漏极区上,可以设置沿第二方向D2延伸的多个第二导电材料331、332和333。第二导电材料331至333可以沿第一方向D1顺序地设置,同时彼此间隔开特定距离。第二导电材料331至333可以分别连接到对应区域中的漏极区320。漏极区320和沿第二方向D2延伸的第二导电材料331至333可以通过每个接触插塞连接。例如,每个接触插塞可以是由诸如金属的导电材料形成的导电插塞。第二导电材料331至333可以包括金属材料。第二导电材料331至333可以包括诸如多晶硅的导电材料。
在与图4对应的示例实施例中,第一导电材料211至291可以用于形成字线WL、串选择线SSL和接地选择线GSL。例如,第一导电材料221至281可以用于形成字线WL,其中,属于同一层的导电材料可以互连。第二导电材料331至333可以用于形成位线BL。第一导电材料211至291的层数可以根据工艺和控制技术而不同地改变。
图5是示出参照图4描述的存储块的等效电路的电路图。
图5的存储块BLKi可以以三维结构(或垂直结构)形成在衬底上。例如,包括在存储块BLKi中的多个NAND串可以在垂直于衬底的方向上形成。
参照图5,存储块BLKi可以包括连接在位线BL1、BL2和BL3与公共源极线CSL之间的多个NAND串NS11、NS12、NS13、NS21、NS22、NS23、NS31、NS32和NS33。NAND串NS11至NS33中的每个NAND串可以包括串选择晶体管SST、多个存储单元MC1、MC2、MC3、MC4、MC5、MC6、MC7和MC8以及接地选择晶体管GST。例如,位线BL1至BL3可以对应于图4中的第二导电材料331至333,并且公共源极线CSL可以通过互连图4中的第一掺杂区311至第四掺杂区314来形成。
每个串选择晶体管SST可以连接到对应的串选择线(SSL1、SSL2和SSL3之一)。多个存储单元MC1至MC8可以分别连接到对应的字线WL1、WL2、WL3、WL4、WL5、WL6、WL7和WL8。每个接地选择晶体管GST可以连接到对应的接地选择线(GSL1、GSL2和GSL3之一)。每个串选择晶体管SST可以连接到对应的位线(例如,BL1至BL3之一),并且每个接地选择晶体管GST可以连接到公共源极线CSL。在与图5对应的的示例实施例中,串选择晶体管SST中的一些串选择晶体管可以连接到相同的位线(例如,BL1至BL3之一),以将对应的NAND串连接到相同的位线,从而经由施加到合适的串选择线SSL1至SSL3和接地选择线GSL1至GSL3的选择电压进行适当的选择。
共同连接到一条位线的单元串可以形成一列,连接到一条串选择线的单元串可以形成一行。例如,连接到第一位线BL1的单元串NS11、NS21和NS31可以对应于第一列,连接到第一串选择线SSL1的单元串NS11、NS12和NS13可以形成第一行。
具有相同高度的字线(例如,WLl)可以被共同连接,接地选择线GSLl至GSL3和串选择线SSLl至SSL3可以分开。位于同一半导体层的存储单元可以共享字线。同一行中的单元串可以共享串选择线。公共源极线CSL可以共同连接到所有单元串。
在图5中,存储块BLKi被示出为连接到八条字线WL1至WL8和三条位线BL1至BL3,NAND串NS11至NS33中的每个NAND串被示出为包括八个存储单元MC1至MC8。然而,示例实施例不限于此。在示例实施例中,每个存储块可以连接到任意数量的字线和位线,每个NAND串可以包括任意数量的存储单元。
三维垂直阵列结构可以包括垂直定向的垂直NAND串,使得至少一个存储单元位于另一存储单元之上。至少一个存储单元可以包括电荷俘获层。通过引用整体合并于此的以下专利文件描述了用于包括3D垂直阵列结构的存储单元阵列的合适的配置,其中,三维存储阵列被配置为多个层级,并且在层级之间共享字线和/或位线:美国专利No.7,679,133、美国专利No.8,553,466、美国专利No.8,654,587、美国专利No.8,559,235以及美国公开专利No.2011/0233648。
虽然包括在根据示例实施例的非易失性存储器件中的存储单元阵列可以基于NAND闪存器件来描述,但是根据示例实施例的非易失性存储器件可以是任意非易失性存储器件,例如,相位随机存取存储器(PRAM)、电阻随机存取存储器(RRAM)、纳米浮栅存储器(NFGM)、聚合物随机存取存储器(PoRAM)、磁性随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、晶闸管随机存取存储器(TRAM)等。
图6是示出根据示例实施例的包括在存储器系统中的存储器控制器的示例的框图。
参照图6,存储器控制器400可以包括处理器410、存储器420、耐久性管理器430、主机接口(I/F)440、纠错码(ECC)引擎450、存储器接口460和高级加密标准(AES)引擎470。
处理器410可以响应于经由主机接口440从主机设备(例如,图22中的主机设备600)接收的命令来控制存储器控制器400的操作。例如,处理器410可以控制存储器系统(例如,图2的存储器系统10)的操作,并且可以通过采用用于操作存储器系统的固件来控制各个组件。
存储器420可以存储由处理器410执行和处理的指令和数据。例如,存储器420可以利用诸如静态随机存取存储器(SRAM)、高速缓冲存储器等具有相对小容量和高速的易失性存储器来实现。
耐久性管理器430可以执行参照图1描述的根据示例实施例的测量非易失性存储器件的耐久性的方法。例如,耐久性管理器430可以执行图1的操作S400中的生成并更新耐久性信息以及将耐久性信息提供给非易失性存储器件(例如,图2中的非易失性存储器件40)的操作。在示例实施例中,耐久性管理器430的至少一部分可以被实现为硬件。例如,耐久性管理器430的至少一部分可以被包括在基于计算机的电子系统中。在其他示例实施例中,耐久性管理器430的至少一部分可以被实现为指令代码或程序例程(例如,软件程序)。例如,指令代码或程序例程可以由基于计算机的电子系统执行,并且可以被存储在位于基于计算机的电子系统内部或外部的任意存储设备中。
用于纠错的ECC引擎450可以使用Bose-Chaudhuri-Hocquenghem(BCH)码、低密度奇偶校验(LDPC)码、turbo码、Reed-Solomon码、卷积码、递归系统码(RSC)、网格编码调制(TCM)、块编码调制(BCM)等执行编码调制,或者可以使用上述码或其他纠错码执行ECC编码和ECC解码。
主机接口440可以提供主机设备与存储器系统之间的物理连接。主机接口440可以提供与主机设备的总线格式对应的接口,以用于主机设备与存储器系统之间的通信。在示例实施例中,主机设备的总线格式可以是小型计算机系统接口(SCSI)或串行连接SCSI(SAS)接口。在其他示例实施例中,主机设备的总线格式可以是USB、快速外围组件互连(PCI)(PCIe)、高级技术附件(ATA)、并行ATA(PATA)、串行ATA(SATA)、快速非易失性存储器(NVM)(NVMe)等格式。
存储器接口460可以与非易失性存储器件交换数据。存储器接口460可以将数据传送到非易失性存储器件,或者可以接收从非易失性存储器件读取的数据。在示例实施例中,存储器接口460可以经由一个通道连接到非易失性存储器件。在其他示例实施例中,存储器接口460可以经由两个或更多个通道连接到非易失性存储器件。例如,存储器接口460可以被配置为遵循诸如Toggle式或开放式NAND闪存接口(ONFI)的标准协议。
AES引擎470可以通过使用对称密钥算法对输入到存储器控制器400的数据执行加密操作和解密操作中的至少一个。虽然未详细示出,但是AES引擎470可以包括加密模块和解密模块。例如,加密模块和解密模块可以被实现为分开模块。对于另一示例,能够执行加密操作和解密操作二者的一个模块可以被实现在AES引擎470中。
AES引擎470可以接收从存储器420发送的第一数据。加密模块可以通过使用加密密钥对从存储器420发送的第一数据进行加密并生成第二数据。第二数据可以从AES引擎470被发送到存储器420,并被存储在存储器420中。此外,AES引擎470可以接收从存储器420发送的第三数据。第三数据可以是利用与用于对第一数据进行加密的加密密钥相同的加密密钥进行加密的数据。解密模块可以利用与用于对第一数据进行加密的加密密钥相同的加密密钥对从存储器420发送的第三数据进行解密,并生成第四数据。第四数据可以从AES引擎470被发送到存储器420,并被存储在存储器420中。
图7是示出图1的测量非易失性存储器件的耐久性的方法的示例的流程图。
参照图1和图7,在与图1的操作S100对应的操作中,可以在第一时间点接收用于多个存储块的读取命令(图7的操作S110)。例如,读取命令可以是正常读取命令。对于另一示例,读取命令可以不是正常读取命令,而可以是针对测量多个存储块的耐久性的操作专门设置的读取命令。将理解,在本公开的实施例中,术语“时间点”(例如,第一时间点、第二时间点、第三时间点、以及第四时间点等)可以指一段时间。
在与图1的操作S200对应的操作中,可以在第一时间点对多个存储块执行读取操作(图7的操作S210)。例如,当多个存储块包括第一存储块至第m存储块(其中,m是大于或等于2的自然数)时,可以对所有的第一存储块至第m存储块顺序地或基本同时地执行读取操作。例如,可以对每个存储块执行一次读取操作,并且可以仅对每个存储块中的一些存储单元执行读取操作。
在与图1的操作S300对应的操作中,可以基于图7的操作S210中的读取操作的结果,在第一时间点输出与多个存储块相关联的多个单元计数值(图7的操作S310)。例如,可以针对每个存储块生成并输出一个单元计数值,因此,当多个存储块包括第一存储块至第m存储块时,可以生成并输出总共m个单元计数值。
之后,在与图1的操作S100对应的操作中,可以在从第一时间点过去第一时间间隔的第二时间点接收用于多个存储块的读取命令(图7的操作S120)。图7的操作S120中的读取命令可以与图7的操作S110中的读取命令基本相同。
在与图1的操作S200对应的操作中,可以在第二时间点对多个存储块执行读取操作(图7的操作S220)。图7的操作S220可以与图7的操作S210类似。例如,可以对与被执行了操作S210中的读取操作的存储单元相同的存储单元执行操作S220。
在与图1的操作S300对应的操作中,可以基于图7的操作S220中的读取操作的结果,在第二时间点输出与多个存储块相关联的多个单元计数值(图7的操作S320)。图7的操作S320可以与图7的操作S310类似。例如,可以生成并输出数量与在操作S310中生成并输出的单元计数值的数量相同的单元计数值。
在与图1的操作S400对应的操作中,可以响应于通过累积在图7的操作S310和S320中生成并输出的单元计数值获得的耐久性信息的接收,存储与多个存储块相关联的耐久性信息(图7的操作S420)。例如,可以针对每个存储块获得一个耐久性值,因此当多个存储块包括第一存储块至第m存储块时,可以接收并存储包括总共m个耐久性值的耐久性信息。例如,操作S420可以在第二时间点(例如,在单元计数值被输出之后)执行。
图8A和图8B是示出图7的操作的示例的流程图。图8A示出图7中的在第一时间点的操作的示例,图8B示出图7中的在第二时间点的操作的示例。图8A和图8B示出针对一个存储块(例如,第一存储块)的操作。
参照图7和图8A,在与图7的操作S110对应的操作中,可以在第一时间点接收用于第一存储块的读取命令(图8A的操作S112)。在与图7的操作S210对应的操作中,可以在第一时间点基于第一读取电压对包括在第一存储块中的多个存储单元当中的第一存储单元执行读取操作(图8A的操作S212)。将参照图9详细描述操作S112和操作S212。
在示例实施例中,第一存储单元可以与连接到第一存储块的多条字线当中的第一字线连接。仅当使用位于同一位置的字线和存储单元的阈值电压分布来周期性地获得单元计数值时,才可以准确地检查存储块的耐久性,因此可以在初始操作时间预先确定第一字线和第一存储单元。因此,可以对预定的特定字线和存储单元执行读取操作和单元计数操作。在示例实施例中,第一存储单元可以连接到两条或更多条字线。
在示例实施例中,第一字线可以是连接到第一存储块的多条字线当中的边缘字线。边缘字线可以表示邻近存储块的边缘布置的字线,边缘存储单元可以表示连接到边缘字线并且邻近存储块的边缘布置的存储单元。通常,边缘字线和边缘存储单元可以具有相对低(或差)的耐久性和大的阈值电压分布改变,并且边缘字线和边缘存储单元可以分别被称为弱字线和弱存储单元。弱字线和弱存储单元可以被预先确定为第一字线和第一存储单元。
在示例实施例中,当读取命令是正常读取命令时,可以与读取命令一起提供针对第一字线和第一存储单元的读取地址,可以基于读取地址访问第一字线和第一存储单元,并可以执行读取操作。在其他示例实施例中,当读取命令是针对测量多个存储块的耐久性的操作专门设置的读取命令时,由于第一字线和第一存储单元被预先确定和固定,因此可以直接访问第一字线和第一存储单元,而无需读取地址,并可以执行读取操作。
在与图7的操作S310对应的操作中,可以在第一时间点基于图8A的操作S212中的读取操作的结果来生成并输出与第一存储单元相关联的第一单元计数值(图8A的操作S312)。例如,操作S312可以由图3中的单元计数器170执行。将参照图10A进一步描述操作S312。
在示例实施例中,第一单元计数值可以表示在第一时间点第一存储单元当中的导通单元的数量。例如,导通单元可以表示第一存储单元当中的具有低于第一读取电压的阈值电压的存储单元。
参照图7和图8B,在与图7的操作S120对应的操作中,可以在第二时间点接收用于第一存储块的读取命令(图8B的操作S122)。在与图7的操作S220对应的操作中,可以在第二时间点基于第一读取电压对第一存储单元执行读取操作(图8B的操作S222)。在与图7的操作S320对应的操作中,可以在第二时间点基于图8B的操作S222中的读取操作的结果来生成并输出与第一存储单元相关联的第二单元计数值(图8B的操作S322)。操作S122、操作S222和操作S322可以分别与图8A中的操作S112、操作S212和操作S312类似。
在与图7的操作S420对应的操作中,可以基于第一单元计数值和第二单元计数值获得与第一存储块相关联的第一耐久性值(图8B的操作S422),并且可以响应于第一耐久性值的接收来存储第一耐久性值(图8B的操作S424)。例如,操作S422可以由图6中的耐久性管理器430来执行。例如,第一耐久性值可以被存储在第一存储块中或非易失性存储器件中的用于存储和/或管理耐久性信息的特定区域中。
在示例实施例中,第一耐久性值可以对应于第一存储单元当中的导通单元的数量的改变(或变化)。将参照图9、图10A和图10B进一步描述操作S422。
图9、图10A和图10B是用于描述图8A和图8B的操作的图。
参照图9、图10A和图10B,在第一时间点t,可以接收用于测量第一存储块BLK1的耐久性的读取命令RCMD。第一存储块BLK1可以包括连接到字线WL1、WL2、...、WLk(其中,k是大于或等于2的自然数)的存储单元MC1、MC2、...、MCk,第一单元计数值OCCt可以通过对连接到第一字线WL1的第一存储单元MC1执行读取操作来获得。参照图10A,第一单元计数值OCCt可以表示在第一时间点第一存储单元MC1当中的阈值电压VTH低于第一读取电压VR1的存储单元(例如,导通单元)的数量。例如,图10A中阴影部分的区域可以对应于第一单元计数值OCCt
之后,在从第一时间点t过去第一时间间隔TI1的第二时间点t+1,可以接收用于测量第一存储块BLK1的耐久性的读取命令RCMD。第二单元计数值OCCt+1可以通过对连接到第一存储块BLK1的第一字线WL1的第一存储单元MC1执行读取操作来获得。参照图10B,第二单元计数值OCCt+1可以表示在第二时间点t+1第一存储单元MC1当中的阈值电压VTH低于第一读取电压VR1的存储单元的数量。例如,图10B中阴影部分的区域可以对应于第二单元计数值OCCt+1
在图10B中,虚线可以表示在第一时间点t第一存储单元MC1的阈值电压VTH的分布,例如,图10A中示出的阈值电压的初始分布。参照图10B,第一存储单元MC1的阈值电压VTH的分布可以随着第一时间间隔TI1的流逝从虚线改变到实线。根据示例实施例,可以通过执行周期性监测来测量阈值电压VTH的分布的改变,并且可以基于这种改变的量来测量存储块的耐久性。例如,可以基于累积的单元计数值(或信息)来检查或确定阈值电压VTH的分布的改变。
在示例实施例中,可以基于等式1并使用第一单元计数值OCCt和第二单元计数值OCCt+1来获得第一耐久性值(Durability)。
[等式1]
Durability=(1-y(OCCt+I-OCCt))
在等式1中,γ表示归一化(normalization)因子。当两个或更多个单元计数值被累积时,可以计算基于等式1获得的第一耐久性值。如果单元计数值没有改变,则第一耐久性值可以被计算为1。如果单元计数值的改变增加,则第一耐久性值可以更接近于零。如果单元计数值的改变相对小,则可以确定存储块具有高(或好)的耐久性。如果单元计数值的改变相对大,则可以确定存储块具有低(或差)的耐久性。因此,可以确定第一耐久性值越大第一存储块BLK1的耐久性越高,以及可以确定第一耐久性值越小第一存储块BLK1的耐久性越低。
虽然图10A和图10B示出存储单元是三阶单元(TLC,triple-level cell)的示例,但是示例实施例不限于此,并且存储单元可以是诸如多阶单元(MLC)、四阶单元(QLC)等各种类型的存储单元之一。
图11是示出图1的测量非易失性存储器件的耐久性的方法的另一示例的流程图。关于图7重复的描述将被省略。
参照图1和图11,操作S110、操作S210、操作S310、操作S120、操作S220、操作S320和操作S420可以分别与图7中的操作S110、操作S210、操作S310、操作S120、操作S220、操作S320和操作S420基本相同。
之后,在与图1的操作S100对应的操作中,可以在从第二时间点过去第一时间间隔的第三时间点接收用于多个存储块的读取命令(图11的操作S130)。操作S130中的读取命令可以与操作S110和操作S120中的读取命令基本相同。
在与图1的操作S200对应的操作中,可以在第三时间点对多个存储块执行读取操作(图11的操作S230)。操作S230可以与操作S210和S220类似。例如,可以对与被执行了操作S210和操作S220中的读取操作的存储单元相同的存储单元执行操作S230。
在与图1的操作S300对应的操作中,可以基于图11的操作S230中的读取操作的结果,在第三时间点输出与多个存储块相关联的多个单元计数值(图11的操作S330)。操作S330可以与操作S310和操作S320类似。例如,可以生成并输出数量与在操作S310和操作S320中生成并输出的单元计数值的数量相同的单元计数值。
在与图1的操作S400对应的操作中,可以响应于通过累积在图11的操作S310、操作S320和操作S330中生成并输出的单元计数值而更新的耐久性信息的接收,存储与多个存储块相关联的耐久性信息(图11的操作S430)。操作S430可以与操作S420类似,并且用于生成耐久性值的上述等式可以被部分改变。
虽然未详细示出,但是即使在第三时间点之后也可以重复执行与操作S130、操作S230、操作S330和操作S430类似的操作。例如,可以在从第三时间点过去第一时间间隔的第四时间点执行与操作S130、操作S230、操作S330和操作S430类似的操作。
图12是示出图11的操作的示例的流程图。图12示出图11中的在第三时间点的操作以及针对一个存储块(例如,第一存储块)的操作。关于图8A和图8B重复的描述将被省略。
参照图11和图12,在与图11的操作S130对应的操作中,可以在第三时间点接收用于第一存储块的读取命令(图12的操作S132)。在与图11的操作S230对应的操作中,可以在第三时间点基于第一读取电压对第一存储单元执行读取操作(图12的操作S232)。在与图11的操作S330对应的操作中,可以在第三时间点基于图12的操作S232中的读取操作的结果来生成并输出与第一存储单元相关联的第三单元计数值(图12的操作S332)。操作S132、操作S232和操作S332可以分别与图8A中的操作S112、操作S212和操作S312类似。
在与图11的操作S430对应的操作中,可以基于第一单元计数值、第二单元计数值和第三单元计数值更新与第一存储块相关联的第一耐久性值(图12的操作S432),并且可以响应于更新的第一耐久性值的接收来存储更新的第一耐久性值(图12的操作S434)。操作S432和操作S434可以分别与图8B中的操作S422和操作S424类似。
图13和图14是用于描述图12的操作的图。关于图9、图10A和图10B重复的描述将被省略。
参照图13和图14,在第一时间点t和第二时间点t+1的操作可以与参照图9、图10A和图10B描述的操作基本相同。
之后,在从第二时间点t+1过去第一时间间隔TI1的第三时间点t+2,可以接收用于测量第一存储块BLK1的耐久性的读取命令RCMD。第三单元计数值OCCt+2可以通过对连接到第一存储块BLK1的第一字线WL1的第一存储单元MC1执行读取操作来获得。参照图14,第三单元计数值OCCt+2可以表示在第三时间点t+2第一存储单元MC1当中阈值电压VTH低于第一读取电压VR1的存储单元的数量。例如,图14中阴影部分的区域可以对应于第三单元计数值OCCt+2。在图14中,虚线可以表示在第一时间点t第一存储单元MC1的阈值电压VTH的分布,例如,图10A中示出的阈值电压的初始分布。
类似地,在第n时间点t+n-1(其中,n为大于或等于2的自然数),可以接收用于测量第一存储块BLK1的耐久性的读取命令RCMD,并且第n单元计数值OCCt+n-1可以通过对连接到第一存储块BLK1的第一字线WL1的第一存储单元MC1执行读取操作来获得。
在示例实施例中,可以基于等式2并使用第一单元计数值OCCt至第n单元计数值OCCt+n-1来获得第一耐久性值。
[公式2]
Figure BDA0003326900080000211
在等式2中,n表示累积的单元计数值的数量。当三个或更多个单元计数值被累积时,第一耐久性值可以被最终计算为每个时间间隔的单元计数值改变的平均值。
图15是示出图1的测量非易失性存储器件的耐久性的方法的又一示例的流程图。关于图7重复的描述将被省略。
参照图1和图15,在与图1的操作S100对应的操作中,可以在第一时间点接收用于多个存储块的读取命令(图15的操作S150)。图15的操作S150可以与图7中的操作S110类似。
在与图1的操作S200对应的操作中,可以在第一时间点对多个存储块执行读取操作(图15的操作S250)。图15的操作S250可以与图7中的操作S210类似,但是,与图7中的操作S210不同,可以对每个存储块执行两次或更多次读取操作。
在与图1的操作S300对应的操作中,可以基于图15的操作S250中的读取操作的结果,在第一时间点输出与多个存储块相关联的多个单元计数值(图15的操作S350)。图15的操作S350可以与图7中的操作S310类似。如上所述,由于对每个存储块执行两次或更多次读取操作,并且由于基于一次读取操作生成一个单元计数值,所以可以在图15的操作S350中,生成并输出数量大于存储块的数量的单元计数值。
在与图1的操作S400对应的操作中,可以响应于基于在图15的操作S350中生成并输出的单元计数值获得的耐久性信息的接收,存储与多个存储块相关联的耐久性信息(图15的操作S450)。与图7的示例不同,可以在第一时间点针对每个存储块生成两个或更多个单元计数值,因此即使在第一时间点也可以针对每个存储块获得一个耐久性值。
之后,在与图1的操作S100对应的操作中,可以在从第一时间点过去第一时间间隔的第二时间点接收用于多个存储块的读取命令(图15的操作S160)。在与图1的操作S200对应的操作中,可以在第二时间点对多个存储块执行读取操作(图15的操作S260)。在与图1的操作S300对应的操作中,可以基于图15的操作S260中的读取操作的结果,在第二时间点输出与多个存储块相关联的多个单元计数值(图15的操作S360)。在与图1的操作S400对应的操作中,可以响应于基于在图15的操作S360中生成并输出的单元计数值和图15的操作S450中获得的耐久性信息而更新的耐久性信息的接收,存储与多个存储块相关联的耐久性信息(图15的操作S460)。操作S160、操作S260、操作S360和操作S460可以分别与操作S150、操作S250、操作S350和操作S450类似。
虽然未详细示出,但是即使在第二时间点之后也可以重复执行与操作S160、操作S260、操作S360和操作S460类似的操作。
图16A和图16B是示出图15的操作的示例的流程图。图16A示出图15中的在第一时间点的操作示例,图16B示出图15中的在第二时间点的操作示例。图16A和图16B示出针对一个存储块(例如,第一存储块)的操作。关于图8A和图8B重复的描述将被省略。
参照图15和图16A,在与图15的操作S150对应的操作中,可以在第一时间点接收用于第一存储块的读取命令(图16A的操作S152)。在与图15的操作S250对应的操作中,可以在第一时间点,基于第一读取电压对包括在第一存储块中的多个存储单元当中的第一存储单元执行读取操作(图16A的操作S252)。在与图15的操作S350对应的操作中,可以在第一时间点基于图16A的操作S252中的读取操作的结果来生成并输出与第一存储单元相关联的第一单元计数值(图16A的操作S352)。图16A的操作S152、操作S252和操作S352可以分别与图8A中的操作S112、操作S212和操作S312类似。
之后,在与图15的操作S250对应的操作中,可以在第一时间点基于不同于第一读取电压的第二读取电压来对第一存储单元执行读取操作(图16A的操作S254)。在与图15的操作S350对应的操作中,可以在第一时间点基于图16A的操作S254中的读取操作的结果来生成并输出与第一存储单元相关联的第二单元计数值(图16A的操作S354)。除了读取电压被改变之外,操作S254和操作S354可以分别与操作S252和操作S352类似。
在与图15的操作S450对应的操作中,可以在第一时间点基于第一单元计数值和第二单元计数值来获得与第一存储块相关联的第一耐久性值(图16A的操作S452),并且可以响应于第一耐久性值的接收,存储在第一时间点的第一耐久性值(图16A的操作S454)。在示例实施例中,可以使用循环神经网络(RNN)来获得第一耐久性值。将参照图17进一步描述操作S452。
参照图15和图16B,在与图15的操作S160对应的操作中,可以在第二时间点接收用于第一存储块的读取命令(图16B的操作S162)。在与图15的操作S260对应的操作中,可以在第二时间点基于第一读取电压对第一存储单元执行读取操作(图16B的操作S262)。在与图15的操作S360对应的操作中,可以在第二时间点基于操作S262中的读取操作的结果生成并输出与第一存储单元相关联的第三单元计数值(图16B的操作S362)。在与图15的操作S260对应的操作中,可以在第二时间点基于第二读取电压对第一存储单元执行读取操作(图16B的操作S264)。在与图15的操作S360对应的操作中,可以在第二时间点基于图16B的操作S264中的读取操作的结果生成并输出与第一存储单元相关联的第四单元计数值(图16B的操作S364)。在与图15的操作S460对应的操作中,可以基于在图16A的操作S452中获得的第一时间点的第一耐久性值、第二时间点的第三单元计数值和第四单元计数值,更新与第一存储块相关联的第一耐久性值(图16B的操作S462),并且可以响应于第二时间点的更新的第一耐久性值的接收,存储更新的第一耐久性值(图16B的操作S464)。图16B的操作S162、操作S262、操作S362、操作S264、操作S364、操作S462和操作S464可以分别与图16A中的操作S152、操作S252、操作S352、操作S254、操作S354、操作S452和操作S454类似。
图17、图18A、图18B和图18C是用于描述图16A和图16B的操作的图。关于图9、图10A、图10B、图13和图14重复的描述将被省略。
参照图17、图18A、图18B和图18C,如以上结合图9、图10A、图10B、图13和图14所述,可以基于第一读取电压VR1,在第一时间点t、第二时间点t+1和第三时间点t+2分别获得单元计数值OCC1t、OCC1t+1和OCC1t+2
此外,可以基于不同于第一读取电压VR1的第二读取电压VR2,在第一时间点t、第二时间点t+1和第三时间点t+2分别获得单元计数值OCC2t、OCC2t+1和OCC2t+2。除了读取电压被改变之外,图18A、图18B和图18C的示例可以分别与图10A、图10B和图14的示例基本相同。
可以使用RNN和softmax函数(附图中示出为SOFTMAX)获得第一耐久性值DVl、DVl'和DVl"。例如,在第一时间点t,可以基于单元计数值OCClt和OCC2t获得第一耐久性值DVl。在第二时间点t+1,可以基于单元计数值OCC1t+1和OCC2t+1以及先前获得的第一耐久性值DV1获得更新的第一耐久性值DV1'。在第三时间点t+2,可以基于单元计数值OCC1t+2和OCC2t+2以及先前获得的第一耐久性值DV1'获得更新的第一耐久性值DV1"。
RNN可以是用于预测时间序列数据的神经网络。累积的单元计数信息可以是时间连续的信息,因此可以使用RNN准确地测量耐久性。例如,当大量连续的单元计数信息被用作输入时,与等式相比,RNN可以准确地检测阈值电压分布的改变。softmax函数可以是将作为预测结果的分数值转换为概率值的函数。
图19是示出根据示例实施例的包括在存储器系统中的存储器控制器的另一示例的框图。关于图6重复的描述将被省略。
参照图19,存储器控制器400a可以包括处理器410、存储器420、耐久性管理器430a、主机接口440、纠错码(ECC)引擎450、存储器接口460和高级加密标准(AES)引擎470。
除了耐久性管理器430a包括神经处理单元(NPU)432之外,存储器控制器400a可以与图6的存储器控制器400基本相同。上述RNN可以由NPU432驱动和执行。
图20是用于描述根据示例实施例的被驱动的循环神经网络(RNN)的网络结构的示例的图。
参照图20,RNN可以包括使用图20的左侧示出的特定节点或单元N的重复结构。
图20的右侧示出的结构可以表示左侧示出的RNN的循环连接被展开(或打开)。术语“展开”意味着针对包括所有节点NA、NB和NC的完整的序列或整个序列写出或示出网络。例如,如果感兴趣的序列是3个词的句子,则RNN可以被展开为3层神经网络,每个词(word)一层(例如,在没有循环连接(recurrent connection)或没有循环(cycle)的情况)。
在图20的RNN中,X表示RNN的输入。例如,Xt可以是在时间步骤t的输入,Xt-1和Xt+1可以分别是在时间步骤t-1和t+1的输入。
在图20的RNN中,S表示隐藏状态。例如,St可以是在时间步骤t的隐藏状态,St-1和St+1可以分别是在时间步骤t-1和t+1的隐藏状态。隐藏状态可以基于先前的隐藏状态和当前步骤的输入来计算。例如,St=f(UXt+WSt-1)。例如,函数f可以是诸如tanh或RELU的非线性函数。用于计算第一个隐藏状态的S-1通常可以被初始化为全零。
在图20的RNN中,O表示RNN的输出。例如,Ot可以是在时间步骤t的输出,Ot-1和Ot+1可以分别是在时间步骤t-1和t+1的输出。例如,如果期望预测句子中的下一个词,则其将是词汇(vocabulary)的概率向量。例如,Ot=softmax(VSt)。
在图20的RNN中,隐藏状态可以是网络的“记忆”。因此,RNN可以具有捕获关于目前已经计算的信息的“记忆”。隐藏状态St可以捕获关于在所有先前时间步骤中发生的信息。输出Ot可以仅基于在当前时间步骤t的记忆来计算。此外,与每层使用不同参数的传统神经网络不同,RNN可以在所有时间步骤中共享相同的参数(例如,图20中的U、V和W)。这可以表示这样的事实:可以在每个步骤执行相同的任务,只是输入不同。这可以大大减少要训练或学习的参数的总数。
在根据示例实施例的方法中,针对一个存储块使用至少一个单元计数信息来测量阈值电压分布的改变,并且这样的信息应该是连续的(或累积的)。如果两个或更多个单元计数信息在特定时间点被获得,则阈值电压分布的改变可以被准确地测量。此外,获得单元计数信息的周期越短,阈值电压分布的改变可以被越快检测。然而,由于额外的读取操作被用于获得单元计数信息,因此应该在不影响性能的范围内最低限度地收集单元计数信息,并且应该适当设置获得单元计数信息的周期。此外,应该适当地设置读取电压以有效地检测阈值电压分布的改变。
图21是示出根据示例实施例的在存储设备中执行磨损均衡的方法的流程图。
参照图21,根据示例实施例的在存储设备中执行磨损均衡的方法由包括存储控制器(storage controller)和多个非易失性存储器件的存储设备执行。多个非易失性存储器件中的每个包括多个存储块。将参照图22进一步描述存储设备和包括存储设备的存储系统的详细配置。
在根据示例实施例的在存储设备中执行磨损均衡的方法中,通过周期性地获得与多个存储块相关联的多个单元计数值来周期性地获得与多个存储块相关联的耐久性信息(操作S1100)。例如,通过周期性地获得与多个存储块当中的第一存储块相关联的至少一个单元计数值来周期性地获得与第一存储块相关联的耐久性信息。可以基于参照图1至图20描述的根据示例实施例的测量非易失性存储器件的耐久性的方法来执行操作S1100。
基于耐久性信息将多个存储块当中的第一存储块中存储的第一数据移动到第二存储块(操作S1300)。将参照图23进一步描述操作S1300。
在根据示例实施例的在存储设备中执行磨损均衡的方法中,可以周期性地获得与每个存储块相关联的单元计数值,并且可以通过累积单元计数值来生成与每个存储块相关联的耐久性值。此外,可以基于耐久性值将相对大量的写入操作指定或分配给具有高耐久性的存储块。因此,存储设备可以具有相对长的寿命或提高的寿命。
图22是示出根据示例实施例的存储设备和包括存储设备的存储系统的框图。
参照图22,存储系统500可以包括主机设备600和存储设备700。
主机设备600可以控制存储系统500的整体操作。虽然在图22中未示出,但是主机设备600可以包括主机处理器和主机存储器。主机处理器可以控制主机设备600的操作。例如,主机处理器可以执行操作系统(OS)。主机存储器可以存储由主机处理器执行和/或处理的指令和/或数据。例如,由主机处理器执行的操作系统可以包括用于文件管理的文件系统和用于在操作系统级别控制包括存储设备700的外围设备的设备驱动器。
存储设备700可以被主机设备600访问。存储设备700可以包括存储控制器710、多个非易失性存储器(NVM)720a、720b和720c以及缓冲存储器730。
存储控制器710可以基于从主机设备600接收的命令和数据来控制存储设备700的操作和/或多个非易失性存储器720a、720b和720c的操作。多个非易失性存储器720a、720b和720c可以存储多个数据。例如,多个非易失性存储器720a、720b和720c可以存储元数据、各种用户数据等。缓冲存储器730可以存储由存储控制器710执行和/或处理的指令和/或数据,并且可以临时存储多个非易失性存储器720a、720b和720c中存储的数据或将要存储到多个非易失性存储器720a、720b和720c中的数据。图2的存储器系统10可以以存储设备700的形式实现。例如,存储控制器710和非易失性存储器720a、720b和720c可以分别对应于图2中的存储器控制器20和非易失性存储器件40。
包括在存储控制器710中的耐久性管理器(DM)712和NPU 714可以分别对应于图6和图19中的耐久性管理器430和NPU 432。在示例实施例中,NPU 714可以被省略或被设置在存储控制器710外部。
在示例实施例中,存储设备700可以是固态驱动器(SSD)、通用闪存(UFS)、多媒体卡(MMC)或嵌入式多媒体卡(eMMC)。在其他示例实施例中,存储设备700可以是安全数字(SD)卡、微型SD卡、记忆棒、芯片卡、通用串行总线(USB)卡、智能卡、紧凑型闪存(CF)卡中的一种。
图23是示出图21中的将第一存储块中存储的第一数据移动到第二存储块的示例的流程图。
参照图21和图23,在与图21的操作S1300对应的操作中,可以将与第一存储块相关联的第一耐久性值与参考耐久性值进行比较(图23的操作S1310)。当第一耐久性值小于参考耐久性值时(操作S1310:是),可以确定第一存储块是不能再使用的块,并且可以将第一存储块中存储的第一数据复制到第二存储块(图23的操作S1320)。当第一耐久性值大于或等于参考耐久性值时(操作S1310:否),可以保持第一存储块中存储的第一数据(图23的操作S1330)。
图24是示出根据示例实施例的在存储设备中执行磨损均衡的方法的流程图。关于图21重复的描述将被省略。
参照图24,在根据示例实施例的在存储设备中执行磨损均衡的方法中,操作S1100可以与图21中的操作S1100基本相同。
可以获得与多个存储块相关联的编程/擦除(P/E)循环信息(操作S1200)。例如,可以获得与第一存储块相关联的P/E循环信息。可以基于耐久性信息和P/E循环信息将第一存储块中存储的第一数据移动到第二存储块(操作S1300a)。因此,可以使用耐久性信息和P/E循环信息二者来执行磨损均衡。
示例实施例可以被实现为系统、方法、计算机程序产品和/或在一个或更多个计算机可读介质中实现的计算机程序产品,其中,一个或更多个计算机可读介质具有在其上实现的计算机可读程序代码。计算机可读程序代码可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是能够包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序的任意有形介质。例如,计算机可读介质可以是非暂时性计算机可读介质。
图25是示出根据示例实施例的包括存储系统的数据中心的框图。
参照图25,数据中心3000可以是收集各种类型的数据并提供各种服务的设施,并且可以被称为数据存储中心。数据中心3000可以是用于操作搜索引擎和数据库的系统,可以是由诸如银行的公司或政府机构使用的计算系统。数据中心3000可以包括应用服务器3100至3100n和存储服务器3200至3200m。应用服务器3100至3100n的数量和存储服务器3200至3200m的数量可以根据示例实施例进行不同地选择,并且应用服务器3100至3100n的数量和存储服务器3200至3200m的数量可以彼此不同。
应用服务器3100可以包括至少一个处理器3110和至少一个存储器3120,并且存储服务器3200可以包括至少一个处理器3210和至少一个存储器3220。存储服务器3200的操作将作为示例进行描述。处理器3210可以控制存储服务器3200的整体操作,并且可以访问存储器3220以执行加载在存储器3220中的指令和/或数据。存储器3220可以包括双倍数据速率(DDR)同步动态随机存取存储器(SDRAM)、高带宽存储器(HBM)、混合存储器立方体(HMC)、双列直插式存储器模块(DIMM)、Optane DIMM、非易失性DIMM(NVDIMM)等中的至少一种。包括在存储服务器3200中的处理器3210的数量和存储器3220的数量可以根据示例实施例进行不同地选择。在示例实施例中,处理器3210和存储器3220可以提供处理器-存储器对。在示例实施例中,处理器3210的数量和存储器3220的数量可以彼此不同。处理器3210可以包括单核处理器或多核处理器。存储服务器3200的以上描述可以类似地应用于应用服务器3100。应用服务器3100可以包括至少一个存储设备3150,并且存储服务器3200可以包括至少一个存储设备3250。在示例实施例中,应用服务器3100可以不包括存储设备3150。包括在存储服务器3200中的存储设备3250的数量可以根据示例实施例进行不同地选择。
应用服务器3100至3100n和存储服务器3200至3200m可以通过网络3300彼此通信。网络3300可以使用光纤信道(FC)或以太网来实现。FC可以是用于相对高速的数据传输的介质,并且提供高性能和/或高可用性的光交换机可以被使用。可以根据网络3300的访问方案将存储服务器3200至3200m设置为文件存储、块存储或对象存储。
在示例实施例中,网络3300可以是诸如存储区域网络(SAN)的仅存储网络或专用于存储的网络。例如,SAN可以是使用FC网络并根据FC协议(FCP)实现的FC-SAN。对于另一示例,SAN可以是使用传输控制协议/互联网协议(TCP/IP)网络并且根据iSCSI(TCP/IP上的SCSI或互联网SCSI)协议实现的IP-SAN。在其他示例实施例中,网络3300可以是诸如TCP/IP网络的通用或普通网络。例如,可以根据诸如以太网上的FC(FCoE)、网络附接存储(NAS)、Fabrics上的快速非易失性存储器(NVMe)(NVMe-oF)等协议中的至少一种来实现网络3300。
在下文中,将基于应用服务器3100和存储服务器3200来描述示例实施例。应用服务器3100的描述可以被应用于其他应用服务器3100n,存储服务器3200的描述可以被应用于其他存储服务器3200m。
应用服务器3100可以通过网络3300将用户或客户端请求要存储的数据存储到存储服务器3200至3200m之一中。此外,应用服务器3100可以通过网络3300从存储服务器3200至3200m之一获得用户或客户端请求要读取的数据。例如,应用服务器3100可以被实现为网络服务器或数据库管理系统(DBMS)。
应用服务器3100可以通过网络3300访问包括在其他应用服务器3100n中的存储器3120n或存储设备3150n,和/或可以通过网络3300访问包括在存储服务器3200至3200m中的存储器3220至3220m或存储设备3250至3250m。因此,应用服务器3100可以对应用服务器3100至3100n和/或存储服务器3200至3200m中存储的数据执行各种操作。例如,应用服务器3100可以执行用于在应用服务器3100至3100n和/或存储服务器3200至3200m之间移动或复制数据的命令。可以将数据从存储服务器3200至3200m的存储设备3250至3250m直接传送到应用服务器3100至3100n的存储器3120至3120n,或通过存储服务器3200至3200m的存储器3220至3220m传送到应用服务器3100至3100n的存储器3120至3120n。例如,通过网络3300传送的数据可以是用于安全或隐私的加密数据。
在存储服务器3200中,接口3254可以提供处理器3210与控制器3251之间的物理连接和/或网络接口卡(NIC)3240与控制器3251之间的物理连接。例如,接口3254可以基于直接附加存储(DAS)方案来实现,在该方案中,存储设备3250利用专用电缆直接连接。例如,接口3254可以基于诸如以下各种接口方案中的至少一种来实现:高级技术附件(ATA)、串行ATA(SATA)、外部SATA(e-SATA)、小型计算机系统接口(SCSI)、串行连接SCSI(SAS)、外围组件互连(PCI)、快速PCI(PCIe)、NVMe、IEEE 1394、通用串行总线(USB)、安全数字(SD)卡接口、多媒体卡(MMC)接口、嵌入式MMC(eMMC)接口、通用闪存(UFS)接口、嵌入式UFS(eUFS)接口、紧凑型闪存(CF)卡接口等。
存储服务器3200可以包括交换机3230和NIC 3240。交换机3230可以在处理器3210的控制下选择性地将处理器3210与存储设备3250连接,或者可以选择性地将NIC 3240与存储设备3250连接。类似地,应用服务器3100可以包括交换机3130和NIC 3140。
在示例实施例中,NIC 3240可以包括网络接口卡、网络适配器等。NIC3240可以通过有线接口、无线接口、蓝牙接口、光学接口等连接到网络3300。NIC 3240可以包括内部存储器、数字信号处理器(DSP)、主机总线接口等,并且可以通过主机总线接口连接到处理器3210和/或交换机3230。主机总线接口可以被实现为接口3254的上述示例之一。在示例实施例中,NIC 3240可以与处理器3210、交换机3230和存储设备3250中的至少一个集成。
在存储服务器3200至3200m和/或应用服务器3100至3100n中,处理器可以向存储设备3150至3150n和3250至3250m或存储器3120至3120n和3220至3220m发送命令以对数据进行编程或读取。例如,数据可以是通过纠错码(ECC)引擎纠错后的数据。例如,数据可以通过数据总线反转(DBI)或数据屏蔽(DM)被处理,并且可以包括循环冗余码(CRC)信息。例如,数据可以是用于安全或隐私的加密数据。
存储设备3150至3150n和3250至3250m可以响应于从处理器接收到的读取命令向NAND闪存器件3252至3252m发送控制信号和命令/地址信号。当从NAND闪存器件3252至3252m读取数据时,读取使能(RE)信号可以被输入为数据输出控制信号,并且可以用于将数据输出到DQ总线。可以使用RE信号生成数据选通信号(DQS)。可以基于写入使能(WE)信号的上升沿或下降沿将命令和地址信号锁存在页面缓冲器中。
控制器3251可以控制存储设备3250的整体操作。在示例实施例中,控制器3251可以包括静态随机存取存储器(SRAM)。控制器3251可以响应于写入命令将数据写入NAND闪存器件3252,或者可以响应于读取命令从NAND闪存器件3252读取数据。例如,可以从存储服务器3200中的处理器3210、其他存储服务器3200m中的处理器3210m或应用服务器3100至3100n中的处理器3110至3110n提供写入命令和/或读取命令。DRAM 3253可以临时存储(例如,可以缓冲)要写入NAND闪存器件3252的数据或从NAND闪存器件3252读取的数据。此外,DRAM 3253可以存储元数据。元数据可以是由控制器3251生成的用于管理用户数据或NAND闪存器件3252的数据。
存储设备3150至3150n和3250至3250m可以基于参照图1至图24描述的根据示例实施例的非易失性存储器件和存储设备来实现,并且可以被实现为执行参照图1至图24描述的根据示例实施例的测量非易失性存储器件的耐久性的方法和执行磨损均衡的方法。
示例实施例可以被应用于包括非易失性存储器件和存储设备的各种电子设备和系统。例如,示例实施例可以被应用于诸如以下的系统:个人计算机(PC)、服务器计算机、数据中心、工作站、移动电话、智能电话、平板计算机、膝上型计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、数码相机、便携式游戏机、音乐播放器、摄像机、视频播放器、导航设备、可穿戴设备、物联网(IoT)设备、万物互联(IoE)设备、电子书阅读器、虚拟现实(VR)设备、增强现实(AR)设备、机器人设备、无人机等。
通过总结和回顾,半导体存储器件可以根据使用情况、环境条件和其他因素而劣化。这种恶化可以导致存储数据的丢失。为了避免这种数据丢失,已经开发了各种方式来估计和控制存储器件的劣化水平,诸如监视存储器访问操作和磨损均衡。
如上所述,实施例可以提供一种测量非易失性存储器件的耐久性的方法。该方法可以有效地测量包括在非易失性存储器件中的多个存储块的耐久性。
实施例还可以提供一种使用测量非易失性存储器件的耐久性的方法在存储设备中执行磨损均衡的方法。
在根据示例实施例的测量非易失性存储器件的耐久性的方法中,可以周期性地获得与每个存储块相关联的单元计数值,并且可以通过累积单元计数值来生成与每个存储块相关联的耐久性值。可以以相对较低的成本获得基于单元计数值的耐久性值,并且可以通过基于单元计数值的耐久性值来精确地和/或准确地表示每个存储块的耐久性。因此,可以有效地检查多个存储块的耐久性和/或磨损水平,从而可以有效地管理多个存储块。
在根据示例实施例的在存储设备中执行磨损均衡的方法中,可以基于耐久性值将相对大量的写入操作指定或分配给具有高耐久性的存储块。因此,存储设备可具有相对长的寿命或提高的寿命。
在此已经公开了示例实施例,并且虽然采用了特定术语,但是它们仅以一般和描述性的意义来使用和解释,而不是为了限制的目的。在一些情况下,在提交本申请时对于本领域普通技术人员将清楚的是,除非另外特别指明,否则结合特定实施例描述的特征、特性和/或元件可以被单独使用,或与结合其他实施例描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离如所附权利要求阐述的本发明的精神和范围的情况下,可以在形式和细节上进行各种改变。

Claims (20)

1.一种测量非易失性存储器件的耐久性的方法,所述非易失性存储器件包括多个存储块,所述方法包括:
周期性地接收用于所述多个存储块当中的第一存储块的读取命令;
基于所述读取命令,对所述第一存储块周期性地执行读取操作;
基于所述读取操作的结果,周期性地输出与所述第一存储块相关联的至少一个单元计数值;
响应于与所述第一存储块相关联的耐久性信息的周期性接收,周期性地存储所述耐久性信息,所述耐久性信息通过累积所述至少一个单元计数值被获得。
2.根据权利要求1所述的方法,其中,所述的周期性地执行读取操作包括:
在第一时间点,基于第一读取电压,对包括在所述第一存储块中的多个存储单元当中的第一存储单元执行第一读取操作;以及
在从所述第一时间点过去第一时间间隔的第二时间点,基于所述第一读取电压,对所述第一存储单元执行第二读取操作。
3.根据权利要求2所述的方法,其中,所述第一存储单元与连接到所述第一存储块的多条字线当中的第一字线连接。
4.根据权利要求3所述的方法,其中,所述第一字线为连接到所述第一存储块的所述多条字线当中的边缘字线。
5.根据权利要求2所述的方法,其中,所述的周期性地输出至少一个单元计数值包括:
在第一时间点,基于所述第一读取操作的结果生成与所述第一存储单元相关联的第一单元计数值,以输出所述第一单元计数值;以及
在第二时间点,基于所述第二读取操作的结果生成与所述第一存储单元相关联的第二单元计数值,以输出所述第二单元计数值。
6.根据权利要求5所述的方法,其中,所述第一单元计数值表示在所述第一时间点所述第一存储单元当中的导通单元的数量。
7.根据权利要求6所述的方法,其中,所述导通单元表示所述第一存储单元当中的具有低于所述第一读取电压的阈值电压的存储单元。
8.根据权利要求5所述的方法,其中,所述的周期性地存储所述耐久性信息包括:
基于所述第一单元计数值和所述第二单元计数值,获得与所述第一存储块相关联的第一耐久性值;以及
响应于所述第一耐久性值的接收,存储所述第一耐久性值。
9.根据权利要求8所述的方法,其中:
所述第一耐久性值取决于所述第一存储单元当中的导通单元的数量的改变,
其中,所述第一耐久性值越大,所述第一存储块的耐久性越高,以及
其中,所述第一耐久性值越小,所述第一存储块的耐久性越低。
10.根据权利要求8所述的方法,其中,所述的周期性地执行读取操作还包括:
在从所述第二时间点过去所述第一时间间隔的第三时间点,基于所述第一读取电压对所述第一存储单元执行第三读取操作。
11.根据权利要求10所述的方法,其中,所述的周期性地输出至少一个单元计数值还包括:
在所述第三时间点,基于所述第三读取操作的结果生成与所述第一存储单元相关联的第三单元计数值,以输出所述第三单元计数值。
12.根据权利要求11所述的方法,其中,所述的周期性地存储所述耐久性信息还包括:
基于所述第一单元计数值、所述第二单元计数值和所述第三单元计数值,更新与所述第一存储块相关联的所述第一耐久性值;以及
响应于更新的第一耐久性值的接收,存储所述更新的第一耐久性值。
13.根据权利要求8所述的方法,其中,所述的周期性地执行读取操作还包括:
在所述第一时间点,基于不同于所述第一读取电压的第二读取电压,对所述第一存储单元执行第三读取操作;以及
在所述第二时间点,基于所述第二读取电压,对所述第一存储单元执行第四读取操作。
14.根据权利要求13所述的方法,其中,所述的周期性地输出至少一个单元计数值还包括:
在所述第一时间点,基于所述第三读取操作的结果生成与所述第一存储单元相关联的第三单元计数值,以输出所述第三单元计数值;以及
在所述第二时间点,基于所述第四读取操作的结果生成与所述第一存储单元相关联的第四单元计数值,以输出所述第四单元计数值。
15.根据权利要求14所述的方法,其中:
所述第一时间点的所述第一耐久性值基于所述第一单元计数值和所述第三单元计数值被获得,以及
所述第二时间点的所述第一耐久性值基于所述第二单元计数值、所述第四单元计数值和所述第一时间点的所述第一耐久性值被更新。
16.根据权利要求15所述的方法,其中,所述第一耐久性值使用循环神经网络被获得。
17.一种在存储设备中执行磨损均衡的方法,所述存储设备包括存储控制器和多个非易失性存储器件,所述多个非易失性存储器件中的每个非易失性存储器件包括多个存储块,所述方法包括:
通过周期性地获得与所述多个存储块当中的第一存储块相关联的至少一个单元计数值,周期性地获得与所述第一存储块相关联的耐久性信息;以及
基于所述耐久性信息,将存储在所述第一存储块中的第一数据移动到第二存储块,
其中,所述的周期性地获得耐久性信息包括:
由所述存储控制器周期性地提供用于所述第一存储块的读取命令;
基于所述读取命令,对所述第一存储块周期性地执行读取操作;
由所述多个非易失性存储器件,基于所述读取操作的结果,周期性地提供所述至少一个单元计数值;以及
由所述存储控制器周期性地提供所述耐久性信息,所述耐久性信息通过累积所述至少一个单元计数值被获得。
18.根据权利要求17所述的方法,其中,所述的将存储在所述第一存储块中的第一数据移动到第二存储块包括:
将与所述第一存储块相关联的第一耐久性值与参考耐久性值进行比较;以及
当所述第一耐久性值小于所述参考耐久性值时,将存储在所述第一存储块中的所述第一数据复制到所述第二存储块。
19.根据权利要求17所述的方法,还包括:
获得与所述第一存储块相关联的编程/擦除循环信息,以及
其中,基于所述耐久性信息和所述编程/擦除循环信息,存储在所述第一存储块中的所述第一数据被移动到所述第二存储块。
20.一种测量非易失性存储器件的耐久性的方法,所述非易失性存储器件包括多个存储块,所述方法包括:
在第一时间点,接收用于所述多个存储块当中的第一存储块的第一读取命令;
在所述第一时间点,基于第一读取电压,对包括在所述第一存储块中的多个存储单元当中的第一存储单元执行第一读取操作;
在所述第一时间点,基于所述第一读取操作的结果生成与所述第一存储单元相关联的第一单元计数值,以输出所述第一单元计数值;
在从所述第一时间点过去第一时间间隔的第二时间点,接收用于所述第一存储块的第二读取命令;
在所述第二时间点,基于所述第一读取电压,对所述第一存储单元执行第二读取操作;
在所述第二时间点,基于所述第二读取操作的结果生成与所述第一存储单元相关联的第二单元计数值,以输出所述第二单元计数值;
基于所述第一单元计数值和所述第二单元计数值,获得与所述第一存储块相关联的第一耐久性值;以及
响应于所述第一耐久性值的接收,存储所述第一耐久性值,
其中,所述第一耐久性值对应于所述第一存储单元当中的导通单元的数量的改变,并且所述导通单元表示所述第一存储单元当中的具有低于所述第一读取电压的阈值电压的存储单元。
CN202111265668.5A 2020-11-13 2021-10-28 测量耐久性的方法及执行磨损均衡的方法 Pending CN114490428A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0151649 2020-11-13
KR1020200151649A KR20220065296A (ko) 2020-11-13 2020-11-13 비휘발성 메모리 장치의 블록 내구성 측정 방법 및 이를 이용한 스토리지 장치의 웨어 레벨링 방법

Publications (1)

Publication Number Publication Date
CN114490428A true CN114490428A (zh) 2022-05-13

Family

ID=81492161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111265668.5A Pending CN114490428A (zh) 2020-11-13 2021-10-28 测量耐久性的方法及执行磨损均衡的方法

Country Status (3)

Country Link
US (1) US11928338B2 (zh)
KR (1) KR20220065296A (zh)
CN (1) CN114490428A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11853607B2 (en) * 2021-12-22 2023-12-26 Western Digital Technologies, Inc. Optimizing flash memory utilization for NVMe KV pair storage
KR102509549B1 (ko) * 2022-07-20 2023-03-14 삼성전자주식회사 읽기 데이터 및 산포 정보를 수신하는 스토리지 컨트롤러, 그것의 동작하는 방법, 및 그것을 포함하는 스토리지 장치의 동작하는 방법

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
KR101678909B1 (ko) * 2009-09-17 2016-11-23 삼성전자주식회사 플래시 메모리 시스템 및 그것의 소거 리프레쉬 방법
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
US10079068B2 (en) 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US9329948B2 (en) 2012-09-15 2016-05-03 Seagate Technology Llc Measuring cell damage for wear leveling in a non-volatile memory
KR102190694B1 (ko) * 2014-03-14 2020-12-14 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 동작 방법
US9336136B2 (en) 2014-10-08 2016-05-10 HGST Netherlands B.V. Apparatus, systems, and methods for providing wear leveling in solid state devices
US9727276B2 (en) 2014-12-22 2017-08-08 Sandisk Technologies Llc Measuring memory wear and data retention individually based on cell voltage distributions
US9766819B2 (en) 2014-12-30 2017-09-19 Sandisk Technologies Llc Systems and methods for managing storage endurance
CN106257594B (zh) * 2015-06-16 2021-01-05 爱思开海力士有限公司 读取干扰收回策略
KR20180027710A (ko) * 2016-09-06 2018-03-15 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법
KR102341261B1 (ko) * 2017-11-13 2021-12-20 삼성전자주식회사 매스비트 카운터를 포함하는 메모리 장치 및 그의 동작 방법
KR102504295B1 (ko) * 2017-11-24 2023-02-27 삼성전자 주식회사 비휘발성 메모리 장치 및 이의 프로그램 방법
KR102504368B1 (ko) 2017-12-22 2023-02-24 에스케이하이닉스 주식회사 비휘발성 메모리의 웨어 레벨링 동작을 관리하는 반도체 장치
US10713155B2 (en) 2018-07-19 2020-07-14 Micron Technology, Inc. Biased sampling methodology for wear leveling
US11386972B2 (en) * 2020-01-30 2022-07-12 Macronix International Co., Ltd. Determining read voltages for memory systems with machine learning

Also Published As

Publication number Publication date
KR20220065296A (ko) 2022-05-20
US20220155971A1 (en) 2022-05-19
US11928338B2 (en) 2024-03-12

Similar Documents

Publication Publication Date Title
TWI725029B (zh) 記憶體系統及其操作方法
US9715341B2 (en) Operating a memory device using a program order stamp to control a read voltage
US9921749B2 (en) Memory system and method including determining a read voltage based on program order information and a plurality of mapping tables
TW201719378A (zh) 記憶體系統及其操作方法
TWI720985B (zh) 記憶體系統及其操作方法
CN105718378B (zh) 存储系统及其操作方法
US11482263B2 (en) Non-volatile memory device, controller for controlling the same, storage device including the same, and reading method thereof
CN113918379A (zh) 存储器系统和用于控制存储器系统的方法
US11682467B2 (en) Nonvolatile memory device, controller for controlling the same, storage device including the same, and reading method of the same
US11928338B2 (en) Method of measuring durability of nonvolatile memory device and method of performing wear-leveling in storage device using the same
TW201724118A (zh) 記憶體系統及記憶體系統的操作方法
TWI716381B (zh) 資料處理系統
US11456048B2 (en) Method of predicting remaining lifetime of nonvolatile memory device and storage device performing the same
KR20170027036A (ko) 데이터 처리 시스템
KR20170014496A (ko) 메모리 시스템 및 그의 동작방법
US11675504B2 (en) Memory controller, memory system including the same, and method of operating the same
US9841918B2 (en) Flash memory device including deduplication, and related methods
US20240029814A1 (en) Non-volatile memory device, operating method thereof, controller for controlling the same, and storage device having the same
KR20170007958A (ko) 메모리 시스템
EP4184332A1 (en) Storage controller and storage device including the same
US11733875B2 (en) Method of writing data in nonvolatile memory device and nonvolatile memory device performing the same
US11862261B2 (en) Method of writing data in nonvolatile memory device, nonvolatile memory device performing the same and method of operating memory system using the same
US20230401002A1 (en) Method of writing data in storage device using write throttling and storage device performing the same
US20230114199A1 (en) Storage device
US20230144659A1 (en) Memory device, method of operating the same, and method of operating storage device including 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