Patent ID: 8239725

Claim:
A method for storing data in a device having one or more memory arrays, the method comprising: receiving block-coded data comprising N+y bytes of data, wherein the N+y bytes of data comprises N bytes of page data and y bytes of block-type error correction data for the page data; with a stream-based code coder, concatenating the N+y bytes of the block-coded data with a stream-based forward error correction technique to generate a concatenated code that is a factor z times larger in size than the N+y bytes of original block-coded data such that the concatenated code has z(N+y) bytes; and storing the concatenated code in the one or more memory arrays; wherein the one or memory arrays intrinsically has a first bit error rate, wherein with the additional forward error correction of the stream-based forward error correction technique has a second bit error rate lower than the first error rate such that the one or more memory arrays can be used to satisfy a bit error specification that would not be met by the first bit error rate.