CN106504794B - 用于闪存装置的操作参数 - Google Patents

用于闪存装置的操作参数 Download PDF

Info

Publication number
CN106504794B
CN106504794B CN201610804633.7A CN201610804633A CN106504794B CN 106504794 B CN106504794 B CN 106504794B CN 201610804633 A CN201610804633 A CN 201610804633A CN 106504794 B CN106504794 B CN 106504794B
Authority
CN
China
Prior art keywords
flash memory
memory devices
flash
value
storage system
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.)
Active
Application number
CN201610804633.7A
Other languages
English (en)
Other versions
CN106504794A (zh
Inventor
M.S.罗思伯格
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.)
Western Digital Technologies Inc
Original Assignee
HGST Netherlands BV
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 HGST Netherlands BV filed Critical HGST Netherlands BV
Publication of CN106504794A publication Critical patent/CN106504794A/zh
Application granted granted Critical
Publication of CN106504794B publication Critical patent/CN106504794B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50004Marginal testing, e.g. race, voltage or current testing of threshold voltage
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50016Marginal testing, e.g. race, voltage or current testing of retention
    • 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/1041Resource optimization
    • 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/7204Capacity control, e.g. partitioning, end-of-life degradation
    • 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/7206Reconfiguration of flash memory system
    • 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/7208Multiple device management, e.g. distributing data over multiple flash devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • 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

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)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

一种用于管理闪存存储系统的机器实现的方法包括:确定该闪存存储系统中的多个闪存装置的每一个的预测寿命值,其中所述多个闪存装置的至少一个的预测寿命值高于所述多个闪存装置的至少另一个的预测寿命值。该方法还包括基于所述多个闪存装置的相应预测寿命值,来确定所述多个闪存装置的每一个的操作参数。该方法还包括基于确定的操作参数来配置所述多个闪存装置。

Description

