Methods and Systems for Scalable Reliability Management of Non-Volatile Memory Modules

US2016018998A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016018998-A1
Application numberUS-201514597161-A
CountryUS
Kind codeA1
Filing dateJan 14, 2015
Priority dateJul 17, 2014
Publication dateJan 21, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The various implementations described herein include systems, methods and/or devices used to perform a method of reliability management of data in a storage device having a plurality of memory modules. The method includes receiving or accessing a host command to perform a specified operation on a portion of non-volatile memory within a storage device. The method also includes, at a storage controller for the storage device, identifying a module of the plurality of modules, in accordance with the host command. The method includes, at the identified module, retrieving health information for the portion of non-volatile memory within the identified module, modifying one or more memory operation parameters in accordance with the specified operation and the retrieved health information, and executing the specified operation on the portion of non-volatile memory in the identified module in accordance with the one or more modified memory operation parameters.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of performing operations in a storage device having a plurality of NVM modules, comprising: processing a host command, the host command specifying an operation to be performed on a portion of non-volatile memory within the storage device, by: at a storage controller for the storage device: identifying an NVM module of the plurality of NVM modules, in accordance with the host command; at the identified NVM module: retrieving health information for the portion of non-volatile memory within the identified NVM module; modifying one or more memory operation parameters in accordance with the specified operation and the retrieved health information; and executing the specified operation on the portion of non-volatile memory in the identified NVM module in accordance with the one or more modified memory operation parameters. 2 . The method of claim 1 , further comprising, at the identified NVM module: updating the health information for the portion of non-volatile memory, after executing the specified operation. 3 . The method of claim 2 , wherein updating the health information for the portion of non-volatile memory comprises: measuring one or more health metrics of the portion of non-volatile memory; assigning a score to the portion of non-volatile memory in accordance with the one or more measured health metrics and in accordance with one or more health metric thresholds; and storing the score with the health information for the portion of non-volatile memory. 4 . The method of claim 1 , further comprising, at the identified NVM module: conveying health information stored within the NVM module to the storage controller. 5 . The method of claim 1 , wherein the health information for the portion of non-volatile memory comprises one or more of the following with respect to the portion: the number of cycles required for the last program or erase operation, the last time an operation of any type was performed, the last time an operation of a particular type was performed, the duration of execution of the last operation, the duration of execution of the last operation of a particular type, the average duration of execution of all operations, the number of bit errors, the location of bit errors, the number of operations performed and the number of operations of a particular type performed. 6 . The method of claim 1 , wherein the one or more memory operation parameters comprise one or more of: write operation voltage, write operation step voltage, dynamic read parameters or operation-dependent bias voltages. 7 . The method of claim 1 , wherein the health information for the portion of non-volatile memory is stored in non-volatile memory within the NVM module. 8 . The method of claim 1 , wherein the portion of non-volatile memory is an erase block. 9 . The method of claim 1 , further comprising, at the identified NVM module: in accordance with a determination that the storage device is experiencing a power fail condition: transferring at least a subset of the health information from volatile memory in the NVM module to non-volatile memory. 10 . The method of claim 1 , wherein the storage device comprises one or more flash memory devices. 11 . A storage device, comprising: an interface for coupling the storage device to a host system; and a storage controller having one or more processors, the storage controller configured to: receive or access a host command specifying an operation to be performed on a portion of non-volatile memory within the storage device; identify an NVM module of the plurality of NVM modules, in accordance with the host command; an NVM module having one or more processors, the NVM module configured to: retrieve health information for the portion of non-volatile memory within the identified NVM module; modify one or more memory operation parameters in accordance with the specified operation and the retrieved health information; and execute the specified operation on the portion of non-volatile memory in the identified NVM module in accordance with the one or more modified memory operation parameters. 12 . The storage device of claim 11 , wherein the NVM module is further configured to: update the health information for the portion of non-volatile memory, after executing the specified operation. 13 . The storage device of claim 12 , wherein updating the health information for the portion of non-volatile memory comprises the NVM module being further configured to: measure one or more health metrics of the portion of non-volatile memory; assign a score to the portion of non-volatile memory in accordance with the one or more measured health metrics and in accordance with one or more health metric thresholds; and store the score with the health information for the portion of non-volatile memory. 14 . The storage device of claim 11 , wherein the NVM module is further configured to: convey health information stored within the NVM module to the storage controller. 15 . The storage device of claim 11 , wherein the health information for the portion of non-volatile memory comprises one or more of the following with respect to the portion: the number of cycles required for the last program or erase operation, the last time an operation of any type was performed, the last time an operation of a particular type was performed, the duration of execution of the last operation, the duration of execution of the last operation of a particular type, the average duration of execution of all operations, the number of bit errors, the location of bit errors, the number of operations performed and the number of operations of a particular type performed. 16 . The storage device of claim 11 , wherein the one or more memory operation parameters comprise one or more of: write operation voltage, write operation step voltage, dynamic read parameters or operation-dependent bias voltages. 17 . The storage device of claim 11 , wherein the health information for the portion of non-volatile memory is stored in non-volatile memory within the NVM module. 18 . The storage device of claim 11 , wherein the portion of non-volatile memory is an erase block. 19 . The storage device of claim 11 , wherein the NVM module is further configured to: in accordance with a determination that the storage device is experiencing a power fail condition: transfer at least a subset of the health information from volatile memory in the NVM module to non-volatile memory. 20 . The storage device of claim 11 , wherein the storage device comprises one or more flash memory devices. 21 . A storage device, comprising: an interface for coupling the storage device to a host system; a plurality of NVM modules, each NVM module including two or more non-volatile memory devices; and a storage controller having one or more processors, the storage controller including: a command module to receive or access a host command specifying an operation to be performed on a portion of non-volatile memory within the storage device; and a map module to identify an NVM module of the plurality of NVM modules, in accordance with the host command; the identified NVM module including: a health management module for retrieving health information for the portion of non-volatile memory within the identified NVM module; a memory operation configuration module to modify one or more memory operation parameters in accordance with the specified operatio

Assignees

Inventors

Classifications

  • G06F3/0619Primary

    in relation to data integrity, e.g. data losses, bit errors · CPC title

  • G06F3/0679Primary

    Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • Monitoring storage devices or systems · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

  • in block erasable memory, e.g. flash memory · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016018998A1 cover?
The various implementations described herein include systems, methods and/or devices used to perform a method of reliability management of data in a storage device having a plurality of memory modules. The method includes receiving or accessing a host command to perform a specified operation on a portion of non-volatile memory within a storage device. The method also includes, at a storage cont…
Who is the assignee on this patent?
Sandisk Entpr Ip Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0619. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jan 21 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).