CN113641299A - 数据存储设备及其操作方法 - Google Patents

数据存储设备及其操作方法 Download PDF

Info

Publication number
CN113641299A
CN113641299A CN202110020822.6A CN202110020822A CN113641299A CN 113641299 A CN113641299 A CN 113641299A CN 202110020822 A CN202110020822 A CN 202110020822A CN 113641299 A CN113641299 A CN 113641299A
Authority
CN
China
Prior art keywords
data
storage device
controller
block
cold
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.)
Withdrawn
Application number
CN202110020822.6A
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.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN113641299A publication Critical patent/CN113641299A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • 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/0608Saving storage space on 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/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/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/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
    • 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/7205Cleaning, compaction, garbage collection, erase control

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)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本公开涉及一种数据存储设备,该数据存储设备可以包括:存储装置,包括第一区域和第二区域,每个区域包括多个存储块;以及控制器,被配置为在主机的请求下与存储装置交换数据。控制器可以包括:数据分类组件,被配置为基于数据的连续性将存储装置中存储的数据的属性分类为热数据或冷数据,并且被配置为通过后台操作分别将热数据移动到第一区域并且将冷数据移动到第二区域。

Description

数据存储设备及其操作方法
相关申请的交叉引用
本申请要求于2020年4月27日向韩国知识产权局提交的申请号为10-2020-0050851的韩国申请的优先权,其通过引用整体并入本文。
技术领域
各个实施例总体上涉及一种半导体集成设备,并且更特别地,涉及一种数据存储设备及其操作方法。
背景技术
数据存储设备连接到主机,并且在主机的请求下执行数据输入/输出操作。
数据存储设备可以使用易失性或非易失性存储器设备作为存储介质。
非易失性存储器装置的一个示例是闪速存储器。对于闪速存储器装置,通常在对数据进行编程之前执行擦除操作,并且编程单位(页面)不同于擦除单位(块)。
因此,在将频繁变化的热数据和不频繁变化的冷数据存储在实质上相同的存储器区域(页面或块)中的情况下,当更新热数据时,冷数据也被移动到另一存储器区域。
闪速存储器装置的寿命有限,即可以执行的编程和擦除操作的数量有限,因此闪速存储器的寿命可以取决于数据移动的频率。
发明内容
在实施例中,一种数据存储设备,其可以包括:存储装置,包括第一区域和第二区域,每个区域包括多个存储块;以及控制器,被配置为在主机的请求下与存储装置交换数据。该控制器可以包括:数据分类组件,被配置为基于数据的连续性将存储装置中存储的数据的属性分类为热数据或冷数据,并且被配置为通过后台操作分别将热数据移动到第一区域并且将冷数据移动到第二区域。
在实施例中,一种操作数据存储设备的方法,该数据存储设备包括:存储装置,具有第一区域和第二区域,该第一区域和第二区域中的每个区域包括多个存储块;以及控制器,被配置为与存储装置交换数据,该方法包括:控制器选择具有待在存储装置中移动的数据的牺牲块的步骤;控制器确定数据移动原因的步骤;控制器确定待移动的数据的连续性的步骤;控制器基于数据移动的原因和连续性,将待移动的数据的属性分类为热数据或冷数据的步骤;以及通过后台操作分别将热数据移动到第一区域并且将冷数据移动到第二区域的步骤。
附图说明
图1是根据实施例的数据存储设备的示图。
图2是根据实施例的控制器的示图。
图3是根据实施例的数据分类组件的示图。
图4是根据实施例的数据存储设备的操作的流程图。
图5是示出根据实施例的数据存储设备的数据分类的示图。
图6是根据实施例的数据存储设备的操作的流程图。
图7是示出根据实施例的数据存储系统的示图。
图8和图9是示出根据实施例的数据处理系统的示图。
图10是示出根据实施例的包括数据存储装置的网络系统的示图。
图11是示出根据实施例的被包括在数据存储装置中的非易失性存储器装置的框图。
具体实施方式
在下文中,将参照附图更详细地描述本技术的实施例。
图1是根据实施例的数据存储设备10的示图。
参照图1,根据实施例的数据存储设备10可以包括控制器110、存储装置120和缓冲存储器130。
控制器110可以响应于主机的请求来控制存储装置120。例如,控制器110可以响应于主机的写入请求,将数据编程在存储装置120中。此外,控制器110可以响应于主机的读取请求,向主机提供写入存储装置120中的数据。
存储装置120可以在控制器110的控制下写入数据或输出所写入的数据。存储装置120可以包括易失性或非易失性存储器设备。在实施例中,存储装置120可以使用从诸如以下各种非易失性存储器元件中选择的存储器元件来实施:电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)和自旋转移力矩磁性RAM(STT-MRAM)。
存储装置120可以包括多个非易失性存储器(NVM)121至12N,并且多个非易失性存储器121至12N中的每一个可以包括多个管芯、多个芯片或多个封装。另外,存储装置120可以用作在一个存储器单元中存储一位数据的单层单元或在一个存储器单元中存储多位数据的多层单元。
当数据存储设备10与主机协作来执行一系列写入或读取数据的操作时,缓冲存储器130用作能够临时存储数据的空间。尽管图1示出了缓冲存储器130设置在控制器110外部的实施例,但是在另一实施例中,缓冲存储器130可以设置在控制器110内部。
根据本技术的实施例的控制器110可以包括数据分类组件20。
数据分类组件20可以被配置为,当通过数据存储设备10的诸如后台操作的内部操作在存储装置120中移动数据时,基于数据移动的原因和所移动数据的特性,将数据分类为热数据或冷数据,并且将热数据和冷数据移动到物理上分开的区域。此处,数据移动的原因是指与数据移动相关的操作,诸如内务操作的类型,下面将提供与数据移动相关的操作的示例。因此,本申请的实施例可以基于与访问存储器相关联的特定操作来执行不同的处理。
在实施例中,数据分类组件20可以单独地管理被分类为冷数据的数据的逻辑地址。
当主机请求写入逻辑地址被分类为冷数据的数据时,数据分类组件20可以将请求写入的数据存储在冷数据存储区域中。当主机请求读取逻辑地址被分类为冷数据的数据时,数据分类组件20可以将请求读取的数据高速缓存在缓冲存储器130中,并且将与在请求读取的逻辑地址之后的逻辑地址相对应的数据预取(预先读取)到缓冲存储器130中。另外,当请求读取的冷数据的读取频率等于或大于预定阈值时,数据分类组件20可以将所读取的数据和/或所预取的读取数据保持在缓冲存储器130中。
图2是根据实施例的控制器110的示图。
参照图2,根据实施例的控制器110可以包括:处理器111、主机接口(IF)113、ROM1151、RAM 1153、存储器接口(IF)117、缓冲器管理器119和数据分类组件20。
处理器111可以被配置为将用于存储装置120的数据读取或写入操作的各种类型的控制信息传送到主机IF 113、RAM 1153、存储器IF 117和缓冲器管理器119。在实施例中,处理器111可以根据针对数据存储设备10的各种操作提供的固件来操作。在实施例中,处理器111可以执行闪存转换层(FTL)的功能,以执行管理存储装置120的地址映射和内务操作,并且可以执行检测和校正从存储装置120中读取的数据的错误的功能等。
在实施例中,内务操作可以是诸如垃圾收集(GC)、损耗均衡(WL)、读取回收(RR)、后台媒体扫描(BGMS)等的操作。
在闪速存储器设备中,为了更新与存储块的一些页面相对应的数据,对所请求更新的数据进行读取并更新,将更新后的数据写入空闲块,并且使存储更新之前的数据的页面无效。垃圾收集是指在包括一个或多个无效页面的块中布置有效数据并提供一些空闲块的操作。为了执行垃圾收集,可以选择包括无效页面的牺牲块,可以将牺牲块中的有效数据复制到空闲块,然后可以将牺牲块擦除并转换为空闲块。
损耗均衡是指均匀地管理作为整体的存储块的使用次数(编程和擦除次数)的操作。为了执行损耗均衡,可以将具有较少使用次数的牺牲块中的数据移动到具有较多使用次数的块。
由于诸如读取干扰和电荷泄漏的各种原因,闪速存储块中存储的数据的错误水平逐渐增加。读取回收是指将牺牲块中的数据移动到另一存储块以防止错误的操作。例如,可以在存储块中的错误水平达到预定水平之前执行读取回收操作。
后台媒体扫描是以预设周期来读取存储块中的数据以检查数据保留,并且将保留特性差的牺牲块中的数据移动到另一存储块的操作。
在下面的描述中,块可以指代包括多个页面的存储器区域或包括多个存储块的块组。
主机IF 113可以提供用于从主机接收命令和时钟信号并在处理器111的控制下控制数据输入/输出的通信通道。特别地,主机IF 113可以在主机和数据存储设备10之间提供物理连接。此外,主机IF 113可以根据主机的总线格式来与数据存储设备10接口连接。主机的总线格式可以包括诸如以下的至少一种标准接口协议:安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCI-E)和通用闪存(UFS)。
ROM 1151可以存储控制器110的操作所需的编程代码,例如固件或软件,并且存储由编程代码使用的代码数据等。
RAM 1153可以存储控制器110的操作所需的数据或由控制器110生成的数据。
存储器IF 117可以提供用于控制器110和存储装置120之间的信号传输/接收的通信通道。存储器IF 117可以在处理器111的控制下,将已经临时存储在缓冲存储器130中的数据写入存储装置120中。此外,存储器IF 117可以将从存储装置120读取的数据传送到缓冲存储器130,以用于临时存储。
缓冲器管理器119可以被配置为管理每个缓冲存储器130的使用状态。在实施例中,缓冲器管理器119可以将缓冲存储器130划分为多个区域(槽),并且分配或释放每个区域以临时存储数据。
在实施例中,响应于从存储装置120传输的编程完成信号,缓冲器管理器119可以释放高速缓存完成编程的数据的缓冲器区域(槽)。此外,缓冲器管理器119可以分配所释放的缓冲器区域,以存储从主机提供的新数据。在实施例中,缓冲器管理器119可以将从存储装置120读取的数据高速缓存在缓冲存储器130中,并且释放或保持高速缓存被传输到主机的数据的缓冲器区域(槽)。
数据分类组件20可以被配置为,当通过处理器111的内务操作而在存储装置120中移动数据时,基于数据移动的原因和所移动数据的特性,例如连续性程度或不连续性程度,将牺牲块中包括的数据的属性分类为热数据或冷数据,并且将热数据和冷数据移动到物理上分开的区域。
图3是根据实施例的数据分类组件20的示图。
参照图3,数据分类组件20可以包括权重设置组件210、数据特性分析器220、属性分类器230和布隆过滤器240。布隆过滤器是一种可用于测试特定元素是否属于集合的概率数据结构。
在实施例中,权重设置组件210可以根据正在执行的内务操作的类型,即诸如GC、WL、RR或BGMS的数据移动的原因来设置权重,并且将权重分配给用于数据移动而选择的牺牲块。当数据移动的原因是由于读取干扰的读取回收时,可以将相应块的干扰风险作为元数据来管理。
数据特性分析器220可以基于所选择的牺牲块中包括的有效数据的逻辑地址来分析待移动数据的连续性,并且特别地,可以分析数据是顺序数据还是随机数据。为了确定待移动数据的连续性,数据特性分析器220可以考虑牺牲块中包括的有效数据的逻辑地址的分布、数据块的大小以及数据块的大小的分布中的至少一个。在实施例中,将分布表示为方差。
属性分类器230可以基于权重以及数据中存在的连续性程度或不连续性程度,将牺牲块中的数据分类为热数据或冷数据。在实施例中,属性分类器230可以根据对牺牲块中的数据的连续性分析结果,以牺牲块中的所有有效数据为单位来分类属性,或以牺牲块中的单个数据或单个数据块为单位来将数据分类为热数据或冷数据。
在实施例中,布隆过滤器240可以寄存被分类为冷数据的数据的逻辑地址或逻辑地址的范围。
由于牺牲块中的数据被分类为热数据或冷数据,因此存储器IF117可以将冷数据移动到第一块,并且将热数据移动到第二块,从而对它们进行区分。为此,存储装置120可以被管理为包括:包括第一块的冷数据区域和包括第二块的热数据区域;然而,本公开不限于该实施例。
当布隆过滤器240的检查结果表明主机的写入请求中包括的逻辑地址被包括在冷数据的逻辑地址(范围)中时,存储器IF 117可以将数据存储在第一块或冷数据区域中。另外,当布隆过滤器240的检查结果指示在先前寄存的、与冷数据相关联的逻辑地址范围中存在主机的读取请求中包括的逻辑地址时,存储器IF 117可以从第一块或冷数据区域读取数据。此时,存储器IF 117可以将请求读取的冷数据和与在请求读取的逻辑地址之后的逻辑地址相对应的数据预取到缓冲存储器130中。另外,当请求读取的冷数据是读取干扰风险块时,处理器111可以将读取数据和/或所预取的读取数据中的一些或全部保持在缓冲存储器130中。
用于内务操作而选择的至少一个牺牲块可以包括存储有效数据的至少一个页面,并且可以根据逻辑地址和与该逻辑地址相对应的物理地址来管理每个页面。被分配连续逻辑地址的多个页面中存储的数据可以构成数据块。
当选择待移动的牺牲块时,数据分类组件20中的数据特性分析器220可以提取牺牲块中包括的有效页面的数量和每个有效页面的逻辑地址。基于所提取的逻辑地址的最大值与最小值之间的差值或逻辑地址的范围,当逻辑地址的范围等于或小于第一阈值时,数据特性分析器220可以确定数据为顺序数据,并且当逻辑地址的范围大于第一阈值时,数据特性分析器220可以确定数据为随机数据。例如,顺序数据可以是诸如媒体内容的大容量冷数据,而随机数据可以是频繁更新的热数据。另外,基于有效页面的逻辑地址分布,例如方差,当方差等于或小于第二阈值时,数据特性分析器220可以确定数据为顺序数据,并且当方差大于第二阈值时,数据特性分析器220可以确定数据为随机数据。因此,可以以牺牲块中包括的所有有效数据为单位来分类属性。
在实施例中,数据特性分析器220可以进一步确定牺牲块中的各个数据块的大小以及各个数据块的大小的分布。为了确认数据块的大小,可以使用逻辑地址连续的页面的数量和每个单位页面的大小。例如,可以通过将单位页面的大小乘以逻辑地址连续的页面的数量来计算数据块的大小以及数据块的大小的分布。当数据块的大小等于或大于第三阈值时,数据特性分析器220可以确定数据为顺序数据,而当数据块的大小小于第三阈值时,数据特性分析器220可以确定数据为随机数据。通过这样做,可以以牺牲块中的单个数据为单位来分类属性。另外,还可以根据牺牲块中的数据块的大小的分布,以牺牲块中的所有有效数据为单位来分类属性。
在闪速存储器设备中,一些数据很少改变,这种数据被称为冷数据或静态数据。另一方面,经常改变的数据被称为热数据或动态数据。在构成一个块的页面的第一部分具有冷数据,而第二部分具有热数据的情况下,当在诸如损耗均衡的内务操作期间移动热数据时,冷数据也一起移动。由于这可能引起诸如写入放大的问题,因此本申请的实施例可以将冷数据和热数据分别存储在不同的块或区域中。
由于在应用编程层处确定数据的改变频率,因此控制器110难以预测在一个块中存储的数据的属性。
根据本技术,可以基于数据移动的原因以及用于数据移动而选择的牺牲块中的有效数据的连续性,将数据分类为热数据和冷数据,并且可以将热数据和冷数据分开地存储在分开的区域中。
将来很可能会删除冷数据,可以尽可能多地收集这种冷数据并且通过单个操作来删除这种冷数据,从而实质地防止存储碎片。此外,当读取顺序的冷数据时,可以通过预取被预测为后续读取请求的对象的数据来改善读取延迟。另外,当读取被寄存为读取干扰风险块的冷数据时,可以通过将该冷数据保持高速缓存在缓冲存储器中来减少访问读取干扰风险块的频率。
图4是示出根据实施例的数据存储设备的操作的流程图。
参照图4,当通过数据存储设备10的内务操作而在存储装置120中发生数据移动(S100)时,控制器110可以将权重分配给根据内务操作的类型,即数据移动的原因(诸如GC、WL、RR或BGMS)而选择的牺牲块(S101)。当数据移动的原因是由于读取干扰的读取回收时,可以将相应块的干扰风险作为元数据来管理。
控制器110可以基于所选择牺牲块中包括的有效数据的逻辑地址来分析待移动数据的连续性,即分析数据是顺序数据还是随机数据(S103)。为了确定待移动数据的连续性,控制器110可以考虑牺牲块中包括的有效数据的逻辑地址的分布、数据块的大小以及数据块的大小的分布中的至少一个。
在实施例中,控制器110可以提取待移动的牺牲块中包括的有效页面的数量以及每个有效页面的逻辑地址。
基于所提取的逻辑地址的最大值与最小值之间的差值,即逻辑地址的范围,当逻辑地址的范围等于或小于第一阈值时,控制器110可以确定数据为顺序数据,并且当逻辑地址的范围大于第一阈值时,控制器110可以确定数据为随机数据。
基于有效页面的逻辑地址的分布,例如从逻辑地址的平均值得出的方差,当方差等于或小于第二阈值时,控制器110可以确定数据为顺序数据,并且当方差大于第二阈值时,控制器110可以确定数据为随机数据。通过这样做,可以以牺牲块中包括的所有有效数据为单位来分类属性。
控制器110可以进一步确定牺牲块中的各个数据块的大小以及大小的分布。在实施例中,可以通过将每个单位页面的大小乘以逻辑地址连续的页面的数量,来计算数据块的大小以及数据块的大小的分布。当数据块的大小等于或大于第三阈值时,控制器110可以确定数据为顺序数据,当数据块的大小小于第三阈值时,控制器110可以确定数据为随机数据。通过这样做,可以以牺牲块中的单个数据为单位来分类属性。另外,还可以根据牺牲块中的数据块的大小的分布,以牺牲块中的所有有效数据为单位来分类属性。在实施例中,可以将数据块的大小的分布小于第四阈值的相应牺牲块中的所有数据分类为冷数据。在另一实施例中,在数据块的大小的分布小于第四阈值的相应牺牲块中,可以将每个数据块的大小等于或大于第三阈值的数据分类为冷数据。例如,牺牲块中的数据块的大小的分布可以是从牺牲块中的所有数据块的大小的平均值得出的方差。
控制器110可以基于权重以及连续性或不连续性的程度,将牺牲块中的数据分类为热数据或冷数据(S105)。在实施例中,控制器110可以根据对牺牲块中的数据的连续性的分析结果,以牺牲块中的所有有效数据为单位来分类属性,或以牺牲块中的单个数据或单个数据块为单位来将数据分类为热数据或冷数据。
控制器110可以将被分类为冷数据的数据的逻辑地址或逻辑地址的范围寄存在布隆过滤器240中(S107),并且将被分类为冷数据的数据移动到存储装置120的第一块或冷数据区域(S109)。控制器110可以将被分类为热数据的数据移动到存储装置120的第二块或热数据区域(S111)。
图5示出根据实施例的数据存储设备的数据分类。
参照图5,热数据H和冷数据C可以以牺牲块中的单个数据为单位进行分类,可以在第一块中收集冷数据C,可以在第二块中收集热数据H。由于通过内务操作来重复分类过程,因此冷数据可以连续地累积在第一块中,并且热数据可以连续地累积在第二块中,使得可以更容易地管理存储装置120的寿命。
图6是根据实施例的数据存储设备的操作的流程图。
在待机状态下(S200),控制器110可以接收主机的请求(S201)并且确定该请求的类型(S203)。
当主机请求数据写入(S203:写入)时,控制器110可以确认写入请求中包括的逻辑地址是否包括在布隆过滤器240中寄存的逻辑地址的范围内(S205)。
当写入请求中包括的逻辑地址被包括在冷数据的逻辑地址(的范围)中(S205:是)时,控制器110可以生成映射信息,使得数据被存储在第一块或冷数据区域中,并且将写入命令传输到存储装置120(S207)。当写入请求中包括的逻辑地址未被包括在冷数据的逻辑地址(的范围)中(S205:否)时,控制器110可以生成映射信息,使得数据被存储在第二块或热数据区域中,并且将写入命令传输到存储装置120(S209)。
同时,当主机传输读取请求(S203:读取)时,控制器110可以确认读取请求中包括的逻辑地址是否被包括在布隆过滤器240中寄存的逻辑地址的范围内(S211)。
当读取请求中包括的逻辑地址未被包括在冷数据的逻辑地址(的范围)中(S211:否)时,控制器110可以从第二块或热数据区域读取数据,并且将数据提供给主机(S213)。
当读取请求中包括的逻辑地址被包括在冷数据的逻辑地址(的范围)中(S211:是)时,控制器110可以从第一块或冷数据区域读取数据。此时,控制器110可以将请求读取的冷数据和与在请求读取的逻辑地址之后的逻辑地址相对应的数据预取到缓冲存储器130中(S215)。另外,控制器110可以参考元数据来确认请求读取的冷数据是否是读取干扰风险块(S217),并且当在读取干扰风险块中存在请求读取的冷数据(S217:是)时,将所读取的数据和/或所预取的读取数据保持在缓冲存储器130中(S219)。当请求读取的冷数据不在读取干扰风险块中(S217:否)时,控制器110可以释放被分配以高速缓存所读取的数据的缓冲存储器(S221)。
根据本技术,可以通过分开地存储频繁更新的热数据和冷数据来实质地防止不必要的数据移动。
此外,可以通过预取和/或高速缓存请求读取的冷数据和具有与请求读取的数据的连续性的数据来提高读取速度和读取干扰特性。
图7是示出根据实施例的数据存储系统1000的示图。
参照图7,数据存储系统1000可以包括主机装置1100和数据存储装置1200。在实施例中,数据存储装置1200可以被配置为固态驱动器(SSD)。
数据存储装置1200可以包括控制器1210、多个非易失性存储器装置1220-0至1220-n、缓冲存储器装置1230、电源1240、信号连接器1101和电源连接器1103。
控制器1210可以控制数据存储装置1200的一般操作。控制器1210可以包括主机接口单元、控制单元、用作工作存储器的随机存取存储器、错误校正码(ECC)单元和存储器接口单元。在实施例中,控制器1210可以配置为图1和图2中所示的控制器110。
主机装置1100可以通过信号连接器1101与数据存储装置1200交换信号。信号可以包括命令、地址、数据等。
控制器1210可以分析和处理从主机装置1100接收的信号。控制器1210可以根据用于驱动数据存储装置1200的固件或软件来控制内部功能块的操作。
缓冲存储器装置1230可以临时存储待存储在非易失性存储器装置1220-0至1220-n中的至少一个中的数据。进一步地,缓冲存储器装置1230可以临时存储从非易失性存储器装置1220-0至1220-n中的至少一个读取的数据。可以根据控制器1210的控制,将缓冲存储器装置1230中临时存储的数据传输到主机装置1100或非易失性存储器装置1220-0至1220-n中的至少一个。
非易失性存储器装置1220-0至1220-n可以用作数据存储装置1200的存储介质。非易失性存储器装置1220-0至1220-n可以通过多个通道CH0至CHn分别与控制器1210联接。一个或多个非易失性存储器装置可以联接到一个通道。联接到每个通道的非易失性存储器装置可以与相同的信号总线和数据总线联接。
电源1240可以将通过电源连接器1103输入的电力提供到数据存储装置1200中的控制器1210、非易失性存储器装置1220-0至1220-n以及缓冲存储器装置1230。电源1240可包括辅助电源。辅助电源可以提供电力以允许数据存储装置1200在发生突然电力中断时正常地终止。辅助电源可以包括足以存储所需电荷的大容量电容器。
根据主机装置1100和数据存储装置1200之间的接口方案,信号连接器1101可以被配置为各种类型的连接器中的一种或多种。
根据主机装置1100的电力供应方案,电源连接器1103可以被配置为各种类型的连接器中的一种或多种。
图8是示出根据实施例的数据处理系统3000的示图。参照图8,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以以诸如印刷电路板的板的形式来配置。虽然未示出,但是主机装置3100可以包括用于执行主机装置的功能的内部功能块。
主机装置3100可以包括连接端子3110,诸如插座、插槽或连接器。存储器系统3200可以与连接端子3110配对。
存储器系统3200可以以诸如印刷电路板的板的形式来配置。存储器系统3200可以被称为存储器模块或存储卡。存储器系统3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制存储器系统3200的一般操作。控制器3210可以以与图1和图2所示的控制器110相同的方式配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3231和3232中的数据。进一步地,缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读取的数据。可以根据控制器3210的控制,将缓冲存储器装置3220中临时存储的数据传输到主机装置3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可以用作存储器系统3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电力提供到存储器系统3200的内部。PMIC 3240可以根据控制器3210的控制来管理存储器系统3200的电力。
连接端子3250可以联接到主机装置3100的连接端子3110。通过连接端子3250,可以在主机装置3100和存储器系统3200之间传送诸如命令、地址、数据等的信号以及电力。根据主机装置3100和存储器系统3200之间的接口方案,连接端子3250可以被配置为各种类型中的一种或多种。如图所示,可以将连接端子3250设置在存储器系统3200的一侧。
图9是示出根据实施例的数据处理系统4000的示图。参照图9,数据处理系统4000可以包括主机装置4100和存储器系统4200。
主机装置4100可以以诸如印刷电路板的板的形式来配置。虽然未示出,但是主机装置4100可以包括用于执行主机装置的功能的内部功能块。
存储器系统4200可以以表面安装类型封装的形式来配置。存储器系统4200可以通过焊球4250而安装到主机装置4100。存储器系统4200可以包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可以控制存储器系统4200的一般操作。控制器4210可以以与图1和图2所示的控制器110相同的方式配置。
缓冲存储器装置4220可以临时存储待存储在非易失性存储器装置4230中的数据。进一步地,缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读取的数据。可以根据控制器4210的控制,将缓冲存储器装置4220中临时存储的数据传输到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可以用作存储器系统4200的存储介质。
图10是示出根据实施例的包括数据存储装置的网络系统5000的示图。参照图10,网络系统5000可以包括服务器系统5300以及通过网络5500联接的多个客户端系统5410、5420和5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求来服务数据。例如,服务器系统5300可以存储由多个客户端系统5410至5430提供的数据。又例如,服务器系统5300可以向多个客户端系统5410至5430提供数据。
服务器系统5300可以包括主机装置5100和存储器系统5200。存储器系统5200可以被配置为图1所示的存储器系统10、图7所示的数据存储装置1200、图8所示的存储器系统3200或图9所示的存储器系统4200。
图11是示出根据实施例的诸如数据存储装置10的数据存储装置中包括的非易失性存储器装置300的框图。参照图11,非易失性存储器装置300可以包括存储器单元阵列310、行解码器320、数据读取/写入块330、列解码器340、电压生成器350和控制逻辑360。
存储器单元阵列310可以包括布置在字线WL1至WLm和位线BL1至BLn彼此相交的区域处的存储器单元MC。
存储器单元阵列310可以包括三维存储器阵列。例如,三维存储器阵列在垂直于半导体衬底的平坦表面的方向上具有堆叠结构。此外,三维存储器阵列是指包括NAND串的结构,其中NAND串中包括的存储器单元垂直于半导体衬底的平坦表面进行堆叠。
三维存储器阵列的结构不限于上述实施例。可以以高度集成的方式形成具有水平方向性和垂直方向性的存储器阵列结构。在实施例中,在三维存储器阵列的NAND串中,在相对于半导体衬底的表面的水平和垂直方向上布置存储器单元。存储器单元可以具有不同的间隔以提供不同的集成度
行解码器320可以通过字线WL1至WLm与存储器单元阵列310联接。行解码器320可以根据控制逻辑360的控制进行操作。行解码器320可以对由外部装置(未示出)提供的地址进行解码。行解码器320可以基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器320可以将由电压生成器350提供的字线电压提供到字线WL1至WLm。
数据读取/写入块330可以通过位线BL1至BLn与存储器单元阵列310联接。数据读取/写入块330可以包括分别对应于字线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块330可以根据控制逻辑360的控制进行操作。数据读取/写入块330可以根据操作模式而用作写入驱动器或读出放大器。例如,在写入操作中,数据读取/写入块330可以用作将由外部装置提供的数据存储在存储器单元阵列310中的写入驱动器。又例如,在读取操作中,数据读取/写入块330可以用作从存储器单元阵列310读出数据的读出放大器。
列解码器340可以根据控制逻辑360的控制进行操作。列解码器340可以对由外部装置提供的地址进行解码。列解码器340可以基于解码结果,将数据读取/写入块330中的、分别对应于位线BL1至BLn的读取/写入电路RW1和RWn与数据输入/输出线或数据输入/输出缓冲器联接。
电压生成器350可以生成待在非易失性存储器装置300的内部操作使用的电压。可以将由电压生成器350生成的电压施加到存储器单元阵列310的存储器单元。例如,在编程操作中生成的编程电压可以施加到待执行编程操作的存储器单元的字线。又例如,在擦除操作中生成的擦除电压可以施加到待执行擦除操作的存储器单元的阱区。再例如,在读取操作中生成的读取电压可以施加到待执行读取操作的存储器单元的字线。
控制逻辑360可以基于由外部装置提供的控制信号来控制非易失性存储器装置300的一般操作。例如,控制逻辑360可以控制非易失性存储器装置300的操作,诸如非易失性存储器装置300的读取操作、写入操作和擦除操作。
上述实施例旨在说明而不是限制本公开。各种替代方案和等同方案是可能的。本技术的范围不受本文描述的实施例的限制。本技术也不限于任何特定类型的半导体装置。鉴于本公开,其他增加、减少或修改是显而易见的,并且旨在落入所附权利要求书的范围内。

Claims (20)

1.一种数据存储设备,包括:
存储装置,包括第一区域和第二区域,所述第一区域和所述第二区域中的每个区域包括多个存储块;以及
控制器,与所述存储装置交换数据,
其中所述控制器包括:
数据分类组件,基于所述数据的连续性将所述存储装置中存储的数据的属性分类为热数据或冷数据,并且通过后台操作分别将所述热数据移动到所述第一区域并且将所述冷数据移动到所述第二区域。
2.根据权利要求1所述的数据存储设备,其中所述控制器基于待移动的牺牲块中包括的有效数据的逻辑地址的分布、数据块的大小以及所述数据块的大小的分布中的至少一个来确定所述连续性。
3.根据权利要求1所述的数据存储设备,其中所述控制器进一步基于数据移动的原因对所述存储装置中存储的数据的属性进行分类,并且以待移动的牺牲块中包括的所有有效数据为单位对所述属性进行分类,或者以所述牺牲块中的单个数据为单位对所述属性进行分类。
4.根据权利要求1所述的数据存储设备,其中所述控制器提取待移动的牺牲块中包括的每个有效数据的逻辑地址,并且根据判定所提取的逻辑地址的最大值与最小值之间的差值等于或小于第一阈值,将所述牺牲块中的所有数据确定为所述冷数据。
5.根据权利要求1所述的数据存储设备,其中所述控制器提取待移动的牺牲块中包括的每个有效数据的逻辑地址,并且根据判定所提取的逻辑地址的分布等于或小于第二阈值,将所述牺牲块中的所有数据确定为所述冷数据。
6.根据权利要求1所述的数据存储设备,其中所述控制器根据判定待移动的牺牲块中包括的每个有效数据块的大小等于或大于第三阈值,将所述牺牲块中的所有数据确定为所述冷数据。
7.根据权利要求1所述的数据存储设备,其中所述控制器计算待移动的牺牲块中包括的每个有效数据块的大小,并且根据判定所述有效数据块的大小的分布小于第四阈值,将每个所述有效数据块的大小等于或大于第三阈值的数据确定为所述冷数据。
8.根据权利要求1所述的数据存储设备,其中所述控制器进一步包括:
布隆过滤器,寄存被分类为所述冷数据的数据的逻辑地址。
9.根据权利要求8所述的数据存储设备,其中所述第一区域和所述第二区域为物理上分开的区域,并且
所述控制器根据判定由主机请求写入的数据的逻辑地址被寄存在所述布隆过滤器中,将所请求写入的数据存储在所述第二区域中。
10.根据权利要求8所述的数据存储设备,进一步包括:
缓冲存储器,临时存储从所述存储装置读取的数据,并且
所述控制器根据判定由主机请求读取的数据的逻辑地址被寄存在所述布隆过滤器中,将从所述第二区域读取的数据以及与在所请求读取的逻辑地址之后的逻辑地址相对应的数据预取到所述缓冲存储器中。
11.一种操作数据存储设备的方法,所述数据存储设备包括存储装置和控制器,所述存储装置包括第一区域和第二区域,所述第一区域和所述第二区域中的每个区域包括多个存储块,所述控制器与所述存储装置交换数据,所述方法包括:
所述控制器选择具有待在所述存储装置中移动的数据的牺牲块的步骤;
所述控制器确定待移动数据的连续性的步骤;
所述控制器基于数据移动的原因和所述连续性,将所述待移动数据的属性分类为热数据或冷数据的步骤;并且
通过后台操作分别将所述热数据移动到所述第一区域并且将所述冷数据移动到所述第二区域的步骤。
12.根据权利要求11所述的方法,其中确定所述连续性的步骤包括:
基于所述牺牲块中包括的有效数据的逻辑地址的分布、数据块的大小以及所述数据块的大小的分布中的至少一个来确定所述连续性。
13.根据权利要求11所述的方法,进一步包括确定所述数据移动的原因的步骤;
其中对所述属性进行分类的步骤包括:
以所述牺牲块中包括的所有有效数据为单位对所述属性进行分类,或者以所述牺牲块中的单个数据为单位对所述属性进行分类。
14.根据权利要求11所述的方法,其中对所述属性进行分类的步骤包括:
提取所述牺牲块中包括的每个有效数据的逻辑地址;并且
根据判定所提取的逻辑地址的最大值与最小值之间的差值等于或小于第一阈值,将所述牺牲块中的所有数据确定为所述冷数据。
15.根据权利要求11所述的方法,其中对所述属性进行分类的步骤包括:
提取所述牺牲块中包括的每个有效数据的逻辑地址;并且
根据判定所述逻辑地址的分布等于或小于第二阈值,将所述牺牲块中的所有数据确定为所述冷数据。
16.根据权利要求11所述的方法,其中对所述属性进行分类的步骤包括:
根据判定所述牺牲块中包括的每个有效数据块的大小等于或大于第三阈值,将所述牺牲块中的所有数据确定为所述冷数据。
17.根据权利要求11所述的方法,其中对所述属性进行分类的步骤包括:
计算所述牺牲块中包括的每个有效数据块的大小;并且
根据判定所述有效数据块的大小的分布小于第四阈值,将每个所述有效数据块的大小等于或大于第三阈值的数据确定为所述冷数据。
18.根据权利要求11所述的方法,进一步包括以下步骤:
将被分类为所述冷数据的数据的逻辑地址寄存在布隆过滤器中。
19.根据权利要求18所述的方法,其中所述第一区域和所述第二区域为物理上分开的区域,并且
其中所述操作方法进一步包括:所述控制器根据判定由主机请求写入的数据的逻辑地址被寄存在所述布隆过滤器中,将所请求写入的数据存储在所述第二区域中的步骤。
20.根据权利要求18所述的方法,其中所述数据存储设备进一步包括:
缓冲存储器,临时存储从所述存储装置读取的数据,并且
所述操作方法进一步包括:所述控制器根据判定由主机请求读取的数据的逻辑地址被寄存在所述布隆过滤器中,将从所述第二区域读取的数据以及与在所请求读取的逻辑地址之后的逻辑地址相对应的数据预取到所述缓冲存储器中的步骤。
CN202110020822.6A 2020-04-27 2021-01-08 数据存储设备及其操作方法 Withdrawn CN113641299A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0050851 2020-04-27
KR1020200050851A KR20210132453A (ko) 2020-04-27 2020-04-27 데이터 저장 장치 및 그 동작 방법

