Data encoding in solid-state storage apparatus
First Claim
1. A method for encoding an input data block for storage in q-level cells of solid-state memory, the method comprising:
- producing a preliminary block from the input data block by modulation encoding at least part of the input data block into a first group of q symbols via a first drift-tolerant encoding scheme, the preliminary block comprising the first group of q symbols and any remainder of the input data block not encoded via the first encoding scheme;
generating parity data for the preliminary block via an error-correction encoding scheme;
modulation encoding the parity data and any remainder of the input data block into a second group of q symbols via a second drift-tolerant encoding scheme; and
supplying the q symbols of the first group of q symbols and the second group of q symbols for storage in respective q-level memory cells, wherein q>
2.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for encoding an input data block for storage in q-level cells of solid-state memory includes producing a preliminary block from the input data block by modulation encoding at least part of the input block into a first group of qary symbols via a first drift-tolerant encoding scheme, the preliminary block comprising the first group of qary symbols and any remainder of the input block not encoded via the first encoding scheme; generating parity data for the preliminary block via an error-correction encoding scheme; modulation encoding the parity data and any remainder of the input block into a second group of qary symbols via a second drift-tolerant encoding scheme; and supplying the qary symbols of the first and second groups for storage in respective q-level memory cells.
-
Citations
18 Claims
-
1. A method for encoding an input data block for storage in q-level cells of solid-state memory, the method comprising:
-
producing a preliminary block from the input data block by modulation encoding at least part of the input data block into a first group of q symbols via a first drift-tolerant encoding scheme, the preliminary block comprising the first group of q symbols and any remainder of the input data block not encoded via the first encoding scheme; generating parity data for the preliminary block via an error-correction encoding scheme; modulation encoding the parity data and any remainder of the input data block into a second group of q symbols via a second drift-tolerant encoding scheme; and supplying the q symbols of the first group of q symbols and the second group of q symbols for storage in respective q-level memory cells, wherein q>
2. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for recording an input data block in q-level cells of solid-state memory, the method comprising:
-
encoding the input data block by producing a preliminary block from the input data block by modulation encoding at least part of the input data block into a first group of q symbols via a first drift-tolerant encoding scheme, the preliminary block comprising the first group of q symbols and any remainder of the input data block not encoded via the first encoding scheme, generating parity data for the preliminary block via an error-correction encoding scheme, modulation encoding the parity data and any remainder of the input data block into a second group of q symbols via a second drift-tolerant encoding scheme, and supplying the q symbols of the first and second groups for storage in respective q-level memory cells; and storing the q symbols of the first group of q symbols and second group group of q symbols in respective q-level memory cells, wherein q>
2. - View Dependent Claims (10, 11, 12, 13)
-
-
14. An encoder apparatus for encoding an input data block for storage in q-level cells of solid-state memory, comprising:
-
a first drift-tolerant encoding stage for modulation encoding at least part of the input block into a first group of q symbols via a first drift-tolerant encoding scheme; an error-correction encoder arranged for receiving a preliminary block, which comprises the first group of q symbols and any remainder of the input block not encoded by the first drift-tolerant encoding stage, and adapted to generate parity data for the preliminary block in accordance with an error-correction encoding scheme; and a second drift-tolerant encoding stage for modulation encoding the parity data and any remainder of the input block into a second group of q symbols via a second drift-tolerant encoding scheme; the apparatus being adapted to supply the q symbols of the first group of q symbols and the second group of q symbols for storage in respective q-level memory cells, wherein q>
2. - View Dependent Claims (15, 16, 17, 18)
-
Specification