CN113223590A - 存储设备和存储设备的操作方法 - Google Patents

存储设备和存储设备的操作方法 Download PDF

Info

Publication number
CN113223590A
CN113223590A CN202011294090.1A CN202011294090A CN113223590A CN 113223590 A CN113223590 A CN 113223590A CN 202011294090 A CN202011294090 A CN 202011294090A CN 113223590 A CN113223590 A CN 113223590A
Authority
CN
China
Prior art keywords
memory
read
data
storage area
storage
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
CN202011294090.1A
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 CN113223590A publication Critical patent/CN113223590A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/08Address circuits; Decoders; Word-line control circuits
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0882Page mode
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • 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
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0656Data buffering arrangements
    • 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
    • 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/5621Digital 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/5628Programming or writing circuits; Data input circuits
    • 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/5621Digital 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/5642Sensing or reading circuits; Data output circuits
    • 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/10Programming or data input circuits
    • 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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • 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/30Power supply circuits
    • 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/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • G11C16/3413Circuits or methods to recover overprogrammed nonvolatile memory cells detected during program verification, usually by means of a "soft" erasing step
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • 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
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • 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/7202Allocation control and policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

提供了存储设备和存储设备的操作方法。所述存储设备包括非易失性存储装置,所述非易失性存储装置包括第一存储区和第二存储区。所述存储设备的控制器控制所述非易失性存储装置,并且执行如下读取回收操作:读取存储在所述非易失性存储装置的所述第一存储区中的数据,并将读取到的所述数据写入所述第二存储区。所述控制器还被配置为:在所述读取回收操作中,允许所述非易失性存储装置对所述第一存储区执行样本读取操作,并基于所述样本读取操作的结果确定所述第二存储区中的将要被写入所述数据的位置。

Description

