Flash interface for processing datasets
First Claim
Patent Images
1. In a system that includes a flash memory, a method for writing data to the flash memory, the method comprising:
- receiving a call from a client to write data to a location in the flash memory, wherein the client specifies in the call how to write the data;
determining whether the location can be overwritten;
overwriting the location when the location can be overwritten, wherein the location is overwritten in a manner specified in the call; and
marking the location for erasure when the location cannot be overwritten.
6 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for managing content in a flash memory. Content or data in a flash memory is overwritten when the write operation only requires bits to be set. This improves performance of the flash and extends the life of the flash memory.
182 Citations
20 Claims
-
1. In a system that includes a flash memory, a method for writing data to the flash memory, the method comprising:
-
receiving a call from a client to write data to a location in the flash memory, wherein the client specifies in the call how to write the data; determining whether the location can be overwritten; overwriting the location when the location can be overwritten, wherein the location is overwritten in a manner specified in the call; and marking the location for erasure when the location cannot be overwritten. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for writing to a flash memory, the method comprising:
-
receiving a call from a client at the flash memory to perform a write operation, wherein the call includes a data block; determining, by a controller of the flash memory, a manner in which to perform the write operation in the flash memory; overwriting a target block at a location in the flash memory associated with the data block using the determined manner when only sets are required to write the data block to the location of the target block; writing the data block to a new location when an unset is required to write the data block to the location of the target block; and marking the location in the flash memory of the target block for erasure when the location cannot be overwritten. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A device comprising:
-
a flash memory configured to store data, wherein the flash memory is written in pages and erased based on erasure units, wherein each erasure unit includes multiple pages; a controller that controls the flash memory and that includes a processor; wherein the controller is configured to; write data associated with a write operation to a target location in the flash memory that stores target data and wherein the controller is configured to determine how to write the data to the flash memory, overwrite the target data with the data when only sets are required to change the target data to the data and wherein the controller writes the data to a new location when an unset is required to be made to the target data, and mark the target data for erasure when the unset is required and the target data cannot be overwritten with the data of the write operation. - View Dependent Claims (17, 18, 19, 20)
-
Specification