Apparatus, system, and method for managing data in a solid-state storage device
First Claim
Patent Images
1. A method for transforming data for a non-volatile solid-state storage device, the method comprising:
- receiving source data for storage in a plurality of storage cells of non-volatile solid-state storage media, bits of the source data having a source bias different from a bias for the plurality of storage cells;
transforming the bits of the source data to reduce a number of storage cells to be changed during programming to represent the source data; and
writing the transformed source data to the plurality of storage cells of the non-volatile solid-state storage media.
14 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, system, and method are disclosed for improving performance in a non-volatile solid-state storage device. Non-volatile solid-state storage media includes a plurality of storage cells. An input module receives source data for storage in the plurality of storage cells of the non-volatile solid-state storage media. Some or all of the bits of the source data are transformed to take into account a voltage level of an empty state of the plurality of storage cells. A write module writes the transformed source data to the plurality of storage cells of the non-volatile solid-state storage media.
-
Citations
25 Claims
-
1. A method for transforming data for a non-volatile solid-state storage device, the method comprising:
-
receiving source data for storage in a plurality of storage cells of non-volatile solid-state storage media, bits of the source data having a source bias different from a bias for the plurality of storage cells; transforming the bits of the source data to reduce a number of storage cells to be changed during programming to represent the source data; and writing the transformed source data to the plurality of storage cells of the non-volatile solid-state storage media. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An apparatus comprising:
-
a bit randomization module configured to deterministically pseudo-randomize bits of source data for storage in a plurality of storage cells of non-volatile solid-state storage media, wherein the bits are pseudo-randomized to reduce a number of storage cells to be programmed to represent the source data; a write module configured to write the pseudo-randomized source data to the plurality of storage cells of the non-volatile solid-state storage media; and an inverse bit randomization module configured to convert the pseudo-randomized source data back to original bit values for the source data in response to reading the pseudo-randomized source data from the plurality of storage cells. - View Dependent Claims (16, 17, 18)
-
-
19. A system comprising:
-
a processor; one or more communications buses in communication with the processor; an input module configured to receive source data from the processor over the one or more communications buses for storage in a plurality of storage cells of non-volatile solid-state storage media; a bit modification module configured to increase a number of binary ones of the source data to reduce wear on a plurality of storage cells; and a write module configured to write the adjusted source data to the plurality of storage cells of the non-volatile solid-state storage media. - View Dependent Claims (20)
-
-
21. A method for transforming data for a non-volatile solid-state storage device, the method comprising:
-
receiving source data for storage in a plurality of storage cells of the non-volatile solid-state storage media; changing the bits of the source data to reduce a number of storage cells to be transitioned during programming to represent the source data; and writing the changed source data to the plurality of storage cells of the non-volatile solid-state storage media. - View Dependent Claims (22, 23)
-
-
24. An apparatus comprising:
-
means for receiving source data for storage in a plurality of storage cells of non-volatile solid-state storage media, bits of the source data representing a first quantity of binary ones; means for increasing the number of binary ones of the source data to increase the life of the plurality of storage cells; and means for writing a representation of the source data to the plurality of storage cells of the non-volatile solid-state storage media. - View Dependent Claims (25)
-
Specification