存储设备和存储设备的操作方法
相关申请的交叉引用
本申请要求于2020年2月6日在韩国知识产权局提交的韩国专利申请No.10-2020-0014421的优先权,所述韩国专利申请的公开内容通过引用整体合并于此。
技术领域
本公开的实施例涉及半导体装置,更具体地说,涉及在执行读取回收操作时保证提高的可靠性的存储设备和该存储设备的操作方法。
背景技术
存储设备是指在诸如计算机、智能电话或智能平板的主机设备的控制下存储数据的设备。存储设备包括:将数据存储在磁盘上的设备(诸如,硬盘驱动器(HDD))或将数据存储在半导体存储器(特别是诸如固态硬盘(SSD)或存储卡的非易失性存储器)中的设备。
非易失性存储器包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、相变随机存取存储器(PRAM)、磁RAM(MRAM)、电阻RAM(RRAM)、铁电RAM(FeRAM)等。
写入非易失性存储器的数据随时间流逝而劣化。例如,写入非易失性存储器的数据的可靠性可能随时间流逝而降低。在写入非易失性存储器的数据的可靠性降低的情况下,可以执行将数据写入非易失性存储器的任何其他存储空间的读取回收(reclaim)操作,以防止数据丢失。
发明内容
本公开的实施例提供一种在读取回收操作被执行时保证提高的可靠性的存储设备和该存储设备的操作方法。
根据示例性实施例,一种存储设备包括:非易失性存储装置,所述非易失性存储装置包括第一存储区和第二存储区;以及控制器,所述控制器控制所述非易失性存储装置,并且执行如下读取回收操作:读取存储在所述非易失性存储装置的所述第一存储区中的数据并将读取到的所述数据写入所述第二存储区。所述控制器还被配置为:在所述读取回收操作中,允许所述非易失性存储装置对所述第一存储区执行样本读取操作,并基于所述样本读取操作的结果确定所述第二存储区中的将要被写入所述数据的位置。
根据示例性实施例,一种存储设备(所述存储设备包括均包括两个或更多个分区的第一存储区和第二存储区)的操作方法包括:对所述第一存储区执行两次或更多次样本读取操作,以估计所述第一存储区的所述两个或更多个分区各自的读取计数;以及执行将所述第一存储区的数据写入所述第二存储区中的读取回收操作。在所述读取回收操作中,基于所述第一存储区的所述两个或更多个分区各自的所述读取计数,来调整所述第二存储区中的被写入所述第一存储区的所述两个或更多个分区中的每个分区中的数据的位置。
根据示例性实施例,一种存储设备包括非易失性存储装置以及控制器,所述非易失性存储装置包括存储块,每个所述存储块包括单元串,其中,每个所述单元串包括沿垂直于衬底的方向堆叠在所述衬底上的存储单元。在所述存储块之中的第一存储块的数据被写入第二存储块的读取回收操作中,所述控制器在所述第一存储块处执行样本读取操作,以估计所述第一存储块的所述数据的读取计数,并且根据所述读取计数确定所述第二存储块中的将要被写入所述数据的位置。
附图说明
通过结合附图详细描述本公开的示例性实施例,本公开的以上以及其他目的和特征将变得更加清楚。
图1示出根据本公开的实施例的存储设备。
图2示出在存储设备处执行读取回收操作的示例。
图3是示出根据本公开的实施例的非易失性存储装置的框图。
图4是示出图3的存储块中的一个存储块的示例的电路图。
图5是示出图4的存储块的局部结构的透视图。
图6示出图4和图5的单元串之一。
图7示出回收块将第一存储区划分为第一分区(zone)和第二分区的示例。
图8示出在基于图2的第二读取命令执行读取操作时使用的读取电压的示例。
图9示出在基于图2的第一读取命令执行样本读取操作时使用的样本读取电压的示例。
图10示出存储设备适应性地执行样本读取操作的示例。
图11示出通过另外的样本读取操作划分图7的单元串的分区的示例。
图12示出存储设备适应性地执行样本读取操作的另一示例。
图13示出回收块的示例。
图14示出属于作为读取回收操作的目标的存储块的第一单元串的数据被移动到属于另一存储块的第二单元串的示例。
图15示出属于作为读取回收操作的目标的存储块的第一单元串的数据被移动到属于另一存储块的第二单元串的另一示例。
图16示出属于作为读取回收操作的目标的存储块的第一单元串的数据被移动到属于另一存储块的第二单元串的另一示例。
图17示出以堆叠结构实现单元串的示例。
具体实施方式
下面,可以以本领域普通技术人员容易实现本公开的程度来详细且清楚地描述本公开的实施例。
图1示出了根据本公开的实施例的存储设备100。参照图1,存储设备100可以包括第一非易失性存储装置110、第二非易失性存储装置120、控制器130和缓冲存储器140。
第一非易失性存储装置110和第二非易失性存储装置120可以包括诸如以下各种非易失性存储器:闪存、相变存储器、铁电存储器、磁性存储器和电阻性存储器。为了容易地传达本公开的技术思想,假设第一非易失性存储装置110和第二非易失性存储装置120是闪存装置,但是本公开不限于此。
第一非易失性存储装置110可以通过第一信号线Sl和第二信号线S2与控制器130通信。第一信号线S1可以传送命令、地址和数据(例如,以时分方案)。第二信号线S2可以传送除了命令、地址和数据之外的控制信号。
第二非易失性存储装置120可以通过第一信号线S1和第二信号线S2与控制器130通信。第一信号线S1可以传送命令、地址和数据(例如,以时分方案)。第二信号线S2可以传送除了命令、地址和数据之外的控制信号。
第一非易失性存储装置110的第一信号线S1和第二信号线S2可以形成第一通道。第二非易失性存储装置120的第一信号线S1和第二信号线S2可以形成第二通道。第一通道和第二通道可以彼此独立。即,在控制器130的控制下,第一非易失性存储装置110和第二非易失性存储装置120可以彼此独立地执行各种操作,诸如,写入操作、读取操作和擦除操作。
控制器130可以根据外部主机设备的请求或内部指定的调度来控制第一非易失性存储装置110和第二非易失性存储装置120。控制器130可以通过使用缓冲存储器140与外部主机设备通信以及与第一非易失性存储装置110和第二非易失性存储装置120通信。
控制器130可以包括内部总线131、主机接口132、内部存储器133、处理器134、缓冲控制器135、第一存储器管理器136和第二存储器管理器137。
内部总线131可以提供在控制器130的组件之间交换信号的通道。主机接口132可以从外部主机设备接收均包括命令和地址的请求,并且可以将接收到的请求传送到处理器134。主机接口132可以通过内部总线131和缓冲控制器135将从外部主机设备接收到的数据存储在缓冲存储器140中。主机接口132可以通过缓冲控制器135和内部总线131向外部主机设备传送从缓冲存储器140接收到的数据。
内部存储器133可以是控制器130的主存储器。处理器134可以将用于驱动存储设备100的固件的代码加载到内部存储器133上。处理器134可以将用于管理第一非易失性存储装置110和第二非易失性存储装置120的第一元信息加载到内部存储器133上。内部存储器133可以包括动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)。
处理器134可以通过缓冲控制器135访问缓冲存储器140。处理器134可以执行缓冲,即,将外部主机设备与第一非易失性存储装置110和第二非易失性存储装置120之间交换的数据临时存储在缓冲存储器140中的操作。
处理器134可以将第二元信息加载到缓冲存储器140上,所述第二元信息包括:在外部主机设备中使用的第一地址(例如,逻辑地址)与在第一非易失性存储装置110和第二非易失性装置120中使用的第二地址(例如,物理地址)之间的映射信息,并且处理器134可以参考缓冲存储器140中的第二元信息。缓冲存储器140可以包括诸如DRAM、PRAM、MRAM、RRAM和FeRAM的随机存取存储器。
处理器134可以向第一存储器管理器136传送用于访问第一非易失性存储装置110的命令,例如,写入命令、读取命令和擦除命令(以及与其相关联的地址)。第一存储器管理器136可以响应于命令和地址访问第一非易失性存储装置110。
在写入操作中,第一存储器管理器136可以通过缓冲控制器135和内部总线131接收存储在缓冲存储器140中的数据,并且可以将接收到的数据传送到从第一非易失性存储装置110中选择的非易失性存储装置。在读取操作中,第一存储器管理器136可以通过内部总线131和缓冲控制器135将从选自第一非易失性存储装置110的非易失性存储装置接收到的数据传送到缓冲存储器140。
第二存储器管理器137可以在处理器134的控制下控制第二非易失性存储装置120。第二存储器管理器137可以以与第一存储器管理器136相同的方式并且独立于第一存储器管理器136来控制第二非易失性存储装置120。因此,将省略额外的描述以避免冗余。
处理器134可以包括回收块200。回收块200可以控制读取回收操作。例如,当在第一非易失性存储装置110和第二非易失性存储装置120的存储区之中的特定存储区中写入数据之后执行的读取操作的总次数大于或等于第一阈值时,可以执行(或保留)特定存储区的读取回收操作。
当在第一非易失性存储装置110和第二非易失性存储装置120的存储区之中的特定存储区中发生的读取错误的数量大于或等于第二阈值时,可以执行(或保留)特定存储区的读取回收操作。
当在第一非易失性存储装置110和第二非易失性存储装置120的存储区之中的特定存储区中发生的读取错误的数量超出可校正范围并且通过重新读取操作(在重新读取操作中,增强的错误恢复功能被激活(或启用))来存储读取错误时,则可以执行(或保留)特定存储区的读取回收操作。
当在第一非易失性存储装置110和第二非易失性存储装置120的存储区之中的特定存储区中发生不可纠正的读取错误时,可以执行(或保留)特定存储区的读取回收操作。
读取回收可以包括将第一存储区的数据移动(或复制)到第二存储区的操作。回收块200可以被配置为当在特定存储区中执行读取回收操作时,增强作为移动(或复制)的目标的数据的可靠性。
图1中示出了第一非易失性存储装置110和第二非易失性存储装置120分别通过第一通道和第二通道与控制器130通信的示例。然而,存储设备100可以被改变或修改为包括单个通道或包括两个或更多个通道。
图1中示出了两个或更多个非易失性存储装置均与一个通道连接的示例。然而,可以以一个非易失性存储装置与一个通道连接的方式来改变或修改存储设备100。
图1中示出了缓冲存储器140存在于控制器130的外部的示例。然而,可以省略缓冲存储器140。被描述为在缓冲存储器140执行的各种功能可以在内部存储器133而不是在缓冲存储器140执行。
图2示出在存储设备100处执行读取回收操作的示例。图2的读取回收操作可以由图1的回收块200执行。图2中示出了在从图1的第一非易失性存储装置110和第二非易失性存储装置120选择的非易失性存储装置110/120处执行读取回收操作的实施例。
参照图1和图2,在操作S110中,存储设备100可以执行样本读取操作。详细地,在操作S111中,控制器130可以向非易失性存储装置110/120发送第一读取命令CMD_R1和第一地址ADDR1。在操作S112中,非易失性存储装置110/120可以执行第一样本读取操作。在操作S113中,非易失性存储装置110/120可以向控制器130发送作为第一样本读取操作的结果的第一样本读取数据SRD1。
在操作S120中,存储设备100可以执行样本读取操作。详细地,在操作S121中,控制器130可以向非易失性存储装置110/120发送第一读取命令CMD_R1和第二地址ADDR2。第二地址ADDR2可以不同于第一地址ADDR1。在操作S122中,非易失性存储装置110/120可以执行第二样本读取操作。在操作S123中,非易失性存储装置110/120可以向控制器130发送作为第二样本读取操作的结果的第二样本读取数据SRD2。
在操作S130中,控制器130的回收块200可以基于第一样本读取数据SRD1和第二样本读取数据SRD2,确定作为非易失性存储装置110/120的读取回收操作的目标的第一存储区中的分区的回收位置。
例如,作为读取回收操作的目标的第一存储区可以划分为两个或更多个分区。第一存储区的数据将被移动(或复制)到的第二存储区也可以被划分为两个或更多个分区。回收块200可以判定是否将存储在第一存储区的每个分区中的数据移动(或复制)到第二存储区的分区中的任何分区。回收块200可以确定回收位置,从而提高通过读取回收操作移动(或复制)到第二存储区的分区的数据的可靠性。
在实施例中,可以对第一存储区中的每个分区执行样本读取操作。样本读取操作被执行的次数可以等于第一存储区中的分区数(或第二存储区中的分区数)。回收块200可以通过分别对第一存储区中的分区执行样本读取操作来检测存储在第一存储区的分区中的数据的特征。回收块200可以基于检测到的特征来确定回收位置。
在作为读取回收操作的一部分的操作S140中,控制器130可以从第一存储区读取数据。详细地,在操作S141中,控制器130可以向非易失性存储装置110/120发送第二读取命令CMD_R2和第三地址ADDR3。第二读取命令CMD_R2可以不同于第一读取命令CMD_R1。第三地址ADDR3可以与第一地址ADDR1或第二地址ADDR2相同或不同。第三地址ADDR3可以属于第一存储区的地址范围。在操作S142中,非易失性存储装置110/120可以执行第一读取操作。在操作S143中,非易失性存储装置110/120可以向控制器130发送作为第一读取操作的结果的第一读取数据RD1。
在作为读取回收操作的一部分的操作S150中,控制器130可以将数据写入第二存储区中。详细地,在操作S151中,控制器130可以向非易失性存储装置110/120发送写入命令CMD_W、第四地址ADDR4和第一写入数据WD1。第四地址ADDR4可以属于第二存储区的地址范围。第一写入数据WD1可以与第一读取数据RD1相同。在操作S152中,非易失性存储装置110/120可以执行写入操作以将第一写入数据WD1写入第二存储区。
在实施例中,存储设备100可以通过重复地执行操作S140和操作150将第一存储区的数据移动(或复制)到第二存储区。或者,存储设备100可以通过重复地执行操作S140,然后重复地执行操作150,将第一存储区的数据移动(或复制)到第二存储区。
可以以数据块(data chunk)为单位将第一存储区的数据移动(或复制)到第二存储区。存储在第一存储区中的数据可以划分为两个或更多个数据块。
在不存在从外部主机设备接收到的且待处理的请求的空闲时间期间,存储设备100可以将一个数据块从第一存储区移动(或复制)到第二存储区。之后,存储设备100可以检查是否存在从外部主机设备接收到的请求。
当存在从外部主机设备接收到的请求时,存储设备100可以执行从外部主机设备接收到的请求。当存储设备100处于没有来自外部主机设备的待处理的请求的空闲状态时,存储设备100可以将另一数据块从第一存储区移动(或复制)到第二存储区。
每个数据块的大小可以等于或不同于每个分区的大小。可以通过执行操作S140和操作S150两次以上来完成移动(或复制)每个数据块的操作。
如上所述,回收块200可以通过执行样本读取操作,针对每个分区(例如,针对第一存储区的每个分区)识别存储在第一存储区中的数据的特征。回收块200可以考虑数据的特征,来判定是否将存储在第一存储区的每个分区中的数据移动(或复制)到第二存储区的分区中的任何分区。回收块200可以确定回收位置,从而提高将要回收的数据的可靠性。
图3是示出根据本公开的实施例的非易失性存储装置110/120的框图。参照图3,非易失性存储装置110/120包括存储单元阵列151、行译码器块152、页面缓冲器块153、计数器154、数据输入和输出块155、缓冲器块156和控制逻辑块157。
存储单元阵列151包括多个存储块BLK1至BLKz。存储块BLK1至BLKz均可以包括多个存储单元。存储块BLK1至BLKz均可以通过一条或更多条接地选择线GSL、字线WL和一条或更多条串选择线SSL与行译码器块152连接。一些字线WL可以用作虚设字线。存储块BLK1至BLKz均可以通过多条位线BL与页面缓冲器块153连接。多个存储块BLK1至BLKz可以共同连接到多条位线BL。
在实施例中,多个存储块BLK1至BLKz中的每个存储块可以是擦除操作的单位(unit)。可以同时擦除属于存储块BLK1至BLKz中的一个存储块的存储单元。对于另一示例,多个存储块BLK1至BLKz中的每个存储块可以被划分为多个子块。多个子块中的每个子块可以对应于擦除操作的单位。
行译码器块152通过接地选择线GSL、字线WL和串选择线SSL与存储单元阵列151连接。行译码器块152在控制逻辑块157的控制下进行操作。
行译码器块152可以对从缓冲器块156接收到的行地址RA进行译码,并且可以基于对行地址RA译码的结果控制施加到串选择线SSL、字线WL和接地选择线GSL的电压。
页面缓冲器块153通过多条位线BL与存储单元阵列151连接。页面缓冲器块153通过多条数据线DL与数据输入和输出块155连接。页面缓冲器块153在控制逻辑块157的控制下进行操作。
在写入操作中,页面缓冲器块153可以将要写入的数据存储在存储单元中。页面缓冲器块153可以基于所存储的数据将电压施加到多条位线BL。在读取操作或者在写入操作或擦除操作中执行的验证读取操作中,页面缓冲器块153可以感测位线BL的电压并且可以存储感测结果。
计数器154可以对存储在页面缓冲器块153中的位进行计数。例如,计数器154可以对存储在页面缓冲器块153中的位之中的1或0的数量进行计数。例如,计数器154可以在与写入操作或擦除操作相关联的验证读取操作中执行计数。计数器154可以向控制逻辑块157提供计数值。
数据输入和输出块155通过多条数据线DL与页面缓冲器块153连接。数据输入和输出块155可以从缓冲器块156接收列地址CA。数据输入和输出块155可以根据列地址CA向缓冲器块156输出由页面缓冲器块153读取的数据。数据输入和输出块155可以基于列地址CA向页面缓冲器块153提供从缓冲器块156接收到的数据。
缓冲器块156可以通过第一信号线S1从外部设备接收命令CMD和地址ADDR,并且可以通过第一信号线S1与外部设备交换数据“DATA”。缓冲器块156可以在控制逻辑块157的控制下进行操作。缓冲器块156可以向控制逻辑块157提供命令CMD。缓冲器块156可以向行译码器块152提供地址ADDR的行地址RA,并且可以向数据输入和输出块155提供地址ADDR的列地址CA。缓冲器块156可以与数据输入和输出块155交换数据“DATA”。
控制逻辑块157可以通过第二信号线S2与外部设备交换控制信号CTRL。控制逻辑块157可以允许缓冲器块156路由命令CMD、地址ADDR和数据“DATA”。控制逻辑块157可以对从缓冲器块156接收到的命令CMD进行译码,并且可以基于译码后的命令来控制非易失性存储装置110/120。
在实施例中,可以以接合(bonding)方式制造非易失性存储装置110/120。可以在第一晶片上制造存储单元阵列151,并且可以在第二晶片上制造行译码器块152、页面缓冲器块153、数据输入和输出块155、缓冲器块156和控制逻辑块157。可以通过耦接第一晶片和第二晶片使得第一晶片的上表面和第二晶片的上表面彼此面对,来实现非易失性存储装置110/120。
对于另一个示例,可以以外围上单元(COP,cell over peri)的方式来制造非易失性存储装置110/120。包括行译码器块152、页面缓冲器块153、数据输入和输出块155、缓冲器块156和控制逻辑块157的外围电路可以实现在衬底上。存储单元阵列151可以实现在外围电路上方。外围电路和存储单元阵列151可以通过使用通路连接。
图4是图3的存储块BLK1至BLKz中的一个存储块BLKa的示例的电路图。参照图4,多个单元串CS可以以行和列布置在衬底SUB上。多个单元串CS可以共同连接到形成在衬底SUB上(或中)的公共源极线CSL。在图4中,示例了衬底SUB的位置以帮助理解存储块BLKa的结构。
在图4中示出了公共源极线CSL连接到单元串CS的下端的示例。然而,虽然公共源极线CSL电连接到单元串CS的下端就足够了,但是本公开不限于公共源极线CSL物理地位于单元串CS的下端的情况。在图4中示出了单元串CS以4×4矩阵布置的示例,但是,存储块BLKa中的单元串CS的数量可以增加或减少。
每行的单元串CS可以共同连接到接地选择线GSL1至GSL4之中的对应的接地选择线GSL,并且可以共同连接到第一串选择线SSL1至第四串选择线SSL4中的对应的串选择线SSL。每列的单元串可以与第一位线BL1至第四位线BL4中的对应的位线连接。为了防止附图复杂,与第二串选择线SSL2和第三串选择线SSL3连接的单元串CS被描绘为模糊的。
每个单元串CS可以包括:连接到接地选择线GSL1至GSL4中的对应的接地选择线的至少一个接地选择晶体管GST,分别与多条字线WL1至WL8连接的多个存储单元MC(例如,MC1至MC8),以及分别与串选择线SSL1、SSL2、SSL3或SSL4连接的串选择晶体管SST。
在每个单元串CS中,接地选择晶体管GST、存储单元MC和串选择晶体管SST可以沿着垂直于衬底SUB的方向串联连接,并且可以沿着垂直于衬底SUB的方向顺序地堆叠。在每个单元串CS中,存储单元MC(例如,MC1至MC8)中的至少一个存储单元可以用作虚设存储单元。虚设存储单元可以不被编程(例如,可以被禁止编程),或者可以与存储单元MC(例如,MC1至MC8)之中的除了虚设存储单元之外的其他存储单元不同地被编程。
在实施例中,位于相同高度并与一条串选择线SSL1、SSL2、SSL3或SSL4相关联的存储单元可以形成一个物理页面。一个物理页面的存储单元可以连接到一条子字线。位于相同高度的物理页面的子字线可以共同连接到一条字线。
在实施例中,位于相同高度的物理页面的子字线可以在形成子字线的高度处彼此连接。对于另一个示例,位于相同高度的物理页面的子字线可以在任何其他层(诸如,金属层)中彼此间接连接,该其他任何层的高度不同于形成子字线的高度。
图5是图4的存储块BLKa的局部结构的透视图。参照图4和图5,沿着第一方向延伸并且沿着第二方向彼此间隔开的公共源极区域CSR设置在衬底SUB上。
公共源极区域CSR可以被公共连接以形成公共源极线CSL。在实施例中,衬底SUB可以包括P型半导体材料。公共源极区域CSR可以包括N型半导体材料。例如,用于提高公共源极线CSL的导电性的导电材料可以设置在公共源极区域CSR上。
在公共源极区域CSR之间,绝缘层112和112a沿着垂直于衬底SUB的第三方向顺序地堆叠在衬底SUB上。绝缘层112和112a可以被堆叠为沿着第三方向彼此间隔开。在实施例中,绝缘层112和112a可以包括氧化硅或氮化硅。在实施例中,绝缘层112和112a之中与衬底SUB接触的绝缘层112a的厚度(例如,第三方向的厚度)可以比每个其余绝缘层112的厚度(例如,第三方向的厚度)薄。
沿着第一方向和第二方向彼此间隔开并沿着第三方向穿透绝缘层112和112a的柱状物PL设置在公共源极区域CSR之间。在实施例中,柱状物PL可以穿过绝缘层112和112a与衬底SUB接触。每个柱状物PL可以包括内部材料114、沟道层115和第一绝缘层116。
内部材料114可以包括绝缘材料或气隙。沟道层115可以包括P型半导体材料或本征半导体材料。第一绝缘层116可以包括一个或更多个绝缘层(例如,不同的绝缘层),诸如氧化硅层、氮化硅层和氧化铝层。
在公共源极区域CSR之间,第二绝缘层117设置在绝缘层112和112a的上表面和下表面以及柱状物PL的暴露的外表面上。可以去除设置在绝缘层112和112a中的最上绝缘层的上表面上的第二绝缘层117。
在每个柱状物PL中,第一绝缘层116和第二绝缘层117的彼此相邻的部分可以耦接以形成信息存储层。例如,第一绝缘层116和第二绝缘层117可以包括氧-氮-氧(ONO)或氧-氮-铝(ONA)。第一绝缘层116和第二绝缘层117可以形成隧穿绝缘层、电荷俘获层和阻挡绝缘层。
在公共源极区域CSR之间并且在绝缘层112和112a之间,导电材料CM1至CM11设置在第二绝缘层117的暴露的外表面上。导电材料CM1至CM11可以包括金属导电材料。漏极118设置在柱状物PL上。在实施例中,漏极118可以包括N型半导体材料(例如,硅)。在实施例中,漏极118可以与柱状物PL的沟道层的上表面接触。
沿着第二方向延伸并且沿着第一方向彼此间隔开的位线BL2和BL3设置在漏极118上。位线BL2和BL3与漏极118连接。在实施例中,漏极118和位线(例如,BL2和BL3)可以通过接触栓连接。位线BL2和BL3可以包括金属导电材料。
柱状物PL与第一绝缘层116和第二绝缘层117以及导电材料CM1至CM11一起形成单元串CS。每个柱状物PL与相邻于其的第一绝缘层116和第二绝缘层117以及导电材料CM1至CM11一起形成单元串。第一导电材料CM1可以与相邻于其的第一绝缘层116和第二绝缘层117以及沟道层115一起形成接地选择晶体管GST。第一导电材料CM1可以沿着第一方向延伸以形成接地选择线GSL。
第二导电材料CM2至第九导电材料CM9可以与相邻于其的第一绝缘层116和第二绝缘层117以及沟道层115一起,形成第一存储单元MC1至第八存储单元MC8(见图6)。第二导电材料CM2至第九导电材料CM9可以沿着第一方向延伸以分别形成第一字线WL1至第八字线WL8。
第十导电材料CM10可以与相邻于其的第一绝缘层116和第二绝缘层117以及沟道层115一起,形成串选择晶体管SST之中的靠近衬底SUB的下串选择晶体管。第十导电材料CM10可以沿着第一方向延伸,以形成串选择线SSL1至SSL4之中的靠近衬底SUB的下串选择线。
第十一导电材料CM11可以与相邻于其的第一绝缘层116和第二绝缘层117以及沟道层115一起,形成串选择晶体管SST之中的与位线BLl至BL4相邻的串选择晶体管。第十一导电材料CM11可以沿着第一方向延伸,以形成串选择线SSL1至SSL4之中的靠近位线BL1至BL4的上串选择线。
可以以三维(3D)存储阵列设置存储块BLKa。3D存储阵列单片地(monolithically)形成在存储单元MC(例如,MC1至MC8)的阵列的一个或更多个物理层级(level)中,该3D存储阵列具有设置在硅衬底上方的有源区以及与这些存储单元MC的操作相关联的电路。与存储单元MC的操作相关联的电路可以位于这样的衬底之上或之内。术语“单片”是指阵列的每个层级的层直接沉积在3D存储阵列的每个下一层级的层上。
通过引用并入本文的以下专利文件描述了用于三维存储阵列的合适配置,其中,三维存储阵列被配置为多个层级,并且在层级之间共享字线和/或位线:美国专利号7,679,133、8,553,466、8,654,587、8,559,235;以及美国专利公开号2011/0233648。
图5中示出了公共源极区域CSR被设置为衬底SUB的一部分的示例,但是公共源极区域CSR可以以覆盖衬底SUB的板的形式被设置。
在实施例中,作为读取回收操作的目标的第一存储区可以是一个存储块。数据通过读取回收操作将要被移动(或复制)到的第二存储区可以是另一存储块。
图6示出图4和图5的单元串CS之一。参照图1以及图4至图6,存储单元MC(例如,MC1至MC8)的尺寸可以根据距衬底SUB的距离而变化。例如,在图5和图6所示的示例中,随着距衬底SUB的距离增加,存储单元MC1至MC8的尺寸可以增加。
随着存储单元MC1至MC8的尺寸增加,存储单元MC1至MC8的编程速度会变慢。随着存储单元MC1至MC8的尺寸减小,存储单元MC1至MC8的编程速度可以变高。
在数据被写入存储单元MC1至MC8之后,可能由于各种因素导致数据的劣化(或者数据的可靠性可能会降低)。例如,由于被称为“保持(retention)”的特性,存储单元MC1至MC8的阈值电压可能随时间降低。或者,当在读取操作或写入操作中向字线施加高电压时,由于存储单元MC1至MC8的阈值电压增加而可能发生干扰。
具有高编程速度的存储单元的阈值电压会快速变化,因此,即使发生诸如保持和干扰的因素也能够维持阈值电压的鲁棒性,可能相对较弱。具有较低编程速度的存储单元的阈值电压会缓慢变化,因此,即使发生诸如保持和干扰的因素也能够维持阈值电压的鲁棒性,可能相对较强。
回收块200可以通过样本读取操作来估计第一存储区的各个分区的数据的读取频率。回收块200可以将第一存储区的特定分区(其读取频率高于第一存储区的其余分区的读取频率)的热数据存储在第二存储区的鲁棒性强的部分(例如,MC5至MC8)中。回收块200可以将第一存储区的特定分区(其读取频率低于第一存储区的其余分区的读取频率)的冷数据存储在第二存储区的鲁棒性弱的部分(例如,MC1至MC4)中。
可以通过考虑作为读取回收操作的目标的第一存储区的分区的数据的读取频率以及数据将要被移动(或复制)到的第二存储区的各个分区的鲁棒性,来执行读取回收操作,从而提高回收的数据的可靠性。
图7示出回收块200将第一存储区划分为第一分区Z1和第二分区Z2的示例。参照图1、图4、图5和图7,第五存储单元MC5至第八存储单元MC8可以属于第一分区Z1,并且第一存储单元MC1至第四存储单元MC4可以属于第二分区Z2。
回收块200可以从属于第一分区Z1的第五存储单元MC5至第八存储单元MC8选择样本存储单元(或与一条字线连接的一个物理页面的样本存储单元),并且可以对样本存储单元执行样本读取操作。
例如,回收块200可以选择具有最弱的鲁棒性(或具有最小的尺寸)的第五存储单元MC5作为样本存储单元。回收块200可以使用通过样本读取操作标识的读取计数作为存储在第一分区Z1中的所有数据的读取计数。
此外,回收块200可以从属于第二分区Z2的第一存储单元MC1至第四存储单元MC4中选择样本存储单元(或者与一条字线连接的一个物理页面的样本存储单元),并且可以对样本存储单元执行样本读取操作。
例如,回收块200可以选择具有最弱的鲁棒性(或具有最小的尺寸)的第一存储单元MC1作为样本存储单元。回收块200可以使用通过样本读取操作标识的读取计数作为存储在第二分区Z2中的所有数据的读取计数。
在实施例中,控制器130可以隔着一时间间隔执行第一分区Z1的样本读取操作和第二分区Z2的样本读取操作。控制器130可以在空闲状态下对第一分区Z1和第二分区Z2中的一个分区执行样本读取操作。之后,控制器130可以执行外部主机设备的请求。当出现另外的空闲时间时,控制器130可以对第一分区Z1和第二分区Z2中的另一个区域执行样本读取操作。
图8示出在基于图2的第二读取命令CMD_R2执行读取操作时使用的读取电压的示例。在图8中,横轴表示存储单元的阈值电压VTH,纵轴表示存储单元的数量。
参照图1、图4和图8,存储单元MC1至MC8均可以存储“n”位(n是正整数)。当在存储单元MC1至MC8中的每个存储单元存储“n”位时,被写入数据的存储单元MC1至MC8可以具有由2^n个不同的阈值电压范围表示的状态。
在实施例中,假设“n”为“3”。存储单元MC1至MC8中的每个存储单元可以具有擦除状态“E”和第一编程状态P1至第七编程状态P7中的一种状态。在读取操作中,可以使用与状态之间的电压电平相对应的第一读取电压VR1至第七读取电压VR7或其一部分。
图9示出在基于图2的第一读取命令CMD_R1执行样本读取操作时使用的样本读取电压的示例。在图9中,横轴表示存储单元的阈值电压VTH,纵轴表示存储单元的数量。
参照图1、图4和图9,样本读取电压可以包括第一电压V1和第二电压V2。第一电压V1可以属于擦除状态“E”的阈值电压范围。第一电压V1可以用于测试干扰的影响。第二电压V2可以属于第七编程状态P7的最高阈值电压范围。第二电压V2可以用于测试保持的影响。
在实施例中,控制器130可以向非易失性存储装置110/120分开发送指示使用第一电压V1的样本读取操作的第一读取命令CMD_R1以及指示使用第二电压V2的样本读取操作的第一读取命令CMD_R1。即,针对每个分区,第一读取命令CMD_R1可以被发送两次,并且样本读取操作可以被执行两次。
对于另一示例,控制器130可以向非易失性存储装置110/120发送指示使用第一电压V1和第二电压V2的样本读取操作的第一读取命令CMD_R1。即,针对每个分区,第一读取命令CMD_R1可以被发送一次,并且样本读取操作可以被执行两次。
当通过使用第一电压V1执行样本读取操作时,非易失性存储装置110/120可以将读取数据或计数值作为样本读取数据或样本读取数据的一部分输出到控制器130,或者可以存储读取数据或计数值,其中,计数值是通过对读取数据的逻辑值之中的指示导通单元(on-cell)的逻辑值(例如,“0”)的数量进行计数而获得的。导通单元是响应于第一电压V1而导通并且具有小于第一电压V1的阈值电压的存储单元。
当通过使用第二电压V2执行样本读取操作时,非易失性存储装置110/120可以将读取数据或计数值作为样本读取数据或样本读取数据的一部分输出或存储到控制器130,或者可以存储读取数据或计数值,其中,计数值是通过对读取数据的逻辑值之中的指示关断单元(off-cell)的逻辑值(例如“1”)的数量进行计数而获得的。关断单元是响应于第二电压V2而关断并且具有大于第二电压V2的阈值电压的存储单元。非易失性存储装置110/120可以向控制器130发送所存储的数据或计数值。
图10示出存储设备100适应性地执行样本读取操作的示例。参照图1和图10,在操作S210中,控制器130可以执行样本读取操作。例如,控制器130可以在空闲状态下执行样本读取操作。控制器130可以对其数量对应于默认值的分区执行样本读取操作。例如,对应于默认值的分区的数量可以是如参照图7所描述的“2”。
在操作S220中,控制器130可以判定是否维持空闲状态。当确定未维持空闲状态时(或者当存储设备100退出空闲状态时),控制器130可以终止样本读取操作。即,控制器130可以仅使用对其数量对应于默认值的分区执行的样本读取操作的结果。
当确定维持空闲状态时,在操作S230中,控制器130可以执行另外的样本读取操作以另外地细分分区。即,在维持空闲状态的情况下,分区的数量可以增加。
图11示出通过另外的样本读取操作划分图7的单元串CS的分区的示例。参照图1、图10和图11,控制器130可以将被标识为属于图7中的第一分区Z1的第五存储单元MC5至第八存储单元MC8划分为属于第一分区Z1的第五存储单元MC5和第六存储单元MC6以及属于第三分区Z3的第七存储单元MC7和第八存储单元MC8。
对第五存储单元MC5执行样本读取操作的结果可以用于估计存储在第一分区Zl中的数据的读取计数。控制器130可以对第七存储单元MC7执行另外的样本读取操作,并且可以使用该样本读取操作的结果来估计存储在第三分区Z3中的数据的读取计数。
控制器130可以将被标识为属于图7中的第二分区Z2的第一存储单元MC1至第四存储单元MC4划分为属于第二分区Z2的第一存储单元MC1和第二存储单元MC2以及属于第四分区Z4的第三存储单元MC3和第四存储单元MC4。
对第一存储单元MCl执行样本读取操作的结果可以用于估计存储在第二分区Z2中的数据的读取计数。控制器130可以对第三存储单元MC3执行另外的样本读取操作,并且可以使用该样本读取操作的结果来估计存储在第四分区Z4中的数据的读取计数。
随着分区被细分,可以更精细地估计数据的读取计数,并且在读取回收操作之后,可以进一步提高数据的可靠性。在实施例中,在执行了另外的样本读取操作之后,在维持空闲状态的情况下,控制器130可以进一步执行另外的样本读取操作。
图12示出存储设备100适应性地执行样本读取操作的另一示例。在图12中,横轴表示在作为读取回收操的目标的第一存储区(例如,存储块)处执行编程操作和擦除操作的次数(即,编程/擦除(PE)循环的数量)。纵轴表示分区的数量。
参照图1和图12,随着PE循环的数量增加,控制器130可以增加分区的数量。随着存储单元被重复地编程和擦除,存储单元的劣化程度可能不同。具有不同劣化程度的存储单元可能具有不同水平的保持和干扰的影响。
因此,可以通过使分区的数量和样本读取操作的数量随着PE循环的数量的增加而增加,来更精细地估计数据的读取计数。在实施例中,图12中的分区的数量可以对应于指示参照图10描述的分区的数量的默认值。
图13示出回收块200的示例。参照图1、图9和图13,回收块200可以包括基于机器学习的读取计数估计器210和回收调度器220。
读取计数估计器210可以接收与第一电压Vl相对应的导通单元计数ONC、与第二电压V2相对应的关断单元计数OFFC、作为读取回收操作的目标的存储块的编程/擦除计数PEC、作为读取回收操作的目标的存储块的信息BLK以及执行样本读取操作的字线的信息WL。
读取计数估计器210可以基于机器学习,根据接收到的信息ONC、OFFC、PEC、BLK和WL估计读取计数RC。例如,读取计数估计器210可以包括如下算法:在各种环境下以各种模式在存储设备处执行写入操作、读取操作和擦除操作,并基于机器学习来学习存储单元的阈值电压的变化。
当读取计数估计器210基于编程/擦除计数PEC执行学习和估计时,读取计数估计器210可以考虑根据存储单元的劣化的阈值电压变化趋势之间的差异。当读取计数估计器210基于存储块的信息BLK执行学习和估计时,读取计数估计器210可以考虑根据存储块的位置的阈值电压变化趋势之间的差异。当读取计数估计器210基于字线的信息WL执行学习和估计时,读取计数估计器210可以考虑根据鲁棒性的阈值电压变化趋势之间的差异。
关于第一存储器管理器136或第二存储器管理器137,回收调度器220可以基于读取计数RC来调度针对读取回收操作的读取操作和写入操作。
在实施例中,存储设备100可以被配置为按照从远离衬底SUB(参照图4和图5)的存储单元到靠近衬底SUB的存储单元的顺序执行写入操作。回收调度器220可以被配置为首先回收(即,读取和写入)具有大读取计数的分区的数据,然后回收具有小读取计数的分区的数据。
对于另一示例,存储设备100可以被配置为按照从靠近衬底SUB的存储单元(参照图4和图5)到远离衬底SUB的存储单元的顺序执行写入操作。回收调度器220可以被配置为首先回收具有小读取计数的分区的数据,然后回收具有大读取计数的分区的数据。
图14示出属于作为读取回收操作的目标的存储块的第一单元串CS1的数据被移动(或复制)到属于另一存储块的第二单元串CS2的示例。在图14中,第一单元串CS1可以被视为表示作为读取回收操作的目标的存储块,第二单元串CS2可以被视为表示数据将要被移动(或复制)到的另一存储块。
参照图1和图14,可以估计第一单元串CS1的第一分区Z1具有第一读取计数RC1。可以估计第一单元串CS1的第二分区Z2具有大于第一读取计数RC1的第二读取计数RC2。可以估计第一单元串CS1的第三分区Z3具有大于第二读取计数RC2的第三读取计数RC3。可以估计第一单元串CS1的第四分区Z4具有大于第三读取计数RC3的第四读取计数RC4。
在读取回收操作中,在第一单元串CS1的具有最大的第四读取计数RC4的第四分区Z4中存储的数据可以被移动(或复制)到第二单元串CS2的第三分区Z3。这里,因为第三分区Z3的存储单元最大,所以第三分区Z3的存储单元的编程速度可以最慢,并且其鲁棒性可以最强。在第一单元串CS1的具有第二大的第三读取计数RC3的第三分区Z3中存储的数据可以被移动(或复制)到第二单元串CS2的鲁棒性为第二强的第一分区Z1。
在第一单元串CS1的具有第三大的第二读取计数RC2的第二分区Z2中存储的数据可以被移动(或复制)到第二单元串CS2的鲁棒性为第三强的第四分区Z4。在第一单元串CS1的具有最小的第一读取计数RC1的第一分区Z1中存储的数据可以被移动(或复制)到第二单元串CS2的鲁棒性最弱的第二分区Z2。
图15示出属于作为读取回收操作的目标的存储块的第一单元串CS1的数据被移动(或复制)到属于另一存储块的第二单元串CS2的示例。参照图1和图15,在实施例中,存储在第二分区Z2中的所有数据可以是无效数据。在这种情况下,可以将存储在第二分区Z2中的数据从读取回收操作的目标中排除。
在实施例中,无效数据可以包括如下数据:即使该数据被存储在存储单元中但由于文件系统上的删除或更新而不再被访问。
由于从读取回收操作的目标中排除了存储在第二分区Z2中的数据,因此回收的数据不会填满第二单元串CS2的存储空间。随着存储单元被维持在擦除状态的时间增加,将要写入存储单元的数据的可靠性可能降低。为了防止数据的可靠性降低,可以写入伪数据来代替从读取回收操作的目标中排除的数据。
伪数据的写入可以是伪填充。伪数据可以是存储设备100随机生成的数据,并且可以不与外部主机设备相关联。可以为了防止不同的数据被写入存储单元而写入伪数据,并且可以将其从读取操作的目标中排除。在图15所示的示例中,伪数据被写入第二单元串CS2的第二分区Z2。
参照图15给出了一个分区的数据为无效数据的描述。然而,无效数据可以仅是一个分区的一部分数据,而不是全部数据。即使在这种情况下,无效数据也可以从读取回收操作的目标中排除。可以按照从具有最强鲁棒性的存储单元到具有最弱鲁棒性的存储单元的顺序依次写入有效数据。对应于无效数据的容量并且具有最弱鲁棒性的存储单元可以通过伪数据填充。
图16示出属于作为读取回收操作的目标的存储块的第一单元串CS1的数据被移动(或复制)到属于另一存储块的第二单元串CS2的另一示例。参照图1和图16,在实施例中,存储在第二分区Z2中的所有数据可以是无效数据。在这种情况下,可以将存储在第二分区Z2中的数据从读取回收操作的目标中排除。
与图15的实施例相比,与无效数据相对应的第二单元串CS2的存储容量可以不被伪数据填充,但是可以利用作为读取回收操作的目标的另一存储块BLKk的数据填充该存储容量。例如,与存储在第一单元串CS1处的数据共享空间局部性(spatial locality)或时间局部性(temporal locality)的存储块BLKk的数据可以被移动(或复制)到第二单元串CS2。
存储在存储块BLKk中的多条数据之中的具有与第一读取计数RC1、第三读取计数RC3和第四读取计数RC4相似的读取计数的数据可以被移动(或复制)到第二单元串CS2。通过将存储块BLKk的数据移动(或复制)到第二单元串CS2,可以防止第二单元串CS2的容量被浪费。
图17示出以堆叠结构实现单元串CS的示例。参照图1、图4和图17,与第一存储单元MC1至第八存储单元MC8相对应的第一层可以设置在衬底SUB上。与第九存储单元MC9至第十六存储单元MC16相对应的第二层可以布置在第一层上。在第一层中,随着与衬底SUB的距离增加,存储单元MC1至MC8的尺寸可以增加。在第二层中,随着与衬底SUB的距离增加,存储单元MC9至MC16的尺寸可以增加。
第一层的最上存储单元(即,存储单元MC8)的尺寸可以大于第二层的最下存储单元(即,存储单元MC9)的尺寸。在实施例中,第二层可以具有与第一层相同(或相似)的结构和大小(dimensions)。
在实施例中,第一层可以被划分为第三分区Z3和第四分区Z4。第二层可以被划分为第一分区Z1和第二分区Z2。位于第二层的上部的第一分区Z1的鲁棒性可以具有最大的第一级别L1。位于第一层的上部的第三分区Z3的鲁棒性可以具有第二大的第二级别L2。
位于在第二层的下部的第二分区Z2的鲁棒性可以具有第三大的第三级别L3。位于第一层的下部的第四分区Z4的鲁棒性可以具有最小的第四级别L4。
存储设备100可以按照从第一分区Z1到第四分区Z4的顺序执行写入操作。在读取回收操作中,读取计数为最大的分区的数据可以被写入单元串CS的鲁棒性最强的第一分区Z1。读取计数为第三大的分区的数据可以被写入单元串CS的鲁棒性为第三强的第二分区Z2。
读取计数为第二大的分区的数据可以被写入鲁棒性为第二强的第三分区Z3。读取计数为最小的分区的数据可以被写入鲁棒性最弱的第四分区Z4。
如上所述,根据本公开的实施例的存储设备可以考虑作为读取回收操作的目标的数据的特性(例如,热或冷)和数据将被移动(或复制)到的存储区的鲁棒性,来执行读取回收操作。因此,提高了回收的数据的可靠性。
在以上实施例中,通过使用术语“第一”、“第二”、“第三”等来描述根据本公开的组件。然而,术语“第一”、“第二”、“第三”等可以用于将组件彼此区分开,并且不限制本公开。例如,术语“第一”、“第二”、“第三”等不涉及顺序或任何形式的数字含义。
根据本公开,在读取回收操作中,读取操作频率高的数据被写入耐劣化的鲁棒性更强的存储空间中。因此,提供了能够在读取回收操作中提高数据可靠性的存储设备和该存储设备的操作方法。
如本领域中的传统,可以从执行所描述的一个或更多个功能的块的角度来描述和说明实施例。在本文中可以称为单元或模块等的这些块通过模拟和/或数字电路(例如,逻辑门、集成电路、微处理器、微控制器、存储电路、无源电子组件、有源电子组件、光学组件、硬接线电路等)来物理地实现,并且可选地可以通过固件和/或软件驱动。电路可以例如被实现在一个或更多个半导体芯片中,或者被实现在诸如印刷电路板等的基板支撑件上。构成块的电路可以通过专用硬件、或通过处理器(例如,一个或更多个被编程的微处理器和相关联的电路)、或者通过执行该块的一些功能的专用硬件与执行该块的其他功能的处理器的组合来实现。在不脱离本公开的范围的情况下,实施例的每个块可以在物理上被分成两个或更多个相互作用且分立的块。同样地,在不脱离本公开的范围的情况下,实施例的块可以物理地组合成更复杂的块。实施例的一个方面可以通过存储在非暂时性存储介质中并由处理器执行的指令来实现。
虽然已经参照本公开的示例性实施例描述了本公开,但是对于本领域的普通技术人员而言显而易见的是,在不脱离如所附权利要求阐述的本公开的精神和范围的情况下,可以对其进行各种改变和修改。

