×

System and method for optimized management of operation data in a solid-state memory

  • US 9,268,646 B1
  • Filed: 12/21/2010
  • Issued: 02/23/2016
  • Est. Priority Date: 12/21/2010
  • Status: Active Grant
First Claim
Patent Images

1. A method of managing operation data in a non-volatile solid-state storage subsystem, the method comprising:

  • maintaining a data table in a volatile memory of the solid-state storage subsystem, the data table including information related to a plurality of logical groupings of memory blocks in a non-volatile memory array of the solid-state storage subsystem, the data table used by a controller of the solid-state storage subsystem to control memory access operations;

    storing a first plurality of portions of the data table in the non-volatile memory array, at least one portion reflecting an update to the data table that renders outdated a previous update to a portion of the data table;

    creating a plurality of snapshots of the data table portions stored in the non-volatile memory array, a snapshot of the plurality of snapshots comprising information related to a plurality of physical memory locations in which the updated data table portions are stored at a time of creation of the snapshot, wherein the snapshot is stored in a separate memory location in the non-volatile memory array from the data table portions and does not comprise data of the data table portions;

    storing a second plurality of portions of the data table in the non-volatile memory array, the second plurality of portions of the data table reflecting updates to the data table that occurred after the time of creation of a most recently created snapshot; and

    following an intervening power loss event that causes the data table to be lost from the volatile memory;

    using the most recently created snapshot to locate at least some data table portions of the first plurality of portions of the data table in the non-volatile memory array,traversing from the most recently updated snapshot forward to locate the second plurality of portions of the data table, andusing the located at least some data table portions and the second plurality of portions of the data table to reconstruct the data table in the volatile memory.

View all claims
  • 8 Assignments
Timeline View
Assignment View
    ×
    ×