CN107678976A - 数据存储装置及其操作方法 - Google Patents
数据存储装置及其操作方法 Download PDFInfo
- Publication number
- CN107678976A CN107678976A CN201611231378.8A CN201611231378A CN107678976A CN 107678976 A CN107678976 A CN 107678976A CN 201611231378 A CN201611231378 A CN 201611231378A CN 107678976 A CN107678976 A CN 107678976A
- Authority
- CN
- China
- Prior art keywords
- memory area
- multiple memory
- controller
- data
- storage device
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
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)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开一种数据存储装置,其包括:非易失性存储器装置,其包括多个存储器区域;以及控制器,其被配置为基于多个存储器区域的读取计数对多个存储器区域执行回收操作,增加多个存储器区域的回收计数,以及基于回收计数对多个存储器区域执行损耗均衡操作。
Description
相关申请的交叉引用
本申请要求于2016年8月2日向韩国知识产权局提交的申请号为10-2016-0098493的韩国专利申请的优先权,该申请的全部内容通过引用并入本文。
技术领域
各种实施例总体涉及一种数据存储装置,且更特别地,涉及一种包括非易失性存储器装置的数据存储装置。
背景技术
数据存储装置响应于写入请求存储由外部装置提供的数据。数据存储装置还可响应于读取请求将存储的数据提供至外部装置。使用数据存储装置的外部装置的示例包括便携式和非便携式电子装置,诸如台式计算机、膝上型计算机、笔记本电脑、记事本、平板计算机、数码相机、蜂窝电话、智能电话、智能卡、手持翻译器、导航仪等。数据存储装置可在外部装置的制造期间嵌入外部装置中,或者可单独地制造,然后连接到外部装置。
发明内容
各种实施例涉及一种用于对非易失性存储器装置的多个存储器区域执行损耗均衡操作的数据存储装置。
在实施例中,数据存储装置可包括:非易失性存储器装置,其包括多个存储器区域;以及控制器,其适于基于多个存储器区域的读取计数对多个存储器区域执行回收操作,增加多个存储器区域的回收计数,并基于回收计数对多个存储器区域执行损耗均衡操作。
在实施例中,一种用于操作数据存储装置的方法可包括:基于多个存储器区域的读取计数,对多个存储器区域执行回收操作;增加多个存储器区域的回收计数;以及基于回收计数对多个存储器区域执行损耗均衡操作。
在实施例中,数据存储装置可包括:非易失性存储器装置,其包括多个存储器区域;以及控制器,其适于在对多个存储器区域执行读取操作之后通过参考多个存储器区域的擦除计数来对多个存储器区域执行损耗均衡操作。
附图说明
通过以下参照附图的详细描述,本发明的上述和其它特征及优点对于相关领域的技术人员将变得更加明显,其中:
图1是示出根据本发明的实施例的数据存储装置的框图。
图2A至图2C是示出图1的控制器基于存储器区域的读取计数和回收计数来执行损耗均衡操作的操作方法的图。
图3是图1的数据存储装置的操作方法的流程图。
图4是图1的数据存储装置的另一操作方法的流程图。
图5是图1的数据存储装置的又一操作方法的流程图。
图6是示出根据本发明的实施例的固态驱动器(SSD)的框图。
图7是示出根据本发明的实施例的应用图1的数据存储装置的数据处理系统的框图。
具体实施方式
在下文中,将通过本发明的示例性实施例参照附图来描述根据本发明的数据存储装置及其操作方法。然而,本发明可以不同的形式实施,并且不应被解释为限于本文所阐述的实施例。相反,提供这些实施例以足够详细地描述本发明,使本发明所属领域的技术人员能够实践本发明。
应当理解,本发明的实施例不限于附图中所示的细节,附图不一定按比例绘制,并且在一些情况下,可能已经夸大了比例以便更清楚地描述本发明的某些特征。虽然使用了特定术语,但是应当理解,所使用的术语仅用于描述特定实施例,并且不旨在限制本发明的范围。
在下面的描述中,为了提供对本发明的完整理解,描述了大量具体细节。可以在没有一些或全部这些具体细节的情况下实践本发明。在其它情况下,没有详细地描述公知的进程结构和/或进程以避免不必要地模糊本发明。
还应注意,在一些情况下,如对于相关领域的技术人员显而易见的是,除非另有特别说明,否则结合一个实施例描述的元件(也被称为特征)可以单独使用或与另一个实施例的其它元件组合使用。
现在参照图1,提供了根据本发明的实施例的数据存储装置10。数据存储装置10可被配置为响应于来自外部装置的写入请求来存储从外部装置提供的数据。而且,数据存储装置10可被配置为响应于来自外部装置的读取请求,将存储的数据提供至外部装置。外部装置可与数据存储装置可操作地联接。可采用任何合适的联接设备和通信方案。例如,数据存储装置10可被配置为或形成个人计算机存储卡国际协会(PCMCIA)卡、标准闪存(CF)卡、智能媒体卡、记忆棒、各种多媒体卡(MMC、eMMC、RS-MMC及微型-MMC)、各种安全数字卡(SD、迷你-SD及微型-SD)、通用闪速存储器(UFS)、固态驱动器(SSD)等的部分。
根据图1的实施例的数据存储装置10可包括可操作地彼此联接的控制器100和非易失性存储器装置200。非易失性存储器装置可包括多个存储器区域,例如存储器区域AR1、AR2、AR3及AR4。应当理解,非易失性存储器装置中的存储器区域的数量在设计方面可以不同,并且不限于四个。而且,虽然在图1中示出了数据存储装置10包括一个非易失性存储器装置200,但是应当注意,实施例不限于此,因此,数据存储装置10可包括可操作地联接到控制器100的一个、两个或更多个非易失性存储器装置200。
控制器100可控制数据存储装置10的操作。例如,控制器100可响应于从外部装置接收的写入请求,控制用于将写入数据存储在非易失性存储器装置200中的写入操作的执行。写入数据和写入数据的地址可与写入请求一起从外部装置被接收。或者,在另一示例中,控制器可响应于从外部装置接收的读取请求和地址,控制用于读取存储在非易失性存储器装置200中的数据并用于将读取数据传送至外部装置的读取操作的执行。
控制器100可管理非易失性存储器装置200的存储器区域AR1至AR4中的每一个的读取计数。因此,读取计数可分别对应于存储器区域AR1至AR4。因此,控制器100可管理第一存储器区域AR1的第一读取计数、第二存储器区域AR2的第二读取计数、第三存储器区域的第三读取计数以及第四存储器区域AR4的第四读取计数。在操作中,控制器100可对存储器区域AR1至AR4中的存储器区域执行读取操作,并增加对其执行了该读取操作的存储器区域的读取计数。应当理解,虽然图1示出了在非易失性存储器装置200中仅包括四个存储器区域AR1至AR4的示例,且因此控制器100仅需要管理四个读取计数,即每个存储器区域对应一个读取计数,但实施例不限于这种方式,并且控制器100可管理多个读取计数,存储器装置200的多个存储器区域中的每一个对应一个读取计数。因此,例如,如果存储器装置200包括十个存储器区域AR1至AR10,则控制器100可管理十个读取计数,即,十个存储器区域AR1至AR10中的每一个对应一个读取计数。
现在再次参照图1所示的实施例,存储器区域AR1至AR4中的每一个可包括多个存储器单元,并且控制器100可以存储器单元为单位执行读取操作。例如,存储器区域AR1至AR4可以是存储块,并且存储器单元可以是页面,每个页面包括用于存储数据的多个存储单元。页面可被定义为可操作地联接到同一字线的多个存储单元。由于控制器100管理非易失性存储器装置200的每个存储器区域AR1至AR4的一个读取计数,因此每当对包括在存储器区域中的存储器单元中的任一个执行读取操作时,控制器100可增加相应存储器区域的读取计数。
控制器100可基于存储器区域AR1至AR4的读取计数对存储器区域AR1至AR4中的存储器区域执行回收操作。例如,控制器100可检查读取计数,以确定第一至第四存储器区域AR1至AR4各自的第一至第四读取计数中的读取计数是否已达到读取阈值。如果第一至第四读取计数中的读取计数已达到读取阈值,则控制器100可对读取计数已达到读取阈值的存储器区域执行回收操作。为便于参考,具有已达到读取阈值的读取计数的存储器区域在下文中也将被称为可回收存储器区域。控制器100可通过将存储在可回收存储器区域中的有效数据复制到存储器装置200的空存储器区域,然后对该可回收存储器区域执行擦除操作来对可回收存储器区域执行回收操作。
通常,当在存储器区域中执行读取操作时,会诱发对存储器区域的存储单元的读取干扰,这可逐渐损坏存储在存储器区域中的数据。通过对可回收存储器区域,即对其执行的读取操作的数量已达到读取阈值数量的存储器区域,执行回收操作,控制器100可在存储于可回收存储器区域中的数据被不可修复地损坏之前恢复这些数据,修复所恢复的数据并将它们存储在不同的存储器区域中。可回收存储器区域在存储在其中的数据已被复制在不同的存储器区域后可被擦除以变为空存储器区域。
控制器100还可保持存储器装置200的存储器区域AR1至AR4的回收计数。因此,当控制器正在对存储器区域中的一个执行回收操作时,控制器100可增加存储器区域AR1至AR4的回收计数。控制器100可管理用于所有存储器区域AR1至AR4的一个回收计数,因此每当对存储器区域AR1至AR4中的任何一个执行回收操作时,控制器100可增加回收计数。
同时,即使在没有从外部装置接收到对非易失性存储器装置200的写入请求,而仅从外部装置连续接收到读取请求时,由于内部管理操作,例如,控制器100对非易失性存储器装置200的回收操作,可执行对非易失性存储器装置200的写入操作。因此,即使没有来自外部装置的写入请求,但是存储器区域AR1至AR4也可能由于作为回收操作的部分的控制器100自身执行的写入操作而损耗。因此,即使当仅从外部装置接收到读取请求时,存储器区域AR1至AR4的损耗应当被持续地均衡。根据实施例,控制器100可基于存储器区域AR1至AR4的回收计数来对存储器区域AR1至AR4执行损耗均衡操作。因此,即使仅从外部装置接收到读取请求,存储器区域AR1至AR4的损耗也可被持续地均衡。例如,当存储器区域AR1至AR4的回收计数已达到回收阈值时,控制器100可对存储器区域AR1至AR4执行损耗均衡操作。控制器100可根据存储器区域AR1至AR4的损耗水平执行损耗均衡操作,从而可均匀地使用存储器区域AR1至AR4。控制器100可根据各种损耗均衡方案来执行损耗均衡操作。
控制器100可出于各种目的来管理存储器区域AR1至AR4的擦除计数。控制器100可分别保持存储器区域AR1至AR4中的每个的擦除计数。在这种情况下,在响应于来自外部装置的读取请求对存储器区域AR1至AR4执行读取操作之后,控制器100可通过参考存储器区域AR1至AR4的擦除计数对存储器区域AR1至AR4执行损耗均衡操作。例如,通过比较在执行读取操作之前和之后的存储器区域AR1至AR4的擦除计数,如果存储器区域AR1至AR4的擦除计数中的任何一个增加,则控制器100可执行损耗均衡操作。存储器区域AR1至AR4的擦除计数中的一个的增加可意味着因为可回收存储器区域已达到等于阈值读取计数的读取计数,因此在读取操作之后已经对存储器区域AR1至AR4中的可回收存储器区域执行了读取回收操作。因此,擦除计数中的一个的增加意味着与执行读取操作之前相比,已经对存储器区域AR1至AR4执行了大量的附加操作。因此,通过比较在执行读取操作之前和之后的擦除计数,控制器100可执行损耗均衡操作,从而即使仅从外部装置接收到读取请求,也可以持续地均衡存储器区域AR1至AR4的损耗。
此外,控制器100可保持从外部装置接收的写入数据的大小的累积计数,并可基于写入数据的大小的累积计数对存储器区域AR1至AR4执行损耗均衡操作。详细地,当写入数据的大小的累积计数已达到数据大小阈值时,控制器100可对存储器区域AR1至AR4执行损耗均衡操作。因此,控制器100可根据预定的数据大小阈值,持续地均衡由来自外部装置的写入请求引起的存储器区域AR1至AR4的损耗。
根据控制器100的控制,非易失性存储器装置200可存储从控制器100传送的数据,并可读取存储的数据并将读取的数据传送至控制器100。非易失性存储器装置200可包括存储器区域AR1至AR4。虽然在图1中示出了非易失性存储器装置200包括四个存储器区域AR1至AR4,但是应当注意,实施例不限于此。
非易失性存储器装置200可包括诸如NAND闪存或NOR闪存的闪速存储器、铁电随机存取存储器(FeRAM)、相变随机存取存储器(PCRAM)、磁阻随机存取存储器(MRAM)、电阻式随机存取存储器(ReRAM)等。
图2A至图2C是说明图1的控制器100基于存储器区域AR1至AR4的读取计数RD_CT和回收计数RCL_CT来执行损耗均衡操作的操作方法的图。在图2A至图2C中,假定读取阈值RD_TH设置为“100”,回收阈值RCL_TH设置为“30”。
参照图2A,非易失性存储器装置200的四个存储器区域AR1至AR4各自的读取计数RD_CT可具有值“25”、“50”、“65”及“70”。而且,四个存储器区域AR1至AR4的回收计数RCL_CT可具有值“10”。然后,控制器100可对例如第四存储器区域AR4执行读取操作。控制器100可将第四存储器区域AR4的读取计数RD_CT从“70”增加到“71”。由于第四存储器区域AR4的读取计数RD_CT尚未达到读取阈值RD_TH,因此不对第四存储器区域AR4执行回收操作。而且,由于回收计数RCL_CT尚未达到回收阈值RCL_TH,因此不对存储器区域AR1至AR4执行损耗均衡操作。
参照图2B,随着读取计数RD_CT随时间的推移而增加,第三存储器区域AR3的读取计数RD_CT可能在某一时间达到读取阈值RD_TH“100”。更具体地,图2B示出了数据存储装置10的状态,其中已经对第三存储器区域AR3执行了读取操作,并且其中非易失性存储器装置200的四个存储器区域AR1至AR4各自的读取计数RD_CT具有值“60”、“85”、“100”及“95”。因此,然后控制器100可对第三存储器区域AR3执行回收操作,并将存储器区域AR1至AR4的回收计数RCL_CT从“10”增加到“11”。由于回收计数RCL_CT尚未达到回收阈值RCL_TH,因此不对存储器区域AR1至AR4执行损耗均衡操作。
参照图2C,随着时间的推移,存储器区域AR1至AR4的回收计数RCL_CT可能达到回收阈值RCL_TH“30”。因此,控制器100可对存储器区域AR1至AR4执行损耗均衡操作。在对存储器区域AR1至AR4执行损耗均衡操作之后,控制器100可初始化存储器区域AR1至AR4的回收计数RCL_CT。
因此,根据本发明的实施例,可通过在仅从外部装置连续接收到读取请求期间对非易失性存储器装置200执行损耗均衡操作来延长非易失性存储器装置200的寿命。
图3是说明图1的数据存储装置10的操作方法的流程图。
参照图3,在步骤S110中,控制器100可响应于来自外部装置的请求,对非易失性存储器装置200的存储器区域AR1至AR4中的任何一个存储器区域执行读取操作。
在步骤S120中,控制器100可增加对其执行读取操作的存储器区域的读取计数。
在步骤S130中,控制器100可确定对其执行读取操作的存储器区域的读取计数是否已达到读取阈值。当读取计数尚未达到读取阈值(步骤S130中为“否”)时,可结束进程。当读取计数已达到读取阈值(步骤S130中为“是”)时,进程可进行步骤S140。
在步骤S140中,控制器100可对与已达到读取阈值的读取计数对应的存储器区域执行回收操作。
在步骤S150中,控制器100可增加存储器区域AR1至AR4的回收计数。
在步骤S160中,控制器100可确定回收计数是否已达到回收阈值。当回收计数尚未达到回收阈值(步骤S160中为“否”)时,可结束进程。当回收计数已达到回收阈值(步骤S160中为“是”)时,进程可进行步骤S170。
在步骤S170中,控制器100可对存储器区域AR1至AR4执行损耗均衡操作。在对存储器区域AR1至AR4执行损耗均衡操作之后,控制器100可初始化存储器区域AR1至AR4的回收计数。
图4是说明图1的数据存储装置10的另一操作方法的流程图。
参照图4,在步骤S210中,控制器100可响应于来自外部装置的请求,对非易失性存储器装置200的存储器区域AR1至AR4中的任何一个存储器区域执行读取操作。
在步骤S220中,控制器100可确定存储器区域AR1至AR4的擦除计数中的任何一个与执行读取操作之前相比是否已增加。擦除计数的增加可意味着当与执行读取操作之前相比时,对应的存储器区域被损耗,并且可能由例如读取回收操作引起。当擦除计数未改变(步骤S220中为“否”)时,可结束进程。当擦除计数中的任何一个已增加(步骤S220中为“是”)时,进程可进行步骤S230。在步骤S230中,控制器100可对存储器区域AR1至AR4执行损耗均衡操作。
图5是说明图1的数据存储装置10的又一操作方法的流程图。
参照图5,在步骤S310中,控制器100可响应于来自外部装置的请求,对非易失性存储器装置200的存储器区域AR1至AR4中的任何一个存储器区域执行写入操作。
在步骤S320中,控制器100可对接收的写入数据的累积大小进行计数。
在步骤S330中,控制器100可确定累积的写入数据的大小是否已达到数据大小阈值。当累积的写入数据的大小尚未达到数据大小阈值(步骤S330中为“否”)时,可结束进程。当累积的写入数据的大小已达到数据大小阈值(步骤S330中为“是”)时,进程可进行步骤S340。
在步骤S340中,控制器100可对存储器区域AR1至AR4执行损耗均衡操作。
图6是示出根据本发明的实施例的固态驱动器(SSD)1000的框图。
SSD 1000可包括控制器1100和存储介质1200。
控制器1100可控制主机装置1500和存储介质1200之间的数据交换。控制器1100可包括经由内部总线1170可操作地联接的处理器1110、随机存取存储器(RAM)1120、只读存储器(ROM)1130、错误校正码(ECC)单元1140、主机接口1150和存储介质接口1160。存储介质1200可包括多个非易失性存储器装置NVM0至NVMn,每个非易失性存储器装置包括多个存储器区域。
控制器1100可基本上类似于图1所示的控制器100进行操作。控制器1100可基于多个存储器区域的读取计数,对多个非易失性存储器装置NVM0至NVMn中的非易失性存储器装置的多个存储器区域执行回收操作,增加多个存储器区域的回收计数,以及基于回收计数对该多个存储器区域执行损耗均衡操作。控制器1100可管理多个存储器区域的擦除计数,并且当在执行读取操作后擦除计数中的任何一个已经增加时,执行损耗均衡操作。而且,控制器1100可保持从外部装置接收的写入数据的大小的累积计数,并且基于写入数据的大小的累积计数对多个存储器区域执行损耗均衡操作。
处理器1110可控制控制器1100的一般操作。响应于来自主机装置1500的数据处理请求,处理器1110可将数据存储在存储介质1200中,以及从存储介质1200读取存储的数据。为有效地管理存储介质1200,处理器1110可控制SSD 1000的内部操作,诸如合并操作、损耗均衡操作等。
RAM 1120可存储待由处理器1110使用的程序和程序数据。RAM 1120可在将从主机接口1150传输的数据传送至存储介质1200之前临时存储这些数据,并且可在将从存储介质1200传输的数据传送至主机装置1500之前临时存储这些数据。
ROM 1130可存储待由处理器1110读取的程序代码。程序代码可包括待由处理器1110处理的指令,使得处理器1110可控制控制器1100的内部单元。
ECC单元1140可对待存储在存储介质1200中的数据进行编码,并可对从存储介质1200读取的数据进行解码。ECC单元1140可根据ECC算法检测并校正数据中出现的错误。
主机接口1150可与主机装置1500交换数据处理请求、数据等。
存储介质接口1160可将控制信号和数据传输至存储介质1200。存储介质接口1160可从存储介质1200接收数据。存储介质接口1160可通过多个通道CH0至CHn联接到存储介质1200。
存储介质1200可包括多个非易失性存储器装置NVM0至NVMn。多个非易失性存储器装置NVM0至NVMn中的每一个可根据控制器1100的控制来执行写入操作和读取操作。图7是示出根据本发明的实施例的应用图1的数据存储装置10的数据处理系统2000的框图。
数据处理系统2000可包括计算机、膝上型计算机、上网本、智能电话、数字电视、数码相机、导航仪等。数据处理系统2000可包括主处理器2100、主存储器装置2200、数据存储装置2300和输入/输出装置2400。数据处理系统2000的内部单元可通过系统总线2500交换数据、控制信号等。
主处理器2100可控制数据处理系统2000的一般操作。主处理器2100可以是中央处理单元,例如,诸如微处理器。主处理器2100可在主存储器装置2200上执行诸如操作系统、应用、装置驱动程序等的软件。
主存储器装置2200可存储待由主处理器2100使用的程序及程序数据。主存储器装置2200可临时存储待传输至数据存储装置2300和输入/输出装置2400的数据。
数据存储装置2300可包括控制器2310和存储介质2320。数据存储装置2300可基本上类似于图1的数据存储装置10进行配置和操作。
输入/输出装置2400可包括键盘、扫描仪、触摸屏、屏幕监视器、打印机、鼠标等,其能够与用户交换数据,诸如从用户接收用于控制数据处理系统2000的指令或向用户提供处理结果。
根据实施例,数据处理系统2000可通过诸如局域网(LAN)、广域网(WAN)、无线网络等的网络2600与至少一个服务器2700通信。数据处理系统2000可包括用于访问网络2600的网络接口(未示出)。
尽管上面已经描述了各种实施例,但是本领域技术人员将理解的是,所描述的实施例仅是示例。因此,本文所描述的数据存储装置及其操作方法不应限于所描述的实施例。对于本发明所属领域的技术人员来说显而易见的是,在不脱离如权利要求所限定的本发明的精神和范围的情况下,可以进行各种其它改变和修改。
Claims (19)
1.一种数据存储装置,其包括:
非易失性存储器装置,其包括多个存储器区域;以及
控制器,其适于基于所述多个存储器区域的读取计数对所述多个存储器区域执行回收操作,增加所述多个存储器区域的回收计数,并基于所述回收计数对所述多个存储器区域执行损耗均衡操作。
2.根据权利要求1所述的数据存储装置,其中所述控制器确定所述读取计数中的任何一个是否达到读取阈值,并且对所述多个存储器区域中与达到所述读取阈值的读取计数对应的存储器区域执行所述回收操作。
3.根据权利要求2所述的数据存储装置,其中所述控制器通过将存储在所述存储器区域中的有效数据复制到空存储器区域并对所述存储器区域执行擦除操作来执行所述回收操作。
4.根据权利要求1所述的数据存储装置,其中所述控制器确定所述回收计数是否达到回收阈值,并根据确定结果对所述多个存储器区域执行所述损耗均衡操作。
5.根据权利要求1所述的数据存储装置,其中所述控制器对所述多个存储器区域中的任何一个执行读取操作,并增加所述读取计数中执行所述读取操作的存储器区域的读取计数。
6.根据权利要求1所述的数据存储装置,其中所述控制器累积从外部装置传输的写入数据,并基于所累积的写入数据的大小对所述多个存储器区域执行所述损耗均衡操作。
7.根据权利要求6所述的数据存储装置,其中所述控制器确定所累积的写入数据的大小是否达到数据大小阈值,并根据确定结果对所述多个存储器区域执行所述损耗均衡操作。
8.根据权利要求6所述的数据存储装置,其中所述控制器分别管理对应于所述多个存储器区域的读取计数,并管理所述多个存储器区域的回收计数。
9.一种用于操作数据存储装置的方法,所述方法包括:
基于多个存储器区域的读取计数,对所述多个存储器区域执行回收操作;
增加所述多个存储器区域的回收计数;以及
基于所述回收计数对所述多个存储器区域执行损耗均衡操作。
10.根据权利要求9所述的方法,其中执行所述回收操作包括:
确定所述读取计数中的任何一个是否达到读取阈值;以及
根据确定结果,对所述多个存储器区域中与达到所述读取阈值的读取计数对应的存储器区域执行所述回收操作。
11.根据权利要求10所述的方法,其中执行所述回收操作包括:
将存储在所述存储器区域中的有效数据复制到空存储器区域;以及
对所述存储器区域执行擦除操作。
12.根据权利要求9所述的方法,其中执行所述损耗均衡操作包括:
确定所述回收计数是否达到回收阈值;以及
根据确定结果对所述多个存储器区域执行所述损耗均衡操作。
13.根据权利要求9所述的方法,其进一步包括:
对所述多个存储器区域中的任何一个执行读取操作;以及
增加所述读取计数中执行所述读取操作的存储器区域的读取计数。
14.根据权利要求9所述的方法,其进一步包括:
累积从外部装置传输的写入数据;以及
基于所累积的写入数据的大小对所述多个存储器区域执行所述损耗均衡操作。
15.根据权利要求14所述的方法,其中执行所述损耗均衡操作包括:
确定所累积的写入数据的大小是否达到数据大小阈值;以及
根据确定结果对所述多个存储器区域执行所述损耗均衡操作。
16.根据权利要求9所述的方法,其中所述读取计数分别对应于所述多个存储器区域,所述回收计数对应于所述多个存储器区域。
17.一种数据存储装置,其包括:
非易失性存储器装置,其包括多个存储器区域;以及
控制器,其适于在对所述多个存储器区域执行读取操作之后通过参考所述多个存储器区域的擦除计数来对所述多个存储器区域执行损耗均衡操作。
18.根据权利要求17所述的数据存储装置,其中当在执行所述读取操作之前和之后,所述擦除计数中的任何一个增加时,所述控制器执行所述损耗均衡操作。
19.根据权利要求17所述的数据存储装置,其中所述擦除计数分别对应于所述多个存储器区域。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2016-0098493 | 2016-08-02 | ||
KR1020160098493A KR20180014975A (ko) | 2016-08-02 | 2016-08-02 | 데이터 저장 장치 및 그것의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107678976A true CN107678976A (zh) | 2018-02-09 |
CN107678976B CN107678976B (zh) | 2021-09-24 |
Family
ID=59981396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611231378.8A Active CN107678976B (zh) | 2016-08-02 | 2016-12-28 | 数据存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9785550B1 (zh) |
KR (1) | KR20180014975A (zh) |
CN (1) | CN107678976B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110362423A (zh) * | 2018-04-09 | 2019-10-22 | 爱思开海力士有限公司 | 优化恢复性能的数据存储装置、操作方法以及存储系统 |
CN110825654A (zh) * | 2018-08-08 | 2020-02-21 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN111258934A (zh) * | 2018-11-30 | 2020-06-09 | 爱思开海力士有限公司 | 存储器控制器、包括其的存储器系统及操作其的方法 |
CN112445720A (zh) * | 2019-08-29 | 2021-03-05 | 美光科技公司 | 对存储器子系统部件的存取频率进行分类 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10922221B2 (en) | 2018-03-28 | 2021-02-16 | Micron Technology, Inc. | Memory management |
KR102627873B1 (ko) | 2018-10-25 | 2024-01-23 | 에스케이하이닉스 주식회사 | 메모리 장치, 이를 포함하는 메모리 시스템 및 그것의 동작 방법 |
KR20200125231A (ko) * | 2019-04-26 | 2020-11-04 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
CN112233715B (zh) * | 2019-07-15 | 2024-06-18 | 美光科技公司 | 用于存储器系统的维护操作 |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040151031A1 (en) * | 2003-02-04 | 2004-08-05 | Yoshiyuki Tanaka | Nonvolatile semiconductor memory |
CN101494085A (zh) * | 2008-01-22 | 2009-07-29 | 群联电子股份有限公司 | 防止非易失性存储器发生读取干扰的方法及其控制器 |
CN101546298A (zh) * | 2008-03-28 | 2009-09-30 | 群联电子股份有限公司 | 用于闪存的数据读取方法、其控制器与储存系统 |
CN101627444A (zh) * | 2007-10-03 | 2010-01-13 | 株式会社东芝 | 半导体存储装置 |
US20100161880A1 (en) * | 2006-12-27 | 2010-06-24 | Guangqing You | Flash initiative wear leveling algorithm |
CN102157202A (zh) * | 2008-01-22 | 2011-08-17 | 群联电子股份有限公司 | 防止非易失性存储器发生读取干扰的方法及其控制器 |
CN102495806A (zh) * | 2011-11-25 | 2012-06-13 | 清华大学 | 相变内存周期性磨损均衡方法及其内存管理方法 |
CN102841852A (zh) * | 2011-06-24 | 2012-12-26 | 华为技术有限公司 | 磨损均衡方法、存储装置及信息系统 |
CN103092531A (zh) * | 2013-01-21 | 2013-05-08 | 中国科学院苏州纳米技术与纳米仿生研究所 | 一种消除固态存储系统读取错误的方法 |
CN103136108A (zh) * | 2011-12-05 | 2013-06-05 | 慧荣科技股份有限公司 | 快闪存储装置及其数据读取方法 |
US20140215129A1 (en) * | 2013-01-28 | 2014-07-31 | Radian Memory Systems, LLC | Cooperative flash memory control |
US20150113341A1 (en) * | 2009-08-12 | 2015-04-23 | International Business Machines Corporation | Efficient Reduction of Read Disturb Errors |
CN104813408A (zh) * | 2012-12-14 | 2015-07-29 | 桑迪士克科技股份有限公司 | 跟踪对非易失性存储器的区域的读访问 |
CN105097044A (zh) * | 2014-05-16 | 2015-11-25 | 爱思开海力士有限公司 | 读取干扰检测 |
CN105159601A (zh) * | 2015-08-07 | 2015-12-16 | 杭州海兴电力科技股份有限公司 | 一种提高Flash擦写寿命的方法 |
CN105374388A (zh) * | 2014-08-19 | 2016-03-02 | 三星电子株式会社 | 存储装置和操作存储装置的方法 |
US20160124679A1 (en) * | 2014-10-29 | 2016-05-05 | Sandisk Technologies Inc. | Read Scrub with Adaptive Counter Management |
CN105653201A (zh) * | 2014-12-02 | 2016-06-08 | 旺宏电子股份有限公司 | 读取平均化方法及使用读取平均化方法的存储器装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7984084B2 (en) * | 2005-08-03 | 2011-07-19 | SanDisk Technologies, Inc. | Non-volatile memory with scheduled reclaim operations |
US8074011B2 (en) * | 2006-12-06 | 2011-12-06 | Fusion-Io, Inc. | Apparatus, system, and method for storage space recovery after reaching a read count limit |
US9569120B2 (en) * | 2014-08-04 | 2017-02-14 | Nvmdurance Limited | Adaptive flash tuning |
JP6107802B2 (ja) * | 2014-12-15 | 2017-04-05 | コニカミノルタ株式会社 | 不揮発性メモリ制御装置、不揮発性メモリ制御方法及びプログラム |
US10338817B2 (en) * | 2014-12-30 | 2019-07-02 | Sandisk Technologies Llc | Systems and methods for storage recovery |
-
2016
- 2016-08-02 KR KR1020160098493A patent/KR20180014975A/ko not_active Application Discontinuation
- 2016-11-29 US US15/363,345 patent/US9785550B1/en active Active
- 2016-12-28 CN CN201611231378.8A patent/CN107678976B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040151031A1 (en) * | 2003-02-04 | 2004-08-05 | Yoshiyuki Tanaka | Nonvolatile semiconductor memory |
US20100161880A1 (en) * | 2006-12-27 | 2010-06-24 | Guangqing You | Flash initiative wear leveling algorithm |
CN101627444A (zh) * | 2007-10-03 | 2010-01-13 | 株式会社东芝 | 半导体存储装置 |
CN101494085A (zh) * | 2008-01-22 | 2009-07-29 | 群联电子股份有限公司 | 防止非易失性存储器发生读取干扰的方法及其控制器 |
CN102157202A (zh) * | 2008-01-22 | 2011-08-17 | 群联电子股份有限公司 | 防止非易失性存储器发生读取干扰的方法及其控制器 |
CN101546298A (zh) * | 2008-03-28 | 2009-09-30 | 群联电子股份有限公司 | 用于闪存的数据读取方法、其控制器与储存系统 |
US20150113341A1 (en) * | 2009-08-12 | 2015-04-23 | International Business Machines Corporation | Efficient Reduction of Read Disturb Errors |
CN102841852A (zh) * | 2011-06-24 | 2012-12-26 | 华为技术有限公司 | 磨损均衡方法、存储装置及信息系统 |
CN102495806A (zh) * | 2011-11-25 | 2012-06-13 | 清华大学 | 相变内存周期性磨损均衡方法及其内存管理方法 |
CN103136108A (zh) * | 2011-12-05 | 2013-06-05 | 慧荣科技股份有限公司 | 快闪存储装置及其数据读取方法 |
CN104813408A (zh) * | 2012-12-14 | 2015-07-29 | 桑迪士克科技股份有限公司 | 跟踪对非易失性存储器的区域的读访问 |
CN103092531A (zh) * | 2013-01-21 | 2013-05-08 | 中国科学院苏州纳米技术与纳米仿生研究所 | 一种消除固态存储系统读取错误的方法 |
US20140215129A1 (en) * | 2013-01-28 | 2014-07-31 | Radian Memory Systems, LLC | Cooperative flash memory control |
CN105097044A (zh) * | 2014-05-16 | 2015-11-25 | 爱思开海力士有限公司 | 读取干扰检测 |
CN105374388A (zh) * | 2014-08-19 | 2016-03-02 | 三星电子株式会社 | 存储装置和操作存储装置的方法 |
US20160124679A1 (en) * | 2014-10-29 | 2016-05-05 | Sandisk Technologies Inc. | Read Scrub with Adaptive Counter Management |
CN105653201A (zh) * | 2014-12-02 | 2016-06-08 | 旺宏电子股份有限公司 | 读取平均化方法及使用读取平均化方法的存储器装置 |
CN105159601A (zh) * | 2015-08-07 | 2015-12-16 | 杭州海兴电力科技股份有限公司 | 一种提高Flash擦写寿命的方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110362423A (zh) * | 2018-04-09 | 2019-10-22 | 爱思开海力士有限公司 | 优化恢复性能的数据存储装置、操作方法以及存储系统 |
CN110362423B (zh) * | 2018-04-09 | 2023-10-10 | 爱思开海力士有限公司 | 优化恢复性能的数据存储装置、操作方法以及存储系统 |
CN110825654A (zh) * | 2018-08-08 | 2020-02-21 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN110825654B (zh) * | 2018-08-08 | 2023-04-07 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN111258934A (zh) * | 2018-11-30 | 2020-06-09 | 爱思开海力士有限公司 | 存储器控制器、包括其的存储器系统及操作其的方法 |
CN111258934B (zh) * | 2018-11-30 | 2024-03-08 | 爱思开海力士有限公司 | 存储器控制器、包括其的存储器系统及操作其的方法 |
CN112445720A (zh) * | 2019-08-29 | 2021-03-05 | 美光科技公司 | 对存储器子系统部件的存取频率进行分类 |
US11650933B2 (en) | 2019-08-29 | 2023-05-16 | Micron Technology, Inc. | Classifying access frequency of a memory sub-system component |
Also Published As
Publication number | Publication date |
---|---|
KR20180014975A (ko) | 2018-02-12 |
US9785550B1 (en) | 2017-10-10 |
CN107678976B (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107678976A (zh) | 数据存储装置及其操作方法 | |
US11645199B2 (en) | Storage device and garbage collection method thereof | |
US10275162B2 (en) | Methods and systems for managing data migration in solid state non-volatile memory | |
CN110347332B (zh) | 用于存储器系统的垃圾收集策略及执行该垃圾收集的方法 | |
US9239785B2 (en) | Stochastic block allocation for improved wear leveling | |
CN107168885A (zh) | 存储系统、信息处理系统及非易失性存储器的控制方法 | |
CN106164873B (zh) | 当到达寿命终止条件时约束写入固态存储器的方法和装置 | |
CN108415663B (zh) | 数据存储装置的操作方法 | |
CN105489239A (zh) | 数据储存设备及其操作方法 | |
CN108108261B (zh) | 数据存储装置及其操作方法 | |
CN108153680A (zh) | 数据存储装置及其操作方法 | |
US20190079830A1 (en) | Data storage device and operating method thereof | |
CN106980466B (zh) | 数据存储装置及其操作方法 | |
CN107783729A (zh) | 数据存储装置 | |
CN107025942A (zh) | 非易失性存储器装置及包括其的数据存储装置的操作方法 | |
CN107958690B (zh) | 数据存储装置及其操作方法 | |
CN108628545A (zh) | 数据存储装置及其操作方法 | |
CN109918315B (zh) | 存储器系统及存储器系统的操作方法 | |
CN107492394A (zh) | 数据存储装置及其操作方法 | |
CN109901792A (zh) | 存储器系统及其操作方法 | |
KR102507769B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US20220012180A1 (en) | Memory system for meta data management and operating method of memory system | |
CN106601294A (zh) | 数据储存设备及其操作方法 | |
CN106484320A (zh) | 依赖于重用时段来操作管理耗损水平的存储设备的方法 | |
US10656846B2 (en) | Operating method of memory system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |