RELOCATING DATA BASED ON MATCHING ADDRESS SEQUENCES
First Claim
1. A method comprising:
- in a memory device including a non-volatile memory including a three-dimensional (3D) memory and circuitry associated with operation of memory cells of the 3D memory, performing;
receiving a first sequence of read instructions from a host device;
storing a first sequence of addresses based 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;
determining whether a second sequence of addresses that is based on the second sequence of read instructions matches the first sequence of addresses; and
relocating 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,wherein the first sequence of addresses is stored in a table of address sequences, and wherein the table is maintained by selecting a particular address sequence of the table for deletion based on a length of time since a most recent update of the particular address sequence, based on a counter value associated with the particular address sequence, or a combination thereof.
2 Assignments
0 Petitions
Accused Products
Abstract
A data storage device includes a non-volatile memory that includes a three-dimensional (3D) memory. A controller of the data storage device 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.
-
Citations
40 Claims
-
1. A method comprising:
in a memory device including a non-volatile memory including a three-dimensional (3D) memory and circuitry associated with operation of memory cells of the 3D memory, performing; receiving a first sequence of read instructions from a host device; storing a first sequence of addresses based 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; determining whether a second sequence of addresses that is based on the second sequence of read instructions matches the first sequence of addresses; and relocating 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, wherein the first sequence of addresses is stored in a table of address sequences, and wherein the table is maintained by selecting a particular address sequence of the table for deletion based on a length of time since a most recent update of the particular address sequence, based on a counter value associated with the particular address sequence, or a combination thereof. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 15)
-
10. (canceled)
-
12. (canceled)
-
16-18. -18. (canceled)
-
19. A data storage device comprising:
-
a non-volatile memory that includes a three-dimensional (3D) memory; and a controller coupled to the non-volatile memory, wherein the controller is associated with operation of memory cells of the 3D memory and is configured to store a first sequence of addresses based 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 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, wherein 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, wherein the first sequence of addresses is stored in a table of address sequences that is maintained by the controller, wherein the controller is configured to compare an identified sequence of addresses to one or more address sequences of the table and to increment a counter associated with an address sequence of the table in response to determining that the address sequence matches the identified sequence, and wherein the controller is configured to add the identified sequence to the table in response to determining that no address sequence of the table matches the identified sequence. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 30, 34, 35, 36)
-
-
28-29. -29. (canceled)
-
31-33. -33. (canceled)
-
37. A method comprising:
in a memory device including a non-volatile memory including a three-dimensional (3D) memory and circuitry associated with operation of memory cells of the 3D memory, performing; receiving a first sequence of read instructions from a host device; identifying a particular address of the first sequence as an ending address in response to a delay exceeding a time threshold, the delay corresponding to a length of time that no read instructions are received from the host device after receiving the particular address; storing a first sequence of addresses based 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; determining whether a second sequence of addresses that is based on the second sequence of read instructions matches the first sequence of addresses; and relocating 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. - View Dependent Claims (38, 39, 40)
Specification