Relocating data based on matching address sequences
AssigneeSanDisk Technologies LLC
InventorMenahem Lasser
Life of this patent
Estimating the term…
Abstract
A data storage device includes a non-volatile memory and a controller. The controller is configured to store a first sequence of addresses based on a first sequence of read instructions received from a host device. Subsequent to storing the first sequence of addresses, the controller is configured to receive a second sequence of read instructions from the host device and to determine whether a second sequence of addresses that is based on the second sequence of read instructions matches the first sequence of addresses. The controller is configured to relocate at least one page of the non-volatile memory at least partially based on the second sequence of addresses matching the first sequence of addresses.
Claims36
A method comprising:
- in a memory device including a controller and a non-volatile memory, performing:
- receiving a first sequence of read instructions from a host device;
- storing a first sequence of addresses based at least partially on the first sequence of read instructions;
- subsequent to storing the first sequence of addresses, receiving a second sequence of read instructions from the host device;
- comparing a second sequence of addresses to the first sequence of addresses, the second sequence of addresses based at least partially on the second sequence of read instructions;
- and
- initiating a data move operation based at least partially on a result of the comparing indicating that the second sequence of addresses matches the first sequence of addresses.
A method comprising:
- in a memory device including a controller and a non-volatile memory, performing:
- receiving a first sequence of read instructions from a host device;
- storing at least a first sequence of addresses in an address sequence data structure;
- subsequent to storing the first sequence of addresses, receiving a second sequence of read instructions from the host device;
- comparing an identified sequence of addresses based at least partially on the second sequence of read instructions to one or more address sequences of the address sequence data structure;
- in response to determining that an address sequence of the address sequence data structure matches the identified sequence, relocating at least one page of the non-volatile memory and incrementing a counter associated with the address sequence;
- and
- in response to determining that no address sequence of the address sequence data structure matches the identified sequence, adding the identified sequence to the address sequence data structure.
A data storage device comprising:
- a non-volatile memory;
- and
- a controller coupled to the non-volatile memory,
- wherein the controller is configured to store a first sequence of addresses based at least partially on a first sequence of read instructions received from a host device and, subsequent to storing the first sequence of addresses, to receive a second sequence of read instructions from the host device, to compare a second sequence of addresses to the first sequence of addresses, the second sequence of addresses based at least partially on the second sequence of read instructions, and to initiate a data move operation based at least partially on a result of the comparing indicating that the second sequence of addresses matches the first sequence of addresses.
Dependencies are inferred from the claim text.