Patent ID: 8645789

Claim:
A method of encoding data, the method comprising: at a data storage device, performing: initiating a first encoding operation associated with a first error correcting code to generate a first set of first parity bits corresponding to a first set of information bits and to generate a second set of first parity bits corresponding to a second set of information bits, wherein the first error correcting code is an algebraic code; initiating a second encoding operation associated with a second error correcting code to generate a first set of second parity bits corresponding to the first set of information bits and to generate a second set of second parity bits corresponding to the second set of information bits, wherein the second error correcting code is another algebraic code having a higher error correction capability than the first error correcting code; initiating a third encoding operation to generate a set of joint parity bits corresponding to a set of joint information bits, the set of joint information bits associated with the first set of information bits and the second set of information bits; and storing the first set of information bits, the second set of information bits, the first set of first parity bits, the second set of first parity bits, and the joint parity bits in a memory of the data storage device as a single codeword.