Claims (20)

1.一种存储设备,包括:
非易失性存储装置,所述非易失性存储装置包括第一存储区和第二存储区;以及
控制器,所述控制器被配置为:控制所述非易失性存储装置,并且执行如下读取回收操作:读取存储在所述非易失性存储装置的所述第一存储区中的数据,并将读取到的所述数据写入所述第二存储区,其中,
所述控制器还被配置为:在所述读取回收操作中,控制所述非易失性存储装置以对所述第一存储区执行样本读取操作,并基于所述样本读取操作的结果确定所述第二存储区中的将要被写入所述数据的位置。
2.根据权利要求1所述的存储设备,其中,所述控制器将所述第一存储区和所述第二存储区中的每一者划分为两个或更多个分区,并且控制所述非易失性存储装置以分别对所述第一存储区的所述两个或更多个分区执行所述样本读取操作。
3.根据权利要求2所述的存储设备,其中,所述控制器还被配置为:根据所述样本读取操作的所述结果,估计所述第一存储区的所述两个或更多个分区各自的读取计数。
4.根据权利要求3所述的存储设备,其中,所述控制器基于机器学习,根据所述样本读取操作的所述结果,估计所述第一存储区的所述两个或更多个分区各自的所述读取计数。
5.根据权利要求2所述的存储设备,其中,
所述非易失性存储装置包括存储块,每个所述存储块包括单元串,
每个所述单元串包括沿垂直于衬底的方向堆叠在所述衬底上的存储单元,
所述第一存储区是所述存储块之中的第一存储块,
所述第二存储区是所述存储块之中的第二存储块。
6.根据权利要求5所述的存储设备,其中,
每个所述存储块的所述单元串与字线连接,并且
所述控制器还被配置为:基于机器学习,根据所述样本读取操作的所述结果、执行所述样本读取操作的字线的信息、所述第一存储块的信息、以及所述第一存储块的编程/擦除计数,来估计所述第一存储块的所述两个或更多个分区各自的读取计数。
7.根据权利要求6所述的存储设备,其中,每个所述单元串的所述存储单元的尺寸随着与所述衬底的距离增加而增加。
8.根据权利要求6所述的存储设备,其中,所述控制器控制所述非易失性存储装置,以将所述第一存储块的所述两个或更多个分区之中的具有最大读取计数的第一分区的数据,写入所述第二存储块的每个所述单元串的所述存储单元之中的属于距离所述衬底最远的分区的存储单元中。
9.根据权利要求6所述的存储设备,其中,每个所述读取计数指示:在所述数据被写入所述第一存储块之后,在所述第一存储块的所述两个或更多个分区中的对应分区执行读取操作的次数。
10.一种存储设备的操作方法,所述存储设备包括第一存储区和第二存储区,所述第一存储区和所述第二存储区均包括两个或更多个分区,所述方法包括:
对所述第一存储区执行两次或更多次样本读取操作,以估计所述第一存储区的所述两个或更多个分区各自的读取计数;以及
执行将所述第一存储区的数据写入所述第二存储区中的读取回收操作,其中,
在所述读取回收操作中,基于所述第一存储区的所述两个或更多个分区各自的所述读取计数,来调整所述第二存储区中的被写入所述第一存储区的所述两个或更多个分区中的每个分区中的数据的位置。
11.根据权利要求10所述的方法,其中,所述第一存储区的所述两个或更多个分区之中的具有较大读取计数的分区的数据被写入所述第二存储区的存储单元之中的编程速度较慢的存储单元中。
12.根据权利要求10所述的方法,其中,每个所述样本读取操作包括:
从所述第一存储区的所述两个或更多个分区中的对应分区的存储单元中选择样本存储单元,以及
对所述样本存储单元之中的导通单元的数量进行计数并对所述样本存储单元之中的关断单元的数量进行计数,每个所述导通单元具有低于第一电压的阈值电压,每个所述关断单元具有高于第二电压的阈值电压。
13.根据权利要求12所述的方法,其中,
所述第一电压属于所述样本存储单元的状态之中的与最低阈值电压相对应的擦除状态的电压范围,
所述第二电压属于所述样本存储单元的所述状态之中的与最高阈值电压相对应的编程状态的电压范围。
14.根据权利要求12所述的方法,其中,所述对应分区的所述存储单元之中的具有最高编程速度的存储单元被选择作为所述样本存储单元。
15.根据权利要求10所述的方法,其中,在维持空闲状态时,所述第一存储区的所述两个或更多个分区的数量增加,所述样本读取操作的次数增加,并且与所述两个或更多个分区的数量相对应的读取计数的数量增加。
16.根据权利要求10所述的方法,其中,伪数据被写入所述第二存储区中的与所述第一存储区的所述数据中的无效数据的位置相对应的位置。
17.根据权利要求10所述的方法,其中,来自所述存储设备的第三存储区的数据被写入所述第二存储区中的与所述第一存储区的所述数据中的无效数据的位置相对应的位置。
18.一种存储设备,包括:
非易失性存储装置,所述非易失性存储装置包括存储块,每个所述存储块包括单元串,其中,每个所述单元串包括沿垂直于衬底的方向堆叠在所述衬底上的存储单元;以及
控制器,其中,
在所述存储块之中的第一存储块的数据被写入第二存储块的读取回收操作中,所述控制器在所述第一存储块处执行样本读取操作,以估计所述第一存储块的所述数据的读取计数,并且根据所述读取计数确定所述第二存储块中的将要被写入所述数据的位置。
19.根据权利要求18所述的存储设备,其中,
每个所述单元串的所述存储单元具有取决于与所述衬底的距离的不同的尺寸,并且
所述控制器将所述数据之中的与较大读取计数相对应的数据写入所述第二存储块的所述单元串处的具有较大尺寸的存储单元中。
20.根据权利要求18所述的存储设备,其中,所述控制器还被配置为:基于机器学习,通过使用在所述样本读取操作期间响应于第一电压而导通的导通单元的数量、在所述样本读取操作期间响应于第二电压而关断的关断单元的数量、所述第一存储块的信息、执行所述样本读取操作的字线的信息、以及所述第一存储块的编程/擦除计数,来估计所述读取计数。
CN202011294090.1A 2020-02-06 2020-11-18 存储设备和存储设备的操作方法 Pending CN113223590A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200014421A KR20210100790A (ko) 2020-02-06 2020-02-06 스토리지 장치 및 스토리지 장치의 동작 방법
KR10-2020-0014421 2020-02-06

