1. Field of the Invention
This invention relates to a decoder using a Low Density Parity Check (LDPC) codes used in a communication system and recording system.
2. Description of the Related Art
Probability calculations called row-directional processing and column-directional processing are iterated by using a parity check matrix corresponding to the LDPC codes, posterior probabilities of code bits are obtained and the LDPC codes are decoded. The row-directional processing is a processing of obtaining external information using parity check formula of each row of the parity check matrix. The column-directional processing is a processing of obtaining anterior probabilities on the basis of the external information obtained by the row-directional processing. In general, all the columns are subjected to the column-directional processing after the rows of all the parity check matrices are subjected to the row-directional processing.
Recently, shuffled decoding is known as a method of efficiently decoding the LDPC codes (for example, Junta Zhang and Marc. P. C. Fostoria, “Shuffled Iterative Decoding”, IEEE Trans. on Common. VOL. 53, NO. 2, pp. 209-213, February 2005). The shuffled decoding can make propagation rate of the external information higher and conduct efficient decoding by alternately conducting the row-directional processing and the column-directional processing at each code bit (i.e. updating the anterior probability of each column).
However, the decoding efficiency of the shuffled decoding, which conducts efficient decoding by alternately conducting the row-directional processing and the column-directional processing at each code bit, depends on the structure of the parity check matrix, the receiving probability of code bits obtained from communication path and recording media, and a sequence (update schedule) of calculating the probability. For this reason, decoding cannot always be conducted efficiently in the conventional method.