Patent ID: 9122587
Filing Date: 2015-09-01
Classification: G06F

Abstract:
1. An apparatus comprising: a memory configured to store a plurality of time stamps associated with a plurality of data units in a plurality of bands, wherein (i) each of the bands comprises a plurality of blocks, (ii) each of the blocks comprises a plurality of memory pages, (iii) the memory pages are configured to store a plurality of host pages, (iv) each of the host pages comprises one or more of the data units, and (v) each of the host pages is associated with a respective identifier in a host address space, a respective location in a physical address space of the memory, and a respective epoch value; and a controller configured to (i) read the time stamps from the memory, (ii) generate a plurality of lists identifying an order in which the data units were written to the memory based on the time stamps, (iii) perform a sequence of reads of the respective identifiers from the bands based on the lists and the respective epoch values, (iv) locate each last-written occurrence of the respective identifiers based on the sequence of reads and (v) rebuild a map identifying where the data units are stored in the physical address space of the memory according to the last-written occurrences of the respective identifiers.