Publications (1)

Publication Number Publication Date
CN113223590A true CN113223590A (zh) 2021-08-06

Family

ID=77085746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011294090.1A Pending CN113223590A (zh) 2020-02-06 2020-11-18 存储设备和存储设备的操作方法

Country Status (3)

Country Link
US (1) US11508451B2 (zh)
KR (1) KR20210100790A (zh)
CN (1) CN113223590A (zh)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
JP4267682B1 (ja) 2008-06-04 2009-05-27 株式会社ハギワラシスコム Nandフラッシュメモリのリフレッシュ方法
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 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
US9176800B2 (en) 2011-08-31 2015-11-03 Micron Technology, Inc. Memory refresh methods and apparatuses
US9361182B2 (en) 2014-05-20 2016-06-07 Transcend Information, Inc. Method for read disturbance management in non-volatile memory devices
KR102435873B1 (ko) 2015-12-18 2022-08-25 삼성전자주식회사 스토리지 장치 및 그것의 리드 리클레임 방법
US9946469B2 (en) 2016-03-21 2018-04-17 Smart Modular Technologies, Inc. Solid state storage system with latency management mechanism and method of operation thereof
US10319447B2 (en) * 2016-06-27 2019-06-11 Samsung Electronics Co., Ltd. Storage device
KR102656190B1 (ko) * 2016-11-24 2024-04-11 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법
JP6386523B2 (ja) 2016-12-15 2018-09-05 ファナック株式会社 Nandフラッシュメモリの寿命を予測する機械学習装置、寿命予測装置、数値制御装置、生産システム、及び機械学習方法
KR102289598B1 (ko) * 2017-06-26 2021-08-18 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 그리고 그것의 프로그램 방법
KR20190088184A (ko) 2018-01-18 2019-07-26 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR20200116354A (ko) * 2019-04-01 2020-10-12 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법

