WO2004107585A1 - 復号方法および復号装置、プログラム、記録再生装置および方法、並びに、再生装置および方法 - Google Patents

復号方法および復号装置、プログラム、記録再生装置および方法、並びに、再生装置および方法 Download PDF

Info

Publication number
WO2004107585A1
WO2004107585A1 PCT/JP2004/007747 JP2004007747W WO2004107585A1 WO 2004107585 A1 WO2004107585 A1 WO 2004107585A1 JP 2004007747 W JP2004007747 W JP 2004007747W WO 2004107585 A1 WO2004107585 A1 WO 2004107585A1
Authority
WO
WIPO (PCT)
Prior art keywords
decoding
density
check matrix
parity check
linear code
Prior art date
Application number
PCT/JP2004/007747
Other languages
English (en)
French (fr)
Inventor
Atsushi Kikuchi
Masayuki Hattori
Toshiyuki Miyauchi
Kazuo Watanabe
Makiko Kan
Original Assignee
Sony Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corporation filed Critical Sony Corporation
Priority to EP04735346A priority Critical patent/EP1524771B1/en
Priority to DE602004030869T priority patent/DE602004030869D1/de
Priority to US10/523,452 priority patent/US7607063B2/en
Priority to JP2005506568A priority patent/JP4432902B2/ja
Priority to KR1020057001762A priority patent/KR101143732B1/ko
Publication of WO2004107585A1 publication Critical patent/WO2004107585A1/ja

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1866Error detection or correction; Testing, e.g. of drop-outs by interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1191Codes on graphs other than LDPC codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2933Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using a block and a convolutional code
    • H03M13/2936Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using a block and a convolutional code comprising an outer Reed-Solomon code and an inner convolutional code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/1836Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using a Reed Solomon [RS] code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes

Definitions

  • the present invention relates to a decoding method and a decoding apparatus, a program, a recording / reproducing apparatus and a method, and a reproducing apparatus and a method, and is particularly suitable for decoding encoded data encoded by a linear code on a ring R. , Decoding method and decoding device, program
  • the present invention relates to a recording and reproducing apparatus and method, and a reproducing apparatus and method.
  • LDPC codes are described in "RG Gal lager,” Low Density Parity Check Codes “by RG Gal lager, Cambridge, Massachusetts: MIT Press, 1963J. , And then “DJC MacKay,” Good err or correcting codes based on very sparse matrices Submitted to IEE E Trans. Inf. Theory, IT-45, pp. 399-431, 1999 " And ⁇ MG Luby, M. Mitzenmacher, MA Shokrol lahi and DA Eisenraan, "Analyses of low density codes and improved designs using irregular graphs", in Proceedings of ACM Symposium on Theory of Computing, pp. 249-258, 1998 And so on.
  • LDPC codes like turbo codes, are finding that their performance approaches the Shannon limit as the code length increases. Also, LDPC codes have the property that the minimum distance is proportional to the code length, and as a characteristic, they have good block error probability characteristics, and the so-called error floor phenomenon observed in the decoding characteristics of turbo codes, etc. Another advantage is that almost no occurrence occurs.
  • LDPC code is a linear code, and does not necessarily need to be binary, but is described here as being binary.
  • An LDPC code has the greatest feature that a parity check matrix defining the LDPC code is sparse.
  • a sparse matrix is one in which the number of "1" components in the matrix is very small.
  • H such a parity check matrix is, for example, H LDPC so on shown in FIG. 1, the number of each row of Hamming weight 1 ⁇ ) (weight) is "2", and is like those Hamming weight of each column is ⁇ 4 ⁇ .
  • an LDPC code defined by a parity check matrix H in which the Hamming weight of each row and each column is constant is called a regular LDPC code.
  • an LDPC code defined by a parity check matrix H in which the Hamming weight of each row and each column is not constant is referred to as an LDPC code.
  • Such LDPC coding generates a generator matrix G based on a parity check matrix H. This is realized by generating a codeword by multiplying the generator matrix G by the binary information message.
  • variable pull node variable node
  • a message node is also called a message node.
  • a check node which is a message passing by a belief propagation on a so-called Tanner graph (beli ef propagation). Is possible.
  • the noble node and the check node are also simply referred to as nodes as appropriate.
  • the parity check matrix H pc shown in FIG. 1 is represented by a Tanner graph as shown in FIG.
  • each column of the parity check matrix H pc of FIG. 1 is a variable node, each row is a check node, and the parity check matrix HL is the i-th row where the value of DPC is “1”; Then, the j-th variable node and the i-th check node are connected as an edge.
  • Gallager proposes algorithm A or algorithm B as a decoding algorithm for LDPC codes.
  • Decoding of LDPC codes is generally performed according to the procedure shown in Fig. 2. 4007747
  • the received value (received code sequence) is U 0 (u 0i )
  • the message output from the check node is Uj
  • the message output from the barrier pull node is vi.
  • the message is a real value expressing the likelihood of the value "0" by the so-called log likelihood ratio.
  • Decoding of LDPC codes is generally performed according to the procedure shown in FIG.
  • the received value (received code sequence) is U 0 (u 0i )
  • the message output from the check node is
  • the message output from the parable node is Vi.
  • the message is a real value expressing the likelihood of the value "0" by a so-called log likelihood ratio.
  • step S1 the received value U is used.
  • ( U () i ) is received, the message Uj is initialized to "0", and the variable U is set to a variable k which takes an integer as a counter for the repetition processing.
  • the process proceeds to step S2.
  • step S2 the received value U.
  • the message Vi is obtained by performing the operation (operation of the barrier pull node) shown in Expression (1) based on (u.i), and further, based on this message Vi , the operation Vi shown in Expression (2) is obtained.
  • Equations (1) and (2) can be arbitrarily selected, indicating the number of “1” in the vertical (column) and horizontal (row) directions of the parity check matrix H, respectively. This is a parameter.
  • the message input from the edge (the line connecting the variable node and the check node) from which the message is to be output is added to the sum or product operation, respectively. Since it is not used as a parameter, the range of the sum or product operation is 1 to d v -l or 1 to d c -1. Ma And, the operation shown in equation (2), in fact, function shown in 2 input Vl, v being defined expressions 1 output for 2 (3)! v This is performed by creating a table of V ⁇ in advance and using it continuously (recursively) as shown in equation (4).
  • step S2 the variable k power Vl "is further incremented, and the process proceeds to step S3.
  • step S3 it is determined whether or not the variable k is larger than a predetermined number of times N of iterative decoding. If it is determined in step 3 that the variable k is not larger than the force SN, the process returns to step S2, and the same processing is repeated.In step S3, it is determined that the variable k is larger than N. In this case, the process proceeds to step S4, in which a message Vi as a decoding result that is finally output by performing the operation shown in Expression (5) is obtained and output, and the decoding process of the LDPC code ends.
  • equation (5) differs from the operation of equation (1), and is performed using input messages from all branches connected to the variable node.
  • FIG. 6 shows an example of a parity check matrix for a (3,6) LDPC code (coding rate 1/2, code length 12).
  • the detection matrix of the LDPC code can be represented using a Tanner graph as shown in FIG.
  • the check node is represented by ⁇ + ”
  • the check node and the variable node are the row of the parity check matrix and the variable node, respectively.
  • the connection between the check node and the variable node is an edge, which is equivalent to ⁇ 1 ⁇ of the parity check matrix, that is, the component at the j-th row and the i-th column of the parity check matrix is 1.
  • the i-th variable node from the top (the node of) and the j-th check node from the top) are connected by a branch in Fig. 6.
  • the branch corresponds to the variable pull node It means that the sign bit has the constraint condition corresponding to the check node, and FIG. 6 is a Tanner graph of the parity check matrix of FIG.
  • variable node performs the operation of equation (1) (variable pull node operation) as shown in Fig. 7. That is, in FIG. 7, the message Vi corresponding to the branch that is about Sho calculation, the messages and u 2 from the residual branches connected to Bruno Riapurunodo is calculated using the. Received information u 0i. Messages corresponding to other branches are calculated in the same way.
  • ⁇ ( ⁇ ) and ⁇ -1 ( ⁇ ) are implemented in hardware, they may be implemented using LUTs (Look Up Tables), but both are the same LUT.
  • the parity check matrix needs to be sparse.
  • a parity check matrix H of other general linear codes for example, a Reed Solomon code
  • a parity check matrix ⁇ of a linear code is generally not low density.
  • Such non-low-density Reed-Solomon codes are subjected to decoding (hereinafter, referred to as ordinary decoding) using the algorithm of Eutlid (Euclid).
  • FIG. 10 is a block diagram illustrating a configuration example of an error correction system that performs error correction using a Reed-Solomon code.
  • the error correction system shown in FIG. 10 is a system used for a digital communication system such as a digital television.
  • digital information transmitted from the encoding device 10 on the transmitting side is transmitted to the decoding device 30 on the receiving side via a communication path 21 represented by, for example, the Internet. Supplied.
  • the encoding device 10 includes a Reed-Solomon encoding unit 11 that encodes digital information for transmission supplied from the outside using a Reed-Solomon code, and an interleaver 1 that rearranges the encoded digital information. 2. Consists of a convolutional encoder 1.3 for performing convolutional encoding, and a communication processor 14 for communicating with the decoding device 30 via a communication channel 21. '
  • the decoding device 30 includes a communication processing unit 31 for acquiring a transmission word supplied via the communication channel 21, a convolution decoding unit 32 for performing convolution decoding on the acquired transmission word, and rearranged information. And a Reed-Solomon decoding unit 34 for performing Reed-Solomon decoding (normal decoding).
  • the digital information for transmission supplied from the outside of the encoder 10 is subjected to Reed-Solomon encoding in the Reed-Solomon encoder 11 of the encoder 10 and then supplied to the interleaver 12.
  • the interleaver 12 performs information rearrangement (interleaving) in order to spread a burst error mainly occurring in the communication channel 21.
  • the Reed-Solomon code performs error correction using multiple bits as one symbol. Therefore, the interleaver 12 performs symbol-no-rain leaving that spreads burst errors in units of symbols.
  • the rearranged transmission digital information is further subjected to a convolutional code in which a code sequence is sequentially determined based on a plurality of information blocks in a convolutional encoder 13.
  • a convolutional code in which a code sequence is sequentially determined based on a plurality of information blocks in a convolutional encoder 13.
  • the convolutional encoder 13 having the constraint length K receives not only the information block supplied this time but also the information block supplied in the past. Encode into an n- bit code block based on K information blocks including information blocks.
  • the convolutionally encoded digital information is converted into a transmittable data format in the communication processing unit 14 and supplied to the decoding device 30 via the communication path 21.
  • the decoding device 30 acquires the transmission word supplied via the wired or wireless communication path 21 in the communication processing unit 31.
  • the convoluted decoding unit 32 performs convolutional decoding on the acquired transmission word.
  • the dingtalizer 33 rearranges the information in a manner corresponding to the interleaving performed in the interleaver 12 of the encoder 10 and uses the rearranged information as the basis. (Dinterleaving) is performed.
  • the Reed-Solomon decoding unit 34 performs a Reed-Solomon decoding process by ordinary decoding on the digital information returned to the original order, reproduces the digital information before being encoded, and outputs the information outside the decoding device 30. Output to the section.
  • the error correction system of FIG. 10 corrects an error that occurred during communication and enables more accurate communication.
  • FIG. 11 is a block diagram illustrating a configuration example of a recording / reproducing apparatus to which an error correction system that performs error correction using a Reed-Solomon code is applied.
  • the recording / reproducing apparatus shown in FIG. 11 is, for example, a digital recording medium recording / reproducing apparatus such as a DVD (Digital Versatile Disk) record player.
  • the recording / reproducing device 50 of FIG. 11 encodes digital information supplied from the outside
  • the data is encoded by the processing unit 60 and recorded on the recording medium 72 by the recording / reproducing processing unit 70.
  • the recording / reproducing device 50 reproduces the digital information recorded on the recording medium 72 in the recording / reproducing processing unit 70, and performs the decoding process in the decoding processing unit 80 to obtain the original digital information. And outputs that information to the outside world.
  • the encoding processing unit 60 is composed of a first Reed-Solomon encoding unit 61-1 to an n-th Reed-Solomon encoding unit 611n for performing Reed-Solomon encoding on digital information in different dimensions.
  • the recording / reproducing processing unit 70 is a recording unit 71 for recording the information supplied from the encoding processing unit 60 on a recording medium 72, for example, a recording medium 72 such as an optical disk, and a recording medium 72. And a playback unit 73 for playing back the information.
  • the decoding processing unit 80 is a decoder corresponding to the encoding processing unit 60, and performs a first Reed-Solomon decoding unit 8 1 _ 1 for performing Reed-Solomon decoding (normal decoding) on digital information with respect to different dimensions. To the 11th Reed-Solomon decoding unit 81-n.
  • Digital information supplied from the outside of the encoding processing unit 60 is subjected to Reed-Solomon encoding for the first dimension in a first Reed-Solomon encoding unit 61-1. Subsequently, the digital information, in the second Reed Solomon encoding unit 6 1- 2 to each part of the n Lee Dosoromon coder 6 1 n, Li one for each dimension th to second dimension to n-th dimension A Dosolomon code is performed.
  • the encoding processing unit 60 supplies the encoded digital information to the recording / reproducing processing unit 70.
  • the recording section 71 of the recording / reproducing processing section 70 records the digital information supplied from the encoding processing section 60 on a recording medium 72.
  • the reproducing unit 73 of the recording / reproducing processing unit 70 reproduces digital information (encoded digital information) recorded on the recording medium 72 and supplies the digital information to the decoding processing unit 80.
  • the decoding processing unit 80 adds the Reed-Solomon data for each dimension to the digital information supplied from the reproducing unit 73. Performs decryption (normal decryption) and returns the original digital information To restore.
  • the decoding processing unit 80 first performs the Reed-Solomon decoding on the n-th dimension in the n-th Reed-Solomon decoding unit 81-n, in the opposite manner to the case of the encoding processing unit 60. , N—Reed-Solomon decoding is performed to reduce the number of dimensions in the order of the second dimension, and finally Reed-Solomon decoding for the first dimension is performed.
  • the decoding processing unit 80 outputs the restored original digital information to the outside of the recording / reproducing device 50.
  • the recording / reproducing device 50 in FIG. 11 corrects an error of information generated at the time of recording or reproducing information.
  • the decoding performance using the hard-decision received word is generally inferior to the decoding performance using the soft-decision received word.
  • ordinary decoding is performed on the Reed-Solomon code as described above, there is a problem that the decoding performance is not improved.
  • the present invention has been made in view of such a situation, and when a sum product algorithm is applied as a decoding method for a general linear code, it is possible to easily perform high-performance decoding processing. It is to be.
  • the first decoding method of the present invention provides a parity check matrix of a linear code on a ring R whose value is 1 PC orchid 004/007747
  • a low-density processing step of lowering the density of a certain element, and a decoding step of decoding a linear code by a thumb product algorithm using the check matrix reduced by the processing of the low-density processing step It is characterized by the following.
  • the ring may be a finite field based on a power of a prime number.
  • the linear code may include a BCH code on a finite field or a Reed-Solomon code.
  • the density reduction processing step includes a linear combination calculation step of calculating a linear combination of each row of a parity check matrix, and a set of vectors obtained by the linear combination calculated by the linear combination calculation step. And extracting a lower-weighted vector subset with a code complement space and generating a new parity check matrix having all the vectors of the vector subset as row components. be able to.
  • the low-density processing step further includes an expansion step of expanding a parity check matrix on a finite field on a subfield of the finite field with a predetermined dimension, and the linear combination calculation step is expanded by the processing of the expansion step.
  • the linear combination of each row of the parity check matrix can be calculated.
  • a first decoding device includes: a low-density processing unit that performs low-density processing for reducing the density of an element having a value of 1 with respect to a detection matrix of a linear code on a ring R; Decoding means for decoding a linear code by a thumb product algorithm using the parity check matrix reduced in density by the density reduction processing means.
  • the ring may be a finite field based on a power of a prime number.
  • the linear code may include a BCH code on a finite field or a Reed-Solomon code.
  • the low-density processing means comprises a linear combination calculation means for calculating a linear combination of each row of the parity check matrix, and a code complement space selected from a set of vectors obtained by the linear combination calculated by the linear combination calculation means. And a check matrix creating means for extracting a vector subset having a lower weight and creating a new check matrix having all the vectors of the vector subset as row components.
  • the low-density processing means further includes expansion means for expanding a parity check matrix on a finite field on a partial field of the finite field in a predetermined dimension, and the linear combination calculation means includes a parity check matrix expanded by the expansion means. Can be calculated for each row.
  • a soft-decision decoding means for soft-decision decoding the convolutionally coded linear code wherein the low-density processing means has a value of 1 with respect to a check matrix of the linear code soft-decision-decoded by the soft decision decoding means. , The density of the element can be reduced.
  • Soft decision decoding by the soft decision decoding means density reduction processing by the density reduction processing means, and decoding by the decoding means can be repeatedly executed.
  • a first program according to the present invention includes a low-density processing step for lowering the density of an element having a value of 1 with respect to a parity check matrix of a linear code on a ring R; A decoding step of decoding a linear code by a sum product algorithm using a parity check matrix reduced in density by the processing.
  • a second decoding method includes: an input step of inputting a received value; a parity check matrix in which the density of elements having a value of 1 is reduced with respect to a linear code parity check matrix; A decoding step of decoding a linear code by a sum product algorithm using the received value input by the processing of (1).
  • a second decoding device includes: input means for inputting a received value; a check matrix obtained by reducing the density of elements having a value of 1 with respect to a check matrix of a linear code; And decoding means for decoding a linear code by a thumb product algorithm using the more input received value.
  • a second program includes an input step of inputting a received value, a check matrix in which the density of elements having a value of 1 is reduced with respect to a check matrix of a linear code, and a process of an input step. And a decoding step of decoding a linear code by a thumb product algorithm using the input received value.
  • a first recording / reproducing apparatus of the present invention is a recording / reproducing apparatus for recording a linear code on a ring R on a recording medium. 2004/007747
  • a reproducing means for reproducing the linear code recorded by the recording means, and a low-density element for reducing a density of an element having a value of 1 with respect to a parity check matrix of the linear code reproduced by the reproducing means.
  • a low-density processing means for performing processing; and a decoding means for decoding a linear code by a sum product algorithm using a check matrix reduced in density by the low-density processing means.
  • the linear code is a linear code product-coded in a predetermined dimension
  • the low-density processing unit performs low-density processing on a parity check matrix for each dimension,
  • Each dimension of the density check matrix can be decoded by the sum product algorithm.
  • the low-density processing by the low-density processing means and the decoding by the decoding means can be repeatedly executed.
  • the first recording / reproducing method of the present invention includes a recording control step of controlling recording of a linear code on a ring R on a recording medium, and a linear code of which recording is controlled by the processing of the recording control step. Low-density processing to reduce the density of elements with a value of 1 to the linear code parity check matrix whose reproduction is controlled by the processing of the reproduction control step. And a decoding step of decoding a linear code by a thumb product algorithm using the check matrix reduced in density by the processing of the density reduction step.
  • a third program includes: a recording control step for controlling recording of a linear code on a ring R on the recording medium; and reproducing the linear code, the recording of which is controlled by the processing of the recording control step. And a density reduction process for reducing the density of elements having a value of 1 with respect to the parity check matrix of the linear code, the reproduction of which is controlled by the process of the playback control step.
  • the computer executes a low-density processing step to be performed and a decoding step of decoding the linear code by a sum product algorithm using the parity check matrix reduced in density by the processing in the low-density processing step. It is characterized by the following.
  • the second recording / reproducing apparatus of the present invention is a recording / reproducing apparatus for recording a linear code on a ring R on a recording medium.
  • Means a reproducing means for reproducing the linear code recorded by the recording means, and a parity check matrix for the linear code, wherein a parity check matrix in which the density of elements having a value of 1 is reduced to a low density is used.
  • Decoding means for decoding by algorithm.
  • the second recording / reproducing method of the present invention includes a recording control step of controlling recording of a linear code on a ring R onto a recording medium, and a reproduction of a linear code whose recording is controlled by the processing of the recording control step.
  • a fourth program according to the present invention includes a recording control step of controlling recording of a linear code on a ring R on a recording medium, and a reproduction control of reproducing a linear code whose recording is controlled by the processing of the recording control step.
  • the first reproducing apparatus of the present invention has a value of 1 for reproducing means for reproducing a linear code on the ring R recorded by the recording means, and for a parity check matrix of the linear code reproduced by the reproducing means.
  • Low-density processing means for performing low-density processing for reducing the density of elements, and decoding means for decoding a linear code by a sum product algorithm using the parity check matrix reduced by the low-density processing means. It is characterized by having.
  • the linear code is a linear code product-coded in a predetermined dimension, the low-density processing unit performs low-density processing on a parity check matrix for each dimension, For each dimension of the density check matrix, decoding can be performed by the sum product algorithm.
  • the low-density processing by the low-density processing means and the decoding by the decoding means can be repeatedly executed.
  • the first reproducing method of the present invention is a method for reproducing a linear code on a ring R recorded on a recording medium.
  • Density reduction processing that performs a reproduction control step to control and a parity check matrix of a linear code whose reproduction is controlled by the processing of the reproduction control step, to reduce the density of elements with a value of 1 to a lower density.
  • a fifth program provides a reproduction control step for controlling reproduction of a linear code on a ring R recorded on a recording medium, and a check matrix for a linear code whose reproduction is controlled by the processing of the reproduction control step.
  • a second reproducing apparatus includes: a reproducing unit that reproduces a linear code on a ring R recorded on a recording medium; and a density of elements having a value of 1 with respect to a parity check matrix of the linear code.
  • a second reproduction method includes a reproduction control step of controlling reproduction of a linear code on a ring R recorded on a recording medium, and a density of an element having a value of 1 for a parity check matrix of the linear code.
  • a reproduction control step for controlling reproduction of a linear code on a ring R recorded on a recording medium, and a density of an element having a value of 1 with respect to a parity check matrix of the linear code.
  • a parity check matrix of a linear code on the ring R the density of elements having a value of 1 is reduced, and the reduced-density parity check matrix is used. Decoded by the algorithm. Further, in the present invention, a parity check matrix in which the density of elements having a value of 1 is reduced is used, and the linear code is decoded by the sum product algorithm.
  • FIG. 1 is a diagram illustrating an example of a low-density parity check matrix.
  • FIG. 2 is a diagram illustrating a Tanner graph corresponding to the parity check matrix of FIG.
  • FIG. 3 is a flowchart illustrating a decoding procedure of the LDPC code.
  • FIG. 4 is a diagram for explaining a message flow.
  • FIG. 5 is a diagram illustrating an example of a parity check matrix of an LDPC code.
  • FIG. 6 is a diagram showing a Tanner graph of a parity check matrix.
  • FIG. 7 illustrates a variable node
  • FIG. 8 is a diagram showing a check node.
  • FIG. 9 is a diagram illustrating an example of a parity check matrix of a Reed-Solomon code.
  • FIG. 10 shows a configuration example of a conventional error correction system.
  • FIG. 11 is a diagram showing a configuration example of a conventional recording / reproducing apparatus.
  • FIG. 12 is a diagram illustrating a configuration example of a decoding device to which the present invention has been applied.
  • FIG. 1 3 Furochiya one bets is £ 1 4 illustrating a decoding process by the decoding apparatus of FIG. 1. 2, a parity Ken ⁇ matrix less dense cathodic process executed in step S 2 1 of FIG. 1 3 This is a flowchart to be described.
  • FIG. 15 is a diagram illustrating an example of a parity check matrix of a BCH code.
  • FIG. 16 is a diagram showing a Tanner graph corresponding to the parity check matrix of FIG. 15 c .
  • FIG. 17 is a diagram showing an example of an expanded parity check matrix.
  • FIG. 18 is a diagram showing a Tanner graph corresponding to the parity check matrix of FIG. 17.
  • T FIG. 19 is a graph for comparing decoding performance.
  • FIG. 20 is a diagram illustrating another configuration example of the decoding device to which the present invention has been applied.
  • Figure 2 1 is a t Figure 2 2 is a flowchart illustrating a decoding process by the decoding device in Fig 2 0 is a diagram showing an example of a parity check matrix in the Reed-Solomon code t
  • FIG. 23 is a diagram illustrating an example of an expanded parity check matrix.
  • FIG. 24 is a graph for comparing decoding performance.
  • FIG. 25 is a block diagram illustrating a configuration example of an error correction system to which the present invention has been applied.
  • FIG. 26 is a block diagram showing another configuration example of the error correction system to which the present invention is applied.
  • FIG. 27 is a block diagram illustrating a configuration example of a recording / reproducing apparatus to which the present invention has been applied.
  • FIG. 28 is a block diagram illustrating a configuration example of a recording device.
  • FIG. 29 is a block diagram illustrating a configuration example of a playback device to which the present invention has been applied.
  • FIG. 30 is a block diagram showing another configuration example of the recording / reproducing apparatus to which the present invention is applied.
  • FIG. 31 is a block diagram showing another configuration example of the playback device to which the present invention is applied.
  • FIG. 32 is a block diagram showing a configuration example of a computer according to an embodiment of the present invention. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 12 is a block diagram illustrating a configuration example of a decoding device to which the present invention has been applied.
  • a decoding device 100 is a decoding device corresponding to, for example, a BCH code, and converts a parity check matrix of a received word on a ring R (or on a finite field) into a sufficiently low-density matrix. It comprises a density processing unit 110 and an LDPC decoding unit 121 that decodes a received word using the reduced parity check matrix.
  • the low-density processing unit 110 is a linear combination calculation unit that calculates the linear combination of the rows of the parity check matrix.
  • the parity check that creates a sufficiently sparse parity check matrix using the linearly combined rows
  • Matrix creation unit 1 1 2 and determination processing unit 1 that determines whether the rank of the created parity check matrix is the same as the rank of the original parity check matrix It is composed of 13.
  • the linear combination calculation unit 111 calculates the linear combination of each row of the parity check matrix included in the acquired received word for all combinations. That is, the linear combination calculation unit 111 calculates a linear combination of 2 n combinations of n parity check matrices. The linear combination calculation unit 111 supplies the calculation result and the received word to the parity check matrix creation unit 112.
  • the parity check matrix creation unit 1 1 2 extracts a row according to a predetermined condition from the calculation result supplied from the linear combination calculation unit 1 1 1, that is, the row that is linearly combined, and configures the extracted row. Create a parity check matrix to be calculated.
  • the parity check matrix creating unit 1 1 2 extracts the density of the created parity check matrix by, for example, extracting a row in which the number of elements having a value of “1” is equal to or less than a predetermined number from the linearly combined rows.
  • a condition is set so that is sparse, and rows that meet the condition are extracted.
  • the parity check matrix creation unit 112 supplies the created parity check matrix and the received word to the determination processing unit 113.
  • the parity check matrix creation unit 112 Extract the rows again and create a new parity check matrix. At that time, the parity check matrix creation unit 112 changes the condition of the previous row extraction, and creates a parity check matrix composed of rows different from the previously created parity check matrix.
  • the determination processing unit 113 determines whether or not the rank (rank) of the parity check matrix created in the parity check matrix creation unit 112 matches the rank of the original parity check matrix. If it is determined that the ranks match, the determination processing unit 113 supplies the received word and the created parity check matrix to the LDPC decoding unit 122. When it is determined that the ranks do not match, the determination processing unit 113 returns the processing to the parity check matrix creation unit 112 to create a new parity check matrix.
  • the density reduction processing section 110 reduces the density of the parity check matrix of the BCH code included in the received word, and receives the reduced parity check matrix. It is supplied to the LDPC decoding unit 1 2 1 together with the message.
  • LDPC decoding section 112 decodes the received word using the obtained low-density parity check matrix by the sum product algorithm, and outputs the decoded received word to the outside of decoding apparatus 100.
  • the LDPC decoding section 122 uses the low-density parity check matrix to generate the sum product algorithm.
  • the decoding process using the high-performance decoding can be performed.
  • the low-density processing unit 110 reduces the parity check matrix of the received word using linear combination
  • the LDPC decoding unit 121 can perform decoding on the subfield, Calculation costs can also be reduced.
  • the density of the parity check matrix is reduced by linear combination, so that the decoding device 100 can easily perform high-performance decoding. Processing can be performed.
  • step S21 the low-density processing unit 110 of the decoding apparatus 100 performs a parity-check-matrix low-density process to determine the density of the parity-check matrix included in the acquired received word. Sparse. Details of the parity check matrix low-density processing will be described later with reference to the flowchart in FIG.
  • step S22 the LDPC decoding unit 121 uses the parity check matrix whose density has been reduced by the processing in step S21, and performs a decoding process using the sum product algorithm (SPA).
  • SPA sum product algorithm
  • step S41 the linear combination calculation unit 1 of the low-density processing unit 110 11 uses each row of the parity check matrix included in the acquired received word to perform linear combination for all combinations and calculate the combination result.
  • Linear combination calculation portion 1 1 1 of calculation of the linear combination in step S 4 2, the value of the variable n which is a condition for extracting rows as will be described later, to set to an initial value such as "1", for example.
  • the linear combination calculation unit 111 supplies the received word, the calculation result of the linear combination, and the variable n to the parity check matrix creation unit 112, and proceeds to step S43.
  • the parity check matrix creation unit 112 calculates the number weight of the element having the value "1" for each of the obtained linear combination results, and calculates the value from all the linear combination results. The ones in which the number of elements of “1” weight is equal to or less than the variable n are extracted, and a new low-density parity check matrix having these as rows is created.
  • the parity check matrix creation unit 112 from the set of vectors obtained by the linear combination calculated in the linear combination calculation unit 111, forms a code weighting space subset with lower weights from the set of vectors obtained by the linear combination. Is extracted, and a new parity check matrix is created with all vectors of the vector subset as row components.
  • the parity check matrix creation unit 112 that created the new parity check matrix proceeds to step S44, adds “1” to the value of the variable ri, and receives the received word and the created parity check.
  • the matrix and the variable n are supplied to the judgment processing unit 113.
  • step S45 the determination processing unit 113 supplied with the received word, the created parity check matrix, and the variable n, performs an elementary parity check based on the information about the original parity check matrix included in the received word. Then, it is determined whether or not the rank (rank) of the parity check matrix of matches the rank (rank) of the low-density parity check matrix.
  • the determination processing unit 113 when it is determined that the rank of the low-density parity check matrix is low and does not match the original parity check matrix, the determination processing unit 113 returns the process to step S43 and repeats the subsequent processes. . That is, the determination processing unit 113 supplies the determination result to the parity check matrix creation unit 112, and causes the parity check matrix creation unit 112 to create a low-density parity check matrix again. At this time, the value of the variable n, which is a condition to be extracted from the result of the linear combination, is different from that in the previous processing. 1 2 can create a low-density parity-check matrix having a different row from the previous row (different elements from the previous row).
  • step S45 If it is determined in step S45 that the rank (rank) of the original parity check matrix matches the rank (rank) of the low-density parity check matrix, the determination processing unit 113 determines in step S46 that The processing proceeds, and the received word and the generated low-density parity check matrix are output to LDPC decoding section 121, and the processing is returned to step S22 in FIG.
  • the decoding apparatus 100 can reduce the density of the parity check matrix before performing the decoding process using the sum product algorithm. Since the density is reduced by linear combination, high-performance decoding processing can be easily performed.
  • a finite field is defined as a finite field GF (2 4 ) (fourth extension field of GF (2)) based on a power of a prime number, and as a linear code C, code length 15 and information length 7 (1 5, 7)
  • GF finite field
  • code length 15 and information length 7 (1 5, 7)
  • the parity check matrix H of the linear code C is given, for example, as shown in FIG.
  • the parity check matrix H shown in FIG. 15 is a matrix of 8 rows and 15 columns, and a Tanner graph corresponding to the parity check matrix H is represented as shown in FIG.
  • the density of the edge connecting the variable node and the check node is high, indicating that the parity check matrix H in FIG. 15 is not a low-density matrix.
  • the Tanner graph corresponding to the matrix H sp4 shown in FIG. 17 is as shown in FIG. Since the number of rows and the number of columns of the matrix H sp 4 shown in FIG. 17 are both 15, the number of barrier pull nodes and check nodes in the Tanner graph shown in FIG. Therefore, compared to the case of Fig. 16, the density of the edge connecting the variable node and the check node is lower.
  • the low-density processing unit 110 uses the matrix H sp4 as a parity check matrix and supplies the parity check matrix to the LDPC decoding unit 121 .
  • the LDPC decoding unit 1221 using the low-density parity check matrix Hsp4 shown in FIG. 17, performs decoding on the received word by applying the sum product algorithm.
  • FIG. 19 shows a case where the BCH code having such a parity check matrix is subjected to maximum likelihood decoding by Viterbi decoding and a low-density parity check matrix H sp4 as shown in FIG. 7 is a graph showing a comparison of decoding performance when decoding is performed by the G algorithm.
  • the curve 13 1 shows the bit error rate (BER) of the result of decoding by the sum product algorithm (SPA) ((2) bch 157 (wgt4) SPA BER), and the curve 13 2 Indicates the bit error rate (BER) of the decoding result by Viterbi decoding ((1) bch157 ML BER).
  • the data plotted at point 1333 indicates the frame error rate (FER) of the result of decoding by the sum product algorithm ((2) bch157 (wgt4) SPA FER).
  • the plotted data indicates the frame error rate (FER) of the decoding result by Viterbi decoding ((1) bch157 ML FER).
  • the maximum likelihood decoding (curve 13 in FIG. 19) is the performance limit when using a stochastic decoding such as the sum product algorithm. As shown in FIG. 31 shows a performance approaching its performance limit.
  • the decoding apparatus 100 reduces the density of the parity check matrix by linear combination before performing the decoding process using the sum product algorithm on the BCH code. Can be performed.
  • the decoding process for the BCH code has been described above, the present invention is not limited to this, and any general linear code such as a Reed-Solomon code may be used.
  • a case will be described in which decoding is performed by applying the sum product algorithm to the Reed-Solomon code.
  • FIG. 20 is a block diagram illustrating another configuration example of the decoding device to which the present invention has been applied.
  • a decoding device 150 is a decoding device corresponding to, for example, a Reed-Solomon code, and a decompression processing unit 161 that decompresses a parity check matrix of a received word. It comprises a low-density processing section 170 for converting to a low-density matrix, and an LDPC decoding section 181 for decoding received words using the low-density parity check matrix.
  • the expansion processing unit 161 as preprocessing of the parity check matrix low-density processing, converts each element of the parity check matrix included in the acquired received word to a predetermined value according to the dimension of the finite field of the matrix. Expand to order. That is, the expansion processing unit 161 expands a parity check matrix on a finite field based on a power of a prime number on a subfield of the finite field in a predetermined dimension. The expansion processing unit 161 supplies the expanded parity check matrix and the received word to the low-density processing unit 170.
  • the low-density processing unit 170 includes a linear combination calculation unit 171 that calculates a linear combination of the rows of the parity check matrix, and a parity check that generates a sufficiently sparse parity check matrix using the linearly combined rows. It is composed of a matrix creation section 172 and a determination processing section 173 for determining whether or not the rank of the created parity check matrix is the same as the rank of the original parity check matrix.
  • the configurations and operations of these units are the same as those of the low-density processing unit 110 of the decoding device 100 shown in FIG. 12, respectively, and thus description thereof will be omitted.
  • the linear combination calculation unit 171 to the determination processing unit 173 constituting the low-density processing unit 170 are composed of the linear combination calculation unit 111 to the determination processing unit 113 shown in FIG. Respectively.
  • the low-density processing unit 170 performs the low-density processing on the expanded parity check matrix supplied from the expansion processing unit 161.
  • the low-density processing section 170 reduces the density of the parity check matrix of the Reed-Solomon code expanded by the expansion processing section 161 and converts the reduced-density parity check matrix together with the received word into an LDPC code. This is supplied to the decoding section 18 1.
  • LDPC decoding section 181 decodes the received word using the obtained low-density parity check matrix by the sum product algorithm, and outputs the decoded received word to outside of decoding apparatus 150.
  • the expansion processing unit 161 expands the parity check matrix, so that the LDPC decoding unit 18
  • the calculation cost of the decoding process by the sum product algorithm using the reduced density parity check matrix H sp24 is calculated by using the parity check matrix H included in the received word as shown in the following equation (8). It is reduced to about one-fourth compared to the case where the decryption process is performed by the sum product algorithm.
  • the decoding device 150 can easily perform high-performance decoding processing.
  • step S61 the expansion processing section 161 of the decoding device 150 expands the parity check matrix included in the obtained received word according to the dimension of the finite field. Then, the expansion processing unit 161 supplies the expanded parity detection matrix and the received word to the density reduction processing unit 170, and the process proceeds to step S62.
  • step S62 the low-density processing unit 170 executes a parity-check-matrix low-density process to reduce the density of the expanded parity-check matrix.
  • the details of the parity check matrix low-density processing are the same as those described with reference to the flowchart in FIG. 14, and thus detailed description thereof will be omitted.
  • the density reduction processing unit 170 expands as described above. Processing is performed so that the density of the parity check matrix expanded by the open processing unit 161 is reduced.
  • step S63 the LDPC decoding section 181, using the parity check matrix whose density has been reduced by the processing in step S62, performs decoding processing using the sum product algorithm (SPA).
  • SPA sum product algorithm
  • the decoding device 150 expands each element of the parity check matrix before performing the low-density processing, so that it is possible to easily perform the high-performance decoding process. Can be.
  • the parity check matrix H shown in FIG. 22 is a 4 ⁇ 15 matrix.
  • the expansion processing section 161 of the decoding device 150 expands the parity check matrix H shown in FIG. 22 and converts it into a 16-row, 60-column parity check matrix H exp as shown in FIG.
  • the expansion processing unit 16 1 generates the parity check matrix H exp shown in FIG. 23 by expanding each element of the parity check matrix H shown in FIG. 22 into a 4 ⁇ 4 element group. .
  • the low-density processing unit 170 of the decoding device 150 performs low-density processing on the expanded parity check matrix HexD , and the LDPC decoding unit 18 1 Using tee check matrix H exp, the decoding process by Samupurodaku preparative algorithm line O o
  • FIG. 24 shows a case where a Reed-Solomon code having such a parity check matrix is normally decoded and a parity check matrix H sp24 obtained by reducing the density of the expanded parity check matrix H exp of FIG. 7 is a graph showing a comparison of decoding performance when decoding is performed using the sum product algorithm.
  • a curve 1991 represents a bit error rate (BER) of a decoding result obtained when decoding is performed by the sum product algorithm (SPA) using the reduced-density parity check matrix H sp24.
  • the curve ((4) RS wgt24 SPA BER) and the curve 192 show the bit error rate (BER) of the decoding result by the normal decoding ((3) RS ORD BER).
  • data is plotted by point 1 9 3, shows a less dense cathodic frame error rate of the decoding result when performing decrypt by Samupurodaku preparative algorithm using the parity check matrix H sp24 (FER) Yes ((4) RS wgt24 SPA FER), the data plotted at point 194 indicates the frame error rate (FER) of the decoding result of normal decoding ((3) RS 0 RD FER).
  • a curve 19 1 which is a decoding result of decoding using the present invention is a curve 19 2 (point 19 4) which is a decoding result in the case of normal decoding. ), Better performance is obtained.
  • the decoding apparatus 150 reduces the density of the parity check matrix by linear combination before performing decoding processing using the sum product algorithm on the Reed-Solomon code. High-performance decoding can be performed. Further, since decoding apparatus 150 expands each element and matrix of the parity check matrix before lowering the density of the parity check matrix, the operation cost can be reduced.
  • FIG. 25 is a block diagram illustrating a configuration example of an error correction system using a Reed-Solomon code to which the present invention has been applied.
  • the error correction system shown in Figure 25 For example, it is a system used for digital communication systems such as digital television.
  • digital information transmitted from the encoding device 210 on the transmitting side is transmitted to the decoding device on the receiving side via a communication path 221 typified by the Internet, for example. Supplied to 230.
  • the encoding device 210 includes a Reed-Solomon encoding unit 211 that encodes digital information for transmission supplied from the outside using a Reed-Solomon code, and an interleaver that rearranges the encoded digital information. 2 12, a convolutional encoding unit 2 13 for performing convolutional encoding, and a communication processing unit 2 14 for communicating with the decoding device 2 30 via the communication path 2 21. ⁇
  • the Reed-Solomon encoding unit 211 performs an encoding process using a Reed-Solomon code on digital information supplied from the outside of the encoding device 210, and converts the encoded digital information into an interleaver 2.
  • Interleaver 2 1 2 performs the encoded digital information has been, in order to diffuse the main burst manner errors occurring in the communication path 2 2 1, sort information (interleaving). Since the Reed-Solomon code performs error correction using a plurality of bits as one symbol, the interleaver 212 performs symbol interleaving to spread burst errors in symbol units.
  • Interleaver 2 1 2 ended sorting information, it supplies the digital information that has been changed its sequence to the coding unit 2 1 3 convolution.
  • the convolutional coding unit 213 performs a convolutional code in which a code sequence is sequentially determined based on a plurality of information blocks by referring to previously coded information on the rearranged digital information. For example, when digital information is supplied from the interleaver 2 12 for each k-bit information block, the convolutional encoder 2 13 having the constraint length K receives not only the information block supplied this time but also the past supplied information block. It encodes into an n-bit code block based on the K information blocks including the information blocks. When the convolutional coding is completed, the convolutional coding unit 213 supplies the convolutionally coded digital information to the communication processing unit 214.
  • the communication processing unit 214 performs communication control processing, and performs communication control based on a predetermined protocol.
  • the supplied digital information is transmitted as a transmission word to the decoding device 230 via the communication channel 221.
  • the digital information output from the encoding device 210 is supplied to the decoding device 230 via the communication path 221.
  • the decoding device 230 convolves the communication processing unit 231, which receives the digital information supplied via the communication path 221, as a received word, with the received word acquired by the communication processing unit 231,
  • the convolution decoding unit 232 that performs the decoding process
  • the ding ally parser 233 that rearranges the convolutionally decoded received words into the original order
  • the decoding process using the sum product algorithm is performed on the digital information that has been restored to the original order.
  • the Reed-Solomon SPA decoder 234 restores the digital information before the Reed-Solomon encoding.
  • the communication processing unit 2 3 1 communicates with the communication processing unit 2 14 of the encoding device 2 10 via the communication path 2 21, and is supplied from the communication processing unit 2 14 based on a predetermined protocol.
  • the obtained digital information is obtained as a received word.
  • the communication processing section 231 supplies the acquired received word to the convolution decoding section 232.
  • the convolution decoding unit 232 decodes the received word supplied from the transmission processing unit 231 by a method corresponding to the encoding method by the convolution encoding unit 213 of the encoding device 210. That is, the convolutional decoding unit 232, for a received word, for example, BCJR (Bahl, Cocke, Jel inek, and Raviv) algorithm, soft decision decoding using SOVA (soft output Viterbi algori thm), etc.
  • the convolution decoding unit 2 32 supplies the soft decision decoded received word to the deinterleaver 2 3 3 You.
  • the Dinter parser 233 rearranges the supplied received words by a method corresponding to the interleaving performed in the interleaver 212 of the encoder 210, and performs the rearrangement. Performs processing (deinterleaving) to restore the received information to the original order, and converts the received words rearranged to the original order into Reed-Solomon SPA decoding units Supply to 2 3 4
  • the Reed-Solomon SPA decoding unit 2 34 has basically the same configuration as the decoding device 150 shown in FIG. 20, performs basically the same operation, and is similar to the case of the decoding device 150. Since the block diagram of FIG. 20 and the flowchart shown in FIG. 21 can be applied to this, detailed description thereof will be omitted.
  • the Reed-Solomon SPA decoding unit 234 expands the parity check matrix and reduces the density of the Reed-Solomon encoded received word, and uses the parity check matrix to perform decoding by the sum product algorithm. And restores the original digital information before encoding. Reed-Solomon SPA decoding section 234 outputs the decoded digital information to the outside of decoding apparatus 230.
  • the error correction system of FIG. 25 can easily perform high-performance decoding processing, and can perform more accurate communication. Also, since the decoding device 230 expands each element and row of the parity check matrix before lowering the density of the parity check matrix, the operation cost of the decoding process can be reduced.
  • the error correction system has been described to decode the Reed-Solomon code, not limited thereto, for example, it may also be configured to decode the BCH code les, 0
  • FIG. 26 is a block diagram showing another configuration example of an error correction system using a Reed-Solomon code to which the present invention is applied.
  • the error correction system shown in FIG. 26 is a system used for a digital communication system such as a digital television, for example.
  • the same portions as those shown in FIG. 25 are denoted by the same reference numerals, and description thereof will be omitted.
  • digital information encoded by the encoding device 210 on the transmitting side is decoded by the decoding device on the receiving side via a communication path 221 typified by the Internet, for example. It is supplied to the device 240.
  • the decoding device 240 receives the digital information supplied via the communication path 221 as a received word, the communication processing unit 241 receiving the digital information, and the received word acquired by the communication processing unit 241.
  • Convolutional decoding unit 242 that performs convolutional decoding processing
  • deinterleaver 243 that rearranges convolutionally decoded received words into the original order
  • decoding processing using the sum product algorithm on digital information that has been restored to the original order was carried out
  • Reed-Solomon SPA decoding unit 2 4 4 to recover the digital information prior to Reed-Solomon marks Goka, as well, as with the interleaver 2 1 2 of the encoding device 2 1 0, the parallel beauty replacement of digital information
  • the interleaver to perform consists of 2 4 5.
  • the communication processing unit 2 41 1 communicates with the communication processing unit 2 14 of the encoding device 2 10 via the communication path 2 21 in the same manner as the communication processing unit 2 3 1 of FIG.
  • the digital information supplied from the communication processing unit 214 is acquired as a received word based on a predetermined protocol.
  • the communication processing unit 241 supplies the acquired received word to the convolution decoding unit 242.
  • the convolutional decoder 2 42 transmits the data by a method corresponding to the encoding method by the convolutional encoder 2 13 of the encoder 210.
  • the received word supplied from the processing unit 24 1 is decoded. That is, the convolution decoding unit 242 performs soft decision decoding on the received word using, for example, the BCJR algorithm or S0VA. Then, convolutional decoding section 242 supplies the soft-decision decoded received word to deinterleaver 243. Also, the received word decoded by the sum product algorithm is rearranged again from the interleaver 245 and supplied to the convolution decoding unit 242.
  • the convolutional decoding unit 242 performs soft-decision decoding on this received word, for example, using the BCJR algorithm, S0VA, or the like, as in the case of the received word supplied from the communication processing unit 241. , Supply to Dintaliba 2 4 3.
  • the received words supplied from the convolutional decoding unit 242 include, in addition to the received words supplied from the communication processing unit 241 via the convolutional decoding unit 242, an interleaver 224
  • the received word supplied from 5 through the convolution decoding unit 242 is also included.
  • the Reed-Solomon SPA decoding unit 244 has basically the same configuration as the decoding device 150 shown in FIG. 20 similarly to the case of the Reed-Solomon SPA decoding unit 244 in FIG. The same operation is performed in a similar manner, and the block diagram of FIG. 20 and the flowchart shown in FIG. 21 can be applied as in the case of the decoding device 150.
  • the Reed-Solomon SPA decoding unit 244 expands the parity check matrix included in the received word obtained from the deinterleaver 243 and reduces the density, and uses the parity check matrix Performs decoding by the sum product algorithm to restore the original digital information before encoding.
  • Reed-Solomon SPA decoding section 244 outputs the decoded digital information to the outside of decoding apparatus 240. Also, the Reed-Solomon SPA decoder 244 supplies the decoded digital information to the interleaver 245.
  • the interleaver 245 rearranges the obtained digital information in a predetermined order, similarly to the interleaver 221 of the encoder 210.
  • the pattern of rearrangement by the interleaver 245 is the same as that of the interleaver 221.
  • the digital information rearranged in this way is supplied to the convolution decoding unit 242.
  • the decoding device 240 performs the soft-decision decoding by the convolutional decoding unit 242 on the received word acquired by the communication processing unit 241 while passing through the dintalever 243 and the interleaver 245. And the decoding by the Reed-Solomon SPA decoding unit 244 using the summer product algorithm are repeated to reduce the decoding error probability in the decoding process.
  • the number of repetitions of the decoding may be determined in advance, or it may be determined whether or not the repetition is to be stopped based on a predetermined condition such as the number of error correction locations. You may.
  • the decoding device 240 easily performs high-performance decoding processing.
  • the error correction system of FIG. 26 can perform more accurate communication.
  • the decoding device 240 expands each element and matrix of the parity check matrix before lowering the density of the parity check matrix, the operation cost of the decoding process can be kept low.
  • Reed-Solomon SPA decoding unit 2 4 4 has been described so as to supply to the interleaver 2 4 5 outputs a daisy barrel information decoded outside of the decoding apparatus 2 4 0, not limited thereto, For example, while decoding is repeated, the decoded digital information is supplied only to the interleaver 245, and when the decoding is repeated, the output destination of the digital information is restored from the interleaver 245. It is also possible to switch to the outside of the decoding device 240 and output the decoded digital information.
  • the error correction system is described as decoding a Reed-Solomon code.
  • the present invention is not limited to this.
  • a BCH code may be decoded.
  • FIG. 27 is a block diagram illustrating a configuration example of a recording / reproducing apparatus to which an error correction system that performs error correction using a Reed-Solomon code to which the present invention is applied is applied.
  • the recording / reproducing apparatus shown in FIG. 27 is, for example, a digital recording medium recording / reproducing apparatus such as a DVD record player.
  • the recording / reproducing device 250 in FIG. 27 encodes digital information supplied from the outside in the encoding processing unit 260 and records it on the recording medium 272 in the recording / reproducing processing unit 270. Further, the recording / reproducing device 250 reproduces the digital information recorded on the recording medium 272 in a recording / reproducing processing unit 270 and performs a decoding process in a decoding processing unit 280 to obtain the original information. Acquires digital information and outputs the information to the outside.
  • the encoding processing unit 260 performs first Reed-Solomon encoding from the first Reed-Solomon encoding unit 261-1 to the n-th reed-Solomon encoding unit 261-n which performs Reed-Solomon encoding on digital information with respect to mutually different dimensions. Become. The digital information supplied from the outside of the encoding processing unit 260 is subjected to a lead-Solomon encoding for the first dimension in a first Reed-Solomon encoding unit 261-1.
  • the digital information is read from the second Reed-Solomon encoder 261-2 to the n-th Reed-Solomon encoder 2621_n with respect to each dimension from the second dimension to the n-th dimension.
  • Solomon codes are performed in order.
  • the encoding processing section 260 supplies the encoded digital information to the recording / reproducing processing section 270.
  • the recording / reproducing processing unit 270 is a recording unit 271 for recording the information supplied from the encoding processing unit 260 on the recording medium 272, for example, a recording medium 272 such as an optical disk, a recording medium 2
  • the playback unit 2 7 3 plays back the information recorded in the storage unit 72.
  • the recording section 27 1 of the recording / reproducing processing section 270 performs the NRZI (Non Return to Zero Invert) conversion (NRZI encoding) of the digital information supplied from the encoding processing section 260 to a recording medium. Record in 2 7 2. Further, the reproducing unit 2733 of the recording / reproducing processing unit 270 reproduces digital information (Digital information encoded by Reed-Solomon) recorded on the recording medium 272 and applies the digital information to the digital information. The NRZI conversion is restored (decoded), and the digital information is supplied to the decoding processing unit 280.
  • NRZI Non Return to Zero Invert
  • the decoding processing unit 280 is a decoder corresponding to the encoding processing unit 260, and performs a first Reed-Solomon SPA decoding unit 280 that performs a decoding process using a sum product algorithm with respect to mutually different dimensions in digital information. 1-1 through n-th Reed-Solomon SPA decoding unit 2 8 1-n.
  • the first Reed-Solomon SPA decoders 281-1-1 through n-th Reed-Solomon SPA decoders 281-1-n are respectively the first Reed-Solomon encoders 261-11-1 of the encoding processor 260. corresponds to the n Reed-Solomon encoding unit 2 6 1 one n, with respect to the Reed-Solomon codes related to each dimension, the first to Reed-Solomon SPA decoding unit 2 8 1-1 c performs decoding by Samupurodaku preparative algorithm
  • Each of the n Reed-Solomon SPA decoding units 281-1-1 has basically the same configuration as the decoding device 150 shown in FIG. 20 and performs basically the same operation.
  • the units 281-1-1 through 11-th Reed-Solomon SPA decoding units 281-1-n are, as in the case of the decoding device 150, respectively, a block diagram of FIG. 20 and a block diagram of FIG. A row chart can be applied.
  • the decoding processing unit 280 converts the digital information supplied from the reproduction unit 273 in each of the first Reed-Solomon SPA decoding unit 281-1 to the n-th Lead Solomon SPA decoding unit 281-n. On the other hand, it expands each element and matrix of the parity check matrix, reduces the density of the parity check matrix, and performs decoding processing using the sum product algorithm for each dimension. At this time, as shown in FIG.
  • the decoding processing unit 280 first sets the n-th Reed-Solomon SPA decoding unit 2811- ⁇ The decoding is performed using the sum product algorithm for the dimension, and then, in each Reed-Solomon SPA decoding unit connected in series, the number of dimensions is reduced in the order of n-first dimension and n-second dimension, respectively. The decoding process is performed by the sump mouth algorithm. Finally, the first Reed-Solomon SPA decoding unit 2811 executes the decoding process of the first dimension by the sum product algorithm. The decoding processing unit 280 outputs the original digital information restored in this way to the outside of the recording / reproducing device 250.
  • the decoding processing unit 280 can easily perform high-performance decoding processing, and the recording / reproducing device 250 can more accurately record and reproduce digital information. it can. Also, since the decoding processing unit 280 expands each element and matrix of the parity check matrix before reducing the density of the parity check matrix, it is possible to reduce the operation cost of the decoding processing.
  • the recording / reproducing device 250 is described as decoding Reed-Solomon codes.
  • the present invention is not limited to this.
  • BCH codes may be decoded.
  • the recording / reproducing apparatus 250 has a recording function for recording digital information on a recording medium, and a recording function for recording and reproducing digital information on a recording medium.
  • Player for playing back digital information The Noh and the Noh may be configured separately.
  • FIG. 28 is a block diagram showing a configuration example of a recording device having the same recording function as the recording / reproducing device 250 of FIG. 27.
  • the same parts as those shown in FIG. 27 are denoted by the same reference numerals, and description thereof will be omitted.
  • the recording device 300 in FIG. 28 includes an encoding processing unit 260 composed of the first Reed-Solomon encoding units 261-1 through n-th Reed-Solomon encoding devices 261-n, and a recording unit. It has a recording processing unit 310 consisting of a unit 2 71 and a recording medium 2 72. Digital information supplied from the outside of the encoding processing unit 260 of the recording device 300 is first subjected to Reed-Solomon encoding relating to the first dimension in the first Reed-Solomon encoding unit 261-1-1. .
  • the digital information encoded for the first dimension is sequentially supplied to each unit of the second Reed-Solomon encoder 261-212 to the n-th lead Solomon encoder 261-la, In each unit, a lead-solomon code is performed for each of the second to eleventh dimensions.
  • the encoding processor 260 supplies the encoded digital information to the recording processor 310.
  • the recording processing unit 310 includes a recording unit 271, which records the information supplied from the encoding processing unit 26 ⁇ on a recording medium 272, and a recording medium 272, such as an optical disk.
  • the recording unit 271 of the recording processing unit 310 records the digital information supplied from the encoding processing unit 260 on the recording medium 272 by performing NRZI conversion (NRZI encoding) or the like.
  • the recording apparatus 300 performs Reed-Solomon encoding of digital information in the encoding processing section 260 like the recording / reproducing apparatus 250 in FIG. Under the control of 1, the Reed-Solomon encoded digital information is recorded on the recording medium 272.
  • FIG. 29 shows a reproducing apparatus corresponding to such a recording apparatus 300.
  • the same portions as those shown in FIG. 27 are denoted by the same reference numerals, and description thereof will be omitted.
  • the playback device 350 in FIG. 29 is a playback device corresponding to the recording device 300 shown in FIG. 28, and includes a first Reed-Solomon SPA decoding unit 281-1 to an n-th Reed-Solomon encoding device. It has a decoding processing unit 280 composed of 281 1 n and a reproduction processing unit 350 composed of a recording medium 272 and a reproducing unit 273.
  • the reproducing section 273 of the reproducing apparatus 350 reproduces digital information (Digital information encoded by Reed-Solomon) recorded on the recording medium 272, and performs NRZI conversion performed on the digital information. Is restored (decoded), and the digital information is supplied to the decryption processing unit 280.
  • Decoding processor 2 8 0, the first Reed-Solomon SPA decoding unit 2 8 1 - In 1 through ⁇ Li Dosoromon SPA decoding unit 2 8 1 one n of each part, the digital information supplied from the playback unit 2 7 3
  • the elements and matrices of the parity check matrix are expanded, the density of the parity check matrix is reduced, and decoding processing by the sum product algorithm for each dimension is performed.
  • the decoding processing unit 280 first performs the n-th decoding in the n-th Reed-Solomon SPA decoding unit 2811 n, as opposed to the encoding processing unit 260.
  • the decoding is performed using the sum product algorithm for the dimension, and then, in each Reed-Solomon SPA decoding unit connected in series, the number of dimensions is reduced in the order of n-first dimension and n-second dimension, respectively.
  • the decoding process is performed by the thumb product algorithm, and finally the decoding process is performed by the first Reed-Solomon SPA decoding unit 281-1 to use the sum product algorithm for the first dimension.
  • the decoding processing unit 280 outputs the original digital information restored in this way to the outside of the playback device 350.
  • the decoding processing unit 280 can easily perform high-performance decoding processing, and the reproducing apparatus 350 can reproduce digital information more accurately. Also, since the decoding processing unit 280 expands each element and matrix of the parity check matrix before lowering the density of the parity check matrix, the calculation cost of the decoding process can be suppressed.
  • the recording / reproducing device 300 has been described to decode the Reed-Solomon code.
  • the present invention is not limited to this.
  • the BCH code may be decoded. Good.
  • FIG. 30 is a block diagram illustrating a configuration example of a recording / reproducing apparatus to which an error correction system that performs error correction using a Reed-Solomon code to which the present invention is applied is applied.
  • the recording / reproducing device 400 shown in FIG. 30 is, for example, a digital recording medium recording / reproducing device such as a DVD record player.
  • the same parts as those in the case shown in FIG. 27 are denoted by the same reference numerals, and description thereof will be omitted.
  • the recording / reproducing apparatus 400 in FIG. 30 encodes digital information supplied from the outside in the encoding processing unit 260 and records it on the recording medium 272 in the recording / reproducing processing unit 270. Further, the recording / reproducing device 400 reproduces the digital information recorded on the recording medium 272 in the recording / reproducing processing unit 270, and performs the decoding process in the vehicle number processing unit 410. Acquires the original digital information and outputs the information to the outside.
  • the decoding processing unit 410 is a decoder corresponding to the encoding processing unit 260 and has the same configuration as the decoding processing unit 280 shown in FIG. 27, and performs the same decoding processing.
  • the first decoding section 4 2 0-1 includes the first Reed-Solomon encoding sections 2 6 1-1 to n -th Reed-Solomon of the encoding processing section 260, similarly to the decoding processing section 2 80 of FIG.
  • the first Reed-Solomon SPA decoding unit 4 which is n serially connected decoding units, corresponding to the encoding unit 2 6 1—n and performing decoding by means of the sum product algorithm on the Reed-Solomon code for each dimension. It is composed of 2 1 1 1 1 1 1 to n-th Reed-Solomon SPA decoding unit 4 2 1 1 1-n.
  • Each of the first Reed-Solomon SPA decoding units 4 2 1-1-1 to n -th Reed-Solomon SPA decoding units 4 2 1-1 _ ⁇ is basically the same as the decoding device 150 shown in FIG. And basically perform the same operation. Accordingly, these first Reed-Solomon SPA decoding units 4 2 1-1-1 to n-th Reed-Solomon SPA decoding units 4 2 1-1-1 n are, as in the case of the decoding device 150, respectively. 20 block diagram and the float shown in Figure 21 Yarts can be applied.
  • the second decoding unit 4 2 0-2 to the m-th decoding unit 4 2 0-m also have the same configuration as the first decoding unit 4 2 0-1, respectively, and are the same as the first decoding unit 4 2 0-1.
  • the operation is performed.
  • the second decoding section 420--2 includes n first decoding sections, ie, the first Reed-Solomon SPA decoding sections 4 2 1-2-1 to n-th Reed-Solomon SPA decoding sections 4 2
  • the first Reed-Solomon SPA decoding units 4 2 1-m-1 to the n-th Reed-Solomon, each of which is composed of 1 1 2—n, and the m-th decoding unit 420-m is also n decoding units connected in series.
  • the decoding processing unit 410 applies the first Reed-Solomon SPA decoding unit 4 2 1—1-1—1 of the first decoding unit 420-1.
  • the n-th Reed-Solomon SPA decoding unit 4 2 1-1 -n expand each element and matrix of the parity check matrix, reduce the density of its parity check matrix, and generate a sum product for each dimension. Performs decryption processing using the G algorithm.
  • the first decoding unit 420-1 first performs the processing related to the n-th dimension in the n-th Reed-Solomon SPA decoding unit 421-1-1n, contrary to the case of the encoding processing unit 260.
  • the decoding process is performed using the product algorithm, and then, in each of the serially connected Reed-Solomon SPA decoding units, the sum product algorithm is used to reduce the number of dimensions in the order of n-1st dimension and n-2nd dimension, respectively.
  • the decoding process is performed.
  • the first Reed-Solomon SPA decoding unit 421-1-1 performs the decoding process using the sum product algorithm for the first dimension.
  • the first decoding unit 420-1 supplies the decoded digital information to the second decoding unit 420-2.
  • the second decoding unit 4 2 0—2 is the first decoding unit 4
  • the first Reed-Solomon SPA decoders 4 2 1—2—1 through the eleventh Reed-Solomon SPA decoders 4 2 1-2-n reduce the number of dimensions by one.
  • the decoding process is performed according to the sum product algorithm in the following order, and the decoded digital information is supplied to the next decoding unit. In this way, decoding processing is continued up to the m-th decoding section 420-m.
  • the decoding processing unit 410 reads the decoded digital information from the recording / reproducing device 4
  • the decoding processing section 410 can easily perform high-performance decoding processing, and the recording / reproducing apparatus 400 can record and reproduce digital information more accurately. it can. Further, since the decoding processing unit 410 expands each element and matrix of the parity check matrix before lowering the density of the parity check matrix, the operation cost of the decoding process can be reduced.
  • the recording / reproducing device 400 has been described as decoding Reed-Solomon codes. However, the present invention is not limited to this.
  • the recording / reproducing device 400 may decode BCH codes.
  • the recording / reproducing apparatus 400 has a recording function of recording digital information on a recording medium, and a recording medium.
  • the reproduction function for reproducing the digital information recorded in the digital camera may be configured separately.
  • a recording device having the same recording function as the recording / reproducing device 400 in FIG. 30 has the same configuration as the recording device 300 shown in FIG. 28, and performs the same operation.
  • the block diagram of FIG. 28 can be applied, and the description is omitted.
  • FIG. 31 shows a reproducing apparatus corresponding to the recording apparatus 300 having a recording function similar to that of the recording / reproducing apparatus 400 of FIG. Note that the same parts as those shown in FIG. 30 are denoted by the same reference numerals, and description thereof will be omitted.
  • the playback device 450 of FIG. 31 is a playback device corresponding to the recording device 300 shown in FIG. 28, and includes the first to m-th decoding units 420 1 to 420 m.
  • the reproducing unit 273 of the reproducing apparatus 450 reproduces the digital information (Digital information encoded by Reed-Solomon) recorded on the recording medium 272 and performs NRZI conversion applied to the digital information.
  • the digital information is restored (decoded) and the digital information is supplied to the decryption processing unit 410.
  • the decoding processing unit 410 first expands each element and matrix of the parity check matrix in the first decoding unit 420-1 with respect to the digital information supplied from the reproduction unit 273, The density of the parity check matrix is reduced, and decoding by the sum product algorithm is performed for each dimension. Subsequently, the decoding processing unit 410 sequentially supplies the digital information to the second decoding units 420--2 to 420-m connected in series, and the decoding processing by the sum product algorithm is performed in each unit. I do. When the decoding process in the m-th decoding unit 420-m is completed, the decoding processing unit 410 outputs the decoded digital information to the outside of the recording / reproducing device 400.
  • the decoding processing section 410 can easily perform high-performance decoding processing, and the reproducing apparatus 450 can reproduce digital information more accurately. Further, since the decoding processing unit 410 expands each element and matrix of the parity check matrix before lowering the density of the parity check matrix, it is possible to suppress the operation cost of the decoding process.
  • the present invention is not limited to this, and the present invention is applicable to decoding of any general linear code.
  • the present invention may be applied first.
  • the reproduction apparatus 4 5 0 has been by Uni described for decoding the Reed-Solomon code, not limited thereto, for example, so as to decode the BCH code may c further also in the above, for example , the decoding device 1 0 0 shown in FIG. 1 2, the decoding apparatus 1 5 0 shown in FIG. 2 0, Reed-Solomon SPA decoding unit 2 3 4 shown in FIG. 2 5, the Reed-Solomon SPA decoding shown in FIG 6 Part 2 4 4, No.
  • a decoding device or decoding unit to which the present invention, such as m applies a parity check matrix as a decoding method for a general linear code, and decodes the linear code using the reduced density parity check matrix.
  • the parity check matrix may be reduced in density in another device or another processing unit in advance.
  • the decoding device decodes the linear code supplied from the coding device or the like using the pre-densed parity check matrix. That is, for example, the decoding device 230 shown in FIG. 25, the decoding device 240 shown in FIG. 26, the recording / reproducing device 250 shown in FIG. 27, and the reproducing device shown in FIG.
  • the detection matrix is reduced in advance outside the recording / reproducing apparatus 350 shown in FIG. 30, the recording / reproducing apparatus 400 shown in FIG. 30 or the reproducing apparatus 450 shown in FIG. 31.
  • the supplied linear code may be decoded using the parity check matrix whose density has been reduced in advance.
  • the series of processes described above can be executed by hardware or can be executed by software.
  • the above-described image processing apparatus is configured by a personal computer as shown in FIG.
  • the CPU (Central Processing Unit) 501 of the personal computer 500 is a program stored in a ROM (Read Only Memory) 502 or a storage unit 513 RAM. (Random Access Memory) Various processing is executed according to the program loaded in 503.
  • the RAM 503 also appropriately stores data necessary for the CPU 501 to execute various processes.
  • the CPU 501, ROM 502, and RAM 503 are interconnected via path 504.
  • the bus 504 is also connected to an input / output interface 510.
  • the input / output interface 5110 is composed of an input unit 511 consisting of a keyboard, a mouse, etc., consisting of a CRT (Cathode Ray Tube) ⁇ LCD (Liquid Crystal display), etc.
  • An output unit 512 including a display and a speaker, a storage unit 513 including a hard disk, and a communication unit 514 including a modem are connected.
  • the communication unit 514 performs a communication process via a network including the Internet. '
  • a drive 515 is connected to the input / output interface 510 as necessary, and a removable medium 921 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted.
  • the read-out computer program is installed in the storage unit 5 13 as needed.
  • a program constituting the software is installed from a network or a recording medium.
  • this recording medium is a magnetic disk (including a floppy disk) on which the program is recorded and an optical disk that are distributed separately from the main unit to provide the program to the user.
  • a magnetic disk including a floppy disk
  • optical disk that are distributed separately from the main unit to provide the program to the user.
  • CD-ROM Compact Disk-Read Only Memory
  • DVD Digital Versatile Disk
  • magneto-optical disk including MD (Mini-Disk)
  • removable media composed of semiconductor memory etc. 5 2 1 but also it formed by, be provided to users as incorporated in the apparatus main body, program or ROM 5 0 2 where is recorded, a hard disk included in the storage unit 5 1 3.
  • steps for describing a program to be recorded on a recording medium are not limited to processing performed in chronological order according to the described order, but are not necessarily performed in chronological order. Alternatively, it also includes processing that is executed individually.
  • a system refers to an entire device including a plurality of devices.
  • decoding processing of a general linear code can be performed.
  • high-performance decoding can be easily performed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本発明は、環R上線形符号により符号化した符号化データを復号する場合に用いて好適な、復号方法および復号装置、プログラム、記録再生装置および方法、並びに、再生装置および方法に関する。低密度化処理部は、ステップS21において、パリティ検査行列低密度化処理を実行し、取得した受信語に含まれるパリティ検査行列の行について線形結合を行い、線形結合結果よりパリティ検査行列を生成することにより、復号に用いられるパリティ検査行列の密度を疎にする。そして、ステップS22において、LDPC復号部は、ステップS21の処理により低密度化されたパリティ検査行列を利用し、サムプロダクトアルゴリズム(SPA)を用いた復号処理を行う。ステップS22の処理が終了すると、LDPC復号部は、その受信語に対する復号処理を終了する。本発明は、誤り訂正システムに適用できる。

Description

明細書
復号方法および復号装置、 プログラム、 記録再生装置および方法、 並びに、 再生 装置および方法
技術分野
本発明は、 復号方法および復号装置、 プログラム、 記録再生装置および方法、 並びに、 再生装置および方法に関し、 特に、 環 R上線形符号により符号化した符 号化データを復号する場合に用いて好適な、 復号方法およぴ復号装置、 プログラ
^ム、 記録再生装置および方法、 並びに、 再生装置および方法に関する。
- 背景技術 ' 近年、 例えば、 移動体通信や深宇宙通信といった通信分野、 及ぴ地上波又は衛 星ディジタル放送といった放送分野の研究が著しく進められているが、 それに伴 レ、、 誤り訂正符号化及び復号の効率化を目的として符号理論に関する研究も盛ん に行われている。
符号性能の理論的限界としては、 いわゆるシャノン(C. E. Shannon)の通信路 符号化定理によって与えられるシャノン限界が知られている。 符号理論に関する 研究は、 このシャノン限界に近い性能を示す符号を開発することを目的として行 われている。 近年では、 シャノン限界に近い性能を示す符号化方法として、 例え ば、 並列連接畳み込み符号(PCCC (Parallel Concatenated Convolutional Cod es) )や、 縦列連接畳み込み符号(SCCC (Serial ly Concatenated Convolutional Codes) )といった、 いわゆるターボ符号化(Turbo coding)と呼ばれる手法が開 発されている。 また、 これらのターボ符号が開発される一方で、 古くから知られ る符号化方法である低密度パリティ検査符号(Low Densi ty Parity Check code s) (以下、 LDPC符号という) が脚光を浴びつつある。
LDPC符号は、, R. G. Gal lagerによる 「R. G. Gal lager, "Low Density Par i ty Check Codes", Cambridge, Massachusetts: M. I. T. Press, 1963J に おいて最初に提案されたものであり、 その後、 「D. J. C. MacKay, "Good err or correcting codes based on very sparse matrices Submitted to IEE E Trans. Inf. Theory, IT - 45, pp. 399 - 431, 1999」 や、 「M. G. Luby, M. Mitzenmacher, M. A. Shokrol lahi and D. A. Spielraan, "Analysi s of low density codes and improved designs using irregular graphs", in Proc eedings of ACM Symposium on Theory of Computing, pp. 249-258, 1998」 等において再注目されるに至ったものである。
LDPC 符号は、 近年の研究により、 ターボ符号等と同様に、 符号長を長くして いくにしたがって、 シャノン限界に近い性能が得られることがわかりつつある。 また、 LDPC 符号は、 最小距離が符号長に比例するという性質があることから、 その特徴として、 ブロック誤り確率特性がよく、 さらに、 ターボ符号等の復号特 性において観測される、 いわゆるエラーフロア現象が殆ど生じないことも利点と して挙げられる。
以下、 このような LDPC符号について具体的に説明する。 なお、 LDPC符号は、 線形符号であり、 必ずしも 2元である必要はないが、 ここでは、 2元であるもの として説明する。
LDPC符号は、 その LDPC符号を定義する検查行列(parity check matrix)が疎 なものであることを最大の特徴とするものである。 ここで、 疎な行列とは、 行列 のコンポーネントの" 1 の個数が非常に少なく構成されるものであり、 疎な検査 行列を H で表すものとすると、 そのような検査行列としては、 例えば、 図 1に 示される HLDPCように、 各行のハミング重み 1〃の数) (weight)が" 2 "であり、 且つ、 各列のハミング重みが〃 4〃であるもの等がある。
このように、 各行及び各列のハミング重みが一定である検査行列 H によって 定義される LDPC符号は、 レギュラー LDPC符号と称される。 一方、 各行及び各列 のハミング重みが一定でない検査行列 Hによって定義される LDPC符号は、 ィレ ギユラ一 LDPC符号と称される。
このような LDPC符号による符号化は、 検査行列 Hに基づいて生成行列 Gを生 成し、 この生成行列 G を 2元の情報メッセージに対して乗算することによって 符号語を生成することで実現される。 具体的には、 LDPC 符号による符号化を行 う符号化装置は、 まず、 検査行列 Hの転置行列 Ητとの間に、 式 GHT=0 が成立す る生成行列 Gを算出する。 ここで、 生成行列 G 、 kXn行列である場合には、 符号化装置は、 生成行列 G に対して k ビットからなる情報メッセージ (ベタ ト ル u) を乗算し、 n ビッ トからなる符号語 c (= uG) を生成する。 この符号化 装置によって生成された符号語は、 値が" 0"の符号ビットが" + Ίこ、 値が" の 符号ビットが" 'にといったようにマッピングされて送信され、 所定の通信路を 介して受信側において受信されることになる。
一方、 LDPC 符号の復号は、 Gallager が確率復号(Probabilistic Decoding) と称して提案したアルゴリズムであって、 バリアプルノード(variable node
(メッセージノード (message node)ともいつ。 )と、 チェックノード (check node)とからなる、 いわゆるタナーグラフ(Tanner graph)上での確率伝播(beli ef propagation)によるメッセージ ·パッシング .ァノレゴリズムによって行うこ とが可能である。 ここで、 以下、 適宜、 ノ リアブルノードとチェックノードを、 単に、 ノードともいう。
例えば、 図 1に示されるパリティ検査行列 H pcは、 図 2に示されるようなタ ナーグラフによって表される。 図 2のタナーグラフは、 図 1のパリティ検査行列 H pcの各列をバリアブルノード、 各行をチェックノードとし、 パリティ検査行 列 HLDPCの値が 「1」 の i行; i列の要素に対して、 j番目のバリアブルノードと i番目のチェックノードをエッジ (edge) としてつないでいる。
しかしながら、 確率復号においては、 各ノード間で受け渡されるメッセージが 実数値であることから、 解析的に解くためには、 連続した値をとるメッセージの 確率分布そのものを追跡する必要があり、 非常に困難を伴う解析を必要とするこ とになる。 そこで、 Gallagerは、 LDPC符号の復号アルゴリズムとして、 ァルゴ リズム A又はアルゴリズム Bを提案している。
LDPC符号の復号は、 一般的には、 図 2に示すような手順にしたがって行われ 4007747
4
る。 なお、 ここでは、 受信値 (受信した符号系列) を U0(u0i)とし、 チェックノ 一ドから出力されるメッセージを Uj とし、 バリアプルノードから出力されるメ ッセージを vi とする。 また、 ここでは、 メッセージとは、 値の" 0"らしさを、 いわゆる対数尤度比(log likelihood ratio)で表現した実数値である。
LDPC 符号の復号は、 一般的には、 図 3に示すような手順にしたがって行われ る。 なお、 ここでは、 受信値 (受信した符号系列) を U0(u0i)とし、 チェックノ 一ドから出力されるメッセージを とし、 パリアブルノードから出力されるメ ッセージを Viとする。 また、 ここでは、 メッセージとは、 値の" 0"らしさを、 い わゆる対数尤度比(log likelihood ratio)で表現した実数値である。
まず、 LDPC 符号の復号においては、 図 3に示すように、 ステップ S 1におい て、 受信値 U。(U()i)が受信され、 メッセージ Ujが" 0 に初期化されるとともに、 繰り返し処理のカウンタとしての整数をとる変数 k 力 S 0"に初期化され、 ステツ プ S 2に進む。 ステップ S 2において、 受信値 U。(u。i)に基づいて、 式 (1 ) に 示す演算 (バリアプルノードの演算) を行うことによってメッセージ Viが求め られ、 さらに、 このメッセージ Vi に基づいて、 式 (2) に示す演算 (チェック ノードの演算) を行うことによってメッセージ .が求められる。
Figure imgf000006_0001
ここで、 式 (1) と式 (2) における と dcは、 それぞれ、 検査行列 Hの縦 方向 (列) と横方向 (行) の" 1"の個数を示す任意に選択可能とされるパラメ一 タであり、 例えば、 (3, 6)符号の場合には、 dv=3, dc=6 となる。
なお、 式 (1 ) または (2) の演算においては、 それぞれ、 メッセージを出力 しょうとする枝(edge) (バリアブルノードとチェックノードとを結ぶ線) から 入力されたメッセージを、 和または積演算のパラメータとしては用いないことか ら、 和または積演算の範囲が、 1乃至 dv-lまたは 1乃至 dc- 1 となっている。 ま た、 式 (2) に示す演算は、 実際には、 2入力 Vl, v2に対する 1出力で定義さ れる式 (3) に示す関数 ! v V^のテーブルを予め作成しておき、 これを式 (4) に示すように連続的 (再帰的) に用いることによって行われる。
x=2tanh"1 (tanh (ν,/2) tanh(v2/2)] =R(v!, v2) - - ■ (3)
uj=R(v1, R(v2) R(v3, ---RCvd -2, vd -0))) ■ ■ ■ (4)
ステップ S 2では、 さらに、 変数 k 力 Vl"だけインクリメントされ、 ステップ S 3に進む。 ステップ S 3では、 変数 k が所定の繰り返し復号回数 N よりも大 きいか否かが判定される。 ステップ S 3において、 変数 k 力 S N よりも大きくな いと判定された場合、 ステップ S 2に戻り、 以下、 同様の処理が繰り返される。 また、 ステップ S 3において、 変数 k が N よりも大きいと判定された場合、 ステップ S 4に進み、 式 (5) に示す演算を行うことによって最終的に出力する 復号結果としてのメッセージ Viが求められて出力され、 LDPC符号の復号処理が 終了する。
Figure imgf000007_0001
ここで、 式 (5) の演算は、 式 (1 ) の演算とは異なり、 バリアブルノードに 接続している全ての枝からの入カメッセージを用いて行われる。
このような LDPC 符号の復号は、 例えば(3, 6)符号の場合には、 図 4に示すよ うに、 各ノード間でメッセージの授受が行われる。 なお、 図 4における〃 で示 すノード (バリアブルノード) では、 式 (1 ) に示した演算が行われ、 〃+' 'で示 すノード (チェックノード) では、 式 (2) に示した演算が行われる。 特に、 ァ ルゴリズム Aにおいては、 メッセージを 2元化し、 で示すノードにて、 dc- 1 個の入力メッセージの排他的論理和演算を行い、 〃 で示すノードにて、 受信値 Rに対して、 dv-l個の入カメッセージが全て異なるビット値であった場合には、 符号を反転して出力する。
また、 一方で、 近年、 LDPC 符号の復号の実装法に関する研究も行われている c 実装方法について述べる前に、 まず、 LDPC符号の復号を摸式化して説明する。 図 5は、 (3,6)LDPC符号 (符号化率 1/2、 符号長 12) の検査行列(parity che ck matrix)の例である。 LDPC 符号の検查行列は、 図 6のように、 タナーグラフ を用いて書き表すことができる。 ここで、 図 6において、 〃+"で表されるのが、 チェックノードであり、 〃= で表されるのが、 ノ リアプルノードである。 チエツ クノードとバリアブルノードは、 それぞれ、 検査行列の行と列に対応する。 チェ ックノードとバリアブルノードとの間の結線は、 枝(edge)であり、 検査行列の〃 1Ίこ相当する。 即ち、 検査行列の第 j行第 i列のコンポーネントが 1である場 合には、 図 6において、 上から i番目のバリアブルノード ( のノード) と、 上から j番目のチェックノード のノード) とが、 枝により接続される。 枝 は、 バリアプルノードに対応する符号ビットが、 チェックノードに対応する拘束' 条件を持つことを表わす。 なお、 図 6は、 図 5の検査行列のタナーグラフとなつ ている。
LDPC 符号の復号方法としては、 サムプロダクトアルゴリズム(Sum Product A lgorithm)がある (例えば、 「和田山正、 " 低密度パリティ検査符号と sum- pro duct ァ/レゴリズムについて,, 、 [online] 、 平成 1 3年 6月 22日、 岡山県立 大学、 [平成 1 5年 5月 1 9日検索] 、 インターネット, く URL:http:〃 vega. c. oka-pu. ac. jp/ wadayama/pdf /LD'PC. pdf〉」 参照リ 0
このサムプロダク トアルゴリズムでは、 ノ リアプルノードの演算とチェックノ 一ドの演算とが繰り返し行われる。
バリアブルノードでは、 図 7のように、 式 (1) の演算 (バリアプルノード演 算) を行う。 すなわち、 図 7において、 計算しょうとしている枝に対応するメッ セージ Viは、 ノ リアプルノードに繋がっている残りの枝からのメッセージ お よび u2と、. 受信情報 u0iを用いて計算される。 他の枝に対応するメッセージも同 様に計算される。
次に、 チェックノードの演算について説明する前に、 式 (2) を、 式 aXb=ex p{ln(|a|)+ln(lb|)} Xsign(a) Xsign(b)の関係を用いて、 式 (6) のように書 き直す。 伹し、 sign(x)は、 X 0のとき 1であり、 Xく 0のとき- 1である。 )
Figure imgf000009_0001
(6)
更に、 x≥0 において、 φ (x)=ln(tanh(x/2))と定義すると、 φ— 1 (x) =2tanh一1 (e一 であるから、 式 (6) は、 式 (7) のように書くことができる。
U sign (7)
Figure imgf000009_0002
チェックノードでは、 図 8のように、 式 (7) の演算 (チェックノード演算) を行う。 すなわち、 図 8において、 計算しょうとしている枝に対応するメッセ一 ジ Ujは、 チェックノードに繋がっている残りの枝からのメッセージ Vl, v2, v3,v4, v5を用いて計算される。 他の枝に対応するメッセージも同様に計算される。
なお、 関数 Φ (χ)は、 φ (x)=ln((ex+l)バ ex- 1))とも表すことができ、 x>0 に おいて、 φ
Figure imgf000009_0003
である。 関数 φ (χ)および φ-1(χ)をハードウェアに実装 する際には、 LUT(Look Up Table)を用いて実装される場合があるが、 両者共に 同一の LUTとなる。
サムプロダク トアルゴリズムをハードウェアに実装する場合、 式 (1) で表さ れるバリアブルノード演算および式 (7) で表されるチェックノード演算とを、 適度な回路規模と動作周波数で繰り返し行うことが必要である。
また、 このようなサムプロダク トアルゴリズムを適用した LDPC 符号の演算コ ス トの算出方法も広く知られている (例えば、 「Matthew C. Davey, David J C MacKay Low Density Parity Check Coaes over GF qノ 」 参 ¾ 。
以上のようにサムプロダク トアルゴリズム (SPA) を適応して良い復号性能を PC蘭 004/007747
8
得るには、 パリティ検査行列が低密度である必要がある。
また、 その他の一般の線形符号、 例えば、 リードソロモン (Reed So l omon) 符号等のパリティ検査行列 Hは、 定義体の原始根を α とした場合、 図 9のよう に表される。 図 9に示されるように、 線形符号のパリティ検査行列 Η は、 一般 に低密度ではない。 このような低密度でないリードソロモン符号には、 ユータリ ッド (Euc l i d) のアルゴリズム等を用いた復号 (以下、 通常復号と称する) が 行われる。
図 1 0は、 リードソロモン符号を用いて誤り訂正を行う誤り訂正システムの構 成例を示すプロック図である。 図 1 0に示される誤り訂正システムは、 例えば、 ディジタルテレビ等のディジタル通信システムに用いられるシステムである。 図 1 0の誤り訂正システムにおいては、 送信側である符号化装置 1 0より送信 されたディジタル情報が、 例えばインターネットに代表される通信路 2 1を介し て、 受信側である復号装置 3 0に供給される。
符号化装置 1 0は、 外部より供給された送信用のディジタル情報を、 リードソ ロモン符号を用いて符号化するリードソロモン符号化部 1 1、 符号化されたディ ジタル情報の並べ替えを行うインタリーバ 1 2、 畳み込み符号化を行う畳み込み 符号化部 1 . 3、 並びに、 通信路 2 1を介して、 復号装置 3 0と通信を行う通信処 理部 1 4からなる。 '
また、 復号装置 3 0は、 通信路 2 1を介して供給された送信語を取得する通信 処理部 3 1、 取得した送信語に畳み込み復号を行う畳み込み復号部 3 2、 並べ替 えられた情報を元の順番に戻すディンタリーバ 3 3、 並びに、 リードソロモン復 号 (通常復号) を行うリードソロモン復号部 3 4からなる。
符号化装置 1 0の外部より供給された送信用のディジタル情報は、 符号化装置 1 0のリードソロモン符号化部 1 1において、 リードソロモン符号化された後、 インタリーバ 1 2に供給される。 インタリーバ 1 2は、 主に通信路 2 1において 発生するバース ト的誤りを拡散させるために、 情報の並べ替え (インタリービン グ) を行う。 リードソロモン符号は、 複数ビットを 1シンボルとする誤り訂正を 行うので、 インタリーバ 1 2は、 シンポル単位でバース ト的誤りを拡散するシン ポノレインタリービングを行う。
並べ替えが行われた送信用のディジタル情報は、 さらに、 畳み込み符号化部 1 3において、 複数の情報プロックに基づいて逐次的に符号系列が定まる畳み込み 符号が行われる。 例えば、 拘束長 Kの畳み込み符号化部 1 3は、 インタリーバ 1 2よりディジタル情報が kビッ トの情報プロック毎に供給されると、 今回供給さ れた情報プロックだけでなく、 過去に供給された情報プロックも含めた K個の情 報プロックに基づいて、 nビットの符号ブロックに符号化する。
そして、 畳み込み符号化されたディジタル情報は、 通信処理部 1 4において、 送信可能なデータ形式に変換され、 通信路 2 1を介して復号装置 3 0に供給され る。
復号装置 3 0は、 通信処理部 3 1において、 有線または無線の通信路 2 1を介 して供給された送信語を取得する。 取得された送信語は、 畳み込み復号部 3 2に より、 畳み込み復号が行われる。 ディンタリーバ 3 3は、 畳み込み復号された情 報を取得すると、 符号化装置 1 0のインタリーバ 1 2において行われたインタリ 一ビングに対応した方法で情報の並び替えを行い、 並び替えられた情報を元の順 序に戻す処理 (ディンタリービング) を行う。 リードソロモン復号部 3 4は、 元 の順序に戻されたディジタル情報に、 通常復号によるリードソロモン復号処理を 行い、 符号化される前のディジタル情報を再現し、 その情報を復号装置 3 0の外 部に出力する。
以上のようにして、 図 1 0の誤り訂正システムは、 通信の際に発生した誤りを 訂正し、 より正確な通信を行えるようにする。
図 1 1は、 リードソロモン符号を用いて誤り訂正を行う誤り訂正システムを適 用した記録再生装置の構成例を示すブロック図である。 図 1 1に示される記録再 生装置は、 例えば、 DVD (Di gital Versat i le Di sc)レコードプレーヤ等のディ ジタル記録媒体記録再生装置である。
図 1 1の記録再生装置 5 0は、 外部より供給されたディジタル情報を、 符号化 処理部 6 0において符号化し、 記録再生処理部 7 0において記録媒体 7 2に記録 する。 また、 記録再生装置 5 0は、 記録媒体 7 2に記録されているディジタル情 報を、 記録再生処理部 7 0において再生し、 復号処理部 8 0において復号処理を 行って元のディジタル情報を取得し、 その情報を外部に出力する。
符号化処理部 6 0は、 ディジタル情報に互いに異なる次元に関するリードソロ モン符号を行う第 1リードソロモン符号化部 6 1— 1乃至第 nリードソロモン符 号化部 6 1一 nからなる。
記録再生処理部 7 0は、 符号化処理部 6 0より供給された情報を記録媒体 7 2 に記録する記録部 7 1、 例えば光ディスク等の記録媒体 7 2、 記録媒体 7 2に記 録されている情報を再生する再生部 7 3からなる。
また、 復号処理部 8 0は、 符号化処理部 6 0に対応する復号器であり、 デイジ タル情報に互いに異なる次元に関するリードソロモン復号 (通常復号) を行う第 1 リードソロモン復号部 8 1 _ 1乃至第11 リードソロモン復号部 8 1— nからな る。
符号化処理部 6 0の外部より供給されたディジタル情報は、 第 1リードソロモ ン符号化部 6 1— 1において 1次元目に関するリ一ドソロモン符号化が行われる。 続いて、 ディジタル情報は、 第2リードソロモン符号化部 6 1— 2乃至第 nリー ドソロモン符号化部 6 1— nの各部において、 2次元目乃至 n次元目までの各次 元目に関するリ一ドソロモン符号が行われる。 第 nリードソロモン符号化部 6 1 一 nによる符号化が終了すると、 符号化処理部 6 0は、 符号化されたディジタル 情報を記録再生処理部 7 0に供給する。 記録再生処理部 7 0の記録部 7 1は、 符 号化処理部 6 0より供給されたディジタル情報を記録媒体 7 2に記録する。
記録再生処理部 7 0の再生部 7 3は、 記録媒体 7 2に記録されているディジタ ル情報 (符号化されたディジタル情報) を再生し、 復号処理部 8 0に供給する。 復号処理部 8 0は、 第 1リードソロモン復号部 8 1— 1乃至第 nリードソロモ ン復号部 8 1— nの各部において、 再生部 7 3より供給されたディジタル情報に、 各次元目に関するリードソロモン復号 (通常復号) を行い、 元のディジタル情報 を復元する。 なお、 復号処理部 8 0は、 符号化処理部 6 0の場合と逆に、 まず、 第 nリードソロモン復号部 8 1— nにおいて第 n次元目に関するリードソロモン 復号から行い、 n— 1次元目、 n— 2次元目と順に次元数を下げるようにリード ソロモン復号を行い、 最後に第 1次元目に関するリードソロモン復号を行う。 復 号処理部 8 0は、 復元した元のディジタル情報を記録再生装置 5 0の外部に出力 する。
以上のようにして、 図 1 1の記録再生装置 5 0は、 情報の記録や再生の際に発 生した情報の誤りを訂正する。
' ' 以上のようなリードソロモン符号や BCH (Bose-Chaudhuri-Hocquenghem) 符0 号等に対する通常復号は、 受信した値を 「0」 または 「1厂のみで推定する硬判 定の受信語に対して行う復号方法である。
しかしながら、 軟判定の受信語が得られる場合、 通常、 軟判定受信語を用いて の復号性能に比べて、 硬判定受信語を用いての復号性能は劣るので、 軟判定受信 語が得られるシステムにおいて、 上述したようにリードソロモン符号を通常復号5 するようにした場合、 その復号性能が良くならないという課題があった。
そこで、 上述したようなサムプロダク トアルゴリズムを用いて復号する方法が 考えられるが、 一般の線形符号のパリティ検査行列は、 通常、 低密度ではないた め、 復号性能は良くならないという課題があった。 また、 仮に、 与えられたパリ ティ検查行列が低密度であるとしても、 大きな有限体上でのサムプロダクトアル0 ゴリズムは、 非常に複雑であり、 その演算コス トも大きくなつてしまうという課 題もあった。 発明の開示
本発明はこのような状況に鑑みてなされたものであり、 一般の線形符号に対す5 る復号方法としてサムプロダクトアルゴリズムを適用した場合に、 容易に、 性能 の良い復号処理を行うことができるようにするものである。
本発明の第 1の復号方法は、 環 R上の線形符号の検査行列に対して、 値が 1で PC蘭 004/007747
12
ある要素の密度を低密度化させる低密度化処理ステツプと、 低密度化処理ステッ プの処理により低密度化された検査行列を用いて、 線形符号をサムプロダク トァ ルゴリズムにより復号する復号ステップとを含むことを特徴とする。
前記環は、 素数のべき乗を元とする有限体であることができる。
前記線形符号は、 有限体上の BCH 符号またはリードソロモン符号を含むこと ができる。
前記低密度化処理ステップは、 検査行列の各行の線形結合を計算する線形結合 計算ステップと、 線形結合計算ステップの処理により計算された線形結合によつ て得られるべク トルの集合の中から、 符号補空間を張る、 より重みの低いベタ ト ル部分集合を抽出し、 ベク トル部分集合の全ベク トルを行成分とする新たな検査 行列を作成する検査行列作成ステップとを含むようにすることができる。
前記低密度化処理ステップは、 有限体上の検査行列を、 有限体の部分体上に所 定の次元で展開する展開ステップをさらに含み、 線形結合計算ステップは、 展開 ステップの処理により展開された検査行列の各行の線形結合を計算することがで きる。
本発明の第 1の復号装置は、 環 R上の線形符号の検查行列に対して、 値が 1で ある要素の密度を低密度化させる低密度化処理を行う低密度化処理手段と、 低密 度化処理手段により低密度化された検査行列を用いて、 線形符号をサムプロダク トアルゴリズムにより復号する復号手段とを備えることを特徴とする。
前記環は、 素数のべき乗を元とする有限体であることができる。
前記線形符号は、 有限体上の BCH 符号またはリードソロモン符号を含むこと ができる。
前記低密度化処理手段は、 検査行列の各行の線形結合を計算する線形結合計算 手段と、 線形結合計算手段により計算された線形結合によって得られるベタ トル の集合の中から、 符号補空間を張る、 より重みの低いベク トル部分集合を抽出し、 べクトル部分集合の全べク トルを行成分とする新たな検査行列を作成する検査行 列作成手段とを備えるようにすることができる。 前記低密度化処理手段は、 有限体上の検査行列を、 有限体の部分体上に所定の 次元で展開する展開手段をさらに備え、 線形結合計算手段は、 展開手段により展 開された検査行列の各行の線形結合を計算することができる。
畳み込み符号化された線形符号を軟判定復号する軟判定復号手段をさらに備え、 低密度化処理手段は、 軟判定復号手段により軟判定復号された線形符号の検査行 列に対して、 値が 1である要素の密度を低密度化させることができる。
前記軟判定復号手段による軟判定復号、 低密度化処理手段による低密度化処理、 および復号手段による復号を繰り返し実行することができる。
本発明の第 1のプログラムは、 環 R上の線形符号の検査行列に対して、 値が 1 である要素の密度を低密度化させる低密度化処理ステップと、 低密度化処理ステ ップの処理により低密度化された検査行列を用いて、 線形符号をサムプロダクト アルゴリズムにより復号する復号ステップとをコンピュータに実行させることを 特徴とする。
本発明の第 2の復号方法は、 受信値を入力する入力ステップと、 線形符号の検 查行列に対し、 値が 1である要素の密度を低密度化させた検査行列と、 入力ステ ップの処理により入力された受信値とを用いて、 線形符号をサムプロダクトアル ゴリズムにより復号する復号ステップとを含むことを特徴とする。
本発明の第 2の復号装置は、 受信値を入力する入力手段と、 線形符号の検查行 列に対し、 値が 1である要素の密度を低密度化きせた検査行列と、 入力手段によ り入力された受信値とを用いて、 線形符号をサムプロダク トアルゴリズムにより 復号する復号手段とを備えることを特徴とする。
本発明の第 2のプログラムは、 受信値を入力する入力ステップと、 線形符号の 検査行列に対し、 値が 1である要素の密度を低密度化させた検査行列と、 入カス テツプの処理により入力された受信値とを用いて、 線形符号をサムプロダク トァ ルゴリズムにより復号する復号ステップとをコンピュータに実行させることを特 徴とする。
本発明の第 1の記録再生装置は、 環 R上の線形符号を記録媒体に記録する記録 2004/007747
14
手段と、 記録手段により記録された線形符号を再生する再生手段と、 再生手段に より再生された線形符号の検査行列に対して、 値が 1である要素の密度を低密度 化させる低密度化処理を行う低密度化処理手段と、 低密度化処理手段により低密 度化された検査行列を用いて、 線形符号をサムプロダクトアルゴリズムにより復 号する復号手段とを備えることを特徴とする。
前記線形符号は、 所定の次元で積符号化された線形符号であり、 低密度化処理 手段は、 検査行列に対して、 各次元に対して、 低密度化処理を行い、 復号手段は、 低密度化された検査行列の各次元に対して、 サムプロダク トアルゴリズムによる 復号を行うことができる。
前記低密度化処理手段による低密度化処理、 および復号手段による復号を繰り 返し実行することができる。
本発明の第 1の記録再生方法は、 環 R上の線形符号の、 記録媒体への記録を制 御する記録制御ステップと、 記録制御ステップの処理により記録が制御された線 形符号の、 再生を制御する再生制御ステップと、 再生制御ステップの処理により 再生が制御された線形符号の検査行列に対して、 値が 1である要素の密度を低密 度化させる低密度化処理を行う低密度化処理ステツプと、 低密度化処理ステップ の処理により低密度化された検査行列を用いて、 線形符号をサムプロダク トアル ゴリズムにより復号する復号ステップとを含むことを特徴とする。
本発明の第 3のプログラムは、 環 R上の線形符号の、 前記記録媒体への記録を 制御する記録制御ステツプと、 前記記録制御ステップの処理により記録が制御さ れた前記線形符号の、 再生を制御する再生制御ステップと、 前記再生制御ステツ プの処理により再生が制御された前記線形符号の検査行列に対して、 値が 1であ る要素の密度を低密度化させる低密度化処理を行う低密度化処理ステップと、 前 記低密度化処理ステップの処理により低密度化された前記検査行列を用いて、 前 記線形符号をサムプロダクトアルゴリズムにより復号する復号ステツプとをコン ピュータに実行させることを特徴とする。
本発明の第 2の記録再生装置は、 環 R上の線形符号を記録媒体に記録する記録 PC蘭画 07747
15
手段と、 記録手段により記録された線形符号を再生する再生手段と、 線形符号の 検査行列に対し、 値が 1である要素の密度を低密度化させた検査行列を用いて、 線形符号をサムプロダク トァルゴリズムにより復号する復号手段とを備えること を特徴とする。
本発明の第 2の記録再生方法は、 環 R上の線形符号の、 記録媒体への記録を制 御する記録制御ステップと、 記録制御ステップの処理により記録が制御された線 形符号の再生を制御する再生制御ステップと、 線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた検査行列を用いて、 線形符号をサムプロダ クトアルゴリズムにより復号する復号ステップとを含むことを特徴とする。 . 本発明の第 4のプログラムは、 環 R上の線形符号の、 記録媒体への記録を制御 する記録制御ステップと、 記録制御ステップの処理により記録が制御された線形 符号の再生を制御する再生制御ステップと、 線形符号の検査行列に対し、 値が 1 である要素の密度を低密度化させた検査行列を用いて、 線形符号をサムプロダク トアルゴリズムにより復号する復号ステップとをコンピュータに実行させること を特徴とする。
本発明の第 1の再生装置は、 記録手段により記録された、 環 R上の線形符号を 再生する再生手段と、 再生手段により再生された線形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる低密度化処理を行う低密度化処理手段 と、 低密度化処理手段により低密度化された検査行列を用いて、 線形符号をサム プロダクトアルゴリズムにより復号する復号手段とを備えることを特徴とする。 前記線形符号は、 所定の次元で積符号化された線形符号であり、 低密度化処理 手段は、 検査行列に対して、 各次元に対して、 低密度化処理を行い、 復号手段は、 低密度化された検査行列の各次元に対して、 サムプロダクトアルゴリズムによる 復号を行うことができる。
前記低密度化処理手段による低密度化処理、 および復号手段による復号を繰り 返し実行することができる。
本発明の第 1の再生方法は、 記録媒体記録された、 環 R上の線形符号の再生を 制御する再生制御ステップと、 再生制御ステップの処理により再生が制御された 線形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる低密度 化処理を行う低密度化処理ステップと、 低密度化処理ステップの処理により低密 度化された検査行列を用いて、 線形符号をサムプロダクトアルゴリズムにより復 号する復号ステップとを含むことを特徴とする。
本発明の第 5のプログラムは、 記録媒体記録された、 環 R上の線形符号の再生 を制御する再生制御ステップと、 再生制御ステップの処理により再生が制御され た線形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる低密 度化処理を行う低密度化処理ステップと、 低密度化処理ステップの処理により低 密度化された検查行列を用いて、 線形符号をサムプロダク トアルゴリズムにより 復号する復号ステップとをコンピュータに実行させることを特徴とする。
本発明の第 2の再生装置は、 記録媒体に記録された、 環 R上の線形符号を再生 する再生手段と、 線形符号の検査行列に対し、 値が 1である要素の密度を低密度 化させた検査行列を用いて、 線形符号をサムプロダク トアルゴリズムにより復号 する復号手段とを備えることを特徴とする。
本発明の第 2の再生方法は、 記録媒体に記録された、 環 R上の線形符号の再生 を制御する再生制御ステップと、 線形符号の検査行列に対し、 値が 1である要素 の密度を低密度化させた検査行列を用いて、 線形符号をサムプロダク トアルゴリ ズムにより復号する復号ステップとを含むことを特徴とする。
本発明の第 6のプログラムは、 記録媒体に記録された、 環 R上の線形符号の再 生を制御する再生制御ステツプと、 線形符号の検査行列に対し、 値が 1である要 素の密度を低密度化させた検査行列を用いて、 線形符号をサムプロダク トァルゴ リズムにより復号する復号ステップとをコンピュータに実行させることを特徴と する。
本発明においては、 環 R上の線形符号の検査行列に対して、 値が 1である要素 の密度が低密度化され、 その低密度化された検査行列が用いられ、 線形符号がサ ムプロダク トアルゴリズムにより復号される。 また本発明においては、 値が 1である要素の密度を低密度化させた検査行列が 用いられて、 線形符号がサムプロダクトアルゴリズムにより復号される。 図面の簡単な説明
図 1は、 低密度パリティ検査行列の例を示す図である。
図 2は、 図 1のパリティ検査行列に対応するタナーグラフを説明する図である。 図 3は、 LDPC符号の復号手順を説明するフローチヤ一トである。
図 4は、 メッセージの流れを説明する図である。
図 5は、 LDPC符号の検査行列の例を示す図である。
図 6は、 検査行列のタナーグラフを示す図である。
図 7は、 バリアブルノードを示す図である。
図 8は、 チェックノードを示す図である。
図 9は、 リードソロモン符号の検査行列の例を示す図である。
図 1 0は、 従来の誤り訂正システムの構成例を閉めす! 11である。
図 1 1は、 従来の記録再生装置の構成例を示す図である。
図 1 2は、 本発明を適用した復号装置の構成例を示す図である。
図 1 3は、 図 1 2の復号装置による復号処理を説明するフローチヤ一トである £ 図 1 4は、 図 1 3のステップ S 2 1において実行されるパリティ検查行列低密 度化処理を説明するフローチヤ一トである。
図 1 5は、 BCH符号のパリティ検査行列の例を示す図である。
図 1 6は、 図 1 5のパリティ検査行列に対応するタナーグラフを示す図である c 図 1 7は、 展開されたパリティ検査行列の例を示す図である。
図 1 8は、 図 1 7のパリティ検査行列に対応するタナーグラフを示す図である t 図 1 9は、 復号性能を比較するためのグラフである。
図 2 0は、 本発明を適用した復号装置の他の構成例を示す図である。
図 2 1は、 図 2 0の復号装置による復号処理を説明するフローチャートである t 図 2 2は、 リードソロモン符号におけるパリティ検査行列の例を示す図である t 図 2 3は、 展開されたパリティ検査行列の例を示す図である。
図 2 4は、 復号性能を比較するためのグラフである。
図 2 5は、 本発明を適用した誤り訂正システムの構成例を示すブロック図であ る。
図 2 6は、 本発明を適用した誤り訂正システムの他の構成例を示すブロック図 である。
図 2 7は、 本発明を適用した記録再生装置の構成例を示すプロック図である。 図 2 8は、 記録装置の構成例を示すプロック図である。
図 2 9は、 本発明を適用した再生装置の構成例を示すプロック図である。
図 3 0は、 本発明を適用した記録再生装置の他の構成例を示すブロック図であ る。
図 3 1は、 本発明を適用した再生装置の他の構成例を示すプロック図である。 図 3 2は、 本発明を適用したコンピュータの一実施の形態の構成例を示すプロ ック図である。 発明を実施するための最良の形態
以下、 本発明の実施の形態について説明するが、 最初に本発明が適用される技 術の例について説明する。
図 1 2は、 本発明を適用した復号装置の構成例を示すブロック図である。
図 1 2において、 復号装置 1 0 0は、 例えば BCH 符号に対応する復号装置で あり、 環 R上の (または有限体上の) 受信語のパリティ検査行列を十分低密度な 行列に変換する低密度化処理部 1 1 0および低密度化されたパリティ検査行列を 用いて、 受信語を復号する LDPC復号部 1 2 1からなる。
低密度化処理部 1 1 0は、 パリティ検査行列の行の線形結合を計算する線形結 合計算部 1 1 1、 線形結合された行を用いて、 十分疎なパリティ検査行列を作成 するパリティ検査行列作成部 1 1 2、 および作成されたパリティ検査行列のラン クが元のパリティ検査行列のランクと同じであるか否かを判定する判定処理部 1 1 3により構成される。
線形結合計算部 1 1 1は、 取得した受信語に含まれるパリティ検査行列の各行 の線形結合を、 全ての組み合わせについて計算する。 すなわち、 線形結合計算部 1 1 1は、 n行のパリティ検査行列に対して、 2 n通りの組み合わせで線形結合 を計算する。 線形結合計算部 1 1 1は、 計算結果および受信語をパリティ検査行 列作成部 1 1 2に供給する。
パリティ検査行列作成部 1 1 2は、 線形結合計算部 1 1 1より供給された計算 結果、 すなわち、 線形結合された行の中から、 所定の条件に従って行を抽出し、 その抽出した行により構成されるパリティ検査行列を作成する。 パリティ検査行 列作成部 1 1 2は、 例えば、 線形結合された行の中から、 値が 「1」 の要素の数 が所定の数以下の行を抽出する等、 作成したパリティ検査行列の密度が疎になる ように条件を設定し、 その条件に該当する行を抽出する。 パリティ検査行列作成 部 1 1 2は、 作成したパリティ検査行列および受信語を判定処理部 1 1 3に供給 する。 なお、 後述するように、 判定処理部 1 1 3において、 作成したパリティ検 查行列のランクが元のパリティ検査行列のランクと異なると判定きれた場合、 パ リティ検査行列作成部 1 1 2は、 再度、 行の抽出を行い、 新たなパリティ検査行 列を作成する。 その際、 パリティ検査行列作成部 1 1 2は、 前回行った行の抽出 の条件を変更し、 前回作成されたパリティ検査行列と異なる行で構成されるパリ ティ検査行列を作成する。
判定処理部 1 1 3は、 パリティ検査行列作成部 1 1 2において作成されたパリ ティ検査行列のランク (階数) 力 元のパリティ検査行列のランクと一致するか かを判定する。 ランクが一致すると判定した場合、 判定処理部 1 1 3は、 受信 語と、 作成されたパリティ検査行列を LDPC復号部 1 2 1に供給する。 ランクが —致しないと判定した場合、 判定処理部 1 1 3は、 処理をパリティ検査行列作成 部 1 1 2に戻し、 新たなパリティ検査行列を作成させる。
以上のように、 低密度化処理部 1 1 0は、 受信語に含まれる BCH符号のパリ ティ検査行列の密度を低密度化させ、 その低密度化されたパリティ検査行列を受 信語とともに LDPC復号部 1 2 1に供給する。
LDPC 復号部 1 1 2は、 取得した低密度化されたパリティ検査行列を用いて、 受信語をサムプロダクトアルゴリズムにより復号し、 復号された受信語を復号装 置 1 0 0の外部に出力する。
以上のように、 低密度化処理部 1 1 0が受信語のパリティ検査行列を低密度化 させることにより、 LDPC 復号部 1 2 1は、 その低密度のパリティ検査行列を用 いて、 サムプロダクトアルゴリズムを用いた復号処理を行うことができ、 性能の 良い復号処理を行うことができる。 また、 低密度化処理部 1 1 0が受信語のパリ ティ検査行列を、 線形結合を用いて低密度化させるので、 LDPC 復号部 1 2 1は、 部分体上の復号を行うことができ、 演算コストを削減することもできる。 すなわ ち、 サムプロダクトアルゴリズムを用いた復号処理を行う前に、 パリティ検査行 列の密度を、 線形結合により低密度化させることにより、 復号装置 1 0 0は、 容 易に、 性能の良い復号処理を行うことができる。
次に、 以上のような復号装置による復号処理について、 図 1 3のフローチヤ一 トを参照して説明する。
最初に、 復号装置 1 0 0の低密度化処理部 1 1 0は、 ステップ S 2 1において、 パリティ検査行列低密度化処理を実行し、 取得した受信語に含まれるパリティ検 查行列の密度を疎にする。 パリティ検査行列低密度化処理の詳細については、 図 1 4のフローチヤ一トを参照して後述する。
そして、 ステップ S 2 2において、 LDPC 復号部 1 2 1は、 ステップ S 2 1の 処理により低密度化されたパリティ検査行列を利用し、 サムプロダク トアルゴリ ズム (SPA) を用いた復号処理を行う。 ステップ S 2 2の処理が終了すると、 LD PC 復号部 1 2 1は、 その受信語に対する復号処理を終了する。 なお、 復号装置 1 0 0は、 上述した復号処理を受信語毎 (ブロック毎) に実行する。
次に、 図 1 4のフローチャートを参照して、 図 1 3のステップ S 2 1において 実行されるパリティ検査行列低密度化処理の詳細を説明する。
最初に、 ステップ S 4 1において、 低密度化処理部 1 1 0の線形結合計算部 1 1 1は、 取得した受信語に含まれるパリティ検査行列の各行を用いて、 全ての組 み合わせで線形結合を行い、 結合結果を計算する。
線形結合を計算した線形結合計算部 1 1 1は、 ステップ S 4 2において、 後述 するように行の抽出条件となる変数 nの値を、 例えば 「1」 等の初期値に設定す る。 そして、 線形結合計算部 1 1 1は、 受信語、 線形結合の計算結果、 および変 数 nをパリティ検查行列作成部 1 1 2に供給し、 ステップ S 4 3に処理を進める。 ステップ S 4 3において、 パリティ検査行列作成部 1 1 2は、 取得した線形結 合結果のそれぞれについて値が 「1」 の要素の数 weight を算出し、 全ての線形 結合結果の中から、 値が 「1」 の要素の数 weight が変数 n以下であるものを抽 出し、 それらを行とする新たな低密度のパリティ検查行列を作成する。
すなわち、 パリティ検査行列作成部 1 1 2は、 線形結合計算部 1 1 1において 計算された線形結合によって得られるベタ トルの集合の中から、 符号捕空間を張 る、 より重みの低いベタトル部分集合を抽出し、 ベタ トル部分集合の全べク トル を行成分とする新たなパリティ検査行列を作成する。
新たなパリティ検査行列を作成したパリティ検查行列作成部 1 1 2は、 ステツ プ S 4 4に処理を進め、 変数 riの値に 「1」 を加算し、 受信語、 作成したパリテ ィ検查行列、 および、 変数 nを判定処理部 1 1 3に供給する。
受信語、 作成したパリティ検査行列、 および、 変数 nを供給された判定処理部 1 1 3は、 ステップ S 4 5において、 受信語に含まれる元のパリティ検查行列に 関する情報に基づいて、 元のパリティ検查行列のランク (階数) と、 低密度のパ リティ検査行列のランク (階数) とが一致するか否かを判定する。
例えば、 低密度のパリティ検査行列のランクが低く、 元のパリティ検查行列と 一致しないと判定した場合、 判定処理部 1 1 3は、 ステップ S 4 3に処理を戻し、 それ以降の処理を繰り返す。 すなわち、 判定処理部 1 1 3は、 パリティ検查行列 作成部 1 1 2にその判定結果を供給し、 再度、 パリティ検査行列作成部 1 1 2に 低密度のパリティ検査行列を作成させる。 その際、 線形結合結果より抽出する条 件となる変数 nの値が前回の処理の時と異なるので、 パリティ検査行列作成部 1 1 2は、 前回と異なる行を有する (前回と要素が異なる) 低密度のパリティ検査 行列を作成することができる。
ステップ S 4 5において、 元のパリティ検査行列のランク (階数) と、 低密度 のパリティ検査行列のランク (階数) とが一致すると判定した場合、 判定処理部 1 1 3は、 ステップ S 4 6に処理を進め、 受信語、 および、 作成された低密度の パリティ検査行列を LDPC復号部 1 2 1に出力し、 図 1 3のステップ S 2 2に処 理を戻す。
以上のように、 復号処理、 およびパリティ検查行列低密度化処理を実行するこ とにより、 復号装置 1 0 0は、 サムプロダク トアルゴリズムを用いた復号処理を 行う前に、 パリティ検査行列の密度を線形結合により低密度化させるので、 容易 に、 性能の良い復号処理を行うことができる。
次に、 以上の復号装置 1 0 0を用いた具体的な低密度化の例について説明する。 以下においては、 有限体を素数のべき乗を元とする有限体 GF ( 2 4) (GF ( 2 )の 4次拡大体) とし、 線形符号 Cとして、 符号長 1 5、 情報長 7の(1 5 , 7 ) -BC H符号を復号する場合について説明する。
線形符号 Cのパリティ検査行列 Hが、 例えば、 図 1 5のように与えられるとす る。 図 1 5に示されるパリティ検査行列 Hは 8行 1 5列の行列であり、 このパリ ティ検査行列 Hに対応するタナーグラフは図 1 6のように表される。 図 1 6のタ ナーグラフは、 図 1 5に示されるパリティ検査行列 Hの各列を 「=」 で示される バリアプルノードで表し、 各行を 「 +」 で示されるチェックノードで表したダラ フであり、 バリアブルノードとチェックノードを結ぶエッジ (edge) の密度が 高くなつており、 図 1 5のパリティ検査行列 Hが低密度の行列でないことを示し ている。
図 1 2の低密度化処理部 1 1 0は、 上述したように、 この 8行を用いて線形結 合を行い、 「1」 の密度が少ない 2 8 = 2 5 6個の行ベク トルを作成する。 そし て、 低密度化処理部 1 1 0は、 「1」 の個数が 4以下の行べク トルを 1 5個抽出 し、 1 5元べク トルを縦に並べて作成した、 図 1 7に示されるような新しい行列 Hsp4を作成する。 図 1 7に示される行列 Hsp4に対応するタナーグラフは、 図 1 8に示されるようになる。 図 1 7に示される行列 H s p 4の行数おょぴ列数がとも に 1 5であるので、 図 1 8に示されるタナーグラフのバリアプルノードおよびチ エックノードの数がともに 1 5個になり、 図 1 6の場合と比較して、 バリアブル ノードとチェックノ―ドを結ぶエッジ (edge) の密度が低くなつている。
低密度化処理部 1 1 0は、 この行列 Hsp4をパリティ検査行列とし、 LDPC 復号 部 1 2 1に供給する。 LDPC 復号部 1 2 1は、 図 1 7に示される低密度のパリテ ィ検查行列 Hsp4を用いて、 受信語に対して、 サムプロダク トアルゴリズムを適 用した復号を行う。
図 1 9は、 このようなパリティ検査行列を有する BCH 符号をビタビ (Viterb i) 復号により最尤復号した場合と、 図 1 7に示されるような低密度パリティ検 查行列 Hsp4を用いてサムプロダク トアルゴリズムによる復号を行った場合の復 号性能の比較を示すグラフである。
図 1 9において、 曲線 1 3 1は、 サムプロダク トアルゴリズム (SPA) による 復号結果の、 ビットエラーレート (BER) を示しており ( (2 ) bch 15 7 (wgt4) SPA BER) 、 曲線 1 3 2は、 ビタビ復号による復号結果のビットエラーレート (BER) を示している ( ( 1 ) bch 15 7 ML BER) 。 また、 点 1 3 3によりプロ ットされたデータは、 サムプロダクトアルゴリズムによる復号結果のフレームェ ラーレート (FER) を示しており ( (2 ) bch 15 7 (wgt4) SPA FER) 、 点 1 3 4によりプロットされたデータは、 ビタビ復号による復号結果のフレームエラー レート (FER) を示している ( (1 ) bch 15 7 ML FER) 。
最尤復号 (図 1 9の曲線 1 3 2 ) は、 サムプロダク トアルゴリズムの様な確率 的復号を用いた場合の性能限界であるが、 図 1 9に示されるように本発明を用い た曲線 1 3 1は、 その性能限界に迫る性能をあげている。
以上のように、 復号装置 1 0 0は、 BCH符号に対して、 サムプロダク トァルゴ リズムを用いた復号処理を行う前に、 パリティ検査行列の密度を線形結合により 低密度化させるので、 容易に、 性能の良い復号処理を行うことができる。 なお、 以上においては、 BCH符号に対する復号処理について説明したが、 これ に限らず、 例えば、 リードソロモン符号等のように、 一般的な線形符号であれば どのような符号方法であってもよい。 以下に、 リードソロモン符号に対してサム プロダクトアルゴリズムを適用した復号を行う場合について説明する。
図 2 0は、 本発明を適用した復号装置の他の構成例を示すブロック図である。 図 2 0において、 復号装置 1 5 0は、 例えばリードソロモン符号に対応する復 号装置であり、 受信語のパリティ検査行列を展開する展開処理部 1 6 1、 展開さ れたパリティ検査行列を十分低密度な行列に変換する低密度化処理部 1 7 0、 お よび低密度化されたパリティ検查行列を用いて、 受信語を復号する LDPC復号部 1 8 1からなる。
展開処理部 1 6 1は、 パリティ検査行列の低密度化処理の前処理として、 取得 した受信語に含まれるパリティ検査行列の各要素をその行列の有限体の次元に応 じて、 それぞれ所定の次数に展開する。 すなわち、 展開処理部 1 6 1は、 素数の べき乗を元とする有限体上のパリティ検査行列を、 その有限体の部分体上に所定 の次元で展開する。 展開処理部 1 6 1は、 その展開されたパリティ検査行列およ ぴ受信語を低密度化処理部 1 7 0に供給する。
低密度化処理部 1 7 0は、 パリティ検査行列の行の線形結合を計算する線形結 合計算部 1 7 1、 線形結合された行を用いて十分疎なパリティ検査行列を作成す るパリティ検査行列作成部 1 7 2、 および作成されたパリティ検査行列のランク が元のパリティ検査行列のランクと同じであるか否かを判定する判定処理部 1 7 3により構成される。 これらの各部の構成および動作は、 それぞれ、 図 1 2に示 される復号装置 1 0 0の低密度化処理部 1 1 0の場合と同様であるので、 それら の説明は省略する。 すなわち、 低密度化処理部 1 7 0を構成する線形結合計算部 1 7 1乃至判定処理部 1 7 3は、 図 1 2に示される線形結合計算部 1 1 1乃至判 定処理部 1 1 3にそれぞれ対応する。 ただし、 低密度化処理部 1 7 0は、 展開処 理部 1 6 1より供給された、 展開されたパリティ検査行列に対して低密度化処理 を行う。 低密度化処理部 1 7 0は、 展開処理部 1 6 1により展開されたリードソロモン 符号のパリティ検査行列の密度を低密度化させ、 その低密度化されたパリティ検 査行列を受信語とともに LDPC復号部 1 8 1に供給する。
LDPC 復号部 1 8 1は、 取得した低密度化されたパリティ検査行列を用いて、 受信語をサムプロダクトアルゴリズムにより復号し、 復号された受信語を復号装 置 1 5 0の外部に出力する。
以上のように、 低密度化処理部 1 7 0がパリティ検査行列を低密度化させる前 に、 展開処理部 1 6 1によりパリティ検査行列の展開を行うことにより、 LDPC 復号部 1 8 1による、 低密度化されたパリティ検查行列 Hsp24を用いたサムプロ ダクトアルゴリズムによる復号処理の演算コス トは、 以下に示される式 (8 ) の ように、 受信語に含まれるパリティ検査行列 Hを用いてサムプロダクトアルゴリ ズムによる復号処理を行った場合と比べて、 約 4分の 1に削減される。
{Hsp24上 SPA卜^" {H上 SPA} ■ ■ ' ( 8 ) 従って、 復号装置 1 5 0は、 容易に、 性能の良い復号処理を容易に行うことが できる。
次に、 以上のような復号装置 1 5 0による復号処理について、 図 2 1のフロー チャートを参照して説明する。
最初に、 復号装置 1 5 0の展開処理部 1 6 1は、 ステップ S 6 1において、 取 得した受信語に含まれるパリティ検査行列をその有限体の次元に合わせて展開す る。 そして、 展開処理部 1 6 1は、 展開したパリティ検查行列および受信語を低 密度化処理部 1 7 0に供給し、 処理をステップ S 6 2に進める。
低密度化処理部 1 7 0は、 ステップ S 6 2において、 パリティ検査行列低密度 化処理を実行し、 展開されたパリティ検査行列の密度を疎にする。 パリティ検査 行列低密度化処理の詳細については、 図 1 4のフローチャートを参照して説明し た場合と同様であるのでその詳細な説明は省略する。 ただし、 この場合のパリテ ィ検査行列低密度化処理において、 低密度化処理部 1 7 0は、 上述したように展 開処理部 1 6 1により展開されたパリティ検査行列を低密度化させるように処理 を行う。
そして、 ステップ S 6 3において、 LDPC 復号部 1 8 1は、 ステップ S 6 2の 処理により低密度化されたパリティ検査行列を利用し、 サムプロダク トアルゴリ ズム (SPA) を用いた復号処理を行う。 ステップ S 6 3の処理が終了すると、 LD PC 復号部 1 2 1は、 その受信語に対する復号処理を終了する。 なお、 復号装置 1 50は、 上述した復号処理を受信語毎 (プロック毎) に実行する。
以上のように、 復号処理を実行することにより、 復号装置 1 50は、 低密度化 処理を行う前に、 パリティ検査行列の各要素を展開させるので、 容易に、 性能の 良い復号処理を行うことができる。
次に、 以上の復号装置 1 50を用いた具体的な展開の例について説明する。 以下においては、 有限体を GF(24)とし、 線形符号 Cとして、 符号長 1 5、 情 報長 1 1の(1 5, 1 1)-リードソロモン符号を復号する場合について説明する。 なお、 GF(24)の原始根を ひ とし、 その原始根 a からなる原始多項式を式 (9) とし、 符号の生成多項式を式 (10) とする。 A+a+ =0 ■ ■ ■ (9)
g(x): = (x+1) ( +α) (χ+α2) (χ+α3) , - - (10)
このときの線形符号 Cのパリティ検查行列は、 図 22に示されるように与えら れる。 図 22に示されるパリティ検查行列 Hは 4行 1 5列の行列である。 ところ で、 有限体 GF(24)は、 GF(2)の 4次拡大体であることから、 有限体 GF(24)上 の元、 行列を全て 4次元に展開することが可能である。 復号装置 1 50の展開処 理部 1 6 1は、 図 22に示されるパリティ検査行列 Hを展開し、 図 23に示され るような 1 6行 60列のパリティ検査行列 Hexpに変換する。 この場合、 展開処 理部 1 6 1は、 図 22に示されるパリティ検査行列 Hの各要素を 4 X 4の要素群 に展開することで、 図 23に示されるパリティ検査行列 Hexpを生成する。
復号装置 1 50の低密度化処理部 1 70は、 この展開されたパリティ検查行列 HexDに対して低密度化処理を行い、 LDPC 復号部 1 8 1は、 低密度化されたパリ ティ検査行列 Hexpを用いて、 サムプロダク トアルゴリズムによる復号処理を行 Ό ο
図 2 4は、 このようなパリティ検查行列を有するリードソロモン符号を通常復 号した場合と、 図 2 3の展開されたパリティ検査行列 Hexpを低密度化したパリ ティ検査行列 Hsp24を用いてサムプロダク トアルゴリズムによる復号を行った場 合の復号性能の比較を示すグラフである。
図 2 4において、 曲線 1 9 1は、 低密度化したパリティ検査行列 Hsp24を用ぃ てサムプロダク トアルゴリズム (SPA) による復号を行った場合の復号結果の、 ビットエラーレート (BER) を示しており ( (4 ) RS wgt24 SPA BER) 、 曲線 1 9 2は、 通常復号による復号結果のビットエラーレート (BER) を示している ( ( 3 ) RS ORD BER) 。 また、 点 1 9 3によりプロットされたデータは、 低密 度化したパリティ検査行列 Hsp24を用いてサムプロダク トアルゴリズムによる復 号を行った場合の復号結果のフレームエラーレー ト (FER) を示しており ( ( 4 ) RS wgt24 SPA FER) 、 点 1 9 4によりプロッ トされたデータは、 通常 復号による復号結果のフレームエラーレート (FER) を示している ( (3 ) RS 0 RD FER) 。
図 2 4に示されるように、 本発明を用いた復号の復号結果である曲線 1 9 1 (点 1 9 3 ) は、 通常復号の場合の復号結果である曲線 1 9 2 (点 1 9 4 ) と比 較して、 より良い性能が得られている。
以上のように、 復号装置 1 5 0は、 リードソロモン符号に対して、 サムプロダ クトアルゴリズムを用いた復号処理を行う前に、 パリティ検査行列の密度を線形 結合により低密度化させるので、 容易に、 性能の良い復号処理を行うことができ る。 また、 復号装置 1 5 0は、 パリティ検査行列を低密度化させる前に、 パリテ ィ検査行列の各要素、 行列を展開するので、 演算コス トを低く抑えることができ る。
図 2 5は、 本発明を適用した、 リードソロモン符号を用いた誤り訂正システム の構成例を示すブロック図である。 図 2 5に示される誤り訂正システムは、 例え ば、 ディジタルテレビ等のディジタル通信システムに用いられるシステムである。 図 2 5の誤り訂正システムにおいては、 送信側である符号化装置 2 1 0より送 信されたディジタル情報が、 例えばインターネットに代表される通信路 2 2 1を 介して、 受信側である復号装置 2 3 0に供給される。
符号化装置 2 1 0は、 外部より供給された送信用のディジタル情報を、 リード ソロモン符号を用いて符号化するリードソロモン符号化部 2 1 1、 符号化された ディジタル情報の並べ替えを行うインタリーバ 2 1 2、 畳み込み符号化を行う畳 み込み符号化部 2 1 3、 並びに、 通信路 2 2 1を介して、 復号装置 2 3 0と通信 を行う通信処理部 2 1 4からなる。 ―
リードソロモン符号化部 2 1 1は、 符号化装置 2 1 0の外部より供給されたデ イジタル情報に対して、 リードソロモン符号を用いた符号化処理を行い、 符号化 されたディジタル情報をインタリーバ2 1 2に供給する。 インタリーバ 2 1 2は、 その符号化されたディジタル情報を、 主に通信路 2 2 1において発生するバース ト的誤りを拡散させるために、 情報の並べ替え (インタリービング) を行う。 リ ードソロモン符号は複数ビットを 1シンボルとする誤り訂正を行うので、 インタ リーバ 2 1 2は、 シンポル単位でバースト的誤りを拡散するシンボルインタリー ビングを行う。 情報の並べ替えを終了したインタリーバ 2 1 2は、 その並び替え られたディジタル情報を畳み込み符号化部 2 1 3に供給する。
畳み込み符号化部 2 1 3は、 並び替えられたディジタル情報に対して、 過去に 符号化した情報を参照し、 複数の情報プロックに基づいて、 逐次的に符号系列が 定まる畳み込み符号を行う。 例えば、 拘束長 Kの畳み込み符号化部 2 1 3は、 ィ ンタリーバ 2 1 2よりディジタル情報が kビットの情報ブロック毎に供給される と、 今回供給された情報ブロックだけでなく、 過去に供給された情報ブロックも 含めた K個の情報ブロックに基づいて、 nビットの符号ブロックに符号化する。 畳み込み符号化が完了すると、 畳み込み符号化部 2 1 3は、 畳み込み符号化され たディジタル情報を通信処理部 2 1 4に供給する。
通信処理部 2 1 4は、 通信制御処理を行い、 所定のプロ トコルに基づいて、 供 給されたディジタル情報を送信語として、 通信路 2 2 1を介して復号装置 2 3 0 に送信する。
符号化装置 2 1 0より出力されたディジタル情報は、 通信路 2 2 1を介して復 号装置 2 3 0に供給される。
復号装置 2 3 0は、 通信路 2 2 1を介して供給されたディジタル情報を、 受信 語として受信する通信処理部 2 3 1、 通信処理部 2 3 1が取得した受信語に対し て、 畳み込み復号処理を行う畳み込み復号部 2 3 2、 畳み込み復号された受信語 を元の順序に並び替えるディンタリーパ 2 3 3、 並びに、 元の順序に戻されたデ イジタル情報に、 サムプロダク トアルゴリズムによる復号処理を行い、 リードソ ロモン符号化される前のディジタル情報を復元するリードソロモン SPA 復号部 2 3 4力、らなる。
通信処理部 2 3 1は、 通信路 2 2 1を介して符号化装置 2 1 0の通信処理部 2 1 4と通信を行い、 所定のプロトコルに基づいて、 通信処理部 2 1 4より供給さ れたディジタル情報を受信語として取得する。 通信処理部 2 3 1は、 取得した受 信語を畳み込み復号部 2 3 2に供給する。
畳み込み復号部 2 3 2は、 符号化装置 2 1 0の畳み込み符号化部 2 1 3による 符号化方法に対応した方法で、 送信処理部 2 3 1より供給された受信語を復号す る。 すなわち、 畳み込み復号部 2 3 2は、 受信語に対して、 例えば、 事後確率最 大ィ匕復 (MAP (Maximum a posteriori probabi l ity decoding; ノを夹 する BCJR (Bahl, Cocke, Jel inek, and Raviv) アルゴリズムや SOVA (soft o utput Viterbi algori thm)等を用いて、 軟判定復号を行う。 そして、 畳み込み 復号部 2 3 2は、 この軟判定復号された受信語をデインタリーバ 2 3 3に供給す る。
ディンタリーパ 2 3 3は、 供給された受信語に対して、 符号化装置 2 1 0のィ ンタリーバ 2 1 2において行われたィンタリービングに対応した方法で情報の並 び替えを行い、 並ぴ替えられた情報を元の順序に戻す処理 (デインタリービン グ) を行い、 元の順序に並び替えられた受信語を、 リードソロモン SPA 復号部 2 3 4に供給する。
リードソロモン SPA 復号部 2 3 4は、 図 2 0に示される復号装置 1 5 0と基 本的に同様の構成であり、 基本的に同様の動作を行い、 復号装置 1 5 0の場合と 同様に、 図 2 0のブロック図、 およぴ図 2 1に示されるフローチャートを適用す ることができるので、 その詳細な説明を省略する。
リードソロモン SPA 復号部 2 3 4は、 リードソロモン符号化された受信語に 対して、 そのパリティ検査行列を展開するとともに低密度化し、 そのパリティ検 查行列を用いて、 サムプロダク トアルゴリズムによる復号処理を行い、 符号化さ れる前の元のディジタル情報を復元する。 リードソロモン SPA 復号部 2 3 4は、 復号したディジタル情報を復号装置 2 3 0の外部に出力する。
以上のようにして、 図 2 5の誤り訂正システムは、 容易に、 性能の良い復号処 理を行うことができ、 より正確な通信を行うことができる。 また、 復号装置 2 3 0は、 パリティ検査行列を低密度化させる前に、 パリティ検査行列の各要素、 行 列を展開するので、 復号処理の演算コストを低く抑えることができる。
なお、 以上においては、 誤り訂正システムは、 リードソロモン符号を復号する ように説明したが、 これに限らず、 例えば、 BCH符号を復号するようにしてもよ レ、0
図 2 6は、 本発明を適用した、 リードソロモン符号を用いた誤り訂正システム の他の構成例を示すプロック図である。 図 2 6に示される誤り訂正システムは、 例えば、 ディジタルテレビ等のディジタル通信システムに用いられるシステムで ある。 図 2 5に示される場合と同様の部分については同一の符号を付しており、 その説明を省略する。
図 2 6の誤り訂正システムにおいては、 送信側である符号化装置 2 1 0におい て符号化されたディジタル情報が、 例えばインターネットに代表される通信路 2 2 1を介して、 受信側である復号装置 2 4 0に供給される。
復号装置 2 4 0は、 通信路 2 2 1を介して供給されたディジタル情報を、 受信 語として受信する通信処理部 2 4 1、 通信処理部 2 4 1が取得した受信語に対し て、 畳み込み復号処理を行う畳み込み復号部 2 4 2、 畳み込み復号された受信語 を元の順序に並び替えるデインタリーバ 2 4 3、 元の順序に戻されたディジタル 情報に、 サムプロダクトアルゴリズムによる復号処理を行い、 リードソロモン符 号化される前のディジタル情報を復元するリードソロモン SPA復号部2 4 4、 並びに、 符号化装置 2 1 0のインタリーバ 2 1 2と同様に、 ディジタル情報の並 び替えを行うインタリーバ 2 4 5からなる。
通信処理部 2 4 1は、 図 2 5の通信処理部 2 3 1の場合と同様に、 通信路 2 2 1を介して符号化装置 2 1 0の通信処理部 2 1 4と通信を行い、 所定のプロ トコ ルに基づいて、 通信処理部 2 1 4より供給されたディジタル情報を受信語として 取得する。 通信処理部 2 4 1は、 取得した受信語を畳み込み復号部 2 4 2に供給 する。
畳み込み復号部 2 4 2は、 図 2 5の畳み込み復号部 2 3 2の場合と同様に、 符 号化装置 2 1 0の畳み込み符号化部 2 1 3による符号化方法に対応した方法で、 送信処理部 2 4 1より供給された受信語を復号する。 すなわち、 畳み込み復号部 2 4 2は、 受信語に対して、 例えば、 BCJRアルゴリズムや S0VA等を用いて、 軟 判定復号を行う。 そして、 畳み込み復号部 2 4 2は、 この軟判定復号された受信 語をデインタリーバ 2 4 3に供給する。 また、 畳み込み復号部 2 4 2には、 イン タリーバ 2 4 5より、 サムプロダク トアルゴリズムによる復号が行われた受信語 が再度並ぴ替えられて供給される。 畳み込み復号部 2 4 2は、 この受信語に対し ても、 通信処理部 2 4 1より供給された受信語の場合と同様に、 例えば、 BCJR アルゴリズムや S0VA等を用いて、 軟判定復号を行い、 ディンタリーバ 2 4 3に 供給する。
ディンタリーバ 2 4 3は、 図 2 5のディンタリ一バ 2 3 3の場合と同様に、 畳 み込み復号部 2 4 2より供給された受信語に対して、 符号化装置2 1 0のインタ リーバ 2 1 2において行われたインタリービングに対応した方法で情報の並び替 えを行い、 並び替えられた情報を元の順序に戻す処理 (ディンタリービング) を 行い、 元の順序に並ぴ替えられた受信語を、 リードソロモン SPA 復号部 2 4 4 P T/JP2004/007747
32
に供給する。 なお、 上述したように、 畳み込み復号部 2 4 2より供給される受信 語には、 通信処理部 2 4 1から畳み込み復号部 2 4 2を介して供給される受信語 の他に、 インタリーバ 2 4 5から畳み込み復号部 2 4 2を介して供給される受信 語も含まれる。
リードソロモン SPA復号部 2 4 4は、 図 2 5のリードソロモン SPA復号部 2 4 4の場合と同様に、 図 2 0に示される復号装置 1 5 0と基本的に同様の構成で あり、 基本的に同様の動作を行い、 復号装置 1 5 0の場合と同様に、 図 2 0のブ ロック図、 および図 2 1に示されるフローチヤ一トを適用することができる。 リードソロモン SPA 復号部 2 4 4は、 デインタリーバ 2 4 3より取得した受 信語に対して、 その受信語に含まれるパリティ検査行列を展開するとともに低密 度化し、 そのパリティ検査行列を用いてサムプロダク トアルゴリズムによる復号 処理を行い、 符号化される前の元のディジタル情報を復元する。 リードソロモン SPA復号部 2 4 4は、 復号したディジタル情報を復号装置 2 4 0の外部に出力す る。 また、 リードソロモン SPA 復号部 2 4 4は、 その復号したディジタル情報 をインタリーバ 2 4 5に供給する。
インタリーバ 2 4 5は、 符号化装置 2 1 0のインタリーバ 2 1 2と同様に、 取 得したディジタル情報を所定の順番に並び替える。 このインタリーバ 2 4 5によ る並び替えのパターンは、 インタリーバ 2 1 2と同様である。 このようにして並 び替えられたディジタル情報は、 畳み込み復号部 2 4 2に供給される。
以上のように、 復号装置 2 4 0は、 通信処理部 2 4 1において取得した受信語 に対して、 ディンタリーバ 2 4 3とインタリーバ 2 4 5を介しながら、 畳み込み 復号部 2 4 2による軟判定復号と、 リードソロモン SPA 復号部 2 4 4によるサ ムプロダク トアルゴリズムを用いた復号とを繰り返し行い、 復号処理における復 号誤り確率を小さくしていく。 なお、 この復号の繰り返し回数は、 予め定められ ていてもよいし、 例えば、 誤り訂正する箇所の数等のような所定の条件に基づい て、 繰り返しを中止するか否かが判定されるようにしてもよい。
このようにすることで、 復号装置 2 4 0は、 容易に性能の良い復号処理を行う ことができ、 図 2 6の誤り訂正システムは、 より正確な通信を行うことができる。 また、 復号装置 2 4 0は、 パリティ検査行列を低密度化させる前に、 パリティ検 查行列の各要素、 行列を展開するので、 復号処理の演算コス トを低く抑えること ができる。
なお、 以上において、 リードソロモン SPA 復号部 2 4 4は、 復号したデイジ タル情報を復号装置 2 4 0の外部に出力するとともにインタリーバ2 4 5に供給 するように説明したが、 これに限らず、 例えば、 復号を繰り返している間は、 ィ ンタリーバ 2 4 5にのみ復号したディジタル情報を供給するようにし、 復号の繰 り返しが終了した場合に、 ディジタル情報の出力先をィンタリーバ 2 4 5から復 号装置 2 4 0の外部に切り替えて、 復号したディジタル情報を出力するようにし てもよい。
なお、 以上においては、 誤り訂正システムは、 リードソロモン符号を復号する ように説明したが、 これに限らず、 例えば、 BCH符号を復号するようにしてもよ い。
図 2 7は、 本発明を適用した、 リードソロモン符号を用いて誤り訂正を行う誤 り訂正システムを適用した記録再生装置の構成例を示すプロック図である。 図 2 7に示される記録再生装置は、 例えば、 DVD レコードプレーヤ等のディジタル記 録媒体記録再生装置である。
図 2 7の記録再生装置 2 5 0は、 外部より供給されたディジタル情報を、 符号 化処理部 2 6 0において符号化し、 記録再生処理部 2 7 0において記録媒体 2 7 2に記録する。 また、 記録再生装置 2 5 0は、 記録媒体 2 7 2に記録されている ディジタル情報を、 記録再生処理部 2 7 0において再生し、 復号処理部 2 8 0に おいて復号処理を行って元のディジタル情報を取得し、 その情報を外部に出力す る。
符号化処理部 2 6 0は、 ディジタル情報に互いに異なる次元に関するリードソ ロモン符号を行う第 1リ一ドソロモン符号化部 2 6 1 - 1乃至第 nリ一ドソロモ ン符号化部 2 6 1— nからなる。 符号化処理部 2 6 0の外部より供給されたディジタル情報は、 第 1リードソロ モン符号化部 2 6 1 - 1において 1次元目に関するリ一ドソロモン符号化が行わ れる。 続いて、 ディジタル情報は、 第 2リードソロモン符号化部 2 6 1— 2乃至 第 nリードソロモン符号化部 2 6 1 _ nの各部において、 2次元目乃至 n次元目 までの各次元目に関するリードソロモン符号が順に行われる。 第 nリードソロモ ン符号化部 2 6 1— nによる符号化が終了すると、 符号化処理部 2 6 0は、 符号 化されたディジタル情報を記録再生処理部 2 7 0に供給する。
記録再生処理部 2 7 0は、 符号化処理部 2 6 0より供給された情報を記録媒体 2 7 2に記録する記録部 2 7 1、 例えば光ディスク等の記録媒体 2 7 2、 記録媒 体 2 7 2に記録されている情報を再生する再生部 2 7 3からなる。
記録再生処理部 2 7 0の記録部 2 7 1は、 符号化処理部 2 6 0より供給された ディジタル情報を NRZI (Non Return to Zero Invert) 変換 (NRZI符号化) す るなどして記録媒体 2 7 2に記録する。 また、 記録再生処理部 2 7 0の再生部 2 7 3は、 記録媒体 2 7 2に記録されているディジタル情報 (リードソロモン符号 化されたディジタル情報) を再生し、 そのディジタル情報に施された NRZI 変換 を元に戻し (復号し) 、 そのディジタル情報を復号処理部 2 8 0に供給する。 復号処理部 2 8 0は、 符号化処理部 2 6 0に対応する復号器であり、 ディジタ ル情報に互いに異なる次元に関して、 サムプロダク トアルゴリズムによる復号処 理を行う第 1リードソロモン SPA復号部 2 8 1 - 1乃至第 nリードソロモン SPA 復号部 2 8 1— nからなる。
第 1リードソロモン SPA復号部 2 8 1— 1乃至第 nリードソロモン SPA復号 部 2 8 1— nは、 それぞれ、 符号化処理部 2 6 0の第 1リードソロモン符号化部 2 6 1一 1乃至第 nリードソロモン符号化部 2 6 1一 nに対応し、 各次元に関す るリードソロモン符号に対して、 サムプロダク トアルゴリズムによる復号を行う c 第 1 リードソロモン SPA復号部 2 8 1— 1乃至第 nリードソロモン SPA復号部 2 8 1 — 1ュは、 それぞれ、 図 2 0に示される復号装置 1 5 0と基本的に同様の構 成であり、 基本的に同様の動作を行う。 従って、 第 1リードソロモン SPA 復号 部 2 8 1— 1乃至第 11リードソロモン SPA 復号部 2 8 1— nは、 それぞれ、 復 号装置 1 5 0の場合と同様に、 図 2 0のブロック図、 および図 2 1に示されるフ ローチャートを適用することができる。 復号処理部 2 8 0は、 第 1リードソロモン SPA 復号部 2 8 1— 1乃至第 nリ ードソロモン SPA 復号部 2 8 1— nの各部において、 再生部 2 7 3より供給さ れたディジタル情報に対して、 パリティ検査行列の各要素、 行列を展開し、 その パリティ検査行列を低密度化して、 各次元目に関するサムプロダクトァルゴリズ ムによる復号処理を行う。 その際、 復号処理部 2 8 0は、 図 2 7に示されるよう に、 符号化処理部 2 6 0の場合と逆に、 まず、 第 nリードソロモン SPA 復号部 2 8 1一 ηにおいて第 n次元目に関するサムプロダク トアルゴリズムによる復号 処理から行い、 続いて、 直列に接続される各リードソロモン SPA 復号部におい て、 それぞれ、 n— 1次元目、 n— 2次元目と順に次元数を下げるようにサムプ 口ダク トアルゴリズムによる復号処理を行い、 最後に第 1リードソロモン SPA 復号部 2 8 1一 1において第 1次元目に関するサムプロダク トアルゴリズムによ る復号処理を行う。 復号処理部 2 8 0は、 このようにして復元した元のディジタ ル情報を記録再生装置 2 5 0の外部に出力する。
このようにすることにより、 復号処理部 2 8 0は、 容易に性能の良い復号処理 を行うことができ、 記録再生装置 2 5 0は、 より正確にディジタル情報の記録お よび再生を行うことができる。 また、 復号処理部 2 8 0は、 パリティ検査行列を 低密度化させる前に、 パリティ検查行列の各要素、 行列を展開するので、 復号処 理の演算コストを低く抑えることができる。
なお、 以上においては、 記録再生装置 2 5 0は、 リードソロモン符号を復号す るように説明したが、 これに限らず、 例えば、 BCH符号を復号するようにしても よい。
以上においては、 ディジタル情報の記録および再生を行う記録再生装置の例に ついて説明したが、 この記録再生装置 2 5 0の、 ディジタル情報を記録媒体に記 録する記録機能と、 記録媒体に記録されているディジタル情報を再生する再生機 能とが別体として構成されるようにしてもよい。
図 2 8は、 図 2 7の記録再生装置 2 5 0と同様の記録機能を有する記録装置の 構成例を示すプロック図である。 なお、 図 2 7に示される場合と同様の部分につ いては同一の符号を付しており、 その説明を省略する。
図 2 8の記録装置 3 0 0は、 第 1 リードソロモン符号化部 2 6 1— 1乃至第 n リードソロモン符号化装置 2 6 1— nからなる符号化処理部 2 6 0、 並びに、 記 録部 2 7 1および記録媒体 2 7 2からなる記録処理部 3 1 0を有する。 記録装置 3 0 0の符号化処理部 2 6 0の外部より供給されたディジタル情報は、 最初に、 第 1リードソロモン符号化部 2 6 1— 1において 1次元目に関するリードソロモ ン符号化が行われる。 続いて、 その 1次元目に関して符号化されたディジタル情 報は、 第 2リードソロモン符号化部 2 6 1一 2乃至第 nリ一ドソロモン符号化部 2 6 1— laの各部に順に供給され、 各部において、 2次元目乃至 11次元目までの 各次元目に関するリ一ドソロモン符号が行われる。 第 nリードソロモン符号化部 2 6 1一 nによる符号化が終了すると、 符号化処理部 2 6 0は、 符号化されたデ ィジタル情報を記録処理部 3 1 0に供給する。
記録処理部 3 1 0は、 符号化処理部 2 6◦より供給された情報を記録媒体 2 7 2に記録する記録部 2 7 1、 および、 例えば光ディスク等の記録媒体 2 7 2を含 む。 記録処理部 3 1 0の記録部 2 7 1は、 符号化処理部 2 6 0より供給されたデ ィジタル情報を NRZI変換 (NRZI符号化) するなどして記録媒体 2 7 2に記録す る。
すなわち、 記録装置 3 0 0は、 図 2 7の記録再生装置 2 5 0と同様に、 符号化 処理部 2 6 0においてディジタル情報をリードソロモン符号化し、 記録処理部 3 1 0の記録部 2 7 1の制御により、 そのリードソロモン符号化されたディジタル 情報を記録媒体 2 7 2に記録する。
このような記録装置 3 0 0に対応する再生装置を図 2 9に示す。 なお、 図 2 7 に示される場合と同様の部分については同一の符号を付しており、 その説明を省 略する。 図 2 9の再生装置 3 5 0は、 図 2 8に示される記録装置 3 0 0に対応する再生 装置であり、 第 1リードソロモン SPA復号部 2 8 1 - 1乃至第 nリードソロモ ン符号化装置 2 8 1一 nからなる復号処理部 2 8 0、 並びに、 記録媒体 2 7 2お ょぴ再生部 2 7 3からなる再生処理部 3 5 0を有する。 再生装置 3 5 0の再生部 2 7 3は、 記録媒体 2 7 2に記録されているディジタル情報 (リードソロモン符 号化されたディジタル情報) を再生し、 そのディジタル情報に施された NRZI 変 換を元に戻し (復号し) 、 そのディジタル情報を復号処理部 2 8 0に供給する。 復号処理部 2 8 0は、 第 1リードソロモン SPA復号部2 8 1 - 1乃至第 ηリ ードソロモン SPA復号部 2 8 1一 nの各部において、 再生部 2 7 3より供給さ れたディジタル情報に対して、 パリティ検査行列の各要素、 行列を展開し、 その パリティ検査行列を低密度化して、 各次元目に関するサムプロダク トァルゴリズ ムによる復号処理を行う。 その際、 復号処理部 2 8 0は、 図 2 9に示されるよう に、 符号化処理部 2 6 0の場合と逆に、 まず、 第 nリードソロモン SPA 復号部 2 8 1一 nにおいて第 n次元目に関するサムプロダク トアルゴリズムによる復号 処理から行い、 続いて、 直列に接続される各リードソロモン SPA復号部におい て、 それぞれ、 n— 1次元目、 n— 2次元目と順に次元数を下げるようにサムプ ロダク トァノレゴリズムによる復号処理を行い、 最後に第 1リードソロモン SPA 復号部 2 8 1 - 1において第 1次元目に関するサムプロダクトアルゴリズムによ る復号処理を行う。 復号処理部 2 8 0は、 このようにして復元した元のディジタ ル情報を再生装置 3 5 0の外部に出力する。
このようにすることにより、 復号処理部 2 8 0は、 容易に性能の良い復号処理 を行うことができ、 再生装置 3 5 0は、 より正確にディジタル情報の再生を行う ことができる。 また、 復号処理部 2 8 0は、 パリティ検査行列を低密度化させる 前に、 パリティ検査行列の各要素、 行列を展開するので、 復号処理の演算コスト を抑制することができる。
なお、 以上においては、 記録再生装置 3 0 0は、 リードソロモン符号を復号す るように説明したが、 これに限らず、 例えば、 BCH符号を復号するようにしても よい。
図 3 0は、 本発明を適用した、 リードソロモン符号を用いて誤り訂正を行う誤 り訂正システムを適用した記録再生装置の構成例を示すブロック図である。 図 3 0に示される記録再生装置 4 0 0は、 例えば、 DVD レコードプレーヤ等のディジ タル記録媒体記録再生装置である。 なお、 図 2 7に示される場合と同様の部分に ついては同一の符号を付しており、 その説明を省略する。
図 3 0の記録再生装置 4 0 0は、 外部より供給されたディジタル情報を、 符号 化処理部 2 6 0において符号化し、 記録再生処理部 2 7 0において記録媒体 2 7 2に記録する。 また、 記録再生装置 4 0 0は、 記録媒体 2 7 2に記録されている ディジタル情報を、 記録再生処理部 2 7 0において再生し、 車号処理部 4 1 0に おいて復号処理を行って元のディジタル情報を取得し、 その情報を外部に出力す る。
復号処理部 4 1 0は、 符号化処理部 2 6 0に対応する復号器であり、 それぞれ 1 図 2 7に示される復号処理部 2 8 0と同様の構成であり、 同様の復号処理を 行う、 直列に接続された m個の復号部である第 1復号部 4 2 0— 1乃至第 m復号 部 4 2 0— mからなる。
第 1復号部 4 2 0— 1は、 図 2 7の復号処理部 2 8 0と同様に、 符号化処理部 2 6 0の第 1 リードソロモン符号化部 2 6 1— 1乃至第 nリードソロモン符号化 部 2 6 1— nに対応し、 各次元に関するリードソロモン符号に対して、 サムプロ ダクトアルゴリズムによる復号を行う、 直列に接続された n個の復号部である第 1リードソロモン SPA復号部 4 2 1— 1一 1乃至第 nリードソロモン SPA復号 部 4 2 1— 1— nにより構成される。 この第 1リードソロモン SPA 復号部 4 2 1 - 1 - 1乃至第 nリードソロモン SPA 復号部 4 2 1— 1 _ ιιは、 それぞれ、 図 2 0に示される復号装置 1 5 0と基本的に同様の構成であり、 基本的に同様の 動作を行う。 従って、 これらの、 第 1リードソロモン SPA 復号部 4 2 1 - 1 - 1乃至第 nリードソロモン SPA 復号部 4 2 1— 1一 nは、 それぞれ、 復号装置 1 5 0の場合と同様に、 図 2 0のブロック図、 およぴ図 2 1に示されるフローチ ヤートを適用することができる。
第 2復号部 4 2 0— 2乃至第 m復号部 4 2 0— mも、 それぞれ、 第 1復号部4 2 0— 1と同様の構成であり、 第 1復号部 4 2 0— 1と同様の動作を行う。 例え ば、 第 2復号部 4 2 0— 2は、 直列に接続された n個の復号部である第 1リード ソロモン SPA復号部 4 2 1— 2— 1乃至第 nリードソロモン SPA復号部 4 2 1 一 2— nにより構成され、 第 m復号部 4 2 0— mも直列に接続された n個の復号 部である第 1リードソロモン SPA復号部 4 2 1—m— 1乃至第 nリードソロモ ン SPA 復号部 4 2 1— m— nにより構成される。 なお、 これらの第 2復号部 4 2 0— 2乃至第 m復号部 4 2 0— mを構成する第 1 リードソロモン SPA 復号部 乃至第 nリードソロモン SPA 復号部は全て、 それぞれ、 図 2 0に示される復号 装置 1 5 0と基本的に同様の構成であり、 基本的に同様の動作を行うので、 それ ぞれ、 復号装置 1 5 0の場合と同様に、 図 2 0のブロック図、 および図 2 1に示 されるフローチャートを適用することができる。
復号処理部 4 1 0は、 まず、 再生部 2 7 3より供給されたディジタル情報に対 して、 第 1復号部 4 2 0— 1の第 1 リードソロモン SPA 復号部 4 2 1— 1— 1 乃至第 nリードソロモン SPA 復号部 4 2 1 - 1 - nの各部において、 ノ、 °リティ 検査行列の各要素、 行列を展開し、 そのパリティ検査行列を低密度化して、 各次 元目に関するサムプロダク トアルゴリズムによる復号処理を行う。
その際、 第 1復号部 4 2 0— 1は、 符号化処理部 2 6 0の場合と逆に、 まず、 第 nリードソロモン SPA 復号部 4 2 1 - 1一 nにおいて第 n次元目に関するサ ムプロダク トアルゴリズムによる復号処理から行い、 続いて、 直列に接続される 各リードソロモン SPA 復号部において、 それぞれ、 n— 1次元目、 n— 2次元 目と順に次元数を下げるようにサムプロダクトアルゴリズムによる復号処理を行 レヽ、 最後に第 1 リードソロモン SPA 復号部 4 2 1 - 1 - 1において第 1次元目 に関するサムプロダク トアルゴリズムによる復号処理を行う。
復号処理が終了すると、 第 1復号部 4 2 0— 1は、 復号されたディジタル情報 を第 2復号部 4 2 0 - 2に供給する。 第 2復号部 4 2 0— 2は、 第 1の復号部 4 2 0 - 1の場合と同様に、 第 1リードソロモン SPA 復号部 4 2 1— 2— 1乃至 第 11リードソロモン SPA 復号部 4 2 1 - 2 - nを用いて、 次元数を 1つずつ下 げるような順番でサムプロダク トアルゴリズムによる復号処理を行い、 復号され たディジタル情報を次の復号部に供給する。 このようにして、 順に第 m復号部 4 2 0— mまで復号処理が続けられる。 第 m復号部 4 2 0— mにおける復号処理が 完了すると、 復号処理部 4 1 0は、 復号されたディジタル情報を記録再生装置 4
0 0の外部に出力する。
このようにすることにより、 復号処理部 4 1 0は、 容易に性能の良い復号処理 を行うことができ、 記録再生装置 4 0 0は、 より正確にディジタル情報の記録お よび再生を行うことができる。 また、 復号処理部 4 1 0は、 パリティ検査行列を 低密度化させる前に、 パリティ検査行列の各要素、 行列を展開するので、 復号処 理の演算コストを低く抑えることができる。
なお、 以上においては、 記録再生装置 4 0 0は、 リードソロモン符号を復号す るように説明したが、 これに限らず、 例えば、 BCH符号を復号するようにしても よい。
なお、 以上においては、 ディジタル情報の記録おょぴ再生を行う記録再生装置 の例について説明したが、 この記録再生装置 4 0 0の、 ディジタル情報を記録媒 体に記録する記録機能と、 記録媒体に記録されているディジタル情報を再生する 再生機能とが別体として構成されるようにしてもよい。 その場合、 図 3 0の記録 再生装置 4 0 0と同様の記録機能を有する記録装置は、 図 2 8に示される記録装 置 3 0 0と同様の構成であり、 同様の動作を行うので、 図 2 8のプロック図を適 用することができ、 その説明を省略する。
このような図 3 0の記録再生装置 4 0 0と同様の記録機能を有する記録装置で ある記録装置 3 0 0に対応する再生装置を図 3 1に示す。 なお、 図 3 0に示され る場合と同様の部分については同一の符号を付しており、 その説明を省略する。 図 3 1の再生装置 4 5 0は、 図 2 8に示される記録装置 3 0 0に対応する再生 装置であり、 第 1復号部 4 2 0一 1乃至第 m復号部 4 2 0一 mからなる復号処理 部 4 1 0、 並びに、 記録媒体 2 7 2および再生部 2 7 3からなる再生処理部 4 6 0を有する。 再生装置 4 5 0の再生部 2 7 3は、 記録媒体 2 7 2に記録されてい るディジタル情報 (リードソロモン符号化されたディジタル情報) を再生し、 そ のディジタル情報に施された NRZI 変換を元に戻し (復号し) 、 そのディジタル 情報を復号処理部 4 1 0に供給する。
復号処理部 4 1 0は、 まず、 再生部 2 7 3より供給されたディジタル情報に対 して、 第 1復号部 4 2 0— 1において、 パリティ検査行列の各要素、 行列を展開 し、 そのパリティ検査行列を低密度化して、 サムプロダク トアルゴリズムによる 復号処理を各次元に対して行う。 続いて、 復号処理部 4 1 0は、 ディジタル情報 を、 直列に接続される第 2復号部 4 2 0— 2乃至 4 2 0— mに、 順に供給し、 各 部においてサムプロダクトアルゴリズムによる復号処理を行う。 第 m復号部 4 2 0—mにおける復号処理が完了すると、 復号処理部 4 1 0は、 復号されたデイジ タル情報を記録再生装置 4 0 0の外部に出力する。
このようにすることにより、 復号処理部 4 1 0は、 容易に性能の良い復号処理 を行うことができ、 再生装置 4 5 0は、 より正確にディジタル情報の再生を行う ことができる。 また、 復号処理部 4 1 0は、 パリティ検査行列を低密度化させる 前に、 パリティ検査行列の各要素、 行列を展開するので、 復号処理の演算コス ト を抑制することができる。
なお、 以上においては、 BCH符号またはリードソロモン符号に対する復号に本 発明を適用する場合について説明したが、 これに限らず、 本発明は、 一般の線形 符号であればどのような符号に対応する復号に本発明を適用するようにしてもよ い。
また、 以上においては、 再生装置 4 5 0は、 リードソロモン符号を復号するよ うに説明したが、 これに限らず、 例えば、 BCH符号を復号するようにしてもよい c さらに、 以上においては、 例えば、 図 1 2に示される復号装置 1 0 0、 図 2 0 に示される復号装置 1 5 0、 図 2 5に示されるリードソロモン SPA 復号部2 3 4、 図 2 6に示されるリードソロモン SPA 復号部 2 4 4、 図 2 7に示される第 1 リードソロモン SPA復号部 2 8 1— 1乃至第 nリードソロモン復号部 2 8 1 一 n、 並びに、 図 3 0に示される第 1復号部 4 2 0— 1乃至第 m復号部 4 2 0— mのような、 本発明を適用した復号装置または復号部は、 一般の線形符号に対す る復号方法として、 検査行列を低密度化し、 その低密度化した検査行列を用いて、 線形符号を復号するように説明したが、 これに限らず、 例えば、 他の装置または 他の処理部において、 検査行列を予め低密度化しておくようにしてもよい。 その 場合、 復号装置 (または復号部) は、 その予め低密度化された検査行列を用いて、 符号化装置等より供給される線形符号の復号を行う。 すなわち、 例えば、 図 2 5 に示される復号装置 2 3 0、 図 2 6に示される復号装置 2 4 0、 図 2 7に示され る記録再生装置 2 5 0、 図 2 9に示される再生装置 3 5 0、 図 3 0に示される記 録再生装置 4 0 0、 または、 図 3 1に示される再生装置 4 5 0の外部において検 查行列が予め低密度化されるようにし、 各装置が、 その予め低密度化された検査 行列を用いて、 供給される線形符号の復号を行うようにしてもよい。
上述した一連の処理は、 ハードウェアにより実行させることもできるし、 ソフ トウェアにより実行させることもできる。 ソフトウェアにより実行される場合、 上述した画像処理装置は、 図 3 2に示されるようなパーソナルコンピュータによ り構成される。
図 3 2において、 パーソナノレコンピュータ 5 0 0の CPU (Central Processin g Unit) 5 0 1は、 ROM (Read Only Memory) 5 0 2に記憶されているプログ ラム、 または記憶部 5 1 3力 ら RAM (Random Acces s Memory) 5 0 3にロード されたプログラムに従って各種の処理を実行する。 RAM 5 0 3にはまた、 CPU 5 0 1が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU 5 0 1、 R0M 5 0 2、 および RAM 5 0 3は、 パス 5 0 4を介して相互に接続 されている。 このバス 5 0 4にはまた、 入出力インタフェース 5 1 0も接続され ている。
入出力インタフェース 5 1 0には、 キーボード、 マウスなどよりなる入力部 5 1 1、 CRT (Cathode Ray Tube)ヽ LCD (L iqui d Crystal display)などよりなる ディスプレイ、 並びにスピーカなどよりなる出力部 5 1 2、 ハードディスクなど より構成される記憶部 5 1 3、 モデムなどより構成される通信部 5 1 4が接続さ れている。 通信部 5 1 4は、 インターネッ トを含むネットワークを介しての通信 処理を行う。 '
入出力インタフェース 5 1 0にはまた、 必要に応じてドライブ 5 1 5が接続さ れ、 磁気ディスク、 光ディスク、 光磁気ディスク、 或いは半導体メモリなどのリ ムーバブルメディア 9 2 1が適宜装着され、 それらから読み出されたコンビユー タプログラムが、 必要に応じて記憶部 5 1 3にインス トールされる。
一連の処理をソフトウェアにより実行させる場合には、 そのソフトウェアを構 成するプログラムが、 ネットワークや記録媒体からインストールされる。
この記録媒体は、 図 3. 2に示されるように、 装置本体とは別に、 ユーザにプロ グラムを提供するために配布される、 プログラムが記録されている磁気デイスク (フロッピディスクを含む) 、 光ディスク (CD - ROM (Compact Disk-Read Only Memory) , DVD (Digital Versatile Disk)を含む) 、 光磁気ディスク (MD (Min i - Di sk) を含む) 、 もしくは半導体メモリなどよりなるリムーバブルメディア 5 2 1により構成されるだけでなく、 装置本体に予め組み込まれた状態でユーザ に提供される、 プログラムが記録されている ROM 5 0 2や、 記憶部 5 1 3に含ま れるハードディスクなどで構成される。
なお、 本明細書において、 記録媒体に記録されるプログラムを記述するステツ プは、 記載された順序に沿って時系列的に行われる処理はもちろん、 必ずしも時 系列的に処理されなくとも、 並列的あるいは個別に実行される処理をも含むもの である。
また、 本明細書において、 システムとは、 複数の装置により構成される装置全 体を表すものである。 産業上の利用可能性
以上のごとく本発明によれば、 一般の線形符号の復号処理を行うことができる 特に、 一般の線形符号に対する復号方法としてサムプロダクトアルゴリズムを適 用した場合に、 容易に、 性能の良い復号処理を行うことができる。

Claims

請求の範囲
1 . 環 R上の線形符号の復号方法であって、
前記線形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる 低密度化処理ステップと、
前記低密度化処理ステップの処理により低密度化された前記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと を含むことを特徴とする復号方法。
2 . 前記環は、 素数のべき乗を元とする有限体である
ことを特徴とする請求の範囲第 1項に記載の復号方法。
3 . 前記線形符号は、 前記有限体上の BCH 符号またはリードソロモン符号を 含む
ことを特徴とする請求の範囲第 2項に記載の復号方法。
4 . 前記低密度化処理ステップは、
前記検査行列の各行の線形結合を計算する線形結合計算ステップと、 前記線形結合計算ステップの処理により計算された前記線形結合によつて得 られるべク トルの集合の中から、 符号補空間を張る、 より重みの低いベタ トル部 分集合を抽出し、 前記べク トル部分集合の全べク トルを行成分とする新たな検査 行列を作成する検査行列作成ステップと
を含むことを特徴とする請求の範囲第 1項に記載の復号方法。
5 . 前記低密度化処理ステップは、 前記有限体上の前記検查行列を、 前記有限 体の部分体上に所定の次元で展開する展開ステップをさらに含み、
前記線形結合計算ステップは、 前記展開ステップの処理により展開された前記 検査行列の各行の線形結合を計算する
ことを特徴とする請求の範囲第 4項に記載の復号方法。
6 . 環 R上の線形符号の復号装置であって、
前記線形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる 低密度化処理を行う低密度化処理手段と、 前記低密度化処理手段により低密度化された前記検査行列を用いて、 前記線形 符号をサムプロダク トアルゴリズムにより復号する復号手段と
を備えることを特徴とする復号装置。
7 . 前記環は、 素数のべき乗を元とする有限体である
ことを特徴とする請求の範囲第 6項に記載の復号装置。
8 . 前記線形符号は、 前記有限体上の BCH 符号またはリードソロモン符号を 含む
ことを特徴とする請求の範囲第 7項に記載の復号装置。
9 . 前記低密度化処理手段は、
前記検査行列の各行の線形結合を計算する線形結合計算手段と、
前記線形結合計算手段により計算された前記線形結合によって得られるベタ トルの集合の中から、 符号補空間を張る、 より重みの低いベク トル部分集合を抽 出し、 前記べクトル部分集合の全べク トルを行成分とする新たな検査行列を作成 する検査行列作成手段と
を備えることを特徴とする請求の範囲第 6項に記載の復号装置。
1 0 . 前記低密度化処理手段は、 前記有限体上の前記検査行列を、 前記有限体 の部分体上に所定の次元で展開する展開手段をさらに備え、
前記線形結合計算手段は、 前記展開手段により展開された前記検査行列の各行 の線形結合を計算する
ことを特徴とする請求の範囲第 9項に記載の復号装置。
1 1 . 畳み込み符号化された線形符号を軟判定復号する軟判定復号手段をさら に備え、
前記低密度化処理手段は、 前記軟判定復号手段により軟判定復号された前記線 形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる
ことを特徴とする請求の範囲第 6項に記載の復号装置。
1 2 . 前記軟判定復号手段による前記軟判定復号、 前記低密度化処理手段によ る前記低密度化処理、 および前記復号手段による前記復号を操り返し実行する ことを特徴とする請求の範囲第 1 1項に記載の復号装置。
1 3 . 環 R上の線形符号の復号をコンピュータに行わせるプログラムにおいて、 前記線形符号の検査行列に対して、 値が 1である要素の密度を低密度化させる 低密度化処理ステップと、
前記低密度化処理ステップの処理により低密度化された前記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと を含む処理をコンピュータに実行させることを特徴とするプログラム。
1 4 . 環 R上の線形符号の復号方法であって、
受信値を入力する入力ステップと、
前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列と、 前記入力ステップの処理により入力された受信値とを用いて、 前 記線形符号をサムプロダクトアルゴリズムにより復号する復号ステップと
を含むことを特徴とする復号方法。
1 5 . 環 R上の線形符号の復号装置であって、
受信値を入力する入力手段と、
前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列と、 前記入力手段により入力された受信値とを用いて、 前記線形符号 をサムプロダク トアルゴリズムにより復号する復号手段と
を備えることを特徴とする復号装置。
1 6 . 環 R上の線形符号の復号をコンピュータに行わせるプログラムにおいて、 受信値を入力する入力ステップと、
前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検查行列と、 前記入力ステップの処理により入力された受信値とを用いて、 前 記線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
1 7 . 記録媒体に情報を記録し、 前記記録媒体に記録された前記情報を再生す る記録再生装置であって、 環 R上の線形符号を前記記録媒体に記録する記録手段と、
前記記録手段により記録された前記線形符号を再生する再生手段と、
前記再生手段により再生された前記線形符号の検査行列に対して、 値が 1であ る要素の密度を低密度化させる低密度化処理を行う低密度化処理手段と、
前記低密度化処理手段により低密度化された前記検査行列を用いて、 前記線形 符号をサムプロダク トアルゴリズムにより復号する復号手段と
を備えることを特徴とする記録再生装置。
1 8 . 前記線形符号は、 所定の次元で積符号化された線形符号であり、
前記低密度化処理手段は、 前記検査行列に対して、 各次元に対して、 前記低密 度化処理を行い、
前記復号手段は、 前記低密度化された前記検查行列の各次元に対して、 サムプ ロダク トアルゴリズムによる復号を行う
ことを特徴とする請求の範囲第 1 7項に記載の記録再生装置。
1 9 . 前記低密度化処理手段による前記低密度化処理、 および前記復号手段に よる前記復号を繰り返し実行する
ことを特徴とする請求の範囲第 1 7項に記載の記録再生装置。
2 0 . 記録媒体に情報を記録し、 前記記録媒体に記録された前記情報を再生す る記録再生装置の記録再生方法であって、
環 R上の線形符号の、 前記記録媒体への記録を制御する記録制御ステップと、 前記記録制御ステツプの処理により記録が制御された前記線形符号の、 再生を 制御する再生制御ステツプと、
前記再生制御ステップの処理により再生が制御された前記線形符号の検査行列 に対して、 値が 1である要素の密度を低密度化させる低密度化処理を行う低密度 化処理ステップと、
前記低密度化処理ステップの処理により低密度化された前記検查行列を用いて、 刖己線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと を含むことを特徴とする記録再生方法。
2 1 . 記録媒体に情報を記録し、 前記記録媒体に記録された前記情報を再生す る処理をコンピュータに行わせるプログラムにおいて、
環 R上の線形符号の、 前記記録媒体への記録を制御する記録制御ステップと、 前記記録制御ステップの処理により記録が制御された前記線形符号の、 再生を 制御する再生制御ステップと、
前記再生制御ステップの処理により再生が制御された前記線形符号の検査行列 に対して、 値が 1である要素の密度を低密度化させる低密度化処理を行う低密度 化処理ステップと、
前記低密度化処理ステップの処理により低密度化された前記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと を含む処理をコンピュータに実行させることを特徴とするプログラム。
2 2 . 記録媒体に情報を記録し、 前記記録媒体に記録された前記情報を再生す る記録再生装置であって、
環 R上の線形符号を前記記録媒体に記録する記録手段と、
前記記録手段により記録された前記線形符号を再生する再生手段と、
前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列を用いて、 前記線形符号をサムプロダクトアルゴリズムにより復号す る復号手段と
を備えることを特徴とする記録再生装置。
2 3 . 記録媒体に情報を記録し、 前記記録媒体に記録された前記情報を再生す る記録再生装置の記録再生方法であって、
環 R上の線形符号の、 前記記録媒体への記録を制御する記録制御ステップと、 前記記録制御ステップの処理により記録が制御された前記線形符号の再生を制 御する再生制御ステップと、
前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列を用いて、 前記線形符号をサムプロダクトアルゴリズムにより復号す る復号ステップと を含むことを特徴とする記録再生方法。
2 4 . 記録媒体に情報を記録し、 前記記録媒体に記録された前記情報を再生す る処理をコンピュータに行わせるプログラムにおいて、
環 R上の線形符号の、 前記記録媒体への記録を制御する記録制御ステップと、 前記記録制御ステップの処理により記録が制御された前記線形符号の再生を制 御する再生制御ステップと、
前記線形符号の検查行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列を用いて、 前記線形符号をサムプロダクトアルゴリズムにより復号す る復号ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
2 5 . 記録媒体に記録された情報を再生する再生装置であって、
前記記録媒体に記録された、 環 R上の線形符号を再生する再生手段と、 前記再生手段により再生された前記線形符号の検査行列に対して、 値が 1であ る要素の密度を低密度化させる低密度化処理を行う低密度化処理手段と、 前記低密度化処理手段により低密度化された前記検査行列を用いて、 前記線形 符号をサムプロダク トアルゴリズムにより復号する復号手段と
を備えることを特徴とする再生装置。
2 6 . 前記線形符号は、 所定の次元で積符号化された線形符号であり、 前記低密度化処理手段は、 前記検査行列に対して、 各次元に対して、 前記低密 度化処理を行い、
前記復号手段は、 前記低密度化された前記検査行列の各次元に対して、 サムプ ロダク トアルゴリズムによる復号を行う
ことを特徴とする請求の範囲第 2 5項に記載の再生装置。
2 7 . 前記低密度化処理手段による前記低密度化処理、 および前記復号手段に よる前記復号を繰り返し実行する
ことを特徴とする請求の範囲第 2 5項に記載の再生装置。
2 8 . 記録媒体に記録された情報を再生する再生装置の再生方法であって、 前記記録媒体記録された、 環 R上の線形符号の再生を制御する再生制御ステッ プと、
前記再生制御ステップの処理により再生が制御された前記線形符号の検査行列 に対して、 値が 1である要素の密度を低密度化させる低密度化処理を行う低密度 化処理ステップと、
前記低密度化処理ステップの処理により低密度化された前記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと を含むことを特徴とする再生方法。
2 9 . 記録媒体に記録された情報を再生する処理をコンピュータに行わせるプ ログラムにおいて、
前記記録媒体記録された、 環 R上の線形符号の再生を制御する再生制御ステッ プと、
前記再生制御ステップの処理により再生が制御された前記線形符号の検査行列 に対して、 値が 1である要素の密度を低密度化させる低密度化処理を行う低密度 化処理ステップと、
前記低密度化処理ステップの処理により低密度化された前記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号する復号ステップと を含む処理をコンピュータに実行させることを特徴とするプログラム。
3 0 . 記録媒体に記録された情報を再生する再生装置であって、
前記記録媒体に記録された、 環 R上の線形符号を再生する再生手段と、 前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号す る復号手段と
を備えることを特徴とする再生装置。
3 1 . 記録媒体に記録された情報を再生する再生装置の再生方法であって、 前記記録媒体に記録された、 環 R上の線形符号の再生を制御する再生制御ステ ップと、 前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列を用いて、 前記線形符号をサムプロダク トアルゴリズムにより復号す る復号ステップと
を含むことを特徴とする再生方法。
3 2 . 記録媒体に記録された情報を再生する処理をコンピュータに行わせるプ ログラムにおいて、
前記記録媒体に記録された、 環 R上の線形符号の再生を制御する再生制御ステ ップと、
前記線形符号の検査行列に対し、 値が 1である要素の密度を低密度化させた前 記検査行列を用いて、 前記線形符号をサムプロダクトアルゴリズムにより復号す る復号ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
PCT/JP2004/007747 2003-05-30 2004-05-28 復号方法および復号装置、プログラム、記録再生装置および方法、並びに、再生装置および方法 WO2004107585A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP04735346A EP1524771B1 (en) 2003-05-30 2004-05-28 Decoding method, decoding device, program, recording/reproduction device and method, and reproduction device and method
DE602004030869T DE602004030869D1 (de) 2003-05-30 2004-05-28 Dekodierverfahren, dekodiervorrichtung, programm, aufzeichnungs-/wiedergabevorrichtung und -verfahren, und wiedergabevorrichtung und -verfahren
US10/523,452 US7607063B2 (en) 2003-05-30 2004-05-28 Decoding method and device for decoding linear code
JP2005506568A JP4432902B2 (ja) 2003-05-30 2004-05-28 復号装置および方法、プログラム、記録再生装置および方法、並びに、再生装置および方法
KR1020057001762A KR101143732B1 (ko) 2003-05-30 2004-05-28 복호 방법 및 복호 장치, 기록 재생 장치 및 방법과, 재생 장치 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003-153927 2003-05-30
JP2003153927 2003-05-30

Publications (1)

Publication Number Publication Date
WO2004107585A1 true WO2004107585A1 (ja) 2004-12-09

Family

ID=33487304

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/007747 WO2004107585A1 (ja) 2003-05-30 2004-05-28 復号方法および復号装置、プログラム、記録再生装置および方法、並びに、再生装置および方法

Country Status (8)

Country Link
US (1) US7607063B2 (ja)
EP (1) EP1524771B1 (ja)
JP (1) JP4432902B2 (ja)
KR (1) KR101143732B1 (ja)
CN (1) CN100546204C (ja)
DE (1) DE602004030869D1 (ja)
ES (1) ES2356912T3 (ja)
WO (1) WO2004107585A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8185807B2 (en) 2004-06-24 2012-05-22 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US8438459B2 (en) 2004-12-22 2013-05-07 Lg Electronics Inc. Apparatus and method for decoding using channel code

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050044963A (ko) * 2003-11-08 2005-05-16 삼성전자주식회사 q차 제곱 잉여류를 이용한 준순환 저밀도 패러티 검사부호 생성 방법
JP4534128B2 (ja) * 2004-03-05 2010-09-01 ソニー株式会社 符号化方法および装置
US7752521B2 (en) * 2004-10-12 2010-07-06 Nortel Networks Limited Low density parity check (LDPC) code
US7996746B2 (en) * 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
US7958424B2 (en) * 2005-06-22 2011-06-07 Trident Microsystems (Far East) Ltd. Multi-channel LDPC decoder architecture
US11327674B2 (en) 2012-06-05 2022-05-10 Pure Storage, Inc. Storage vault tiering and data migration in a distributed storage network
KR101119111B1 (ko) 2006-05-04 2012-03-16 엘지전자 주식회사 Ldpc 부호를 이용한 데이터 재전송 방법
US7814398B2 (en) 2006-06-09 2010-10-12 Seagate Technology Llc Communication channel with Reed-Solomon encoding and single parity check
WO2008034289A1 (en) * 2006-09-18 2008-03-27 Juntan Zhang Bit mapping scheme for an ldpc coded 32apsk system
WO2008034287A1 (en) 2006-09-18 2008-03-27 Juntan Zhang An interleaving scheme for an ldpc coded 32apsk system
US20110173509A1 (en) * 2006-09-18 2011-07-14 Availink, Inc. Bit mapping scheme for an ldpc coded 16apsk system
US8230299B2 (en) 2006-09-18 2012-07-24 Availink, Inc. Interleaving scheme for an LDPC coded QPSK/8PSK system
WO2008034285A1 (en) 2006-09-18 2008-03-27 Fengwen Sun A family of ldpc codes for video broadcasting applications
US7900126B2 (en) 2006-09-28 2011-03-01 Via Telecom, Inc. Systems and methods for reduced complexity LDPC decoding
KR101221911B1 (ko) * 2006-11-17 2013-01-15 엘지전자 주식회사 Ldpc 부호를 이용하여 재전송을 수행하는 방법
JP4858335B2 (ja) * 2007-07-10 2012-01-18 ソニー株式会社 符号化方法および符号化装置
KR101493999B1 (ko) * 2007-09-06 2015-02-17 삼성전자주식회사 선형 부호 생성 장치 및 방법
US8301979B2 (en) * 2008-10-07 2012-10-30 Sandisk Il Ltd. Low density parity code (LDPC) decoding for memory with multiple log likelihood ratio (LLR) decoders
US8135015B2 (en) * 2009-03-27 2012-03-13 Qualcomm Incorporated System and method of transmitting and receiving data frames
US8443255B2 (en) * 2010-08-26 2013-05-14 Qualcomm Incorporated Parity check matrix optimization and selection for iterative decoding
US8756473B1 (en) 2010-12-23 2014-06-17 Sk Hynix Memory Solutions Inc. Solid state device coding architecture for chipkill and endurance improvement
US8918705B1 (en) 2012-01-11 2014-12-23 Sk Hynix Memory Solutions Inc. Error recovery by modifying soft information
US8739008B2 (en) * 2012-02-22 2014-05-27 Silicon Motion, Inc. Method for determining parity check matrix utilized in flash memory system and related flash memory system thereof
US9613052B2 (en) * 2012-06-05 2017-04-04 International Business Machines Corporation Establishing trust within a cloud computing system
US9183095B1 (en) 2013-06-28 2015-11-10 Sk Hynix Memory Solutions Inc. Recovering from a program failure by combining write data
FR3032571B1 (fr) * 2015-02-11 2017-03-10 Commissariat Energie Atomique Methode de decodage iteratif de sequences lfsr a faible probabilite de fausse alarme
US9973212B2 (en) * 2015-09-08 2018-05-15 Storart Technology Co. Ltd. Decoding algorithm with enhanced parity check matrix and re-encoding scheme for LDPC code
CN111988112A (zh) * 2019-05-23 2020-11-24 华为技术有限公司 通信方法和装置
JP2023539208A (ja) * 2020-08-31 2023-09-13 マサチューセッツ インスティテュート オブ テクノロジー ネットワークコーディングベースのセキュア通信

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003115768A (ja) * 2001-07-11 2003-04-18 Internatl Business Mach Corp <Ibm> データの低密度パリティ検査符号化方法および装置
JP2004140828A (ja) * 2002-10-15 2004-05-13 Samsung Electronics Co Ltd エラー訂正符号化装置及びその方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3818442A (en) * 1972-11-08 1974-06-18 Trw Inc Error-correcting decoder for group codes
US6789227B2 (en) * 2001-07-05 2004-09-07 International Business Machines Corporation System and method for generating low density parity check codes using bit-filling
US7000167B2 (en) * 2001-08-01 2006-02-14 International Business Machines Corporation Decoding low density parity check codes
JP3833545B2 (ja) * 2002-02-13 2006-10-11 三菱電機株式会社 通信システム、受信機、送信機および通信方法
JP3893383B2 (ja) * 2002-02-28 2007-03-14 三菱電機株式会社 Ldpc符号用検査行列生成方法および検査行列生成装置
US7103818B2 (en) 2002-09-30 2006-09-05 Mitsubishi Electric Research Laboratories, Inc Transforming generalized parity check matrices for error-correcting codes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003115768A (ja) * 2001-07-11 2003-04-18 Internatl Business Mach Corp <Ibm> データの低密度パリティ検査符号化方法および装置
JP2004140828A (ja) * 2002-10-15 2004-05-13 Samsung Electronics Co Ltd エラー訂正符号化装置及びその方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HOSOYA ET AL.: "Brust Ayamari ni Tekishita Teimitsudo Parity Kensa Fugo no Kosei Hoho", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS GIJUTSU KENKYU HOKOKU, 22 July 2003 (2003-07-22), pages 61 - 66, XP002983077 *
RAINER LUCAS; MARTIN BOSSERT; MARKUS BREITBACK: "On Iterative Soft-Decisions Decoding of Linear Binary Block Codes and Product Codes", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, vol. 16/2, February 1998 (1998-02-01)
See also references of EP1524771A4 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8185807B2 (en) 2004-06-24 2012-05-22 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US8201059B2 (en) 2004-06-24 2012-06-12 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US8276050B2 (en) 2004-06-24 2012-09-25 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US8286062B2 (en) 2004-06-24 2012-10-09 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US8438459B2 (en) 2004-12-22 2013-05-07 Lg Electronics Inc. Apparatus and method for decoding using channel code

Also Published As

Publication number Publication date
EP1524771B1 (en) 2011-01-05
CN1698272A (zh) 2005-11-16
KR101143732B1 (ko) 2012-05-09
ES2356912T3 (es) 2011-04-14
EP1524771A4 (en) 2007-09-05
US20060015791A1 (en) 2006-01-19
EP1524771A1 (en) 2005-04-20
JP4432902B2 (ja) 2010-03-17
US7607063B2 (en) 2009-10-20
KR20060014020A (ko) 2006-02-14
JPWO2004107585A1 (ja) 2006-07-20
DE602004030869D1 (de) 2011-02-17
CN100546204C (zh) 2009-09-30

Similar Documents

Publication Publication Date Title
JP4432902B2 (ja) 復号装置および方法、プログラム、記録再生装置および方法、並びに、再生装置および方法
US7689888B2 (en) Decoding apparatus and method and program
JP5329239B2 (ja) 通信システムのための多体ベース符号の生成器および復号化器
KR100641052B1 (ko) Ldpc 부호기 및 복호기, 및 ldpc 부호화 방법 및복호화 방법
US7536623B2 (en) Method and apparatus for generating a low-density parity check code
JP3893383B2 (ja) Ldpc符号用検査行列生成方法および検査行列生成装置
US11115051B2 (en) Systems and methods for decoding error correcting codes
US8078936B2 (en) Encoding method, encoding apparatus, and program
JP2006238127A (ja) 復号装置および方法、並びにプログラム
JP4005084B2 (ja) 検査行列生成方法および検査行列生成装置
JP2006135980A (ja) 連結された反復型と代数型の符号化
JP2008035524A (ja) 反復確率伝搬を使用して記号ブロックを復号化する装置および方法
JP2009152655A (ja) 復号装置、復号方法、受信装置、および記憶媒体再生装置
KR20090041224A (ko) 연접 디코더 및 연접 디코딩 방법
JP4832447B2 (ja) チャネルコードを用いた復号化装置及び方法
JP2005051469A (ja) 符号化装置および符号化方法、並びにプログラム
Grinchenko et al. Improving performance of multithreshold decoder over binary erasure channel
JP5792256B2 (ja) 疎グラフ作成装置及び疎グラフ作成方法
JP4634423B2 (ja) 情報送受信方法、符号化装置および復号化装置
JP5952971B2 (ja) 通信路復号方法及び通信路復号装置
JP2004088449A (ja) 符号化装置及び符号化方法、並びに復号装置及び復号方法
JP2010028408A (ja) 情報処理装置、情報処理方法、およびプログラム
Cunche et al. Low-rate coding using incremental redundancy for GLDPC codes
Pal et al. Error-Control Coding Algorithms and Architecture for Modern Applications Powered by LDPC Codes and Belief Propagation
JP2004104686A (ja) 符号解析方法及び符号解析装置、並びに復号方法及び復号装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2005506568

Country of ref document: JP

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

ENP Entry into the national phase

Ref document number: 2006015791

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 10523452

Country of ref document: US

Ref document number: 20048006021

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2004735346

Country of ref document: EP

Ref document number: 1020057001762

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 2004735346

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10523452

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1020057001762

Country of ref document: KR