Publications (1)

Publication Number Publication Date
CN113641299A true CN113641299A (zh) 2021-11-12

Family

ID=78222168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110020822.6A Withdrawn CN113641299A (zh) 2020-04-27 2021-01-08 数据存储设备及其操作方法

Country Status (3)

Country Link
US (1) US20210334029A1 (zh)
KR (1) KR20210132453A (zh)
CN (1) CN113641299A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230083940A (ko) * 2021-12-03 2023-06-12 삼성전자주식회사 전자 장치 및 전자 장치의 파일 시스템 운영 방법
WO2024112034A1 (ko) * 2022-11-21 2024-05-30 삼성전자 주식회사 전자 장치 및 전자 장치의 파일 시스템 운영 방법
KR102573085B1 (ko) * 2023-05-10 2023-09-01 메티스엑스 주식회사 전자 장치, 이를 포함하는 컴퓨팅 시스템, 및 이의 메모리 접근 모니터링 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552058B1 (en) * 2015-07-17 2020-02-04 Radian Memory Systems, Inc. Techniques for delegating data processing to a cooperative memory controller
US10496315B1 (en) * 2018-07-05 2019-12-03 Western Digital Technologies, Inc. Unified tier and cache structure

Also Published As

Publication number Publication date
KR20210132453A (ko) 2021-11-04
US20210334029A1 (en) 2021-10-28

Similar Documents

Publication Publication Date Title
CN113641299A (zh) 数据存储设备及其操作方法
CN111177031B (zh) 数据存储装置及操作方法和具有数据存储装置的存储系统
KR20210121686A (ko) 데이터 저장 장치 및 그 동작 방법
CN110390988B (zh) 数据存储装置、防止读取干扰的操作方法及存储系统
CN111414131B (zh) 数据存储装置、其操作方法和包括其的存储系统
US20220138096A1 (en) Memory system
US11543990B2 (en) Data storage apparatus with extended lifespan and operation method thereof
CN111708480B (zh) 数据存储装置及其操作方法和控制器
CN111078129A (zh) 存储器系统及其操作方法
KR20190118016A (ko) 리커버리 성능이 최적화된 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템
CN113220216A (zh) 数据存储设备及其操作方法
CN110908596A (zh) 数据存储装置、其操作方法和包括存储装置的存储系统
KR20200121068A (ko) 데이터 저장 장치 및 이의 동작 방법, 이를 위한 컨트롤러
US20190361608A1 (en) Data storage device and operation method for recovery, and storage system having the same
US11243718B2 (en) Data storage apparatus and operation method i'hereof
CN115938422A (zh) 刷新数据的数据存储装置及其操作方法
CN113467708A (zh) 电子装置、数据存储装置及其操作方法
US11593006B2 (en) Data storage apparatus and method for managing valid data based on bitmap table
US11263127B2 (en) Data storage device, method of operating the same, and controller for the same
US11847332B2 (en) Data storage apparatus and operating method thereof
US11954351B2 (en) Memory system, operating method thereof, and data processing system for processing duplicate data
CN114625670A (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
WW01 Invention patent application withdrawn after publication

Application publication date: 20211112

WW01 Invention patent application withdrawn after publication