Storage method and apparatus for random access memory using codeword storage
First Claim
1. A method comprising:
- receiving a set of B input bits, wherein B is an integer greater than 2;
selecting at least a first and a second state value according to the set of B input bits, each state value selected from a respective set of N−
1 possible state values, N being a power of 2, wherein 2*(log2(N)−
1)<
B, and wherein a total number of state value combinations is greater than 2B;
generating at least two storage format words by applying, for each of the selected state values, a respective numerical vector to a Hadamard matrix of size N, wherein each storage format word is generated by subtracting at least one respective Walsh function from a weighted all-one Walsh function, the all-one Walsh function corresponding to an all-one row of a Hadamard matrix, each respective Walsh function corresponding to rows of the Hadamard matrix orthogonal to the all-one row, the at least one respective Walsh function determined by the respective numerical vector;
selecting a subset of storage cells from a plurality of storage cells according to an address input; and
storing the at least two storage format words in the selected subset of storage cells.
1 Assignment
0 Petitions
Accused Products
Abstract
A memory circuit, such as an embedded DRAM array, stores information as groups of bits or data using information coding in storage and retrieval data, instead of each bit being stored separately. Write data words can be mapped to storage format words that are stored and defined by a Hadamard matrix. The storage format word is stored as charge levels in an addressable memory location. For retrieving stored data, charge levels are read from the storage cells and interpreted to a valid storage format word. Hadamard code maximal likelihood decoding can be used to derive a read data word corresponding to a previously written write data word. The write data word is then output as the result of a read of the selected addressable location, or a portion thereof. The mapping can be two or more Hadamard matrix mappings concatenated for each of a plurality of storage format words.
246 Citations
20 Claims
-
1. A method comprising:
-
receiving a set of B input bits, wherein B is an integer greater than 2; selecting at least a first and a second state value according to the set of B input bits, each state value selected from a respective set of N−
1 possible state values, N being a power of 2, wherein 2*(log2(N)−
1)<
B, and wherein a total number of state value combinations is greater than 2B;generating at least two storage format words by applying, for each of the selected state values, a respective numerical vector to a Hadamard matrix of size N, wherein each storage format word is generated by subtracting at least one respective Walsh function from a weighted all-one Walsh function, the all-one Walsh function corresponding to an all-one row of a Hadamard matrix, each respective Walsh function corresponding to rows of the Hadamard matrix orthogonal to the all-one row, the at least one respective Walsh function determined by the respective numerical vector; selecting a subset of storage cells from a plurality of storage cells according to an address input; and storing the at least two storage format words in the selected subset of storage cells. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus comprising:
-
an encoder configured to; receive a set of B input bits, and to select at least a first and a second state value according to the set of B input bits, each state value selected from a respective set of N−
1 possible state values, N being a power of 2, wherein 2*(log2(N)−
1)<
B, and wherein a total number of state value combinations is greater than 2B; andgenerate a at least two storage format words by applying, for each of the selected state values, a respective numerical vector to a Hadamard matrix of size N, wherein each storage format word is generated by subtracting at least one respective Walsh function from a weighted all-one Walsh function, the all-one Walsh function corresponding to an all-one row of a Hadamard matrix, each respective Walsh function corresponding to rows of the Hadamard matrix orthogonal to the all-one row, the at least one respective Walsh function determined by the respective numerical vector; and a memory write circuit configured to select a subset of storage cells from a plurality of storage cells according to an address input, and to store the at least two storage format words in the selected subset of storage cells. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification