Patent ID: 9037951
Filing Date: 2015-05-19
Classification: G06F

Abstract:
1. A method for storing data in solid state storage of a solid state storage system, the method comprising: storing input data in successive groups of data write locations in the solid state storage, each group comprising a set of write locations in each of a plurality of logical subdivisions of the solid state storage; and encoding the input data to be stored in each group by constructing from the input data a logical array of rows and columns of data symbols by first encoding each row of data symbols in accordance with a first linear error correction code to produce an encoded array having corresponding rows of first codewords, and then encoding each column of said encoded array having corresponding rows of first codewords in accordance with a second linear error correction code to produce in said encoded array corresponding columns of second codewords in which all rows of said encoded array correspond to said first codewords and columns of said encoded array correspond to said second codewords; wherein, in each said group, the encoded input data to be stored comprises a plurality of said first codewords in each of said plurality of logical subdivisions and each logical subdivision of said plurality contains a portion of each of the second codewords for the group, wherein for each successive group, the stored second codeword includes a set of unencoded symbols, the encoding the input data further comprising: for each second codeword, at successive stages during a storage of said set of unencoded symbols for that second codeword in the group, implementing a feedback register circuit to generate a transient parity code for the unencoded symbols stored thus far for that second codeword by: