States encoding in multi-bit flash cells for optimizing error rate
First Claim
Patent Images
1. A method of storing N bits of data, comprising the steps of:
- (a) providing ┌
N/M┐
cells, wherein M is at least 3; and
(b) programming each cell with up to M of the bits according to a valid physical bit ordering, and according to a logical bit ordering that is different from said physical bit ordering and that distributes error probabilities of said up to M bits more evenly than said physical bit ordering.
3 Assignments
0 Petitions
Accused Products
Abstract
Memory cells are programmed and read, at least M=3 data bits per cell, according to a valid nonserial physical bit ordering with reference to a logical bit ordering. The logical bit ordering is chosen to give a more even distribution of error probabilities of the bits, relative to the probability distributions of the data error and the cell state transition error, than would be provided by the physical bit ordering alone. Preferably, both bit orderings have 2M−1 transitions. Preferably, the logical bit ordering is evenly distributed. The translation between the bit orderings is done by software or hardware.
-
Citations
42 Claims
-
1. A method of storing N bits of data, comprising the steps of:
-
(a) providing ┌
N/M┐
cells, wherein M is at least 3; and
(b) programming each cell with up to M of the bits according to a valid physical bit ordering, and according to a logical bit ordering that is different from said physical bit ordering and that distributes error probabilities of said up to M bits more evenly than said physical bit ordering. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A memory device comprising:
-
(a) a memory that includes K cells; and
(b) a controller operative to store N bits of data in said cells by programming each said cell with up to M=┌
N/K┐
of said bits according to a valid physical bit ordering, and according to a logical bit ordering that is different from said physical bit ordering and that distributes error probabilities of said up to M bits more evenly than said physical bit ordering, wherein M is at least 3. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A system for storing data, comprising:
-
(a) a memory device that includes a memory, said memory including K cells;
(b) a host of said memory device, for providing N bits of data to store; and
(c) a mechanism for translating, for each said cell, up to M=┌
N/K┐
of said bits, as listed in a logical bit ordering, into a corresponding entry in a valid physical bit ordering that is different from said logical bit ordering, wherein M is at least 3, said each cell then being programmed according to said entry in said physical bit ordering, said logical bit ordering distributing error probabilities of said up to M bits more evenly than said physical bit ordering. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A method of storing N bits of data, comprising the steps of:
-
(a) providing ┌
N/M┐
cells, wherein M is at least 3; and
(b) programming each cell with up to M of the bits according to a valid physical bit ordering, and according to an evenly distributed logical bit ordering that is different from said physical bit ordering.
-
-
30. A memory device comprising:
-
(a) a memory that includes K cells; and
(b) a controller operative to store N bits of data in said cells by programming each said cell with up to M==┌
N/K┐
of said bits according to a valid physical bit ordering, and according to an evenly distributed logical bit ordering, wherein M is at least 3.
-
-
31. A system for storing data, comprising:
-
(a) a memory device that includes a memory, said memory including K cells;
(b) a host of said memory device, for providing N bits of data to store; and
(c) a mechanism for translating, for each said cell, up to M=┌
N/K┐
of said bits, as listed in an evenly distributed logical bit ordering, into a corresponding entry in a valid physical bit ordering that is different from said logical bit ordering, wherein M is at least 3, said each cell then being programmed according to said entry in said physical bit ordering.
-
-
32. A method of storing N bits of data, comprising the steps of:
-
(a) providing ┌
N/M┐
cells, wherein M is at least 3; and
(b) programming each cell with up to M of the bits according to a valid, nonserial bit ordering that distributes error probabilities of all said up to M bits substantially evenly.
-
-
33. A memory device comprising:
-
(a) a memory that includes K cells; and
(b) a controller operative to store N bits of data in said cells by programming each said cell with up to M=┌
N/K┐
of said bits according to a valid, nonserial bit ordering that distributes error probabilities of all said up to M bits substantially evenly, wherein M is at least 3.
-
-
34. A method of of storing N bits of data, comprising the steps of:
-
(a) providing ┌
N/M┐
cells, wherein M is at least 3; and
(b) programming each cell with up to M of the bits according to a valid, nonserial, error-rate-optimal bit ordering. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41)
-
-
42. A memory device comprising:
-
(a) a memory that includes K cells; and
(b) a controller operative to store N bits of data in said cells by programming each cell with up to M=┌
N/K┐
of said bits according to a valid, nonserial, error-rate-optimal bit ordering, wherein M is at least 3.
-
Specification