Storing Corresponding Data Units in a Common Storage Unit
First Claim
1. A method comprising:
- receiving, by a storage device, a plurality of logical blocks to be stored in the storage device, wherein a first set of addresses comprises logical block addresses (LBAs) of the plurality of logical blocks;
determining an intersection of the first set of addresses with a second set of addresses, wherein the second set of addresses comprises LBAs of logical blocks in a storage unit of the storage device; and
storing each of the logical blocks having LBAs in the determined intersection of addresses in a common storage unit of the storage device.
2 Assignments
0 Petitions
Accused Products
Abstract
A storage device controller may segregate data units that are typically accessed together to a common storage unit. In one example, a storage device includes a control unit configured to receive a plurality of logical blocks to be stored in the storage device, wherein a first set of addresses comprises logical block addresses (LBAs) of the plurality of logical blocks, and a non-volatile memory configured to store logical blocks in a plurality of storage units, wherein one of the plurality of storage units includes logical blocks corresponding to a second set of addresses. The control unit may determine an intersection of the first set of addresses with the second set of addresses and to store each of the logical blocks having LBAs in the determined intersection of addresses in a common storage unit of the storage device, wherein the common storage unit comprises one of the plurality of storage units.
24 Citations
26 Claims
-
1. A method comprising:
-
receiving, by a storage device, a plurality of logical blocks to be stored in the storage device, wherein a first set of addresses comprises logical block addresses (LBAs) of the plurality of logical blocks; determining an intersection of the first set of addresses with a second set of addresses, wherein the second set of addresses comprises LBAs of logical blocks in a storage unit of the storage device; and storing each of the logical blocks having LBAs in the determined intersection of addresses in a common storage unit of the storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A storage device comprising:
-
a control unit configured to receive a plurality of logical blocks to be stored in the storage device, wherein a first set of addresses comprises logical block addresses (LBAs) of the plurality of logical blocks; and a non-volatile memory configured to store logical blocks in a plurality of storage units, wherein one of the plurality of storage units includes logical blocks corresponding to a second set of addresses, wherein the control unit is configured to determine an intersection of the first set of addresses with the second set of addresses and to store each of the logical blocks having LBAs in the determined intersection of addresses in a common storage unit of the storage device, wherein the common storage unit comprises one of the plurality of storage units. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable storage medium encoded with instructions that cause a processor to:
-
receive a plurality of logical blocks to be stored in a storage device, wherein a first set of addresses comprises logical block addresses (LBAs) of the plurality of logical blocks; determine an intersection of the first set of addresses with a second set of addresses, wherein the second set of addresses comprises LBAs of logical blocks in a storage unit of the storage device; and store each of the logical blocks having LBAs in the determined intersection of addresses in a common storage unit of the storage device. - View Dependent Claims (21, 22, 23, 24, 25, 26)
-
Specification