Apparatus, system, and method for using multi-level cell solid-state storage as single level cell solid-state storage
First Claim
1. A method comprising:
- receiving a write command from a client;
setting a physical address for storing data associated with the write command to a physical address for one or more lower pages of one or more page pairs of a storage device, wherein each page pair comprises a lower page associated with a least significant bit (LSB) of a plurality of multi-level cells in the storage device; and
writing data associated with the write command received from the client to only the lower page in each page pair of the one or more page pairs.
8 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, system, and method are disclosed for storing information in a storage device that includes multi-level memory cells. The method involves storing data that is written to the storage device in the LSBs of the multi-level memory cells, and storing audit data in the MSBs of the multi-level memory cells. The audit data can be read separately from the data and used to determine whether or not there has been any unintended drift between states in the multi-level cells. The audit data may be used to correct data when the errors in the data are too numerous to be corrected using error correction code (ECC). The audit data may also be used to monitor the general health of the storage device. The monitoring process may run as a background process on the storage device. The storage device may transition the multi-level memory cells to operate as single-level memory cells.
-
Citations
25 Claims
-
1. A method comprising:
-
receiving a write command from a client; setting a physical address for storing data associated with the write command to a physical address for one or more lower pages of one or more page pairs of a storage device, wherein each page pair comprises a lower page associated with a least significant bit (LSB) of a plurality of multi-level cells in the storage device; and writing data associated with the write command received from the client to only the lower page in each page pair of the one or more page pairs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a solid-state storage media comprising a plurality of multi-level cells; a driver configured to receive a write command from a client, the write command comprising a logical block address; a mapping logic module configured to map the logical block address received from the client to one or more page pairs, wherein each page pair comprises a lower page associated with a least significant bit (LSB) of the plurality of multi-level cells and an upper page associated with a most significant bit (MSB) of the multi-level cells; and a hardware controller configured to write data associated with the write command to the lower page in each page pair of the one or more page pairs. - View Dependent Claims (11, 12, 13)
-
-
14. An apparatus comprising:
-
means for setting a physical address for storing data associated with the write command to a physical address for one or more lower pages of one or more page pairs of a storage device, wherein each page pair comprises a lower page associated with a least significant bit (LSB) of a plurality of multi-level cells in the storage device, and an upper page associated with a most significant bit (MSB) of the multi-level cells; and means for writing data associated with the write command received from the client to the lower page in each page pair of the one or more page pairs, wherein audit data for the lower page in each page pair is stored in the upper page of each page pair. - View Dependent Claims (15, 16, 17)
-
-
18. An apparatus comprising:
-
a mapping logic module configured to map a logical block address to a plurality of least significant bits (LSBs) and a plurality of most significant bits (MSBs) of a plurality of multi-level cells, the logical block address received from a client in a write command; and a hardware controller configured to write data associated with the write command received from the client to the plurality of LSBs. - View Dependent Claims (19, 20)
-
-
21. A computer program product comprising a non-transitory computer readable storage medium storing computer usable program code executable to perform operations comprising:
-
receiving a write command from a client, the write command comprising a logical block address; mapping the logical block address received from the client to a plurality of least significant bits (LSBs) and a plurality of most significant bits (MSBs) of a plurality of multi-level cells; and writing data associated with the write command received from the client to only the plurality of LSBs. - View Dependent Claims (22, 23, 24, 25)
-
Specification