用于闪存装置的操作参数
技术领域
本公开涉及闪存存储系统,并更具体地,涉及用于闪存装置的优化操作参数。
背景技术
诸如固态驱动器(SSD)的闪存存储系统使用闪存作为非易失性储存介质。闪存存储系统可包括多个闪存装置。闪存装置当存储数据时被编程(例如,写入),并且当释放闪存装置上的空间时被擦除。闪存装置具有在变为不可使用之前闪存装置能经受的有限数目的编程/擦除(P/E)周期。编程电压和其他操作参数可进一步影响闪存装置在故障之前能经受的P/E周期的数目。
发明内容
本技术通过基于闪存装置的预测寿命值确定操作参数,来优化闪存存储系统中的操作参数。可通过测试闪存装置来确定该预测寿命值。
根据本技术的方面,提供了一种用于管理闪存存储系统的机器实现的方法。该方法包括:确定该闪存存储系统中的多个闪存装置的每一个的预测寿命值,其中所述多个闪存装置的至少一个的预测寿命值高于所述多个闪存装置的至少另一个的预测寿命值。该方法还包括基于所述多个闪存装置的相应预测寿命值,来确定所述多个闪存装置的每一个的操作参数。该方法还包括基于确定的操作参数来配置所述多个闪存装置。
根据本技术的其他方面,提供了一种闪存存储系统。该闪存存储系统包括多个闪存装置和控制器。所述多个闪存装置的每一个具有预测寿命值,其中所述多个闪存装置的至少一个的预测寿命值高于所述多个闪存装置的至少另一个的预测寿命值。该控制器被配置为接收用于数据操作的命令。该控制器被配置为确定具有与该数据操作关联的闪存块的所述多个闪存装置之一的操作参数,其中基于所述多个闪存装置之一的相应预测寿命值,来确定操作参数。该控制器还被配置为基于确定的操作参数来配置所述多个闪存装置之一。该控制器还被配置为在所述多个闪存装置之一上运行该数据操作。
根据本技术的其他方面,提供了一种利用可运行指令编码的机器可读介质,该可运行指令当由处理器运行时,促使处理器执行操作。所述操作包括接收用于数据操作的命令。所述操作还包括确定具有与该数据操作关联的闪存块的所述多个闪存装置之一的操作参数,其中所述多个闪存装置的每一个具有预测寿命值,其中所述多个闪存装置的至少两个具有不同预测寿命值,其中基于所述多个闪存装置之一的相应预测寿命值,来确定操作参数。该操作还包括基于确定的操作参数来配置所述多个闪存装置之一。该操作还包括在所述多个闪存装置之一上运行该数据操作。
可理解的是,根据以下详细描述,本技术的其他配置对于本领域技术人员将变得容易理解,其中通过示意性方式示出和描述了本技术的各个配置。将认识到,本技术能够具有其他和不同配置,并且其几个细节能够具有各个其他方面的修改,而全部不脱离本技术的范围。因此,图和详细描述应被看作本质上示意性的而不是限制性的。
附图说明
图1是图示了根据本技术的各方面的闪存存储系统的组件的框图。
图2是图示了根据本技术的各方面的用于管理闪存存储系统的方法的流程图。
图3是图示了根据本技术的各方面的用于管理闪存存储系统的另一方法的流程图。
具体实施方式
下面阐明的详细描述意欲作为本技术的各个配置的描述,并且不意欲仅代表其中可实践本技术的配置。附图被合并在这里并构成详细描述的一部分。为了提高本技术的全面理解的目的,详细描述包括特定细节。然而,可在没有这些特定细节的情况下实践本技术。在一些实例中,按照框图形式示出了结构和组件,以便避免使得本技术的概念模糊。
诸如固态驱动器(SSD)的闪存存储系统包括一个或多个闪存装置,每一闪存装置可包括一个或多个晶粒(dies)。每一闪存装置或晶粒包括闪存单元的阵列。每一存储单元包括用来存储数据的一个或多个比特的浮栅晶体管。闪存单元可被组织为物理块,每一物理块包括多个页面。数据按照页面的写入单元被写入到闪存。数据按照物理块的擦除单元从闪存擦除。每一P/E周期可使得闪存装置物理降级或磨损,从而在该磨损使得储存的整体性和可靠性恶化之前、每一闪存装置具有确定数目的P/E周期。
通过向闪存装置的存储单元的适当浮栅晶体管施加电压,来编程或擦除闪存装置。通过施加较高初始电压(例如,增加初始脉冲值)、按照较快速率增加施加的电压(例如,增加增量脉冲值)、或施加电压达到较长持续时间(例如,增加脉冲宽度),可改进闪存装置的性能(例如,较快写入和/或擦除速度)。然而,较高性能可引起闪存装置的较快降级,使得闪存装置的寿命减少。相反,降低闪存装置的性能可增加闪存装置的寿命。通过确定闪存装置的预测寿命值,可调整闪存装置的性能用于期望用途。
图1是图示了根据本技术的各方面的闪存存储系统110的组件的框图。如图1中描绘的,闪存存储系统110包括接口115、控制器120、闪存装置130A和闪存装置130B(统称为闪存装置130)、以及存储器125。接口115促进闪存存储系统110和主机150之间的数据、命令和/或控制信号的通信。控制器120控制闪存存储系统110的操作,以根据从主机150接收的命令来存储和恢复闪存装置130中的数据。控制器120可包括处理器。可以是随机存取存储器(RAM)的存储器125提供临时储存空间,用于由控制器120处理命令并在主机150和闪存装置130之间传递数据。下面更详细地描述这些组件的每一个的操作。
接口115提供主机150和闪存存储系统110之间的物理和电气连接。接口115被配置为促进经由物理和电气连接在主机150和闪存存储系统110之间的数据、命令和/或控制信号的通信。该连接以及与接口115的通信可基于诸如通用串行总线(USB)、小型计算机系统接口(SCSI)、串行高级技术附加(SATA)等的标准接口。作为选择,连接和/或通信可基于私有接口,尽管本技术不限于任何特定类型接口。
控制器120管理主机150和闪存装置130之间的数据的流动。控制器120被配置为经由接口115从主机150接收命令和数据。例如,控制器120可从主机150接收数据和写入命令,以在闪存装置130中写入数据。控制器120被进一步配置为经由接口115向主机150发送数据。例如,控制器120可响应于读取命令从闪存装置130读取数据并且向主机150发送数据。控制器120被进一步配置为基于内部控制算法或可从主机150接收的其他类型命令,而管理在闪存装置130和存储器125中存储的数据。例如,控制器120被配置为执行诸如碎片收集(GC)和其他维护操作的数据操作。本领域技术人员将熟悉闪存装置中的控制器所执行的其他传统操作,这里将不对其进行详细描述。
控制器120可利用通用目的处理器、微控制器、数字信号处理器(DSP)、片上系统(SoC)、特定用途集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立门或晶体管逻辑器件、分立硬件组件、或被设计和配置为这些这里描述的操作和功能的其任何组合来实现。控制器120可通过运行机器/计算机可读介质上存储的一个或多个指令序列,而执行这里描述的操作和功能。机器/计算机可读介质可以是闪存装置130、存储器125、或控制器120能从其读取指令或代码的其他类型介质。例如,闪存存储系统110可包括只读存储器(ROM),诸如EPROM或EEPROM,其利用包括在闪存存储系统110的操作期间由控制器120读取和运行的一个或多个指令序列的固件/软件来编码。
闪存装置130的每一个可以是单一闪存芯片或晶粒,或者可代表多个闪存芯片的组。闪存装置130可在控制器120通过其从闪存装置130读取并向闪存装置130写入数据的多个通道之间组织,或者耦接到单一通道。闪存装置130可使用NAND闪存来实现。闪存装置130的每一个可包括寄存器135,其可以是用于存储特定数据(诸如相应闪存装置130的特性和/或操作参数)的一个或多个寄存器。这些操作参数可包括诸如初始脉冲值、增量脉冲值、和脉冲宽度的写入和/或擦除操作参数。
闪存装置130包括被划分为诸如闪存块140的储存块的多个存储单元。尽管图1示出了闪存装置130的每一个具有两个闪存块140,但是闪存装置130可具有更多或更少闪存块140,并且闪存装置130的每一个可具有相同或不同数目的闪存块140。闪存块140可被称为数据块或存储块,并且可由控制器120使用物理块地址寻址。闪存块140的每一个进一步使用物理页面地址或与包括参考页面的储存块的物理块地址的偏移、被划分为控制器120可寻址的多个数据片段或页面。页面可存储扇区或其他主数据单元。闪存块140代表在单一擦除操作中在闪存装置130内擦除的数据的单元。物理页面代表在单一读取或写入操作中从闪存装置130读取或向闪存装置130写入的数据的单元。尽管在块和页面方面描述了闪存装置130,但是可使用其他技术来表示闪存装置内的这些数据单元。
本技术不限于任何特定容量的闪存。例如,储存块的每一个可包括32、64、128或512页。另外,每一页可包括512字节、2KB、4KB或32KB。每一扇区可包括4KB或其他尺寸,使得扇区可与和页面具有相同尺寸,或者每一页可存在多个扇区。
在图1中,存储器125代表在闪存存储系统110的操作期间与控制器120耦接并由控制器120使用的易失性存储器。控制器120可在存储器125中缓存命令和/或数据。控制器120还可以使用存储器125来存储映射表或查找表,用来将主机150使用的逻辑数据地址变换为与闪存装置130的部分对应的虚拟和/或物理地址。用来管理闪存装置的其他类型表格、数据、状态指示符等可由控制器120存储在存储器125中。例如,闪存装置130的特性和/或参数可被存储在存储器125中。存储器125可使用动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)或其他类型易失性随机存取存储器来实现,而不脱离本技术的范围。
主机150可以是计算装置,诸如计算机/服务器、智能电话、或从闪存存储系统110读取数据并向闪存存储系统110写入数据的任何其他电子装置。主机150可具有操作系统或向闪存存储系统110发布读取和写入命令的其他软件。闪存存储系统110可与主机150集成或者可在主机150外部。闪存存储系统110可无线连接到主机150、或者可物理连接到主机150。
控制器120被配置为对闪存装置130执行数据操作。例如,控制器120可确定GC在闪存块140之一上是否必要。可基于耗损均衡方案对于GC选择闪存块140。因为闪存装置的有限的P/E周期,所以比其他闪存装置更频繁使用特定闪存装置可导致特定闪存装置在其他闪存装置之前出现故障。
控制器120可为了耗损均衡目的而记录每一闪存块140的P/E周期计数。在均匀耗损均衡方案中,一般选择具有最低P/E周期计数的闪存块140,来均匀分布来自P/E周期的损耗。该均匀耗损均衡方案一般不考虑闪存装置的预测寿命值,并且在假设闪存存储系统110一般包括具有类似预测寿命值的闪存装置的前提下操作。预测寿命值可对应于在闪存块的故障之前期望对闪存装置的闪存块执行的P/E周期的数目。
闪存装置的诸如P/E周期期望的预测寿命值通常由闪存装置的制造商确定。例如,制造商可从一批制造晶粒中选择晶粒的小样本用于测试。该测试可涉及施加电压以擦除样本晶粒上的闪存单元。特别是,该测试可涉及施加最低电压达到最短脉冲宽度,直到认为擦除了闪存单元为止。基于该测试,制造商可利用诸如30,000个P/E周期的平均预测寿命值来评估(rate)测试的这批产品。尽管这批产品的每一晶粒的平均预测寿命值被评估为相同,但是每一晶粒的实际寿命值可大于或小于通过该测试所确定的平均预测寿命值。
闪存存储系统110可包括闪存装置130,所述闪存装置130基于批测试具有相同或相似平均预测寿命值。然而,每一个别闪存装置130可具有高于或低于平均预测寿命值的实际寿命值。如果一个或多个闪存装置130具有低于平均预测寿命值的实际寿命值,则所述一个或多个闪存装置130可在达到平均预测寿命之前出现故障。
另外,闪存存储系统可基于闪存存储系统中的闪存装置的预测寿命值来评估或分类。具有高P/E周期期望的闪存装置可被期望具有长寿命用于在企业储存系统中使用,或者可在为了更快编程/擦除速度而牺牲长寿命的高性能系统中使用。具有低P/E周期期望的闪存装置可在具有较低寿命期望或较低速度的低性能系统中使用。可利用更精确的预测寿命值来确定更精确的评估等级。
为了确定更精确的预测寿命值,可测试每一闪存装置。闪存装置可在组装之前测试,或者可在闪存存储系统中安装之后测试。可测试每一闪存装置中的一个或多个块,这可导致测试的块不可使用。然而,可利用过多块来制造闪存装置,以解决块故障或在维护操作中使用。为了降低块内的地点变化的影响,可测试每一闪存装置上的相同地点的相同块。
如上面概括的,对每一闪存装置执行低电压测试可以是耗时的,并所以可以不总是可行的。代替使用最低电压,可使用最大电压用于最大电压测试。在最大电压测试期间,可以是闪存装置可控制的最大电压的最大电压可被施加达到长持续时间和/或多个脉冲,以便加速块的单元中的电荷捕获,达到饱和点。另外,代替等待脉冲之间的冷却时段,可连续施加脉冲,这可进一步加速时间以达到饱和点。在最大电压测试中使用的电压参数—其可包括达到饱和所需的最大电压处的脉冲的数目、或达到饱和的电压持续时间—可被测量和使用,以确定比平均预测寿命值更精确的预测寿命值。例如,可从向各个闪存装置执行最大电压测试收集实验数据,以使得电压参数与预期的P/E周期计数相关。
使用这些预测寿命值,闪存装置可被更好匹配用于在闪存存储系统中使用。作为选择,闪存存储系统可在测试每一闪存装置的预测寿命值之前组装。预测寿命值可较好确定闪存存储系统的性能等级。例如,如果闪存存储系统的闪存装置的预测寿命值一般全部比基于平均预测寿命值(其可已被使用用于闪存存储系统的初始组装)预期的更高或更低,则该闪存存储系统可因此被评估为更高等级或更低等级。
闪存装置的操作参数可从缺省值调整,以便实现闪存存储系统的期望性能和/或使用期限。例如,如果闪存存储系统包括具有比平均预测寿命值更大的预测寿命值的闪存装置,则闪存装置的操作参数可被调整以增加性能,导致更高性能闪存存储系统。然而,增加的性能可增加闪存存储系统的损耗,这可降低闪存存储系统的寿命。每一闪存装置的操作参数的调整可基于对应预测寿命值,使得降低的寿命不会下降到低于原始平均预测寿命值。
相反,如果所有闪存装置具有比平均预测寿命值更低的预测寿命值,则以性能作为代价,每一闪存装置的操作参数可被调整以将寿命增加到平均预测寿命值。如果闪存存储系统的闪存装置具有高于和低于平均预测寿命值的预测寿命值,则具有低于平均预测寿命值的预测寿命值的闪存装置的操作参数可被调整为将寿命增加直到该平均预测寿命值,并且具有高于平均预测寿命值的预测寿命值的闪存装置的操作参数可被调整用于增加的性能,以抵销其他闪存装置的降低的性能。
图2示出了根据本技术的各方面的用于优化操作参数的示范处理的流程图200。图2的处理可在闪存装置的制造或测试阶段期间执行,或者可在闪存装置的初始化序列期间执行。在210,确定闪存存储系统中的多个闪存装置的每一个的预测寿命值,其中所述多个闪存装置的至少一个的预测寿命值高于所述多个闪存装置的至少另一个的预测寿命值。在闪存存储系统110中,相应闪存装置130的预测寿命值可与相应闪存装置130上的每一闪存块140关联。预测寿命值可对应于在对应闪存装置130中的闪存块140的故障之前、期望对对应闪存装置130中的闪存块140执行的P/E周期的数目。尽管可能已基于相似平均预测寿命值选择了闪存装置,但是个别测试可揭示每一闪存装置的预测寿命值的变化。在图1中,闪存装置130A可具有比闪存装置130B的预测寿命值更高的预测寿命值。
预测寿命值可通过个别晶粒测试来确定,使得预测寿命值基于从每一闪存装置中的测试闪存块测量的测试值。来自实验室测试或模拟的实验数据可提供将操作参数与寿命值相关的数据。预测寿命值可例如被存储在每一闪存装置130上的指定闪存块140中,诸如一个或多个表格中。作为选择,预测寿命值可被存储在每一闪存装置130上的寄存器135中、或被存储在存储器125中。
在220,基于所述多个闪存装置的相应预测寿命值,来确定所述多个闪存装置的每一个的操作参数。操作参数可包括写入操作参数和擦除操作参数。例如,当预测寿命值高于原始期望的寿命值时,操作参数可从缺省操作参数值被调整,以增加性能。初始脉冲值、增量脉冲值、和脉冲宽度中的一个或多个可被增加,以加速写入或擦除操作。每一闪存装置的操作参数可不同。该差别可对应于每一闪存装置的预测寿命值之间的差别。在图1中,可调整闪存装置130A的操作参数,以在降低闪存装置130A的延长寿命的同时增加性能,并且可调整闪存装置130B的操作参数,以在延长闪存装置130B的较短寿命的同时减低性能。闪存存储系统110可在寿命和性能中达到平衡。
在230,基于确定的操作参数来配置所述多个闪存装置。该配置可包括在闪存装置的相应寄存器或指定闪存块中存储操作参数。在图1中,控制器120可在每一闪存装置130的指定闪存块140和/或寄存器135中存储操作参数。
图3示出了根据各方面的用于优化操作参数的另一示范处理的流程图300。图3的处理可例如在闪存存储系统的操作期间由闪存存储系统的控制器执行。闪存存储系统包括多个闪存装置,每一闪存装置具有预测寿命值,并且其中所述多个闪存装置的至少一个的预测寿命值高于所述多个闪存装置的至少另一个的预测寿命值。
在310,接收数据操作的命令。控制器120可从主机150接收读取、写入、或擦除命令,诸如从主机150向闪存块140写入主数据的写入操作。作为选择,该命令可以用于控制器120要执行的维护操作,诸如GC处理以收回(reclaim)闪存块140中的无效存储地点。
在320,对于与数据操作关联的具有闪存块的多个闪存装置之一确定操作参数,其中基于所述多个闪存装置之一的相应预测寿命值,来确定所述操作参数。在图1中,控制器120可基于对于数据操作选择的闪存块140,来选择闪存装置130。控制器120可读取数据结构中存储的值,诸如表格,所述值可以被存储在选择的闪存装置130的指定闪存块140或寄存器135上,以确定操作参数。
在330,基于确定的操作参数来配置所述多个闪存装置之一。在图1中,控制器120可通过基于确定的操作参数调整用于数据操作的电压参数,来配置选择的闪存装置130。
在340,在所述多个闪存装置之一上运行数据操作。在控制器120在320处选择了闪存块140并在330处配置了具有该闪存块140的闪存装置130之后,控制器120可通过基于确定的操作参数施加编程/擦除参数,来对该闪存块140执行数据操作。该数据操作可以是写入操作、GC处理或其他维护操作。对于每一闪存装置130,控制器可基于对应操作参数来施加编程/擦除参数。
另外,操作参数可随着闪存装置老化而改变。闪存装置可被配置用于在闪存装置的寿命开始时的较快性能,并逐步被配置用于在闪存装置老化时的较慢性能,以便保持剩余P/E周期。例如,当闪存装置的寿命达到一个或多个里程碑时,操作参数可改变。当新的时,闪存装置可利用操作参数的第一集合配置。在第一里程碑处,这样的10,000个P/E周期或使用的寿命的30%,闪存装置可利用操作参数的第二集合配置,这可对应于比操作参数的第一集合降低的性能。作为选择,可继续调整闪存装置的操作参数。
另外,可由于其他因素而调整操作参数,诸如如果闪存装置过早发生故障,其他闪存装置可被调整用于较高性能以抵销来自发生故障的闪存装置的性能的损失,或者可被调整用于较长寿命以防止将来过早发生故障。在某些实现中,可手动重写操作参数。
这里描述的各个图示的块、模块、元件、组件、方法和算法可被实现为电子硬件、计算机软件、或两者的组合。为了说明硬件和软件的该互换性,各个图示的块、模块、元件、组件、方法和算法在上面已一般在它们的功能性方面进行了描述。这样的功能性实现为硬件还是软件取决于总体系统上强加的特定应用和设计约束。描述的功能性可对于每一特定应用按照变化方式实现。各个组件和块可不同地安排(例如,按照不同顺序安排、或按照不同方式分割),而全部不脱离本技术的范围。
可理解的是,公开的处理中的步骤的特定顺序或等级是示范方案的说明。基于设计偏好,可理解的是,可重新安排处理中的步骤的特定顺序或等级。这些步骤中的一些可同时执行。所附方法权利要求按照样本顺序呈现了各个步骤的元素,并且不打算限于呈现的特定顺序或等级。
提供先前描述以使得本领域技术人员能够实践这里描述的各个方面。对于这些方面的各个修改对于本领域技术人员将是容易理解的,并且这里定义的一般原理可应用到其他方面。由此,权利要求不意欲限于这里示出的方面,而是应符合与语言权利要求一致的全部范围,其中提及单数的元素不意欲意味着“一个和仅一个”除非这样特别阐明,而是意味着“一个或多个”。除非按照别的方式特别阐明,术语“一些”表示一个或多个。阳性的代词(例如,他的)包括阴性和中性性别(例如,她的和它的),并且反之亦然。标题和副标题,如果存在的话,仅用于便利性而不限制本发明。
诸如“方面”的惯用语不暗指该方面对于本技术是必要的、或者该方面应用到本技术的所有配置。与方面相关的公开可应用到所有配置、或者一个或多个配置。诸如方面的惯用语可表示一个或多个方面,并且反之亦然。诸如“配置”的惯用语不暗指该配置对于本技术是必要的、或者该配置应用到本技术的所有配置。与配置相关的公开可应用到所有配置、或者一个或多个配置。诸如配置的惯用语可表示一个或多个配置,并且反之亦然。
这里使用单词“示范”以意味着“充当示例或解释”。这里描述为“示范”的任何方面或设计并非必须被解释为比其他方面或设计好或有利。
本领域技术人员已知或稍后将知道的贯穿该公开描述的各个方面的元素的所有结构和功能等效通过引用在这里被明确合并,并意欲由权利要求包含。此外,这里没有公开的内容意欲是公众专用的,而不管这样的公开是否在权利要求中被显式引用。没有权利要求元素应在35U.S.C.§112第六段下解释,除非该元素使用短语“用于……部件”明确阐明,或者在方法权利要求的情况下,该元素使用短语“用于……步骤”阐明。此外,在描述或权利要求中使用术语“包含”、“具有”等的程度下,这样的术语意欲按照术语“包括”类似的方式是包含性的,因为“包括”当作为过渡单词在权利要求中采样时被解释。

