| CPC G06F 12/0246 (2013.01) [G06F 12/0207 (2013.01); G06F 12/1009 (2013.01); G06F 2212/651 (2013.01); G06F 2212/7201 (2013.01); G06F 2212/7209 (2013.01)] | 20 Claims |

|
1. A memory system connectable to a host, comprising:
a non-volatile memory; and
a controller configured to:
manage a data map for managing validity of data written in the non-volatile memory; and
update the data map when receiving a command for invalidating data written in the non-volatile memory,
wherein the data map has a hierarchical structure including at least a first hierarchy and a second hierarchy higher than the first hierarchy, and includes a plurality of first fragment tables corresponding to the first hierarchy and a second fragment table corresponding to the second hierarchy,
the plurality of first fragment tables respectively correspond to a plurality of first ranges of physical address of the non-volatile memory and each have a first number of entries,
each of the first number of entries of each of the plurality of first fragment tables has information indicating the validity of data having a first size written within each of the plurality of first ranges of physical address of the non-volatile memory corresponding to the each of the plurality of first fragment tables,
the second fragment table is used to manage reference destination information for referencing each of the plurality of first fragment tables,
the reference destination information has a plurality pieces of address information, each of the plurality pieces of address information is an address where each of the plurality of first fragment tables is stored, and
the controller is further configured to,
when all of a plurality pieces of data written within one of the plurality of first ranges of physical address of the non-volatile memory corresponding to one of the plurality of first fragment tables are invalidated, set invalidity in an entry of the second fragment table corresponding to the one of the plurality of first fragment tables.
|