Also Published As

Publication number Publication date
US11508451B2 (en) 2022-11-22
KR20210100790A (ko) 2021-08-18
US20210249094A1 (en) 2021-08-12

Similar Documents

Publication Publication Date Title
CN107564562B (zh) 包含非易失性存储器设备和控制器的存储设备
US10170190B2 (en) Memory controller having reclaim controller and method of controlling operation of the memory controller
US9659658B2 (en) Nonvolatile memory device, storage device including the nonvolatile memory device, and operating method of the storage device
US10114575B2 (en) Storage device and operating method thereof
CN106971754B (zh) 非易失性存储器设备、包括其的存储装置和操作其的方法
US10269438B2 (en) Nonvolatile memory device for performing a partial read operation and a method of reading the same
CN107045892B (zh) 非易失性存储器和包括非易失性存储器的存储装置
CN112650442B (zh) 存储器系统、存储器控制器及操作方法
US20150277792A1 (en) Memory controller, memory system, and related method of operation
CN114067870A (zh) 存储器系统、存储器装置以及用于操作存储器装置的方法
CN114579486A (zh) 配置为控制非易失性存储器件的控制器的操作方法和储存设备的操作方法
CN113010459A (zh) 存储器系统、存储器控制器以及操作存储器系统的方法
CN114078529A (zh) 用于对多页数据进行编程的非易失性存储器设备的操作方法
JP2022032958A (ja) 不揮発性メモリ装置、その動作方法、それを制御する制御器、及びそれを含む記憶装置
KR20140006283A (ko) 3차원 불휘발성 메모리 및 3차원 불휘발성 메모리를 포함하는 메모리 시스템 및의 프로그램 방법
CN113703662A (zh) 存储器系统、存储器控制器及其操作方法
KR20130123955A (ko) 3차원 불휘발성 메모리 및 랜덤 액세스 메모리를 포함하는 메모리 시스템 및 그것의 프로그램 방법
US11474726B2 (en) Memory system, memory controller, and operation method thereof
EP3863017B1 (en) Storage device and operating method of storage device
US11508451B2 (en) Storage device that determines write area of read reclaim operation based on estimated read count of reclaim area and operating method of the storage device
CN113806254A (zh) 存储器系统、存储器控制器及存储器系统的操作方法
US11966608B2 (en) Memory controller with improved data reliability and memory system including the same
CN115206393A (zh) 存储器装置及存储器装置的操作方法
CN114968078A (zh) 存储器装置及其操作方法
TW202316265A (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