Claims (20)

1.一种用于管理闪存存储系统的机器实现的方法,包括:
确定该闪存存储系统中的多个闪存装置的每一个的预测寿命值,其中所述多个闪存装置的至少一个的预测寿命值高于所述多个闪存装置的至少另一个的预测寿命值;
确定闪存存储系统中的多个闪存装置的平均预测寿命值;
基于平均预测寿命值与所述多个闪存装置的相应预测寿命值的比较,来确定所述多个闪存装置的每一个的操作参数;和
基于确定的操作参数来配置所述多个闪存装置。
2.根据权利要求1的用于管理闪存存储系统的机器实现的方法,其中用于所述多个闪存装置的至少一个的操作参数不同于用于所述多个闪存装置的至少另一个的操作参数。
3.根据权利要求2的用于管理闪存存储系统的机器实现的方法,其中所述操作参数的差别对应于用于所述多个闪存装置的至少一个的预测寿命值和用于所述多个闪存装置的至少另一个的预测寿命值之间的差别。
4.根据权利要求1的用于管理闪存存储系统的机器实现的方法,其中该操作参数包括用于在所述多个闪存装置中擦除数据单元的擦除操作参数,和
其中所述擦除操作参数包括初始脉冲值、增量脉冲值、或脉冲宽度的至少一个。
5.根据权利要求1的用于管理闪存存储系统的机器实现的方法,其中该操作参数包括用于向所述多个闪存装置中的数据单元写入数据的写入操作参数,和
其中所述写入操作参数包括初始脉冲值、增量脉冲值、或脉冲宽度的至少一个。
6.根据权利要求1的用于管理闪存存储系统的机器实现的方法,其中相应闪存装置的预测寿命值与相应闪存装置上的每一闪存块关联,和
其中该预测寿命值是在对应闪存装置中的闪存块的故障之前、期望对对应闪存装置中的闪存块执行的编程-擦除周期的数目。
7.根据权利要求1的用于管理闪存存储系统的机器实现的方法,其中所述多个闪存装置的每一个的预测寿命值基于从所述多个闪存装置的每一个中的相应测试闪存块测量的测试值。
8.一种闪存存储系统,包括:
多个闪存装置,所述多个闪存装置的每一个具有预测寿命值,其中所述多个闪存装置的至少两个具有不同预测寿命值并且多个闪存装置具有平均预测寿命值;和
控制器,配置为:
接收用于数据操作的命令;
确定具有与该数据操作关联的闪存块的所述多个闪存装置之一的操作参数,其中基于平均预测寿命值与所述多个闪存装置之一的相应预测寿命值的比较,来确定操作参数;
基于确定的操作参数来配置所述多个闪存装置之一;和
在所述多个闪存装置之一上运行该数据操作。
9.根据权利要求8的闪存存储系统,其中所述多个闪存装置的每一个具有操作参数,其中所述多个闪存装置的至少两个具有不同操作参数,并且其中所述多个闪存装置的至少两个包括所述多个闪存装置之一。
10.根据权利要求9的闪存存储系统,其中所述操作参数的差别对应于用于所述多个闪存装置的至少两个的相应预测寿命值之间的差别。
11.根据权利要求8的闪存存储系统,其中所述操作参数包括用于在所述多个闪存装置中擦除数据单元的擦除操作参数,和
其中所述擦除操作参数包括初始脉冲值、增量脉冲值、或脉冲宽度的至少一个。
12.根据权利要求8的闪存存储系统,其中所述操作参数包括用于向所述多个闪存装置中的数据单元写入数据的写入操作参数,和
其中所述写入操作参数包括初始脉冲值、增量脉冲值、或脉冲宽度的至少一个。
13.根据权利要求8的闪存存储系统,其中相应闪存装置的预测寿命值与相应闪存装置上的每一闪存块关联,和
其中该预测寿命值是在对应闪存装置中的闪存块的故障之前、期望对对应闪存装置中的闪存块执行的编程-擦除周期的数目。
14.根据权利要求8的闪存存储系统,其中所述多个闪存装置的每一个的预测寿命值基于从所述多个闪存装置的每一个中的相应测试闪存块测量的测试值。
15.一种利用可运行指令编码的机器可读介质,该可运行指令当由处理器运行时,促使处理器执行如下操作,包括:
接收用于数据操作的命令;
确定具有与该数据操作关联的闪存块的多个闪存装置之一的操作参数,其中所述多个闪存装置的每一个具有预测寿命值,其中所述多个闪存装置的至少两个具有不同预测寿命值并且多个闪存装置具有平均预测寿命值,其中基于平均预测寿命值与所述多个闪存装置之一的相应预测寿命值的比较,来确定操作参数;
基于确定的操作参数来配置所述多个闪存装置之一;和
在所述多个闪存装置之一上运行该数据操作。
16.根据权利要求15的机器可读介质,其中所述多个闪存装置的每一个具有操作参数,其中所述多个闪存装置的至少两个具有不同操作参数,并且其中所述多个闪存装置的至少两个包括所述多个闪存装置之一。
17.根据权利要求16的机器可读介质,其中所述操作参数的差别对应于用于所述多个闪存装置的至少两个的相应预测寿命值之间的差别。
18.根据权利要求15的机器可读介质,其中所述操作参数包括用于在所述多个闪存装置中擦除数据单元的擦除操作参数,和
其中所述擦除操作参数包括初始脉冲值、增量脉冲值、或脉冲宽度的至少一个。
19.根据权利要求15的机器可读介质,其中所述操作参数包括用于向所述多个闪存装置中的数据单元写入数据的写入操作参数,和
其中所述写入操作参数包括初始脉冲值、增量脉冲值、或脉冲宽度的至少一个。
20.根据权利要求15的机器可读介质,其中相应闪存装置的预测寿命值与相应闪存装置上的每一闪存块关联,
其中该预测寿命值是在对应闪存装置中的闪存块的故障之前、期望对对应闪存装置中的闪存块执行的编程-擦除周期的数目,以及
其中所述多个闪存装置的每一个的预测寿命值基于从所述多个闪存装置的每一个中的相应测试闪存块测量的测试值。
CN201610804633.7A 2015-09-04 2016-09-05 用于闪存装置的操作参数 Active CN106504794B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/846,568 2015-09-04
US14/846,568 US10235057B2 (en) 2015-09-04 2015-09-04 Operating parameters for flash memory devices

Publications (2)

Publication Number Publication Date
CN106504794A CN106504794A (zh) 2017-03-15
CN106504794B true CN106504794B (zh) 2020-01-24

Family

ID=57139965

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610804633.7A Active CN106504794B (zh) 2015-09-04 2016-09-05 用于闪存装置的操作参数

Country Status (8)

Country Link
US (3) US10235057B2 (zh)
JP (1) JP2017084342A (zh)
KR (1) KR101928974B1 (zh)
CN (1) CN106504794B (zh)
AU (1) AU2016225780A1 (zh)
CA (1) CA2941170A1 (zh)
DE (1) DE102016010723A1 (zh)
GB (1) GB2542933B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10474370B1 (en) 2016-05-20 2019-11-12 EMC IP Holding Company LLC Method and system for mitigating the effect of write and read disturbances in solid state memory regions
US10387239B2 (en) * 2017-04-10 2019-08-20 Western Digital Technologies, Inc. Detecting memory failures in the runtime environment
CN109308162B (zh) * 2017-07-26 2022-04-01 北京兆易创新科技股份有限公司 闪存的优化装置、优化方法及设备
CN107967928B (zh) * 2017-10-18 2020-06-26 武汉忆数存储技术有限公司 一种基于数学模型的闪存芯片寿命预测方法
KR102516539B1 (ko) * 2018-01-24 2023-04-03 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
US11132133B2 (en) * 2018-03-08 2021-09-28 Toshiba Memory Corporation Workload-adaptive overprovisioning in solid state storage drive arrays
CN108766496B (zh) * 2018-05-23 2020-10-16 武汉忆数存储技术有限公司 一种在线动态预测闪存芯片寿命的方法及装置
US10963332B2 (en) * 2018-12-17 2021-03-30 Western Digital Technologies, Inc. Data storage systems and methods for autonomously adapting data storage system performance, capacity and/or operational requirements
CN116661694A (zh) * 2019-06-14 2023-08-29 北京忆芯科技有限公司 智能识别非易失存储介质不可靠块的方法与装置
CN111312326B (zh) * 2020-03-09 2021-11-12 宁波三星医疗电气股份有限公司 闪存寿命测试方法、装置、电力采集终端及存储介质
JP7003169B2 (ja) * 2020-03-24 2022-01-20 株式会社日立製作所 ストレージシステム及びストレージシステムのssdの交換方法
US11188244B2 (en) * 2020-04-14 2021-11-30 Micron Technology, Inc. Adjusting trim settings to improve memory performance or reliability
CN114510195A (zh) * 2020-11-17 2022-05-17 华为技术有限公司 数据存储的方法和装置
US11646081B2 (en) 2021-08-03 2023-05-09 Sandisk Technologies Llc Reliability compensation for uneven NAND block degradation
US11966588B2 (en) 2021-10-26 2024-04-23 Google Llc Flash memory usage management
CN117809724A (zh) * 2024-03-01 2024-04-02 四川云海芯科微电子科技有限公司 基于寿命测试的NAND Flash磨损均衡方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101419842A (zh) * 2008-11-07 2009-04-29 成都市华为赛门铁克科技有限公司 硬盘的损耗均衡方法、装置及系统
CN101826367A (zh) * 2009-06-02 2010-09-08 深圳市朗科科技股份有限公司 监测半导体存储设备可靠性的方法及其装置
CN102640227A (zh) * 2009-09-23 2012-08-15 国家数字研究中心有限公司 一种快闪存储器件及控制方法
CN102890656A (zh) * 2012-09-25 2013-01-23 Tcl光电科技(惠州)有限公司 提高flash使用寿命的方法
CN102937935A (zh) * 2012-09-04 2013-02-20 邹粤林 一种固态存储系统及控制器、提高闪存芯片寿命的方法
CN104376875A (zh) * 2014-11-19 2015-02-25 华为数字技术(苏州)有限公司 存储设备寿命预测、确定方法及装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044454A (ja) 2003-07-24 2005-02-17 Sony Corp 半導体記憶装置、半導体記憶装置の駆動制御方法
US7523013B2 (en) * 2006-05-15 2009-04-21 Sandisk Corporation Methods of end of life calculation for non-volatile memories
US8144517B2 (en) * 2008-02-22 2012-03-27 Samsung Electronics Co., Ltd. Multilayered nonvolatile memory with adaptive control
JP5242264B2 (ja) 2008-07-07 2013-07-24 株式会社東芝 データ制御装置、ストレージシステムおよびプログラム
US8910002B2 (en) * 2009-08-24 2014-12-09 OCZ Storage Solutions Inc. NAND flash-based storage device with built-in test-ahead for failure anticipation
US8995197B1 (en) * 2009-08-26 2015-03-31 Densbits Technologies Ltd. System and methods for dynamic erase and program control for flash memory device memories
JP2011198433A (ja) * 2010-03-23 2011-10-06 Toshiba Corp メモリシステム
US8737141B2 (en) * 2010-07-07 2014-05-27 Stec, Inc. Apparatus and method for determining an operating condition of a memory cell based on cycle information
US8806106B2 (en) * 2010-11-12 2014-08-12 Seagate Technology Llc Estimating wear of non-volatile, solid state memory
US10079068B2 (en) * 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US8374029B2 (en) * 2011-03-15 2013-02-12 Texas Instruments Incorporated Electrically addressed non-volatile memory maintentance
JP5364750B2 (ja) * 2011-03-25 2013-12-11 株式会社東芝 メモリシステム、及び不揮発性メモリデバイスの制御方法
US9047955B2 (en) * 2011-03-30 2015-06-02 Stec, Inc. Adjusting operating parameters for memory cells based on wordline address and cycle information
US8687419B2 (en) * 2011-08-05 2014-04-01 Micron Technology, Inc. Adjusting operational parameters for memory cells
WO2012119375A1 (zh) * 2011-08-08 2012-09-13 华为技术有限公司 Raid配置信息的处理方法及装置、raid控制器
US8804428B2 (en) * 2011-08-16 2014-08-12 Micron Technology, Inc. Determining system lifetime characteristics
US9195586B2 (en) * 2012-02-23 2015-11-24 Hgst Technologies Santa Ana, Inc. Determining bias information for offsetting operating variations in memory cells based on wordline address
US9235769B2 (en) 2012-03-15 2016-01-12 Herta Security, S.L. Parallel object detection method for heterogeneous multithreaded microarchitectures
US8902667B2 (en) * 2012-07-25 2014-12-02 Freescale Semiconductor, Inc. Methods and systems for adjusting NVM cell bias conditions for program/erase operations to reduce performance degradation
US9430322B2 (en) 2012-08-02 2016-08-30 Sandisk Technologies Llc Device based wear leveling using intrinsic endurance
US8717826B1 (en) * 2012-12-11 2014-05-06 Apple Inc. Estimation of memory cell wear level based on saturation current
US9026863B2 (en) * 2013-01-17 2015-05-05 Dell Products, L.P. Replacement of storage responsive to remaining life parameter
US9766980B1 (en) * 2013-05-03 2017-09-19 EMC IP Holding Company LLC RAID failure prevention
US9734919B2 (en) * 2013-05-23 2017-08-15 Seagate Technology Llc Recovery of interfacial defects in memory cells
US9229640B2 (en) 2013-11-15 2016-01-05 Microsoft Technology Licensing, Llc Inexpensive solid-state storage by throttling write speed in accordance with empirically derived write policy table
US9423970B2 (en) * 2013-12-30 2016-08-23 Sandisk Technologies Llc Method and system for predicting block failure in a non-volatile memory
US9569120B2 (en) * 2014-08-04 2017-02-14 Nvmdurance Limited Adaptive flash tuning
US9652160B1 (en) * 2015-11-06 2017-05-16 Datadirect Networks, Inc. Method and system for data migration between high performance computing entities and a data storage supported by a de-clustered raid (DCR) architecture with I/O activity dynamically controlled based on remaining health of data storage devices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101419842A (zh) * 2008-11-07 2009-04-29 成都市华为赛门铁克科技有限公司 硬盘的损耗均衡方法、装置及系统
CN101826367A (zh) * 2009-06-02 2010-09-08 深圳市朗科科技股份有限公司 监测半导体存储设备可靠性的方法及其装置
CN102640227A (zh) * 2009-09-23 2012-08-15 国家数字研究中心有限公司 一种快闪存储器件及控制方法
CN102937935A (zh) * 2012-09-04 2013-02-20 邹粤林 一种固态存储系统及控制器、提高闪存芯片寿命的方法
CN102890656A (zh) * 2012-09-25 2013-01-23 Tcl光电科技(惠州)有限公司 提高flash使用寿命的方法
CN104376875A (zh) * 2014-11-19 2015-02-25 华为数字技术(苏州)有限公司 存储设备寿命预测、确定方法及装置

Also Published As

Publication number Publication date
US20210165578A1 (en) 2021-06-03
DE102016010723A1 (de) 2017-03-09
CN106504794A (zh) 2017-03-15
US10235057B2 (en) 2019-03-19
AU2016225780A1 (en) 2017-03-23
US20190179544A1 (en) 2019-06-13
US10963166B2 (en) 2021-03-30
KR101928974B1 (ko) 2018-12-13
JP2017084342A (ja) 2017-05-18
GB2542933B (en) 2020-02-12
CA2941170A1 (en) 2017-03-04
US20170068468A1 (en) 2017-03-09
GB2542933A (en) 2017-04-05
US11630583B2 (en) 2023-04-18
GB201615002D0 (en) 2016-10-19
KR20170031049A (ko) 2017-03-20

Similar Documents

Publication Publication Date Title
CN106504794B (zh) 用于闪存装置的操作参数
US10372342B2 (en) Multi-level cell solid state device and method for transferring data between a host and the multi-level cell solid state device
TWI622985B (zh) 基於記憶體壽命週期具有可變邏輯容量之固態儲存裝置
KR101996072B1 (ko) 플래시 메모리 디바이스들을 위한 웨어 관리
CN106170833B (zh) 在数据存储系统中的具有模块化擦除的数据管理
US9665481B2 (en) Wear leveling method based on timestamps and erase counts, memory storage device and memory control circuit unit
US20170039141A1 (en) Mapping table updating method, memory storage device and memory control circuit unit
CN108269603B (zh) 用于闪速存储器器件的连续自适应校准
US20150067415A1 (en) Memory system and constructing method of logical block
US10628257B2 (en) Memory management method and storage controller
JP2014116031A (ja) メモリデバイスを備えた電子システム
US20120144145A1 (en) Apparatus and method for measuring lifespan of memory device
US10503433B2 (en) Memory management method, memory control circuit unit and memory storage device
US10922028B2 (en) Data programming method, memory storage device and memory control circuit unit
JP2009230414A (ja) 複数の不揮発性メモリデバイスを有する記憶装置
US20230143181A1 (en) Write buffer control in managed memory system
US9613705B1 (en) Method for managing programming mode of rewritable non-volatile memory module, and memory storage device and memory control circuit unit using the same
US10430288B2 (en) Data backup method, data recovery method and storage controller
CN110888593B (zh) 数据储存装置以及非挥发式存储器控制方法

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right

Effective date of registration: 20210326

Address after: California, USA

Patentee after: Western Digital Technologies, Inc.

Address before: Amsterdam

Patentee before: HGST Netherlands B.V.

TR01 Transfer of patent right