Maintenance of nonvolatile memory on host selected namespaces by a common memory controller

US11249652B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-11249652-B1
Application numberUS-202016832793-A
CountryUS
Kind codeB1
Filing dateMar 27, 2020
Priority dateJan 28, 2013
Publication dateFeb 15, 2022
Grant dateFeb 15, 2022

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.

This disclosure provides techniques for managing memory which match per-data metrics to those of other data or to memory destination. In one embodiment, wear data is tracked for at least one tier of nonvolatile memory (e.g., flash memory) and a measure of data persistence (e.g., age, write frequency, etc.) is generated or tracked for each data item. Memory wear management based on these individually-generated or tracked metrics is enhanced by storing or migrating data in a manner where persistent data is stored in relatively worn memory locations (e.g., relatively more-worn flash memory) while temporary data is stored in memory that is less worn or is less susceptible to wear. Other data placement or migration techniques are also disclosed.

First claim

Opening claim text (preview).

We claim: 1. An apparatus comprising instructions stored on a non-transitory storage medium, the instructions, when executed, to cause at least one host processor to: identify a need on an independent basis for each one of at least two sets of addresses associated with a nonvolatile memory drive, for a copy of data from one physical storage location within the nonvolatile memory drive to another physical storage location within the nonvolatile memory drive; and responsive to the identified need, send one or more requests to a memory controller for the nonvolatile memory drive in a manner directed to the given set, to cause the memory controller to perform the copy of data, wherein the one or more requests are to specify a source address for data to be copied and a destination for the data to be copied, and wherein the instructions when executed are to cause the at least one host processor to choose the destination to correspond to a selected one of the sets of addresses in dependence on metadata comprising an age-since-write characteristic of the data to be copied; wherein the memory controller is to perform logical to physical address translation of the source address and the destination to identify the data being copied and to select a physical destination structure for the data to be copied; wherein the memory controller is to store metadata representing the age-since-write characteristic in a manner respective to each set of the at least two sets of addresses, is to update the metadata respective to each set of the at least two sets of addresses as a function of write operations affecting the respective set of the at least two sets of addresses, is to detect when the metadata respective to each set of the at least two sets of addresses satisfies at least one threshold, and is to responsively send a notification to the at least one host processor; and wherein the instructions when executed are to cause the at least one host processor to choose the destination dependent on the notification from the memory controller. 2. The apparatus of claim 1 wherein: said instructions are, when executed, to cause the at least one host processor to detect the need according to thresholds respective to each one of the at least two sets of addresses. 3. The apparatus of claim 2 wherein: the thresholds respective to each one of the at least two sets of addresses each comprise a cold data threshold. 4. The apparatus of claim 3 wherein: the one or more requests are to cause the memory controller to copy data corresponding to metadata violating the cold data threshold from a first physical location associated with the given set of the at least two sets of addresses to a second physical location also associated with the given set of the at least two sets of addresses. 5. The apparatus of claim 4 wherein: the cold data threshold is a write-cold data threshold, such that the data to be copied from the first physical location comprises data at a location that was last written prior to a duration greater than a threshold amount of time. 6. The apparatus of claim 1 wherein the nonvolatile memory comprises flash memory dies and wherein the memory controller comprises a flash memory controller. 7. The apparatus of claim 6 wherein the flash memory controller is to issue commands to the flash memory dies responsive to requests accompanied by respective ones of the logical addresses. 8. The apparatus of claim 1 wherein the instructions, when executed, are to cause the at least one host processor to send one or more configuration requests to the memory controller for the nonvolatile memory drive, to cause the memory controller to organize physical memory space in the nonvolatile memory drive so as to map to the at least two sets of addresses according to a host-specified demarcation. 9. An apparatus comprising: at least one host processor; and instructions stored on a non-transitory storage medium, the instructions, when executed, to cause the at least one host processor to identify a need on an independent basis for each one of at least two sets of addresses associated with a nonvolatile memory drive, for a copy of data from one physical storage location within the nonvolatile memory drive to another physical storage location within the nonvolatile memory drive, and responsive to the identified need, send one or more requests to a memory controller for the nonvolatile memory drive in a manner directed to the given set, to cause the memory controller to perform the copy of data, wherein the one or more requests are to specify a source address for data to be copied and a destination for the data to be copied, and wherein the instructions when executed are to cause the at least one host processor to choose the destination to correspond to a selected one of the sets of addresses in dependence on metadata comprising an age-since-write characteristic of the data to be copied; wherein the memory controller is to perform logical to physical address translation of the source address and the destination to identify the data being copied and to select a physical destination structure for the data to be copied; wherein the memory controller is to store metadata respective to each set of the at least two sets of addresses, is to update the metadata representing the age-since-write characteristic in a manner respective to each set of the at least two sets of addresses as a function of write operations affecting the respective set of the at least two sets of addresses, is to detect when the metadata respective to each set of the at least two sets of addresses satisfies at least one threshold, and is to responsively send a notification to the at least one host processor; and wherein the instructions when executed are to cause the at least one host processor to choose the destination dependent on the notification from the memory controller. 10. The apparatus of claim 9 wherein the instructions, when executed, are to cause the at least one host processor to send one or more configuration requests to the memory controller for the nonvolatile memory drive, to cause the memory controller to organize physical memory space in the nonvolatile memory drive so as to map to the at least two sets of addresses according to a host-specified demarcation. 11. A method of operating at least one host processor, said method comprising: identifying a need on an independent basis for each one of at least two sets of addresses associated with a nonvolatile memory drive, for a copy of data from one physical storage location within the nonvolatile memory drive to another physical storage location within the nonvolatile memory drive; and responsive to identified need, sending one or more requests to a memory controller for the nonvolatile memory drive in a manner directed to the given set, to cause the memory controller to perform the copy of data, wherein the one or more requests are to specify a source address for data to be copied and a destination for the data to be copied, and wherein the instructions when executed are to cause the at least one host processor to choose the destination to correspond to a selected one of the sets of addresses in dependence on metadata comprising an age-since-write characteristic of the data to be copied; wherein the memory controller is to perform logical to physical address translation of the source address and the destination to identify the data being copied and to select a physical destination structure for the data to be copied; wherein the memory controller is to store metadata respective to each set of the at least two sets of addresses, is to update the metadata representing the age-since-write characte

Assignees

Inventors

Classifications

  • Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · CPC title

  • Lifecycle management · CPC title

  • Improving I/O performance · CPC title

  • management of metadata or control data · CPC title

  • 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 US11249652B1 cover?
This disclosure provides techniques for managing memory which match per-data metrics to those of other data or to memory destination. In one embodiment, wear data is tracked for at least one tier of nonvolatile memory (e.g., flash memory) and a measure of data persistence (e.g., age, write frequency, etc.) is generated or tracked for each data item. Memory wear management based on these individ…
Who is the assignee on this patent?
Radian Memory Systems Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0246. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 15 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).