Patent ID: 7934142

Claim:
A data encoding and/or decoding method executed by a system controlled by a microprocessor which uses a self-orthogonal Quasi Cyclic (QC) code whose parity check matrix is expressed by at least one circulant matrix, wherein a code sequence is generated which satisfies a check matrix, said check matrix being designed in which a column weight w of each circulant matrix is three or larger and a minimum hamming distance of the code is w+2 or larger, and wherein a period of the QC code is p and a number of rows of the check matrix is m, and one permutation of each element of a j′th (0≦j≦w) address set among w+1 number of address sets redundantly extracted from p number of addresses has w as the number of elements, the circulant matrices that constitute the check matrix is b 0 , j,b 1 , j, . . . , b w−1 , j, and a relationship of b j−1,0 −b i−1,0 +b 0, i −b j−1, i +b i , j−b 0 , j≠0 (mod m) exists where [ij] have values within a range of 2≦j≦w and 1≦i<j.