High performance system providing selective merging of dataframe segments in hardware
First Claim
1. A method of writing data to a range of logical blocks in a storage medium, the method comprising:
- receiving a command comprising a starting logical block address, a value indicating a range of logical block addresses to be written, and a logical block of data;
storing the logical block of data in a first temporary storage;
generating a logical page by duplicating the logical block of data a plurality of times corresponding to a number of logical blocks comprising a logical page and transporting the generated logical page to a second temporary storage and storing the generated logical page in the second temporary storage;
writing the generated logical page from the second temporary storage into the storage medium beginning from the starting logical block address, wherein the writing the generated logical page is performed as a background task to other write operations involving merging; and
performing a read-modify-write operation if the first write operation does not begin on a logical page boundary or the last write operation does not end on a logical page boundary.
14 Assignments
0 Petitions
Accused Products
Abstract
A method of writing data to a range of logical blocks in a storage medium includes: receiving a command including a starting logical block address, a value indicating a range of logical block addresses to be written, and a logical block of data; storing the logical block in a first temporary storage; generating a logical page by duplicating the logical block a plurality of times corresponding to a number of logical blocks in a logical page and transporting the generated logical page to a second temporary storage and storing the generated logical page in the second temporary storage; writing the generated logical page from the second temporary storage into the storage medium beginning from the starting logical block address; and performing a read-modify-write operation if the first write operation does not begin on a logical page boundary or the last write operation does not end on a logical page boundary.
202 Citations
19 Claims
-
1. A method of writing data to a range of logical blocks in a storage medium, the method comprising:
-
receiving a command comprising a starting logical block address, a value indicating a range of logical block addresses to be written, and a logical block of data; storing the logical block of data in a first temporary storage; generating a logical page by duplicating the logical block of data a plurality of times corresponding to a number of logical blocks comprising a logical page and transporting the generated logical page to a second temporary storage and storing the generated logical page in the second temporary storage; writing the generated logical page from the second temporary storage into the storage medium beginning from the starting logical block address, wherein the writing the generated logical page is performed as a background task to other write operations involving merging; and performing a read-modify-write operation if the first write operation does not begin on a logical page boundary or the last write operation does not end on a logical page boundary. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. An apparatus for writing data to a range of logical blocks, the apparatus comprising:
-
a first device configured to receive a command comprising a starting logical block address, a value indicating a range of logical block addresses, and a logical block of data; a first temporary storage configured to store the logical block of data; a processor configured to generate a logical page by duplicating the logical block of data a plurality of times corresponding to a number of logical blocks comprising a logical page, and transport the generated logical page to a second temporary storage; a storage medium configured to store logical pages; write circuitry configured to write the generated logical page from the second temporary storage into the storage medium beginning from the starting logical block address, wherein the write circuitry writes the logical page from the second temporary storage into the storage medium as a background task to other write operations involving merging; and a read-modify-write module configured to perform a read-modify-write operation if the first write operation does not begin on a logical page boundary or the last write operation does not end on a logical page boundary. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification