WO2011058760A1 - 符号化方法、復号方法、符号化器、及び、復号器 - Google Patents

符号化方法、復号方法、符号化器、及び、復号器 Download PDF

Info

Publication number
WO2011058760A1
WO2011058760A1 PCT/JP2010/006668 JP2010006668W WO2011058760A1 WO 2011058760 A1 WO2011058760 A1 WO 2011058760A1 JP 2010006668 W JP2010006668 W JP 2010006668W WO 2011058760 A1 WO2011058760 A1 WO 2011058760A1
Authority
WO
WIPO (PCT)
Prior art keywords
parity check
ldpc
time
parity
equation
Prior art date
Application number
PCT/JP2010/006668
Other languages
English (en)
French (fr)
Inventor
村上豊
Original Assignee
パナソニック株式会社
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
Priority to KR1020157010522A priority Critical patent/KR101730277B1/ko
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to KR1020117016127A priority patent/KR101660554B1/ko
Priority to EP10829720.1A priority patent/EP2501047B1/en
Priority to AU2010318464A priority patent/AU2010318464B2/en
Priority to US13/145,018 priority patent/US8595588B2/en
Priority to CN201080046146.XA priority patent/CN102577135B/zh
Priority to KR1020167024684A priority patent/KR101742451B1/ko
Priority to EP18204534.4A priority patent/EP3474454B1/en
Priority to JP2011515009A priority patent/JP5523452B2/ja
Priority to RU2012117558/08A priority patent/RU2532702C2/ru
Publication of WO2011058760A1 publication Critical patent/WO2011058760A1/ja
Priority to US14/055,617 priority patent/US8738992B2/en
Priority to US14/229,551 priority patent/US9032275B2/en
Priority to US14/597,810 priority patent/US9350387B2/en
Priority to US15/132,971 priority patent/US10075184B2/en
Priority to US16/048,949 priority patent/US10333551B2/en
Priority to US16/403,758 priority patent/US10693497B2/en
Priority to US16/862,239 priority patent/US11463107B2/en
Priority to US17/878,660 priority patent/US20230006696A1/en

Links

Images

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/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/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1154Low-density parity-check convolutional codes [LDPC-CC]
    • 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
    • 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/13Linear 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/157Polynomial evaluation, i.e. determination of a polynomial sum at a given value
    • 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/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Definitions

  • the present invention relates to an encoding method, a decoding method, an encoder, and a decoder using a low density parity check convolutional code (LDPC-CC: Low ⁇ ⁇ Density Parity Check-Convolutional Codes) that can support a plurality of coding rates. .
  • LDPC-CC Low ⁇ ⁇ Density Parity Check-Convolutional Codes
  • LDPC low density parity check
  • the LDPC code is an error correction code defined by a low-density parity check matrix H.
  • the LDPC code is a block code having a block length equal to the number N of columns of the check matrix H (see Non-Patent Document 1, Non-Patent Document 2, and Non-Patent Document 3).
  • random LDPC codes and QC-LDPC codes (QC: Quasi-Cyclic) have been proposed.
  • LDPC-BC Low-Density Parity-Check Block Code
  • LDPC-CC Low-Density Parity-Check Convolutional Codes
  • LDPC-CC is a convolutional code defined by a low-density parity check matrix.
  • the element h 1 (m) (t) of H T [0, n] takes 0 or 1. All elements other than h 1 (m) (t) are 0.
  • M represents the memory length in the LDPC-CC
  • n represents the length of the code word in the LDPC-CC.
  • 1 is arranged only in the diagonal term of the matrix and its neighboring elements, the lower left and upper right elements of the matrix are zero, and a parallelogram It has the feature of being a type matrix.
  • the LDPC-CC encoder defined by the parity check matrix H T [0, n] T is This is shown in FIG.
  • the LDPC-CC encoder is composed of 2 ⁇ (M + 1) shift registers of bit length c and mod 2 adder (exclusive OR operation).
  • the LDPC-CC encoder is a circuit that is much simpler than a circuit that performs multiplication of a generator matrix or an LDPC-BC encoder that performs operations based on the backward (forward) substitution method. There is a feature that it can be realized.
  • FIG. 2 shows a convolutional code encoder, it is not necessary to encode an information sequence by dividing it into fixed-length blocks, and an information sequence of an arbitrary length can be encoded.
  • Patent Document 1 describes an LDPC-CC generation method based on a parity check polynomial.
  • Patent Document 1 describes an LDPC-CC generation method using a time varying period 2, a time varying period 3, a time varying period 4, and a parity check polynomial whose time varying period is a multiple of 3.
  • Burshtein “Bounds on the maximum likelihood decoding error probability of low-density parity check codes,” IEEE Trans. Inf. Theory, vol.47, no.7, pp.2696-2710, Nov. 2001.
  • R. G. Gallager “A simple derivation of the coding theorem and some applications,” IEEE Trans. Inf. Theory, vol.IT-11, no.1, pp.3-18, Jan. 1965.
  • A. J. Viterbi “Error bounds for convolutional codes and an asymptotically optimum decoding algorithm,” IEEE Trans. Inf. Theory, vol.IT-13, no.2, pp.260-269, April 1967.
  • A. J. Viterbi, and J. K. Omura “Principles of digital communication and coding,” McGraw-Hill, New York 1979.
  • Patent Document 1 describes a generation method in detail for time-varying cycles 2, 3, 4 and LDPC-CC having a time-varying cycle multiple of 3, but the time-varying cycle is limited. is there.
  • An object of the present invention is to provide a time-varying LDPC-CC encoding method, decoding method, encoder, and decoder having high error correction capability.
  • One aspect of the coding method of the present invention is a low-density parity check convolutional code (time-varying period q) using a parity check polynomial of a coding rate (n ⁇ 1) / n (n is an integer of 2 or more).
  • LDPC-CC Low-Density Parity-Check Convolutional Codes
  • Equation (116) is expressed as g th
  • One aspect of the coding method of the present invention is a low-density parity check convolutional code (time-varying period q) using a parity check polynomial of coding rate (n ⁇ 1) / n (n is an integer of 2 or more).
  • One aspect of the decoding method of the present invention uses a parity check polynomial with a coding rate (n ⁇ 1) / n (n is an integer equal to or greater than 2), and has a low density with a time-varying period q (prime number greater than 3).
  • a parity check polynomial with a coding rate (n ⁇ 1) / n (n is an integer equal to or greater than 2), and has a low density with a time-varying period q (prime number greater than 3).
  • BP reliability propagation
  • One aspect of the decoder of the present invention uses a parity check polynomial of coding rate (n ⁇ 1) / n (n is an integer of 2 or more), and has a low density of time-varying period q (prime number greater than 3).
  • LDPC-CC Low-Density Parity-Check Convolutional Codes
  • a decoder that decodes an encoded information sequence that is encoded using the parity check polynomial satisfying 0, the equation being an input of the encoded information sequence and satisfying a g-th zero ( 116), decoding means for decoding the encoded information sequence using reliability propagation (BP: Belief Propagation) based on the parity check matrix generated by using (116).
  • BP Belief Propagation
  • the figure which shows the check matrix of LDPC-CC The figure which shows the structure of a LDPC-CC encoder The figure which shows an example of a structure of the check matrix of LDPC-CC of time-varying period m The figure which shows the structure of the parity check polynomial of LDPC-CC of time-varying period 3, and the check matrix H The figure which shows the relationship of the reliability propagation
  • the figure which shows an example of a structure of the check matrix H of LDPC-CC of coding rate 2/3 and time-varying period 2 The figure which shows an example of a structure of the parity check matrix of LDPC-CC of coding rate 2/3 and time-varying period m
  • Block diagram showing an example of a parity check matrix The figure which shows an example of the tree of LDPC-CC of time-varying period 6 The figure which shows an example of the tree of LDPC-CC of time-varying period 6 The figure which shows an example of a structure of the parity check matrix of LDPC-CC of coding rate (n-1) / n and time-varying period 6.
  • the figure which shows an example of the tree of LDPC-CC of time-varying period 7 The figure which shows the circuit example of the encoder of code rate 1/2
  • the figure which shows the circuit example of the encoder of code rate 1/2 Diagram for explaining the method of zero termination The figure which shows an example of a check matrix when performing zero termination
  • the figure which shows an example of a check matrix when performing tail biting The figure which shows an example of a check matrix when performing tail biting Diagram showing the outline of the communication system Conceptual diagram of communication system using erasure correction coding by LDPC code
  • Overall configuration of communication system The figure which shows an example of a structure of an erasure
  • elimination correction encoding related processing part The figure which shows an example of a structure of an erasure
  • Overall configuration of communication system The figure which shows an example of a structure of an erasure
  • the figure for demonstrating the outline of an encoding of an encoder The figure which shows an example of a structure of the erasure
  • correction correction code is performed, the case where erasure correction encoding is performed, and the case where it is not performed A diagram for explaining the relationship between check nodes and variable nodes corresponding to parity check polynomials # ⁇ and # ⁇
  • In the parity check matrix H illustrates a sub-matrix generated by extracting only the part related to X 1 (D)
  • the figure which shows the parity check matrix corresponding to the parity check polynomial (83) of coding rate (n-1) / n and the g-th (g 0, 1, ..., h-1) of time-varying period h.
  • the figure which shows an example of the rearrangement pattern in the case where it is comprised without distinguishing an information packet and a parity packet The figure for demonstrating the detail of the encoding method (encoding method in a packet level) in the layer higher than a physical layer
  • the figure for demonstrating the detail of another encoding method (encoding method in a packet level) in the layer higher than a physical layer The figure which shows the structural example of a parity group and a subparity packet.
  • Diagram for explaining the shortening method [method # 1-2] The figure for demonstrating the insertion rule in shortening method [method # 1-2] Diagram for explaining the relationship between the position where known information is inserted and error correction capability Diagram showing correspondence between parity check polynomial and time Diagram for explaining the shortening method [method # 2-2] Diagram for explaining the shortening method [method # 2-4]
  • Block diagram showing an example of the configuration of a portion related to encoding when the encoding rate is variable in the physical layer The block diagram which shows another example of a structure of the part relevant to encoding in the case of making a coding rate variable in a physical layer.
  • Block diagram showing an example of a main configuration of an encoder according to Embodiment 13 The figure which shows the internal structure of a 1st information calculating part.
  • FIG. 1 Diagram showing the internal configuration of the parity operation unit
  • equations (1-1) to (1-4) are considered.
  • X (D) is a polynomial expression of data (information)
  • P (D) is a polynomial expression of parity.
  • equations (1-1) to (1-4) a parity check polynomial in which four terms exist in each of X (D) and P (D) is used. This is because it is preferable to obtain four terms in order to obtain.
  • a1, a2, a3, and a4 are integers (however, a1 ⁇ a2 ⁇ a3 ⁇ a4, and all of a1 to a4 are different).
  • B1, b2, b3, and b4 are integers (where b1 ⁇ b2 ⁇ b3 ⁇ b4).
  • the parity check polynomial of equation (1-1) is referred to as “check equation # 1,” and the sub-matrix based on the parity check polynomial of equation (1-1) is referred to as a first sub-matrix H 1 .
  • A1, A2, A3, and A4 are integers (however, A1 ⁇ A2 ⁇ A3 ⁇ A4).
  • B1, B2, B3, and B4 are integers (B1 ⁇ B2 ⁇ B3 ⁇ B4).
  • check equation # 2 the sub-matrix based on a parity check polynomial of equation (1-2), the second sub-matrix H 2.
  • Equation (1-3) ⁇ 1, ⁇ 2, ⁇ 3, and ⁇ 4 are integers (where ⁇ 1 ⁇ ⁇ 2 ⁇ ⁇ 3 ⁇ ⁇ 4). ⁇ 1, ⁇ 2, ⁇ 3, and ⁇ 4 are integers (where ⁇ 1 ⁇ ⁇ 2 ⁇ ⁇ 3 ⁇ ⁇ 4).
  • the parity check polynomial of equation (1-3) is called “check equation # 3”, and the sub-matrix based on the parity check polynomial of equation (1-3) is referred to as a third sub-matrix H 3 .
  • Equation (1-4) E1, E2, E3, and E4 are integers (however, E1 ⁇ E2 ⁇ E3 ⁇ E4). Further, F1, F2, F3, and F4 are integers (where F1 ⁇ F2 ⁇ F3 ⁇ F4).
  • the parity check polynomial of equation (1-4) is called “check equation # 4”, and the sub-matrix based on the parity check polynomial of equation (1-4) is referred to as a fourth sub-matrix H 4 .
  • each order The remainder k obtained by dividing (a1, a2, a3, a4) by 4 becomes (0, 3, 2, 1), and the remainder (k) 0, 1, 2, 3 is one by one in the four coefficient sets. To be included.
  • the regular LDPC code is an LDPC code defined by a parity check matrix in which each column weight is constant, and has characteristics that characteristics are stable and an error floor is difficult to occur.
  • the column weight is 4, the characteristics are good, so that LDPC-CC with good reception performance can be obtained by generating LDPC-CC as described above.
  • Table 1 is an example of LDPC-CC (LDPC-CC # 1 to # 3) having a time-varying period of 4 and a coding rate of 1 ⁇ 2, in which the condition regarding the “remainder” is satisfied.
  • an LDPC-CC with a time varying period of 4 is defined by four parity check polynomials of “check polynomial # 1”, “check polynomial # 2”, “check polynomial # 3”, and “check polynomial # 4”.
  • the case where the coding rate is 1/2 has been described as an example.
  • the coding rate is (n ⁇ 1) / n
  • information X 1 (D), X 2 (D),. , X n ⁇ 1 (D) if each of the four coefficient sets satisfies the above “remainder” condition, it becomes a regular LDPC code, and good reception quality can be obtained.
  • equations (2-1) and (2-2) are considered.
  • X (D) is a polynomial expression of data (information)
  • P (D) is a polynomial expression of parity.
  • the parity check polynomial is such that four terms exist in each of X (D) and P (D). This is because it is preferable to obtain four terms.
  • a1, a2, a3, and a4 are integers (where a1 ⁇ a2 ⁇ a3 ⁇ a4).
  • B1, b2, b3, and b4 are integers (where b1 ⁇ b2 ⁇ b3 ⁇ b4).
  • the parity check polynomial of equation (2-1) is referred to as “check equation # 1”, and the sub-matrix based on the parity check polynomial of equation (2-1) is defined as the first sub-matrix H 1 .
  • A1, A2, A3, and A4 are integers (however, A1 ⁇ A2 ⁇ A3 ⁇ A4).
  • B1, B2, B3, and B4 are integers (B1 ⁇ B2 ⁇ B3 ⁇ B4).
  • check equation # 2 the sub-matrix based on a parity check polynomial of equation (2-2), the second sub-matrix H 2.
  • each order The remainder k obtained by dividing (a1, a2, a3, a4) by 4 becomes (0, 3, 2, 1), and the remainder (k) 0, 1, 2, 3 is one by one in the four coefficient sets. To be included.
  • the regular LDPC code is an LDPC code defined by a parity check matrix in which each column weight is constant, and has characteristics that characteristics are stable and an error floor is difficult to occur.
  • the row weight is 8
  • the characteristics are good, so that the LDPC-CC that can further improve the reception performance can be obtained by generating the LDPC-CC as described above.
  • Table 2 shows an example of LDPC-CC (LDPC-CC # 1, # 2) with a time-varying period of 2 and a coding rate of 1 ⁇ 2, in which the condition regarding the “remainder” is satisfied.
  • an LDPC-CC with a time-varying period of 2 is defined by two parity check polynomials of “check polynomial # 1” and “check polynomial # 2”.
  • Formulas (3-1) to (3-3) are considered as parity check polynomials for LDPC-CC with a time-varying period of 3.
  • X (D) is a polynomial expression of data (information)
  • P (D) is a polynomial expression of parity.
  • the parity check polynomial is such that three terms exist in each of X (D) and P (D).
  • a1, a2, and a3 are integers (where a1 ⁇ a2 ⁇ a3).
  • B1, b2, and b3 are integers (where b1 ⁇ b2 ⁇ b3).
  • the parity check polynomial of equation (3-1) is referred to as “check equation # 1”, and the sub-matrix based on the parity check polynomial of equation (3-1) is referred to as a first sub-matrix H 1 .
  • equation (3-2) A1, A2, and A3 are integers (where A1 ⁇ A2 ⁇ A3).
  • B1, B2, and B3 are integers (B1 ⁇ B2 ⁇ B3).
  • check equation # 2 the sub-matrix based on a parity check polynomial of equation (3-2), the second sub-matrix H 2.
  • ⁇ 1, ⁇ 2, and ⁇ 3 are integers (where ⁇ 1 ⁇ ⁇ 2 ⁇ ⁇ 3).
  • ⁇ 1, ⁇ 2, and ⁇ 3 are integers (where ⁇ 1 ⁇ ⁇ 2 ⁇ ⁇ 3).
  • the parity check polynomial of equation (3-3) is called “check equation # 3”, and the sub-matrix based on the parity check polynomial of equation (3-3) is referred to as a third sub-matrix H 3 .
  • a regular LDPC-CC code can be generated with the same row weights and equal column weights in all rows, with some exceptions. it can.
  • the exception means that the row weight and the column weight are not equal to other row weights and column weights in the first part and the last part of the parity check matrix.
  • the reliability in “check equation # 2” and the reliability in “check equation # 3” are accurately propagated to “check equation # 1”, and “check equation # 1”.
  • FIG. 4A shows a configuration of a parity check polynomial and a check matrix H of an LDPC-CC with a time varying period of 3.
  • “1” in the region 6202 in which the remainder is 1 in the coefficient of “check equation # 1” is the region in which the remainder is 2 in the coefficient of “check equation # 2” in the column calculation of the column 6509 in BP decoding.
  • the reliability is propagated from “1” of 6507 “1” and “1” of the region 6508 in which the remainder is 0 in the coefficient of “checking formula # 3”.
  • “1” in the region 6203 in which the remainder is 2 in the coefficient of “check equation # 1” is a region in which the remainder is 0 in the coefficient of “check equation # 2” in the column calculation of the column 6512 in BP decoding.
  • the reliability is propagated from “1” of 6510 “1” and “1” of the region 6511 in which the remainder is 1 in the coefficient of “check equation # 3”.
  • FIG. 4B shows the relationship of reliability propagation between the terms relating to X (D) of “checking formula # 1” to “checking formula # 3” in FIG. 4A.
  • the terms (a3, A3, ⁇ 3) enclosed by squares indicate coefficients with a remainder of 0 divided by 3. Further, the terms (a2, A2, ⁇ 1) surrounded by circles indicate a coefficient whose remainder is 1 after dividing by 3. In addition, the terms (a1, A1, ⁇ 2) surrounded by rhombuses indicate coefficients with a remainder of 2 divided by 3.
  • FIG. 4B shows the relationship of reliability propagation between the terms related to X (D) of “checking formula # 1” to “checking formula # 3”, but the same applies to the terms related to P (D). I can say that.
  • the reliability is propagated to the “checking formula # 1” from the coefficients having the remainders of 0, 1, and 2 divided by 3 among the coefficients of the “checking formula # 2”. That is, the reliability is propagated to the “checking formula # 1” from the coefficients of the “checking formula # 2” that are all different in the remainder after division by 3. Therefore, all the reliability levels with low correlation are propagated to “check formula # 1”.
  • the reliability is propagated to the “checking formula # 2” from the coefficients of the “checking formula # 1” whose remainders obtained by dividing by 3 are 0, 1, and 2. That is, the reliability is propagated to the “check equation # 2” from the coefficients of the “check equation # 1”, all of which have different remainders after division by 3. Also, the reliability is propagated to “check formula # 2” from the coefficients of which the remainder obtained by dividing by 3 is 0, 1, and 2 among the coefficients of “check formula # 3”. That is, the reliability is propagated to the “check equation # 2” from the coefficients of the “check equation # 3”, all of which have different remainders after division by 3.
  • the reliability is propagated to the “checking formula # 3” from the coefficients of which the remainder obtained by dividing by 3 is 0, 1, 2, among the coefficients of the “checking formula # 1”. That is, the reliability is propagated to the “check equation # 3” from the coefficients of the “check equation # 1”, all of which have different remainders after division by 3. Also, the reliability is propagated to “check formula # 3” from the coefficients of which the remainder obtained by dividing by 3 becomes 0, 1 and 2 among the coefficients of “check formula # 2”. That is, the reliability is propagated to the “checking formula # 3” from the coefficients of the “checking formula # 2”, all of which have different remainders after division by 3.
  • the reliability is always ensured in all column operations. Propagated. As a result, the reliability can be efficiently propagated in all the check equations, and the error correction capability can be further increased.
  • the LDPC-CC having the time varying period 3 has been described by taking the case of the coding rate 1/2 as an example, but the coding rate is not limited to 1/2.
  • coding rate (n ⁇ 1) / n (n is an integer of 2 or more)
  • X 1 (D) X 2 (D)
  • X n ⁇ 1 (D) X 1 (D)
  • X 2 (D) X 2 (D)
  • X n ⁇ 1 (D) If the condition regarding the “remainder” is satisfied in the three coefficient sets, a regular LDPC code is obtained, and good reception quality can be obtained.
  • equations (4-1) to (4-3) are considered.
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, ⁇ , be a polynomial representation of X n-1
  • P (D) is a polynomial expression of parity.
  • three terms for each of X 1 (D), X 2 (D),..., X n-1 (D), P (D) Is a parity check polynomial such that exists.
  • B1, b2, and b3 are integers (where b1 ⁇ b2 ⁇ b3).
  • the parity check polynomial of equation (4-1) is referred to as “check equation # 1”, and a sub-matrix based on the parity check polynomial of equation (4-1) is referred to as a first sub-matrix H 1 .
  • a sub-matrix based on the parity check polynomial of Equation (4-3) is referred to as a third sub-matrix H 3 .
  • Table 3 shows an example of an LDPC-CC (LDPC-CC # 1, # 2, # 3, # 4, # 5) with a time-varying period of 3 and a coding rate of 1 ⁇ 2, where the above-mentioned condition relating to “remainder” holds. , # 6).
  • the LDPC-CC with time-varying period 3 is represented by three parity check polynomials of “check (multinomial) equation # 1”, “check (multinomial) equation # 2”, and “check (multinomial) equation # 3”. Defined.
  • Table 4 shows an example of LDPC-CC with a time varying period of 3, a coding rate of 1/2, 2/3, 3/4, and 5/6, and Table 5 shows a time varying period of 3, a coding rate. Examples of 1/2, 2/3, 3/4, 4/5 LDPC-CC are shown.
  • the following conditions regarding “remainder” are applied to LDPC-CC whose time-varying period is a multiple of 3 (for example, the time-varying period is 6, 9, 12,). Then, it was confirmed that a code with good characteristics can be searched.
  • an LDPC-CC having a multiple of the time-varying period 3 having good characteristics will be described.
  • an example of LDPC-CC with a coding rate of 1/2 and a time varying period of 6 will be described.
  • Equations (5-1) to (5-6) are considered as parity check polynomials for LDPC-CC with a time-varying period of 6.
  • X (D) is a polynomial expression of data (information)
  • P (D) is a polynomial expression of parity.
  • a1,1, a1,2, and a1,3 are integers (where a1,1 ⁇ a1,2 ⁇ a1,3).
  • b1,1, b1,2, b1,3 are integers (where b1,1 ⁇ b1,2 ⁇ b1,3).
  • the parity check polynomial of equation (5-1) is referred to as “check equation # 1”, and the sub-matrix based on the parity check polynomial of equation (5-1) is referred to as a first sub-matrix H 1 .
  • a2, 1, a2, 2, a2, 3 are integers (where a2, 1 ⁇ a2, 2 ⁇ a2, 3).
  • b2,1, b2,2, b2,3 are integers (where b2,1 ⁇ b2,2 ⁇ b2,3).
  • a3, 1, a3, 2, a3, 3 are integers (where a3, 1 ⁇ a3, 2 ⁇ a3, 3). Also, b3, 1, b3, 2, b3, 3 are integers (where b3, 1 ⁇ b3, 2 ⁇ b3, 3).
  • the parity check polynomial of equation (5-3) is called “check equation # 3”, and the sub-matrix based on the parity check polynomial of equation (5-3) is referred to as a third sub-matrix H 3 .
  • a4, 1, a4, 2, a4, 3 are integers (where a4, 1 ⁇ a4, 2 ⁇ a4, 3).
  • b4, 1, b4, 2, b4, 3 are integers (where b4, 1 ⁇ b4, 2 ⁇ b4, 3).
  • the parity check polynomial of equation (5-4) is referred to as “check equation # 4”, and the sub-matrix based on the parity check polynomial of equation (5-4) is referred to as a fourth sub-matrix H 4 .
  • Equation (5-5) a5, 1, a5, 2, and a5, 3 are integers (where a5, 1 ⁇ a5, 2 ⁇ a5, 3). Also, b5, 1, b5, 2, and b5, 3 are integers (where b5, 1 ⁇ b5, 2 ⁇ b5, 3). Referred to parity check polynomial of equation (5-5) and "check equation # 5", a sub-matrix based on a parity check polynomial of equation (5-5), the fifth sub-matrix H 5.
  • a6, 1, a6, 2, a6, 3 are integers (where a6, 1 ⁇ a6, 2 ⁇ a6, 3).
  • B6, 1, b6, 2, b6, 3 are integers (where b6, 1 ⁇ b6, 2 ⁇ b6, 3).
  • the parity check polynomial of equation (5-6) is called “check equation # 6”, and the sub-matrix based on the parity check polynomial of equation (5-6) is referred to as a sixth sub-matrix H 6 .
  • the reliability in “inspection formula # 1 or inspection formula # 4” is accurately compared with “inspection formula # 3”. Or, the reliability in the inspection formula # 6 ”is accurately propagated.
  • the reliability in “inspection formula # 1 or inspection formula # 4” is accurately determined, “inspection formula # 2, Or, the reliability in the inspection formula # 5 ”is accurately transmitted.
  • the LDPC-CC having the time varying period 6 retains better error correction capability as in the case where the time varying period is 3.
  • FIG. 4C shows the relationship of reliability propagation between the terms relating to X (D) of “check equation # 1” to “check equation # 6”.
  • FIG. 4C shows the reliability propagation relationship between the terms related to X (D) of “checking formula # 1” to “checking formula # 6”, but the same applies to the terms related to P (D). I can say that.
  • the LDPC-CC with the time varying period 6 has been described by taking the case of the coding rate 1/2 as an example, but the coding rate is not limited to 1/2.
  • coding rate (n ⁇ 1) / n (n is an integer of 2 or more)
  • X 1 (D) X 2 (D)
  • X n ⁇ 1 (D) In the three coefficient sets, if the above-mentioned condition relating to “remainder” is satisfied, the possibility of obtaining good reception quality is increased.
  • equations (7-1) to (7-6) are considered.
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, ⁇ , be a polynomial representation of X n-1
  • P (D) is a polynomial expression of parity.
  • three terms for each of X 1 (D), X 2 (D),..., X n-1 (D), P (D) Is a parity check polynomial such that exists.
  • the parity bit at time i is Pi and the information bits are X i, 1 , X i, 2 ,..., X i, n ⁇ 1 .
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, ⁇ , be a polynomial representation of X n-1
  • P (D) is a polynomial expression of parity.
  • the parity check polynomial is such that three terms exist in each of (D) and P (D).
  • the time varying period 3g represented by the parity check polynomials of the equations (9-1) to (9-3g), the coding rate In an LDPC-CC of (n ⁇ 1) / n (n is an integer of 2 or more), if the following condition ( ⁇ condition # 2>) is satisfied, the possibility that higher error correction capability can be obtained increases.
  • the parity bit at time i is Pi and the information bits are X i, 1 , X i, 2 ,..., X i, n ⁇ 1 .
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, ⁇ , be a polynomial representation of X n-1
  • P (D) is a polynomial expression of parity.
  • three terms for each of X 1 (D), X 2 (D),..., X n-1 (D), P (D) Is a parity check polynomial such that exists.
  • the parity bit at time i is Pi and the information bits are X i, 1 , X i, 2 ,..., X i, n ⁇ 1 .
  • a # k, p, 1 % 3, a # k, p, 2 % 3, a # k, p, 3 % 3), ..., (A # k, n-1,1 % 3, a # k, n-1,2 % 3, a # k, n-1,3 % 3) is Any one of (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0) Become.
  • ⁇ Condition # 3> for Expressions (11-1) to (11-3g) has the same relationship as ⁇ Condition # 2> for Expressions (9-1) to (9-3g). Adding the following condition ( ⁇ condition # 4>) in addition to ⁇ condition # 3> to formulas (11-1) to (11-3g) creates an LDPC-CC with higher error correction capability The possibility of being able to do increases.
  • the value of 6g orders (the two orders constitute one set, so there are 6g orders constituting the 3g set) is an integer from 0 to 3g-1 (0, 1, 2, 3, 4 , ..., 3g-2, 3g-1), all values other than multiples of 3 (that is, 0, 3, 6, ..., 3g-3) exist.
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, ⁇
  • P (D) is a polynomial expression of parity.
  • X 1 (D), X 2 (D),..., X n-1 (D), P (D) each have three terms.
  • X 1 (D), X 2 (D),..., X n ⁇ 1 (D), and P (D) have a D 0 term.
  • K 1, 2, 3, ..., 3g
  • the parity bit at time i is Pi and the information bits are X i, 1 , X i, 2 ,..., X i, n ⁇ 1 .
  • a # 3g-2, n-1,1 % 3, a # 3g-2, n-1,2 % 3) is One of (1, 2) and (2, 1).
  • P 1, 2, 3,..., N ⁇ 1
  • a # 3g-1,1,1 % 3, a # 3g-1,1,2 % 3 is One of (1, 2) and (2, 1).
  • a # 3g-1,2,1 % 3, a # 3g-1,2,2 % 3) is One of (1, 2) and (2, 1).
  • ⁇ Condition # 5> for Expressions (13-1) to (13-3g) has the same relationship as ⁇ Condition # 2> for Expressions (9-1) to (9-3g). If the following condition ( ⁇ condition # 6>) is added to the expressions (13-1) to (13-3g) in addition to ⁇ condition # 5>, an LDPC-CC having high error correction capability can be created. The possibility increases.
  • P 1, 2, 3, ..., 3g
  • the following conditions are satisfied in the order of X 3 (D) in equations (13-1) to (13-3g).
  • P 1, 2, 3, ..., 3g
  • K 1, 2, 3,..., N ⁇ 1
  • the following conditions are satisfied in the order of X n-1 (D) in the equations (13-1) to (13-3g).
  • ⁇ Condition # 6> instead of ⁇ Condition # 6>, ⁇ Condition # 6 ′> is used, that is, even if ⁇ Condition # 6 ′> is added in addition to ⁇ Condition # 5>, a higher error correction is possible. The possibility that an LDPC-CC having the capability can be created is increased.
  • P 1, 2, 3, ..., 3g
  • the following conditions are satisfied in the order of X 3 (D) in equations (13-1) to (13-3g).
  • P 1, 2, 3, ..., 3g
  • K 1, 2, 3,..., N ⁇ 1 Or ⁇ ⁇ ⁇ Or The following conditions are satisfied in the order of X n-1 (D) in the equations (13-1) to (13-3g).
  • the LDPC-CC having a time varying period of 3 g and a coding rate (n ⁇ 1) / n (n is an integer of 2 or more) has been described above.
  • X (D) is a polynomial expression of data (information) X
  • P (D) is a polynomial expression of parity.
  • the parity check polynomial is such that three terms exist in each of X (D) and P (D).
  • the sub-matrix based on the parity check polynomial of the equation (15-k) is K-th sub-matrix H k .
  • X (D) is a polynomial expression of data (information) X
  • P (D) is a polynomial expression of parity.
  • the parity check polynomial is such that three terms exist in each of X and P (D).
  • a parity bit at a time point i is represented by Pi and an information bit is represented by X i, 1 .
  • (A # 3,1,1 % 3, a # 3,1,2 % 3, a # 3,1,3 % 3) is (0,1,2), (0,2,1), ( 1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0).
  • (A # k, 1,1 % 3, a # k, 1,2 % 3, a # k, 1,3 % 3) is (0,1,2), (0,2,1), ( 1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0).
  • (Thus, k 1, 2, 3,..., 3g) And, ⁇ ⁇ ⁇ And, (A # 3g-2,1,1% 3 , a # 3g-2,1,2% 3, a # 3g-2,1,3% 3) is (0,1,2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0). And, (A # 3g-1,1,1 % 3, a # 3g-1,1,2 % 3, a # 3g-1,1,3 % 3) is (0,1,2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0).
  • (A # 3g, 1,1 % 3, a # 3g, 1,2 % 3, a # 3g, 1,3 % 3) is (0,1,2), (0,2,1), ( 1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0).
  • the combination of the orders of P (D) satisfies the following condition. (B # 1,1 % 3, b # 1,2 % 3), (B # 2,1 % 3, b # 2,2 % 3), (B # 3, 1 % 3, b # 3, 2 % 3), ... (B # k, 1 % 3, b # k, 2 % 3), ...
  • ⁇ Condition # 3-1> for Expressions (17-1) to (17-3g) has the same relationship as ⁇ Condition # 2-1> for Expressions (15-1) to (15-3g). If the following condition ( ⁇ condition # 4-1>) is added to the expressions (17-1) to (17-3g) in addition to ⁇ condition # 3-1>, LDPC having higher error correction capability -Increased possibility of creating CC.
  • X (D) is a polynomial expression of data (information) X
  • P (D) is a polynomial expression of parity.
  • the parity check polynomial is such that three terms exist in each of X (D) and P (D), and X (D) and P (D) Will have a term of D 0 .
  • K 1, 2, 3, ..., 3g
  • (Thus, k 1, 2, 3,..., 3g) And, ⁇ ⁇ ⁇ And, (A # 3g-2,1,1% 3 , a # 3g-2,1,2% 3) is a one of the (1,2), (2,1). And, (A # 3g-1,1,1 % 3, a # 3g-1,1,2 % 3) is either (1,2) or (2,1). And, (A # 3g, 1,1 % 3, a # 3g, 1,2 % 3) is either (1,2) or (2,1).
  • ⁇ Condition # 5-1> for Expressions (19-1) to (19-3g) has the same relationship as ⁇ Condition # 2-1> for Expressions (15-1) to (15-3g).
  • ⁇ Condition # 6-1> When the following condition ( ⁇ condition # 6-1>) is added to the expressions (19-1) to (19-3g) in addition to ⁇ condition # 5-1>, LDPC having higher error correction capability -Increased possibility of creating CC.
  • ⁇ Condition # 6-1> instead of ⁇ Condition # 6-1>, ⁇ Condition # 6'-1> is used. In other words, ⁇ Condition # 6'-1> is added in addition to ⁇ Condition # 5-1> to create a code. Even so, the possibility that an LDPC-CC having higher error correction capability can be created increases.
  • Table 6 lists LDPC-CC having a good error correction capability and a coding rate of 1/2 and a time-varying period of 6.
  • LDPC-CC having a time varying period g with good characteristics has been described above.
  • the generation matrix G is obtained corresponding to the check matrix H designed in advance.
  • FIG. 5 shows information on the (7, 5) convolutional code.
  • the data at the time point i is expressed as X i
  • the parity bit is expressed as P i
  • the transmission sequence W i (X i , P i ).
  • the check matrix H can be expressed as shown in FIG. At this time, the following relational expression (23) is established.
  • a parity check matrix H is used to approximate BP (Belief Propagation) (reliability propagation) decoding and BP decoding as shown in Non-Patent Document 4, Non-Patent Document 5, and Non-Patent Document 6.
  • Decoding using reliability propagation such as min-sum decoding, offsetoffBP decoding, Normalized BP decoding, and shuffled BP decoding can be performed.
  • time-invariant / time-varying LDPC-CC based on convolutional code (coding rate (n-1) / n) (n: natural number)]
  • coding rate (n-1) / n) (n: natural number)
  • the code defined by the parity check matrix based on the parity check polynomial of Equation (24) is referred to herein as time invariant LDPC-CC.
  • the information X 1, j , X 2, j ,..., X n ⁇ 1, j and the parity P j at the time point j satisfy the parity check polynomial of Expression (26).
  • “j mod m” is a remainder obtained by dividing j by m.
  • a code defined by a parity check matrix based on the parity check polynomial of Equation (26) is called a time-varying LDPC-CC here.
  • the time-invariant LDPC-CC defined by the parity check polynomial of Equation (24) and the time-varying LDPC-CC defined by the parity check polynomial of Equation (26) sequentially register the parity bits and It has a feature that it can be easily obtained by exclusive OR.
  • FIG. 6 shows the configuration of LDPC-CC parity check matrix H of time varying period 2 based on equations (24) to (26) at a coding rate of 2/3.
  • the two check polynomials having different time-varying periods 2 based on the formula (26) are named “check formula # 1” and “check formula # 2”.
  • (Ha, 111) is a portion corresponding to “checking formula # 1”
  • (Hc, 111) is a portion corresponding to “checking formula # 2”.
  • (Ha, 111) and (Hc, 111) are defined as sub-matrices.
  • the LDPC-CC parity check matrix H of the proposed time-varying period 2 is represented by the first sub-matrix representing the parity check polynomial of “check equation # 1” and the parity check polynomial of “check equation # 2”.
  • the second sub-matrix can be defined. Specifically, in the check matrix H, the first sub-matrix and the second sub-matrix are alternately arranged in the row direction. In the case of a coding rate of 2/3, as shown in FIG. 6, in the i-th row and the i + 1-th row, the sub-matrix is shifted to the right by 3 columns.
  • the i-th row sub-matrix and the i + 1-th row sub-matrix are different sub-matrices. That is, one of the sub-matrices (Ha, 11) or (Hc, 11) is the first sub-matrix, and the other is the second sub-matrix.
  • the parity P mi + 1 at the time point mi + 1 is obtained using the “check equation # 1”
  • the parity P mi + 2 at the time point mi + 2 is obtained using the “check equation # 2”
  • the parity P mi + m at the time point mi + m is obtained.
  • Such an LDPC-CC code is -The encoder can be easily configured and the parity bits can be obtained sequentially.-It has the advantages that the termination bit can be reduced and the reception quality at the time of puncture can be improved.
  • FIG. 7 shows the configuration of the LDPC-CC parity check matrix having the coding rate of 2/3 and the time varying period m described above.
  • (H 1 , 111) is a portion corresponding to “checking formula # 1”
  • (H 2 , 111) is a portion corresponding to “checking formula # 2”
  • (H m , 111) is a portion corresponding to “inspection formula #m”.
  • (H 1 , 111) is defined as the first sub-matrix
  • (H 2 , 111) is defined as the second sub-matrix
  • (H m , 111) is defined as the m-th sub-matrix.
  • the LDPC-CC parity check matrix H of the proposed time-varying period m represents the first sub-matrix representing the parity check polynomial of “check equation # 1” and the parity check polynomial of “check equation # 2”.
  • the first sub-matrix to the m-th sub-matrix are periodically arranged in the row direction (see FIG. 7).
  • the sub-matrix is shifted to the right by three columns in the i-th row and the i + 1-th row (see FIG. 7).
  • the case of the coding rate 2/3 has been described as an example of the time-invariant / time-varying LDPC-CC based on the convolutional code of the coding rate (n ⁇ 1) / n.
  • a parity check matrix of time-invariant / time-variant LDPC-CC based on a convolutional code with a coding rate (n ⁇ 1) / n can be created.
  • (H 1 , 111) is a portion (first sub-matrix) corresponding to “check equation # 1”, and (H 2 , 111) is “check”.
  • a part (second sub-matrix) corresponding to “Expression # 2”,..., (H m , 111) is a part (m-th sub-matrix) corresponding to “check expression #m”,
  • the number of “1” s excluding H k is n.
  • the sub-matrix is shifted to the right by n columns in the i-th row and the i + 1-th row (see FIG. 8).
  • the transmit vector u, u (X 1,0, X 2,0, ⁇ , X n-1,0, P 0, X 1,1, X 2,1, ⁇ , X n-1 , 1, P 1, ⁇ , X 1, k, X 2, k, ⁇ , X n-1, k, P k, ⁇ )
  • Hu 0 is satisfied ( (Refer Formula (23)).
  • the LDPC-CC encoder 100 mainly includes a data operation unit 110, a parity operation unit 120, a weight control unit 130, and a mod2 adder (exclusive OR operation) unit 140.
  • the data operation unit 110 includes shift registers 111-1 to 111-M and weight multipliers 112-0 to 112-M.
  • the parity operation unit 120 includes shift registers 121-1 to 121-M and weight multipliers 122-0 to 122-M.
  • the weight multipliers 112-0 to 112-M and 122-0 to 122-M set the values of h 1 (m) and h 2 (m) to 0/1 according to the control signal output from the weight control unit 130. Switch to.
  • the weight control unit 130 outputs the values of h 1 (m) and h 2 (m) at the timing based on the check matrix held therein, and the weight multipliers 112-0 to 112-M, 122-0. To 122-M.
  • the mod2 adder 140 adds all the mod2 calculation results to the outputs of the weight multipliers 112-0 to 112-M, 122-0 to 122-M, and calculates v2 , t .
  • the LDPC-CC encoder 100 can perform LDPC-CC encoding according to a parity check matrix.
  • the LDPC-CC encoder 100 is a time-varying convolutional encoder.
  • LDPC-CC with a coding rate (q-1) / q (q-1) data operation units 110 are provided, and a mod2 adder 140 adds mod2 outputs (mod2 addition) (Exclusive OR operation) may be performed.
  • Equations (27-0) to (27-5) are parity check polynomials (satisfying 0) of LDPC-CC with coding rate (n ⁇ 1) / n (n is an integer of 2 or more) and time-varying period 6 think of.
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, a polynomial representation of ⁇ X n-1, P (D) is a polynomial expression of parity.
  • the equations (27-0) to (27-5) for example, when the coding rate is 1/2, only the terms X 1 (D) and P (D) exist, and X 2 (D),. ⁇ The term of X n-1 (D) does not exist.
  • a # q, p, 1 , a # q, p, 2 and a # q, p, 3 are natural numbers, and a # q, p, 1 ⁇ a # q, p, 2 , A # q, p, 1 ⁇ a # q, p, 3 , a # q, p, 2 ⁇ a # q, p, 3 .
  • the parity check polynomial of equation (27-q) is called “check equation #q”, and the sub-matrix based on the parity check polynomial of equation (27-q) is called q-th sub-matrix H q .
  • the 0th sub-matrix H 0 , the first sub-matrix H 1 , the second sub-matrix H 2 , the third sub-matrix H 3 , the fourth sub-matrix H 4 considered LDPC-CC of varying period 6 when generating the fifth sub-matrix H 5.
  • the parity bit at time i is Pi and the information bits are X i, 1 , X i, 2 , ..., represented by X i, n-1 .
  • the parity check matrix can be created by the method described in [LDPC-CC based on parity check polynomial].
  • the 0th sub-matrix H 0 , the first sub-matrix H 1 , the second sub-matrix H 2 , the third sub-matrix H 3 , the fourth sub-matrix H 4 , and the fifth sub-matrix H 5 are expressed by the equation (30-0). ) To (30-5).
  • n consecutive “1” s represent X 1 (D) and X 2 (in formulas (29-0) to (29-5)).
  • D corresponds to the terms D
  • the parity check matrix H can be expressed as shown in FIG.
  • the parity check matrix H the sub-matrix is shifted to the right by n columns in the i-th row and the i + 1-th row (see FIG. 10).
  • the transmission vector u, u (X 1,0, X 2,0, ⁇ , X n-1,0, P 0, X 1,1, X 2,1, ⁇ , X n -1,1, P 1, ⁇ , X 1, k, X 2, k, ⁇ , X n-1, k, P k, ⁇ )
  • Hu 0 is established To do.
  • ⁇ Condition # 1-1> and ⁇ Condition # 1-2> are important for the terms related to X 1 (D), X 2 (D),..., X n-1 (D). It becomes.
  • “%” means modulo. For example, “ ⁇ % 6” indicates a remainder when ⁇ is divided by 6.
  • LDPC-CC satisfying the constraint condition becomes a regular LDPC code, so that high error correction capability can be obtained. it can.
  • the parity check polynomials (29-0) to (29-5) of the LDPC-CC with the coding rate (n ⁇ 1) / n, X Consider the case where 1 (D) has two terms. Then, in this case, the parity check polynomial is expressed as in equations (31-0) to (31-5).
  • the parity check polynomial of equation (31-q) is referred to as “check equation #q”.
  • the tree is drawn from “check expression # 0”.
  • ⁇ (single circle) and ⁇ (double circle) indicate variable nodes, and ⁇ (square) indicates a check node.
  • ⁇ (single circle) indicates a variable node related to X 1 (D)
  • ⁇ (double circle) indicates a variable node related to D a # q, 1,1 X 1 (D).
  • #Y has only a limited value of 0 and 3. In other words, even if the time varying period is increased, the reliability is propagated only from a specific parity check polynomial, which means that the effect of increasing the time varying period cannot be obtained.
  • the condition ⁇ Condition # 2-1> is satisfied.
  • time-varying period 7 is an important condition for obtaining the effect of increasing the time-varying period. This point will be described in detail below.
  • a # q, p, 1 , a # q, p, 2 is a natural number of 1 or more, and a # q, p, 1 ⁇ a # q, p, 2 holds To do.
  • the parity bit at the time point i is Pi and the information bits are X i, 1 , X i, 2 , ..., represented by X i, n-1 .
  • the parity check polynomial of equation (32- (k)) is established.
  • the parity check matrix can be created by the method described in [LDPC-CC based on parity check polynomial].
  • the 0th sub-matrix, the 1st sub-matrix, the 2nd sub-matrix, the 3rd sub-matrix, the 4th sub-matrix, the 5th sub-matrix and the 6th sub-matrix are expressed by the equations (34-0) to (34-6). ).
  • consecutive n “1” s are X 1 (D) and X 2 (D) in the formulas (32-0) to (32-6). ,..., X n-1 (D) and P (D).
  • the conditions of the parity check polynomial in the equations (32-0) to (32-6) for obtaining a high error correction capability are as follows in the same manner as in the time varying period 6.
  • “%” means modulo.
  • “ ⁇ % 7” indicates a remainder when ⁇ is divided by 7.
  • LDPC-CC satisfying the constraint condition is a regular LDPC code, and thus obtains high error correction capability. be able to.
  • an LDPC-CC parity check polynomial (32-0) to (32-6) with a coding rate (n-1) / n Consider the case where 1 (D) has two terms. Then, in this case, the parity check polynomial is expressed as in Expressions (35-0) to (35-6).
  • the parity check polynomial of equation (35-q) is referred to as “check equation #q”.
  • the tree is drawn from “check expression # 0”.
  • ⁇ (single circle) and ⁇ (double circle) indicate variable nodes, and ⁇ (square) indicates a check node.
  • ⁇ (single circle) indicates a variable node related to X 1 (D)
  • ⁇ (double circle) indicates a variable node related to D a # q, 1,1 X 1 (D).
  • ⁇ Condition # 3-1> and ⁇ Condition # 3-2> described below are one of the important requirements for the LDPC-CC to obtain a high error correction capability.
  • “%” means modulo.
  • “ ⁇ % q” indicates a remainder when ⁇ is divided by q.
  • Table 7 shows LDPC-CC parity check polynomials with a time-varying period of 7 and coding rates of 1/2 and 2/3.
  • Table 8 shows an LDPC-CC parity check polynomial with a coding rate of 4/5 when the time varying period is 11.
  • an LDPC-CC having a time-varying period q (q is a prime number greater than 3) with higher error correction capability can be generated by further tightening the constraints of ⁇ Condition # 4-1, Condition # 4-2>.
  • the condition is that ⁇ condition # 5-1> and ⁇ condition # 5-2>, or ⁇ condition # 5-1> or ⁇ condition # 5-2> are satisfied.
  • X 1 (D), X 2 (D),..., X n ⁇ 1 are LDPC-CC g-th parity check polynomials of time-varying period q (q is a prime number greater than 3).
  • q is a prime number greater than 3
  • P (D) the expression (36) in which the number of terms is 3 was handled.
  • Formula (36) even when the number of terms in any of X 1 (D), X 2 (D),..., X n-1 (D), P (D) is 1 or 2, There is a possibility that high error correction capability can be obtained.
  • a method of setting the number of terms of X 1 (D) to 1 or 2 there are the following methods.
  • the number of terms of X 1 (D) is 1 or 2.
  • the number of terms of X 1 (D) may be 1 or 2.
  • X 1 (D) may have four or more terms. The same applies to X 2 (D),..., X n-1 (D), P (D). At this time, the condition described above is excluded for the increased number of terms.
  • the equation (36) is an LDPC-CC g-th parity check polynomial with a coding rate (n ⁇ 1) / n and a time-varying period q (q is a prime number larger than 3).
  • the g-th parity check polynomial is expressed as Expression (37-1).
  • the g-th parity check polynomial is expressed as in Expression (37-2).
  • the g-th parity check polynomial is expressed as in Expression (37-3).
  • the g-th parity check polynomial is expressed as in Expression (37-4).
  • the g-th parity check polynomial is expressed as in Expression (37-5).
  • ⁇ Condition # 6-1>, ⁇ Condition # 6-2>, and ⁇ Condition # 6-3> described below are used for LDPC-CC to obtain high error correction capability.
  • % means modulo.
  • ⁇ % q indicates a remainder when ⁇ is divided by q.
  • the number of terms of X 1 (D) is 1 or 2.
  • the number of terms of X 1 (D) may be 1 or 2.
  • X 1 (D) may have four or more terms. The same applies to X 2 (D),..., X n-1 (D), P (D). At this time, the condition described above is excluded for the increased number of terms.
  • time-varying period h (h is an integer other than a prime number greater than 3): Formula (39)]
  • a # g, p, 1 and a # g, p, 2 are natural numbers of 1 or more, and a # g, p, 1 ⁇ a # g, p, 2 is established.
  • ⁇ Condition # 9-1> and ⁇ Condition # 9-2> described below are one of the important requirements for the LDPC-CC to obtain a high error correction capability.
  • “%” means modulo.
  • “ ⁇ % h” indicates a remainder when ⁇ is divided by h.
  • any one of the parity check polynomials satisfying 0 of h without limiting the number of terms of X 1 (D) to 4 or more (h ⁇ 1 or less)
  • X 1 (D) may have four or more terms. The same applies to X 2 (D),..., X n-1 (D), P (D). At this time, the condition described above is excluded for the increased number of terms.
  • the equation (39) is a g-th parity check polynomial of LDPC-CC (satisfying 0) with a coding rate (n ⁇ 1) / n and a time-varying period h (h is an integer that is not a prime number greater than 3). there were.
  • the g-th parity check polynomial is expressed as in Equation (40-1).
  • the g-th parity check polynomial is expressed as in Expression (40-2).
  • the g-th parity check polynomial is expressed as shown in Equation (40-3).
  • Equation (40-4) when the coding rate is 4/5, the g-th parity check polynomial is expressed as in Equation (40-4). In addition, when the coding rate is 5/6, the g-th parity check polynomial is expressed as shown in Equation (40-5).
  • ⁇ Condition # 13-1>, ⁇ Condition # 13-2>, and ⁇ Condition # 13-3> described below are used for LDPC-CC to obtain high error correction capability.
  • % means modulo.
  • ⁇ % h indicates a remainder when ⁇ is divided by q.
  • any one of the parity check polynomials satisfying 0 of h without limiting the number of terms of X 1 (D) to 4 or more (h ⁇ 1 or less)
  • X 1 (D) may have four or more terms. The same applies to X 2 (D),..., X n-1 (D), P (D). At this time, the condition described above is excluded for the increased number of terms.
  • the code structure of LDPC-CC based on a parity check polynomial with a time varying period greater than 3, particularly, LDPC-CC based on a parity check polynomial with a time varying period greater than 3 The method was explained. As described in the present embodiment, by forming a parity check polynomial and performing LDPC-CC encoding based on the parity check polynomial, higher error correction capability can be obtained.
  • Embodiment 2 an LDPC-CC encoding method based on the parity check polynomial described in Embodiment 1 and the configuration of the encoder will be described in detail.
  • Expressions (43-0) to (43-2) are respectively expressed as follows.
  • FIG. 15A a circuit corresponding to Expression (44-0) is shown in FIG. 15A
  • a circuit corresponding to Expression (44-1) is shown in FIG. 15B
  • a circuit corresponding to Expression (44-2) is shown in FIG. 15C. .
  • the encoder can adopt the same configuration as that in FIG. 15A corresponding to the equation (43-0), that is, the equation (44-0).
  • the coding can be performed in the same manner as described above.
  • q is not limited to a prime number.
  • Expression (45) is expressed in the same way as expressions (44-0) to (44-2) as follows.
  • P [i] indicates a parity bit at time point i.
  • LDPC-CC in the present invention is a kind of convolutional code
  • termination or tail-biting is required to ensure reliability in decoding information bits.
  • a case where termination is performed referred to as “Information-zero-termination” or simply “Zero-termination” will be considered.
  • FIG. 16 is a diagram for explaining “Information-zero-termination” in LDPC-CC with a coding rate (n ⁇ 1) / n.
  • Point i (i 0,1,2,3, ⁇ , s) information bits X 1, X 2 in, ..., a X n-1 and the parity bit P, X 1, i, X 2, i, ⁇ ⁇ ⁇ , and X n-1, i and parity bit P i.
  • X n ⁇ 1, s is the last bit of information to be transmitted.
  • the encoder performs encoding only up to time point s, and the encoding-side transmitting apparatus transmits only to Ps to the decoding-side receiving apparatus, the reception quality of information bits is large in the decoder. to degrade.
  • encoding is performed assuming that information bits after the last information bits X n ⁇ 1, s (referred to as “virtual information bits”) are “0”, and parity bits (1603) Is generated.
  • the decoder uses the fact that the virtual information bit is known to be “0” after time s, and performs decoding.
  • the g-th sub-matrix can be expressed as the following expression.
  • the LDPC-CC parity check matrix of the time-varying period q of the coding rate (n ⁇ 1) / n expressed by Expression (36) is expressed as shown in FIG.
  • FIG. 17 has the same configuration as FIG. In the third embodiment to be described later, a detailed configuration of the tail biting check matrix will be described.
  • the encoder uses equation (46) as described above.
  • the parity bit P [i] at the time point i and outputting the parity bit [i] the LDPC-CC encoding described in the first embodiment can be performed.
  • the LDPC-CC g-th (g 0, 1,..., Q ⁇ 1) with a time varying period q (q is a prime number greater than 3) and coding rate (n ⁇ 1) / n.
  • the parity check polynomial of) is expressed by Expression (36). Equation (36) has three terms in X 1 (D), X 2 (D),..., X n-1 (D) and P (D).
  • the code configuration method (constraint condition) for obtaining high error correction capability has been described in detail.
  • P (D) when the number of terms in any of X 1 (D), X 2 (D),..., X n ⁇ 1 (D), P (D) is 1, 2 Pointed out that there is a possibility that high error correction capability can be obtained.
  • Non-Patent Documents 10 and 11 if the term of P (D) is 1, it becomes a feedforward convolutional code (LDPC-CC), so tail biting can be easily performed based on Non-Patent Documents 10 and 11. In this embodiment, this point will be described in detail.
  • Equation (48) the g-th parity check polynomial (36) of the LDPC-CC with time-varying period q and coding rate (n ⁇ 1) / n, P (D)
  • the g-th parity check polynomial is expressed as shown in Equation (48).
  • the time varying period q is not limited to a prime number of 3 or more.
  • the constraint conditions described in Embodiment 1 are to be observed.
  • P (D) the condition relating to the reduced term is excluded.
  • Expression (49) is expressed in the same manner as Expressions (44-0) to (44-2) as follows.
  • Non-Patent Document 12 describes a general expression of a parity check matrix when performing tail biting in time-varying LDPC-CC. Equation (51) is a parity check matrix when performing tail biting described in Non-Patent Document 12.
  • H is a parity check matrix
  • H T is the syndrome former.
  • M s is a memory size.
  • Non-Patent Document 12 does not describe a specific code of the parity check matrix and does not describe a code configuration method (constraint condition) for obtaining high error correction capability.
  • the number of rows in the parity check matrix is a multiple of q. Therefore, the number of columns of the parity check matrix is a multiple of n ⁇ q.
  • the log likelihood ratio (for example) required at the time of decoding is a bit that is a multiple of n ⁇ q.
  • the required time-varying period q and LDPC-CC parity check polynomial of coding rate (n ⁇ 1) / n are not limited to Expression (48). It may be a parity check polynomial such as (36) or equation (38). Further, in Equation (38), the number of terms in X 1 (D), X 2 (D),... X n-1 (D) and P (D) is 3, but this is limited to this. It is not a thing.
  • the time varying period q may be any value as long as it is 2 or more.
  • the configuration of the parity check matrix at this time will be described with reference to FIGS. 18A and 18B.
  • Equation (48) H g
  • Equation (48) H g
  • n consecutive “1” s are represented in the terms of X 1 (D), X 2 (D),... X n ⁇ 1 (D) and P (D) in each formula of Formula (48). Equivalent to.
  • FIG. 18A shows a parity check matrix near time point q ⁇ N ⁇ 1 (1803) and time point q ⁇ N (1804) among the parity check matrices corresponding to the transmission sequence u defined above.
  • the parity check matrix H in the parity check matrix H, in the i-th row and the i + 1-th row, the sub-matrix is shifted to the right by n columns (see FIG. 18A).
  • row 1801 indicates q ⁇ N rows (last row) of the parity check matrix.
  • row 1801 corresponds to the q ⁇ 1th parity check polynomial.
  • a row 1802 indicates q ⁇ N ⁇ 1 rows of the parity check matrix.
  • the row 1802 corresponds to the q-2th parity check polynomial.
  • a column group 1804 indicates a column group corresponding to the time point q ⁇ N.
  • the transmission sequences are arranged in the order of X 1, q ⁇ N , X 2, q ⁇ N ,..., X n ⁇ 1, q ⁇ N , P q ⁇ N.
  • a column group 1803 indicates a column group corresponding to the time point q ⁇ N ⁇ 1.
  • the transmission sequences are X 1, q ⁇ N ⁇ 1 , X 2, q ⁇ N ⁇ 1 ,..., X n ⁇ 1, q ⁇ N ⁇ 1 , P q ⁇ N ⁇ 1 . They are in order.
  • the sub matrix is shifted to the right by n columns in the i-th row and the i + 1-th row.
  • the column 1805 is a column corresponding to the q ⁇ N ⁇ n column.
  • the column 1806 is a column corresponding to the first column.
  • a column group 1803 indicates a column group corresponding to the time point q ⁇ N ⁇ 1, and the column group 1803 includes X 1, q ⁇ N ⁇ 1 , X 2, q ⁇ N ⁇ 1 ,..., X n ⁇ . 1, q ⁇ N ⁇ 1 and P q ⁇ N ⁇ 1 .
  • a column group 1804 indicates a column group corresponding to the time point q ⁇ N, and the column group 1804 includes X 1, q ⁇ N , X 2, q ⁇ N ,..., X n ⁇ 1, q ⁇ N , They are arranged in the order of P q ⁇ N.
  • a column group 1807 indicates a column group corresponding to the time point 1, and the column group 1807 is arranged in the order of X 1,1 , X 2,1 ,..., X n ⁇ 1,1 , P 1 .
  • a column group 1808 indicates a column group corresponding to the time point 2, and the column group 1808 is arranged in the order of X 1,2 , X 2,2 ,..., X n ⁇ 1 , 2 , P 2 .
  • the row 1811 is a row corresponding to the q ⁇ N row
  • the row 1812 Is a line corresponding to the first line.
  • a part of the parity check matrix shown in FIG. 18B that is, a part to the left of the column boundary 1813 and below the row boundary 1814 is a characteristic part when tail biting is performed. And it turns out that the structure of this characteristic part becomes the structure similar to Formula (51).
  • the parity check matrix When the parity check matrix satisfies ⁇ Condition # 16> and is represented as shown in FIG. 18A, the parity check matrix starts from the row corresponding to the parity check polynomial satisfying 0th zero, and q It ends with a line corresponding to a parity check polynomial that satisfies the first zero. This is important in obtaining higher error correction capability.
  • the time-varying LDPC-CC described in the first embodiment is a code that reduces the number of cycles having a short length in the Tanner graph.
  • the condition for generating a code that reduces the number of cycles with a short length in the Tanner graph is shown.
  • the number of rows of the parity check matrix in order to reduce the number of cycles with a short length in the Tanner graph when performing tail biting, the number of rows of the parity check matrix must be a multiple of q ( ⁇ condition # 16>). It becomes important. In this case, when the number of rows of the parity check matrix is a multiple of q, all parity check polynomials with a time-varying period q are used.
  • the parity check polynomial is set to a code that reduces the number of cycles having a short length in the Tanner graph.
  • the number of short cycles can be reduced.
  • ⁇ condition # 16> is an important requirement in order to reduce the number of short cycles in the Tanner graph.
  • FIG. 19 is a schematic diagram of a communication system.
  • the communication system of FIG. 19 includes a transmission device 1910 on the encoding side and a reception device 1920 on the decoding side.
  • Encoder 1911 receives information as input, performs encoding, generates a transmission sequence, and outputs it.
  • Modulation section 1912 receives the transmission sequence, performs predetermined processing such as mapping, quadrature modulation, frequency conversion, and amplification, and outputs a transmission signal.
  • the transmission signal reaches the reception unit 1921 of the reception device 1920 via a communication medium (wireless, power line, light, etc.).
  • the reception unit 1921 receives the received signal, performs amplification, frequency conversion, orthogonal demodulation, channel estimation, demapping, and the like, and outputs a baseband signal and a channel estimation signal.
  • the log-likelihood ratio generation unit 1922 receives the baseband signal and the channel estimation signal, generates a log-likelihood ratio in bit units, and outputs a log-likelihood ratio signal.
  • the decoder 1923 receives the log-likelihood ratio signal as an input, and here, in particular, performs iterative decoding using BP decoding and outputs an estimated transmission sequence or / and an estimated information sequence.
  • the set information length is 16384.
  • the information bits are X 1,1 , X 1,2 , X 1,3 ,..., X 1,16384 . Then, if the parity bits are obtained without any contrivance, P 1 , P 2 , P 1 , 3 ,..., P 16384 are obtained.
  • the transmission device 1910 reduces “0” that is known between the encoder 1911 and the decoder 1923 and transmits (X 1,1 , P 1 , X 1,2 , P 2 , ⁇ X 1,16384, P 16384, P 16385, P 16386, P 16387, P 16388, P 16389) to send.
  • the log likelihood ratio for each transmission sequence is set to LLR (X 1,1 ), LLR (P 1 ), LLR (X 1,2 ), LLR (P 2 ),... LLR ( X 1,16384), LLR (P 16384 ), LLR (P 16385), LLR (P 16386), LLR (P 16387), LLR (P 16388), thereby obtaining the LLR (P 16389).
  • the receiving device 1920 has a log likelihood ratio of X 1,16385 , X 1,16386 , X 1,16387 , X 1,16388 , X 1,16389 of the value “0” that is not transmitted from the transmitting device 1910.
  • LLR (X 1,16385 ) LLR (0)
  • LLR (X 1,16386 ) LLR (0)
  • LLR (X 1,16387 ) LLR (0)
  • the receiving device 1920 includes LLR (X 1,1 ), LLR (P 1 ), LLR (X 1,2 ), LLR (P 2 ),...
  • LDPC-CC 16389 ⁇ 32778 parity check matrix of time varying period 11 estimated transmission sequence, Or (and) an estimated information sequence is obtained.
  • Decoding methods include BP (Belief Propagation) (reliability propagation) decoding, min-sum decoding approximating BP decoding, offset BP as shown in Non-Patent Document 4, Non-Patent Document 5, and Non-Patent Document 6.
  • Reliability propagation such as decoding, Normalized BP decoding, and shuffled BP decoding can be used.
  • the receiving apparatus 1920 can satisfy parity ⁇ condition # 16>.
  • the number of information bits required for encoding is q ⁇ (n ⁇ 1) ⁇ M. With these information bits, q ⁇ M parity bits are obtained.
  • the encoder 1911 determines that the number of information bits is q ⁇ (n ⁇ 1) ⁇ A known bit (for example, “0” (or may be “1”)) is inserted between the transmission / reception apparatuses (the encoder 1911 and the decoder 1923) so as to be M bits. Then, the encoder 1911 obtains q ⁇ M parity bits. At this time, the transmitter 1910 transmits information bits excluding the inserted known bits and the obtained parity bits. In addition, a known bit may be transmitted, and q ⁇ (n ⁇ 1) ⁇ M bits of information bits and q ⁇ M bits of parity bits may always be transmitted. The transmission speed will be reduced.
  • the parity bits and information bits obtained at this time are encoded sequences when tail biting is performed.
  • the LDPC-CC having the time varying period q and the coding rate (n ⁇ 1) / n defined by Expression (48) has been described as an example.
  • Formula (48) has three terms in X 1 (D), X 2 (D),..., X n ⁇ 1 (D).
  • the number of terms is not limited to 3, in formula (48), X 1 (D ), X 2 (D), ⁇ , and any number of terms of X n-1 (D) is 1, 2 Even in such a case, there is a possibility that a high error correction capability can be obtained.
  • a method of setting the number of terms of X 1 (D) to 1 or 2 there are the following methods.
  • the number of terms of X 1 (D) is 1 or 2.
  • the number of terms of X 1 (D) may be 1 or 2.
  • X 1 (D) may have four or more terms. The same applies to X 2 (D),..., X n-1 (D). At this time, the condition described above is excluded for the increased number of terms.
  • the tail biting according to the present embodiment can also be performed for the code shown.
  • Expression (54) is expressed in the same manner as Expressions (44-0) to (44-2), it is expressed as follows.
  • the number of terms of X 1 (D) may be 1 or 2.
  • X 2 (D),..., X n-1 (D) Even in this case, satisfying the conditions described in the first embodiment is an important condition for obtaining high error correction capability. However, the condition regarding the reduced term becomes unnecessary.
  • X 1 (D) may have four or more terms.
  • the condition described above is excluded for the increased number of terms.
  • an encoded sequence when tail biting is performed can be obtained by using the above-described procedure.
  • the encoder 1911 and the decoder 1923 use the parity check matrix whose number of rows is a multiple of the time-varying period q in the LDPC-CC described in the first embodiment, thereby enabling simple tail biting. Even when performing the above, a high error correction capability can be obtained.
  • X 1 , X 2 ,..., X n ⁇ 1 information bits and parity bit P at time j are X 1, j , X 2, j ,. represented as P j.
  • the delay operator D information bits X 1, X 2, ⁇ , the polynomial X n-1 X 1 (D ), X 2 (D), ⁇ , X n-1 (D) And the polynomial of the parity bit P is expressed as P (D).
  • a parity check polynomial satisfying 0 represented by Expression (56) is considered.
  • is a universal quantifier.
  • the maximum value of ⁇ X ⁇ , i and ⁇ P, i is ⁇ i .
  • Equation (58) a vector h i corresponding to the i-th parity check polynomial is expressed as shown in Equation (58).
  • the parity check polynomial satisfying 0 in Expression (57) is D 0 X 1 (D), D 0 X 2 (D),..., D 0 X n ⁇ 1 (D) and D 0 P ( Since D) is satisfied, the expression (60) is satisfied.
  • Embodiment 5 In this embodiment, a case where the time-varying LDPC-CC described in Embodiment 1 is applied to the erasure correction method will be described.
  • the time varying period of the LDPC-CC may be time varying periods 2, 3, and 4.
  • FIG. 20 shows a conceptual diagram of a communication system using erasure correction coding by LDPC code.
  • the encoding-side communication apparatus performs LDPC encoding on information packets 1 to 4 to be transmitted, and generates parity packets a and b.
  • the upper layer processing unit outputs an encoded packet obtained by adding a parity packet to the information packet to the lower layer (physical layer (PHY: Physical Layer) in the example of FIG. 20), and the lower layer physical layer processing unit
  • the packet is converted into a form that can be transmitted through the communication path and output to the communication path.
  • FIG. 20 shows an example in which the communication path is a wireless communication path.
  • the lower layer physical layer processing unit performs reception processing. At this time, it is assumed that a bit error has occurred in the lower layer. Due to this bit error, a packet including the corresponding bit may not be correctly decoded in the upper layer, and packet loss may occur. In the example of FIG. 20, the case where the information packet 3 is lost is shown.
  • the upper layer processing unit decodes the lost information packet 3 by performing an LDPC decoding process on the received packet sequence.
  • LDPC decoding Sum-product decoding that uses reliability propagation (BP: Belief Propagation), Gaussian elimination, or the like is used.
  • FIG. 21 is an overall configuration diagram of the communication system.
  • the communication system includes a communication device 2110 on the encoding side, a communication path 2120, and a communication device 2130 on the decoding side.
  • the communication device 2110 on the encoding side includes an erasure correction encoding related processing unit 2112, an error correction encoding unit 2113, and a transmission device 2114.
  • the decoding-side communication device 2130 includes a receiving device 2131, an error correction decoding unit 2132, and an erasure correction decoding related processing unit 2133.
  • the communication path 2120 indicates a path through which a signal transmitted from the transmission apparatus 2114 of the encoding-side communication apparatus 2110 is received by the reception apparatus 2131 of the decoding-side communication apparatus 2130.
  • Ethernet registered trademark
  • power line metal cable
  • optical fiber optical fiber
  • wireless light (visible light, infrared light, or the like), or a combination of these can be used.
  • the error correction decoding unit 2132 decodes the error correction code in the physical layer. Therefore, the layer on which the erasure correction code / decoding is performed and the layer on which the error correction code is performed (that is, the physical layer) are different layers (layers).
  • the layer on which the erasure correction code / decoding is performed and the layer on which the error correction code is performed are different layers (layers).
  • soft decision decoding is performed in the error correction decoding of the physical layer.
  • the erasure correction decoding an operation for restoring the erasure bits is performed.
  • FIG. 22 is a diagram showing an internal configuration of the erasure correction coding related processing unit 2112.
  • the erasure correction encoding method in the erasure correction encoding related processing unit 2112 will be described with reference to FIG.
  • the packet generation unit 2211 receives the information 2241, generates an information packet 2243, and outputs the information packet 2243 to the rearrangement unit 2215.
  • the information packet 2243 is composed of information packets # 1 to #n will be described as an example.
  • the rearrangement unit 2215 receives the information packet 2243 (in this case, information packets # 1 to #n), rearranges the order of the information, and outputs the rearranged information 2245.
  • the erasure correction encoder (parity packet generation unit) 2216 receives the rearranged information 2245 and performs, for example, LDPC-CC (low-density parity-check convolutional code) coding on the information 2245, Generate parity bits.
  • An erasure correction encoder (parity packet generator) 2216 extracts only the generated parity part, and generates and outputs a parity packet 2247 from the extracted parity part (accumulating and rearranging the parity). At this time, when the parity packets # 1 to #m are generated for the information packets # 1 to #n, the parity packet 2247 includes the parity packets # 1 to #m.
  • the error detection code adding unit 2217 receives the information packet 2243 (information packets # 1 to #n) and the parity packet 2247 (parity packets # 1 to #m) as inputs.
  • the error detection code adding unit 2217 adds an error detection code, for example, a CRC to the information packet 2243 (information packets # 1 to #n) and the parity packet 2247 (parity packets # 1 to #m).
  • the error detection code adding unit 2217 outputs the information packet and the parity packet 2249 after the CRC is added. Therefore, the information packet and the parity packet 2249 after the CRC addition are composed of the information packets # 1 to #n after the CRC addition and the parity packets # 1 to #m after the CRC addition.
  • FIG. 23 is a diagram showing another internal configuration of the erasure correction coding related processing unit 2112.
  • the erasure correction encoding related processing unit 2312 illustrated in FIG. 23 performs a erasure correction encoding method different from the erasure correction encoding related processing unit 2112 illustrated in FIG.
  • the erasure correction encoding unit 2314 forms the packets # 1 to # n + m by regarding the information bits and the parity bits as data without distinguishing between the information packet and the parity packet. However, when composing a packet, the erasure correction coding unit 2314 temporarily stores information and parity in an internal memory (not shown), and then rearranges them to construct the packet. Then, error detection code adding section 2317 adds an error detection code, for example, CRC to these packets, and outputs packets # 1 to # n + m after the CRC is added.
  • error detection code adding section 2317 adds an error detection code, for example, CRC to these packets, and outputs packets # 1 to #
  • FIG. 24 is a diagram showing an internal configuration of the erasure correction decoding related processing unit 2433.
  • the erasure correction decoding method in the erasure correction decoding related processing unit 2433 will be described with reference to FIG.
  • the error detection unit 2435 receives the packet 2451 after decoding of the error correction code in the physical layer, and performs error detection, for example, by CRC. At this time, the packet 2451 after decoding of the error correction code in the physical layer is composed of information packets # 1 to #n after decoding and parity packets # 1 to #m after decoding. As a result of the error detection, for example, as shown in FIG. 24, when there is a lost packet in the decoded information packet and the decoded parity packet, the error detecting unit 2435 causes the information packet and parity in which no packet loss has occurred. A packet number is assigned to the packet, and the packet is output as a packet 2453.
  • the erasure correction decoder 2436 receives a packet 2453 (information packet (with packet number) and parity packet (with packet number) in which no packet loss occurred).
  • the erasure correction decoder 2436 performs erasure correction code decoding (after rearrangement) on the packet 2453, and decodes the information packet 2455 (information packets # 1 to #n). Note that, when coded by the erasure correction coding related processing unit 2312 shown in FIG. 23, the erasure correction decoder 2436 receives a packet in which the information packet and the parity packet are not distinguished, and the erasure correction decoding is performed. Will be done.
  • FIG. 25 illustrates a configuration example of an erasure correction encoder 2560 that can change the coding rate of the erasure correction code in accordance with the communication quality.
  • the first erasure correction encoder 2561 is an encoder for erasure correction codes with a coding rate of 1/2.
  • the second erasure correction encoder 2562 is an erasure correction code encoder having a coding rate of 2/3.
  • the third erasure correction encoder 2563 is an erasure correction code encoder having a coding rate of 3/4.
  • First erasure correction encoder 2561 receives information 2571 and control signal 2572 as input, performs encoding when control signal 2572 specifies an encoding rate of 1/2, and provides data 2573 after erasure correction encoding. The data is output to the selection unit 2564.
  • second erasure correction encoder 2562 receives information 2571 and control signal 2572 as input, performs encoding when control signal 2572 specifies an encoding rate of 2/3, and performs erasure correction encoding.
  • Data 2574 is output to selection unit 2564.
  • third erasure correction encoder 2563 receives information 2571 and control signal 2572 as input, performs encoding when control signal 2572 specifies a coding rate of 3/4, and performs erasure correction encoding.
  • Data 2575 is output to the selection unit 2564.
  • the selection unit 2564 receives the data 2573, 2574, and 2575 after erasure correction coding and the control signal 2572 as input, and outputs data 2576 after erasure correction coding corresponding to the coding rate designated by the control signal 2572.
  • the encoder is required to achieve both a multiple coding rate on a low circuit scale and a high erasure correction capability.
  • an encoding method (encoder) and a decoding method that realize this compatibility will be described in detail.
  • the LDPC-CC described in Embodiments 1 to 3 is used as a code for erasure correction.
  • the point of erasure correction capability for example, when LDPC-CC larger than the coding rate of 3/4 is used, high erasure correction capability can be obtained.
  • LDPC-CC smaller than the coding rate 2/3 there is a problem that it is difficult to obtain high erasure correction capability.
  • an encoding method capable of overcoming this problem and realizing a plurality of encoding rates with a low circuit scale will be described.
  • FIG. 26 is an overall configuration diagram of the communication system.
  • the communication system includes a communication device 2600 on the encoding side, a communication path 2607, and a communication device 2608 on the decoding side.
  • a communication path 2607 indicates a path through which a signal transmitted from the transmission apparatus 2605 of the encoding-side communication apparatus 2600 is received by the reception apparatus 2609 of the decoding-side communication apparatus 2608.
  • the receiving device 2613 receives the received signal 2612 as input, and obtains information (feedback information) 2615 and received data 2614 fed back from the communication device 2608.
  • the erasure correction coding related processing unit 2603 receives information 2601, a control signal 2602, and information 2615 fed back from the communication device 2608.
  • the erasure correction coding related processing unit 2603 determines the coding rate of the erasure correction code based on the control signal 2602 or the feedback information 2615 from the communication device 2608, performs coding, and performs the packet after the erasure correction coding. Output.
  • the error correction encoding unit 2604 receives the packet after erasure correction encoding, the control signal 2602, and feedback information 2615 from the communication device 2608.
  • the error correction coding unit 2604 determines the coding rate of the error correction code in the physical layer based on the control signal 2602 or the feedback information 2615 from the communication device 2608, performs error correction coding in the physical layer, and performs coding. Output later data.
  • the transmission device 2605 receives the encoded data, performs processing such as orthogonal modulation, frequency conversion, and amplification, and outputs a transmission signal.
  • the transmission signal includes symbols for transmitting control information, symbols such as known symbols, in addition to data.
  • the transmission signal includes control information including information on the coding rate of the set error correction code of the physical layer and the coding rate of the erasure correction code.
  • the receiving device 2609 receives the received signal, performs processing such as amplification, frequency conversion, orthogonal demodulation, etc., outputs a received log likelihood ratio, and from a known symbol included in the transmitted signal, the propagation environment, received electric field strength, etc.
  • the communication path environment is estimated and an estimated signal is output.
  • the receiving apparatus 2609 demodulates symbols for control information included in the received signal, and thereby information on the coding rate of the error correction code and the erasure correcting code of the physical layer set by the transmitting apparatus 2605. And output as a control signal.
  • the error correction decoding unit 2610 receives the received log likelihood ratio and the control signal, and performs appropriate error correction decoding in the physical layer using the coding rate of the error correction code in the physical layer included in the control signal. Then, error correction decoding section 2610 outputs the decoded data, and also outputs information indicating whether or not error correction could be performed in the physical layer (error correction availability information (for example, ACK / NACK)).
  • error correction availability information for example, ACK / NACK
  • the erasure correction decoding related processing unit 2611 receives the decoded data and the control signal as input, and performs erasure correction decoding using the coding rate of the erasure correction code included in the control signal. Then, the erasure correction decoding related processing unit 2611 outputs the data after erasure correction decoding, and information (erasure correction availability information (eg, ACK / NACK)) as to whether or not error correction has been performed in erasure correction. Output.
  • erasure correction availability information eg, ACK / NACK
  • the transmission apparatus 2617 estimates information (RSSI: Received Signal Strength Strength Indicator or CSI: Channel State Information), propagation information, received field strength, and other information, error correction availability information in the physical layer, and erasure in erasure correction. Feedback information based on correctability information and transmission data are input.
  • the transmission device 2617 performs processing such as encoding, mapping, orthogonal modulation, frequency conversion, and amplification, and outputs a transmission signal 2618. Transmission signal 2618 is transmitted to communication device 2600.
  • FIG. 27 a method of changing the coding rate of the erasure correction code in the erasure correction coding related processing unit 2603 will be described.
  • control signal 2602 and feedback information 2615 are input to packet generator 2211 and erasure correction encoder (parity packet generator) 2216.
  • the erasure correction coding related processing unit 2603 changes the packet size and the coding rate of the erasure correction code based on the control signal 2602 and the feedback information 2615.
  • FIG. 28 is a diagram showing another internal configuration of the erasure correction coding related processing unit 2603.
  • the erasure correction coding related processing unit 2603 shown in FIG. 28 changes the coding rate of the erasure correction code using a method different from the erasure correction coding related processing unit 2603 shown in FIG.
  • the same reference numerals are given to those that operate in the same manner as in FIG. 28 differs from FIG. 23 in that a control signal 2602 and feedback information 2615 are input to an erasure correction encoder 2316 and an error detection code addition unit 2317.
  • the erasure correction coding related processing unit 2603 changes the packet size and the coding rate of the erasure correction code based on the control signal 2602 and the feedback information 2615.
  • FIG. 29 shows an example of the configuration of the encoding unit according to the present embodiment.
  • the encoder 2900 in FIG. 29 is an LDPC-CC encoding unit that can support a plurality of encoding rates. In the following, a case will be described in which encoder 2900 shown in FIG. 29 supports encoding rate 4/5 and encoding rate 16/25.
  • the rearrangement unit 2902 receives the information X and accumulates the information bit X. Then, when 4 information bits X are accumulated, rearrangement section 2902 rearranges information bits X, and outputs information bits X1, X2, X3, and X4 in four systems in parallel.
  • this configuration is merely an example. The operation of the rearranging unit 2902 will be described later.
  • the LDPC-CC encoder 2907 supports a coding rate of 4/5.
  • the LDPC-CC encoder 2907 receives information bits X1, X2, X3, X4 and a control signal 2916 as inputs.
  • the LDPC-CC encoder 2907 performs, for example, the LDPC-CC encoding described in Embodiments 1 to 3, and outputs a parity bit (P1) 2908.
  • control signal 2916 indicates a coding rate of 4/5
  • information X1, X2, X3, X4 and parity (P1) are output from encoder 2900.
  • the rearrangement unit 2909 receives the information bits X1, X2, X3, and X4, the parity bit P1, and the control signal 2916 as inputs. When control signal 2916 has a coding rate of 4/5, rearrangement unit 2909 does not operate. On the other hand, when the control signal 2916 indicates a coding rate of 16/25, the rearrangement unit 2909 stores information bits X1, X2, X3, X4 and a parity bit P1. The rearrangement unit 2909 rearranges the accumulated information bits X1, X2, X3, X4 and the parity bit P1, and rearranges data # 1 (2910) and rearranged data # 2 (2911). The rearranged data # 3 (2912) and the rearranged data # 4 (2913) are output. Note that the rearrangement method in the rearrangement unit 2909 will be described later.
  • the LDPC-CC encoder 2914 supports a coding rate of 4/5, similar to the LDPC-CC encoder 2907.
  • the LDPC-CC encoder 2914 performs rearranged data # 1 (2910), rearranged data # 2 (2911), rearranged data # 3 (2912), rearranged data # 4 ( 2913) and the control signal 2916 are input. If the control signal 2916 indicates a coding rate of 16/25, the LDPC-CC encoder 2914 performs encoding and outputs a parity bit (P2) 2915.
  • control signal 2916 indicates a coding rate of 4/5
  • data # 1 (2910) after rearrangement data # 2 (2911) after rearrangement
  • data # 3 (2912) after rearrangement data # 3 (2912) after rearrangement
  • the rearranged data # 4 (2913) and the parity bit (P2) (2915) are output from the encoder 2900.
  • FIG. 30 is a diagram for explaining the outline of the encoding method of the encoder 2900.
  • Information bit X (1) to information bit X (4N) are input to rearrangement unit 2902, and rearrangement unit 2902 rearranges information bit X.
  • rearrangement section 2902 outputs the four rearranged information bits in parallel. Therefore, [X1 (1), X2 (1), X3 (1), X4 (1)] is output first, and then [X1 (2), X2 (2), X3 (2), X4 (2) )] Is output. Then, rearrangement section 2902 outputs [X1 (N), X2 (N), X3 (N), X4 (N)] finally.
  • An LDPC-CC encoder 2907 with an encoding rate of 4/5 encodes [X1 (1), X2 (1), X3 (1), X4 (1)], and generates parity bits P1 (1 ) Is output.
  • LDPC-CC encoder 2907 performs encoding, generates parity bits P1 (2), P1 (3),..., P1 (N) and outputs them.
  • the reordering unit 2909 is [X1 (1), X2 (1), X3 (1), X4 (1), P1 (1)], [X1 (2), X2 (2), X3 (2), X4. (2), P1 (2)],... [X1 (N), X2 (N), X3 (N), X4 (N), P1 (N)] are input.
  • the rearrangement unit 2909 performs rearrangement including the parity bits in addition to the information bits.
  • the rearrangement unit 2909 performs the rearranged [X1 (50), X2 (31), X3 (7), P1 (40)], [X2 (39), X4 (67). , P1 (4), X1 (20)], ..., [P2 (65), X4 (21), P1 (16), X2 (87)].
  • the LDPC-CC encoder 2914 with a coding rate of 4/5, for example, [X1 (50), X2 (31), X3 (7), P1 (40 ]] To generate a parity bit P2 (1).
  • LDPC-CC encoder 2914 generates and outputs parity bits P2 (1), P2 (2),..., P2 (M).
  • the encoder 2900 When the control signal 2916 indicates a coding rate of 4/5, the encoder 2900 performs [X1 (1), X2 (1), X3 (1), X4 (1), P1 (1)], [ X1 (2), X2 (2), X3 (2), X4 (2), P1 (2)], ..., [X1 (N), X2 (N), X3 (N), X4 (N) , P1 (N)] to generate a packet.
  • the encoder 2900 sends [X1 (50), X2 (31), X3 (7), P1 (40), P2 (1)], [ X2 (39), X4 (67), P1 (4), X1 (20), P2 (2)], ..., [P2 (65), X4 (21), P1 (16), X2 (87) , P2 (M)] to generate a packet.
  • the encoder 2900 connects, for example, LDPC-CC encoders 2907 and 2914 having a high encoding rate such as an encoding rate of 4/5, and each LDPC A configuration in which rearrangement units 2902 and 2909 are arranged in front of CC encoders 2907 and 2914 is adopted. Then, the encoder 2900 changes the data to be output according to the specified encoding rate. As a result, it is possible to obtain an effect that it is possible to cope with a plurality of coding rates on a low circuit scale and to obtain a high erasure correction capability at each coding rate.
  • FIG. 29 illustrates a configuration in which two LDPC-CC encoders 2907 and 2914 having a coding rate of 4/5 are connected in the encoder 2900, but the present invention is not limited to this.
  • the encoder 2900 may be configured by connecting LDPC-CC encoders 3102 and 2914 having different coding rates.
  • the same reference numerals are given to the components that operate in the same manner as in FIG.
  • the rearrangement unit 3101 receives the information bit X and stores the information bit X. Then, rearrangement section 3101 rearranges information bits X when 5 bits of information bits X are accumulated, and outputs information bits X1, X2, X3, X4, and X5 to 5 systems in parallel.
  • the LDPC-CC encoder 3103 supports a coding rate of 5/6.
  • LDPC-CC encoder 3103 receives information bits X1, X2, X3, X4, X5 and control signal 2916 as input, encodes information bits X1, X2, X3, X4, X5, and generates parity bits.
  • (P1) 2908 is output.
  • control signal 2916 indicates a coding rate of 5/6
  • information bits X1, X2, X3, X4, X5 and parity bit (P1) 2908 are output from encoder 2900.
  • the rearrangement unit 3104 receives information bits X1, X2, X3, X4, X5, a parity bit (P1) 2908, and a control signal 2916 as inputs.
  • control signal 2916 indicates coding rate 2/3
  • rearrangement section 3104 accumulates information bits X1, X2, X3, X4, X5 and parity bit (P1) 2908. Then, rearrangement section 3104 rearranges the stored information bits X1, X2, X3, X4, X5 and parity bit (P1) 2908, and outputs the rearranged data in parallel to four systems. At this time, information bits X1, X2, X3, X4, X5 and a parity bit (P1) are included in the four systems.
  • the LDPC-CC encoder 2914 supports a coding rate of 4/5.
  • the LDPC-CC encoder 2914 receives four lines of data and a control signal 2916 as inputs.
  • the control signal 2916 indicates a coding rate 2/3
  • the LDPC-CC encoder 2914 encodes the four systems of data and outputs parity bits (P2). Therefore, the LDPC-CC encoder 2914 performs encoding using the information bits X1, X2, X3, X4, X5 and the parity bit P1.
  • the encoding rate may be set to any encoding rate. Further, when encoders having the same coding rate are connected, encoders having the same code may be used, or encoders having different codes may be used.
  • FIG. 29 and 31 show a configuration example of the encoder 2900 in the case of corresponding to two coding rates, it may be made to correspond to three or more coding rates.
  • FIG. 32 shows an example of the configuration of an encoder 3200 that can support three or more coding rates.
  • the rearrangement unit 3202 receives the information bit X and stores the information bit X. Then, rearrangement section 3202 rearranges the stored information bits X, and outputs the rearranged information bits X as first data 3203 to be encoded by LDPC-CC encoder 3204 at the subsequent stage.
  • the LDPC-CC encoder 3204 supports a coding rate (n ⁇ 1) / n.
  • the LDPC-CC encoder 3204 receives the first data 3203 and the control signal 2916, encodes the first data 3203 and the control signal 2916, and outputs a parity bit (P1) 3205.
  • control signal 2916 indicates coding rate (n ⁇ 1) / n
  • first data 3203 and parity bit (P1) 3205 are output from encoder 3200.
  • the rearrangement unit 3206 receives the first data 3203, the parity bit (P1) 3205, and the control signal 2916.
  • the rearrangement unit 3206 accumulates the first data 3203 and the bit parity (P1) 3205 when the control signal 2916 indicates a coding rate ⁇ (n-1) (m-1) ⁇ / (nm) or less. .
  • the rearrangement unit 3206 rearranges the first data 3203 after being stored and the parity bit (P1) 3205, and the rearranged first data 3203 and the parity bit (P1) 3205 are converted into the subsequent LDPC-CC.
  • the data is output as second data 3207 to be encoded by the encoder 3208.
  • the LDPC-CC encoder 3208 supports a coding rate (m ⁇ 1) / m.
  • the LDPC-CC encoder 3208 receives the second data 3207 and the control signal 2916 as inputs. Then, the LDPC-CC encoder 3208 encodes the second data 3207 when the control signal 2916 indicates a coding rate ⁇ (n-1) (m-1) ⁇ / (nm) or less. And parity (P2) 3209 is output.
  • the control signal 2916 indicates a coding rate ⁇ (n-1) (m-1) ⁇ / (nm)
  • the second data 3207 and the parity bit (P2) 3209 are output from the encoder 3200. .
  • the rearrangement unit 3210 receives the second data 3207, the parity bit (P2) 3209, and the control signal 2916.
  • the control signal 2916 indicates a coding rate ⁇ (n-1) (m-1) (s-1) ⁇ / (nms) or less
  • the rearrangement unit 3210 outputs the second data 3209 and the parity bit (P2 3207 is accumulated.
  • the rearrangement unit 3210 rearranges the second data 3209 after the accumulation and the parity bit (P2) 3207, and converts the second data 3209 after the rearrangement and the parity (P2) 3207 into the LDPC-CC code in the subsequent stage.
  • the third data 3211 to be encoded by the encoder 3212 is output.
  • the LDPC-CC encoder 3212 supports a coding rate (s-1) / s.
  • the LDPC-CC encoder 3212 receives the third data 3211 and the control signal 2916 as inputs. Then, the LDPC-CC encoder 3212 generates the third data 3211 when the control signal 2916 indicates a coding rate ⁇ (n-1) (m-1) (s-1) ⁇ / (nms) or less. Then, encoding is performed and a parity bit (P3) 3213 is output.
  • the control signal 2916 indicates a coding rate ⁇ (n ⁇ 1) (m ⁇ 1) (s ⁇ 1) ⁇ / (nms)
  • the third data 3211 and the parity bit (P3) 3213 are encoded. The output is 3200.
  • more coding rates can be realized by connecting LDPC-CC encoders in more stages.
  • a plurality of coding rates can be realized on a low circuit scale, and an effect that a high erasure correction capability can be obtained at each coding rate can be obtained.
  • rearrangement (rearrangement of the first stage) is not necessarily required for the information bit X.
  • the rearrangement unit is illustrated with a configuration in which the rearranged information bits X are output in parallel.
  • the rearrangement unit is not limited to this, and may be a serial output.
  • FIG. 33 shows an example of the configuration of a decoder 3310 corresponding to the encoder 3200 of FIG.
  • a matrix 3300 indicates a parity check matrix H used by the decoder 3310.
  • a matrix 3301 indicates a sub-matrix corresponding to the LDPC-CC encoder 3204
  • a matrix 3302 indicates a sub-matrix corresponding to the LDPC-CC encoder 3208
  • a matrix 3303 corresponds to the LDPC-CC encoder 3212.
  • a sub-matrix is shown.
  • the decoder 3310 holds the parity check matrix having the lowest coding rate.
  • the BP decoder 3313 is a BP decoder based on a parity check matrix having the lowest coding rate among the supported coding rates.
  • the BP decoder 3313 receives the erasure data 3311 and the control signal 3312 as inputs.
  • the erasure data 3311 is composed of bits for which “0” and “1” have already been determined and bits for which “0” and “1” have not yet been determined (erasure).
  • the BP decoder 3313 performs erasure correction by performing BP decoding based on the coding rate specified by the control signal 3312, and outputs data 3314 after erasure correction.
  • the erasure data 3311 does not include data corresponding to P2, P3,.
  • the data corresponding to P2, P3,... Is set to “0”, and the BP decoder 3313 performs a decoding operation, whereby erasure correction can be performed.
  • the erasure data 3311 has no data corresponding to P3,. However, in this case, the data corresponding to P3,... Is set to “0”, and the BP decoder 3313 performs a decoding operation, whereby erasure correction can be performed.
  • the BP decoder 3313 may operate in the same manner for other coding rates.
  • the decoder 3310 holds the parity check matrix having the lowest coding rate among the supported coding rates, and supports BP decoding at a plurality of coding rates using this parity check matrix. To do. Thereby, it is possible to deal with a plurality of coding rates on a low circuit scale, and to obtain an effect that a high erasure correction capability can be obtained at each coding rate.
  • LDPC-CC is a kind of convolutional code, termination or tail biting is required to obtain high erasure correction capability.
  • the number of information bits is 16384 bits, and the number of bits constituting one packet is 512 bits.
  • the number of information bits is 16384 bits, so the number of parity bits is 4096 (16384/4) bits. Become. Therefore, when one packet is composed of 512 bits (provided that 512 bits do not include bits other than information such as an error detection code), 40 packets are generated.
  • termination is performed so that the sum of the number of information bits (not including the termination sequence), the number of parity bits, and the number of bits in the termination sequence is an integral multiple of the number of bits constituting the packet. Insert a series.
  • the bits constituting the packet do not include control information such as error detection codes, and the number of bits constituting the packet means the number of bits of data related to erasure correction coding.
  • a termination sequence of 512 ⁇ h bits (h bits is a natural number) is added. In this way, an effect of inserting a termination sequence can be obtained, so that high erasure correction capability can be obtained and packets can be efficiently configured.
  • dummy data subjected to padding may be included.
  • the padding will be described later.
  • a rearrangement unit (2215) exists as can be seen from FIG.
  • the rearrangement unit is generally configured using a RAM. Therefore, it is difficult for the rearrangement unit 2215 to realize hardware that can be rearranged for any information bit size (information size). Accordingly, it is important to enable the rearrangement unit to rearrange several types of information sizes in order to suppress an increase in hardware scale.
  • FIG. 35 shows a packet configuration in these cases.
  • ⁇ 1> A packet is generated by distinguishing between an information packet and a parity packet and transmitted.
  • ⁇ 2> Generate and transmit packets without distinguishing between information packets and parity packets.
  • the number of bits z constituting the packet be the same regardless of whether or not erasure correction coding is performed.
  • Expression (63) when the number of information bits used for erasure correction coding is I, Expression (63) needs to be established. However, depending on the number of information bits, it is necessary to perform padding.
  • is an integer.
  • z is the number of bits constituting the packet, the bits constituting the packet do not include control information such as an error detection code, and the number of bits z constituting the packet is data related to erasure correction coding. Means the number of bits.
  • the number of bits of information necessary to perform erasure correction coding is ⁇ ⁇ z bits.
  • information of ⁇ ⁇ z bits is not necessarily prepared for erasure correction encoding, and there may be a case where the information is obtained with a number of bits smaller than ⁇ ⁇ z bits.
  • dummy data is inserted so that the number of bits becomes ⁇ ⁇ z bits. Therefore, when the number of bits of erasure correction coding information is less than ⁇ ⁇ z bits, known data (for example, “0”) is inserted so that the number of bits becomes ⁇ ⁇ z bits. Then, erasure correction coding is performed on the ⁇ ⁇ z-bit information generated in this way.
  • parity bits are obtained by performing erasure correction coding.
  • zero termination is performed.
  • is an integer.
  • z is the number of bits constituting the packet, the bits constituting the packet do not include control information such as an error detection code, and the number of bits z constituting the packet is data related to erasure correction coding. Means the number of bits.
  • the number of bits z constituting the packet is often configured in units of bytes. Therefore, when the LDPC-CC coding rate is (n ⁇ 1) / n, if Equation (65) is satisfied, avoid the situation where padding bits are always required for erasure correction coding. Can do.
  • LDPC such as QC-LDPC code and random LDPC code shown in Non-Patent Document 1, Non-Patent Document 2, Non-Patent Document 3, and Non-Patent Document 7.
  • codes LDPC block codes.
  • the number of bits of information necessary to perform erasure correction coding is ⁇ ⁇ z bits.
  • information of ⁇ ⁇ z bits is not necessarily prepared for erasure correction encoding, and there may be a case where the information is obtained with a number of bits smaller than ⁇ ⁇ z bits.
  • dummy data is inserted so that the number of bits becomes ⁇ ⁇ z bits. Therefore, when the number of bits of erasure correction coding information is less than ⁇ ⁇ z bits, known data (for example, “0”) is inserted so that the number of bits becomes ⁇ ⁇ z bits. Then, erasure correction coding is performed on the ⁇ ⁇ z-bit information generated in this way.
  • parity bits are obtained by performing erasure correction coding.
  • C the number of parity bits obtained by erasure correction coding
  • the block length is determined, so that it can be handled in the same manner as when an LDPC block code is applied to an erasure correction code.
  • LDPC-CC is a code defined by a low-density parity check matrix, similar to LDPC-BC, and can be defined by an infinite-length time-varying parity check matrix. Think of it in a matrix.
  • the LDPC-CC defined by equation (71) is a time-varying convolutional code, and this code is called a time-varying LDPC-CC.
  • Decoding is performed using the parity check matrix H and BP decoding. Assuming the encoded sequence vector u, the following relational expression is established.
  • a parity check polynomial satisfying 0 is expressed as follows.
  • the code defined by the parity check matrix based on the parity check polynomial satisfying 0 in Equation (74) is the time-invariant LDPC-CC.
  • M different parity check polynomials based on the equation (74) are prepared (m is an integer of 2 or more).
  • An LDPC-CC (TV-m-LDPC-CC: Time-varying LDPC-CC with a code defined by a parity check matrix generated based on a parity check polynomial satisfying 0 in Equation (76) time period of m).
  • the time invariant LDPC-CC defined by the equation (74) and the TV-m-LDPC-CC defined by the equation (76) have a term of D 0 in P (D), and b j is an integer of 1 or more. Therefore, the parity can be easily obtained sequentially with a register and exclusive OR.
  • the parity check polynomial to be satisfied is expressed as follows.
  • the codes based on the equations (77) and (79) are the time-invariant LDPC-CC and TV-m-LDPC-CC when the coding rate is (n-1) / n.
  • TV3-LDPC-CC can obtain better error correction capability than LDPC-CC (TV2-LDPC-CC) with time-varying period 2 when the constraint lengths are approximately equal. It has also been found that good error correction capability can be obtained by making TV3-LDPC-CC a regular LDPC code. Therefore, in this study, we attempt to create a regular LDPC-CC with a time-varying period m (m> 3).
  • Theorem 1 holds for the cycle length 6 (CL6) of TV-m-LDPC-CC.
  • Theorem 1 In the parity check polynomial satisfying 0 of TV-m-LDPC-CC, the following two conditions are given.
  • X1 are the parity check polynomials that satisfy 0 in the equation (81), respectively, and X 1 ( This is a vector generated by extracting only the part related to D).
  • X 2 (D),..., X n-1 (D), and P (D) are also replaced by X 1 (D), so that C # 1.1 or C # 1.2 is established. , At least one CL6 occurs.
  • ⁇ of ⁇ q is a universal quantifier (universal quantifier), ⁇ q means all of q.
  • Non-Patent Document 13 shows a decoding error rate when a uniform random regular LDPC code is subjected to maximum likelihood decoding in a binary input target output communication channel. It is shown that a degree function (see Non-Patent Document 14) can be achieved. However, it is not clear whether Gallager's reliability function can be achieved by uniform random regular LDPC codes when BP decoding is performed.
  • LDPC-CC belongs to the class of convolutional codes.
  • the reliability function of the convolutional code is shown in Non-Patent Document 15 and Non-Patent Document 16, and it is shown that the reliability depends on the constraint length.
  • LDPC-CC is a convolutional code
  • the parity check matrix has a structure unique to the convolutional code. However, when the time-varying period is increased, the position where “1” in the parity check matrix exists is uniformly random.
  • the parity check matrix has a structure specific to the convolutional code, and the position where “1” exists depends on the constraint length.
  • Inference # 1 When regular time-varying period m of TV-m-LDPC-CC becomes large in regular TV-m-LDPC-CC satisfying the condition of C # 2 when BP decoding is used, “1” in the parity check matrix A code with high error correction capability can be obtained by approaching the existing position uniformly and randomly.
  • the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 in the equation (82) has all of # 0 to # m ⁇ 1 for ⁇ q There is a check node corresponding to the parity check polynomial.
  • C # 3.2 In parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC that satisfies the condition of C # 2, b # q, i mod m in P (D) for ⁇ q ⁇ b # q, j mod m holds. However, i ⁇ j.
  • the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 in the equation (82) has all of # 0 to # m ⁇ 1 for ⁇ q There is a check node corresponding to the parity check polynomial.
  • C # 4.1 C # at regular TV-m-LDPC-CC parity check polynomial that satisfies 0 of satisfying the second condition (82), against ⁇ q, a # q in X p (D), p,
  • C # 4.2 C # in the parity check polynomial that satisfies 0 regularization TV-m-LDPC-CC that satisfies the second condition (82), against ⁇ q, b # q in P (D), i mod m
  • the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 of Equation (82) from property 1 has parity of # 0 to # m ⁇ 1 for ⁇ q Not all check nodes corresponding to the check polynomial exist.
  • C # 5.1 C # at regular TV-m-LDPC-CC parity check polynomial that satisfies 0 of satisfying the second condition (82), against ⁇ q, a # q in X p (D), p,
  • the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 in the equation (82) corresponds to the odd-numbered parity check polynomial when q is an odd number. Only check nodes exist. When q is an even number, only a check node corresponding to the even-numbered parity check polynomial exists in the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 in Expression (82). .
  • C # 5.2 In the parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC that satisfies the condition of C # 2, b # q, i mod m in P (D) for ⁇ q
  • parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC satisfying the condition of C # 2, D b # q, i P (D), D b # q, j satisfying C # 5.2
  • the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 in the equation (82) corresponds to the odd-numbered parity check polynomial when q is an odd number. Only check nodes exist. When q is an even number, only a check node corresponding to the even-numbered parity check polynomial exists in the tree starting from the check node corresponding to the # q-th parity check polynomial satisfying 0 in Expression (82). .
  • C # 6.1 In the parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC that satisfies the condition of C # 2, D a # q, p, i X p (D), D a # q , p, j
  • D a # q, p, i X p (D) D a # q , p, j
  • the tree starting from the check node corresponding to #q th parity check polynomial that satisfies 0 of equation (82), against ⁇ q corresponds to a parity check polynomial of # m-1 from # 0 Not all check nodes exist.
  • C # 6.2 In the parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC that satisfies the condition of C # 2, D b # q, i P (D), D b # q, j P
  • D b # q, i P (D) D b # q, j P
  • the tree starting from the check node corresponding to #q th parity check polynomial that satisfies 0 of equation (82), against ⁇ q corresponds to a parity check polynomial of # m-1 from # 0 Not all check nodes exist.
  • C # 7.1 In the parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC that satisfies the condition of C # 2, D a # q, p, i X p (D), D a # q , p, j
  • D a # q , p, i X p (D) D a # q , p, j
  • the tree starting from the check node corresponding to #q th parity check polynomial that satisfies 0 of equation (82), against ⁇ q, all from # 0 of the # m-1 in the tree parity There is a check node corresponding to the check polynomial.
  • C # 7.2 In the parity check polynomial (82) satisfying 0 of regular TV-m-LDPC-CC that satisfies the condition of C # 2, D b # q, i P (D), D b # q, j P
  • D b # q, i P (D) D b # q, j P
  • C # 7.1 is satisfied at ⁇ (i, j)
  • ⁇ p is satisfied
  • C # 7.2 is satisfied at ⁇ (i, j).
  • Theorem 2 To satisfy design guidelines, a # q, p, i mod m ⁇ a # q, p, j mod m and b # q, i mod m ⁇ b # q, j mod m must be satisfied Don't be. However, i ⁇ j.
  • the check node corresponding to the # q-th parity check polynomial satisfying 0 in Expression (82) There are check nodes corresponding to all parity check polynomials from # 0 to # m-1 in the tree starting from. This is true for all p.
  • the tree is drawn only for the variable node corresponding to P (D)
  • theorem 2 when theorem 2 is satisfied, the tree starting from the check node corresponding to the # q-th parity check polynomial that satisfies 0 in Equation (82)
  • Theorem 3 In regular TV-m-LDPC-CC that satisfies the conditions of C # 2, when the time-varying period m is an even number, there is no code that satisfies the design guidelines.
  • the time-varying period m must be an odd number.
  • the following conditions are effective from the properties 2 and 3. -The time-varying period m is a prime number. -The time-varying period m is an odd number and the number of divisors of m is small.
  • the time-varying period m is an odd number and the number of divisors of m is small
  • the time-varying period is ⁇ ⁇ ⁇ .
  • ⁇ and ⁇ are odd numbers other than 1 and are prime numbers.
  • ⁇ n be the time-varying period.
  • is an odd number excluding 1 and a prime number
  • n is an integer of 2 or more.
  • the time-varying period is ⁇ ⁇ ⁇ ⁇ ⁇ .
  • ⁇ , ⁇ , and ⁇ are odd numbers other than 1 and are prime numbers.
  • Table 9 shows an example of LDPC-CC (# 1 and # 2 in Table 9) based on the parity check polynomials with time-varying periods 2 and 3 studied so far.
  • Table 9 shows an example of regular TV11-LDPC-CC with time-varying period 11 that satisfies the design guideline (# 3 in Table 9).
  • the encoding rate R 2/3 set when searching for codes is set, and the maximum constraint length K max is 600.
  • TV11-LDPC-CC is a diagram showing an E b / N o (energy per bit-to-noise spectral density ratio) BER relationship to the (# 3 in Table 9) (BER characteristics).
  • the modulation method is BPSK (Binary Phase Shift Keying)
  • I 50.
  • v is a normalization coefficient.
  • TV-m-LDPC-CC with a large time-varying period based on the design guidelines discussed above has better error correction capability than TV2-LDPC-CC and TV3-LDPC-CC. It is possible to confirm the effectiveness of the design guidelines discussed in (1).
  • Embodiment 7 when applying LDPC-CC with a time-varying period h (h is an integer of 4 or more) of coding rate (n ⁇ 1) / n described in Embodiment 1, to the erasure correction method, A rearrangement method in the erasure correction coding processing unit in the packet layer will be described.
  • the configuration of the erasure correction coding processing unit according to the present embodiment is the same as that of the erasure correction coding processing unit shown in FIG. 22 or FIG. 23, and therefore will be described with reference to FIG. 22 or FIG.
  • FIG. 8 shown above shows an example of a parity check matrix when using the LDPC-CC with the time-varying period m (coding rate (n ⁇ 1) / n described in the first embodiment.
  • coding rate (n ⁇ 1) / n, g-th (g 0, 1,..., H ⁇ 1) parity check with time varying period h.
  • a parity check matrix corresponding to the polynomial (83) is represented as shown in FIG. This time represents the information X1, X2 at time k, ⁇ ⁇ ⁇ , the Xn-1 and parity P X 1, k, X 2 , k, ⁇ , X n-1, k, and P k.
  • a part to which reference numeral 5501 is attached is a part of a row of the parity check matrix, and is a vector corresponding to a parity check polynomial satisfying the 0th 0 in the equation (83).
  • the part to which reference numeral 5502 is attached is a part of the row of the parity check matrix, and is a vector corresponding to the parity check polynomial that satisfies the first 0 of Equation (83).
  • FIG. 42 is a diagram illustrating an example of a rearrangement pattern when the information packet and the parity packet are configured separately.
  • the pattern $ 1 shows a pattern example having a low erasure correction capability
  • the pattern $ 2 shows a pattern example having a high erasure correction capability.
  • #Z indicates data of the Zth packet.
  • the pattern $ 1 can be said to be a pattern example having a low erasure correction capability.
  • the pattern $ 2 at all time points k, X 1, k, X 2, k, X 3, k, in X 4, k, X 1, k, X 2, k, X 3, k, X 4 and k are composed of data of different packet numbers.
  • the pattern $ 2 can be said to be an example of a pattern having a high erasure correction capability.
  • the rearrangement unit 2215 may set the rearrangement pattern to the pattern $ 2 as described above. That is, the rearrangement unit 2215 receives the information packet 2243 (information packets # 1 to #n) as input, and X 1, k , X 2, k , X 3, k , X 4, k are The order of information may be rearranged so that data with different packet numbers are allocated.
  • FIG. 43 is a diagram illustrating an example of a rearrangement pattern in the case where the information packet and the parity packet are configured without distinction.
  • X 1, k point k, X 2, k, X 3, k, X 4, k, in P k, X 1, k and P k is a data of the same packet.
  • X 3, k + 1 and X 4, k + 1 are the same packet data at time point k + 1
  • X 2, k + 2 and P k + 2 are the same packet data at time point k + 2.
  • the packet # 1 when the packet # 1 is lost, it is difficult to restore the lost bits (X 1, k and P k ) by row operation in BP decoding.
  • the lost bits when packet # 2 is lost, the lost bits (X 3, k + 1 and X 4, k + 1 ) cannot be restored by row operation in BP decoding, and when packet # 5 is lost, BP decoding is performed. It is difficult to restore the erasure bits (X 2, k + 2 and P k + 2 ) by the row operation at. From the above points, the pattern $ 1 can be said to be a pattern example having a low erasure correction capability.
  • the pattern $ 2 at all time points k, X 1, k , X 2, k , X 3, k , X 4, k , P k , X 1, k , X 2, k , X 3, Assume that k 1 , X 4, k , and P k are composed of data with different packet numbers. At this time, since the possibility that the lost bits can be restored by the row operation in the BP decoding is increased, the pattern $ 2 can be said to be an example of a pattern having a high erasure correction capability.
  • the erasure correction encoding unit 2314 may set the rearrangement pattern to the pattern $ 2 as described above. That is, the erasure correction encoding unit 2314 assigns the information X 1, k , X 2, k , X 3, k , X 4, k and the parity P k to packets with different packet numbers at all time points k. As described above, information and parity may be rearranged.
  • the LDPC-CC having the coding rate (n ⁇ 1) / n and the time varying period h (h is an integer of 4 or more) described in Embodiment 1 is used as the erasure correction method.
  • a specific configuration for improving the erasure correction capability has been proposed as a rearrangement method in the erasure correction encoding unit in the packet layer.
  • the time-varying cycle h is not limited to 4 or more, and even when the time-varying cycle is 2 or 3, the erasure correction capability can be improved by performing similar rearrangement.
  • FIG. 44 shows an example of an encoding method in a layer higher than the physical layer. 44, the coding rate of the error correction code is 2/3, and the data size excluding redundant information such as control information and error detection code in one packet is 512 bits.
  • the size of the parity packet and the size of the information packet are made the same size.
  • these sizes may not be the same.
  • FIG. 45 shows an example of an encoding method in a layer higher than the physical layer different from that in FIG.
  • information packets # 1 to # 512 are original information packets, and the data size excluding redundant information such as control information and error detection code in one packet is 512 bits.
  • one packet of the information packet is 512 bits
  • one packet of the parity packet is not necessarily 512 bits. That is, one information packet and one parity packet do not necessarily have the same size.
  • the encoder may regard the sub information packet itself obtained by dividing the information packet as one packet of the information packet.
  • the fifth embodiment has described the termination sequence insertion method and the packet configuration method.
  • the “sub-information packet” and “sub-parity packet” of the present embodiment are considered to be the “sub-information packet” and “parity packet” described in the fifth embodiment, respectively. 5 can be implemented.
  • data other than information for example, error detection code
  • data other than the parity bit is added to the parity packet.
  • it does not include data other than these information bits and parity bits, and when applied to the number of information bits in the information packet, or applied to the case of the number of parity bits in the parity packet, The conditions regarding termination shown in the equations (62) to (70) are important conditions.
  • Shortening refers to generating a code with a second coding rate (first coding rate> second coding rate) from a code with a first coding rate.
  • LDPC-CC based on a parity check polynomial of a time-varying period h (h is an integer of 4 or more) with a coding rate of 1/2 described in Embodiment 1 is used.
  • h is an integer of 4 or more
  • a coding rate of 1/2 described in Embodiment 1
  • the codeword w (X0, P0, X1, P1,... , Xi, Pi, ...) T.
  • the shortening method in this embodiment takes the following method.
  • the known information is not limited to zero, and may be 1, or may be a value other than 1 that is determined in advance, and may be determined in advance or determined as a specification to the communication apparatus of the communication partner.
  • Method # 1-2 unlike method # 1-1, as shown in FIG. 47, 2 ⁇ h ⁇ 2k bits composed of information and parity are defined as one cycle, and known information is placed at the same position in each cycle. Insert (insertion rule of method # 1-2).
  • FIG. 48 shows an example in which when the time-varying period is 4, 16 bits composed of information and parity are defined as one period.
  • known information for example, zero (1 may be 1 or a predetermined value)
  • X0, X2, X4, and X5 in the first one cycle.
  • known information for example, zero (may be 1 or a predetermined value)
  • X8i for example, zero (may be 1 or a predetermined value
  • X8i + 2 for example, X8i + 4
  • X8i + 5 for example, the position where the known information is inserted is the same for each of the i-th and later.
  • method # 1-2 as in [method # 1-1], for example, known information is inserted into hk bits of information 2 hk bits, and the coding rate for 2 hk bits of information including known information is encoded. Encoding is performed using 1/2 LDPC-CC. As a result, 2 hk-bit parity is generated. At this time, assuming that hk bits of known information are not transmitted, a coding rate of 1/3 can be realized.
  • the element “1” is arranged in the columns corresponding to X2 and X4.
  • the element “1” is arranged in the column corresponding to X2 and X9. Therefore, when known information is inserted into X2, X4, and X9, in the row 4001 and the row 4002, all information corresponding to the column whose element is “1” is known. Therefore, in row 4001 and row 4002, since the unknown value is only the parity, it is possible to update the log likelihood ratio with high reliability in the row calculation of BP decoding.
  • the pattern in which the element “1” is arranged in the parity check matrix H has regularity. Therefore, by regularly inserting known information in each period based on the parity check matrix H, a row having an unknown value of only parity, or if the parity and information are unknown, the unknown information More lines with fewer bits can be added. As a result, an LDPC-CC with a coding rate of 1/3 giving good characteristics can be obtained.
  • error correction is performed from an LDPC-CC having a coding rate of 1/2 and a time-varying period h (h is an integer of 4 or more) with the characteristics described in the first embodiment.
  • h is an integer of 4 or more
  • a high-performance LDPC-CC with a coding rate of 1/3 and a time-varying period h can be realized.
  • j takes any value from 2hi to 2h (i + k-1) + 2h-1, and there are h ⁇ k different values.
  • the known information may be 1 or a predetermined value.
  • “1” of the reference numeral 4101 corresponds to D a # g, 1,1 X 1 (D).
  • “1” of the reference numeral 4102 corresponds to D a # g, 1,2 X 1 (D).
  • “1” of the reference numeral 4103 corresponds to X 1 (D).
  • a number 4104 corresponds to P (D).
  • Shortening that realizes a coding rate with a high error correction capability and a coding rate smaller than (n-1) / n by using the LDPC-CC having the coding rate (n-1) / n with the time varying period h described above.
  • the method is as follows.
  • Method # 2-1 In the method # 2-1, known information (for example, zero (may be 1 or a predetermined value)) is regularly inserted into the information X (insertion rule of the method # 2-1).
  • Method # 2-2 unlike method # 2-1, as shown in FIG. 51, h ⁇ n ⁇ k bits composed of information and parity are defined as one cycle, and known information is placed at the same position in each cycle. Insert (insertion rule of method # 2-2). Inserting known information at the same position in each cycle is as described in [Method # 1-2] above with reference to FIG.
  • Method # 2-3 information X 1, hi , X 2, hi ,..., X n ⁇ 1, hi ,... In an h ⁇ n ⁇ k bit period composed of information and parity. .., X 1, h (i + k-1) + h-1 , X 2, h (i + k-1) + h-1 ,..., X n-1, h (i + k-1) + h-1 h ⁇ Z bits are selected from (n ⁇ 1) ⁇ k bits, and known information (for example, zero (1 or a predetermined value)) is inserted into the selected Z bits (in method # 2-3) Insertion rule).
  • the “unknown value is a row of parity and a small number of information bits”.
  • a lot can be generated.
  • the characteristics described above are smaller than the coding rate (n-1) / n having a high error correction capability using the LDPC-CC having a good coding rate (n-1) / n and the time varying period h.
  • a coding rate can be realized.
  • Method # 2-3 describes the case where the number of known information to be inserted is the same in each cycle, but the number of known information to be inserted may be different in each cycle. For example, as shown in FIG. 52, N 0 information is known information in the first cycle, N 1 information is known information in the next cycle, and Ni information is known information in the i th cycle. You may make it.
  • Method # 2-4 In a data sequence composed of information and parity, information X 1,0 , X 2,0 ,..., X n ⁇ 1,0 ,..., X 1, v , X 2, v , ..., Z bits are selected from the bit sequence of X n ⁇ 1, v , and known information (eg, zero (1 or a predetermined value)) is inserted into the selected Z bits (method #) 2-4 insertion rules).
  • known information eg, zero (1 or a predetermined value
  • the communication device inserts information known to the communication partner, performs coding at a coding rate of 1/2 on the information including the known information, and generates a parity bit.
  • a communication apparatus implement
  • FIG. 53 is a block diagram illustrating an example of a configuration of a part (error correction encoding unit 44100 and transmission apparatus 44200) related to encoding when the encoding rate is variable in the physical layer.
  • the known information insertion unit 4403 receives the information 4401 and the control signal 4402 as input, and inserts known information according to the coding rate information included in the control signal 4402. Specifically, when the coding rate included in the control signal 4402 is smaller than the coding rate supported by the encoder 4405 and shortening is necessary, known information is inserted according to the shortening method described above. The information 4404 after the known information is inserted is output. When the coding rate included in the control signal 4402 is equal to the coding rate supported by the encoder 4405 and shortening is not required, the known information is not inserted and the information 4401 is used as the information 4404 as it is. Output.
  • the encoder 4405 receives the information 4404 and the control signal 4402 as input, encodes the information 4404, generates a parity 4406, and outputs the parity 4406.
  • the known information reduction unit 4407 receives the information 4404 and the control signal 4402 as input, and when the known information is inserted by the known information insertion unit 4403 based on the coding rate information included in the control signal 4402, the information 4404 is received. , The known information is deleted, and information 4408 after the deletion is output. On the other hand, if no known information is inserted in the known information insertion unit 4403, the information 4404 is output as information 4408 as it is.
  • Modulation section 4409 receives parity 4406, information 4408, and control signal 4402 as input, modulates parity 4406 and information 4408 based on the modulation scheme information included in control signal 4402, and generates and outputs baseband signal 4410. To do.
  • FIG. 54 is a block diagram showing another example of the configuration of a part (error correction coding unit 44100 and transmission apparatus 44200) related to coding when the coding rate is variable in the physical layer, which is different from FIG. is there.
  • the information 4401 input to the known information insertion unit 4403 is input to the modulation unit 4409, so that the known information reduction unit 4407 of FIG.
  • the coding rate can be made variable.
  • FIG. 55 is a block diagram showing an example of the configuration of the error correction decoding unit 46100 in the physical layer.
  • a log likelihood ratio insertion unit 4603 of known information receives a log likelihood ratio signal 4601 and a control signal 4602 of received data.
  • the frequency ratio is inserted into the log likelihood ratio signal 4601.
  • the log likelihood ratio insertion unit 4603 outputs a log likelihood ratio signal 4604 after the log likelihood ratio of known information is inserted.
  • the coding rate information included in the control signal 4602 is transmitted from, for example, a communication partner.
  • the decoding unit 4605 receives the control signal 4602 and the log likelihood ratio signal 4604 after insertion of the log likelihood ratio of known information, and performs decoding based on the encoding method information such as the encoding rate included in the control signal 4602.
  • the received data is decoded, and the decoded data 4606 is output.
  • the known information reduction unit 4607 receives the control signal 4602 and the decoded data 4606 as input, and is known when known information is inserted based on the coding method information such as coding rate included in the control signal 4602. Information is deleted, and information 4608 after deletion of known information is output.
  • the shortening method for realizing a coding rate smaller than the coding rate of the code from the LDPC-CC having the time varying period h described in the first embodiment has been described.
  • the shortening method according to this embodiment when the LDPC-CC having the time-varying period h described in Embodiment 1 is used in the packet layer, both improvement in transmission efficiency and improvement in erasure correction capability are achieved. be able to. Further, even when the coding rate is changed in the physical layer, good error correction capability can be obtained.
  • a termination sequence may be added to the end of a transmission information sequence and termination processing (termination) may be performed.
  • encoding section 4405 receives as input known information (for example, all zeros), and the termination sequence is composed only of parity sequences obtained by encoding the known information. Therefore, in the termination sequence, a portion that does not follow the known information insertion rule described in the present invention occurs.
  • the termination in order to improve the transmission speed, there may be both a portion that complies with the insertion rule and a portion that does not insert known information. Termination processing (termination) will be described in the eleventh embodiment.
  • coding with a high error correction capability is performed using LDPC-CC with a time-varying period h (h is an integer of 4 or more) of the coding rate (n ⁇ 1) / n described in the first embodiment.
  • h is an integer of 4 or more
  • a erasure correction method that realizes a coding rate smaller than rate (n ⁇ 1) / n will be described.
  • the description of LDPC-CC with a coding rate (n ⁇ 1) / n time-varying period h (h is an integer of 4 or more) is the same as in the ninth embodiment.
  • Method # 3-1 In method # 3-1, as shown in FIG. 56, h ⁇ n ⁇ k bits (k is a natural number) composed of information and parity are used as periods, and the known information included in the known information packet is located at the same position in each period. (Insertion rule of method # 3-1). In each cycle, the known information included in the known information packet is inserted at the same position as described in the method # 2-2 in the ninth embodiment.
  • Method # 3-2 information X1 , hi , X2 , hi ,..., Xn-1, hi ,... .., X 1, h (i + k-1) + h-1 , X 2, h (i + k-1) + h-1 ,..., X n-1, h (i + k-1) + h-1 h ⁇ Z bits are selected from (n ⁇ 1) ⁇ k bits, and data of a known information packet (for example, zero (may be 1 or a predetermined value)) is inserted into the selected Z bits (method # 3- 2 insertion rule).
  • a known information packet for example, zero (may be 1 or a predetermined value
  • the LDPC-CC having a coding rate (n-1) / n with a good coding rate (n-1) / n with the above-described characteristics is used, and the erasure correction code has a high erasure correction capability and a low circuit scale.
  • a system capable of changing the coding rate can be realized.
  • the erasure correction method in the upper layer has been described as the erasure correction method in which the coding rate of the erasure correction code is variable.
  • the configurations of the erasure correction coding related processing unit and the erasure correction decoding related processing unit that make the coding rate of the erasure correction code variable in the upper layer are known information before the erasure correction coding related processing unit 2112 in FIG. By inserting the packet, the coding rate of the erasure correction code can be changed.
  • the transmission rate can be improved by increasing the coding rate when the communication status is good.
  • the erasure correction capability is improved by inserting known information contained in the known information packet according to the check matrix as in [Method # 3-2]. Can do.
  • Method # 3-2 describes the case where the number of data of the known information packet to be inserted is the same in each cycle, but the number of data to be inserted may be different in each cycle. For example, as shown in FIG. 57, N 0 information is used as data of a known information packet in the first cycle, N 1 information is used as data of a known information packet in the next cycle, and N information is used in the i th cycle. i pieces of information may be used as data of a known information packet.
  • Method # 3-3 the data sequence formed from the information and parity information X 1,0, X 2,0, ⁇ , X n-1,0, ⁇ , X 1, v, X 2, v, ⁇ , X n-1, v selected Z bits from the bit sequence of known information Z bits selected (e.g., may be the zero (1, may be a predetermined value) ) Is inserted (insertion rule of method # 3-3).
  • the coding rate of the erasure correction code using the method for realizing a coding rate smaller than the coding rate of the code can be changed from the LDPC-CC having the time varying period h described in the first embodiment.
  • the coding rate variable method according to the present embodiment it is possible to achieve both improvement in transmission efficiency and improvement in erasure correction capability, and even when the coding rate is changed during erasure correction, good erasure is achieved. Correction ability can be obtained.
  • FIG. 58 is a diagram for explaining “Information-zero-termination” in LDPC-CC with a coding rate (n ⁇ 1) / n.
  • Point i (i 0,1,2,3, ⁇ , s) information bits X 1, X 2 in, ..., a X n-1 and the parity bit P, X 1, i, X 2, i, ⁇ ⁇ ⁇ , and X n-1, i and parity bit P i.
  • X n ⁇ 1, s is the last bit (4901) of information to be transmitted.
  • the encoder only encodes up to time point s and the transmitting device on the encoding side transmits to the receiving device on the decoding side only up to P s , the decoder receives information bits.
  • the quality is greatly degraded.
  • encoding is performed assuming that information bits after the last information bits X n ⁇ 1, s (referred to as “virtual information bits”) are “0”, and parity bits (4903) Is generated.
  • the decoder uses the fact that the virtual information bit is known to be “0” after time s, and performs decoding. In the above description, the case where the virtual information bit is “0” has been described as an example. However, the present invention is not limited to this, and the virtual information bit can be similarly implemented as long as it is known data in the transmission / reception apparatus. .
  • time-varying cycle of the LDPC-CC described in the first embodiment is a prime number.
  • time varying period is an odd number, and the number of divisors for the value of the time varying period is small.
  • Equations (86-0) to (86-14) are parity check polynomials (satisfying 0) of LDPC-CC with coding rate (n-1) / n (n is an integer of 2 or more) and time-varying period 15 think of.
  • X 1 (D), X 2 (D), ⁇ , X n-1 (D) is data (information) X 1, X 2, a polynomial representation of ⁇ X n-1, P (D) is a polynomial expression of parity.
  • the equations (86-0) to (86-14) for example, when the coding rate is 1/2, only the terms X 1 (D) and P (D) exist, and X 2 (D),. ⁇ The term of X n-1 (D) does not exist.
  • the coding rate is 2/3, only the terms X 1 (D), X 2 (D), and P (D) exist, and X 3 (D),..., X n ⁇ 1
  • the term (D) does not exist.
  • a # q, p, 1 , a # q, p, 2 and a # q, p, 3 are natural numbers, and a # q, p, 1 ⁇ a # q, p, 2 , A # q, p, 1 ⁇ a # q, p, 3 , a # q, p, 2 ⁇ a # q, p, 3 .
  • the parity check polynomial of equation (86-q) is called “check equation #q”, and the sub-matrix based on the parity check polynomial of equation (86-q) is called q-th sub-matrix H q .
  • the 0th sub-matrix H 0 the first sub-matrix H 1, second sub-matrix H 2, ⁇ ⁇ ⁇ , 13 sub-matrix H 13, the varying period 15 when generated from the 14 sub-matrix H 14 LDPC- Think about CC. Therefore, the code configuration method, the parity check matrix generation method, the encoding method, and the decoding method are the same as those described in the first and sixth embodiments.
  • both the time varying period of the coefficient of X 1 (D) and the time varying period of the coefficient of P (D) are 15.
  • the time varying period 3 of the coefficient of X 1 (D) and the time varying period 5 of the coefficient of P (D) are set so that the time varying period of the LDPC-CC is 15
  • a code construction method is proposed.
  • the time varying period of the coefficient of X 1 (D) is ⁇
  • the time varying period of the coefficient of P (D) is ⁇ ( ⁇ ⁇ ⁇ )
  • LCM (X, Y) is the least common multiple of X and Y.
  • ⁇ Condition # 19-1> and ⁇ Condition # 20-1> are not necessarily necessary conditions. That is, only ⁇ condition # 19-2> and ⁇ condition # 20-2> may be given as conditions. Further, instead of ⁇ Condition # 19-1> and ⁇ Condition # 20-1>, conditions of ⁇ Condition # 19-1 '> and ⁇ Condition # 20-1'> may be given.
  • the time varying period of the coefficient of X 1 (D) is ⁇
  • the time varying period of the coefficient of P (D) is ⁇
  • the time varying period of the LDPC-CC is LCM
  • Parity check satisfying the i-th (i 0, 1, 2,..., S ⁇ 2, s ⁇ 1) zero of LDPC-CC based on a parity check polynomial with a coding rate of 1 ⁇ 2 of time-varying period s
  • the polynomial is expressed as follows:
  • ⁇ Condition # 21-1> and ⁇ Condition # 22-1> are not necessarily necessary conditions. That is, only ⁇ condition # 21-2> and ⁇ condition # 22-2> may be given as conditions. Further, instead of ⁇ Condition # 21-1> and ⁇ Condition # 22-1>, the conditions ⁇ Condition # 21-1 '> and ⁇ Condition # 22-1'> may be given.
  • the parity check polynomial is expressed by the equation (89-i), when actually used, the parity check polynomial satisfies zero expressed by the following equation.
  • ⁇ and ⁇ are preferably “coprime”.
  • “ ⁇ and ⁇ are relatively prime” means that ⁇ and ⁇ are in a relationship that does not have a common divisor other than 1 (and ⁇ 1).
  • the time-varying period can be expressed as ⁇ ⁇ ⁇ .
  • ⁇ and ⁇ may be odd numbers.
  • ⁇ and ⁇ are not odd numbers, there is a possibility that high error correction capability can be obtained.
  • the time-varying period s LCM ( ⁇ 1 , ⁇ 2 ,... ⁇ n-2 , ⁇ n ⁇ 1 , ⁇ ). That is, the time-varying period s is the least common multiple of ⁇ 1 , ⁇ 2 ,... ⁇ n-2 , ⁇ n ⁇ 1 , ⁇ .
  • a parity check polynomial satisfying the condition is a parity check polynomial satisfying zero represented by the following expression.
  • X 1 (D), X 2 (D),..., X n ⁇ 2 (D), X n ⁇ 1 (D), and P (D) are not limited to three terms. Think of no case. Then, referring to the above, the following conditions are important in the code configuration method according to the present embodiment.

Abstract

 誤り訂正能力の高い時変LDPC-CCの符号化方法及び符号化器を提供すること。符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法において、前記時変周期qが、3より大きい素数であり、情報系列を入力とし、式(1)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて、前記情報系列を符号化する。 式 (1)において、「%」はmoduloを意味し、各係数が、k=1、2、…、n-1に対し、下記を満たす。「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k:固定値)」 「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w:固定値)」 「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k:固定値)」 「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z:固定値)」 「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k:固定値)」 また、式(1)において、a#g,k,1、a#g,k,2、a#g,k,3は1以上の自然数とし、a#g,k,1≠a#g,k,2、a#g,k,1≠a#g,k,3、a#g,k,2≠a#g,k,3が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする。 また、式(1)において、vp=k、yp=kは、1以上の自然数とする。

Description

符号化方法、復号方法、符号化器、及び、復号器
 本発明は、複数の符号化率に対応可能な低密度パリティ検査畳み込み符号(LDPC-CC:Low Density Parity Check-Convolutional Codes)を用い符号化方法、復号方法、符号化器、及び、復号器に関する。
 近年、実現可能な回路規模で高い誤り訂正能力を発揮する誤り訂正符号として、低密度パリティ検査(LDPC:Low-Density Parity-Check)符号に注目が集まっている。LDPC符号は、誤り訂正能力が高く、かつ実装が容易なので、IEEE802.11nの高速無線LANシステムやディジタル放送システムなどの誤り訂正符号化方式に採用されている。
 LDPC符号は、低密度なパリティ検査行列Hで定義される誤り訂正符号である。また、LDPC符号は、検査行列Hの列数Nと等しいブロック長を持つブロック符号である(非特許文献1、非特許文献2、非特許文献3参照)。例えば、ランダム的なLDPC符号、QC-LDPC符号(QC:Quasi-Cyclic)が提案されている。
 しかし、現在の通信システムの多くは、イーサネット(登録商標)のように、送信情報を、可変長のパケットやフレーム毎にまとめて伝送するという特徴がある。このようなシステムにブロック符号であるLDPC符号を適用する場合、例えば、可変長なイーサネット(登録商標)のフレームに対して固定長のLDPC符号のブロックをどのように対応させるかといった課題が生じる。IEEE802.11nでは、送信情報系列にパディング処理やパンクチャ処理を施すことで、送信情報系列の長さと、LDPC符号のブロック長の調節を行っている。しかし、パディングやパンクチャによって、符号化率が変化したり、冗長な系列を送信したりすることを避けることは困難である。
 このようなブロック符号のLDPC符号(以降、これをLDPC-BC:Low-Density Parity-Check Block Codeと標記する)に対して、任意の長さの情報系列に対しての符号化・復号化が可能なLDPC-CC(Low-Density Parity-Check Convolutional Codes)の検討が行われている(例えば、非特許文献8、非特許文献9参照)。
 LDPC-CCは、低密度なパリティ検査行列により定義される畳み込み符号である。例えば、符号化率R=1/2(=b/c)のLDPC-CCのパリティ検査行列H[0,n]は、図1で示される。ここで、H[0,n]の要素h (m)(t)は、0又は1をとる。また、h (m)(t)以外の要素は全て0である。MはLDPC-CCにおけるメモリ長、nはLDPC-CCの符号語の長さをあらわす。図1に示されるように、LDPC-CCの検査行列は行列の対角項とその近辺の要素にのみに1が配置されており、行列の左下及び右上の要素はゼロであり、平行四辺形型の行列であるという特徴がある。
 ここで,h (0)(t)=1,h (0)(t)=1であるとき、検査行列H[0,n]Tで定義されるLDPC-CCの符号化器は図2であらわされる。図2に示すように、LDPC-CCの符号化器は、ビットレングスcのシフトレジスタ2×(M+1)個とmod2加算(排他的論理和演算)器で構成される。このため、LDPC-CCの符号化器には、生成行列の乗算を行う回路、或いは、後退(前方)代入法に基づく演算を行うLDPC-BCの符号化器に比べ、非常に簡易な回路で実現することができるという特徴がある。また、図2は畳み込み符号の符号化器であるため、情報系列を固定長のブロックに区切って符号化する必要はなく、任意の長さの情報系列を符号化することができる。
 特許文献1には、パリティ検査多項式に基づいたLDPC-CCの生成方法について述べられている。特に、特許文献1では、時変周期2、時変周期3、時変周期4、及び、時変周期が3の倍数のパリティ検査多項式を用いたLDPC-CCの生成方法について述べられている。
特開2009-246926号公報
R. G. Gallager, "Low-density parity check codes," IRE Trans. Inform. Theory, IT-8, pp-21-28, 1962. D. J. C. Mackay, "Good error-correcting codes based on very sparse matrices," IEEE Trans. Inform. Theory, vol.45, no.2, pp399-431, March 1999. M. P. C. Fossorier, "Quasi-cyclic low-density parity-check codes from circulant permutation matrices," IEEE Trans. Inform. Theory, vol.50, no.8, pp.1788-1793, Nov. 2001. M. P. C. Fossorier, M. Mihaljevic, and H. Imai, "Reduced complexity iterative decoding of low density parity check codes based on belief propagation," IEEE Trans. Commun., vol.47., no.5, pp.673-680, May 1999. J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, and X.-Yu Hu, "Reduced-complexity decoding of LDPC codes," IEEE Trans. Commun., vol.53., no.8, pp.1288-1299, Aug. 2005. J. Zhang, and M. P. C. Fossorier, "Shuffled iterative decoding," IEEE Trans. Commun., vol.53, no.2, pp.209-213, Feb. 2005. IEEE Standard for Local and Metropolitan Area Networks, IEEE P802.16e/D12, Oct. 2005. A. J. Feltstrom, and K. S. Zigangirov, "Time-varying periodic convolutional codes with low-density parity-check matrix," IEEE Trans. Inform. Theory, vol.45, no.6, pp.2181-2191, Sep. 1999. R. M. Tanner, D. Sridhara, A. Sridharan, T. E. Fuja, and D. J. Costello Jr., "LDPC block and convolutional codes based on circulant matrices," IEEE Trans. Inform. Theory, vol.50, no.12, pp.2966-2984, Dec. 2004. H. H. Ma, and J. K. Wolf, "On tail biting convolutional codes," IEEE Trans. Commun., vol.com-34, no.2, pp.104-111, Feb. 1986. C. Weib, C. Bettstetter, and S. Riedel, "Code construction and decoding of parallel concatenated tail-biting codes," IEEE Trans. Inform. Theory, vol.47, no.1, pp.366-386, Jan. 2001. M. B. S. Tavares, K. S. Zigangirov, and G. P. Fettweis, "Tail-biting LDPC convolutional codes," Proc. of IEEE ISIT 2007, pp.2341-2345, June 2007. G. Muller, and D. Burshtein, "Bounds on the maximum likelihood decoding error probability of low-density parity check codes," IEEE Trans. Inf. Theory, vol.47, no.7, pp.2696-2710, Nov. 2001. R. G. Gallager, "A simple derivation of the coding theorem and some applications," IEEE Trans. Inf. Theory, vol.IT-11, no.1, pp.3-18, Jan. 1965. A. J. Viterbi, "Error bounds for convolutional codes and an asymptotically optimum decoding algorithm," IEEE Trans. Inf. Theory, vol.IT-13, no.2, pp.260-269, April 1967. A. J. Viterbi, and J. K. Omura, "Principles of digital communication and coding," McGraw-Hill, New York 1979.
 しかしながら、特許文献1には、時変周期2、3、4、及び時変周期が3の倍数のLDPC-CCについては、詳細に生成方法が記載されているものの、時変周期が限定的である。
 本発明の目的は、誤り訂正能力の高い時変LDPC-CCの符号化方法、復号方法、符号化器、及び、復号器を提供することである。
 本発明の符号化方法の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法であって、前記時変周期qが、3より大きい素数であり、情報系列を入力とし、式(116)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて、前記情報系列を符号化する。
 本発明の符号化方法の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法であって、前記時変周期qが、3より大きい素数であり、情報系列を入力とし、式(117)であらわされるg番目(g=0、1、・・・、q-1)の0を満たすパリティ検査多項式のうち、
 「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=・・・=a#g,k,1%q=・・・=a#q-2,k,1%q=a#q-1,k,1%q=vp=k (vp=k:固定値)」、
 「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=・・・=b#g,1%q=・・・=b#q-2,1%q=b#q-1,1%q=w (w:固定値)」、
 「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=・・・=a#g,k,2%q=・・・=a#q-2,k,2%q=a#q-1,k,2%q=yp=k (yp=k:固定値)」、
 「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=・・・=b#g,2%q=・・・=b#q-2,2%q=b#q-1,2%q=z (z:固定値)」、
 及び、
 「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=・・・=a#g,k,3%q=・・・=a#q-2,k,3%q=a#q-1,k,3%q=sp=k (sp=k:固定値)」
 を、k=1、2、・・・、n-1に対して満たすパリティ検査多項式を用いて、前記情報系列を符号化する。
 本発明の符号化器の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化器であって、前記時変周期qが、3より大きい素数であり、時点iの情報ビットX[i](r=1,2,…,n-1)を入力し、式(116)であらわされるg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式と等価な式を式(118)とし、i%q=kの場合に、式(118)のgにkを代入した式を用いて、時点iのパリティビットP[i]を生成する生成手段と、前記パリティビットP[i]を出力する出力手段と、を具備する。
 本発明の復号方法の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期q(3より大きい素数)の低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う上記符号化方法において、式(116)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号方法であって、前記符号化情報系列を入力とし、g番目の0を満たす前記パリティ検査多項式である式(116)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する。
 本発明の復号器の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期q(3より大きい素数)の低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う上記符号化方法において、式(116)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号器であって、前記符号化情報系列を入力とし、g番目の0を満たす前記パリティ検査多項式である式(116)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する復号手段、を具備する。
 本発明によれば、高い誤り訂正能力を得ることができるため、高いデータ品質を確保することができる。
LDPC-CCの検査行列を示す図 LDPC-CC符号化器の構成を示す図 時変周期mのLDPC-CCの検査行列の構成の一例を示す図 時変周期3のLDPC-CCのパリティ検査多項式及び検査行列Hの構成を示す図 図4Aの「検査式#1」~「検査式#3」のX(D)に関する各項同士の信頼度伝播の関係を示す図 「検査式#1」~「検査式#6」のX(D)に関する各項同士の信頼度伝播の関係を示す図 (7,5)畳み込み符号の検査行列を示す図 符号化率2/3、時変周期2のLDPC-CCの検査行列Hの構成の一例を示す図 符号化率2/3、時変周期mのLDPC-CCの検査行列の構成の一例を示す図 符号化率(n-1)/n、時変周期mのLDPC-CCの検査行列の構成の一例を示す図 LDPC-CC符号化部の構成の一例を示す図 パリティ検査行列の一例を示すブロック図 時変周期6のLDPC-CCのツリーの一例を示す図 時変周期6のLDPC-CCのツリーの一例を示す図 符号化率(n-1)/n、時変周期6のLDPC-CCの検査行列の構成の一例を示す図 時変周期7のLDPC-CCのツリーの一例を示す図 符号化率1/2の符号化器の回路例を示す図 符号化率1/2の符号化器の回路例を示す図 符号化率1/2の符号化器の回路例を示す図 ゼロターミネーションの方法を説明するための図 ゼロターミネーションを行ったときの検査行列の一例を示す図 テイルバイティングを行ったときの検査行列の一例を示す図 テイルバイティングを行ったときの検査行列の一例を示す図 通信システムの概略を示す図 LDPC符号による消失訂正符号化を利用した通信システムの概念図 通信システムの全体構成図 消失訂正符号化関連処理部の構成の一例を示す図 消失訂正符号化関連処理部の構成の一例を示す図 消失訂正復号化関連処理部の構成の一例を示す図 消失訂正符号化器の構成の一例を示す図 通信システムの全体構成図 消失訂正符号化関連処理部の構成の一例を示す図 消失訂正符号化関連処理部の構成の一例を示す図 複数符号化率に対応する消失訂正符号化部の構成の一例を示す図 符号化器の符号化の概略を説明するための図 複数符号化率に対応する消失訂正符号化部の構成の一例を示す図 複数符号化率に対応する消失訂正符号化部の構成の一例を示す図 複数符号化率に対応する復号化器の構成の一例を示す図 複数符号化率に対応する復号化器が用いるパリティ検査行列の構成の一例を示す図 消失訂正符号を行う場合と、消失訂正符号化を行う場合と行わない場合とのパケット構成の一例を示す図 パリティ検査多項式#α及び#βに相当するチェックノードと変数ノードとの関係を説明するための図 パリティ検査行列Hにおいて、X(D)に関する部分のみを抽出して生成されるサブ行列を示す図 時変周期7のLDPC-CCのツリーの一例を示す図 時変周期6のLDPC-CCのツリー時変周期hの一例を示す図 表9の#1,#2,#3の正則TV11-LDPC-CCのBER特性を示す図 符号化率(n-1)/n、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式(83)に対応するパリティ検査行列を示す図 情報パケットとパリティパケットとが別々に構成される場合の並び替えパターンの一例を示す図 情報パケットとパリティパケットとの区別なく構成される場合の並び替えパターンの一例を示す図 物理層より上位の層における符号化方法(パケットレベルでの符号化方法)の詳細について説明するための図 物理層より上位の層における別の符号化方法(パケットレベルでの符号化方法)の詳細について説明するための図 パリティ群及びサブパリティパケットの構成例を示す図 ショートニング方法[方法#1-2]を説明するための図 ショートニング方法[方法#1-2]における挿入ルールを説明するための図 既知情報を挿入する位置と誤り訂正能力との関係について説明するための図 パリティ検査多項式と時点との対応関係を示す図 ショートニング方法[方法#2-2]を説明するための図 ショートニング方法[方法#2-4]を説明するための図 物理層において符号化率を可変とする場合の符号化に関連する部分の構成の一例を示すブロック図 物理層において符号化率を可変とする場合の符号化に関連する部分の構成の別の一例を示すブロック図 物理層における誤り訂正復号部の構成の一例を示すブロック図 消失訂正方法[方法#3-1]を説明するための図 消失訂正方法[方法#3-3]を説明するための図 符号化率(n-1)/nのLDPC-CCにおける「Information-zero-termination」を説明するための図 実施の形態12に係る符号化方法を説明するための図 符号化器/復号化器の回路を共通化することが可能な符号化率1/2,2/3のLDPC-CCのパリティ検査多項式を模式的にあらわした図 実施の形態13に係る符号化器の要部構成の一例を示すブロック図 第1情報演算部の内部構成を示す図 パリティ演算部の内部構成を示す図 実施の形態13に係る符号化器の別の構成例を示す図 実施の形態13に係る復号化器の要部構成の一例を示すブロック図 符号化率1/2の場合における対数尤度比設定部の動作を説明するための図 符号化率2/3の場合における対数尤度比設定部の動作を説明するための図 実施の形態13に係る符号化器を搭載する通信装置の構成の一例を示す図 送信フォーマットの一例を示す図 実施の形態13に係る復号化器を搭載する通信装置の構成の一例を示す図
 以下、本発明の実施の形態について、図面を参照して詳細に説明する。
 先ず、実施の形態の具体的な構成及び動作を説明する前に、特許文献1に記載されているパリティ検査多項式に基づくLDPC-CCについて説明する。
 [パリティ検査多項式に基づくLDPC-CC]
 先ず、時変周期4のLDPC-CCについて説明する。なお、以下では、符号化率1/2の場合を例に説明する。
 時変周期を4とするLDPC-CCのパリティ検査多項式として、式(1-1)~(1-4)を考える。このとき、X(D)はデータ(情報)の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(1-1)~(1-4)では、X(D)、P(D)それぞれに4つの項が存在するようなパリティ検査多項式としたが、これは、良好な受信品質を得る上で、4つの項とすると好適であるからである。
Figure JPOXMLDOC01-appb-M000001
 式(1-1)において、a1、a2、a3、a4は整数(ただし、a1≠a2≠a3≠a4であり、a1からa4の全てが異なる)とする。なお、以降、「X≠Y≠・・・≠Z」と標記する場合、X、Y、・・・、Zは互いに、全て異なることをあらわすものとする。また、b1、b2、b3、b4は整数(ただし、b1≠b2≠b3≠b4)とする。式(1-1)のパリティ検査多項式を「検査式#1」と呼び、式(1-1)のパリティ検査多項式に基づくサブ行列を、第1サブ行列Hとする。
 また、式(1-2)において、A1、A2、A3、A4は整数(ただし、A1≠A2≠A3≠A4)とする。また、B1、B2、B3、B4は整数(ただし、B1≠B2≠B3≠B4)とする。式(1-2)のパリティ検査多項式を「検査式#2」と呼び、式(1-2)のパリティ検査多項式に基づくサブ行列を、第2サブ行列Hとする。
 また、式(1-3)において、α1、α2、α3、α4は整数(ただし、α1≠α2≠α3≠α4)とする。また、β1、β2、β3、β4は整数(ただし、β1≠β2≠β3≠β4)とする。式(1-3)のパリティ検査多項式を「検査式#3」と呼び、式(1-3)のパリティ検査多項式に基づくサブ行列を、第3サブ行列Hとする。
 また、式(1-4)において、E1、E2、E3、E4は整数(ただし、E1≠E2≠E3≠E4)とする。また、F1、F2、F3、F4は整数(ただし、F1≠F2≠F3≠F4)とする。式(1-4)のパリティ検査多項式を「検査式#4」と呼び、式(1-4)のパリティ検査多項式に基づくサブ行列を、第4サブ行列Hとする。
 そして、第1サブ行列H、第2サブ行列H、第3サブ行列H、第4サブ行列Hから、図3のように検査行列を生成した時変周期4のLDPC-CCについて考える。
 このとき、式(1-1)~(1-4)において、X(D)及びP(D)の次数の組み合わせ(a1、a2、a3、a4)、(b1、b2、b3、b4)、(A1、A2、A3、A4)、(B1、B2、B3、B4)、(α1、α2、α3、α4)、(β1、β2、β3、β4)、(E1、E2、E3、E4)、(F1、F2、F3、F4)の各値を4で除算した余りをkとした場合、上記のようにあらわした4つの係数セット(例えば、(a1、a2、a3、a4))に、余り0、1、2、3が1つずつ含まれるようにし、かつ、上記の4つの係数セット全てで成立するようにする。
 例えば、「検査式#1」のX(D)の各次数(a1、a2、a3、a4)を(a1、a2、a3、a4)=(8,7,6,5)とすると、各次数(a1、a2、a3、a4)を4で除算した余りkは、(0,3,2,1)となり、4つの係数セットに、余り(k)0、1、2、3が1つずつ含まれるようになる。同様に、「検査式#1」のP(D)の各次数(b1、b2、b3、b4)を(b1、b2、b3、b4)=(4,3,2,1)とすると、各次数(b1、b2、b3、b4)を4で除算した余りkは、(0,3,2,1)となり、4つの係数セットに、余り(k)として、0、1、2、3が1つずつ含まれるようになる。他の検査式(「検査式#2」、「検査式#3」、「検査式#4」)のX(D)及びP(D)それぞれの4つの係数セットについても上記の「余り」に関する条件が成立するものとする。
 このようにすることで、式(1-1)~(1-4)から構成される検査行列Hの列重みが全ての列において4となる、レギュラーLDPC符号を形成することができるようになる。ここで、レギュラーLDPC符号とは、各列重みが一定とされた検査行列により定義されるLDPC符号であり、特性が安定し、エラーフロアが出にくいという特徴がある。特に、列重みが4の場合、特性が良好であることから、上記のようにしてLDPC-CCを生成することにより、受信性能が良いLDPC-CCを得ることができるようになる。
 なお、表1は、上記「余り」に関する条件が成り立つ、時変周期4、符号化率1/2のLDPC-CCの例(LDPC-CC#1~#3)である。表1において、時変周期4のLDPC-CCは、「検査多項式#1」、「検査多項式#2」、「検査多項式#3」、「検査多項式#4」の4つのパリティ検査多項式により定義される。
Figure JPOXMLDOC01-appb-T000001
 上記では、符号化率1/2の時を例に説明したが、符号化率が(n-1)/nのときについても、情報X(D)、X(D)、・・・、Xn-1(D)におけるそれぞれの4つの係数セットにおいて、上記の「余り」に関する条件が成立すれば、やはり、レギュラーLDPC符号となり、良好な受信品質を得ることができる。
 なお、時変周期2の場合においても、上記「余り」に関する条件を適用すると、特性が良好な符号を探索できることが確認された。以下、特性が良好な時変周期2のLDPC-CCについて説明する。なお、以下では、符号化率1/2の場合を例に説明する。
 時変周期を2とするLDPC-CCのパリティ検査多項式として、式(2-1)、(2-2)を考える。このとき、X(D)はデータ(情報)の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(2-1)、(2-2)では、X(D)、P(D)それぞれに4つの項が存在するようなパリティ検査多項式としたが、これは、良好な受信品質を得る上で、4つの項とすると好適であるからである。
Figure JPOXMLDOC01-appb-M000002
 式(2-1)において、a1、a2、a3、a4は整数(ただし、a1≠a2≠a3≠a4)とする。また、b1、b2、b3、b4は整数(ただし、b1≠b2≠b3≠b4)とする。式(2-1)のパリティ検査多項式を「検査式#1」と呼び、式(2-1)のパリティ検査多項式に基づくサブ行列を、第1サブ行列Hとする。
 また、式(2-2)において、A1、A2、A3、A4は整数(ただし、A1≠A2≠A3≠A4)とする。また、B1、B2、B3、B4は整数(ただし、B1≠B2≠B3≠B4)とする。式(2-2)のパリティ検査多項式を「検査式#2」と呼び、式(2-2)のパリティ検査多項式に基づくサブ行列を、第2サブ行列Hとする。
 そして、第1サブ行列H及び第2サブ行列Hから生成する時変周期2のLDPC-CCについて考える。
 このとき、式(2-1)、(2-2)において、X(D)及びP(D)の次数の組み合わせ(a1、a2、a3、a4)、(b1、b2、b3、b4)、(A1、A2、A3、A4)、(B1、B2、B3、B4)の各値を4で除算した余りをkとした場合、上記のようにあらわした4つの係数セット(例えば、(a1、a2、a3、a4))に、余り0、1、2、3が1つずつ含まれるようにし、かつ、上記の4つの係数セット全てで成立するようにする。
 例えば、「検査式#1」のX(D)の各次数(a1、a2、a3、a4)を(a1、a2、a3、a4)=(8,7,6,5)とすると、各次数(a1、a2、a3、a4)を4で除算した余りkは、(0,3,2,1)となり、4つの係数セットに、余り(k)0、1、2、3が1つずつ含まれるようになる。同様に、「検査式#1」のP(D)の各次数(b1、b2、b3、b4)を(b1、b2、b3、b4)=(4,3,2,1)とすると、各次数(b1、b2、b3、b4)を4で除算した余りkは、(0,3,2,1)となり、4つの係数セットに、余り(k)として、0、1、2、3が1つずつ含まれるようになる。「検査式#2」のX(D)及びP(D)それぞれの4つの係数セットについても上記の「余り」に関する条件が成立するものとする。
 このようにすることで、式(2-1)、(2-2)から構成される検査行列Hの列重みが全ての列において4となる、レギュラーLDPC符号を形成することができるようになる。ここで、レギュラーLDPC符号とは、各列重みが一定とされた検査行列により定義されるLDPC符号であり、特性が安定し、エラーフロアが出にくいという特徴がある。特に、行重みが8の場合、特性が良好であることから、上記のようにしてLDPC-CCを生成することにより、受信性能を更に向上することができるLDPC-CCを得ることができるようになる。
 なお、表2に、上記「余り」に関する条件が成り立つ、時変周期2、符号化率1/2のLDPC-CCの例(LDPC-CC#1、#2)を示す。表2において、時変周期2のLDPC-CCは、「検査多項式#1」、「検査多項式#2」の2つのパリティ検査多項式により定義される。
Figure JPOXMLDOC01-appb-T000002
 上記では(時変周期2のLDPC-CC)、符号化率1/2の時を例に説明したが、符号化率が(n-1)/nのときについても、情報X(D)、X(D)、・・・、Xn-1(D)におけるそれぞれの4つの係数セットにおいて、上記の「余り」に関する条件が成立すれば、やはり、レギュラーLDPC符号となり、良好な受信品質を得ることができる。
 また、時変周期3の場合においても、「余り」に関する以下の条件を適用すると、特性が良好な符号を探索できることが確認された。以下、特性が良好な時変周期3のLDPC-CCについて説明する。なお、以下では、符号化率1/2の場合を例に説明する。
 時変周期を3とするLDPC-CCのパリティ検査多項式として、式(3-1)~(3-3)を考える。このとき、X(D)はデータ(情報)の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(3-1)~(3-3)では、X(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
Figure JPOXMLDOC01-appb-M000003
 式(3-1)において、a1、a2、a3は整数(ただし、a1≠a2≠a3)とする。また、b1、b2、b3は整数(ただし、b1≠b2≠b3)とする。式(3-1)のパリティ検査多項式を「検査式#1」と呼び、式(3-1)のパリティ検査多項式に基づくサブ行列を、第1サブ行列Hとする。
 また、式(3-2)において、A1、A2、A3は整数(ただし、A1≠A2≠A3)とする。また、B1、B2、B3は整数(ただし、B1≠B2≠B3)とする。式(3-2)のパリティ検査多項式を「検査式#2」と呼び、式(3-2)のパリティ検査多項式に基づくサブ行列を、第2サブ行列Hとする。
 また、式(3-3)において、α1、α2、α3は整数(ただし、α1≠α2≠α3)とする。また、β1、β2、β3は整数(ただし、β1≠β2≠β3)とする。式(3-3)のパリティ検査多項式を「検査式#3」と呼び、式(3-3)のパリティ検査多項式に基づくサブ行列を、第3サブ行列Hとする。
 そして、第1サブ行列H、第2サブ行列H、第3サブ行列Hから生成する時変周期3のLDPC-CCについて考える。
 このとき、式(3-1)~(3-3)において、X(D)及びP(D)の次数の組み合わせ(a1、a2、a3)、(b1、b2、b3)、(A1、A2、A3)、(B1、B2、B3)、(α1、α2、α3)、(β1、β2、β3)の各値を3で除算した余りをkとした場合、上記のようにあらわした3つの係数セット(例えば、(a1、a2、a3))に、余り0、1、2が1つずつ含まれるようにし、かつ、上記の3つの係数セット全てで成立するようにする。
 例えば、「検査式#1」のX(D)の各次数(a1、a2、a3)を(a1、a2、a3)=(6,5,4)とすると、各次数(a1、a2、a3)を3で除算した余りkは、(0,2,1)となり、3つの係数セットに、余り(k)0、1、2が1つずつ含まれるようになる。同様に、「検査式#1」のP(D)の各次数(b1、b2、b3)を(b1、b2、b3)=(3,2,1)とすると、各次数(b1、b2、b3)を4で除算した余りkは、(0,2,1)となり、3つの係数セットに、余り(k)として、0、1、2が1つずつ含まれるようになる。「検査式#2」、「検査式#3」のX(D)及びP(D)それぞれの3つの係数セットについても上記の「余り」に関する条件が成立するものとする。
 このようにしてLDPC-CCを生成することにより、一部の例外を除き、行重みが全ての行で等く、かつ、列重みが全ての行で等しいレギュラーLDPC-CC符号を生成することができる。なお、例外とは、検査行列の最初の一部及び最後の一部では、行重み、列重みが、他の行重み、列重みと等しくならないことをいう。更に、BP復号を行った場合、「検査式#2」における信頼度及び「検査式#3」における信頼度が、的確に「検査式#1」に対して伝播し、「検査式#1」における信頼度及び「検査式#3」における信頼度が、的確に「検査式#2」に対して伝播し、「検査式#1」における信頼度及び「検査式#2」における信頼度が、「検査式#3」に対して的確に伝播する。このため、より受信品質が良好なLDPC-CCを得ることができる。これは、列単位で考えた場合、「1」が存在する位置が、上述のように、信頼度を的確に伝播するように配置されることになるためである。
 以下、図を用いて、上述の信頼度伝播について説明する。図4Aは、時変周期3のLDPC-CCのパリティ検査多項式及び検査行列Hの構成を示している。
 「検査式#1」は、式(3-1)のパリティ検査多項式において、(a1、a2、a3)=(2,1,0)、(b1、b2、b3)=(2,1,0)の場合であり、各係数を3で除算した余りは、(a1%3、a2%3、a3%3)=(2,1,0)、(b1%3、b2%3、b3%3)=(2,1,0)である。なお、「Z%3」は、Zを3で除算した余りをあらわす。
 「検査式#2」は、式(3-2)のパリティ検査多項式において、(A1、A2、A3)=(5,1,0)、(B1、B2、B3)=(5,1,0)の場合であり、各係数を3で除算した余りは、(A1%3、A2%3、A3%3)=(2,1,0)、(B1%3、B2%3、B3%3)=(2,1,0)である。
 「検査式#3」は、式(3-3)のパリティ検査多項式において、(α1、α2、α3)=(4,2,0)、(β1、β2、β3)=(4,2,0)の場合であり、各係数を3で除算した余りは、(α1%3、α2%3、α3%3)=(1,2,0)、(β1%3、β2%3、β3%3)=(1,2,0)である。
 したがって、図4Aに示した時変周期3のLDPC-CCの例は、上述した「余り」に関する条件、つまり、
 (a1%3、a2%3、a3%3)、
 (b1%3、b2%3、b3%3)、
 (A1%3、A2%3、A3%3)、
 (B1%3、B2%3、B3%3)、
 (α1%3、α2%3、α3%3)、
 (β1%3、β2%3、β3%3)が、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなるという条件を満たしている。
 再度、図4Aに戻って、信頼度伝播について説明する。BP復号における列6506の列演算によって、「検査式#1」の領域6201の「1」は、「検査行列#2」の領域6504の「1」及び「検査行列#3」の領域6505の「1」から、信頼度が伝播される。上述したように、「検査式#1」の領域6201の「1」は、3で除算した余りが0となる係数である(a3%3=0(a3=0)、又は、b3%3=0(b3=0))。また、「検査行列#2」の領域6504の「1」は、3で除算した余りが1となる係数である(A2%3=1(A2=1)、又は、B2%3=1(B2=1))。また、「検査式#3」の領域6505の「1」は、3で除算した余りが2となる係数である(α2%3=2(α2=2)、又は、β2%3=2(β2=2))。
 このように、「検査式#1」の係数において余りが0となる領域6201の「1」は、BP復号における列6506の列演算において、「検査式#2」の係数において余りが1となる領域6504の「1」、及び、「検査式#3」の係数において余りが2となる領域6505の「1」から、信頼度が伝播される。
 同様に、「検査式#1」の係数において余りが1となる領域6202の「1」は、BP復号における列6509の列演算において、「検査式#2」の係数において余りが2となる領域6507の「1」、及び、「検査式#3」の係数において余りが0となる領域6508の「1」から、信頼度が伝播される。
 同様に、「検査式#1」の係数において余りが2となる領域6203の「1」は、BP復号における列6512の列演算において、「検査式#2」の係数において余りが0となる領域6510の「1」、及び、「検査式#3」の係数において余りが1となる領域6511の「1」から、信頼度が伝播される。
 図4Bを用いて、信頼度伝播について補足説明をする。図4Bは、図4Aの「検査式#1」~「検査式#3」のX(D)に関する各項同士の信頼度伝播の関係を示している。図4Aの「検査式#1」~「検査式#3」は、式(3-1)~(3-3)のX(D)に関する項において、(a1、a2、a3)=(2、1、0)、(A1、A2、A3)=(5、1、0)、(α1、α2、α3)=(4、2、0)の場合である。
 図4Bにおいて、四角で囲まれた項(a3、A3、α3)は、3で除算した余りが0の係数を示す。また、丸で囲まれた項(a2、A2、α1)は、3で除算した余りが1の係数を示す。また、菱形で囲まれた項(a1、A1、α2)は、3で除算した余りが2の係数を示す。
 図4Bから分かるように、「検査式#1」のa1は、3で除算した余りが異なる「検査式#2」のA3及び「検査式#3」のα1から信頼度が伝播される。「検査式#1」のa2は、3で除算した余りが異なる「検査式#2」のA1及び「検査式#3」のα3から信頼度が伝播される。「検査式#1」のa3は、3で除算した余りが異なる「検査式#2」のA2及び「検査式#3」のα2から信頼度が伝播される。図4Bには、「検査式#1」~「検査式#3」のX(D)に関する各項同士の信頼度伝播の関係を示したが、P(D)に関する各項同士についても同様のことがいえる。
 このように、「検査式#1」には、「検査式#2」の係数のうち、3で除算した余りが0、1、2となる係数から、信頼度が伝播される。つまり、「検査式#1」には、「検査式#2」の係数のうち、3で除算した余りが全て異なる係数から、信頼度が伝播されることになる。したがって、相関が低い信頼度同士が全て「検査式#1」に伝播することになる。
 同様に、「検査式#2」には、「検査式#1」の係数のうち、3で除算した余りが0、1、2となる係数から、信頼度が伝播される。つまり、「検査式#2」には、「検査式#1」の係数のうち、3で除算した余りが全て異なる係数から、信頼度が伝播されることになる。また、「検査式#2」には、「検査式#3」の係数のうち、3で除算した余りが0、1、2となる係数から、信頼度が伝播される。つまり、「検査式#2」には、「検査式#3」の係数のうち、3で除算した余りが全て異なる係数から、信頼度が伝播されることになる。
 同様に、「検査式#3」には、「検査式#1」の係数のうち、3で除算した余りが0、1、2となる係数から、信頼度が伝播される。つまり、「検査式#3」には、「検査式#1」の係数のうち、3で除算した余りが全て異なる係数から、信頼度が伝播されることになる。また、「検査式#3」には、「検査式#2」の係数のうち、3で除算した余りが0、1、2となる係数から、信頼度が伝播される。つまり、「検査式#3」には、「検査式#2」の係数のうち、3で除算した余りが全て異なる係数から、信頼度が伝播されることになる。
 このように、式(3-1)~(3-3)のパリティ検査多項式の各次数が、上述した「余り」に関する条件を満たすようにすることにより、全ての列演算において、信頼度が必ず伝播されるようになる。これにより、全ての検査式において、効率よく信頼度を伝播させることができるようになり、更に誤り訂正能力を高くすることができる。
 以上、時変周期3のLDPC-CCについて、符号化率1/2の場合を例に説明したが、符号化率は1/2に限られない。符号化率(n-1)/n(nは2以上の整数)の場合には、情報X(D)、X(D)、・・・、Xn-1(D)における、それぞれの3つの係数セットにおいて、上記の「余り」に関する条件が成立すれば、やはり、レギュラーLDPC符号となり、良好な受信品質を得ることができる。
 以下、符号化率(n-1)/n(nは2以上の整数)の場合について説明する。
 時変周期を3とするLDPC-CCのパリティ検査多項式として、式(4-1)~(4-3)を考える。このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・、Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(4-1)~(4-3)では、X(D)、X(D)、・・・、Xn-1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
Figure JPOXMLDOC01-appb-M000004
 式(4-1)において、ai,1、ai,2、ai,3(i=1,2,・・・,n-1)は整数(ただし、ai,1≠ai,2≠ai,3)とする。また、b1、b2、b3は整数(ただし、b1≠b2≠b3)とする。式(4-1)のパリティ検査多項式を「検査式#1」と呼び、式(4-1)のパリティ検査多項式に基づくサブ行列を、第1サブ行列Hとする。
 また、式(4-2)において、Ai,1、Ai,2、Ai,3(i=1,2,・・・,n-1は整数(ただし、Ai,1≠Ai,2≠Ai,3)とする。また、B1、B2、B3は整数(ただし、B1≠B2≠B3)とする。式(4-2)のパリティ検査多項式を「検査式#2」と呼び、式(4-2)のパリティ検査多項式に基づくサブ行列を、第2サブ行列Hとする。
 また、式(4-3)において、αi,1、αi,2、αi,3(i=1,2,・・・,n-1は整数(ただし、αi,1≠αi,2≠αi,3)とする。また、β1、β2、β3は整数(ただし、β1≠β2≠β3)とする。式(4-3)のパリティ検査多項式を「検査式#3」と呼び、式(4-3)のパリティ検査多項式に基づくサブ行列を、第3サブ行列Hとする。
 そして、第1サブ行列H、第2サブ行列H、第3サブ行列Hから生成する時変周期3のLDPC-CCについて考える。
 このとき、式(4-1)~(4-3)において、X(D)、X(D)、・・・、Xn-1(D)及びP(D)の次数の組み合わせ
 (a1,1、a1,2、a1,3)、
 (a2,1、a2,2、a2,3)、・・・、
 (an-1,1、an-1,2、an-1,3)、
 (b1、b2、b3)、
 (A1,1、A1,2、A1,3)、
 (A2,1、A2,2、A2,3)、・・・、
 (An-1,1、An-1,2、An-1,3)、
 (B1、B2、B3)、
 (α1,1、α1,2、α1,3)、
 (α2,1、α2,2、α2,3)、・・・、
 (αn-1,1、αn-1,2、αn-1,3)、
 (β1、β2、β3)
 の各値を3で除算した余りをkとした場合、上記のようにあらわした3つの係数セット(例えば、(a1,1、a1,2、a1,3))に、余り0、1、2が1つずつ含まれるようにし、かつ、上記の3つの係数セット全てで成立するようにする。
 つまり、
 (a1,1%3、a1,2%3、a1,3%3)、
 (a2,1%3、a2,2%3、a2,3%3)、・・・、
 (an-1,1%3、an-1,2%3、an-1,3%3)、
 (b1%3、b2%3、b3%3)、
 (A1,1%3、A1,2%3、A1,3%3)、
 (A2,1%3、A2,2%3、A2,3%3)、・・・、
 (An-1,1%3、An-1,2%3、An-1,3%3)、
 (B1%3、B2%3、B3%3)、
 (α1,1%3、α1,2%3、α1,3%3)、
 (α2,1%3、α2,2%3、α2,3%3)、・・・、
 (αn-1,1%3、αn-1,2%3、αn-1,3%3)、
 (β1%3、β2%3、β3%3)が、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなるようにする。
 このようにしてLDPC-CCを生成することにより、レギュラーLDPC-CC符号を生成することができる。更に、BP復号を行った場合、「検査式#2」における信頼度及び「検査式#3」における信頼度が、的確に「検査式#1」に対して伝播し、「検査式#1」における信頼度及び「検査式#3」における信頼度が、的確に「検査式#2」に対して伝播し、「検査式#1」における信頼度及び「検査式#2」における信頼度が、「検査式#3」に対して的確に伝播する。このため、符号化率1/2の場合と同様に、より受信品質が良好なLDPC-CCを得ることができる。
 なお、表3に、上記「余り」に関する条件が成り立つ、時変周期3、符号化率1/2のLDPC-CCの例(LDPC-CC#1、#2、#3、#4、#5、#6)を示す。表3において、時変周期3のLDPC-CCは、「検査(多項)式#1」、「検査(多項)式#2」、「検査(多項)式#3」の3つのパリティ検査多項式により定義される。
Figure JPOXMLDOC01-appb-T000003
 また、表4に、時変周期3、符号化率1/2、2/3、3/4、5/6のLDPC-CCの例を示し、表5に、時変周期3、符号化率1/2、2/3、3/4、4/5のLDPC-CCの例を示す。
Figure JPOXMLDOC01-appb-T000004
Figure JPOXMLDOC01-appb-T000005
 また、時変周期3と同様に、時変周期が3の倍数(例えば、時変周期が6、9、12、・・・)のLDPC-CCに対し、「余り」に関する以下の条件を適用すると、特性が良好な符号を探索できることが確認された。以下、特性が良好な時変周期3の倍数のLDPC-CCについて説明する。なお、以下では、符号化率1/2、時変周期6のLDPC-CCの場合を例に説明する。
 時変周期を6とするLDPC-CCのパリティ検査多項式として、式(5-1)~式(5-6)を考える。
Figure JPOXMLDOC01-appb-M000005
 このとき、X(D)はデータ(情報)の多項式表現であり、P(D)はパリティの多項式表現である。時変周期6のLDPC-CCでは、時点iのパリティPi及び情報Xiは、i%6=kとすると(k=0、1、2、3、4、5)、式(5-(k+1))のパリティ検査多項式が成立することになる。例えば、i=1とすると、i%6=1(k=1)となるので、式(6)が成立する。
Figure JPOXMLDOC01-appb-M000006
 ここで、式(5-1)~(5-6)では、X(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
 式(5-1)において、a1,1、a1,2、a1,3は整数(ただし、a1,1≠a1,2≠a1,3)とする。また、b1,1、b1,2、b1,3は整数(ただし、b1,1≠b1,2≠b1,3)とする。式(5-1)のパリティ検査多項式を「検査式#1」と呼び、式(5-1)のパリティ検査多項式に基づくサブ行列を、第1サブ行列Hとする。
 また、式(5-2)において、a2,1、a2,2、a2,3は整数(ただし、a2,1≠a2,2≠a2,3)とする。また、b2,1、b2,2、b2,3は整数(ただし、b2,1≠b2,2≠b2,3)とする。式(5-2)のパリティ検査多項式を「検査式#2」と呼び、式(5-2)のパリティ検査多項式に基づくサブ行列を、第2サブ行列Hとする。
 また、式(5-3)において、a3,1、a3,2、a3,3は整数(ただし、a3,1≠a3,2≠a3,3)とする。また、b3,1、b3,2、b3,3は整数(ただし、b3,1≠b3,2≠b3,3)とする。式(5-3)のパリティ検査多項式を「検査式#3」と呼び、式(5-3)のパリティ検査多項式に基づくサブ行列を、第3サブ行列Hとする。
 また、式(5-4)において、a4,1、a4,2、a4,3は整数(ただし、a4,1≠a4,2≠a4,3)とする。また、b4,1、b4,2、b4,3は整数(ただし、b4,1≠b4,2≠b4,3)とする。式(5-4)のパリティ検査多項式を「検査式#4」と呼び、式(5-4)のパリティ検査多項式に基づくサブ行列を、第4サブ行列Hとする。
 また、式(5-5)において、a5,1、a5,2、a5,3は整数(ただし、a5,1≠a5,2≠a5,3)とする。また、b5,1、b5,2、b5,3は整数(ただし、b5,1≠b5,2≠b5,3)とする。式(5-5)のパリティ検査多項式を「検査式#5」と呼び、式(5-5)のパリティ検査多項式に基づくサブ行列を、第5サブ行列Hとする。
 また、式(5-6)において、a6,1、a6,2、a6,3は整数(ただし、a6,1≠a6,2≠a6,3)とする。また、b6,1、b6,2、b6,3は整数(ただし、b6,1≠b6,2≠b6,3)とする。式(5-6)のパリティ検査多項式を「検査式#6」と呼び、式(5-6)のパリティ検査多項式に基づくサブ行列を、第6サブ行列Hとする。
 そして、第1サブ行列H、第2サブ行列H、第3サブ行列H、第4サブ行列H、第5サブ行列H、第6サブ行列Hから生成する時変周期6のLDPC-CCについて考える。
 このとき、式(5-1)~(5-6)において、X(D)及びP(D)の次数の組み合わせ
 (a1,1、a1,2、a1,3)、
 (b1,1、b1,2、b1,3)、
 (a2,1、a2,2、a2,3)、
 (b2,1、b2,2、b2,3)、
 (a3,1、a3,2、a3,3)、
 (b3,1、b3,2、b3,3)、
 (a4,1、a4,2、a4,3)、
 (b4,1、b4,2、b4,3)、
 (a5,1、a5,2、a5,3)、
 (b5,1、b5,2、b5,3)、
 (a6,1、a6,2、a6,3)、
 (b6,1、b6,2、b6,3)
 の各値を3で除算したときの余りkとした場合、上記のようにあらわした3つの係数セット(例えば、(a1,1、a1,2、a1,3))に、余り0、1、2が1つずつ含まれるようにし、かつ、上記の3つの係数セット全てで成立するようにする。つまり、
 (a1,1%3、a1,2%3、a1,3%3)、
 (b1,1%3、b1,2%3、b1,3%3)、
 (a2,1%3、a2,2%3、a2,3%3)、
 (b2,1%3、b2,2%3、b2,3%3)、
 (a3,1%3、a3,2%3、a3,3%3)、
 (b3,1%3、b3,2%3、b3,3%3)、
 (a4,1%3、a4,2%3、a4,3%3)、
 (b4,1%3、b4,2%3、b4,3%3)、
 (a5,1%3、a5,2%3、a5,3%3)、
 (b5,1%3、b5,2%3、b5,3%3)、
 (a6,1%3、a6,2%3、a6,3%3)、
 (b6,1%3、b6,2%3、b6,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 このようにしてLDPC-CCを生成することにより、「検査式#1」に対して、タナーグラフを描いた際、エッジが存在する場合、的確に「検査式#2、又は、検査式#5」における信頼度、「検査式#3、又は、検査式#6」における信頼度が的確に伝播する。
 また、「検査式#2」に対して、タナーグラフを描いた際、エッジが存在する場合、的確に「検査式#1、又は、検査式#4」における信頼度、「検査式#3、又は、検査式#6」における信頼度が的確に伝播する。
 また、「検査式#3」に対して、タナーグラフを描いた際、エッジが存在する場合、的確に「検査式#1、又は、検査式#4」における信頼度、「検査式#2、又は、検査式#5」における信頼度が的確に伝播する。「検査式#4」に対して、タナーグラフを描いた際、エッジが存在する場合、的確に「検査式#2、又は、検査式#5」における信頼度、「検査式#3、又は、検査式#6」における信頼度が的確に伝播する。
 また、タナーグラフを描いた際、エッジが存在する場合、「検査式#5」に対して、的確に「検査式#1、又は、検査式#4」における信頼度、「検査式#3、又は、検査式#6」における信頼度が的確に伝播する。また、「検査式#6」に対して、タナーグラフを描いた際、エッジが存在する場合、的確に「検査式#1、又は、検査式#4」における信頼度、「検査式#2、又は、検査式#5」における信頼度が的確に伝播する。
 このため、時変周期が3のときと同様に、より良好な誤り訂正能力を時変周期6のLDPC-CCが保持することになる。
 これについて、図4Cを用いて、信頼度伝播について説明する。図4Cは、「検査式#1」~「検査式#6」のX(D)に関する各項同士の信頼度伝播の関係を示している。図4Cにおいて、四角は、ax,yにおいて(x=1,2,3,4,5,6;y=1,2,3)、3で除算した余りが0の係数を示す。
 また、丸は、ax,yにおいて(x=1,2,3,4,5,6;y=1,2,3)、3で除算した余りが1の係数を示す。また、菱形は、ax,yにおいて(x=1,2,3,4,5,6;y=1,2,3)、3で除算した余りが2の係数を示す。
 図4Cから分かるように、タナーグラフを描いた際、エッジが存在した場合、「検査式#1」のa1,1は、3で除算した余りが異なる「検査式#2又は#5」及び「検査式#3又は#6」から信頼度が伝播される。同様に、タナーグラフを描いた際、エッジが存在した場合、「検査式#1」のa1,2は、3で除算した余りが異なる「検査式#2又は#5」及び「検査式#3又は#6」から信頼度が伝播される。
 同様に、タナーグラフを描いた際、エッジが存在した場合、「検査式#1」のa1,3は、3で除算した余りが異なる「検査式#2又は#5」及び「検査式#3又は#6」から信頼度が伝播される。図4Cには、「検査式#1」~「検査式#6」のX(D)に関する各項同士の信頼度伝播の関係を示したが、P(D)に関する各項同士についても同様のことがいえる。
 このように、「検査式#1」のタナーグラフにおける各ノードには、「検査式#1」以外の係数ノードから信頼度が伝播することになる。したがって、相関が低い信頼度同士が全て「検査式#1」に伝播することになるので、誤り訂正能力が向上すると考えられる。
 図4Cでは、「検査式#1」に着目したが、「検査式#2」から「検査式#6」についても同様にタナーグラフを描くことができ、「検査式#K」のタナーグラフにおける各ノードには、「検査式#K」以外の係数ノードから信頼度が伝播することになる。したがって、相関が低い信頼度同士が全て「検査式#K」に伝播することになるので、誤り訂正能力が向上すると考えられる。(K=2,3,4,5,6)
 このように、式(5-1)~(5-6)のパリティ検査多項式の各次数が、上述した「余り」に関する条件を満たすようにすることにより、全ての検査式において、効率よく信頼度を伝播させることができるようになり、誤り訂正能力を更に高くすることができる可能性が高まる。
 以上、時変周期6のLDPC-CCについて、符号化率1/2の場合を例に説明したが、符号化率は1/2に限られない。符号化率(n-1)/n(nは2以上の整数)の場合には、情報X(D)、X(D)、・・・、Xn-1(D)における、それぞれの3つの係数セットにおいて、上記の「余り」に関する条件が成立すれば、やはり、良好な受信品質を得ることができる可能性が高まる。
 以下、符号化率(n-1)/n(nは2以上の整数)の場合について説明する。
 時変周期を6とするLDPC-CCのパリティ検査多項式として、式(7-1)~(7-6)を考える。
Figure JPOXMLDOC01-appb-M000007
 このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・、Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(7-1)~(7-6)では、X(D)、X(D)、・・・、Xn-1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。上記の符号化率1/2のとき、また、時変周期3のときと同様に考えると、式(7-1)~(7-6)のパリティ検査多項式であらわされる時変周期6、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、以下の条件(<条件#1>)を満たすと、より高い誤り訂正能力を得ることができる可能性が高まる。
 ただし、時変周期6、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n-1であらわす。このとき、i%6=kとすると(k=0、1、2、3、4、5)、式(7-(k+1))のパリティ検査多項式が成立する。例えば、i=8とすると、i%6=2(k=2)となるので、式(8)が成立する。
Figure JPOXMLDOC01-appb-M000008
 <条件#1>
 式(7-1)~(7-6)において、X(D)、X(D)、・・・、Xn-1(D)及びP(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3、a#1,1,3%3)、
 (a#1,2,1%3、a#1,2,2%3、a#1,2,3%3)、・・・、
 (a#1,k,1%3、a#1,k,2%3、a#1,k,3%3)、・・・、
 (a#1,n-1,1%3、a#1,n-1,2%3、a#1,n-1,3%3)、
 (b#1,1%3、b#1,2%3、b#1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(k=1、2、3、・・・、n-1)
 かつ、
 (a#2,1,1%3、a#2,1,2%3、a#2,1,3%3)、
 (a#2,2,1%3、a#2,2,2%3、a#2,2,3%3)、・・・、
 (a#2,k,1%3、a#2,k,2%3、a#2,k,3%3)、・・・、
 (a#2,n-1,1%3、a#2,n-1,2%3、a#2,n-1,3%3)、
 (b#2,1%3、b#2,2%3、b#2,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(k=1、2、3、・・・、n-1)
 かつ、
 (a#3,1,1%3、a#3,1,2%3、a#3,1,3%3)、
 (a#3,2,1%3、a#3,2,2%3、a#3,2,3%3)、・・・、
 (a#3,k,1%3、a#3,k,2%3、a#3,k,3%3)、・・・、
 (a#3,n-1,1%3、a#3,n-1,2%3、a#3,n-1,3%3)、
 (b#3,1%3、b#3,2%3、b#3,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(k=1、2、3、・・・、n-1)
 かつ、
 (a#4,1,1%3、a#4,1,2%3、a#4,1,3%3)、
 (a#4,2,1%3、a#4,2,2%3、a#4,2,3%3)、・・・、
 (a#4,k,1%3、a#4,k,2%3、a#4,k,3%3)、・・・、
 (a#4,n-1,1%3、a#4,n-1,2%3、a#4,n-1,3%3)、
 (b#4,1%3、b#4,2%3、b#4,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(k=1、2、3、・・・、n-1)
 かつ、
 (a#5,1,1%3、a#5,1,2%3、a#5,1,3%3)、
 (a#5,2,1%3、a#5,2,2%3、a#5,2,3%3)、・・・、
 (a#5,k,1%3、a#5,k,2%3、a#5,k,3%3)、・・・、
 (a#5,n-1,1%3、a#5,n-1,2%3、a#5,n-1,3%3)、
 (b#5,1%3、b#5,2%3、b#5,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(k=1、2、3、・・・、n-1)
 かつ、
 (a#6,1,1%3、a#6,1,2%3、a#6,1,3%3)、
 (a#6,2,1%3、a#6,2,2%3、a#6,2,3%3)、・・・、
 (a#6,k,1%3、a#6,k,2%3、a#6,k,3%3)、・・・、
 (a#6,n-1,1%3、a#6,n-1,2%3、a#6,n-1,3%3)、
 (b#6,1%3、b#6,2%3、b#6,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(k=1、2、3、・・・、n-1)
 上述では、時変周期6のLDPC-CCにおいて、高い誤り訂正能力を持つ符号について説明したが、時変周期3、6のLDPC-CCの設計方法と同様に、時変周期3g(g=1、2、3、4、・・・)のLDPC-CC(つまり、時変周期が3の倍数のLDPC-CC)を作成した場合、高い誤り訂正能力を持つ符号を生成することができる。以下では、その符号の構成方法について詳しく説明する。
 時変周期を3g(g=1、2、3、4、・・・)、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCのパリティ検査多項式として、式(9-1)~(9-3g)を考える。
Figure JPOXMLDOC01-appb-M000009
 このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・、Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(9-1)~(9-3g)では、X(D)、X(D)、・・・、Xn-1
(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
 時変周期3のLDPC-CC及び時変周期6のLDPC-CCと同様に考えると、式(9-1)~(9-3g)のパリティ検査多項式であらわされる時変周期3g、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、以下の条件(<条件#2>)を満たすと、より高い誤り訂正能力を得ることができる可能性が高まる。
 ただし、時変周期3g、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n-1であらわす。このとき、i%3g=kとすると(k=0、1、2、・・・、3g-1)、式(9-(k+1))のパリティ検査多項式が成立する。例えば、i=2とすると、i%3g=2(k=2)となるので、式(10)が成立する。
Figure JPOXMLDOC01-appb-M000010
 また、式(9-1)~式(9-3g)において、a#k,p,1、a#k,p,2、a#k,p,3は整数(ただし、a#k,p,1≠a#k,p,2≠a#k,p,3)とする(k=1、2、3、・・・、3g:p=1、2、3、・・・、n-1)。また、b#k,1、b#k,2、b#k,3は整数(ただし、b#k,1≠b#k,2≠b#k,3)とする。式(9-k)のパリティ検査多項式(k=1、2、3、・・・、3g)を「検査式#k」と呼び、式(9-k)のパリティ検査多項式に基づくサブ行列を、第kサブ行列Hとする。そして、第1サブ行列H、第2サブ行列H、第3サブ行列H、・・・、第3gサブ行列H3gから生成する時変周期3gのLDPC-CCについて考える。
 <条件#2>
 式(9-1)~(9-3g)において、X(D)、X(D)、・・・、Xn-1(D)及びP(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3、a#1,1,3%3)、
 (a#1,2,1%3、a#1,2,2%3、a#1,2,3%3)、・・・、
 (a#1,p,1%3、a#1,p,2%3、a#1,p,3%3)、・・・、
 (a#1,n-1,1%3、a#1,n-1,2%3、a#1,n-1,3%3)、
 (b#1,1%3、b#1,2%3、b#1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#2,1,1%3、a#2,1,2%3、a#2,1,3%3)、
 (a#2,2,1%3、a#2,2,2%3、a#2,2,3%3)、・・・、
 (a#2,p,1%3、a#2,p,2%3、a#2,p,3%3)、・・・、
 (a#2,n-1,1%3、a#2,n-1,2%3、a#2,n-1,3%3)、
 (b#2,1%3、b#2,2%3、b#2,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3,1,1%3、a#3,1,2%3、a#3,1,3%3)、
 (a#3,2,1%3、a#3,2,2%3、a#3,2,3%3)、・・・、
 (a#3,p,1%3、a#3,p,2%3、a#3,p,3%3)、・・・、
 (a#3,n-1,1%3、a#3,n-1,2%3、a#3,n-1,3%3)、
 (b#3,1%3、b#3,2%3、b#3,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#k,1,1%3、a#k,1,2%3、a#k,1,3%3)、
 (a#k,2,1%3、a#k,2,2%3、a#k,2,3%3)、・・・、
 (a#k,p,1%3、a#k,p,2%3、a#k,p,3%3)、・・・、
 (a#k,n-1,1%3、a#k,n-1,2%3、a#k,n-1,3%3)、
 (b#k,1%3、b#k,2%3、b#k,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)(よって、k=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#3g-2,1,1%3、a#3g-2,1,2%3、a#3g-2,1,3%3)、
 (a#3g-2,2,1%3、a#3g-2,2,2%3、a#3g-2,2,3%3)、・・・、
 (a#3g-2,p,1%3、a#3g-2,p,2%3、a#3g-2,p,3%3)、・・・、
 (a#3g-2,n-1,1%3、a#3g-2,n-1,2%3、a#3g-2,n-1,3%3)、
 (b#3g-2,1%3、b#3g-2,2%3、b#3g-2,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3g-1,1,1%3、a#3g-1,1,2%3、a#3g-1,1,3%3)、
 (a#3g-1,2,1%3、a#3g-1,2,2%3、a#3g-1,2,3%3)、・・・、
 (a#3g-1,p,1%3、a#3g-1,p,2%3、a#3g-1,p,3%3)、・・・、
 (a#3g-1,n-1,1%3、a#3g-1,n-1,2%3、a#3g-1,n-1,3%3)、
 (b#3g-1,1%3、b#3g-1,2%3、b#3g-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3g,1,1%3、a#3g,1,2%3、a#3g,1,3%3)、
 (a#3g,2,1%3、a#3g,2,2%3、a#3g,2,3%3)、・・・、
 (a#3g,p,1%3、a#3g,p,2%3、a#3g,p,3%3)、・・・、
 (a#3g,n-1,1%3、a#3g,n-1,2%3、a#3g,n-1,3%3)、
 (b#3g,1%3、b#3g,2%3、b#3g,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 ただし、符号化を容易に行うという点を考慮すると、式(9-1)~(9-3g)において、(b#k,1%3、b#k,2%3、b#k,3%3)の3つのうち“0”が1つ存在すると良い(ただし、k=1、2、・・・3g)。このとき、D=1が存在し、かつb#k,1、b#k,2、b#k,3が0以上の整数であれば、パリティPを逐次的に求めることができるという特徴を持つからである。
 また、同一時点のパリティビットとデータビットに関連性を持たせ、高い訂正能力を持つ符号の探索を容易に行うためには、
 (a#k,1,1%3、a#k,1,2%3、a#k,1,3%3)の3つのうち“0”が1つ存在し、
 (a#k,2,1%3、a#k,2,2%3、a#k,2,3%3)の3つのうち“0”が1つ存在し、
                       ・
                       ・
                       ・
 (a#k,p,1%3、a#k,p,2%3、a#k,p,3%3)の3つのうち“0”が1つ存在し、
                       ・
                       ・
                       ・
 (a#k,n-1,1%3、a#k,n-1,2%3、a#k,n-1,3%3)の3つのうち“0”が1つ存在すると良い(ただし、k=1、2、・・・3g)。
 次に、符号化を容易に行うという点を考慮した時変周期3g(g=2、3、4、5、・・・)のLDPC-CCについて考える。このとき、符号化率を(n-1)/n(nは2以上の整数)とするとLDPC-CCのパリティ検査多項式は以下のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000011
 このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・、Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(11-1)~(11-3g)では、X(D)、X(D)、・・・、Xn-1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。ただし、時変周期3g、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n-1であらわす。このとき、i%3g=kとすると(k=0、1、2、・・・、3g-1)、式(11-(k+1))のパリティ検査多項式が成立する。例えば、i=2とすると、i%3g=2(k=2)となるので、式(12)が成立する。
Figure JPOXMLDOC01-appb-M000012
 このとき、<条件#3>及び<条件#4>を満たすと、より高い誤り訂正能力を持つ符号を作成することができる可能性が高まる。
 <条件#3>
 式(11-1)~(11-3g)において、X(D)、X(D)、・・・、Xn-1(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3、a#1,1,3%3)、
 (a#1,2,1%3、a#1,2,2%3、a#1,2,3%3)、・・・、
 (a#1,p,1%3、a#1,p,2%3、a#1,p,3%3)、・・・、
 (a#1,n-1,1%3、a#1,n-1,2%3、a#1,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#2,1,1%3、a#2,1,2%3、a#2,1,3%3)、
 (a#2,2,1%3、a#2,2,2%3、a#2,2,3%3)、・・・、
 (a#2,p,1%3、a#2,p,2%3、a#2,p,3%3)、・・・、
 (a#2,n-1,1%3、a#2,n-1,2%3、a#2,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3,1,1%3、a#3,1,2%3、a#3,1,3%3)、
 (a#3,2,1%3、a#3,2,2%3、a#3,2,3%3)、・・・、
 (a#3,p,1%3、a#3,p,2%3、a#3,p,3%3)、・・・、
 (a#3,n-1,1%3、a#3,n-1,2%3、a#3,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#k,1,1%3、a#k,1,2%3、a#k,1,3%3)、
 (a#k,2,1%3、a#k,2,2%3、a#k,2,3%3)、・・・、
 (a#k,p,1%3、a#k,p,2%3、a#k,p,3%3)、・・・、
 (a#k,n-1,1%3、a#k,n-1,2%3、a#k,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)(よって、k=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#3g-2,1,1%3、a#3g-2,1,2%3、a#3g-2,1,3%3)、
 (a#3g-2,2,1%3、a#3g-2,2,2%3、a#3g-2,2,3%3)、・・・、
 (a#3g-2,p,1%3、a#3g-2,p,2%3、a#3g-2,p,3%3)、・・・、
 (a#3g-2,n-1,1%3、a#3g-2,n-1,2%3、a#3g-2,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3g-1,1,1%3、a#3g-1,1,2%3、a#3g-1,1,3%3)、
 (a#3g-1,2,1%3、a#3g-1,2,2%3、a#3g-1,2,3%3)、・・・、
 (a#3g-1,p,1%3、a#3g-1,p,2%3、a#3g-1,p,3%3)、・・・、
 (a#3g-1,n-1,1%3、a#3g-1,n-1,2%3、a#3g-1,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3g,1,1%3、a#3g,1,2%3、a#3g,1,3%3)、
 (a#3g,2,1%3、a#3g,2,2%3、a#3g,2,3%3)、・・・、
 (a#3g,p,1%3、a#3g,p,2%3、a#3g,p,3%3)、・・・、
 (a#3g,n-1,1%3、a#3g,n-1,2%3、a#3g,n-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(p=1、2、3、・・・、n-1)
 加えて、式(11-1)~(11-3g)において、P(D)の次数の組み合わが以下の条件を満たす。
 (b#1,1%3、b#1,2%3)、
 (b#2,1%3、b#2,2%3)、
 (b#3,1%3、b#3,2%3)、・・・、
 (b#k,1%3、b#k,2%3)、・・・、
 (b#3g-2,1%3、b#3g-2,2%3)、
 (b#3g-1,1%3、b#3g-1,2%3)、
 (b#3g,1%3、b#3g,2%3)は、
 (1、2)、(2、1)のいずれかとなる(k=1、2、3、・・・、3g)。
 式(11-1)~(11-3g)に対する<条件#3>は、式(9-1)~(9-3g)に対する<条件#2>と同様の関係となる。式(11-1)~(11-3g)に対して、<条件#3>に加え、以下の条件(<条件#4>)を付加すると、より高い誤り訂正能力を持つLDPC-CCを作成することができる可能性が高まる。
 <条件#4>
 式(11-1)~(11-3g)のP(D)の次数において、以下の条件を満たす。
 (b#1,1%3g、b#1,2%3g)、
 (b#2,1%3g、b#2,2%3g)、
 (b#3,1%3g、b#3,2%3g)、・・・、
 (b#k,1%3g、b#k,2%3g)、・・・、
 (b#3g-2,1%3g、b#3g-2,2%3g)、
 (b#3g-1,1%3g、b#3g-1,2%3g)、
 (b#3g,1%3g、b#3g,2%3g)
 の6g個の次数(2つの次数が1組を構成するので、3g組を構成する次数は6g個ある)の値には、0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。
 ところで、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性があると良好な誤り訂正能力が得られる可能性が高い。式(11-1)~(11-3g)のパリティ検査多項式を持つ時変周期3g(g=2、3、4、5、・・・)、符号化率を(n-1)/n(nは2以上の整数)のLDPC-CCでは、<条件#3>に加え<条件#4>の条件をつけ符号を作成すると、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性を与えることが可能となるため、良好な誤り訂正能力が得られる可能性が高まる。
 次に、符号化を容易に行うことができ、かつ、同一時点のパリティビットとデータビットに関連性を持たせる、時変周期3g(g=2、3、4、5、・・・)のLDPC-CCについて考える。このとき、符号化率を(n-1)/n(nは2以上の整数)とするとLDPC-CCのパリティ検査多項式は以下のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000013
 このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・、Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。そして、式(13-1)~(13-3g)では、X(D)、X(D)、・・・、Xn-1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とし、X(D)、X(D)、・・・、Xn-1(D)、P(D)にはDの項が存在することになる。(k=1、2、3、・・・、3g)
 ただし、時変周期3g、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n-1であらわす。このとき、i%3g=kとすると(k=0、1、2、・・・、3g-1)、式(13-(k+1))のパリティ検査多項式が成立する。例えば、i=2とすると、i%3g=2(k=2)となるので、式(14)が成立する。
Figure JPOXMLDOC01-appb-M000014
 このとき、以下の条件(<条件#5>及び<条件#6>)を満たすと、更に高い誤り訂正能力を持つ符号を作成できる可能性が高くなる。
 <条件#5>
 式(13-1)~(13-3g)において、X(D)、X(D)、・・・、Xn-1(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3)、
 (a#1,2,1%3、a#1,2,2%3)、・・・、
 (a#1,p,1%3、a#1,p,2%3)、・・・、
 (a#1,n-1,1%3、a#1,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#2,1,1%3、a#2,1,2%3)、
 (a#2,2,1%3、a#2,2,2%3)、・・・、
 (a#2,p,1%3、a#2,p,2%3)、・・・、
 (a#2,n-1,1%3、a#2,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3,1,1%3、a#3,1,2%3)、
 (a#3,2,1%3、a#3,2,2%3)、・・・、
 (a#3,p,1%3、a#3,p,2%3)、・・・、
 (a#3,n-1,1%3、a#3,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#k,1,1%3、a#k,1,2%3)、
 (a#k,2,1%3、a#k,2,2%3)、・・・、
 (a#k,p,1%3、a#k,p,2%3)、・・・、
 (a#k,n-1,1%3、a#k,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)(よって、k=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#3g-2,1,1%3、a#3g-2,1,2%3)、
 (a#3g-2,2,1%3、a#3g-2,2,2%3)、・・・、
 (a#3g-2,p,1%3、a#3g-2,p,2%3)、・・・、
 (a#3g-2,n-1,1%3、a#3g-2,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3g-1,1,1%3、a#3g-1,1,2%3)、
 (a#3g-1,2,1%3、a#3g-1,2,2%3)、・・・、
 (a#3g-1,p,1%3、a#3g-1,p,2%3)、・・・、
 (a#3g-1,n-1,1%3、a#3g-1,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)
 かつ、
 (a#3g,1,1%3、a#3g,1,2%3)、
 (a#3g,2,1%3、a#3g,2,2%3)、・・・、
 (a#3g,p,1%3、a#3g,p,2%3)、・・・、
 (a#3g,n-1,1%3、a#3g,n-1,2%3)は、
 (1、2)、(2、1)のいずれかとなる。(p=1、2、3、・・・、n-1)
 加えて、式(13-1)~(13-3g)において、P(D)の次数の組み合わが以下の条件を満たす。
 (b#1,1%3、b#1,2%3)、
 (b#2,1%3、b#2,2%3)、
 (b#3,1%3、b#3,2%3)、・・・、
 (b#k,1%3、b#k,2%3)、・・・、
 (b#3g-2,1%3、b#3g-2,2%3)、
 (b#3g-1,1%3、b#3g-1,2%3)、
 (b#3g,1%3、b#3g,2%3)は、
 (1、2)、(2、1)のいずれかとなる(k=1、2、3、・・・、3g)。
 式(13-1)~(13-3g)に対する<条件#5>は、式(9-1)~(9-3g)に対する<条件#2>と同様の関係となる。式(13-1)~(13-3g)に対して、<条件#5>に加え、以下の条件(<条件#6>)を付加すると、高い誤り訂正能力を持つLDPC-CCを作成できる可能性が高くなる。
 <条件#6>
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,1,1%3g、a#1,1,2%3g)、
 (a#2,1,1%3g、a#2,1,2%3g)、・・・、
 (a#p,1,1%3g、a#p,1,2%3g)、・・・、
 (a#3g,1,1%3g、a#3g,1,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 かつ、
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,2,1%3g、a#1,2,2%3g)、
 (a#2,2,1%3g、a#2,2,2%3g)、・・・、
 (a#p,2,1%3g、a#p,2,2%3g)、・・・、
 (a#3g,2,1%3g、a#3g,2,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 かつ、
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,3,1%3g、a#1,3,2%3g)、
 (a#2,3,1%3g、a#2,3,2%3g)、・・・、
 (a#p,3,1%3g、a#p,3,2%3g)、・・・、
 (a#3g,3,1%3g、a#3g,3,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,k,1%3g、a#1,k,2%3g)、
 (a#2,k,1%3g、a#2,k,2%3g)、・・・、
 (a#p,k,1%3g、a#p,k,2%3g)、・・・、
 (a#3g,k,1%3g、a#3g,k,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 (k=1、2、3、・・・、n-1)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 式(13-1)~(13-3g)のXn-1(D)の次数において、次の条件を満たす。
 (a#1,n-1,1%3g、a#1,n-1,2%3g)、
 (a#2,n-1,1%3g、a#2,n-1,2%3g)、・・・、
 (a#p,n-1,1%3g、a#p,n-1,2%3g)、・・・、
 (a#3g,n-1,1%3g、a#3g,n-1,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 かつ、
 式(13-1)~(13-3g)のP(D)の次数において、次の条件を満たす。
 (b#1,1%3g、b#1,2%3g)、
 (b#2,1%3g、b#2,2%3g)、
 (b#3,1%3g、b#3,2%3g)、・・・、
 (b#k,1%3g、b#k,2%3g)、・・・、
 (b#3g-2,1%3g、b#3g-2,2%3g)、
 (b#3g-1,1%3g、b#3g-1,2%3g)、
 (b#3g,1%3g、b#3g,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(k=1、2、3、・・・、3g)
 ところで、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性があると良好な誤り訂正能力が得られる可能性が高い。式(13-1)~(13-3g)のパリティ検査多項式を持つ時変周期3g(g=2、3、4、5、・・・)、符号化率を(n-1)/n(nは2以上の整数)のLDPC-CCでは、<条件#5>に加え<条件#6>の条件を付加して符号を作成すると、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性を与えることが可能となるため、より良好な誤り訂正能力が得られる可能性が高まる。
 また、<条件#6>のかわりに、<条件#6’>を用いる、つまり、<条件#5>に加え、<条件#6’>を付加し符号を作成しても、より高い誤り訂正能力を持つLDPC-CCを作成できる可能性が高くなる。
 <条件#6’>
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,1,1%3g、a#1,1,2%3g)、
 (a#2,1,1%3g、a#2,1,2%3g)、・・・、
 (a#p,1,1%3g、a#p,1,2%3g)、・・・、
 (a#3g,1,1%3g、a#3g,1,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 又は、
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,2,1%3g、a#1,2,2%3g)、
 (a#2,2,1%3g、a#2,2,2%3g)、・・・、
 (a#p,2,1%3g、a#p,2,2%3g)、・・・、
 (a#3g,2,1%3g、a#3g,2,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 又は、
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,3,1%3g、a#1,3,2%3g)、
 (a#2,3,1%3g、a#2,3,2%3g)、・・・、
 (a#p,3,1%3g、a#p,3,2%3g)、・・・、
 (a#3g,3,1%3g、a#3g,3,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 又は、
                       ・
                       ・
                       ・
 又は、
 式(13-1)~(13-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,k,1%3g、a#1,k,2%3g)、
 (a#2,k,1%3g、a#2,k,2%3g)、・・・、
 (a#p,k,1%3g、a#p,k,2%3g)、・・・、
 (a#3g,k,1%3g、a#3g,k,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 (k=1、2、3、・・・、n-1)
 又は、
                       ・
                       ・
                       ・
 又は、
 式(13-1)~(13-3g)のXn-1(D)の次数において、次の条件を満たす。
 (a#1,n-1,1%3g、a#1,n-1,2%3g)、
 (a#2,n-1,1%3g、a#2,n-1,2%3g)、・・・、
 (a#p,n-1,1%3g、a#p,n-1,2%3g)、・・・、
 (a#3g,n-1,1%3g、a#3g,n-1,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 又は、
 式(13-1)~(13-3g)のP(D)の次数において、次の条件を満たす。
 (b#1,1%3g、b#1,2%3g)、
 (b#2,1%3g、b#2,2%3g)、
 (b#3,1%3g、b#3,2%3g)、・・・、
 (b#k,1%3g、b#k,2%3g)、・・・、
 (b#3g-2,1%3g、b#3g-2,2%3g)、
 (b#3g-1,1%3g、b#3g-1,2%3g)、
 (b#3g,1%3g、b#3g,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(k=1、2、3、・・・、3g)
 以上、時変周期3g、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCについて説明した。以下、時変周期3g、符号化率1/2(n=2)のLDPC-CCのパリティ検査多項式の次数の条件について説明する。
 時変周期を3g(g=1、2、3、4、・・・)、符号化率1/2(n=2)のLDPC-CCのパリティ検査多項式として、式(15-1)~(15-3g)を考える。
Figure JPOXMLDOC01-appb-M000015
 このとき、X(D)はデータ(情報)Xの多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(15-1)~(15-3g)では、X(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
 時変周期3のLDPC-CC及び時変周期6のLDPC-CCと同様に考えると、式(15-1)~(15-3g)のパリティ検査多項式であらわされる時変周期3g、符号化率1/2(n=2)のLDPC-CCにおいて、以下の条件(<条件#2-1>)を満たすと、より高い誤り訂正能力を得ることができる可能性が高まる。
 ただし、時変周期3g、符号化率1/2(n=2)のLDPC-CCにおいて、時点iのパリティビットをP及び情報ビットをXi,1であらわす。このとき、i%3g=kとすると(k=0、1、2、・・・、3g-1)、式(15-(k+1))のパリティ検査多項式が成立する。例えば、i=2とすると、i%3g=2(k=2)となるので、式(16)が成立する。
Figure JPOXMLDOC01-appb-M000016
 また、式(15-1)~式(15-3g)において、a#k,1,1、a#k,1,2、a#k,1,3は整数(ただし、a#k,1,1≠a#k,1,2≠a#k,1,3)とする(k=1、2、3、・・・、3g)。また、b#k,1、b#k,2、b#k,3は整数(ただし、b#k,1≠b#k,2≠b#k,3)とする。式(15-k)のパリティ検査多項式(k=1、2、3、・・・、3g)を「検査式#k」と呼び、式(15-k)のパリティ検査多項式に基づくサブ行列を、第kサブ行列Hとする。そして、第1サブ行列H、第2サブ行列H、第3サブ行列H、・・・、第3gサブ行列H3gから生成する時変周期3gのLDPC-CCについて考える。
 <条件#2-1>
 式(15-1)~(15-3g)において、X(D)及びP(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3、a#1,1,3%3)、
 (b#1,1%3、b#1,2%3、b#1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1) 、(2、1、0)のいずれかとなる。
 かつ、
 (a#2,1,1%3、a#2,1,2%3、a#2,1,3%3)、
 (b#2,1%3、b#2,2%3、b#2,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#3,1,1%3、a#3,1,2%3、a#3,1,3%3)、
 (b#3,1%3、b#3,2%3、b#3,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#k,1,1%3、a#k,1,2%3、a#k,1,3%3)、
 (b#k,1%3、b#k,2%3、b#k,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(よって、k=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#3g-2,1,1%3、a#3g-2,1,2%3、a#3g-2,1,3%3)、
 (b#3g-2,1%3、b#3g-2,2%3、b#3g-2,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#3g-1,1,1%3、a#3g-1,1,2%3、a#3g-1,1,3%3)、
 (b#3g-1,1%3、b#3g-1,2%3、b#3g-1,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#3g,1,1%3、a#3g,1,2%3、a#3g,1,3%3)、
 (b#3g,1%3、b#3g,2%3、b#3g,3%3)は、
 (0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 ただし、符号化を容易に行うという点を考慮すると、式(15-1)~(15-3g)において、(b#k,1%3、b#k,2%3、b#k,3%3)の3つのうち“0”が1つ存在すると良い(ただし、k=1、2、・・・3g)。このとき、D=1が存在し、かつb#k,1、b#k,2、b#k,3が0以上の整数であれば、パリティPを逐次的に求めることができるという特徴を持つからである。
 また、同一時点のパリティビットとデータビットに関連性を持たせ、高い訂正能力を持つ符号の探索を容易に行うためには、(a#k,1,1%3、a#k,1,2%3、a#k,1,3%3)の3つのうち“0”が1つ存在すると良い(ただし、k=1、2、・・・3g)。
 次に、符号化を容易に行うという点を考慮した時変周期3g(g=2、3、4、5、・・・)のLDPC-CCについて考える。このとき、符号化率を1/2(n=2)とするとLDPC-CCのパリティ検査多項式は以下のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000017
 このとき、X(D)はデータ(情報)Xの多項式表現であり、P(D)はパリティの多項式表現である。ここで、式(17-1)~(17-3g)では、X、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。ただし、時変周期3g、符号化率1/2(n=2)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1であらわす。このとき、i%3g=kとすると(k=0、1、2、・・・、3g-1)、式(17-(k+1))のパリティ検査多項式が成立する。例えば、i=2とすると、i%3g=2(k=2)となるので、式(18)が成立する。
Figure JPOXMLDOC01-appb-M000018
 このとき、<条件#3-1>及び<条件#4-1>を満たすと、より高い誤り訂正能力を持つ符号を作成することができる可能性が高まる。
 <条件#3-1>
 式(17-1)~(17-3g)において、X(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3、a#1,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#2,1,1%3、a#2,1,2%3、a#2,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#3,1,1%3、a#3,1,2%3、a#3,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#k,1,1%3、a#k,1,2%3、a#k,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。(よって、k=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#3g-2,1,1%3、a#3g-2,1,2%3、a#3g-2,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#3g-1,1,1%3、a#3g-1,1,2%3、a#3g-1,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 かつ、
 (a#3g,1,1%3、a#3g,1,2%3、a#3g,1,3%3)は、(0、1、2)、(0、2、1)、(1、0、2)、(1、2、0)、(2、0、1)、(2、1、0)のいずれかとなる。
 加えて、式(17-1)~(17-3g)において、P(D)の次数の組み合わが以下の条件を満たす。
 (b#1,1%3、b#1,2%3)、
 (b#2,1%3、b#2,2%3)、
 (b#3,1%3、b#3,2%3)、・・・、
 (b#k,1%3、b#k,2%3)、・・・、
 (b#3g-2,1%3、b#3g-2,2%3)、
 (b#3g-1,1%3、b#3g-1,2%3)、
 (b#3g,1%3、b#3g,2%3)は、
 (1、2)、(2、1)のいずれかとなる(k=1、2、3、・・・、3g)。
 式(17-1)~(17-3g)に対する<条件#3-1>は、式(15-1)~(15-3g)に対する<条件#2-1>と同様の関係となる。式(17-1)~(17-3g)に対して、<条件#3-1>に加え、以下の条件(<条件#4-1>)を付加すると、より高い誤り訂正能力を持つLDPC-CCを作成することができる可能性が高まる。
 <条件#4-1>
 式(17-1)~(17-3g)のP(D)の次数において、以下の条件を満たす。
 (b#1,1%3g、b#1,2%3g)、
 (b#2,1%3g、b#2,2%3g)、
 (b#3,1%3g、b#3,2%3g)、・・・、
 (b#k,1%3g、b#k,2%3g)、・・・、
 (b#3g-2,1%3g、b#3g-2,2%3g)、
 (b#3g-1,1%3g、b#3g-1,2%3g)、
 (b#3g,1%3g、b#3g,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。
 ところで、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性があると良好な誤り訂正能力が得られる可能性が高い。式(17-1)~(17-3g)のパリティ検査多項式を持つ時変周期3g(g=2、3、4、5、・・・)、符号化率1/2(n=2)のLDPC-CCでは、<条件#3-1>に加え<条件#4-1>の条件をつけ符号を作成すると、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性を与えることが可能となるため、より良好な誤り訂正能力が得られる可能性が高まる。
 次に、符号化を容易に行うことができ、かつ、同一時点のパリティビットとデータビットに関連性を持たせる、時変周期3g(g=2、3、4、5、・・・)のLDPC-CCについて考える。このとき、符号化率を1/2(n=2)とするとLDPC-CCのパリティ検査多項式は以下のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000019
 このとき、X(D)はデータ(情報)Xの多項式表現であり、P(D)はパリティの多項式表現である。そして、式(19-1)~(19-3g)では、X(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とし、X(D)、P(D)にはDの項が存在することになる。(k=1、2、3、・・・、3g)
 ただし、時変周期3g、符号化率1/2(n=2)のLDPC-CCにおいて、時点iのパリティビットをP及び情報ビットをXi,1であらわす。このとき、i%3g=kとすると(k=0、1、2、・・・、3g-1)、式(19-(k+1))のパリティ検査多項式が成立する。例えば、i=2とすると、i%3g=2(k=2)となるので、式(20)が成立する。
Figure JPOXMLDOC01-appb-M000020
 このとき、以下の条件(<条件#5-1>及び<条件#6-1>)を満たすと、より高い誤り訂正能力を持つ符号を作成することができる可能性が高まる。
 <条件#5-1>
 式(19-1)~(19-3g)において、X(D)の次数の組み合わせが以下の条件を満たす。
 (a#1,1,1%3、a#1,1,2%3)は、(1、2)、(2、1)のいずれかとなる。
 かつ、
 (a#2,1,1%3、a#2,1,2%3)は、(1、2)、(2、1)のいずれかとなる。
 かつ、
 (a#3,1,1%3、a#3,1,2%3)は、(1、2)、(2、1)のいずれかとなる。
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#k,1,1%3、a#k,1,2%3)は、(1、2)、(2、1)のいずれかとなる。(よって、k=1、2、3、・・・、3g)
 かつ、
                       ・
                       ・
                       ・
 かつ、
 (a#3g-2,1,1%3、a#3g-2,1,2%3)は、(1、2)、(2、1)のいずれかとなる。
 かつ、
 (a#3g-1,1,1%3、a#3g-1,1,2%3)は、(1、2)、(2、1)のいずれかとなる。
 かつ、
 (a#3g,1,1%3、a#3g,1,2%3)は、(1、2)、(2、1)のいずれかとなる。
 加えて、式(19-1)~(19-3g)において、P(D)の次数の組み合わが以下の条件を満たす。
 (b#1,1%3、b#1,2%3)、
 (b#2,1%3、b#2,2%3)、
 (b#3,1%3、b#3,2%3)、・・・、
 (b#k,1%3、b#k,2%3)、・・・、
 (b#3g-2,1%3、b#3g-2,2%3)、
 (b#3g-1,1%3、b#3g-1,2%3)、
 (b#3g,1%3、b#3g,2%3)は、
 (1、2)、(2、1)のいずれかとなる(k=1、2、3、・・・、3g)。
 式(19-1)~(19-3g)に対する<条件#5-1>は、式(15-1)~(15-3g)に対する<条件#2-1>と同様の関係となる。式(19-1)~(19-3g)に対して、<条件#5-1>に加え、以下の条件(<条件#6-1>)を付加すると、より高い誤り訂正能力を持つLDPC-CCを作成することができる可能性が高まる。
 <条件#6-1>
 式(19-1)~(19-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,1,1%3g、a#1,1,2%3g)、
 (a#2,1,1%3g、a#2,1,2%3g)、・・・、
 (a#p,1,1%3g、a#p,1,2%3g)、・・・、
 (a#3g,1,1%3g、a#3g,1,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 かつ、
 式(19-1)~(19-3g)のP(D)の次数において、次の条件を満たす。
 (b#1,1%3g、b#1,2%3g)、
 (b#2,1%3g、b#2,2%3g)、
 (b#3,1%3g、b#3,2%3g)、・・・、
 (b#k,1%3g、b#k,2%3g)、・・・、
 (b#3g-2,1%3g、b#3g-2,2%3g)、
 (b#3g-1,1%3g、b#3g-1,2%3g)、
 (b#3g,1%3g、b#3g,2%3g)の6g(3g×2)個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(k=1、2、3、・・・、3g)
 ところで、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性があると、良好な誤り訂正能力が得られる可能性が高い。式(19-1)~(19-3g)のパリティ検査多項式を持つ時変周期3g(g=2、3、4、5、・・・)、符号化率1/2のLDPC-CCでは、<条件#5-1>に加え<条件#6-1>の条件を付加して符号を作成すると、検査行列において、“1”の存在する位置に規則性を持ちながらもランダム性を与えることが可能となるため、より良好な誤り訂正能力が得られる可能性が高まる。
 また、<条件#6-1>のかわりに、<条件#6’-1>を用いる、つまり、<条件#5-1>に加え、<条件#6’-1>を付加し符号を作成しても、より高い誤り訂正能力を持つLDPC-CCを作成することができる可能性が高まる。
 <条件#6’-1>
 式(19-1)~(19-3g)のX(D)の次数において、次の条件を満たす。
 (a#1,1,1%3g、a#1,1,2%3g)、
 (a#2,1,1%3g、a#2,1,2%3g)、・・・、
 (a#p,1,1%3g、a#p,1,2%3g)、・・・、
 (a#3g,1,1%3g、a#3g,1,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(p=1、2、3、・・・、3g)
 又は、
 式(19-1)~(19-3g)のP(D)の次数において、次の条件を満たす。
 (b#1,1%3g、b#1,2%3g)、
 (b#2,1%3g、b#2,2%3g)、
 (b#3,1%3g、b#3,2%3g)、・・・、
 (b#k,1%3g、b#k,2%3g)、・・・、
 (b#3g-2,1%3g、b#3g-2,2%3g)、
 (b#3g-1,1%3g、b#3g-1,2%3g)、
 (b#3g,1%3g、b#3g,2%3g)の6g個の値には、
 0から3g-1の整数(0、1、2、3、4、・・・、3g-2、3g-1)のうち、3の倍数(つまり、0、3、6、・・・、3g-3)以外の値の全ての値が存在する。(k=1、2、3、・・・、3g)
 一例として、良好な誤り訂正能力を持つ、符号化率1/2、時変周期6のLDPC-CCを表6に列挙する。
Figure JPOXMLDOC01-appb-T000006
 以上、特性が良好な時変周期gのLDPC-CCについて説明した。なお、LDPC-CCは、情報ベクトルnに生成行列Gを乗ずることにより、符号化データ(符号語)を得ることができる。つまり、符号化データ(符号語)cは、c=n×Gとあらわすことができる。ここで、生成行列Gは、予め設計された検査行列Hに対応して求められたものである。具体的には、生成行列Gは、G×H=0を満たす行列である。
 例えば、符号化率1/2、生成多項式G=[1 G(D)/G(D)]の畳み込み符号を例に考える。このとき、Gはフィードフォワード多項式、Gはフィードバック多項式をあらわす。情報系列(データ)の多項式表現をX(D)、パリティ系列の多項式表現をP(D)とするとパリティ検査多項式は、以下の式(21)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000021
ここで、Dは、遅延演算子である。
 図5に、(7,5)の畳み込み符号に関する情報を記載する。(7,5)畳み込み符号の生成行列はG=[1 (D+1)/(D+D+1)]とあらわされる。したがって、パリティ検査多項式は、以下の式(22)となる。
Figure JPOXMLDOC01-appb-M000022
 ここで、時点iにおけるデータをX、パリティビットをPとあらわし、送信系列W=(X,P)とあらわす。そして、送信ベクトルw=(X,P,X,P,・・・,X,P・・・)とあらわす。すると、式(22)から、検査行列Hは図5に示すようにあらわすことができる。このとき、以下の式(23)の関係式が成立する。
Figure JPOXMLDOC01-appb-M000023
 したがって、復号側では、検査行列Hを用い、非特許文献4、非特許文献5、非特許文献6に示されているようなBP(Belief Propagation)(信頼度伝播)復号、BP復号を近似したmin-sum復号、offset BP復号、Normalized BP復号、shuffled BP復号などの信頼度伝播を利用した復号を行うことができる。
 [畳み込み符号に基づく時不変・時変LDPC-CC(符号化率(n-1)/n)(n:自然数)]
 以下、畳み込み符号に基づく時不変・時変LDPC-CCの概要を述べる。
 符号化率R=(n-1)/nの情報X、X、・・・、Xn-1の多項式表現をX(D)、X(D)、・・・、Xn-1(D)、また、パリティPの多項式表現をP(D)とし、式(24)のようにあらわされるパリティ検査多項式を考える。
Figure JPOXMLDOC01-appb-M000024
 式(24)において、このときap,p(p=1,2,・・・,n-1;q=1,2,・・・,rp)は、例えば、自然数であり、ap,1≠ap,2≠・・・≠ap,rpを満足する。また、bq(q=1,2,・・・,s)は、自然数であり、b≠b≠・・・≠bを満足する。このとき、式(24)のパリティ検査多項式に基づく検査行列で定義される符号を、ここでは、時不変LDPC-CCと呼ぶ。
 式(24)に基づく異なるパリティ検査多項式をm個用意する(mは、2以上の整数)。そのパリティ検査多項式を以下のようにあらわす。
Figure JPOXMLDOC01-appb-M000025
ここで、i=0,1,・・・,m-1である。
 そして、時点jにおける情報X、X、・・・、Xn-1をX1,j、X2,j、・・・、Xn-1,jとあらわし、時点jにおけるパリティPをPとあらわし、u=(X1,j,X2,j,・・・,Xn-1,j,Pとする。このとき、時点jの情報X1,j、X2,j、・・・、Xn-1,j及びパリティPは、式(26)のパリティ検査多項式を満たす。
Figure JPOXMLDOC01-appb-M000026
ここで、「j mod m」は、jをmで除算した余りである。
 式(26)のパリティ検査多項式に基づく検査行列で定義される符号を、ここでは時変LDPC-CCと呼ぶ。このとき、式(24)のパリティ検査多項式で定義される時不変LDPC-CC、及び、式(26)のパリティ検査多項式で定義される時変LDPC-CCは、逐次的にパリティビットをレジスタ及び排他的論理和で簡単に求めることができるという特徴を持つ。
 例えば、符号化率2/3で、式(24)~式(26)に基づく時変周期2のLDPC-CCの検査行列Hの構成を、図6に示す。式(26)に基づく時変周期2の異なる2つの検査多項式に対し、「検査式#1」、「検査式#2」と名付ける。図6において、(Ha,111)は「検査式#1」に相当する部分であり、(Hc,111)は「検査式#2」に相当する部分である。以下、(Ha,111)及び(Hc,111)をサブ行列と定義する。
 このように、本提案の時変周期2のLDPC-CCの検査行列Hを、「検査式#1」のパリティ検査多項式をあらわす第1サブ行列と、「検査式#2」のパリティ検査多項式をあらわす第2サブ行列とにより定義することができる。具体的には、検査行列Hにおいて、第1サブ行列と第2サブ行列とが行方向に交互に配置されるようにする。なお、符号化率2/3の場合、図6に示すように、第i行と第i+1行とでは、サブ行列が3列右にシフトした構成となる。
 また、時変周期2の時変LDPC-CCの場合、第i行のサブ行列と第i+1行のサブ行列とは、異なるサブ行列となる。つまり、サブ行列(Ha,11)又は(Hc,11)のいずれか一方が第1サブ行列となり、他方が第2サブ行列となる。送信ベクトルuを、u=(X1,0、X2,0、P、X1,1、X2,1、P、・・・、X1,k、X2,k、P、・・・・)とすると、Hu=0が成立する(式(23)参照))。
 次に、符号化率2/3の場合に、時変周期をmとするLDPC-CCを考える。時変周期2の場合と同様に、式(24)であらわされるパリティ検査多項式をm個用意する。そして、式(24)であらわされる「検査式#1」を用意する。同様に、式(24)であらわされる「検査式#2」から「検査式#m」を用意する。時点mi+1のデータXとパリティPをそれぞれXmi+1、Pmi+1とあらわし、時点mi+2のデータXとパリティPとを、それぞれXmi+2、Pmi+2とあわし、・・・、時点mi+mのデータXとパリティPとを、それぞれXmi+m、Pmi+mとあらわす(i:整数)。
 このとき、時点mi+1のパリティPmi+1を「検査式#1」を用いて求め、時点mi+2のパリティPmi+2を「検査式#2」を用いて求め、・・・、時点mi+mのパリティPmi+mを「検査式#m」を用いて求めるLDPC-CCを考える。このようなLDPC-CC符号は、
 ・符号化器を簡単に構成することができ、かつ、パリティビットを逐次的に求めることができる
 ・終端ビットの削減、終端時のパンクチャ時の受信品質の向上が見込める
 という利点を備える。
 図7に、上述した符号化率2/3、時変周期mのLDPC-CCの検査行列の構成を示す。図7において、(H,111)は「検査式#1」に相当する部分であり、(H,111)は「検査式#2」に相当する部分であり、・・・、(H,111)は「検査式#m」に相当する部分である。以下、(H,111)を第1サブ行列と定義し、(H,111)を第2サブ行列と定義し、・・・、(H,111)を、第mサブ行列と定義する。
 このように、本提案の時変周期mのLDPC-CCの検査行列Hは、「検査式#1」のパリティ検査多項式をあらわす第1サブ行列、「検査式#2」のパリティ検査多項式をあらわす第2サブ行列、・・・、及び、「検査式#m」のパリティ検査多項式をあらわす第mサブ行列により定義することができる。具体的には、検査行列Hにおいて、第1サブ行列から第mサブ行列までが、行方向に周期的に配置されるようにした(図7参照)。なお、符号化率2/3の場合、第i行と第i+1行とでは、サブ行列が3列右にシフトした構成となる(図7参照)。
 送信ベクトルuを、u=(X1,0、X2,0、P、X1,1、X2,1、P、・・・、X1,k、X2,k、P、・・・・)とすると、Hu=0が成立する(式(23)参照))。
 上述の説明では、符号化率(n-1)/nの畳み込み符号に基づく時不変・時変LDPC-CCの一例として、符号化率2/3の場合を例に説明したが、同様に考えることで、符号化率(n-1)/nの畳み込み符号に基づく時不変・時変LDPC-CCのパリティ検査行列を作成することができる。
 すなわち、符号化率2/3の場合、図7において、(H,111)は「検査式#1」に相当する部分(第1サブ行列)であり、(H,111)は「検査式#2」に相当する部分(第2サブ行列)であり、・・・、(H,111)は「検査式#m」に相当する部分(第mサブ行列)であるのに対し、符号化率(n-1)/nの場合、図8に示すようになる。つまり、「検査式#1」に相当する部分(第1サブ行列)は、(H,11・・・1)であらわされ、「検査式#k」(k=2、3、・・・、m)に相当する部分(第kサブ行列)は、(H,11・・・1)であらわされる。このとき、第kサブ行列において、Hを除く部分の「1」の個数は、n個となる。そして、検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図8参照)。
 送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn-1,0、P、X1,1、X2,1、・・・、Xn-1,1、P、・・・、X1,k、X2,k、・・・、Xn-1,k、P、・・・・)とすると、Hu=0が成立する(式(23)参照)。
 なお、図9に、一例として、符号化率R=1/2の場合のLDPC-CC符号化器の構成例を示す。図9に示すように、LDPC-CC符号化器100は、データ演算部110、パリティ演算部120、ウェイト制御部130及びmod2加算(排他的論理和演算)器140を主に備える。
 データ演算部110は、シフトレジスタ111-1~111-M、ウェイト乗算器112-0~112-Mを備える。
 パリティ演算部120は、シフトレジスタ121-1~121-M、ウェイト乗算器122-0~122-Mを備える。
 シフトレジスタ111-1~111-M及び121-1~121-Mは、それぞれv1,t-i,v2,t-i(i=0,…,M)を保持するレジスタであり、次の入力が入ってくるタイミングで、保持している値を右隣のシフトレジスタに出力し、左隣のシフトレジスタから出力される値を新たに保持する。なお、シフトレジスタの初期状態は全て0である。
 ウェイト乗算器112-0~112-M,122-0~122-Mは、ウェイト制御部130から出力される制御信号にしたがって、h (m),h (m)の値を0/1に切り替える。
 ウェイト制御部130は、内部に保持する検査行列に基づいて、そのタイミングにおけるh (m),h (m)の値を出力し、ウェイト乗算器112-0~112-M,122-0~122-Mに供給する。
 mod2加算器140は、ウェイト乗算器112-0~112-M,122-0~122-Mの出力に対しmod2の算出結果を全て加算し、v2,tを算出する。
 このような構成を採ることで、LDPC-CC符号化器100は、検査行列にしたがったLDPC-CCの符号化を行うことができる。
 なお、ウェイト制御部130が保持する検査行列の各行の並びが行毎に異なる場合、LDPC-CC符号化器100は、時変(time varying)畳み込み符号化器となる。また、符号化率(q-1)/qのLDPC-CCの場合には、データ演算部110を(q-1)個設け、mod2加算器140が、各ウェイト乗算器の出力をmod2加算(排他的論理和演算)を行う構成とすれば良い。
 (実施の形態1)
 本実施の形態では、優れた誤り訂正能力をもつ、時変周期が3より大きいパリティ検査多項式に基づくLDPC-CCの符号構成方法について説明する。
 [時変周期6]
 始めに、例として、時変周期6のLDPC-CCについて説明する。
 符号化率(n-1)/n(nは2以上の整数)、時変周期6のLDPC-CCの(0を満たす)パリティ検査多項式として、式(27-0)~(27-5)を考える。
Figure JPOXMLDOC01-appb-M000027
 このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。式(27-0)~(27-5)において、例えば、符号化率1/2の場合、X(D)及びP(D)の項のみが存在し、X(D)、・・・、Xn-1(D)の項は存在しない。同様に、符号化率2/3の場合、X(D)、X(D)、及びP(D)の項のみが存在し、X(D)、・・・、Xn-1(D)の項は存在しない。その他の符号化率についても同様に考えればよい。
 ここで、式(27-0)~(27-5)では、X(D)、X(D)、・・・、Xn-1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
 また、、式(27-0)~(27-5)では、X(D)、X(D)、・・・、Xn-1(D)、及び、P(D)について、以下が成立するものとする。
 式(27-q)において、a#q,p,1、a#q,p,2、a#q,p,3は自然数とし、a#q,p,1≠a#q,p,2、a#q,p,1≠a#q,p,3、a#q,p,2≠a#q,p,3が成立するものとする。また、b#q,1、b#q,2、b#q,3は自然数とし、b#q,1≠b#q,2、b#q,1≠b#q,3、b#q,1≠b#q,3が成立するものとする(q=0、1、2、3、4、5;p=1、2、・・・、n-1)。
 そして、式(27-q)のパリティ検査多項式を「検査式#q」と呼び、式(27-q)のパリティ検査多項式に基づくサブ行列を、第qサブ行列Hと呼ぶ。そして、第0サブ行列H、第1サブ行列H、第2サブ行列H、第3サブ行列H、第4サブ行列H
、第5サブ行列Hから生成する時変周期6のLDPC-CCについて考える。
 時変周期6、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n-1であらわす。このとき、i%6=kとすると(k=0、1、2、3、4、5)、式(27-(k))のパリティ検査多項式が成立する。例えば、i=8とすると、i%6=2(k=2)となるので、式(28)が成立する。
Figure JPOXMLDOC01-appb-M000028
 また、式(27-g)のサブ行列(ベクトル)をHとするとパリティ検査行列は、 [パリティ検査多項式に基づくLDPC-CC]で述べた方法で作成することができる。
 式(27-0)~(27-5)において、パリティビットと情報ビットとの関係を簡単化し、かつ、パリティビットが逐次的に求まるようにするために、a#q,1,3=0、b#q,3=0(q=0、1、2、3、4、5)とする。したがって、式(27-1)~(27-5)の(0を満たす)パリティ検査多項式は、式(29-0)~(29-5)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000029
 また、第0サブ行列H、第1サブ行列H、第2サブ行列H、第3サブ行列H、第4サブ行列H、第5サブ行列Hを、式(30-0)~(30-5)のようにとあらわすとする。
Figure JPOXMLDOC01-appb-M000030
 式(30-0)~(30-5)において、連続したn個の「1」は、式(29-0)~式(29-5)の各式におけるX(D)、X(D)、・・・、Xn-1(D)およびP(D)の項に相当する。
 このとき、パリティ検査行列Hは、図10のようにあらわすことができる。図10に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図10参照)。そして、送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn-1,0、P、X1,1、X2,1、・・・、Xn-1,1、P、・・・、X1,k、X2,k、・・・、Xn-1,k、P、・・・・)とすると、Hu=0が成立する。
 ここで、高い誤り訂正能力を得ることができる、式(29-0)~(29-5)のパリティ検査多項式における条件を提案する。
 X(D)、X(D)、・・・、Xn-1(D)に関連する項に対して、以下の<条件#1-1>及び<条件#1-2>が重要となる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%6」は、αを6で除算したときの余りを示す。
 <条件#1-1>
 「a#0,1,1%6=a#1,1,1%6=a#2,1,1%6=a#3,1,1%6=a#4,1,1%6=a#5,1,1%6=vp=1 (vp=1:固定値)」
 「a#0,2,1%6=a#1,2,1%6=a#2,2,1%6=a#3,2,1%6=a#4,2,1%6=a#5,2,1%6=vp=2 (vp=2:固定値)」
 「a#0,3,1%6=a#1,3,1%6=a#2,3,1%6=a#3,3,1%6=a#4,3,1%6=a#5,3,1%6=vp=3 (vp=3:固定値)」
 「a#0,4,1%6=a#1,4,1%6=a#2,4,1%6=a#3,4,1%6=a#4,4,1%6=a#5,4,1%6=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%6=a#1,k,1%6=a#2,k,1%6=a#3,k,1%6=a#4,k,1%6=a#5,k,1%6=vp=k  (vp=k:固定値) (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%6=a#1,n-2,1%6=a#2,n-2,1%6=a#3,n-2,1%6=a#4,n-2,1%6=a#5,n-2,1%6=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%6=a#1,n-1,1%6=a#2,n-1,1%6=a#3,n-1,1%6=a#4,n-1,1%6=a#5,n-1,1%6=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%6=b#1,1%6=b#2,1%6=b#3,1%6=b#4,1%6=b#5,1%6=w (w:固定値)」
 <条件#1-2>
 「a#0,1,2%6=a#1,1,2%6=a#2,1,2%6=a#3,1,2%6=a#4,1,2%6=a#5,1,2%6=yp=1 (yp=1:固定値)」
 「a#0,2,2%6=a#1,2,2%6=a#2,2,2%6=a#3,2,2%6=a#4,2,2%6=a#5,2,2%6=yp=2 (yp=2:固定値)」
 「a#0,3,2%6=a#1,3,2%6=a#2,3,2%6=a#3,3,2%6=a#4,3,2%6=a#5,3,2%6=yp=3 (yp=3:固定値)」
 「a#0,4,2%6=a#1,4,2%6=a#2,4,2%6=a#3,4,2%6=a#4,4,2%6=a#5,4,2%6=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%6=a#1,k,2%6=a#2,k,2%6=a#3,k,2%6=a#4,k,2%6=a#5,k,2%6=yp=k (yp=k:固定値) (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%6=a#1,n-2,2%6=a#2,n-2,2%6=a#3,n-2,2%6=a#4,n-2,2%6=a#5,n-2,2%6=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%6=a#1,n-1,2%6=a#2,n-1,2%6=a#3,n-1,2%6=a#4,n-1,2%6=a#5,n-1,2%6=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%6=b#1,2%6=b#2,2%6=b#3,2%6=b#4,2%6=b#5,2%6=z (z:固定値)」
 <条件#1-1>及び<条件#1-2>を制約条件とすることにより、制約条件を満たすLDPC-CCは、正則(Regular)LDPC符号となるので、高い誤り訂正能力を得ることができる。
 次に、他の重要な制約条件について説明する。
 <条件#2-1>
 <条件#1-1>において、vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n-2、vp=n-1、及び、wを、「1」、「4」、「5」に設定する。つまり、vp=k(k=1、2、・・・、n-1)及びwを、「1」、及び、「時変周期6の約数以外の自然数」に設定する。
 <条件#2-2>
 <条件#1-2>において、yp=1、yp=2、yp=3、yp=4、・・・、yp=k 、・・・、yp=n-2、yp=n-1及び、zを「1」、「4」、「5」と設定する。つまり、yp=k(k=1、2、・・・、n-1)及びzを、「1」、及び、「時変周期6の約数以外の自然数」に設定する。
 <条件#2-1>及び<条件#2-2>の制約条件、又は、<条件#2-1>若しくは<条件#2-2>の制約条件を付加することにより、時変周期2、3のような時変周期が小さい場合と比較し、時変周期を大きくした効果を明確に得ることができるようになる。この点について、図面を用いて、詳しく説明する。
 説明を簡単にするために、パリティ検査多項式に基づく時変周期6、符号化率(n-1)/nのLDPC-CCのパリティ検査多項式(29-0)~(29-5)において、X(D)が2つの項をもつ場合を考える。すると、この場合、パリティ検査多項式は、式(31-0)~(31-5)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000031
 ここで、vp=k(k=1、2、・・・、n-1)及びwを、「3」に設定した場合を考える。「3」は、時変周期6の約数である。
 図11は、vp=1及びwを「3」に設定し、a#0,1,1%6=a#1,1,1%6=a#2,1,1%6=a#3,1,1%6=a#4,1,1%6=a#5,1,1%6=3としたときの情報Xのみに着目した場合の、チェックノード及び変数ノードのツリーを示している。
 式(31-q)のパリティ検査多項式を「検査式#q」と呼ぶ。なお、図11には、ツリーが「検査式#0」から描かれている。図11において、○(一重丸)及び◎(二重丸)は変数ノードを示し、□(四角)はチェックノードを示している。なお、○(一重丸)はX(D)に関連する変数ノードを示し、◎(二重丸)はDa#q、1,1(D)に関連する変数ノードを示している。また、#Y(Y=0,1,2,3,4,5)と記載された□(四角)は、式(31-Y)のパリティ検査多項式に相当するチェックノードであることを意味している。
 図11では、<条件#2-1>を満たさない、つまり、vp=1、vp=2、vp=3、vp=4、・・・、vp=k、・・・、vp=n-2、vp=n-1(k=1、2、・・・、n-1)及び、wが、時変周期6の約数のうち、1を除く約数に設定されている(w=3)。
 この場合、図11に示すように、チェックノードにおいて、#Yは0、3と限られた値にしかならない。つまり、時変周期を大きくしても、特定のパリティ検査多項式からしか信頼度が伝播されないため、時変周期を大きくした効果が得られないことを意味している。
 換言すると、#Yが限られた値しかとらないようになるための条件は、「vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n-2、vp=n-1(k=1、2、・・・、n-1)及びwを、時変周期6の約数のうち、1を除く約数に設定する」ことになる。
 これに対し、図12は、パリティ検査多項式において、vp=k(k=1、2、・・・、n-1)及びwが「1」に設定された場合のツリーである。vp=k(k=1、2、・・・、n-1)及びwが「1」に設定される場合には、<条件#2-1>の条件が満たされる。
 図12に示すように、<条件#2-1>の条件が満たされる場合には、チェックノードにおいて、#Yは、0から5まで、すべての値をとる。すなわち、<条件#2-1>の条件が満たされる場合には、信頼度が全てのパリティ検査多項式から伝播されるようになる。この結果、時変周期を大きくした場合にも、信頼度が広範囲から伝播されるようになり、時変周期を大きくした効果を得ることができるようになる。つまり、<条件#2-1>は、時変周期を大きくした効果を得るために、重要な条件であることがわかる。同様に、<条件#2-2>は、時変周期を大きくした効果を得るための重要な条件となる。
 [時変周期7]
 以上の説明を考慮すると、時変周期が素数であることが、時変周期を大きくした効果を得るための重要な条件となる。以下では、この点について詳しく説明する。
 先ず、符号化率(n-1)/n(nは2以上の整数)、時変周期7のLDPC-CCの(0を満たす)パリティ検査多項式として、式(32-0)~(32-6)を考える。
Figure JPOXMLDOC01-appb-M000032
 式(32-q)において、a#q,p,1、a#q,p,2は1以上の自然数とし、a#q,p,1≠a#q,p,2が成立するものとする。また、b#q,1、b#q,2は1以上の自然数とし、b#q,1≠b#q,2が成立するものとする(q=0、1、2、3、4、5、6;p=1、2、・・・、n-1)。
 時変周期7、符号化率(n-1)/n(nは2以上の整数)のLDPC-CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n-1であらわす。このとき、i%7=kとすると(k=0、1、2、3、4、5、6)、式(32-(k))のパリティ検査多項式が成立する。
 例えば、i=8とすると、i%7=1(k=1)となるので、式(33)が成立する。
Figure JPOXMLDOC01-appb-M000033
 また、式(32-g)のサブ行列(ベクトル)をHとするとパリティ検査行列は、 [パリティ検査多項式に基づくLDPC-CC]で述べた方法で作成することができる。ここで、第0サブ行列、第1サブ行列、第2サブ行列、第3サブ行列、第4サブ行列、第5サブ行列、第6サブ行列を、式(34-0)~(34-6)のようにあらわす。
Figure JPOXMLDOC01-appb-M000034
 式(34-0)~(34-6)において、連続したn個の「1」は、式(32-0)~(32-6)の各式におけるX(D)、X(D)、・・・、Xn-1(D)及びP(D)の項に相当する。
 このとき、パリティ検査行列Hは、図13のようにあらわすことができる。図13に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図13参照)。そして、送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn-1,0、P、X1,1、X2,1、・・・、Xn-1,1、P、・・・、X1,k、X2,k、・・・、Xn-1,k、P、・・・・)とすると、Hu=0が成立する。
 ここで、高い誤り訂正能力を得るための、式(32-0)~式(32-6)におけるパリティ検査多項式の条件は、時変周期6と同様に以下のようになる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%7」は、αを7で除算したときの余りを示す。
 <条件#1-1’>
 「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp=1 (vp=1:固定値)」
 「a#0,2,1%7=a#1,2,1%7=a#2,2,1%7=a#3,2,1%7=a#4,2,1%7=a#5,2,1%7=a#6,2,1%7=vp=2 (vp=2:固定値)」
 「a#0,3,1%7=a#1,3,1%7=a#2,3,1%7=a#3,3,1%7=a#4,3,1%7=a#5,3,1%7==a#6,3,1%7vp=3 (vp=3:固定値)」
 「a#0,4,1%7=a#1,4,1%7=a#2,4,1%7=a#3,4,1%7=a#4,4,1%7=a#5,4,1%7=a#6,4,1%7=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%7=a#1,k,1%7=a#2,k,1%7=a#3,k,1%7=a#4,k,1%7=a#5,k,1%7=a#6,k,1%7=vp=k (vp=k:固定値) (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%7=a#1,n-2,1%7=a#2,n-2,1%7=a#3,n-2,1%7=a#4,n-2,1%7=a#5,n-2,1%7=a#6,n-2,1%7=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%7=a#1,n-1,1%7=a#2,n-1,1%7=a#3,n-1,1%7=a#4,n-1,1%7=a#5,n-1,1%7=a#6,n-1,1%7=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w (w:固定値)」
 <条件#1-2’>
 「a#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp=1 (yp=1:固定値)」
 「a#0,2,2%7=a#1,2,2%7=a#2,2,2%7=a#3,2,2%7=a#4,2,2%7=a#5,2,2%7=a#6,2,2%7=yp=2 (yp=2:固定値)」
 「a#0,3,2%7=a#1,3,2%7=a#2,3,2%7=a#3,3,2%7=a#4,3,2%7=a#5,3,2%7=a#6,3,2%7=yp=3 (yp=3:固定値)」
 「a#0,4,2%7=a#1,4,2%7=a#2,4,2%7=a#3,4,2%7=a#4,4,2%7=a#5,4,2%7=a#6,4,2%7=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%7=a#1,k,2%7=a#2,k,2%7=a#3,k,2%7=a#4,k,2%7=a#5,k,2%7=a#6,k,2%7=yp=k (yp=k:固定値) (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%7=a#1,n-2,2%7=a#2,n-2,2%7=a#3,n-2,2%7=a#4,n-2,2%7=a#5,n-2,2%7=a#6,n-2,2%7=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%7=a#1,n-1,2%7=a#2,n-1,2%7=a#3,n-1,2%7=a#4,n-1,2%7=a#5,n-1,2%7=a#6,n-1,2%7=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z (z:固定値)」
 <条件#1-1’>及び<条件#1-2’>を制約条件とすることにより、制約条件を満たすLDPC-CCは、正則(Regular)LDPC符号となるので、高い誤り訂正能力を得ることができる。
 ところで、時変周期6の場合には、高い誤り訂正能力を得るためには、さらに<条件#2-1>及び<条件#2-2>、又は、<条件#2-1>若しくは<条件#2-2>が必要であった。これに対し、時変周期7のように時変周期が素数の場合には、時変周期6の場合に必要であった<条件#2-1>及び<条件#2-2>、又は、<条件#2-1>若しくは<条件#2-2>に相当する条件が不要となる。
 つまり、
 <条件#1-1’>において、vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n-2、vp=n-1(k=1、2、・・・、n-1)及びwの値は、「0、1、2、3、4、5、6」のいずれの値であってもよい。
 また、
 <条件#1-2’>において、yp=1、yp=2、yp=3、yp=4、・・・、yp=k 、・・・、yp=n-2、yp=n-1(k=1、2、・・・、n-1)及びzの値は、「0,1、2、3、4、5、6」のいずれの値であってもよい。
 その理由について、以下で説明する。
 説明を簡単にするために、パリティ検査多項式に基づく時変周期7、符号化率(n-1)/nのLDPC-CCのパリティ検査多項式(32-0)~(32-6)において、X(D)が2つの項をもつ場合を考える。すると、この場合、パリティ検査多項式は、式(35-0)~(35-6)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000035
 ここで、vp=k(k=1、2、・・・、n-1)及びwを、「2」に設定した場合を考える。
 図14は、vp=1及びwを「2」に設定し、a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=2としたときの情報Xのみに着目した場合の、チェックノード及び変数ノードのツリーを示している。
 式(35-q)のパリティ検査多項式を「検査式#q」と呼ぶ。なお、図14には、ツリーが「検査式#0」から描かれている。図14において、○(一重丸)及び◎(二重丸)は変数ノードを示し、□(四角)はチェックノードを示している。なお、○(一重丸)はX(D)に関連する変数ノードを示し、◎(二重丸)はDa#q、1,1(D)に関連する変数ノードを示している。また、#Y(Y=0,1,2,3,4,5,6)と記載された□(四角)は、式(35-Y)のパリティ検査多項式に相当するチェックノードであることを意味している。
 時変周期6の場合、例えば、図11に示したように、#Yが限られた値のみをとり、チェックノードが限られたパリティ検査多項式としか接続されないケースが存在する。これに対し、時変周期7のように、時変周期が7(素数)の場合、図14のように、#Yは0から6までのすべての値をとり、チェックノードは、全てのパリティ検査多項式と接続されるようになる。そのため、信頼度が全てのパリティ検査多項式から伝播されるようになる。この結果、時変周期を大きくした場合にも、信頼度が広範囲から伝播されるようになり、時変周期を大きくした効果を得ることができるようになる。なお、図14は、a#q,1,1%7(q=0、1、2、3、4、5、6)を「2」に設定した場合のツリーを示したが、「0」以外の値であれば、どの値に設定しても、チェックノードは、全てのパリティ検査多項式と接続されるようになる。
 このように、時変周期を素数とすると、時変周期が素数でない場合に比べ、高い誤り訂正能力を得るためのパラメータ設定に関する制約条件が、大きく緩和されることがわかる。そして、制約条件が緩和されることにより、さらに別の制約条件を付加して、より高い誤り訂正能力を得ることができるようになる。以下では、その符号構成方法について詳しく説明する。
 [時変周期q(qは3より大きい素数):式(36)]
 先ず、符号化率(n-1)/n、時変周期q(qは3より大きい素数)のg番目(g=0、1、・・・、q-1)のパリティ検査多項式が式(36)のようにあらわされる場合について考える。
Figure JPOXMLDOC01-appb-M000036
 式(36)において、a#g,p,1、a#g,p,2は1以上の自然数とし、a#g,p,1≠a#g,p,2が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、q-2、q-1;p=1、2、・・・、n-1)。
 上述での説明と同様に、以下に記載する<条件#3-1>及び<条件#3-2>は、LDPC-CCが高い誤り訂正能力を得る上で重要な要件の一つとなる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%q」は、αをqで除算したときの余りを示す。
 <条件#3-1>
 「a#0,1,1%q=a#1,1,1%q=a#2,1,1%q=a#3,1,1%q=・・・=a#g,1,1%q=・・・=a#q-2,1,1%q=a#q-1,1,1%q=vp=1 (vp=1:固定値)」
 「a#0,2,1%q=a#1,2,1%q=a#2,2,1%q=a#3,2,1%q=・・・=a#g,2,1%q=・・・=a#q-2,2,1%q=a#q-1,2,1%q=vp=2 (vp=2:固定値)」
 「a#0,3,1%q=a#1,3,1%q=a#2,3,1%q=a#3,3,1%q=・・・=a#g,3,1%q=・・・=a#q-2,3,1%q=a#q-1,3,1%q=vp=3 (vp=3:固定値)」
 「a#0,4,1%q=a#1,4,1%q=a#2,4,1%q=a#3,4,1%q=・・・=a#g,4,1%q=・・・=a#q-2,4,1%q=a#q-1,4,1%q=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=・・・=a#g,k,1%q=・・・=a#q-2,k,1%q=a#q-1,k,1%q=vp=k (vp=k:固定値)(したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%q=a#1,n-2,1%q=a#2,n-2,1%q=a#3,n-2,1%q=・・・=a#g,n-2,1%q=・・・=a#q-2,n-2,1%q=a#q-1,n-2,1%q=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%q=a#1,n-1,1%q=a#2,n-1,1%q=a#3,n-1,1%q=・・・=a#g,n-1,1%q=・・・=a#q-2,n-1,1%q=a#q-1,n-1,1%q=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=・・・=b#g,1%q=・・・=b#q-2,1%q=b#q-1,1%q=w (w:固定値)」
 <条件#3-2>
 「a#0,1,2%q=a#1,1,2%q=a#2,1,2%q=a#3,1,2%q=・・・=a#g,1,2%q=・・・=a#q-2,1,2%q=a#q-1,1,2%q=yp=1 (yp=1:固定値)」
 「a#0,2,2%q=a#1,2,2%q=a#2,2,2%q=a#3,2,2%q=・・・=a#g,2,2%q=・・・=a#q-2,2,2%q=a#q-1,2,2%q=yp=2 (yp=2:固定値)」
 「a#0,3,2%q=a#1,3,2%q=a#2,3,2%q=a#3,3,2%q=・・・=a#g,3,2%q=・・・=a#q-2,3,2%q=a#q-1,3,2%q=yp=3 (yp=3:固定値)」
 「a#0,4,2%q=a#1,4,2%q=a#2,4,2%q=a#3,4,2%q=・・・=a#g,4,2%q=・・・=a#q-2,4,2%q=a#q-1,4,2%q=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=・・・=a#g,k,2%q=・・・=a#q-2,k,2%q=a#q-1,k,2%q=yp=k (yp=k:固定値)(したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%q=a#1,n-2,2%q=a#2,n-2,2%q=a#3,n-2,2%q=・・・=a#g,n-2,2%q=・・・=a#q-2,n-2,2%q=a#q-1,n-2,2%q=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%q=a#1,n-1,2%q=a#2,n-1,2%q=a#3,n-1,2%q=・・・=a#g,n-1,2%q=・・・=a#q-2,n-1,2%q=a#q-1,n-1,2%q=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=・・・=b#g,2%q=・・・=b#q-2,2%q=b#q-1,2%q=z (z:固定値)」
 加えて、(vp=1,yp=1)、(vp=2,yp=2)、(vp=3,yp=3)、・・・(vp=k,yp=k)、・・・、(vp=n-2,yp=n-2)、(vp=n-1,yp=n-1)、及び、(w,z)のセットに対し、<条件#4-1>又は<条件#4-2>が成立すると、高い誤り訂正能力を得ることができる。ここで、k=1、2、・・・、n-1である。
 <条件#4-1>
 (vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)が成立するi,j(i≠j)が存在する。
 <条件#4-2>
 (vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n-1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)が成立するiが存在する。
 例として、時変周期が7であって、符号化率1/2、2/3のLDPC-CCのパリティ検査多項式を表7に示す。
Figure JPOXMLDOC01-appb-T000007
 表7において、符号化率1/2の符号では、
 「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp=1=3」
 「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w=1」
 「a#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp=1=6」
 「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z=5」
 が成立する。
 このとき、(vp=1,yp=1)=(3,6)、(w,z)=(1,5)となるので、<条件#4-2>が成立する。
 同様に、表7において、符号化率2/3の符号では、
 「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp=1=1」
 「a#0,2,1%7=a#1,2,1%7=a#2,2,1%7=a#3,2,1%7=a#4,2,1%7=a#5,2,1%7=a#6,2,1%7=vp=2=2」
 「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w=5」
 「a#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp=1=4」
 「a#0,2,2%7=a#1,2,2%7=a#2,2,2%7=a#3,2,2%7=a#4,2,2%7=a#5,2,2%7=a#6,2,2%7=yp=2=3」
 「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z=6」
 が成立する。
 このとき、(vp=1,yp=1)=(1,4)、(vp=2,yp=2)=(2,3)、(w,z)=(5,6)となるので、<条件#4-1>及び<条件#4-2>が成立する。
 また、例として、時変周期11のときの符号化率4/5のLDPC-CCのパリティ検査多項式を表8に示す。
Figure JPOXMLDOC01-appb-T000008
 なお、<条件#4-1,条件#4-2>の制約条件をさらに厳しくすることにより、誤り訂正能力がより高い時変周期q(qは3より大きい素数)のLDPC-CCを生成できる可能性がある。その条件は、<条件#5-1>及び<条件#5-2>、又は、<条件#5-1>若しくは<条件#5-2>が成立することである。
 <条件#5-1>
 (vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)がすべてのi,j(i≠j)で成立する。
 <条件#5-2>
 (vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n-1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)がすべてのiで成立する。
 また、vp=i≠yp=i(i=1,2,・・・,n-1)、w≠zが成立する場合、タナーグラフにおいて、短いループの発生を抑えることができる。
 加えて、2n<qのとき、(vp=i,yp=i)及び(z,w)をすべて異なる値とした場合、より誤り訂正能力が高い時変周期q(qは3より大きい素数)のLDPC-CCを生成できる可能性がある。
 また、2n≧qのとき、(vp=i,yp=i)及び(z,w)を、0、1、2、・・・、q-1のうちすべての値が存在するように設定すると、より誤り訂正能力が高い時変周期q(qは3より大きい素数)のLDPC-CCを生成できる可能性がある。
 以上の説明において、時変周期q(qは3より大きい素数)のLDPC-CCのg番目のパリティ検査多項式として、X(D)、X(D)、・・・、Xn-1(D)及びP(D)において項数が3の式(36)を扱った。なお、式(36)において、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が1、2の場合においても高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。この場合においても、上述で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
 また、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。
 ところで、式(36)は、符号化率(n-1)/n、時変周期q(qは3より大きい素数)のLDPC-CCのg番目のパリティ検査多項式であった。この式において、例えば、符号化率1/2の場合、g番目のパリティ検査多項式は式(37-1)のようにあらわされる。また、符号化率2/3の場合、g番目のパリティ検査多項式は式(37-2)のようにあらわされる。また、符号化率3/4の場合、g番目のパリティ検査多項式は式(37-3)のようにあらわされる。また、符号化率4/5の場合、g番目のパリティ検査多項式は式(37-4)のようにあらわされる。また、符号化率5/6の場合、g番目のパリティ検査多項式は式(37-5)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000037
 [時変周期q(qは3より大きい素数):式(38)]
 次に、符号化率(n-1)/n、時変周期q(qは3より大きい素数)のg番目(g=0、1、・・・、q-1)のパリティ検査多項式が式(38)のようにあらわされる場合について考える。
Figure JPOXMLDOC01-appb-M000038
 式(38)において、a#g,p,1、a#g,p,2、a#g,p,3は1以上の自然数とし、a#g,p,1≠a#g,p,2、a#g,p,1≠a#g,p,3、a#g,p,2≠a#g,p,3が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、q-2、q-1;p=1、2、・・・、n-1)。
 上述での説明と同様に、以下に記載する<条件#6-1>、<条件#6-2>、及び<条件#6-3>は、LDPC-CCが高い誤り訂正能力を得る上で重要な要件の一つとなる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%q」は、αをqで除算したときの余りを示す。
 <条件#6-1>
 「a#0,1,1%q=a#1,1,1%q=a#2,1,1%q=a#3,1,1%q=・・・=a#g,1,1%q=・・・=a#q-2,1,1%q=a#q-1,1,1%q=vp=1 (vp=1:固定値)」
 「a#0,2,1%q=a#1,2,1%q=a#2,2,1%q=a#3,2,1%q=・・・=a#g,2,1%q=・・・=a#q-2,2,1%q=a#q-1,2,1%q=vp=2 (vp=2:固定値)」
 「a#0,3,1%q=a#1,3,1%q=a#2,3,1%q=a#3,3,1%q=・・・=a#g,3,1%q=・・・=a#q-2,3,1%q=a#q-1,3,1%q=vp=3 (vp=3:固定値)」
 「a#0,4,1%q=a#1,4,1%q=a#2,4,1%q=a#3,4,1%q=・・・=a#g,4,1%q=・・・=a#q-2,4,1%q=a#q-1,4,1%q=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=・・・=a#g,k,1%q=・・・=a#q-2,k,1%q=a#q-1,k,1%q=vp=k (vp=k:固定値)(したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%q=a#1,n-2,1%q=a#2,n-2,1%q=a#3,n-2,1%q=・・・=a#g,n-2,1%q=・・・=a#q-2,n-2,1%q=a#q-1,n-2,1%q=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%q=a#1,n-1,1%q=a#2,n-1,1%q=a#3,n-1,1%q=・・・=a#g,n-1,1%q=・・・=a#q-2,n-1,1%q=a#q-1,n-1,1%q=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=・・・=b#g,1%q=・・・=b#q-2,1%q=b#q-1,1%q=w (w:固定値)」
 <条件#6-2>
 「a#0,1,2%q=a#1,1,2%q=a#2,1,2%q=a#3,1,2%q=・・・=a#g,1,2%q=・・・=a#q-2,1,2%q=a#q-1,1,2%q=yp=1 (yp=1:固定値)」
 「a#0,2,2%q=a#1,2,2%q=a#2,2,2%q=a#3,2,2%q=・・・=a#g,2,2%q=・・・=a#q-2,2,2%q=a#q-1,2,2%q=yp=2 (yp=2:固定値)」
 「a#0,3,2%q=a#1,3,2%q=a#2,3,2%q=a#3,3,2%q=・・・=a#g,3,2%q=・・・=a#q-2,3,2%q=a#q-1,3,2%q=yp=3 (yp=3:固定値)」
 「a#0,4,2%q=a#1,4,2%q=a#2,4,2%q=a#3,4,2%q=・・・=a#g,4,2%q=・・・=a#q-2,4,2%q=a#q-1,4,2%q=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=・・・=a#g,k,2%q=・・・=a#q-2,k,2%q=a#q-1,k,2%q=yp=k (yp=k:固定値)(したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%q=a#1,n-2,2%q=a#2,n-2,2%q=a#3,n-2,2%q=・・・=a#g,n-2,2%q=・・・=a#q-2,n-2,2%q=a#q-1,n-2,2%q=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%q=a#1,n-1,2%q=a#2,n-1,2%q=a#3,n-1,2%q=・・・=a#g,n-1,2%q=・・・=a#q-2,n-1,2%q=a#q-1,n-1,2%q=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=・・・=b#g,2%q=・・・=b#q-2,2%q=b#q-1,2%q=z (z:固定値)」
 <条件#6-3>
 「a#0,1,3%q=a#1,1,3%q=a#2,1,3%q=a#3,1,3%q=・・・=a#g,1,3%q=・・・=a#q-2,1,3%q=a#q-1,1,3%q=sp=1 (sp=1:固定値)」
 「a#0,2,3%q=a#1,2,3%q=a#2,2,3%q=a#3,2,3%q=・・・=a#g,2,3%q=・・・=a#q-2,2,3%q=a#q-1,2,3%q=sp=2 (sp=2:固定値)」
 「a#0,3,3%q=a#1,3,3%q=a#2,3,3%q=a#3,3,3%q=・・・=a#g,3,3%q=・・・=a#q-2,3,3%q=a#q-1,3,3%q=sp=3 (sp=3:固定値)」
 「a#0,4,3%q=a#1,4,3%q=a#2,4,3%q=a#3,4,3%q=・・・=a#g,4,3%q=・・・=a#q-2,4,3%q=a#q-1,4,3%q=sp=4 (sp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=・・・=a#g,k,3%q=・・・=a#q-2,k,3%q=a#q-1,k,3%q=sp=k (sp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,3%q=a#1,n-2,3%q=a#2,n-2,3%q=a#3,n-2,3%q=・・・=a#g,n-2,3%q=・・・=a#q-2,n-2,3%q=a#q-1,n-2,3%q=sp=n-2 (sp=n-2:固定値)」
 「a#0,n-1,3%q=a#1,n-1,3%q=a#2,n-1,3%q=a#3,n-1,3%q=・・・=a#g,n-1,3%q=・・・=a#q-2,n-1,3%q=a#q-1,n-1,3%q=sp=n-1 (sp=n-1:固定値)」
 加えて、(vp=1,yp=1,sp=1)、(vp=2,yp=2,sp=2)、(vp=3,yp=3,sp=3)、・・・(vp=k,yp=k,sp=k)、・・・、(vp=n-2,yp=n-2,sp=n-2)、(vp=n-1,yp=n-1,sp=n-1)、及び、(w,z,0)のセットを考える。ここで、k=1、2、・・・、n-1である。すると、<条件#7-1>又は<条件#7-2>が成立すると、高い誤り訂正能力を得ることができる。
 <条件#7-1>
 (vp=i,yp=i,sp=i)及び(vp=j,yp=j,sp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、vp=j,yp=j,sp=jを大きい順に並べたセットを(αp=j,βp=j,γp=j)とする。ただし、αp=j≧βp=j、βp=j≧γp=jとする。このとき、(αp=i,βp=i,γp=i)≠(αp=j,βp=j,γp=j)が成立するi,j(i≠j)が存在する。
 <条件#7-2>
 (vp=i,yp=i,sp=i)及び(w,z,0)を考える。ただし、i=1,2,・・・,n-1とする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、w,z,0を大きい順に並べたセットを(αp=i,βp=i,0)とする。ただし、αp=i≧βp=iとする。このとき、(vp=i,yp=i,sp=i)≠(w,z,0)が成立するiが存在する。
 また、<条件#7-1,条件#7-2>の制約条件をさらに厳しくすることにより、誤り訂正能力がより高い時変周期q(qは3より大きい素数)のLDPC-CCを生成できる可能性がある。その条件は、<条件#8-1>及び<条件#8-2>、又は、<条件#8-1>若しくは<条件#8-2>が成立することである。
 <条件#8-1>
 (vp=i,yp=i,sp=i)及び(vp=j,yp=j,sp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、vp=j,yp=j,sp=jを大きい順に並べたセットを(αp=j,βp=j,γp=j)とする。ただし、αp=j≧βp=j、βp=j≧γp=jとする。このとき、(αp=i,βp=i,γp=i)≠(αp=j,βp=j,γp=j)がすべてのi,j(i≠j)で成立する。
 <条件#8-2>
 (vp=i,yp=i,sp=i)及び(w,z,0)を考える。ただし、i=1,2,・・・,n-1とする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、w,z,0を大きい順に並べたセットを(αp=i,βp=i,0)とする。ただし、αp=i≧βp=iとする。このとき、(vp=i,yp=i,sp=i)≠(w,z,0)がすべてのiで成立する。
 また、vp=i≠yp=i、p=i≠sp=i、p=i≠sp=i(i=1,2,・・・,n-1)、w≠zが成立する場合、タナーグラフにおいて、短いループの発生を抑えることができる。
 以上の説明において、時変周期q(qは3より大きい素数)のLDPC-CCのg番目のパリティ検査多項式として、X(D)、X(D)、・・・、Xn-1(D)及びP(D)において項数が3の式(38)を扱った。なお、式(38)において、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が1、2の場合においても高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法がる。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。この場合においても、上述で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
 また、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。)このとき、増えた項に対しては上記で説明した条件が除外される。
 [時変周期h(hは3より大きい素数以外の整数):式(39)]
 次に、時変周期hが、3より大きい素数以外の整数の場合における符号構成方法について考える。
 先ず、符号化率(n-1)/n、時変周期h(hは3より大きい素数以外の整数)のg番目(g=0、1、・・・、h-1)のパリティ検査多項式が式(39)のようにあらわされる場合について考える。
Figure JPOXMLDOC01-appb-M000039
 式(39)において、a#g,p,1、a#g,p,2は1以上の自然数とし、a#g,p,1≠a#g,p,2、が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、h-2、h-1;p=1、2、・・・、n-1)。
 上述での説明と同様に、以下に記載する<条件#9-1>及び<条件#9-2>は、LDPC-CCが高い誤り訂正能力を得る上で重要な要件の一つとなる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%h」は、αをhで除算したときの余りを示す。
 <条件#9-1>
 「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=・・・=a#g,1,1%h=・・・=a#h-2,1,1%h=a#h-1,1,1%h=vp=1 (vp=1:固定値)」
 「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=・・・=a#g,2,1%h=・・・=a#h-2,2,1%h=a#h-1,2,1%h=vp=2 (vp=2:固定値)」
 「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=・・・=a#g,3,1%h=・・・=a#h-2,3,1%h=a#h-1,3,1%h=vp=3 (vp=3:固定値)」
 「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=・・・=a#g,4,1%h=・・・=a#h-2,4,1%h=a#h-1,4,1%h=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=・・・=a#g,k,1%h=・・・=a#h-2,k,1%h=a#h-1,k,1%h=vp=k (vp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%h=a#1,n-2,1%h=a#2,n-2,1%h=a#3,n-2,1%h=・・・=a#g,n-2,1%h=・・・=a#h-2,n-2,1%h=a#h-1,n-2,1%h=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%h=a#1,n-1,1%h=a#2,n-1,1%h=a#3,n-1,1%h=・・・=a#g,n-1,1%h=・・・=a#h-2,n-1,1%h=a#h-1,n-1,1%h=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=・・・=b#g,1%h=・・・=b#h-2,1%h=b#h-1,1%h=w (w:固定値)」
 <条件#9-2>
 「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=・・・=a#g,1,2%h=・・・=a#h-2,1,2%h=a#h-1,1,2%h=yp=1 (yp=1:固定値)」
 「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=・・・=a#g,2,2%h=・・・=a#h-2,2,2%h=a#h-1,2,2%h=yp=2 (yp=2:固定値)」
 「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=・・・=a#g,3,2%h=・・・=a#h-2,3,2%h=a#h-1,3,2%h=yp=3 (yp=3:固定値)」
 「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=・・・=a#g,4,2%h=・・・=a#h-2,4,2%h=a#h-1,4,2%h=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=・・・=a#g,k,2%h=・・・=a#h-2,k,2%h=a#h-1,k,2%h=yp=k (yp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%h=a#1,n-2,2%h=a#2,n-2,2%h=a#3,n-2,2%h=・・・=a#g,n-2,2%h=・・・=a#h-2,n-2,2%h=a#h-1,n-2,2%h=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%h=a#1,n-1,2%h=a#2,n-1,2%h=a#3,n-1,2%h=・・・=a#g,n-1,2%h=・・・=a#h-2,n-1,2%h=a#h-1,n-1,2%h=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=・・・=b#g,2%h=・・・=b#h-2,2%h=b#h-1,2%h=z (z:固定値)」
 加えて、上述で説明したように、<条件#10-1>又は<条件#10-2>を付加することにより、より高い誤り訂正能力を得ることができる。
 <条件#10-1>
 <条件#9-1>において、vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n-2、vp=n-1(k=1、2、・・・、n-1)及びwを、「1」、及び、「時変周期hの約数以外の自然数」に設定する。
 <条件#10-2>
 <条件#9-2>において、yp=1、yp=2、yp=3、yp=4、・・・、yp=k 、・・・、yp=n-2、yp=n-1(k=1、2、・・・、n-1)及びzを、「1」、及び、「時変周期hの約数以外の自然数」に設定する。
 そして、(vp=1,yp=1)、(vp=2,yp=2)、(vp=3,yp=3)、・・・(vp=k,yp=k)、・・・、(vp=n-2,yp=n-2)、(vp=n-1,yp=n-1)、及び、(w,z)のセットを考える。ここで、k=1、2、・・・、n-1である。すると、<条件#11-1>又は<条件#11-2>が成立すると、より高い誤り訂正能力を得ることができる。
 <条件#11-1>
 (vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)が成立するi,j(i≠j)が存在する。
 <条件#11-2>
 (vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n-1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)が成立するiが存在する。
 また、<条件#11-1,条件#11-2>の制約条件をさらに厳しくすることにより、誤り訂正能力がより高い時変周期h(hは3より大きい素数でない整数)のLDPC-CCを生成できる可能性がある。その条件は、<条件#12-1>及び<条件#12-2>、又は、<条件#12-1>若しくは<条件#12-2>が成立することである。
 <条件#12-1>
 (vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)がすべてのi,j(i≠j)で成立する。
 <条件#12-2>
 (vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n-1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)がすべてのiで成立する。
 また、vp=i≠yp=i(i=1,2,・・・,n-1)w≠zが成立する場合、タナーグラフにおいて、短いループの発生を抑えることができる。
 以上の説明において、時変周期h(hは3より大きい素数以外の整数)のLDPC-CCのg番目のパリティ検査多項式として、X(D)、X(D)、・・・、Xn-1(D)及びP(D)の項数が3の式(39)を扱った。なお、式(39)において、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が1、2の場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法ある。時変周期hの場合、h個の0を満たすパリティ検査多項式が存在することになるが、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、h個の0を満たすパリティ検査多項式のうち、いずれか(h-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。この場合においても、上述で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
 また、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法ある。時変周期hの場合、h個の0を満たすパリティ検査多項式が存在することになるが、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、h個の0を満たすパリティ検査多項式のうち、いずれか(h-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。
 ところで、式(39)は、符号化率(n-1)/n、時変周期h(hは3より大きい素数でない整数)のLDPC-CCの(0を満たす)g番目のパリティ検査多項式であった。この式において、例えば、符号化率1/2の場合、g番目のパリティ検査多項式は式(40-1)のようにあらわされる。また、符号化率2/3の場合、g番目のパリティ検査多項式は式(40-2)のようにあらわされる。また、符号化率3/4の場合、g番目のパリティ検査多項式は式(40-3)のようにあらわされる。また、符号化率4/5の場合、g番目のパリティ検査多項式は式(40-4)のようにあらわされる。また、符号化率5/6の場合、g番目のパリティ検査多項式は式(40-5)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000040
 [時変周期h(hは3より大きい素数以外の整数):式(41)]
 次に、時変周期h(hは3より大きい素数以外の整数)の(0を満たす)g番目(g=0、1、・・・、h-1)のパリティ検査多項式が式(41)のようにあらわされる場合について考える。
Figure JPOXMLDOC01-appb-M000041
 式(41)において、a#g,p,1、a#g,p,2、a#g,p,3は1以上の自然数とし、a#g,p,1≠a#g,p,2、a#g,p,1≠a#g,p,3、a#g,p,2≠a#g,p,3が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、h-2、h-1;p=1、2、・・・、n-1)。
 上述での説明と同様に、以下に記載する<条件#13-1>、<条件#13-2>、及び<条件#13-3>は、LDPC-CCが高い誤り訂正能力を得る上で重要な要件の一つとなる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%h」は、αをqで除算したときの余りを示す。
 <条件#13-1>
 「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=・・・=a#g,1,1%h=・・・=a#h-2,1,1%h=a#h-1,1,1%h=vp=1 (vp=1:固定値)」
 「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=・・・=a#g,2,1%h=・・・=a#h-2,2,1%h=a#h-1,2,1%h=vp=2 (vp=2:固定値)」
 「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=・・・=a#g,3,1%h=・・・=a#h-2,3,1%h=a#h-1,3,1%h=vp=3 (vp=3:固定値)」
 「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=・・・=a#g,4,1%h=・・・=a#h-2,4,1%h=a#h-1,4,1%h=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=・・・=a#g,k,1%h=・・・=a#h-2,k,1%h=a#h-1,k,1%h=vp=k (vp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%h=a#1,n-2,1%h=a#2,n-2,1%h=a#3,n-2,1%h=・・・=a#g,n-2,1%h=・・・=a#h-2,n-2,1%h=a#h-1,n-2,1%h=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%h=a#1,n-1,1%h=a#2,n-1,1%h=a#3,n-1,1%h=・・・=a#g,n-1,1%h=・・・=a#h-2,n-1,1%h=a#h-1,n-1,1%h=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=・・・=b#g,1%h=・・・=b#h-2,1%h=b#h-1,1%h=w (w:固定値)」
 <条件#13-2>
 「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=・・・=a#g,1,2%h=・・・=a#h-2,1,2%h=a#h-1,1,2%h=yp=1 (yp=1:固定値)」
 「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=・・・=a#g,2,2%h=・・・=a#h-2,2,2%h=a#h-1,2,2%h=yp=2 (yp=2:固定値)」
 「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=・・・=a#g,3,2%h=・・・=a#h-2,3,2%h=a#h-1,3,2%h=yp=3 (yp=3:固定値)」
 「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=・・・=a#g,4,2%h=・・・=a#h-2,4,2%h=a#h-1,4,2%h=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=・・・=a#g,k,2%h=・・・=a#h-2,k,2%h=a#h-1,k,2%h=yp=k (yp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%h=a#1,n-2,2%h=a#2,n-2,2%h=a#3,n-2,2%h=・・・=a#g,n-2,2%h=・・・=a#h-2,n-2,2%h=a#h-1,n-2,2%h=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%h=a#1,n-1,2%h=a#2,n-1,2%h=a#3,n-1,2%h=・・・=a#g,n-1,2%h=・・・=a#h-2,n-1,2%h=a#h-1,n-1,2%h=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=・・・=b#g,2%h=・・・=b#h-2,2%h=b#h-1,2%h=z (z:固定値)」
 <条件#13-3>
 「a#0,1,3%h=a#1,1,3%h=a#2,1,3%h=a#3,1,3%h=・・・=a#g,1,3%h=・・・=a#h-2,1,3%h=a#h-1,1,3%h=sp=1 (sp=1:固定値)」
 「a#0,2,3%h=a#1,2,3%h=a#2,2,3%h=a#3,2,3%h=・・・=a#g,2,3%h=・・・=a#h-2,2,3%h=a#h-1,2,3%h=sp=2 (sp=2:固定値)」
 「a#0,3,3%h=a#1,3,3%h=a#2,3,3%h=a#3,3,3%h=・・・=a#g,3,3%h=・・・=a#h-2,3,3%h=a#h-1,3,3%h=sp=3 (sp=3:固定値)」
 「a#0,4,3%h=a#1,4,3%h=a#2,4,3%h=a#3,4,3%h=・・・=a#g,4,3%h=・・・=a#h-2,4,3%h=a#h-1,4,3%h=sp=4 (sp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,3%h=a#1,k,3%h=a#2,k,3%h=a#3,k,3%h=・・・=a#g,k,3%h=・・・=a#h-2,k,3%h=a#h-1,k,3%h=sp=k (sp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,3%h=a#1,n-2,3%h=a#2,n-2,3%h=a#3,n-2,3%h=・・・=a#g,n-2,3%h=・・・=a#h-2,n-2,3%h=a#h-1,n-2,3%h=sp=n-2 (sp=n-2:固定値)」
 「a#0,n-1,3%h=a#1,n-1,3%h=a#2,n-1,3%h=a#3,n-1,3%h=・・・=a#g,n-1,3%h=・・・=a#h-2,n-1,3%h=a#h-1,n-1,3%h=sp=n-1 (sp=n-1:固定値)」
 加えて、(vp=1,yp=1,sp=1)、(vp=2,yp=2,sp=2)、(vp=3,yp=3,sp=3)、・・・(vp=k,yp=k,sp=k)、・・・、(vp=n-2,yp=n-2,sp=n-2)、(vp=n-1,yp=n-1,sp=n-1)、及び、(w,z,0)のセットを考える。ここで、k=1、2、・・・、n-1である。すると、<条件#14-1>又は<条件#14-2>が成立すると、高い誤り訂正能力を得ることができる。
 <条件#14-1>
 (vp=i,yp=i,sp=i)及び(vp=j,yp=j,sp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、vp=j,yp=j,sp=jを大きい順に並べたセットを(αp=j,βp=j,γp=j)とする。ただし、αp=j≧βp=j、βp=j≧γp=jとする。このとき、(αp=i,βp=i,γp=i)≠(αp=j,βp=j,γp=j)が成立するi,j(i≠j)が存在する。
 <条件#14-2>
 (vp=i,yp=i,sp=i)及び(w,z,0)を考える。ただし、i=1,2,・・・,n-1とする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、w,z,0を大きい順に並べたセットを(αp=i,βp=i,0)とする。ただし、αp=i≧βp=iとする。このとき、(vp=i,yp=i,sp=i)≠(w,z,0)が成立するiが存在する。
 また、<条件#14-1,条件#14-2>の制約条件をさらに厳しくすることにより、誤り訂正能力がより高い時変周期h(hは3より大きい素数でない整数)のLDPC-CCを生成できる可能性がある。その条件は、<条件#15-1>及び<条件#15-2>、又は、<条件#15-1>若しくは<条件#15-2>が成立することである。
 <条件#15-1>
 (vp=i,yp=i,sp=i)及び(vp=j,yp=j,sp=j)を考える。ただし、i=1,2,・・・,n-1、j=1,2,・・・,n-1、及び、i≠jとする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、vp=j,yp=j,sp=jを大きい順に並べたセットを(αp=j,βp=j,γp=j)とする。ただし、αp=j≧βp=j、βp=j≧γp=jとする。このとき、(αp=i,βp=i,γp=i)≠(αp=j,βp=j,γp=j)がすべてのi,j(i≠j)で成立する。
 <条件#15-2>
 (vp=i,yp=i,sp=i)及び(w,z,0)を考える。ただし、i=1,2,・・・,n-1とする。このとき、vp=i,yp=i,sp=iを大きい順に並べたセットを(αp=i,βp=i,γp=i)とする。ただし、αp=i≧βp=i、βp=i≧γp=iとする。また、w,z,0を大きい順に並べたセットを(αp=i,βp=i,0)とする。ただし、αp=i≧βp=iとする。このとき、(vp=i,yp=i,sp=i)≠(w,z,0)がすべてのiで成立する。
 また、vp=i≠yp=i、p=i≠sp=i、p=i≠sp=i(i=1,2,・・・,n-1)、w≠zが成立する場合、タナーグラフにおいて、短いループの発生を抑えることができる。
 以上の説明において、時変周期h(hは3より大きい素数以外の整数)のLDPC-CCのg番目のパリティ検査多項式として、X(D)、X(D)、・・・、Xn-1(D)及びP(D)において項数が3の式(41)を扱った。なお、式(41)において、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が1、2の場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法ある。時変周期hの場合、h個の0を満たすパリティ検査多項式が存在することになるが、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、h個の0を満たすパリティ検査多項式のうち、いずれか(h-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。この場合においても、上述で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
 また、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法ある。時変周期hの場合、h個の0を満たすパリティ検査多項式が存在することになるが、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、h個の0を満たすパリティ検査多項式のうち、いずれか(h-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn-1(D)、P(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。
 以上のように、本実施の形態では、時変周期を3より大きいパリティ検査多項式に基づくLDPC-CC、特に、時変周期を3より大きい素数とするパリティ検査多項式に基づくLDPC-CCの符号構成方法について説明した。本実施の形態で説明したようにして、パリティ検査多項式を形成し、当該パリティ検査多項式に基づきLDPC-CCの符号化を行うことにより、より高い誤り訂正能力を得ることができる。
 (実施の形態2)
 本実施の形態では、実施の形態1で述べたパリティ検査多項式に基づくLDPC-CCの符号化方法及び符号化器の構成について詳しく説明する。
 一例として、先ず、符号化率1/2、時変周期3のLDPC-CCを考える。時変周期3のパリティ検査多項式を以下に与える。
Figure JPOXMLDOC01-appb-M000042
 このとき、P(D)はそれぞれ次式のように求まる。
Figure JPOXMLDOC01-appb-M000043
 そして、式(43-0)~(43-2)をそれぞれ以下のようにあらわす。
Figure JPOXMLDOC01-appb-M000044
 このとき、式(44-0)に相当する回路を図15Aに示し、式(44-1)に相当する回路を図15Bに示し、式(44-2)に相当する回路を図15Cに示す。
 そして、時点i=3kのとき、式(43-0)、つまり、式(44-0)に相当する図15Aに示す回路により、時点iのパリティビットを求めることになる。時点i=3k+1のとき、式(43-1)、つまり、式(44-1)に相当する図15Bに示す回路により、時点iのパリティビットを求めることになる。時点i=3k+2のとき、式(43-2)、つまり、式(44-2)に相当する図15Cに示す回路により、時点iのパリティビットを求めることになる。したがって、符号化器は、図9と同様の構成を採ることができる。
 時変周期が3以外であり、符号化率が(n-1)/nの場合も、上述と同様にして、符号化を行うことができる。例えば、時変周期q、符号化率(n-1)/nのLDPC-CCのg番目(g=0、1、・・・、q-1)のパリティ検査多項式は式(36)であらわされることから、P(D)は以下のようにあらわされる。ただし、qは素数に限られない。
Figure JPOXMLDOC01-appb-M000045
 そして、式(45)を式(44-0)~(44-2)と同様に表現すると以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000046
 ここで、X[i](r=1,2,…,n-1)は、時点iの情報ビットを示し、P[i]は、時点iのパリティビットを示している。
 したがって、時点iにおいて、i%q=kのとき、式(45)、式(46)において、式(45)、式(46)のgにkを代入した式を用いて、時点iのパリティビットを求めることができる。
 ところで、本願発明におけるLDPC-CCは畳み込み符号の一種となるため、情報ビットの復号における信頼度を確保するために、ターミネーションもしくはテイルバイティング(tail-biting)が必要となる。本実施の形態では、ターミネーションを行う場合(「Information-zero-termination」又は簡単に「ゼロターミネーション(Zero-termination)」と呼ぶ)について考える。
 図16は、符号化率(n-1)/nのLDPC-CCにおける「Information-zero-termination」を説明するための図である。時点i(i=0、1、2、3、・・・、s)における情報ビットX、X、・・・、Xn-1及びパリティビットPを、X1,i、X2,i、・・・、Xn-1,i及びパリティビットPとする。そして、図16に示すように、Xn-1,sが送信したい情報の最終ビットであるとする。
 もし、符号化器が時点sまでしか符号化を行わず、符号化側の送信装置が、Pまでしか復号側の受信装置に伝送しなかった場合、復号器において情報ビットの受信品質が大きく劣化する。この問題を解決するために、最終の情報ビットXn-1,s以降の情報ビット(「仮想の情報ビット」と呼ぶ)を「0」と仮定して符号化を行い、パリティビット(1603)を生成する。
 具体的には、図16に示すように、符号化器は、X1,k、X2,k、・・・、Xn-1,k(k=t1、t2、・・・、tm)を「0」として符号化し、Pt1、Pt2、・・・、Ptmを得る。そして、符号化側の送信装置は、時点sにおけるX1,s、X2,s、・・・、Xn-1,s、Pを送信後、Pt1、Pt2、・・・、Ptmを送信する。復号器は、時点s以降では、仮想の情報ビットが「0」であるとわかっていることを利用し、復号を行う。
 「Information-zero-termination」を例とするターミネーションでは、例えば、図9のLDPC-CC符号化器100において、レジスタの初期状態は「0」として符号化を行う。別の解釈として、時点i=0から符号化する場合、例えば式(46)においてzが0より小さい場合、X[z]、X[z]、・・・、Xn-1[z]、P[z]を「0」として符号化を行うことになる。
 式(36)のサブ行列(ベクトル)をHとすると、第gサブ行列は次式のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000047
 ここで、n個連続した「1」は、式(36)の各式におけるX(D)、X(D)、・・・Xn-1(D)及びP(D)の項に相当する。
 よって、ターミネーションを用いたとき、式(36)であらわされる符号化率(n-1)/nの時変周期qのLDPC-CCの検査行列は、図17のようにあらわされる。図17は、図5と同様の構成を持つ。なお、後述の実施の形態3において、テイルバイティングの検査行列の詳細構成について説明する。
 図17に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図17参照)。ただし、1列目より左の要素(図17の例では、H’)は、検査行列には反映されないことになる(図5及び図17参照)。そして、送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn-1,0、P、X1,1、X2,1、・・・、Xn-1,1、P、・・・、X1,k、X2,k、・・・、Xn-1,k、P、・・・・)とすると、Hu=0が成立する。
 以上のように、符号化器は、時点iの情報ビットX[i](r=1,2,…,n-1)を入力とし、式(46)を用いて、上述で述べたように、時点iのパリティビットP[i]を生成し、パリティビット[i]を出力することにより、実施の形態1で述べたLDPC-CCの符号化を行うことができる。
 (実施の形態3)
 本実施の形態では、実施の形態1で述べたパリティ検査多項式に基づくLDPC-CCにおいて、非特許文献10、11に記載されている簡単なテイルバイティングを行う場合に、より高い誤り訂正能力を得るための符号構成方法について詳しく説明する。
 実施の形態1では、時変周期q(qは3より大きい素数)、符号化率(n-1)/nのLDPC-CCのg番目(g=0、1、・・・、q-1)のパリティ検査多項式が、式(36)であらわされる場合について説明した。式(36)は、X(D)、X(D)、・・・、Xn-1(D)及びP(D)において、項数が3であり、実施の形態1では、この場合に、高い誤り訂正能力を得るための符号構成方法(制約条件)について詳述した。また、実施の形態1では、X(D)、X(D)、・・・、Xn-1(D)、P(D)のいずれかの項数が1、2となる場合においても、高い誤り訂正能力を得ることができる可能性があることを指摘した。
 ここで、P(D)の項を1とするとフィードフォワードの畳み込み符号(LDPC-CC)となるので、非特許文献10、11に基づいて、簡単にテイルバイティングを行うことが可能となる。本実施の形態では、この点について詳しく説明する。
 時変周期q、符号化率(n-1)/nのLDPC-CCのg番目(g=0、1、・・・、q-1)のパリティ検査多項式(36)において、P(D)の項が1の場合、g番目のパリティ検査多項式は式(48)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000048
 なお、本実施の形態では、時変周期qは、3以上の素数に限られない。ただし、実施の形態1で述べた制約条件については遵守するものとする。ただし、P(D)において、削減された項に関する条件については除くものとする。
 式(48)から、P(D)は以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000049
 そして、式(49)を式(44-0)~(44-2)と同様に表現すると以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000050
 したがって、時点iにおいて、i%q=kのとき、式(49)、式(50)において、式(49)、式(50)のgにkを代入した式を用いて、時点iのパリティビットを求めることができる。ただし、テイルバイティングを行う場合の動作の詳細については、後述する。
 次に、式(49)で定義される時変周期q、符号化率(n-1)/nのLDPC-CCに対し、テイルバイティングを行ったときの検査行列の構成、及び、ブロックサイズについて詳しく説明する。
 非特許文献12には、時変LDPC-CCにおいて、テイルバイティングを行う際のパリティ検査行列の一般式が記載されている。式(51)は、非特許文献12に記載されるテイルバイティングを行う際のパリティ検査行列である。
Figure JPOXMLDOC01-appb-M000051
 式(51)において、Hはパリティ検査行列であり、Hはシンドロームフォーマーである。また、H (t)(i=0,1,・・・,M)は、c×(c-b)のサブ行列であり、Mはメモリサイズである。
 しかし、非特許文献12には、パリティ検査行列の具体的な符号について示されておらず、また、高い誤り訂正能力を得るための符号構成方法(制約条件)については記載されていない。
 以下では、式(49)で定義される時変周期q、符号化率(n-1)/nのLDPC-CCに対して、テイルバイティングを行った場合においても、より高い誤り訂正能力を得るための符号構成方法(制約条件)について詳しく説明する。
 式(49)で定義される時変周期q、符号化率(n-1)/nのLDPC-CCにおいて、より高い誤り訂正能力を得るためには、復号の際に必要とされるパリティ検査行列Hにおいて、以下の条件が重要となる。
 <条件#16>
 ・パリティ検査行列の行数は、qの倍数である。
 ・したがって、パリティ検査行列の列数はn×qの倍数である。つまり、復号時に必要な(例えば)対数尤度比はn×qの倍数のビット分である。
 ただし、上記<条件#16>において、必要となる時変周期q、符号化率(n-1)/nのLDPC-CCのパリティ検査多項式は、式(48)に限ったものではなく、式(36)、式(38)等のパリティ検査多項式でもよい。また、式(38)では、X(D)、X(D)、・・・Xn-1(D)及びP(D)において、各項数が3であるが、これに限ったものではない。また、時変周期qは2以上であればいずれの値であってもよい。
 ここで、<条件#16>について議論する。
 時点iにおける情報ビットX、X、・・・、Xn-1、及びパリティビットPを、X1,i、X2,i、・・・、Xn-1,i、Pとあらわす。すると、<条件#16>を満たすためには、i=1、2、3、・・・、q、・・・、q×(N-1)+1、q×(N-1)+2、q×(N-1)+3、・・・、q×Nとしてテイルバイティングを行うことになる。
 なお、このとき、送信系列uは、u=(X1,1、X2,1、・・・、Xn-1,1、P、X1,2、X2,2、・・・、Xn-1,2、P、・・・、X1,k、X2,k、・・・、Xn-1,k、P、・・・、X1,q×N、X2,q×N、・・・、Xn-1,q×N、Pq×Nとなり、Hu=0が成立する。このときのパリティ検査行列の構成について、図18A及び図18Bを用いて説明する。
 式(48)のサブ行列(ベクトル)をHとすると、第gサブ行列は次式のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000052
 ここで、n個連続した「1」は、式(48)の各式におけるX(D)、X(D)、・・・Xn-1(D)及びP(D)の項に相当する。
 図18Aは、上記で定義した送信系列uに対応するパリティ検査行列のうち、時点q×N-1(1803)、時点q×N(1804)近辺のパリティ検査行列を示している。図18Aに示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図18A参照)。
 図18Aにおいて、行1801はパリティ検査行列のq×N行(最後の行)を示している。<条件#16>を満たす場合、行1801は、q-1番目のパリティ検査多項式に相当する。また、行1802はパリティ検査行列のq×N-1行を示している。<条件#16>を満たす場合、行1802は、q-2番目のパリティ検査多項式に相当する。
 また、列群1804は時点q×Nに相当する列群を示している。なお、列群1804では、送信系列がX1,q×N、X2,q×N、・・・、Xn-1,q×N、Pq×Nの順に並んでいる。列群1803は時点q×N-1に相当する列群を示している。なお、列群1803では、送信系列がX1,q×N-1、X2,q×N-1、・・・、Xn-1,q×N-1、Pq×N-1の順に並んでいる。
 次に、送信系列の順番を入れ替え、u=(・・・、X1,q×N-1、X2,q×N-1、・・・、Xn-1,q×N-1、Pq×N-1、1,q×N、X2,q×N、・・・、Xn-1,q×N、Pq×N、1,0、X2,1、・・・、Xn-1,1、P、X1,2、X2,2、・・・、Xn-1,2、P、・・・)とする。図18Bは、送信系列uに対応するパリティ検査行列のうち、時点q×N-1(1803)、時点q×N(1804)、時点1(1807)、時点2(1808)近辺のパリティ検査行列を示している。
 図18Bに示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる。また、図18Aのように、時点q×N-1(1803)、時点q×N(1804)近辺のパリティ検査行列をあらわした場合、列1805は、q×N×n列目に相当する列となり、列1806は、1列目に相当する列となる。
 列群1803は時点q×N-1に相当する列群を示しており、列群1803は、X1,q×N-1、X2,q×N-1、・・・、Xn-1,q×N-1、Pq×N-1の順に並んでいる。列群1804は時点q×Nに相当する列群を示しており、列群1804は、X1,q×N、X2,q×N、・・・、Xn-1,q×N、Pq×Nの順に並んでいる。列群1807は時点1に相当する列群を示しており、列群1807は、X1,1、X2,1、・・・、Xn-1,1、Pの順に並んでいる。列群1808は時点2に相当する列群を示しており、列群1808は、X1,2、X2,2、・・・、Xn-1,2、Pの順に並んでいる。
 図18Aのように、時点q×N-1(1803)、時点q×N(1804)近辺のパリティ検査行列をあらわした場合、行1811は、q×N行目に相当する行となり、行1812は、1行目に相当する行となる。
 このとき、図18Bで示したパリティ検査行列の一部分、すなわち、列境界1813より左かつ行境界1814より下の部分は、テイルバイティングを行ったときの特徴的な部分となる。そして、この特徴的な部分の構成は、式(51)と同様の構成となることがわかる。
 パリティ検査行列が<条件#16>を満たす場合に、パリティ検査行列を図18Aに示したようにあらわすと、パリティ検査行列は、0番目の0を満たすパリティ検査多項式に相当する行から始まり、q-1番目の0を満たすパリティ検査多項式に相当する行で終わる。この点が、より高い誤り訂正能力を得る上で重要となる。
 実施の形態1で説明した時変LDPC-CCは、タナーグラフにおいて長さが短いサイクル(cycle of length)の数が少なくなるような符号である。そして、実施の形態1では、タナーグラフにおいて長さが短いサイクルの数が少なくなるような符号を生成するための条件を示した。ここで、テイルバイティングを行う際に、タナーグラフにおいて長さが短いサイクルの数が少なくなるためには、パリティ検査行列の行数が、qの倍数である(<条件#16>)ことが重要となる。この場合、パリティ検査行列の行数が、qの倍数の場合には、時変周期qのパリティ検査多項式が全て用いられることになる。そのため、パリティ検査多項式を実施の形態1で説明したようにタナーグラフにおいて長さが短いサイクルの数が少なくなるような符号とすることにより、テイルバイティングを行う際にも、タナーグラフにおいて長さが短いサイクルの数が少なくすることができる。このように、テイルバイティングを行う際にも、タナーグラフにおいて長さが短いサイクルの数が少なくするためには、<条件#16>が重要な要件となる。
 ただし、通信システムにおいてテイルバイティングを行う際、通信システムにおいて要求されるブロック長(又は情報長)に対し<条件#16>を満たすようにするために、工夫が必要となる場合がある。この点について、例を挙げて説明する。
 図19は、通信システムの略図である。図19の通信システムは、符号化側の送信装置1910、及び、復号側の受信装置1920を有している。
 符号化器1911は、情報を入力とし、符号化を行い、送信系列を生成し、出力する。そして、変調部1912は、送信系列を入力とし、マッピング、直交変調、周波数変換、及び増幅等の所定の処理を行い、送信信号を出力する。送信信号は、通信媒体(無線、電力線、光など)を介して、受信装置1920の受信部1921に届く。
 受信部1921は、受信信号を入力とし、増幅、周波数変換、直交復調、チャネル推定、及びデマッピング等の処理を行い、ベースバンド信号、及びチャネル推定信号を出力する。
 対数尤度比生成部1922は、ベースバンド信号、及びチャネル推定信号を入力とし、ビット単位の対数尤度比を生成し、対数尤度比信号を出力する。
 復号化器1923は、対数尤度比信号を入力とし、ここでは、特に、BP復号を用いた反復復号を行い、推定送信系列、又は(及び)、推定情報系列を出力する。
 例えば、符号化率1/2、時変周期11のLDPC-CCを考える。このとき、テイルバイティングを行うことを前提し、設定した情報長を16384とする。その情報ビットをX1,1、X1,2、X1,3、・・・、X1,16384とする。そして、何も工夫せずに、パリティビットを求めるとすると、P、P、P,3、・・・、P16384が求まることになる。
 しかし、送信系列u=(X1,1、P、X1,2、P、・・・X1,16384、P16384)に対してパリティ検査行列を作成しても、<条件#16>を満たさない。したがって、送信系列として、X1,16385、X1,16386、X1,16387、X1,16388、X1,16389を追加し、符号化器1911が、P16385、P16386、P16387、P16388、P16389を求めるようにすればよい。
 このとき、符号化器1911では、例えば、X1,16385=0、X1,16386=0、X1,16387=0、X1,16388=0、X1,16389=0と設定し、符号化を行い、P16385、P16386、P16387、P16388、P16389を求める。ただし、符号化器1911と復号化器1923とにおいて、X1,16385=0、X1,16386=0、X1,16387=0、X1,16388=0、X1,16389=0と設定したという約束事を共有している場合、X1,16385、X1,16386、X1,16387、X1,16388、X1,16389を送信する必要はない。
 したがって、符号化器1911は、情報系列X=(X1,1、X1,2、X1,3、・・・、X1,16384、1,16385、X1,16386、X1,16387、X1,16388、X1,16389)=(X1,1、X1,2、X1,3、・・・、X1,16384、0、0、0、0、0)を入力とし、系列(X1,1、P、X1,2、P、・・・X1,16384、P16384、X1,16385、P16385、X1,16386、P16386、X1,16387、P16387、X1,16388、P16388、X1,16389、P16389)=(X1,1、P、X1,2、P、・・・X1,16384、P16384、0、P16385、0、P16386、0、P16387、0、P16388、0、P16389)を得る。
 そして、送信装置1910は、符号化器1911と復号化器1923との間で既知である「0」を削減し、送信系列として(X1,1、P、X1,2、P、・・・X1,16384、P16384、P16385、P16386、P16387、P16388、P16389)を送信する。
 受信装置1920では、送信系列ごとの、例えば、対数尤度比をLLR(X1,1)、LLR(P)、LLR(X1,2)、LLR(P)、・・・LLR(X1,16384)、LLR(P16384)、LLR(P16385)、LLR(P16386)、LLR(P16387)、LLR(P16388)、LLR(P16389)を得ることになる。
 そして、受信装置1920は、送信装置1910から送信されなかった「0」の値のX1,16385、X1,16386、X1,16387、X1,16388、X1,16389の対数尤度比LLR(X1,16385)=LLR(0)、LLR(X1,16386)=LLR(0)、LLR(X1,16387)=LLR(0)、LLR(X1,16388)=LLR(0)、LLR(X1,16389)=LLR(0)を生成する。受信装置1920は、LLR(X1,1)、LLR(P)、LLR(X1,2)、LLR(P)、・・・LLR(X1,16384)、LLR(P16384)、LLR(X1,16385)=LLR(0)、LLR(P16385)、LLR(X1,16386)=LLR(0)、LLR(P16386)、LLR(X1,16387)=LLR(0)、LLR(P16387)、LLR(X1,16388)=LLR(0)、LLR(P16388)、LLR(X1,16389)=LLR(0)、LLR(P16389)を得ることになるので、これら対数尤度比及び符号化率1/2、時変周期11のLDPC-CCの16389×32778のパリティ検査行列を用いて復号を行うことで、推定送信系列、又は(及び)、推定情報系列を得る。復号方法としては、非特許文献4、非特許文献5、非特許文献6に示されているようなBP(Belief Propagation)(信頼度伝播)復号、BP復号を近似したmin-sum復号、offset BP復号、Normalized BP復号、shuffled BP復号などの信頼度伝播を利用することができる。
 この例でわかるように、符号化率(n-1)/n、時変周期qのLDPC-CCにおいて、テイルバイティングを行う場合、受信装置1920では、<条件#16>を満たすようなパリティ検査行列を用いて復号が行なわれる。したがって、復号化器1923は、パリティ検査行列として(行)×(列)=(q×M)×(q×n×M)のパリティ検査行列を保有していることになる(Mは自然数)。
 これに対応する符号化器1911において、符号化に必要となる情報ビット数はq×(n-1)×Mとなる。これら情報ビットにより、q×Mビットのパリティビットを求めることになる。
 このとき、符号化器1911に入力される情報ビットの数が、q×(n-1)×Mビットより少ない場合は、符号化器1911において、情報ビット数がq×(n-1)×Mビットとなるように送受信装置(符号化器1911及び復号化器1923)間で既知のビット(例えば「0」(「1」でもよい))が挿入される。そして、符号化器1911は、q×Mビットのパリティビットを求めることになる。このとき、送信装置1910は、挿入した既知のビットを除いた情報ビット及び求めたパリティビットを送信する。なお、既知のビットを送信し、常に、q×(n-1)×Mビットの情報ビット及びq×Mビットのパリティビットを送信してもよいが、この場合には、既知ビット送信分の伝送速度の低下を招くことになる。
 次に、式(48)のパリティ検査多項式により定義される符号化率(n-1)/n、時変周期qのLDPC-CCにおいて、テイルバティングを行った際の符号化方法について説明する。式(48)のパリティ検査多項式により定義される符号化率(n-1)/n、時変周期qのLDPC-CCは、フィードフォワードの畳み込み符号の一種である。したがって、非特許文献10、非特許文献11に記載のテイルバイティングを行うことができる。そこで、以下では、非特許文献10、非特許文献11に記載のテイルバイティングを行う場合の符号化方法の手順の概要について説明する。
 手順は以下の通りである。
 <手順1>
 例えば、符号化器1911が、図9と同様の構成を採る場合、各レジスタ(符号省略)の初期値を「0」とする。つまり、式(50)において、時点iにおいて(i=1、2、・・・)、(i-1)%q=kのとき、g=kとして時点iのパリティビットを求める。そして、式(50)のX[z]、X[z]、・・・、Xn-1[z]、P[z]において、zが1より小さい場合は、これらを「0」として符号化を行う。そして、符号化器1911は、最後のパリティビットまで求める。そして、このときの符号化器1911の各レジスタの状態を保持しておく。
 <手順2>
 手順1において、符号化器1911に保持された各レジスタの状態から(したがって、式(50)のX[z]、X[z]、・・・、Xn-1[z]、P[z]において、zが1より小さい場合について、<手順1>で得られた値が用いられることになる。)、再度、時点i=1から符号化を行い、パリティビットを求める。
 このとき得られたパリティビット及び情報ビットが、テイルバイティングを行ったときの符号化系列となる。
 なお、本実施の形態では、式(48)で定義される時変周期q、符号化率(n-1)/nのLDPC-CCを例に説明した。式(48)は、X(D)、X(D)、・・・、Xn-1(D)において項数が3である。しかし、項数は3に限られず、式(48)において、X(D)、X(D)、・・・、Xn-1(D)のいずれかの項数が1、2となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn-1(D)についても同様である。この場合においても、実施の形態1で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
 また、X(D)、X(D)、・・・、Xn-1(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法ある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn-1(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。
 また、時変周期q、符号化率(n-1)/nのLDPC-CCのg番目(g=0、1、・・・、q-1)のパリティ検査多項式を式(53)のようにあらわした符号に対しても、本実施の形態におけるテイルバイティングを実施することができる。
Figure JPOXMLDOC01-appb-M000053
 ただし、実施の形態1で述べた制約条件が遵守されているものとする。ただし、P(D)において、削減された項に関する条件については除くものとする。
 式(53)から、P(D)は以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000054
 そして、式(54)を式(44-0)~(44-2)と同様に表現すると以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000055
 なお、式(53)のX(D)、X(D)、・・・、Xn-1(D)のいずれかの項数が1、2となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn-1(D)についても同様である。この場合においても、実施の形態1で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
 また、X(D)、X(D)、・・・、Xn-1(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q-1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn-1(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。また、式(53)で定義されたLDPC-CCにおいても、上述の手順を用いることで、テイルバイティングを行ったときの符号化系列を得ることができる。
 以上のように、符号化器1911及び復号化器1923が、実施の形態1で述べたLDPC-CCにおいて行数が時変周期qの倍数のパリティ検査行列を用いることにより、簡単なテイルバイティングを行う際においても、高い誤り訂正能力を得ることができる。
 (実施の形態4)
 本実施の形態では、再度、パリティ検査多項式に基づく、符号化率R=(n-1)/nの時変LDPC-CCについて説明する。X,X,・・・,Xn-1の情報ビット及びパリティビットPの時点jにおけるビットを、それぞれX1,j,X2,j,・・・,Xn-1,j及びPとあらわす。そして、時点jにおけるベクトルuをu=(X1,j,X2,j,・・・,Xn-1,j,P)とあらわす。また、符号化系列をu=(u,u,・・・,u,・・・)とあらわす。Dを遅延演算子とすると、情報ビットX,X,・・・,Xn-1の多項式はX(D),X(D),・・・,Xn-1(D)とあらわされ、パリティビットPの多項式はP(D)とあらわされる。このとき、式(56)であらわされる0を満たすパリティ検査多項式を考える。
Figure JPOXMLDOC01-appb-M000056
 式(56)においてap,q(p=1,2,・・・,n-1;q=1,2,・・・,r)及びb(s=1,2,・・・,ε)は自然数とする。また、y,z=1,2,・・・,r、y≠zの(y,z)に対して、ap,y≠ap,zを満たす。また、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、b≠bを満たす。ここで、∀は、全称記号(universal quantifier)である。
 符号化率R=(n-1)/n、時変周期mのLDPC-CCを作成するために、式(56)に基づくパリティ検査多項式を用意する。このときi番目(i=0,1,・・・,m-1)のパリティ検査多項式を式(57)のようにあらわす。
Figure JPOXMLDOC01-appb-M000057
 式(57)において、AXδ,i(D)(δ=1,2,・・・,n-1)及びB(D)のDの最大次数をそれぞれΓXδ,i及びΓP,iとあらわす。そして、ΓXδ,i及びΓP,iの最大値をΓとする。そして、Γ(i=0,1,・・・,m-1)の最大値をΓとする。符号化系列uを考慮すると、Γを用いることにより、i番目のパリティ検査多項式に相当するベクトルhは式(58)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000058
 式(58)において、hi,v(v=0,1,・・・,Γ)は1×nのベクトルであり、式(59)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000059
 なぜなら、式(57)のパリティ検査多項式は、αi,v,Xw(D)及びβi,vP(D)(w=1,2,・・・,n-1、かつ、αi,v,Xw,βi,v∈[0,1])をもつからである。この場合、式(57)の0を満たすパリティ検査多項式は、D(D),D(D),・・・,Dn-1(D)及びDP(D)をもつので、式(60)を満たす。
Figure JPOXMLDOC01-appb-M000060
 式(60)において、kに対して、∧(k)=∧(k+m)を満たす。ただし、∧(k)はパリティ検査行列kの行目におけるhに相当する。
 式(58)、式(59)及び式(60)を用いることにより、符号化率R=(n-1)/n、時変周期mのパリティ検査多項式に基づくLDPC-CCの検査行列は、式(61)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000061
 (実施の形態5)
 本実施の形態では、実施の形態1で述べた時変LDPC-CCを消失訂正方式に適用する場合について説明する。ただし、LDPC-CCの時変周期は、時変周期2、3、4であってもよい。
 例えば、LDPC符号による消失訂正符号化を利用した通信システムの概念図を図20に示す。図20において、符号化側の通信装置では、送信する情報パケット1~4に対してLDPC符号化を行い、パリティパケットa,bを生成する。上位層処理部は、情報パケットにパリティパケットを付加した符号化パケットを下位層(図20の例では物理層(PHY:Physical Layer))に出力し、下位層の物理層処理部は、符号化パケットを通信路で送信可能な形に変換して通信路に出力する。図20は、通信路が無線通信路の場合の例である。
 復号化側の通信装置では、下位層の物理層処理部で受信処理を行う。このとき、下位層でビットエラーが発生したと仮定する。このビットエラーにより、上位層で、該当するビットを含んだパケットが正しく復号されず、パケット消失が発生する場合がある。図20の例では、情報パケット3が消失した場合を示している。上位層処理部は、受信したパケット列に対してLDPC復号処理を施すことにより、消失した情報パケット3を復号する。LDPC復号としては、信頼度伝播(BP:Belief Propagation)を利用して復号するSum-product復号、又は、ガウスの消去法等が用いられる。
 図21は、上記通信システムの全体構成図である。図21において、通信システムは、符号化側の通信装置2110、通信路2120及び復号側の通信装置2130を有する。
 符号化側の通信装置2110は、消失訂正符号化関連処理部2112、誤り訂正符号化部2113及び送信装置2114を有する。
 復号側の通信装置2130は、受信装置2131、誤り訂正復号部2132、消失訂正復号関連処理部2133を有する。
 通信路2120は、符号化側の通信装置2110の送信装置2114から送信された信号が、復号側の通信装置2130の受信装置2131で受信されるまでに通る経路を示す。通信路2120として、イーサネット(登録商標)、電力線、メタルケーブル、光ファイバ、無線、光(可視光、赤外線など)、又は、これらを組み合わせたものを使用することができる。
 誤り訂正符号化部2113では、通信路2120により発生する誤りを訂正するために、消失訂正符号とは別に、物理層(物理レイヤー)における誤り訂正符号が導入される。したがって、誤り訂正復号部2132では、物理層での誤り訂正符号の復号が行われる。よって、消失訂正符号/復号が施されるレイヤーと誤り訂正符号が行われるレイヤー(つまり、物理レイヤー)とは異なるレイヤー(層)となり、物理層の誤り訂正復号では、軟判定復号が行われ、消失訂正の復号では、消失ビットを復元する作業が行われることになる。
 図22は、消失訂正符号化関連処理部2112の内部構成を示す図である。図22を用いて、消失訂正符号化関連処理部2112における消失訂正符号化方法について説明する。
 パケット生成部2211は、情報2241を入力とし、情報パケット2243を生成し、情報パケット2243を並び替え部2215に出力する。以下では、一例として、情報パケット2243が、情報パケット#1~#nから構成される場合について説明する。
 並び替え部2215は、情報パケット2243(ここでは、情報パケット#1~#n)を入力とし、情報の順番を並び替えて、並び替え後の情報2245を出力する。
 消失訂正符号化器(パリティパケット生成部)2216は、並び替え後の情報2245を入力とし、情報2245に対し、例えば、LDPC-CC(low-density parity-check convolutional code)の符号化を行い、パリティビットを生成する。消失訂正符号化器(パリティパケット生成部)2216は、生成したパリティ部分のみを抽出し、抽出したパリティ部分から(パリティを蓄積し、並び替えを行い)パリティパケット2247を生成し出力する。このとき、情報パケット#1~#nに対し、パリティパケット#1~#mが生成される場合、パリティパケット2247は、パリティパケット#1~#mから構成される。
 誤り検出符号付加部2217は、情報パケット2243(情報パケット#1~#n)、及び、パリティパケット2247(パリティパケット#1~#m)を入力とする。誤り検出符号付加部2217は、情報パケット2243(情報パケット#1~#n)、及び、パリティパケット2247(パリティパケット#1~#m)に対し誤り検出符号、例えば、CRCを付加する。誤り検出符号付加部2217は、CRC付加後の情報パケット及びパリティパケット2249を出力する。したがって、CRC付加後の情報パケット及びパリティパケット2249は、CRC付加後の情報パケット#1~#n、及び、CRC付加後のパリティパケット#1~#mから構成される。
 また、図23は、消失訂正符号化関連処理部2112の別の内部構成を示す図である。図23に示す消失訂正符号化関連処理部2312は、図22に示した消失訂正符号化関連処理部2112とは異なる消失訂正符号化方法を行う。消失訂正符号化部2314は、情報パケットとパリティパケットとを区別せずに、情報ビット及びパリティビットをデータとみなして、パケット#1~#n+mを構成する。ただし、パケットを構成する際、消失訂正符号化部2314は、情報及びパリティを内部のメモリ(図示省略)に一時蓄積し、その後、並び替えを行い、パケットを構成する。そして、誤り検出符号付加部2317は、これらのパケットに誤り検出符号、例えば、CRCを付加し、CRC付加後のパケット#1~#n+mを出力する。
 図24は、消失訂正復号関連処理部2433の内部構成を示す図である。図24を用いて、消失訂正復号関連処理部2433における消失訂正復号方法について説明する。
 誤り検出部2435は、物理層における誤り訂正符号の復号後のパケット2451を入力とし、例えば、CRCにより、誤り検出を行う。このとき、物理層における誤り訂正符号の復号後のパケット2451は、復号後の情報パケット#1~#n及び復号後のパリティパケット#1~#mから構成される。誤り検出の結果、例えば、図24に示すように、復号後の情報パケット及び復号後のパリティパケットに損失パケットが存在する場合、誤り検出部2435は、パケット損失が発生しなかった情報パケット及びパリティパケットにパケット番号を付して、パケット2453として出力する。
 消失訂正復号器2436は、パケット2453(パケット損失が発生しなかった情報パケット(パケット番号付き)及びパリティパケット(パケット番号付き))を入力とする。消失訂正復号器2436は、パケット2453に対して(並び替えを行い、その後)消失訂正符号復号を行い、情報パケット2455(情報パケット#1~#n)を復号する。なお、図23に示す消失訂正符号化関連処理部2312によって符号化された場合には、消失訂正復号器2436には、情報パケットとパリティパケットとが区別されていないパケットが入力され、消失訂正復号が行われることになる。
 ところで、伝送効率の向上と消失訂正能力の向上との両立を考えた場合、通信品質により、消失訂正符号における符号化率を変更できることが望まれる。図25は、通信品質に応じて、消失訂正符号の符号化率を変更することができる消失訂正符号化器2560の構成例を示している。
 第1の消失訂正符号化器2561は、符号化率1/2の消失訂正符号の符号化器である。また、第2の消失訂正符号化器2562は、符号化率2/3の消失訂正符号の符号化器である。また、第3の消失訂正符号化器2563は、符号化率3/4の消失訂正符号の符号化器である。
 第1の消失訂正符号化器2561は、情報2571及び制御信号2572を入力とし、制御信号2572が符号化率1/2を指定した場合に符号化を行い、消失訂正符号化後のデータ2573を選択部2564に出力する。同様に、第2の消失訂正符号化器2562は、情報2571及び制御信号2572を入力とし、制御信号2572が符号化率2/3を指定した場合に符号化を行い、消失訂正符号化後のデータ2574を選択部2564に出力する。同様に、第3の消失訂正符号化器2563は、情報2571及び制御信号2572を入力とし、制御信号2572が符号化率3/4を指定した場合に符号化を行い、消失訂正符号化後のデータ2575を選択部2564に出力する。
 選択部2564は、消失訂正符号化後のデータ2573、2574、2575及び制御信号2572を入力とし、制御信号2572が指定した符号化率に対応する消失訂正符号化後のデータ2576を出力する。
 このように、通信状況に応じて消失訂正符号の符号化率を変更して、適切な符号化率に設定することにより、通信相手の受信品質の向上とデータ(情報)の伝送速度の向上の両立を図ることができるようになる。
 この場合、符号化器に対しては、複数符号化率を低回路規模で実現することと、高い消失訂正能力を得ることとの両立が求められる。以下では、この両立を実現する符号化方法(符号化器)、及び、復号方法について詳しく説明する。
 以下で説明する符号・復号化方法では、実施の形態1~3で説明したLDPC-CCを、消失訂正のための符号として用いる。このとき、消失訂正能力の点に着目すると、例えば、符号化率3/4より大きいLDPC-CCを用いる場合には、高い消失訂正能力を得ることができる。一方、符号化率2/3より小さいLDPC-CCを用いる場合には、高い消失訂正能力を得るのが難しいという課題がある。以下では、この課題を克服し、なおかつ、低回路規模で複数符号化率を実現することができる符号化方法について説明する。
 図26は、通信システムの全体構成図である。図26において、通信システムは、符号化側の通信装置2600、通信路2607及び復号側の通信装置2608を含む。
 通信路2607は、符号化側の通信装置2600の送信装置2605から送信された信号が、復号側の通信装置2608の受信装置2609で受信されるまでに通る経路を示す。
 受信装置2613は、受信信号2612を入力とし、通信装置2608からフィードバックされた情報(フィードバック情報)2615、及び、受信データ2614を得る。
 消失訂正符号化関連処理部2603は、情報2601、制御信号2602、及び、通信装置2608からフィードバックされた情報2615を入力とする。消失訂正符号化関連処理部2603は、制御信号2602、又は、通信装置2608からのフィードバック情報2615に基づき消失訂正符号の符号化率を決定し、符号化を行い、消失訂正符号化後のパケットを出力する。
 誤り訂正符号化部2604は、消失訂正符号化後のパケット、制御信号2602、及び、通信装置2608からのフィードバック情報2615を入力とする。誤り訂正符号化部2604は、制御信号2602、又は、通信装置2608からのフィードバック情報2615に基づき物理層の誤り訂正符号の符号化率を決定し、物理層における誤り訂正符号化を行い、符号化後のデータを出力する。
 送信装置2605は、符号化後のデータを入力とし、例えば、直交変調、周波数変換、増幅等の処理を行い、送信信号を出力する。ただし、送信信号には、データ以外にも、制御情報を伝送するためのシンボル、既知シンボル等シンボルが含まれているものとする。また、送信信号には、設定した物理層の誤り訂正符号の符号化率、及び、消失訂正符号の符号化率の情報を制御情報が含まれているものとする。
 受信装置2609は、受信信号を入力とし、増幅、周波数変換、直交復調等の処理を施し、受信対数尤度比を出力するとともに、送信信号に含まれる既知シンボルから、伝播環境、受信電界強度などの通信路の環境を推定し、推定信号を出力する。また、受信装置2609は、受信信号に含まれる制御情報のためのシンボルを復調することで、送信装置2605が設定した物理層の誤り訂正符号の符号化率、消失訂正符号の符号化率の情報を得、制御信号として出力する。
 誤り訂正復号部2610は、受信対数尤度比、制御信号を入力とし、制御信号に含まれる物理層の誤り訂正符号の符号化率を用いて、物理層における適切な誤り訂正復号を行う。そして、誤り訂正復号部2610は、復号後のデータを出力するとともに、物理層において誤り訂正を行うことができたか否かの情報(誤り訂正可否情報(例えばACK/NACK))を出力する。
 消失訂正復号関連処理部2611は、復号後のデータ、制御信号を入力とし、制御信号に含まれる消失訂正符号の符号化率を用いて、消失訂正復号を行う。そして、消失訂正復号関連処理部2611は、消失訂正復号後のデータを出力するとともに、消失訂正において誤り訂正を行うことができたか否かの情報(消失訂正可否情報(例えばACK/NACK))を出力する。
 送信装置2617は、伝播環境、受信電界強度などの通信路の環境を推定した推定情報(RSSI:Received Signal Strength Indicator又はCSI:Channel State Information)、物理層における誤り訂正可否情報、及び消失訂正における消失訂正可否情報に基づいたフィードバック情報と、送信データとを入力とする。送信装置2617は、符号化、マッピング、直交変調、周波数変換、増幅等の処理を施し、送信信号2618を出力する。送信信号2618は、通信装置2600に伝送される。
 図27を用いて、消失訂正符号化関連処理部2603における消失訂正符号の符号化率の変更方法について説明する。なお、図27において、図22と同様に動作するものについては同一符号を付した。図27において、図22と異なる点は、制御信号2602及びフィードバック情報2615が、パケット生成部2211及び消失訂正符号化器(パリティパケット生成部)2216に入力される点である。そして、消失訂正符号化関連処理部2603は、制御信号2602及びフィードバック情報2615に基づいて、パケットサイズや消失訂正符号の符号化率を変更する。
 また、図28は、消失訂正符号化関連処理部2603の別の内部構成を示す図である。図28に示すに示す消失訂正符号化関連処理部2603は、図27に示した消失訂正符号化関連処理部2603とは異なる方法を用いて、消失訂正符号の符号化率を変更する。なお、図28において、図23と同様に動作するものについては同一符号を付した。図28において、図23と異なる点は、制御信号2602及びフィードバック情報2615が、消失訂正符号化器2316及び誤り検出符号付加部2317に入力される点である。そして、消失訂正符号化関連処理部2603は、制御信号2602及びフィードバック情報2615に基づいて、パケットサイズや消失訂正符号の符号化率を変更する。
 図29は、本実施の形態に係る符号化部の構成の一例を示している。図29の符号化器2900は、複数の符号化率に対応可能なLDPC-CC符号化部である。なお、以下では、図29に示す符号化器2900が、符号化率4/5、及び符号化率16/25をサポートする場合について説明する。
 並び替え部2902は、情報Xを入力とし、情報ビットXを蓄積する。そして、並び替え部2902は、情報ビットXが4ビット分蓄積されると、情報ビットXを並び替え、情報ビットX1、X2、X3、X4を4系統にパラレルに出力する。ただし、この構成は、あくまでも一例である。なお、並び替え部2902の動作について、後述する。
 LDPC-CC符号化器2907は、符号化率4/5をサポートする。LDPC-CC符号化器2907は、情報ビットX1、X2、X3、X4、及び制御信号2916を入力とする。LDPC-CC符号化器2907は、例えば、実施の形態1から実施の形態3に示したLDPC-CC符号化を行い、パリティビット(P1)2908を出力する。なお、制御信号2916が、符号化率4/5を示す場合、情報X1、X2、X3、X4、及び、パリティ(P1)が、符号化器2900の出力となる。
 並び替え部2909は、情報ビットX1、X2、X3、X4、パリティビットP1、及び、制御信号2916を入力とする。そして、制御信号2916が、符号化率4/5をす場合、並び替え部2909は、動作しない。一方、制御信号2916が、符号化率16/25を示している場合、並び替え部2909は、情報ビットX1、X2、X3、X4、及び、パリティビットP1を蓄積する。そして、並び替え部2909は、蓄積した情報ビットX1、X2、X3、X4、及び、パリティビットP1を並び替え、並び替え後のデータ#1(2910)、並び替え後のデータ#2(2911)、並び替え後のデータ#3(2912)、並び替え後のデータ#4(2913)を出力する。なお、並び替え部2909における並び替え方法については、後述する。
 LDPC-CC符号化器2914は、LDPC-CC符号化器2907と同様に、符号化率4/5をサポートする。LDPC-CC符号化器2914は、並び替え後のデータ#1(2910)、並び替え後のデータ#2(2911)、並び替え後のデータ#3(2912)、並び替え後のデータ#4(2913)、及び、制御信号2916を入力とする。そして、制御信2916が、符号化率16/25を示す場合、LDPC-CC符号化器2914は、符号化を行い、パリティビット(P2)2915を出力する。なお、制御信号2916が、符号化率4/5を示す場合、並び替え後のデータ#1(2910)、並び替え後のデータ#2(2911)、並び替え後のデータ#3(2912)、並び替え後のデータ#4(2913)、及び、パリティビット(P2)(2915)が符号化器2900の出力となる。
 図30は、符号化器2900の符号化方法の概略を説明するための図である。並び替え部2902には、情報ビットX(1)から情報ビットX(4N)が入力され、並び替え部2902は情報ビットXを並び替える。そして、並び替え部2902は、並び替え後の4つの情報ビットをパラレルに出力する。したがって、[X1(1),X2(1),X3(1),X4(1)]を最初に出力し、その後、[X1(2),X2(2),X3(2),X4(2)]を出力する。そして、並び替え部2902は、最後に、[X1(N),X2(N),X3(N),X4(N)]を出力する。
 符号化率4/5のLDPC-CC符号化器2907は、[X1(1),X2(1),X3(1),X4(1)]に対して符号化を行い、パリティビットP1(1)を出力する。以下同様に、LDPC-CC符号化器2907は、符号化を行い、パリティビットP1(2)、P1(3)、・・・、P1(N)を生成し、出力する。
 並び替え部2909は、[X1(1),X2(1),X3(1),X4(1),P1(1)]、[X1(2),X2(2),X3(2),X4(2),P1(2)]、・・・、[X1(N),X2(N),X3(N),X4(N),P1(N)]を入力とする。並び替え部2909は、情報ビットに加えパリティビットも含め並び替えを行う。
 例えば、図30に示す例では、並び替え部2909は、並び替え後の[X1(50),X2(31),X3(7),P1(40)]、[X2(39),X4(67),P1(4),X1(20)]、・・・、[P2(65),X4(21),P1(16),X2(87)]を出力する。
 そして、符号化率4/5のLDPC-CC符号化器2914は、例えば、図30の枠3000に示されるように、[X1(50),X2(31),X3(7),P1(40)]に対し符号化を行い、パリティビットP2(1)を生成する。以下同様に、LDPC-CC符号化器2914は、パリティビットP2(1)、P2(2)、・・・、P2(M)を生成し、出力する。
 そして、制御信号2916が符号化率4/5を示す場合、符号化器2900は、[X1(1),X2(1),X3(1),X4(1),P1(1)]、[X1(2),X2(2),X3(2),X4(2),P1(2)]、・・・、[X1(N),X2(N),X3(N),X4(N),P1(N)]を用いてパケットを生成する。
 また、制御信号2916が符号化率16/25を示す場合、符号化器2900は、[X1(50),X2(31),X3(7),P1(40),P2(1)]、[X2(39),X4(67),P1(4),X1(20),P2(2)]、・・・、[P2(65),X4(21),P1(16),X2(87),P2(M)]を用いてパケットを生成する。
 以上のように、本実施の形態では、符号化器2900は、例えば、符号化率4/5のように符号化率の高いLDPC-CC符号化器2907、2914を連接し、かつ、各LDPC-CC符号化器2907、2914の前に並び替え部2902、2909を配置する構成を採る。そして、符号化器2900は、指定された符号化率に応じて、出力するデータを変更する。これにより、低回路規模で複数符号化率に対応でき、かつ、各符号化率で高い消失訂正能力を得ることができるという効果を得ることができる。
 図29では、符号化器2900において、符号化率4/5のLDPC-CC符号化器2907、2914を2つ連接した構成について説明したが、これに限ったものではない。例えば、図31のように、符号化器2900において、異なる符号化率のLDPC-CC符号化器3102、2914を連接した構成でもよい。なお、図31において、図29と同様に動作するものについては同一符号を付した。
 並び替え部3101は、情報ビットXを入力とし、情報ビットXを蓄積する。そして、並び替え部3101は、情報ビットXが5ビット分蓄積されると、情報ビットXを並び替え、情報ビットX1,X2,X3,X4,X5を5系統にパラレルに出力する。
 LDPC-CC符号化器3103は、符号化率5/6をサポートする。LDPC-CC符号化器3103は、情報ビットX1,X2,X3,X4,X5、及び制御信号2916を入力とし、情報ビットX1,X2,X3,X4,X5に対して符号化を行い、パリティビット(P1)2908を出力する。なお、制御信号2916が、符号化率5/6を示す場合、情報ビットX1,X2,X3,X4,X5、及び、パリティビット(P1)2908が、符号化器2900の出力となる。
 並び替え部3104は、情報ビットX1,X2,X3,X4,X5、パリティビット(P1)2908、及び制御信号2916を入力とする。制御信号2916が符号化率2/3を示す場合、並び替え部3104は、情報ビットX1,X2,X3,X4,X5、及び、パリティビット(P1)2908を蓄積する。そして、並び替え部3104は、蓄積した情報ビットX1,X2,X3,X4,X5、及び、パリティビット(P1)2908を並び替え、並び替え後のデータを4系統にパラレルに出力する。このとき、4系統には、情報ビットX1,X2,X3,X4,X5、及び、パリティビット(P1)が含まれることになる。
 LDPC-CC符号化器2914は、符号化率4/5をサポートする。LDPC-CC符号化器2914は、4系統のデータ及び制御信号2916を入力とする。LDPC-CC符号化器2914は、制御信号2916が、符号化率2/3を示す場合、4系統のデータに対して符号化を行い、パリティビット(P2)を出力する。したがって、LDPC-CC符号化器2914は、情報ビットX1,X2,X3,X4,X5、及び、パリティビットP1を用いて符号化を行うことになる。
 なお、符号化器2900において、符号化率はいずれの符号化率に設定してもよい。また、符号化率が同一の符号化器を連接した場合、同一の符号の符号化器であってもよいし、異なる符号の符号化器であってもよい。
 また、図29及び図31には、2つの符号化率に対応する場合の符号化器2900の構成例を示したが、3つ以上の符号化率に対応させるようにしてもよい。図32は、3つ以上の符号化率に対応することができる符号化器3200の構成の一例を示している。
 並び替え部3202は、情報ビットXを入力とし、情報ビットXを蓄積する。そして、並び替え部3202は、蓄積後の情報ビットXを並び替え、並び替え後の情報ビットXを、後段のLDPC-CC符号化器3204の符号化対象の第1データ3203として出力する。
 LDPC-CC符号化器3204は、符号化率(n-1)/nをサポートする。LDPC-CC符号化器3204は、第1データ3203、及び制御信号2916を入力とし、第1データ3203及び制御信号2916に対して符号化を行い、パリティビット(P1)3205を出力する。なお、制御信号2916が、符号化率(n-1)/nを示す場合、第1データ3203及びパリティビット(P1)3205が符号化器3200の出力となる。
 並び替え部3206は、第1データ3203、パリティビット(P1)3205、及び制御信号2916を入力とする。並び替え部3206は、制御信号2916が、符号化率{(n-1)(m-1)}/(nm)以下を示す場合、第1データ3203、及びビットパリティ(P1)3205を蓄積する。そして、並び替え部3206は、蓄積後の第1データ3203、及びパリティビット(P1)3205を並び替え、並び替え後の第1データ3203、及びパリティビット(P1)3205を、後段のLDPC-CC符号化器3208の符号化対象の第2データ3207として出力する。
 LDPC-CC符号化器3208は、符号化率(m-1)/mをサポートする。LDPC-CC符号化器3208は、第2データ3207、及び制御信号2916を入力とする。そして、LDPC-CC符号化器3208は、制御信号2916が、符号化率{(n-1)(m-1)}/(nm)以下を示す場合、第2データ3207に対して符号化を行い、パリティ(P2)3209を出力する。なお、制御信号2916が、符号化率{(n-1)(m-1)}/(nm)を示す場合、第2データ3207及びパリティビット(P2)3209が符号化器3200の出力となる。
 並び替え部3210は、第2データ3207、パリティビット(P2)3209、及び制御信号2916を入力とする。並び替え部3210は、制御信号2916が、符号化率{(n-1)(m-1)(s-1)}/(nms)以下を示す場合、第2データ3209、及びパリティビット(P2)3207を蓄積する。そして、並び替え部3210は、蓄積後の第2データ3209、及びパリティビット(P2)3207を並び替え、並び替え後の第2データ3209、及びパリティ(P2)3207を、後段のLDPC-CC符号化器3212の符号化対象の第3データ3211として出力する。
 LDPC-CC符号化器3212は、符号化率(s-1)/sをサポートする。LDPC-CC符号化器3212は、第3データ3211、及び制御信号2916を入力とする。そして、LDPC-CC符号化器3212は、制御信号2916が、符号化率{(n-1)(m-1)(s-1)}/(nms)以下を示す場合、第3データ3211に対して符号化を行い、パリティビット(P3)3213を出力する。なお、制御信号2916が、符号化率{(n-1)(m-1)(s-1)}/(nms)を示す場合、第3データ3211及びパリティビット(P3)3213が符号化器3200の出力となる。
 なお、LDPC-CC符号化器を更に多段に連接することにより、より多くの符号化率を実現することができるようになる。これにより、複数符号化率を低回路規模で実現することができるとともに、各符号化率で高い消失訂正能力を得ることができるという効果を得ることができる。
 なお、図29、図31及び図32において、情報ビットXに対して、必ずしも並び替え(初段の並び換え)が必要とは限らない。また、並び替え部は、並び替え後の情報ビットXをパラレルに出力する構成で示しているが、これに限ったものではなく、シリアル出力としてもよい。
 図33に、図32の符号化器3200に対応する復号化器3310の構成の一例を示す。
 時点iにおける送信系列uをu=(X1,i、X2,i、・・・、Xn-1,i、P1,i、P2,i、P3,i・・・)とすると、送信系列uは、u=(u,u,・・・,u,・・・)とあらわされる。
 図34において、行列3300は、復号化器3310が用いるパリティ検査行列Hを示している。また、行列3301はLDPC-CC符号化器3204に対応するサブ行列を示し、行列3302はLDPC-CC符号化器3208に対応するサブ行列を示し、行列3303はLDPC-CC符号化器3212に対応するサブ行列を示している。以下同様に、パリティ検査行列Hにおいて、サブ行列が続くことになる。復号化器3310では、最も低い符号化率のパリティ検査行列を保有するようにする。
 図33に示す復号化器3310において、BP復号器3313は、サポートする符号化率のうち、最も低い符号化率のパリティ検査行列に基づくBP復号器である。BP復号器3313は、消失データ3311、及び、制御信号3312を入力とする。ここで、消失データ3311とは、「0」「1」がすでに決定しているビットと「0」「1」が未決定(消失)のビットで構成されている。BP復号器3313は、制御信号3312が指定する符号化率に基づいてBP復号を行うことにより消失訂正し、消失訂正後のデータ3314を出力する。
 以下、復号化器3310の動作について説明する。
 例えば、符号化率(n-1)/nの場合、消失データ3311には、P2、P3、・・・に相当するデータが存在しない。しかし、この場合には、P2、P3、・・・に相当するデータを「0」として、BP復号器3313が復号動作することにより、消失訂正を行うことが可能となる。
 同様に、符号化率{(n-1)(m-1))}/(nm)の場合、消失データ3311には、P3、・・・に相当するデータが存在しない。しかし、この場合には、P3、・・・に相当するデータを「0」として、BP復号器3313が復号動作することにより、消失訂正を行うことが可能となる。その他の符号化率の場合についても、BP復号器3313が同様に動作すればよい。
 以上のように、復号化器3310は、サポートする符号化率のうち、最も低い符号化率のパリティ検査行列を保有し、このパリティ検査行列を用いて、複数の符号化率におけるBP復号に対応する。これにより、低回路規模で複数符号化率に対応することができ、なおかつ、各符号化率で高い消失訂正能力を得ることができるという効果を得ることができる。
 以下では、LDPC-CCを用いて、実際に消失訂正符号化を行う場合の例を説明する。LDPC-CCは畳み込み符号の一種となるため、高い消失訂正能力を得るためには、ターミネーションもしくはテイルバイティングが必要となる。
 以下では、一例として、実施の形態2で述べたゼロターミネーション(Zero-termination)を用いる場合について検討する。特に、ターミネーション系列の挿入方法について述べる。
 情報ビット数を16384ビットとし、1パケットを構成するビット数を512ビットとする。ここで、符号化率4/5のLDPC-CCを用いて符号化を行う場合を考える。このとき、もし、ターミネーションを行わず、情報ビットに対し符号化率4/5の符号化を行うと、情報ビット数が16384ビットであるので、パリティビット数は、4096(16384/4)ビットとなる。したがって、1パケットが512ビットで構成される場合(ただし、512ビットには、誤り検出符号等の情報以外のビットが含まれないものとする。)、40パケットが生成される。
 しかし、このように、ターミネーションを行わずに符号化を行うと、著しく消失訂正能力が低下していまう。この課題を解決するためには、ターミネーション系列を挿入する必要がある。
 そこで、以下では、パケットを構成するビット数を考慮したターミネーション系列挿入方法を提案する。
 具体的には、提案する方法では、情報ビット(ターミネーション系列を含まない)数、パリティビット数、及びターミネーション系列のビット数の和が、パケットを構成するビット数の整数倍となるように、ターミネーション系列を挿入する。ただし、パケットを構成するビットには、誤り検出符号等の制御情報が含まれず、パケットを構成するビット数は、消失訂正符号化に関連するデータのビット数を意味している。
 したがって、上述の例では、512×hビット(hビットは自然数)のターミネーション系列を付加することになる。このようにすると、ターミネーション系列を挿入する効果を得ることができるので、高い消失訂正能力を得ることができるとともに、パケットが効率良く構成されるようになる。
 以上より、符号化率(n-1)/nのLDPC-CCを用い、情報ビット数が(n-1)×cビットの場合、cビットのパリティビットが得られる。そして、ゼロターミネーションのビット数dと、1パケットを構成するビット数zとの関係について考える。ただし、パケットを構成するビット数zには、誤り検出符号等の制御情報が含まれず、パケットを構成するビット数zは、消失訂正符号化に関連するデータのビット数を意味している。
 このとき、ゼロターミネーションのビット数dを、式(62)が成立するように定めると、ターミネーション系列を挿入する効果を得ることができ、高い消失訂正能力を得ることができるとともに、パケットが効率良く構成されるようになる。
Figure JPOXMLDOC01-appb-M000062
ただし、Aは整数とする。
 ただし、(n-1)×cビットの情報ビット中には、パディングを行ったダミーのデータ(本来の情報ビットではなく、符号化を行いやすくするために情報ビットに加えた既知のビット(例えば“0”))が含まれていても良い。なお、パディングについては後述する。
 消失訂正符号化を行う場合、図22から分かるように、並び替え部(2215)が存在する。並び替え部は、一般的にRAMを用いて構成される。そのため、並び替え部2215において、あらゆる情報ビットのサイズ(情報サイズ)に対しても、並び替えが対応可能なハードウェアを実現するのは難しい。したがって、並び替え部を、数種類の情報サイズに対して並び替え対応可能にすることが、ハードウェア規模の増大を抑えるためには重要となる。
 上述した消失訂正符号を行う場合と、消失訂正符号化を行う場合と行わない場合との両者を簡単に対応することができる。図35は、これらの場合のパケット構成を示している。
 消失訂正符号化を行わない場合、情報パケットのみが送信されることになる。
 消失訂正符号化を行う場合、例えば、以下のいずれかの方法でパケットを送信する場合を考える。
 <1>情報パケットとパリティパケットとを区別してパケットを生成し、送信する。
 <2>情報パケットとパリティパケットとに区別せずにパケットを生成し、送信する。
 この場合、ハードウェアの回路規模の増大を抑えるためには、消失訂正符号化を行う場合と、行わない場合とに関係なくパケットを構成するビット数zを同一にすることが望まれる。
 したがって、消失訂正符号化の際に用いられる情報ビットの数をIとすると、式(63)が成立する必要がある。ただし、情報ビット数次第では、パディングを行う必要がある。
Figure JPOXMLDOC01-appb-M000063
ただし、αは整数とする。また、zは、パケットを構成するビット数であり、パケットを構成するビットには、誤り検出符号等の制御情報が含まれず、パケットを構成するビット数zは、消失訂正符号化に関連するデータのビット数を意味する。
 上記の場合、消失訂正符号化を行うために必要となる情報のビット数はα×zビットとなる。しかし、実際には、必ずしもα×zビットの情報が、消失訂正符号化用に揃うわけではなく、α×zビットより少ないビット数しか情報が揃わない場合がある。この場合、ビット数がα×zビットとなるように、ダミーのデータを挿入する方法をとる。したがって、消失訂正符号化用の情報のビット数がα×zビットより少ない場合、ビット数がα×zビットとなるように既知のデータ(例えば「0」)を挿入する。そして、このように生成したα×zビットの情報に対し、消失訂正符号化を行う。
 そして、消失訂正符号化を行うことで、パリティビットが得られる。そして、高い消失訂正能力を得るためにゼロターミネーションを行うものとする。このとき、消失訂正符号化により得られるパリティのビット数をC、ゼロターミネーションのビット数をDとすると、式(64)が成立するとパケットが効率良く構成されるようになる。
Figure JPOXMLDOC01-appb-M000064
ただし、βは整数とする。また、zは、パケットを構成するビット数であり、パケットを構成するビットには、誤り検出符号等の制御情報が含まれず、パケットを構成するビット数zは、消失訂正符号化に関連するデータのビット数を意味する。
 ここで、パケットを構成するビット数zは、バイト単位で構成することが多々ある。したがって、LDPC-CCの符号化率が(n-1)/nの場合に、式(65)が成立とすると、消失訂正符号化の際、常にパディングビットが必要となるような状況を避けることができる。
Figure JPOXMLDOC01-appb-M000065
 したがって、複数符号化率を実現する消失訂正符号化器を構成する際、サポートする符号化率をR=(n-1)/n、(n-1)/n、(n-1)/n、・・・、(n-1)/n、・・・、(n-1)/nとすると(i=0、1、2、・・・、v-1、v; vは1以上の整数)、式(66)が成立すると、消失訂正符号化の際、常にパディングビットが必要となるような状況を避けることができる。
Figure JPOXMLDOC01-appb-M000066
 この条件に相当する条件を、例えば、図32の消失訂正符号化器の符号化率について考えた場合、式(67-1)~(67-3)が成立とすると、消失訂正符号化の際、常にパディングビットが必要となるような状況を避けることができる。
Figure JPOXMLDOC01-appb-M000067
 上述では、LDPC-CCの場合について説明したが、非特許文献1、非特許文献2、非特許文献3、非特許文献7に示されているQC-LDPC符号、ランダム的なLDPC符号等のLDPC符号(LDPCブロック符号)につても同様に考えることができる。例えば、LDPCブロック符号を消失訂正符号として用い、複数符号化率R=b/a、b/a、b/a、・・・、b/a、・・・、bv-1/av-1、b/a(i=0、1、2、・・・、v-1、v; vは1以上の整数;aは1以上の整数、bは1以上の整数 a≧b)をサポートする消失訂正符号化器を考える。このとき、式(68)が成立とすると、消失訂正符号化の際、常にパディングビットが必要となるような状況を避けることができる。
Figure JPOXMLDOC01-appb-M000068
 また、情報ビット数、パリティビット数、パケットを構成するビット数の関係について、消失訂正符号にLDPCブロック符号を用いる場合を考える。このとき、消失訂正符号化の際に用いられる情報ビットの数をIとすると、式(69)が成立するとよいことになる。ただし、情報ビットの数次第では、パディングを行う必要がある。
Figure JPOXMLDOC01-appb-M000069
ただし、αは整数とする。また、パケットを構成するビット数であり、パケットを構成するビットには、誤り検出符号等の制御情報が含まれず、パケットを構成するビット数zは、消失訂正符号化に関連するデータのビット数を意味する。
 上記の場合、消失訂正符号化を行うために必要となる情報のビット数はα×zビットとなる。しかし、実際には、必ずしもα×zビットの情報が、消失訂正符号化用に揃うわけではなく、α×zビットより少ないビット数しか情報が揃わない場合がある。この場合、ビット数がα×zビットとなるように、ダミーのデータを挿入する方法をとる。したがって、消失訂正符号化用の情報のビット数がα×zビットより少ない場合、ビット数がα×zビットとなるように既知のデータ(例えば「0」)を挿入する。そして、このように生成したα×zビットの情報に対し、消失訂正符号化を行う。
 そして、消失訂正符号化を行うことで、パリティビットが得られる。このとき、消失訂正符号化により得られるパリティのビット数をCとすると、)式(70)が成立するとパケットが効率良く構成されるようになる。
Figure JPOXMLDOC01-appb-M000070
ただし、βは整数とする。
 なお、テイルバイティングを行う場合には、ブロック長が定まることになるので、LDPCブロック符号を消失訂正符号に適用したときと同様に扱うことができる。
 (実施の形態6)
 本実施の形態では、実施の形態1で述べた「時変周期が3より大きい、パリティ検査多項式に基づくLDPC-CC」に関する重要な事項の説明を行う。
 1:LDPC-CC
 LDPC-CCは、LDPC-BCと同様に低密度なパリティ検査行列によって定義される符号であり、無限長の時変パリティ検査行列で定義することができるが、実際は、周期的時変のパリティ検査行列で考えることができる。
 パリティ検査行列をHとし、シンドロームフォーマーをHとすると、符号化率R=d/c(d<c)のLDPC-CCのHは、式(71)のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000071
 式(71)において、H (t)(i=0,1,・・・,m)は、c×(c-d)周期サブ行列であり、周期をTとするとi,tに対し、H (t)=H (t+T)が成立する。また、Mはメモリサイズとなる。
 式(71)によって定義されるLDPC-CCは時変畳み込み符号であり、この符号を時変LDPC-CCと呼ぶ。復号は、パリティ検査行列Hを用いBP復号が行われる。符号化系列ベクトルuとすると、以下の関係式が成立する。
Figure JPOXMLDOC01-appb-M000072
 そして、式(72)の関係式を用いてBP復号を行うことにより、情報系列が得られる。
 2:パリティ検査多項式に基づくLDPC-CC
 符号化率R=1/2,生成行列G=[1 G(D)/G(D)]の組織的畳み込み符号を考える。このとき、Gはフィードフォワード多項式、Gはフィードバック多項式をあらわしている。
 情報系列の多項式表現をX(D)、パリティ系列の多項式表現をP(D)とすると0を満たすパリティ検査多項式は以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000073
 ここでは、式(73)を満たす式(74)のように与える。
Figure JPOXMLDOC01-appb-M000074
 式(74)において、a,bは1以上の整数であり(p=1,2,・・・,r;q=1,2,・・・,s)、X(D)およびP(D)にはDの項が存在する。式(74)の0を満たすパリティ検査多項式に基づくパリティ検査行列で定義される符号が時不変LDPC-CCとなる。
 式(74)に基づく異なるパリティ検査多項式をm個用意する(mは2以上の整数)。その0を満たすパリティ検査多項式を以下のようにあらわす。
Figure JPOXMLDOC01-appb-M000075
このとき、i=0,1,・・・,m-1である。
 そして、時点jにおけるデータおよびパリティをX,Pであらわし、u=(X,P)とする。すると、式(76)の0を満たすパリティ検査多項式が成立するものとする。
Figure JPOXMLDOC01-appb-M000076
 すると、式(76)から時点jのパリティPを求めることができる。式(76)の0を満たすパリティ検査多項式に基づき生成されたパリティ検査行列で定義される符号が時変周期mのLDPC-CC(TV-m-LDPC-CC:Time-varying LDPC-CC with a time period of m)となる。
 このとき、式(74)で定義される時不変LDPC-CCおよび式(76)で定義されるTV-m-LDPC-CCは、P(D)にはDの項が存在し、かつ、bは1以上の整数である。そのため、逐次的にパリティをレジスタおよび排他的論理和で簡単に求めることができるという特徴をもつことになる。
 復号部は、時不変LDPC-CCでは式(74)からパリティ検査行列Hを作成し、TV-m-LDPC-CCでは式(76)からパリティ検査行列Hを作成する。そして、復号部は、符号化系列u=(u,u,・・・,u,・・・)に対して、式(72)を用いてBP復号を行い、情報系列を得る。
 次に、符号化率(n-1)/nの時不変LDPC-CCおよびTV-m-LDPC-CCを考える。時点jにおける情報系列X,X,・・・,Xn-1およびパリティPをX2,j,・・・,Xn-1,jおよびPとあらわし、u=(X1,j,X2,j,・・・,Xn-1,j,P)とする。そして、情報系列X,X,・・・,Xn-1の多項式表現をX(D),X(D),・・・,Xn-1(D)とすると、0を満たすパリティ検査多項式は以下のようにあらわされる。
Figure JPOXMLDOC01-appb-M000077
 式(77)に基づく異なるパリティ検査多項式をm個用意する(mは2以上の整数)。その0を満たすパリティ検査多項式を以下のようにあらわす。
Figure JPOXMLDOC01-appb-M000078
このとき、i=0,1,・・・,m-1である。
 すると、時点jにおける情報X,X,・・・,Xn-1およびパリティPのX1,j,X2,j,・・・,Xn-1,jおよびPに対し、式(79)が成立するものとする。
Figure JPOXMLDOC01-appb-M000079
 このとき、式(77)および式(79)に基づく符号が符号化率(n-1)/nの時不変LDPC-CCおよびTV-m-LDPC-CCとなる。
 3:正則TV-m-LDPC-CC
 先ず、本検討で扱う正則TV-m-LDPC-CCについて説明する。
 拘束長がおおよそ等しい時、TV3-LDPC-CCが時変周期2のLDPC-CC(TV2-LDPC-CC)より良好な誤り訂正能力を得られることがわかっている。また、TV3-LDPC-CCを、正則(regular)LDPC符号とすることで、良好な誤り訂正能力を得ることができることがわかっている。そこで、本検討では、時変周期m(m>3)の正則LDPC-CCの作成を試みる。
 符号化率(n-1)/nのTV-m-LDPC-CCの#q番目の0を満たすパリティ検査多項式を以下のように与える(q=0,1,・・・,m-1)。
Figure JPOXMLDOC01-appb-M000080
 すると、以下のような性質をもつ。
 性質1:
 パリティ検査多項式#αのDa#α,p,iXp(D)の項とパリティ検査多項式#βのDa#β,p,jXp(D)の項(α,β=0,1,・・・,m-1;p=1,2,・・・,n-1; i,j=1,2,・・・,rp)において、また、パリティ検査多項式#αのDb#α,iP(D)の項とパリティ検査多項式#βのDb#β,jP(D)の項(α,β=0,1,・・・,m-1 (β≧α); i,j=1,2,・・・,rp)において以下の関係をもつ。
 <1>β=αのとき:
 {a#α,p,i mod m=a#β,p,j mod m}∩{i≠j}が成立するとき、図36のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
 {b#α,i mod m=b#β,j mod m}∩{i≠j}が成立するとき、図36のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
 <2>β≠αのとき:
 β-α=Lとする。
 1)a#α,p,i mod m<a#β,p,j mod mのとき
 (a#β,p,j mod m)-(a#α,p,imod m)=Lのとき、図36のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
 2)a#α,p,i mod m>a#β,p,j mod mのとき
 (a#β,p,j mod m)-(a#α,p,imod m)=L+mのとき、図36のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
 3)b#α,i mod m<b#β,j mod mのとき
 (b#β,j mod m)-(b#α,i mod m)=Lのとき、図36のようにパリティ検査多項式#αに相当するチェックノードとパリティ検査多項式#βに相当するチェックノードの両者とエッジを形成する変数ノード$1が存在する。
 4)b#α,i mod m>b#β,j mod mのとき
 (b#β,j mod m)-(b#α,i mod m)=L+mのとき、図36のようにパリティ検査多項式#αに相当するチェックノードとパリティ検査多項式#βに相当するチェックノードの両者とエッジを形成する変数ノード$1が存在する。
 そして、TV-m-LDPC-CCのサイクル長6(CL6:cycle length of 6)に対し、定理1が成立する。
 定理1:TV-m-LDPC-CCの0を満たすパリティ検査多項式において、以下の2つの条件を与える。
 C#1.1:a#q,p,imod m=a#q,p,j mod m=a#q,p,k mod mを満足するpおよびqが存在する。ただし、i≠j, i≠k, j≠kとする。 
 C#1.2:b#q,imod m=b#q,j mod m=b#q,k mod mを満足するqが存在する。ただし、i≠j, i≠k, j≠kとする。
 C#1.1またはC#1.2を満足した時、少なくとも1つのCL6が存在する。
 証明:
 p=1, q=0おいて、a#0,1,imod m=a#0,1,j mod m=a#0,1,k mod mのときに少なくとも1つのCL6が存在することが証明できれば、X2(D),・・・, Xn-1(D), P(D)についても、X1(D)をX2(D),・・・, Xn-1(D), P(D)に置き換えて考えることにより、q=0のとき、C#1,1, C#1.2が成立すれば、少なくとも1つのCL6が存在することが証明できる。
 また、q=0のとき上述が証明できれば、同様に考えることで、「q=1,・・・,m-1のときもC#1.1, C#1.2が成立すれば、少なくとも1つのCL6が存在する」ことが証明できる。
 したがって、p=1, q=0のとき、a#0,1,imod m=a#0,1,j mod m=a#0,1,k mod mが成立すれば少なくとも1つのCL6が存在することを証明する。
 式(80)のTV-m-LDPC-CCの0を満たすパリティ検査多項式に対し、q=0としたときのX1(D)において、2つ以下の項が存在する場合、C#1.1を満たすことはない。
 式(80)のTV-m-LDPC-CCの0を満たすパリティ検査多項式に対し、q=0としたときのX1(D)において、3つの項が存在し、かつ、a#q,p,i mod m=a#q,p,j mod m=a#q,p,kmod mを満足する、とすると、q=0の0を満たすパリティ検査多項式は、式(81)のようにあらわすことができる。
Figure JPOXMLDOC01-appb-M000081
 ここで、a#0,1,1>a#0,1,2>a#0,1,3としても一般性は失われず、γ,δは自然数となる。このとき、式(81)において、q=0のとき、X1(D)に関する項、つまり、(Da#0,1,3+mγ+mδ+Da#0,1,3+mδ+Da#0,1,3)X1(D)に着目する。このとき、パリティ検査行列Hにおいて、X(D)に関する部分のみを抽出して生成されるサブ行列は、図37のようにあらわされる。図37において、h1,X1, h2,X1,・・・, hm-1,X1は、それぞれ式(81)の0を満たすパリティ検査多項式において、q=1,2,・・・,m-1のときのX1(D)に関する部分のみを抽出して生成されるベクトルである。
 このとき、図37のような関係が成立するのは、性質1の<1>が成立するからである。したがって、γ,δ値に関わらず、式(81)のパリティ検査行列のX(D)に関する部分のみを抽出して生成されるサブ行列のみで、図37に示すように、△で示す“1”によって形成されるCL6が必ず発生する。
 X(D)に関する項が4つ以上存在する場合、4つ以上の項の中から3つの項を選択し、選択された3つの項において、a#0,1,i mod m=a#0,1,j mod m=a#0,1,kmod mとなる場合、図37に示すように、CL6が形成される。
 以上より、q=0のとき、X(D)について、a#0,1,i mod m=a#0,1,j mod m=a#0,1,kmod mとなる場合、CL6が存在することになる。
 また、X(D),・・・,Xn-1(D),P(D)についても、X(D)に置き換えて考えることにより、C#1.1またはC#1.2が成立した場合、CL6が少なくとも1つ発生することになる。
 また、同様に考えることで、q=1,・・・,m-1のときについても、C#1.1またはC#1.2を満足した時、少なくとも1つのCL6が存在する。
 したがって、式(80)の0を満足するパリティ検査多項式において、C#1.1またはC#1.2が成立した場合、CL6が少なくとも1つ発生する。
                       □(証明終わり)
 以降で扱う符号化率(n-1)/nのTV-m-LDPC-CCの#q番目の0を満たすパリティ検査多項式を式(74)に基づき以下のように与える(q=0,・・・,m-1)。
Figure JPOXMLDOC01-appb-M000082
 ここで、式(82)において、X(D),X(D),・・・,Xn-1(D),P(D)にはそれぞれ3つの項が存在するものとする。
 定理1より、CL6の発生を抑えるために、式(82)のXq(D)において、{a#q,p,1mod m≠a#q,p,2 mod m}∩{a#q,p,1 mod m≠a#q,p,3mod m}∩{a#q,p,2 mod m≠a#q,p,3 mod m}を満たす必要がある。同様に、式(82)のP(D)において、{b#q,1 mod m≠b#q,2 mod m}∩{b#q,1mod m≠b#q,3 mod m}∩{b#q,2 mod m≠b#q,3mod m}を満たす必要がある。なお、∩は、積集合(Intersection)である。
 そして、性質1から、正則LDPC符号となるための条件の一例として、以下の条件を考える。
 C#2:qに対して、(a#q,p,1 mod m, a#q,p,2 mod m, a#q,p,3mod m)=(Np,1, Np,2, Np,3)∩(b#q,1mod m, b#q,2 mod m, b#q,3 mod m)= (M1, M2, M3)が成立する。ただし、{a#q,p,1 mod m≠a#q,p,2 mod m}∩{a#q,p,1mod m≠a#q,p,3 mod m}∩{a#q,p,2 mod m≠a#q,p,3mod m} および{b#q,1 mod m≠b#q,2mod m}∩{b#q,1 mod m≠b#q,3 mod m}∩{b#q,2mod m≠b#q,3 mod m} を満たす。なお、qのは、全称記号(universal quantifier)であり、qは、すべてのqを意味する。
 以降の議論では、C#2の条件を満足する正則TV-m-LDPC-CCを扱う。
 [正則TV-m-LDPC-CCの符号設計]
 非特許文献13には、二元入力対象出力通信路において、一様ランダムな正則LDPC符号を最尤復号したときの復号誤り率が示されており、一様ランダムな正則LDPC符号によってGallagerの信頼度関数(非特許文献14参照)が達成できることが示されている。ただし、BP復号を行ったときに、一様ランダムな正則LDPC符号によりGallagerの信頼度関数が達成できるかどうかは不明である。
 ところで、LDPC-CCは、畳み込み符号のクラスに属している。畳み込み符号の信頼度関数については、非特許文献15及び非特許文献16に示されており、その信頼度は拘束長に依存していることが示されている。LDPC-CCは畳み込み符号であるので、パリティ検査行列において、畳み込み符号特有の構造をもつものの、時変周期を大きくすると、パリティ検査行列の「1」の存在する位置が一様ランダムに近づく。ただし、LDPC-CCは畳み込み符号であるため、パリティ検査行列は畳み込み符号特有の構造をもつこと、および、「1」の存在する位置は拘束長に依存することになる。
 これらの結果から、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、符号設計に関して推論#1の推論を与える。
 推論#1:
 BP復号を用いたとき、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、TV-m-LDPC-CCの時変周期mが大きくなると、パリティ検査行列において、「1」の存在する位置に対し、一様ランダムに近づき、誤り訂正能力の高い符号が得られる。
 そして、推論#1を実現するための方法について以下では議論を行う。
 [正則TV-m-LDPC-CCの性質]
 本議論で扱う符号化率(n-1)/nのC#2の条件を満足する正則TV-m-LDPC-CCの#q番目の0を満たすパリティ検査多項式である式(82)に関する、ツリーを描いた際に成り立つ性質を述べる。
 性質2:
 C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数の場合、X1(D),・・・, Xn-1(D)のいずれかの項に着目し、C#3.1が成立する場合を考える。
 C#3.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、X(D)においてa#q,p,imod m≠a#q,p,j mod mが成立する(q=0,・・・,m-1)。ただし、i≠jである。
 C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、C#3.1を満たすDa#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。
 このとき、性質1から、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
 同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数の場合、P(D)の項に着目し、C#3.2が成立する場合を考える。
 C#3.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、P(D)においてb#q,i mod m≠b#q,j mod mが成立する。ただし、i≠jである。
 C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、C#3.2を満たすDb#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。
 このとき、性質1から、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
 例:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、時変周期m=7(素数)とし、qに対し、(b#q,1,b#q,2)=(2,0)が成立するものとする。したがって、C#3.2を満たす。
 そして、Db#q,1P(D), Db#q,2P(D)に対応する変数ノードのみに限ってツリーを描いたとき、式(82)の0を満たす#0番目のパリティ検査多項式に相当するチェックノードを起点とするツリーは図38のようにあらわされる。図38からわかるように、時変周期m=7は、性質2を満たす。
 性質3:
 C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数でない場合、X1(D),・・・, Xn-1(D)のいずれかの項に着目し、C#4.1が成立する場合を考える。
 C#4.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、Xp(D)においてa#q,p,i mod m≧a#q,p,jmod mのとき、|a#q,p,i mod m-a#q,p,j mod m|がmの1を除く約数である。ただし、i≠jである。
 C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、C#4.1を満たすDa#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードは存在しない。
 同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数でない場合、P(D)の項に着目し、C#4.2が成立する場合を考える。
 C#4.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、P(D)においてb#q,i mod m≧b#q,j mod mのとき、|b#q,i mod m-b#q j mod m|がmの1を除く約数である。ただし、i≠jである。
 C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、C#4.2を満たすDb#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m-1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。
 例:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、時変周期m=6(素数でない)とし、qに対し、(b#q,1,b#q,2)=(3,0)が成立するものとする。したがって、C#4.2を満たす。
 そして、Db#q,1P(D), Db#q,2P(D)に対応する変数ノードのみに限ってツリーを描いたとき、式(82)の0を満たす#0番目のパリティ検査多項式に相当するチェックノードを起点とするツリーは図39のようにあらわされる。図39からわかるように、時変周期m=6は、性質3を満たす。
 次に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが特に偶数のときに関する性質を述べる。
 性質4:
 C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが偶数の場合、X1(D),・・・,Xn-1(D)のいずれかの項に着目し、C#5.1が成立する場合を考える。
 C#5.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、Xp(D)においてa#q,p,i mod m≧a#q,p,jmod mのとき、|a#q,p,i mod m-a#q,p,j mod m|が偶数である。ただし、i≠jである。
 C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、C#5.1を満たすDa#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qが奇数のとき、奇数番目のパリティ検査多項式に相当するチェックノードしか存在しない。また、qが偶数のとき、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、偶数番目のパリティ検査多項式に相当するチェックノードしか存在しない。
 同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが偶数の場合、P(D)の項に着目し、C#5.2が成立する場合を考える。
 C#5.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、P(D)においてb#q,i mod m≧b#q,j mod mのとき、|b#q,i mod m-b#q,jmod m|が偶数である。ただし、i≠jである。
 C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、C#5.2を満たすDb#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qが奇数のとき、奇数番目のパリティ検査多項式に相当するチェックノードしか存在しない。また、qが偶数のとき、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、偶数番目のパリティ検査多項式に相当するチェックノードしか存在しない。
 [正則TV-m-LDPC-CCの設計方法]
 C#2の条件を満足する正則TV-m-LDPC-CCにおいて、高い誤り訂正能力を与えるための設計指針を考える。ここで、C#6.1,C#6.2のような場合を考える。
 C#6.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、Da#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、#0から#m-1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。
 C#6.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、Db#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、#0から#m-1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。
 C#6.1,C#6.2のような場合、「qに対して、#0から#m-1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。」ことから、推論#1における、時変周期を大きくしたときの効果は得られない。したがって、上記を考慮し、高い誤り訂正能力を与えるために以下の設計指針を与える。
 [設計指針]:C#2の条件を満足する正則TV-m-LDPC-CCにおいて、X1(D),・・・, Xn-1(D)のいずれかの項に着目し、C#7.1の条件を与える。
 C#7.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、Da#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、ツリーには#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
 同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、P(D)の項に着目し、C#7.2の条件を与える。
 C#7.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、Db#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、ツリーには#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
 そして、本設計指針では、C#7.1が(i,j)で成立するとともに、pで成立し、C#7.2が(i,j)で成立するものとする。
 すると、推論#1を満たすことになる。
 次に、設計指針に関する定理について述べる。
 定理2:設計指針を満たすためには、a#q,p,i mod m≠a#q,p,jmod mおよびb#q,i mod m≠b#q,jmod mを満たさなければならない。ただし、i≠jである。
 証明:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式の式(82)において、Da#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描くと、定理2を満たした場合、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。これが、すべてのpに対し、成立する。
 同様に、C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式の式(82)において、Db#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描くと、定理2を満たした場合、式(82)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
 したがって、定理2は証明された。
                          □(証明終わり)
 定理3:C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが偶数の場合、設計指針を満たす符号は存在しない。
 証明:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、p=1とし、設計指針を満たすことがないことが証明できれば、定理3は証明されたことになる。したがって、p=1として証明を進める。
 C#2の条件を満足する正則TV-m-LDPC-CCでは、(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)∪(“o”,“o”,“e”)∪(“o”,“e”,“e”)∪(“e”,“e”,“e”)がすべての場合をあらわすことができる。ただし、“o”は奇数、“e”は偶数をあらわしている。したがって、(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)∪(“o”,“o”,“e”)∪(“o”,“e”,“e”)∪(“e”,“e”,“e”)において、C#7.1は満たさないことを示す。なお、∪は和集合(union)である。
 (Np,1,Np,2,Np,3)=(“o”,“o”,“o”)のとき、C#5.1において、i,j=1,2,3(i≠j)を満たすように(i,j)のセットをいずれの値の場合でもC#5.1を満たす。
 (Np,1,Np,2,Np,3)=(“o”,“o”,“e”)のとき、C#5.1において、(i,j)=(1,2)とするとC#5.1を満たす。
 (Np,1,Np,2,Np,3)=(“o”,“e”,“e”)のとき、C#5.1において、(i,j)=(2,3)とするとC#5.1を満たす。
 (Np,1,Np,2,Np,3)=(“e”,“e”,“e”)のとき、C#5.1において、i,j=1,2,3(i≠j)を満たすように(i,j)のセットをいずれの値の場合でもC#5.1を満たす。
 したがって、(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)∪(“o”,“o”,“e”)∪(“o”,“e”,“e”)∪(“e”,“e”,“e”)のとき、C#5.1を満たす(i,j)のセットが必ず存在する。よって、性質4より、定理3は証明された。
                          □(証明終わり)
 したがって、設計指針を満たすためには、時変周期mは奇数でなければならない。また、設計指針を満たすためには、性質2および性質3から、下記条件が有効である。
 ・時変周期mが素数であること。
 ・時変周期mが奇数であり、かつ、mの約数の数が少ないこと。
 特に、「時変周期mが奇数であり、かつ、mの約数の数が少ないこと」という点を考慮すると、誤り訂正能力が高い符号が得られる可能性が高い条件の例として以下が考えられる。
 (1)時変周期をα×βとする。
 ただし、α、βは、1を除く奇数であり、かつ、素数。
 (2)時変周期をαとする。
 ただし、αは、1を除く奇数であり、かつ、素数であり、nは2以上の整数。
 (3)時変周期をα×β×γとする。
 ただし、α、β、γは、1を除く奇数であり、かつ、素数。
 ただし、z mod mの演算(zは0以上の整数)を行ったときにとる値はm個あり、したがって、mが大きくなるとz mod mの演算を行ったときにとる値の数は増加する。よって、mを増大させると、上述の設計指針を満たすことが容易となる。ただし、時変周期mが偶数とすると高い誤り訂正能力をもつ符号が得られない、というわけではない。
 4:符号探索例と特性評価
 符号探索例:
 表9に、これまでに検討してきた時変周期2,3のパリティ検査多項式に基づくLDPC-CCの例(表9の#1,#2)を示す。また、前述の設計指針を満たす時変周期11の正則TV11-LDPC-CCの例(表9の#3)を表9に示す。ただし、符号を探索する際に設定した符号化率R=2/3とし、最大拘束長Kmaxは600とする。
Figure JPOXMLDOC01-appb-T000009
 BER特性の評価:
 図40は、AWGN(Additive White Gaussian Noise)環境における符号化率R=2/3のTV2-LDPC-CC(表9の#1)、正則TV3-LDPC-CC(表9の#2)、正則TV11-LDPC-CC(表9の#3)のEb/No(energy per bit-to-noise spectral density ratio)に対するBERの関係(BER特性)を示す図である。ただし、シミュレーションにおいて、変調方式はBPSK(Binary Phase Shift Keying)とし、復号方法として、Normalized BP (1/v=0.75)に基づくBP復号を用いており、反復回数I=50とする。ここで、vは正規化係数である。
 図40に示すように、Eb/No=2.0以上において、正則TV11-LDPC-CCのBER特性は、TV2-LDPC-CC、TV3-LDPC-CCのBER特性より優れた特性を示すことがわかる。
 以上より、前述で議論した設計指針に基づく時変周期の大きいTV-m-LDPC-CCは、TV2-LDPC-CC、TV3-LDPC-CCより優れた誤り訂正能力を得ることが確認でき、前述で議論した設計指針の有効性を確認することができる。
 (実施の形態7)
 本実施の形態では、実施の形態1で述べた符号化率(n-1)/nの時変周期h(hは4以上の整数)のLDPC-CCを消失訂正方式に適用する場合において、パケットレイヤーでの消失訂正符号化処理部における並び替え方法について説明する。なお、本実施の形態に係る消失訂正符号化処理部の構成は、図22又は図23等に示す消失訂正符号化処理部と共通するため、図22又は図23を援用して説明する。
 先に示した図8は、実施の形態1で述べた符号化率(n-1)/nの時変周期m(のLDPC-CCを用いたときのパリティ検査行列の一例を示している。符号化率(n-1)/n、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式が式((83)のようにあらわされる。
Figure JPOXMLDOC01-appb-M000083
 図8に示されているパリティ検査行列を参照すると、符号化率(n-1)/n、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式(83)に対応するパリティ検査行列は、図41のようにあらわされる。このとき、時点kにおける情報X1、X2、・・・、Xn-1およびパリティPをX1,k、X2,k、・・・、Xn-1,k、Pとあらわす。
 図41において、符番5501が付された部分は、パリティ検査行列の行の一部であり、式(83)の0番目の0を満たすパリティ検査多項式に相当するベクトルである。同様に、符番5502が付された部分は、パリティ検査行列の行の一部であり、式(83)の1番目の0を満たすパリティ検査多項式に相当するベクトルである。
 そして、符番5503が付された「11111」は、式(83)の0番目の0を満たすパリティ検査多項式のX1(D)、X2(D)、X3(D)、X4(D)、P(D)の項に相当するものである。そして、時点kにおけるX1,k、X2,k、・・・、Xn-1,k、Pと照らし合わせた場合、符番5510の「1」はX1,k、符番5511の「1」はX2,k、符番5512の「1」はX3,k、符番5513の「1」はX4,k、符番5514の「1」はPに対応するものとなる(式(60)参照)。
 同様に、符番5504が付された「11111」は、式(83)の1番目の0を満たすパリティ検査多項式のX1(D)、X2(D)、X3(D)、X4(D)、P(D)の項に相当するものである。そして、時点k+1におけるX1,k+1、X2,k+1、・・・、Xn-1,k+1、Pk+1と照らし合わせた場合、符番5515の「1」はX1,k+1、符番5516の「1」はX2,k+1、符番5517の「1」はX3,k+1、符番5518の「1」はX4,k+1、符番5519の「1」はPk+1に対応するものとなる(式(60)参照)。
 次に、情報パケットとパリティパケットとが別々に構成される場合(図22参照)における情報パケットの情報ビットの並び替え方法について、図42を用いて説明する。
 図42は、情報パケットとパリティパケットとが別々に構成される場合の並び替えパターンの一例を示す図である。
 パターン$1は消失訂正能力が低いパターン例を示し、パターン$2は消失訂正能力が高いパターン例を示している。図42において、#Zは、Z番目のパケットのデータであることを示している。
 パターン$1では、時点kのX1,k、X2,k、X3,k、X4,kにおいて、X1,kおよびX4,kが同一のパケット(パケット#1)のデータとなっている。同様に、時点k+1においても、X3,k+1およびX4,k+1同一のパケット(パケット#2)のデータとなっている。このとき、例えば、パケット#1を消失(ロス:loss)した場合、BP復号における行演算により消失ビット(X1,kおよびX4,k)を復元することが困難である。同様に、パケット#2を消失(ロス:loss)した場合、BP復号における行演算により消失ビット(X3,k+1およびX4,k+1)を復元することは困難である。以上の点から、パターン$1は消失訂正能力が低いパターン例といえる。
 一方、パターン$2では、全ての時点kにおいて、X1,k、X2,k、X3,k、X4,kにおいて、X1,k、X2,k、X3,k、X4,kは、異なるパケット番号のデータで構成されているものとする。このとき、BP復号における行演算により、消失ビットを復元できる可能性が高くなるので、パターン$2は消失訂正能力が高いパターンの例といえる。
 このようにように、情報パケットとパリティパケットとが別々に構成される場合(図22参照)、並び替え部2215は、並び替えパターンを上述のようなパターン$2とすればよいことになる。すなわち、並び替え部2215は、情報パケット2243(情報パケット#1~#n)を入力とし、全ての時点kにおいて、X1,k、X2,k、X3,k、X4,kが、異なるパケット番号のデータが割り当てられるように、情報の順番を並び替えるようにするとよい。
 次に、情報パケットとパリティパケットとが区別なく構成される場合(図23参照)における情報パケットの情報ビットの並び替え方法について、図43を用いて説明する。
 図43は、情報パケットとパリティパケットとの区別なく構成される場合の並び替えパターンの一例を示す図である。
 パターン$1では、時点kのX1,k、X2,k、X3,k、X4,k、Pにおいて、X1,kおよびPが同一のパケットのデータとなっている。同様に、時点k+1においても、X3,k+1およびX4,k+1同一のパケットのデータとなっており、時点k+2においても、X2,k+2およびPk+2同一のパケットのデータとなっている。
 このとき、例えば、パケット#1をロスした場合、BP復号における行演算により消失ビット(X1,kおよびP)を復元することが困難である。同様に、パケット#2をロスした場合、BP復号における行演算により消失ビット(X3,k+1およびX4,k+1)を復元することはできず、また、パケット#5をロスした場合、BP復号における行演算により消失ビット(X2,k+2およびPk+2)を復元することは困難である。以上の点から、パターン$1は消失訂正能力が低いパターン例といえる。
 一方、パターン$2では、全ての時点kにおいて、X1,k、X2,k、X3,k、X4,k、Pにおいて、X1,k、X2,k、X3,k、X4,k、Pは、異なるパケット番号のデータで構成されているものとする。このとき、BP復号における行演算により、消失ビットを復元できる可能性が高くなるので、パターン$2は消失訂正能力が高いパターンの例といえる。
 このように、情報パケットとパリティパケットとが区別なく構成される場合(図23参照)、消失訂正符号化部2314は、並び替えパターンを上述のようなパターン$2とすればよいことになる。すなわち、消失訂正符号化部2314は、全ての時点kにおいて、情報X1,k、X2,k、X3,k、X4,kおよびパリティPが、パケット番号が異なるパケットに割り当てられるように、情報およびパリティを並び替えるようにするとよい。
 以上のように、本実施の形態では、実施の形態1で述べた符号化率(n-1)/nの時変周期h(hは4以上の整数)のLDPC-CCを消失訂正方式に適用する場合において、パケットレイヤーでの消失訂正符号化部における並び替え方法として、消失訂正能力を向上させるための具体的に構成について提案した。ただし、時変周期hは、4以上に限ったものではなく、時変周期が2、3の場合においても、同様の並べ替えを行うことにより、消失訂正能力を向上させることができる。
 (実施の形態8)
 本実施の形態では、物理層より上位の層における符号化方法(パケットレベルでの符号化方法)の詳細について説明する。
 図44は、物理層より上位の層における符号化方法の一例を示している。図44において、誤り訂正符号の符号化率は2/3とし、1パケットにおける制御情報、誤り検出符号等の冗長な情報を除いたデータサイズを512ビットとする。
 図44において、物理層より上位の層における符号化(パケットレベルでの符号化)を行う符号化器では、情報パケット#1から#8に対し、並び替えの後に、符号化が行われ、パリティビットが求まる。そして、符号化器は、求まったパリティビットを512ビット束ねて、一つのパリティパケットを構成する。ここでは、符号化器がサポートする符号化率が2/3であるので、パリティパケットが4つ、つまり、パリティパケット#1から#4が生成される。よって、他の実施の形態で説明した情報パケットは、図44の情報パケット#1から#8に相当し、パリティパケットは、図44のパリティパケット#1から#4に相当する。
 なお、パリティパケットのサイズの簡単な設定方法としては、パリティパケットのサイズと情報パケットのサイズを同一サイズとする方法がある。ただし、これらサイズが同一でなくてもよい。
 図45は、図44とは異なる物理層より上位の層における符号化方法の一例を示している。図45において、情報パケット#1から#512は元となる情報パケットであり、1パケットにおける制御情報、誤り検出符号等の冗長な情報を除いたデータサイズを512ビットとする。そして、符号化器は、情報パケット#k(k=1、2、・・・、511、512)を8分割し、サブ情報パケット#k-1、#k-2、・・・、#k-8を生成する。
 そして、符号化器は、サブ情報パケット#1-n、#2-n、#3-n、・・・、#511-n、#512-n(n=1、2、3、4、5、6、7、8)に対し符号化を施し、パリティ群#nを形成する。そして、図46のように、パリティ群#nをm個に分割し、(サブ)パリティパケット#n-1、#n-2、・・・、#n-mが構成される。
 よって、実施の形態5で説明した情報パケットは、図45の情報パケット#1から#512に相当し、パリティパケットは、図37の(サブ)パリティパケット#n-1、#n-2、・・・、#n-m(n=1、2、3、4、5、6、7、8)となる。このとき情報パケットの1パケットは512ビットとなり、パリティパケットの1パケットは必ずしも512ビットである必要はない。すなわち、情報パケットの1パケットとパリティパケットの1パケットとが必ずしも同一サイズである必要はない。
 なお、符号化器は、情報パケットを分割することにより得られたサブ情報パケット自身を、情報パケットの1パケットとみなしてもよい。
 別の方法として、実施の形態5で説明した情報パケットを、本実施の形態で説明したサブ情報パケット#k-1、#k-2、・・・、#k-8(k=1、2、・・・、511、512)として考えても、実施の形態5は実施することができる。特に、実施の形態5では、ターミネーション系列の挿入方法、パケットの構成方法について述べた。ここで、本実施の形態の「サブ情報パケット」、「サブパリティパケット」を、それぞれ、実施の形態5で説明している「サブ情報パケット」、「パリティパケット」と考えても、実施の形態5は実施することができる。ただし、サブ情報パケットを構成するビット数とサブパリティパケットを構成するビット数とが等しいと実施しやすい。
 実施の形態5において、情報パケットには情報以外のデータ(例えば、誤り検出符号)が付加されることになる。また、実施の形態5において、パリティパケットにはパリティビット以外のデータが付加されることになる。しかし、これら情報ビット及びパリティビット以外のデータを含まず、情報パケットのうち情報ビットのビット数に関する場合に適用した場合、また、パリティパケットのうちパリティビットののビット数に関する場合に適用した場合、式(62)~式(70)に示すターミネーションに関する条件は、重要な条件となる。
 (実施の形態9)
 実施の形態1では、特性が良好なLDPC-CCについて説明した。本実施の形態では、実施の形態1で説明したLDPC-CCを物理層に適用する場合に、符号化率を可変とするショートニング方法について説明する。ショートニングとは、第1の符号化率の符号から第2の符号化率(第1の符号化率>第2の符号化率)の符号を生成することをいう。
 以下では、一例として、実施の形態1で述べた符号化率1/2の時変周期h(hは4以上の整数)のパリティ検査多項式に基づくLDPC-CCから符号化率1/3のLDPC-CCを生成するショートニング方法について説明する。
 符号化率1/2、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式が式(84)のようにあらわされる場合について考える。
Figure JPOXMLDOC01-appb-M000084
 式(84)において、a#g,1,1、a#g,1,2は1以上の自然数とし、a#g,1,1≠a#g,1,2が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、h-2、h-1)。
 そして、式(84)は、以下の<条件#17>を満たしているものとする。
 <条件#17>
 「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=・・・=a#g,1,1%h=・・・=a#h-2,1,1%h=a#h-1,1,1%h=vp=1 (vp=1:固定値)」
 「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=・・・=b#g,1%h=・・・=b#h-2,1%h=b#h-1,1%h=w (w:固定値)」
 「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=・・・=a#g,1,2%h=・・・=a#h-2,1,2%h=a#h-1,1,2%h=yp=1 (yp=1:固定値)」
 「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=・・・=b#g,2%h=・・・=b#h-2,2%h=b#h-1,2%h=z (z:固定値)」
 そして、実施の形態4のようにパリティ検査行列を作成した場合、時間iにおける情報をXiとし、パリティをPiとすると、符号語wは、w=(X0、P0、X1、P1、・・・、Xi、Pi、・・・)とあらわされる。
 このとき、本実施の形態におけるショートニング方法では、以下のような方法をとる。
 [方法#1-1]
 方法#1-1では、情報Xに規則的に既知情報(例えば、ゼロ)を挿入する(方法#1-1の挿入ルール)。例えば、情報2hk(=2×h×k)ビットのうちhk(=h×k)ビットには既知情報を挿入し(挿入ステップ)、既知情報を含む2hkビットの情報に対しては、符号化率1/2のLDPC-CCを用いて符号化を行う。これにより、2hkビットのパリティが生成される(符号化ステップ)。このとき、情報2hkビットのうちhkビットの既知情報は、送信しないビットとする(送信ステップ)。これにより、符号化率1/3を実現することができる。
 なお、既知情報は、ゼロに限らず、1でも、又は、予め定めた1以外の値でも良く、通信相手の通信装置に予め通知、または、仕様として決定されていればよい。
 以下は、方法#1-1の挿入ルールとの差異を主に記載する。
 [方法#1-2]
 方法#1-2では、方法#1-1と異なり、図47に示すように、情報及びパリティから構成される2×h×2kビットを1周期とし、各周期において、既知情報を同じ位置に挿入する(方法#1-2の挿入ルール)。
 図48を例に用いて、既知情報の挿入規則(方法#1-2の挿入ルール)について、方法#1-1との差異について説明する。
 図48には、時変周期が4のとき、情報及びパリティから構成される16ビットを1周期とした場合の例を示している。このとき、方法#1-2では、最初の1周期において、X0、X2、X4、X5に既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する。
 また、方法#1-2では、次の1周期では、X8、X10、X12、X13に既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入し、・・・、i番目の1周期では、X8i、X8i+2、X8i+4、X8i+5に既知情報を挿入する。i番目以降についても、同様に、方法#1-2では、各周期において、既知情報が挿入される位置を同じとする。
 次に、方法#1-2では、[方法#1-1]と同様に、例えば、情報2hkビットのうちhkビットに既知情報を挿入し、既知情報を含む2hkビットの情報に対し符号化率1/2のLDPC-CCを用いて符号化を行う。
 これにより、2hkビットのパリティが生成される。このとき、hkビットの既知情報を送信しないビットとすると、符号化率1/3を実現することができる。
 以下、既知情報を挿入する位置と誤り訂正能力との関係は、例として、図49を用いて説明する。
 図49は、検査行列Hの一部と符号語w(X0、P0、X1、P1、X2、P2、・・・、X9、P9)との対応関係を示している。図49の行4001では、X2及びX4に対応する列に要素“1”が配置されている。また、図49の行4002では、X2及びX9に対応する列に要素“1”が配置されている。したがって、X2、X4、X9に既知情報を挿入すると、行4001及び行4002では、要素が“1”となる列に対応する全ての情報が既知となる。そのため、行4001及び行4002では、未知の値はパリティのみとなるので、BP復号の行演算において、信頼性が高い対数尤度比の更新を行うことができるようになる。
 すなわち、既知情報を挿入することで、元の符号化率より小さい符号化率を実現する場合、検査行列における各行、つまり、パリティ検査多項式において、パリティと情報のうち、情報において、全て既知情報である行、または、既知情報の数が多い行(例えば、1ビット以外は既知情報)を多くすることが、高い誤り訂正能力を得るうえで重要となる。
 時変LDPC-CCの場合には、パリティ検査行列Hにおいて、要素“1”が配置されるパターンに規則性がある。そのため、パリティ検査行列Hに基づいて、各周期において、既知情報を規則的に挿入することにより、未知の値がパリティのみである行、又は、パリティ及び情報が未知の場合に、未知の情報のビット数が少ない行を多くすることができる。この結果、良好な特性を与える符号化率1/3のLDPC-CCを得ることができる。
 以下の[方法#1-3]によると、実施の形態1で説明した特性が良好な符号化率1/2、時変周期h(hは4以上の整数)のLDPC-CCから、誤り訂正能力の高い、符号化率1/3、時変周期hのLDPC-CCを実現することができる。
 [方法#1-3]
 方法#1-3では、情報及びパリティから構成される2×h×2kビットの周期(パリティが含まれているので)において、情報X2hi、X2hi+1、X2hi+2、・・・、X2hi+2h-1、・・・、X2h(i+k-1)、X2h(i+k-1)+1、X2h(i+k-1)+2、・・・、X2h(i+k-1)+2h-1の2×h×kビットのうち、h×k個のXjに、既知情報(例えば、ゼロ)を挿入する。
 ただし、jは、2hi~2h(i+k-1)+2h-1のいずれかの値をとり、h×k個の異なる値が存在する。また、既知情報は、1でもよいし、予め定めた値でもよい。
 このとき、h×k個のXjに既知情報を挿入する場合に、異なるh×k個のjをhで除算した余りのうち、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。(vp=1、yp=1については<条件#7-1><条件#7-2>参照。)このようなγが少なくとも一つ存在する。
 このようにして、既知情報を挿入する位置に条件を設けることにより、パリティ検査行列Hの各行において、つまり、パリティ検査多項式において、情報が全て既知情報となる行、または、既知情報の数が多い行(例えば、1ビット以外は既知情報)をできるだけ多くすることができるようになる。
 上記で説明した時変周期hのLDPC-CCは、<条件#17>を満たしている。このとき、g番目(g=0、1、・・・、h-1)のパリティ検査多項式は式(84)のようにあらわされるので、パリティ検査行列内の式(84)のパリティ検査多項式に対応するサブ行列(ベクトル)は、図50のようにあらわされる。
 図50において、符番4101の「1」はDa#g,1,1(D)に対応する。また、符番4102の「1」はDa#g,1,2(D)に対応する。また、符番4103の「1」はX(D)に対応する。また、符番4104はP(D)に対応する。
 このとき、符番4103の「1」の時点をjとしXjとあらわすと、符番4101の「1」はXj-a#g,1,1とあらわされ、符番4102の「1」はXj-a#g,1,2とあらわされる。
 したがって、jを基準位置として考えると、符番4101の「1」はvp=1の倍数の位置にあり、符番4102の「1」はyp=1の倍数の位置にある。また、これは、gに依存しない。
 このことを考慮すると、以下のことが言える。すなわち、「既知情報を挿入する位置に条件を設けることにより、パリティ検査行列Hの各行において、つまり、パリティ検査多項式において、情報が全て既知情報となる行、または、既知情報の数が多い行(例えば、1ビット以外は既知情報)をできるだけ多くする」ためには、[方法#1-3]は重要な要件の一つとなる。
 例として、時変周期h=4とし、vp=1=1、yp=1=2であるものとする。図48において、4×2×2×1ビット(つまりk=1)を1周期とし、情報及びパリティX8i、P8i、X8i+1、P8i+1、X8i+2、P8i+2、X8i+3、P8i+3、X8i+4、P8i+4、X8i+5、P8i+5、X8i+6、P8i+6、X8i+7、P8i+7のうち、X8i、X8i+2、X8i+4、X8i+5に既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する場合について考える。
 この場合、既知情報を挿入したXjのjとしては、8i、8i+2、8i+4、8i+5の4つの異なる値が存在する。このとき、8iを4で除算した余りは0となり、8i+2を4で除算した余りは2となり、8i+4を4で除算した余りは0となり、8i+5を4で除算した余りは1となる。したがって、余りが0となる個数が2個となり、余りがvp=1=1となる個数が1個となり、余りがyp=1=2となる個数が1個となり、上記[方法#1-3]の挿入ルールが満たされる(ただし、γ=0となる。)。よって、図48に示す例は、上記[方法#1-3]の挿入ルールを満たす一例といえる。
 [方法#1-3]のより厳しい条件として、以下の[方法#1-3’]を与えることができる。
 [方法#1-3’]
 方法#1-3’では、情報及びパリティから構成される2×h×2kビットの周期(パリティが含まれているので)において、情報X2hi、X2hi+1、X2hi+2、・・・、X2hi+2h-1、・・・、X2h(i+k-1)、X2h(i+k-1)+1、X2h(i+k-1)+2、・・・、X2h(i+k-1)+2h-1の2×h×kビットのうち、h×k個のXjに、既知情報(例えば、ゼロ)を挿入する。ただし、jは、2hi~2h(i+k-1)+2h-1のいずれかの値をとり、h×k個の異なる値が存在する。また、既知情報は、1でもよいし、予め定めた値でもよい。
 このとき、h×k個のXjに既知情報を挿入する場合に、異なるh×k個のjをhで除算した余りのうち、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。(vp=1、yp=1については<条件#7-1>,<条件#7-2>参照。)このようなγが少なくとも一つ存在する。
 上記を満たさないγでは、「余りが(0+γ) mod hとなる個数」、「余りが(vp=1+γ) mod hとなる個数」、「余りが(yp=1+γ) mod hとなる個数」はゼロとなる。
 また、[方法#1-3]をより効果的に実施するためには、上述の時変周期hの<条件#17>のパリティ検査多項式に基づくLDPC-CCにおいて、以下の3つのいずれかの条件を満たすとよい(方法#1-3’の挿入ルール)。ただし、<条件#17>において、vp=1<yp=1とする。
 ・yp=1-vp=1=vp=1-0      つまり yp=1=2×vp=1
 ・vp=1-0=h-yp=1          つまり vp=1=h-yp=1
 ・h-yp=1=yp=1-vp=1      つまり h=2×yp=1-vp=1
 この条件を付加すると、既知情報を挿入する位置に条件を設けることにより、パリティ検査行列Hの各行において、つまり、パリティ検査多項式において、情報が全て既知情報となる行、または、既知情報の数が多い行(例えば、1ビット以外は既知情報)をできるだけ多くすることができるようになる。これは、LDPC-CCは特有のパリティ検査行列の構成をもつからである。
 次に、実施の形態1で述べた符号化率(n-1)/n(nは2以上の整数)の時変周期h(hは4以上の整数)のLDPC-CCから符号化率(n-1)/nより小さい符号化率を実現するショートニング方法について説明する。
 符号化率(n-1)/n、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式が式(85)のようにあらわされる場合について考える。
Figure JPOXMLDOC01-appb-M000085
 式(85)において、a#g,p,1、a#g,p,2は1以上の自然数とし、a#g,p,1≠a#g,p,2、が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、h-2、h-1;p=1、2、・・・、n-1)。
 そして、式(85)において、以下の<条件#18-1><条件#18-2>を満たしているものとする。
 <条件#18-1>
 「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=・・・=a#g,1,1%h=・・・=a#h-2,1,1%h=a#h-1,1,1%h=vp=1 (vp=1:固定値)」
 「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=・・・=a#g,2,1%h=・・・=a#h-2,2,1%h=a#h-1,2,1%h=vp=2 (vp=2:固定値)」
 「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=・・・=a#g,3,1%h=・・・=a#h-2,3,1%h=a#h-1,3,1%h=vp=3 (vp=3:固定値)」
 「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=・・・=a#g,4,1%h=・・・=a#h-2,4,1%h=a#h-1,4,1%h=vp=4 (vp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=・・・=a#g,k,1%h=・・・=a#h-2,k,1%h=a#h-1,k,1%h=vp=k (vp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,1%h=a#1,n-2,1%h=a#2,n-2,1%h=a#3,n-2,1%h=・・・=a#g,n-2,1%h=・・・=a#h-2,n-2,1%h=a#h-1,n-2,1%h=vp=n-2 (vp=n-2:固定値)」
 「a#0,n-1,1%h=a#1,n-1,1%h=a#2,n-1,1%h=a#3,n-1,1%h=・・・=a#g,n-1,1%h=・・・=a#h-2,n-1,1%h=a#h-1,n-1,1%h=vp=n-1 (vp=n-1:固定値)」
 及び、
 「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=・・・=b#g,1%h=・・・=b#h-2,1%h=b#h-1,1%h=w (w:固定値)」
 <条件#18-2>
 「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=・・・=a#g,1,2%h=・・・=a#h-2,1,2%h=a#h-1,1,2%h=yp=1 (yp=1:固定値)」
 「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=・・・=a#g,2,2%h=・・・=a#h-2,2,2%h=a#h-1,2,2%h=yp=2 (yp=2:固定値)」
 「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=・・・=a#g,3,2%h=・・・=a#h-2,3,2%h=a#h-1,3,2%h=yp=3 (yp=3:固定値)」
 「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=・・・=a#g,4,2%h=・・・=a#h-2,4,2%h=a#h-1,4,2%h=yp=4 (yp=4:固定値)」
                   ・
                   ・
                   ・
 「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=・・・=a#g,k,2%h=・・・=a#h-2,k,2%h=a#h-1,k,2%h=yp=k (yp=k:固定値)
 (したがって、k=1、2、・・・、n-1となる。)」
                   ・
                   ・
                   ・
 「a#0,n-2,2%h=a#1,n-2,2%h=a#2,n-2,2%h=a#3,n-2,2%h=・・・=a#g,n-2,2%h=・・・=a#h-2,n-2,2%h=a#h-1,n-2,2%h=yp=n-2 (yp=n-2:固定値)」
 「a#0,n-1,2%h=a#1,n-1,2%h=a#2,n-1,2%h=a#3,n-1,2%h=・・・=a#g,n-1,2%h=・・・=a#h-2,n-1,2%h=a#h-1,n-1,2%h=yp=n-1 (yp=n-1:固定値)」
 及び、
 「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=・・・=b#g,2%h=・・・=b#h-2,2%h=b#h-1,2%h=z (z:固定値)」
 上記で述べた符号化率(n-1)/nの時変周期hのLDPC-CCを用いて誤り訂正能力の高い符号化率(n-1)/nより小さい符号化率を実現するショートニング方法は、以下の通りである。
 [方法#2-1]
 方法#2-1では、情報Xに規則的に既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する(方法#2-1の挿入ルール)。
 [方法#2-2]
 方法#2-2では、方法#2-1と異なり、図51に示すように、情報及びパリティから構成されるh×n×kビットを1周期とし、各周期において、既知情報を同じ位置に挿入する(方法#2-2の挿入ルール)。各周期において、既知情報を同じ位置に挿入するとは、図48を用いて上述の[方法#1-2]で説明した通りである。
 [方法#2-3]
 方法#2-3では、情報及びパリティから構成されるh×n×kビットの周期において、情報X1,hi、X2,hi、・・・、Xn-1,hi、・・・・・・、X1,h(i+k-1)+h-1、X2,h(i+k-1)+h-1、・・・、Xn-1,h(i+k-1)+h-1のh×(n-1)×kビットから、Zビット選択し、選択したZビットに既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する(方法#2-3の挿入ルール)。
 このとき、方法#2-3は、既知情報を挿入した情報X1,j(ただし、jは、hi~h(i+k-1)+h-1のいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。
 すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 同様に、方法#2-3では、既知情報を挿入した情報X2,j(ただし、jは、hi~h(i+k-1)+h-1のいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。
 すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=2+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=2+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=2+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=2+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 なお、方法#2-3では、情報Xf,j(f=1、2、3、・・・、n-1)とした場合においても、同様に説明ができる。方法#2-3では、既知情報を挿入したXf,j(ただし、jは、hi~h(i+k-1)+h-1のいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 このようにして、既知情報を挿入する位置に条件を設けることにより、[方法#1-3]と同様に、パリティ検査行列Hにおいて、「未知の値がパリティ及び少ない情報ビットという行」をより多く生成することができるようになる。これにより、上記で述べた特性が良好な符号化率(n-1)/nの時変周期hのLDPC-CCを用いて誤り訂正能力の高い符号化率(n-1)/nより小さい符号化率を実現することができる。
 [方法#2-3]では、挿入される既知情報の数が各周期で同じ場合について説明したが、挿入される既知情報の数が各周期で異なっていても良い。例えば、図52に示すように、最初の周期ではN個の情報を既知情報とし、次の周期ではN個の情報を既知情報とし、i番目の周期では、Ni個の情報を既知情報とするようにしても良い。
 このように、挿入される既知情報の数が各周期で異なる場合には、周期という概念は意味をなさない。方法#2-3の挿入ルールを、周期という概念を用いずにあらわすと、[方法#2-4]のようになる。
 [方法#2-4]
 情報及びパリティから構成されるデータ系列において、情報X1,0、X2,0、・・・、Xn-1,0、・・・・・・、X1,v、X2,v、・・・、Xn-1,vのビット系列からZビット選択し、選択したZビットに既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する(方法#2-4の挿入ルール)。
 このとき、方法#2-4では、既知情報を挿入したX1,j(ただし、jは、0~vのいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 同様に、方法#2-4では、既知情報を挿入したX2,j(ただし、jは、0~vのいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=2+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=2+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=2+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=2+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 つまり、方法#2-4では、既知情報を挿入したXf,j(ただし、jは、0~vのいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする(f=1、2、3、・・・、n-1)。このようなγが少なくとも一つ存在する。
 このようにして、既知情報を挿入する位置に条件を設けることにより、周期毎に挿入される既知情報のビット数が異なるような場合(または、周期という概念がない場合)においても、[方法#2-3]と同様に、検査行列Hにおいて、「未知の値がパリティ及び少ない情報ビットという行」をより多く生成することができるようになる。これにより、上記で述べた特性が良好な符号化率(n-1)/nの時変周期hのLDPC-CCを用いて誤り訂正能力の高い符号化率(n-1)/nより小さい符号化率を実現することができる。
 また、[方法#2-3]、[方法#2-4]をより効果的に実施するためには、上述の時変周期hの<条件#18-1><条件#18-2>のパリティ検査多項式に基づくLDPC-CCにおいて、以下の3つのいずれかの条件を満たすとよい。ただし、<条件#18-1><条件#18-2>において、vp=s<yp=s(s=1、2、・・・、n-1)とする。
 ・yp=s-vp=s=vp=s-0      つまり yp=s=2×vp=s
 ・vp=s-0=h-yp=s          つまり vp=s=h-yp=s
 ・h-yp=s=yp=s-vp=s      つまり h=2×yp=s-vp=s
 この条件を付加すると、既知情報を挿入する位置に条件を設けることにより、パリティ検査行列Hの各行において、つまり、パリティ検査多項式において、情報が全て既知情報となる行、または、既知情報の数が多い行(例えば、1ビット以外は既知情報)をできるだけ多くすることができるようになる。これは、LDPC-CCは特有のパリティ検査行列の構成をもつからである。
 以上、通信装置は、通信相手にとって既知の情報を挿入し、既知の情報を含んだ情報に対し、符号化率1/2の符号化を行い、パリティビットを生成する。そして、通信装置は、既知の情報を送信せず、既知の情報以外の情報と求めたパリティビットを送信することにより、符号化率1/3を実現する。
 図53は、物理層において符号化率を可変とする場合の符号化に関連する部分(誤り訂正符号化部44100及び送信装置44200)の構成の一例を示すブロック図である。
 既知情報挿入部4403は、情報4401及び制御信号4402を入力とし、制御信号4402に含まれる符号化率の情報に応じて、既知情報を挿入する。具体的には、制御信号4402に含まれる符号化率が、符号化器4405がサポートする符号化率より小さく、ショートニングを行う必要がある場合、上述で述べたショートニング方法にしたがって既知情報を挿入し、既知情報挿入後の情報4404を出力する。なお、制御信号4402に含まれる符号化率が、符号化器4405がサポートする符号化率に等しく、ショートニングを行う必要がない場合には、既知情報を挿入せず、情報4401をそのまま情報4404として出力する。
 符号化器4405は、情報4404及び制御信号4402を入力とし、情報4404に対し符号化を行い、パリティ4406を生成し、パリティ4406を出力する。
 既知情報削減部4407は、情報4404及び制御信号4402を入力とし、制御信号4402に含まれる符号化率の情報に基づき、既知情報挿入部4403において、既知情報が挿入された場合には、情報4404から既知情報を削除し、削除後の情報4408を出力する。一方、既知情報挿入部4403において、既知情報が挿入されていない場合には、情報4404をそのまま情報4408として出力する。
 変調部4409は、パリティ4406、情報4408、及び、制御信号4402を入力とし、制御信号4402に含まれる変調方式の情報に基づいて、パリティ4406及び情報4408を変調しベースバンド信号4410を生成し出力する。
 図54は、図53と異なる、物理層において符号化率を可変とする場合の符号化に関連する部分(誤り訂正符号化部44100及び送信装置44200)の構成の別の一例を示すブロック図である。図54に示すように、既知情報挿入部4403に入力される情報4401が、変調部4409に入力される構成とすることにより、図53の既知情報削減部4407を省いても、図53と同様に符号化率を可変とすることができる。
 図55は、物理層における誤り訂正復号部46100の構成の一例を示すブロック図である。既知情報の対数尤度比挿入部4603は、受信したデータの対数尤度比信号4601、制御信号4602を入力とする。対数尤度比挿入部4603は、制御信号4602に含まれる符号化率の情報に基づき、既知情報の対数尤度比を挿入する必要がある場合には、高い信頼度をもつ既知情報の対数尤度比を対数尤度比信号4601に挿入する。そして、対数尤度比挿入部4603は、既知情報の対数尤度比挿入後の対数尤度比信号4604を出力する。制御信号4602に含まれる符号化率の情報は、例えば、通信相手から伝送される。
 復号化部4605は、制御信号4602及び既知情報の対数尤度比挿入後の対数尤度比信号4604を入力とし、制御信号4602に含まれる符号化率等の符号化方法の情報に基づき、復号を行い、受信したデータを復号し、復号後のデータ4606を出力する。
 既知情報削減部4607は、制御信号4602及び復号後のデータ4606を入力とし、制御信号4602に含まれる符号化率等の符号化方法の情報に基づき、既知情報が挿入されている場合は、既知情報を削除し、既知情報削除後の情報4608を出力する。
 以上のように、実施の形態1で説明した時変周期hのLDPC-CCから、符号の符号化率より小さい符号化率を実現するショートニング方法について説明した。本実施の形態によるショートニング方法を用いることで、実施の形態1で説明した時変周期hのLDPC-CCをパケットレイヤーで用いたとき、伝送効率の向上と消失訂正能力の向上との両立を図ることができる。また、物理層において符号化率を変更した場合においても、良好な誤り訂正能力を得ることができる。
 なお、LDPC-CCのような畳み込み符号では、送信情報系列の終端にターミネーション系列を付加し、終端処理(ターミネーション)を行う場合がある。このとき、符号化部4405は、既知の情報(例えばオールゼロ)を入力とし、ターミネーション系列は、当該既知の情報を符号化することにより得られたパリティ系列のみから構成される。よって、ターミネーション系列においては、本願発明で説明した既知情報の挿入ルールに従わない部分が発生する。また、ターミネーション以外の部分でも、伝送速度の向上のために、挿入ルールに従う部分と既知情報を挿入しない部分の両者が存在していてもよい。なお、終端処理(ターミネーション)については、実施の形態11で説明する。
 (実施の形態10)
 本実施の形態では、実施の形態1で述べた符号化率(n-1)/nの時変周期h(hは4以上の整数)のLDPC-CCを用いて誤り訂正能力の高い符号化率(n-1)/nより小さい符号化率を実現する消失訂正方法について説明する。ただし、符号化率(n-1)/nの時変周期h(hは4以上の整数)のLDPC-CCの説明は、実施の形態9と同様であるものとする。
 [方法#3-1]
 方法#3-1では、図56に示すように、情報とパリティで構成するh×n×kビット(kは自然数)を周期とし、各周期において、既知情報パケットに含まれる既知情報を同じ位置に挿入する(方法#3-1の挿入ルール)。各周期において、既知情報パケットに含まれる既知情報を同じ位置に挿入するとは、実施の形態9の方法#2-2などで説明したとおりである。
 [方法#3-2]
 方法#3-2では、情報及びパリティから構成されるh×n×kビットの周期において、情報X1,hi、X2,hi、・・・、Xn-1,hi、・・・・・・、X1,h(i+k-1)+h-1、X2,h(i+k-1)+h-1、・・・、Xn-1,h(i+k-1)+h-1のh×(n-1)×kビットからZビット選択し、選択したZビットに既知情報パケットのデータ(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する(方法#3-2の挿入ルール)。
 このとき、方法#3-2では、既知情報パケットのデータを挿入したX1,j(ただし、jは、hi~h(i+k-1)+h-1のいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 つまり、方法#3-2では、既知情報パケットのデータを挿入したXf,j(ただし、jは、hi~h(i+k-1)+h-1のいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする(f=1、2、3、・・・、n-1)。このようなγが少なくとも一つ存在する。
 このようにして、既知情報を挿入する位置に条件を設けることにより、パリティ検査行列Hにおいて、「未知の値がパリティ及び少ない情報ビットという行」をより多く生成することができるようになる。これにより、上記で述べた特性が良好な符号化率(n-1)/nの時変周期hのLDPC-CCを用いて、消失訂正能力が高く、かつ、低回路規模で消失訂正符号の符号化率を変えることができるシステムを実現することができる。
 以上、上位層における消失訂正方法は、消失訂正符号の符号化率を可変とする消失訂正方法について説明した。
 上位層において消失訂正符号の符号化率を可変とする消失訂正符号化関連処理部及び消失訂正復号関連処理部の構成については、図21の消失訂正符号化関連処理部2112の前段において、既知情報パケットを挿入することにより、消失訂正符号の符号化率を変更することができる。
 これにより、例えば、通信状況に応じて符号化率を可変とすることができるようになるので、通信状況が良好な場合には符号化率を大きくして伝送効率を向上させることができる。また、符号化率を小さくする場合に、[方法#3-2]のように、検査行列に応じて、既知情報パケットに含まれる既知情報を挿入することにより、消失訂正能力の向上を図ることができる。
 [方法#3-2]では、挿入される既知情報パケットのデータの数が各周期で同じ場合について説明したが、挿入されるデータの数が各周期で異なっていても良い。例えば、図57に示すように、最初の周期ではN個の情報を既知情報パケットのデータとし、次の周期ではN個の情報を既知情報パケットのデータとし、i番目の周期では、N個の情報を既知情報パケットのデータとするようにしても良い。
 このように、挿入される既知情報パケットのデータ数が各周期で異なる場合には、周期という概念は意味をなさない。方法#3-2の挿入ルールを、周期という概念を用いずにあらわすと、[方法#3-3]のようになる。
 [方法#3-3]
 方法#3-3では、情報及びパリティから構成されるデータ系列において、情報X1,0、X2,0、・・・、Xn-1,0、・・・・・・、X1,v、X2,v、・・・、Xn-1,vのビット系列からZビット選択し、選択したZビットに既知情報(例えば、ゼロ(1でもよいし、予め定めた値でもよい))を挿入する(方法#3-3の挿入ルール)。
 このとき、方法#3-3では、既知情報を挿入したX1,j(ただし、jは、0~vのいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする。このようなγが少なくとも一つ存在する。
 つまり、方法#3-3では、既知情報を挿入したXf,j(ただし、jは、0~vのいずれかの値をとる。)において、jすべてに対し、hで除算したときの余りを求める。すると、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下、「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下とする(f=1、2、3、・・・、n-1)。このようなγが少なくとも一つ存在する。
 以上、消失訂正符号は、実施の形態1で説明した時変周期hのLDPC-CCから、符号の符号化率より小さい符号化率を実現する方法を用いた消失訂正符号の符号化率を可変とするシステムについて説明した。本実施の形態による符号化率可変方法を用いることで、伝送効率の向上と消失訂正能力の向上との両立を図ることができ、消失訂正時に符号化率を変更した場合においても、良好な消失訂正能力を得ることができる。
 (実施の形態11)
 本発明に関連するLDPC-CCを使用する際、情報ビットの復号における信頼度を確保するために、ターミネーションもしくはテイルバイティング(tail-biting)が必要となる。そこで、本実施の形態では、ターミネーションを行う場合(「Information-zero-termination」又は簡単に「ゼロターミネーション(Zero-termination)」と呼ぶ)の方法について以下では詳しく説明する。
 図58は、符号化率(n-1)/nのLDPC-CCにおける「Information-zero-termination」を説明するための図である。時点i(i=0、1、2、3、・・・、s)における情報ビットX、X、・・・、Xn-1及びパリティビットPを、X1,i、X2,i、・・・、Xn-1,i及びパリティビットPとする。そして、図58に示すように、Xn-1,sが送信したい情報の最終ビット(4901)であるとする。ただし、復号器において、受信品質を保つためには、符号化時に、時点s以降の情報についても符号化することが必要である。
 このため、もし、符号化器が時点sまでしか符号化を行わず、符号化側の送信装置が、Pまでしか復号側の受信装置に伝送しなかった場合、復号器において情報ビットの受信品質が大きく劣化する。この問題を解決するために、最終の情報ビットXn-1,s以降の情報ビット(「仮想の情報ビット」と呼ぶ)を「0」と仮定して符号化を行い、パリティビット(4903)を生成する。
 具体的には、図58に示すように、符号化器は、X1,k、X2,k、・・・、Xn-1,k(k=t1、t2、・・・、tm)を「0」として符号化し、Pt1、Pt2、・・・、Ptmを得る。そして、符号化側の送信装置は、時点sにおけるX1,s、X2,s、・・・、Xn-1,s、Pを送信後、Pt1、Pt2、・・・、Ptmを送信する。復号器は、時点s以降では、仮想の情報ビットが「0」であるとわかっていることを利用し、復号を行う。なお、前述では仮想の情報ビットが「0」の場合を例に説明したが、これに限られず、仮想の情報ビットは、送受信装置において、既知のデータであれば、同様に実施することができる。
 当然であるが、本発明のすべての実施の形態は、ターミネーションを行っても実施することが可能である。
 (実施の形態12)
 本実施の形態では、実施の形態1および実施の形態6で述べたパリティ検査多項式に基づくLDPC-CCの具体的な生成方法の一例について説明する。
 実施の形態6では、実施の形態1で説明したLDPC-CCの時変周期としては、下記条件が有効であることを述べた。
 ・時変周期が素数であること。
 ・時変周期が奇数であり、かつ、時変周期の値に対する約数の数が少ないこと。
 ここで、時変周期を大きくし、符号を生成することを考える。このとき、制約条件を与えた乱数を用いて、符号生成を行うことになるが、時変周期を大きくすると、乱数を用いて設定するパラメータの数が多くなってしまい、高い誤り訂正能力を持つ符号の探索が困難となる、という課題がある。この課題に対し、本実施の形態では、実施の形態1、実施の形態6で述べたパリティ検査多項式に基づくLDPC-CCを利用した異なる符号生成方法について述べる。
 一例として、符号化率1/2、時変周期15のパリティ検査多項式に基づくLDPC-CCの設計方法について説明する。
 符号化率(n-1)/n(nは2以上の整数)、時変周期15のLDPC-CCの(0を満たす)パリティ検査多項式として、式(86-0)~(86-14)を考える。
Figure JPOXMLDOC01-appb-M000086
 このとき、X(D)、X(D)、・・・、Xn-1(D)はデータ(情報)X、X、・・・Xn-1の多項式表現であり、P(D)はパリティの多項式表現である。式(86-0)~(86-14)において、例えば、符号化率1/2の場合、X(D)及びP(D)の項のみが存在し、X(D)、・・・、Xn-1(D)の項は存在しない。同様に、符号化率2/3の場合、X(D)、X(D)、及びP(D)の項のみが存在し、X(D)、・・・、Xn-1(D)の項は存在しない。その他の符号化率についても同様に考えればよい。ここで、式(86-0)~(86-14)では、X(D)、X(D)、・・・、Xn-1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
 また、式(86-0)~(86-14)では、X(D)、X(D)、・・・、Xn-1(D)、及び、P(D)について、以下が成立するものとする。
 式(86-q)において、a#q,p,1、a#q,p,2、a#q,p,3は自然数とし、a#q,p,1≠a#q,p,2、a#q,p,1≠a#q,p,3、a#q,p,2≠a#q,p,3が成立するものとする。また、b#q,1、b#q,2、b#q,3は自然数とし、b#q,1≠b#q,2、b#q,1≠b#q,3、b#q,1≠b#q,3が成立するものとする(q=0、1、2、・・・、13、14;p=1、2、・・・、n-1)。
 そして、式(86-q)のパリティ検査多項式を「検査式#q」と呼び、式(86-q)のパリティ検査多項式に基づくサブ行列を、第qサブ行列Hと呼ぶ。そして、第0サブ行列H、第1サブ行列H、第2サブ行列H、・・・、第13サブ行列H13、第14サブ行列H14から生成する時変周期15のLDPC-CCについて考える。よって、符号の構成方法、パリティ検査行列の生成方法、符号化方法、復号化方法については、実施の形態1、実施の形態6で述べた方法と同様となる。
 以下では、上述で述べたように符号化率1/2の場合について述べるので、X(D)及びP(D)の項のみが存在することになる。
 実施の形態1、実施の形態6では、時変周期を15としたとき、X(D)の係数の時変周期及びP(D)の係数の時変周期はともに15であった。これに対し、本実施の形態では、一例として、X(D)の係数の時変周期3、P(D)の係数の時変周期5することで、LDPC-CCの時変周期を15とする符号構成方法を提案する。つまり、本実施の形態では、X(D)の係数の時変周期をαとし、P(D)の係数の時変周期をβ(α≠β)とすることにより、LDPC-CCの時変周期をLCM(α,β)とする符号を構成する。ただし、LCM(X,Y)はXとYの最小公倍数(the least common multiple)とする。
 高い誤り訂正能力を得るために、実施の形態1、実施の形態6と同様に考え、X(D)の係数に対し、以下のような条件を与える。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%15」は、αを15で除算したときの余りを示す。
 <条件#19-1>
 「a#0,1,1%15=a#1,1,1%15=a#2,1,1%15=・・・=a#k,1,1%15=・・・=a#14,1,1%15=vp=1 (vp=1:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「a#0,1,2%15=a#1,1,2%15=a#2,1,2%15=・・・=a#k,1,2%15=・・・=a#14,1,2%15=yp=1 (yp=1:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「a#0,1,3%15=a#1,1,3%15=a#2,1,3%15=・・・=a#k,1,3%15=・・・=a#14,1,3%15=zp=1 (zp=1:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 また、X(D)の係数の時変周期が3となるので、以下の条件が成立する。
 <条件#19-2>
 i%3=j%3(i,j=0、1、・・・、13、14;i≠j)が成立するとき、以下の3つの式が成立する。
Figure JPOXMLDOC01-appb-M000087
 同様に、P(D)の係数に対し、以下のような条件を与える。
 <条件#20-1>
 「b#0,1%15=b#1,1%15=b#2,1%15=・・・=b#k,1%15=・・・=b#14,1%15=d (d:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「b#0,2%15=b#1,2%15=b#2,2%15=・・・=b#k,2%15=・・・=b#14,2%15=e (e:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「b#0,3%15=b#1,3%15=b#2,3%15=・・・=b#k,3%15=・・・=b#14,3%15=f (f:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 また、P(D)の係数の時変周期が5となるので、以下の条件が成立する。
 <条件#20-2>
 i%5=j%5(i,j=0、1、・・・、13、14;i≠j)が成立するとき、以下の3つの式が成立する。
Figure JPOXMLDOC01-appb-M000088
 以上のような条件を与えることで、時変周期を大きくしながら、かつ、乱数を用いて設定するパラメータの数を削減することができ、符号探索が容易となる、という効果を得ることができる。なお、<条件#19-1>および<条件#20-1>は必ずしも必要な条件ではない。つまり、<条件#19-2>および<条件#20-2>のみを条件として与えるようにしてもよい。また、<条件#19-1>および<条件#20-1>の代わりに<条件#19-1’>および<条件#20-1’>の条件を与えてもよい。
 <条件#19-1’>
 「a#0,1,1%3=a#1,1,1%3=a#2,1,1%3=・・・=a#k,1,1%3=・・・=a#14,1,1%3=vp=1 (vp=1:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「a#0,1,2%3=a#1,1,2%3=a#2,1,2%3=・・・=a#k,1,2%3=・・・=a#14,1,2%3=yp=1 (yp=1:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「a#0,1,3%3=a#1,1,3%3=a#2,1,3%3=・・・=a#k,1,3%3=・・・=a#14,1,3%3=zp=1 (zp=1:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 <条件#20-1’>
 「b#0,1%5=b#1,1%5=b#2,1%5=・・・=b#k,1%5=・・・=b#14,1%5=d (d:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「b#0,2%5=b#1,2%5=b#2,2%5=・・・=b#k,2%5=・・・=b#14,2%5=e (e:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 「b#0,3%5=b#1,3%5=b#2,3%5=・・・=b#k,3%5=・・・=b#14,3%5=f (f:固定値)(したがって、k=0、1、2、・・・、14となる。)」
 上記の例を参考にして、X(D)の係数の時変周期をαとし、P(D)の係数の時変周期をβとすることで、LDPC-CCの時変周期をLCM(α,β)とする符号構成方法について述べる。ただし、時変周期LCM(α,β)=sとする。
 時変周期sの符号化率1/2のパリティ検査多項式に基づくLDPC-CCのi番目(i=0、1、2、・・・、s-2、s-1)のゼロを満たすパリティ検査多項式を次式のようにあらわす。
Figure JPOXMLDOC01-appb-M000089
 すると、上述を参考にすると、本実施の形態における符号構成方法では、以下のような条件が重要となる。
 X(D)の係数に対し、以下のような条件を与える。
 <条件#21-1>
 「a#0,1,1%s=a#1,1,1%s=a#2,1,1%s=・・・=a#k,1,1%s=・・・=a#s-1,1,1%s=vp=1 (vp=1:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「a#0,1,2%s=a#1,1,2%s=a#2,1,2%s=・・・=a#k,1,2%s=・・・=a#s-1,1,2%s=yp=1 (yp=1:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「a#0,1,3%s=a#1,1,3%s=a#2,1,3%s=・・・=a#k,1,3%s=・・・=a#s-1,1,3%s=zp=1 (zp=1:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 また、X(D)の係数の時変周期はαとなるので、以下の条件が成立する。
 <条件#21-2>
 i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の3つの式が成立する。
Figure JPOXMLDOC01-appb-M000090
 同様に、P(D)の係数に対し、以下のような条件を与える。
 <条件#22-1>
 「b#0,1%s=b#1,1%s=b#2,1%s=・・・=b#k,1%s=・・・=b#s-1,1%s=d (d:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「b#0,2%s=b#1,2%s=b#2,2%s=・・・=b#k,2%s=・・・=b#s-1,2%s=e (e:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「b#0,3%s=b#1,3%s=b#2,3%s=・・・=b#k,3%s=・・・=b#s-1,3%s=f (f:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 また、P(D)の係数の時変周期はβとなるので、以下の条件が成立する。
 <条件#22-2>
 i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の3つの式が成立する。
Figure JPOXMLDOC01-appb-M000091
 以上のような条件を与えることで、時変周期を大きくしながら、かつ、乱数を用いて設定するパラメータの数を削減することができ、符号探索が容易となる、という効果を得ることができる。なお、<条件#21-1>および<条件#22-1>は必ずしも必要な条件ではない。つまり、<条件#21-2>および<条件#22-2>のみを条件として与えるようにしてもよい。また、<条件#21-1>および<条件#22-1>の代わりに、<条件#21-1’>および<条件#22-1’>の条件を与えてもよい。
 <条件#21-1’>
 「a#0,1,1%α=a#1,1,1%α=a#2,1,1%α=・・・=a#k,1,1%α=・・・=a#s-1,1,1%α=vp=1 (vp=1:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「a#0,1,2%α=a#1,1,2%α=a#2,1,2%α=・・・=a#k,1,2%α=・・・=a#s-1,1,2%α=yp=1 (yp=1:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「a#0,1,3%α=a#1,1,3%α=a#2,1,3%α=・・・=a#k,1,3%α=・・・=a#s-1,1,3%α=zp=1 (zp=1:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 <条件#22-1’>
 「b#0,1%β=b#1,1%β=b#2,1%β=・・・=b#k,1%β=・・・=b#s-1,1%β=d (d:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「b#0,2%β=b#1,2%β=b#2,2%β=・・・=b#k,2%β=・・・=b#s-1,2%β=e (e:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 「b#0,3%β=b#1,3%β=b#2,3%β=・・・=b#k,3%β=・・・=b#s-1,3%β=f (f:固定値)(したがって、k=0、1、2、・・・、s-1となる。)」
 ただし、時変周期sの符号化率1/2のパリティ検査多項式に基づくLDPC-CCのi番目(i=0、1、2、・・・、s-2、s-1)のゼロを満たすパリティ検査多項式を式(89-i)であらわしたが、実際に利用する場合は、次式であらわされるゼロを満たすパリティ検査多項式となる。
 さらに、パリティ検査多項式を一般化することを考える。i番目(i=0、1、2、・・・、s-2、s-1)のゼロを満たすパリティ検査多項式を次式のようにあらわす。
Figure JPOXMLDOC01-appb-M000093
 つまり、パリティ検査多項式として、式(93-i)のように、X(D)、P(D)の項の数が3つに限ったものではない場合を考える。すると、上述を参考にすると、本実施の形態における符号構成方法では、以下のような条件が重要となる。
 <条件#23>
 i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000094
 <条件#24>
 i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000095
 以上のような条件を与えることで、時変周期を大きくしながら、かつ、乱数を用いて設定するパラメータの数を削減することができ、符号探索が容易となる、という効果を得ることができる。このとき、時変周期を効率的に大きくするためには、αとβは「互いに素」(coprime)であるとよい。ここで、「αとβとが互いに素」は、αとβとが1(及び-1)以外に共通の約数を持たない関係になることをいう。
 このとき、時変周期はα×βであらわすことができる。ただし、αとβとが互いに素の関係でなくても、高い誤り訂正能力を得ることができる可能性はある。また、実施の形態6の記載に基づくと、α及びβは奇数であるとよい。ただし、α及びβが奇数でなくても、高い誤り訂正能力を得ることができる可能性はある。
 次に、時変周期s、符号化率(n-1)/nのパリティ検査多項式に基づくLDPC-CCにおいて、X(D)の係数の時変周期α、X(D)の係数の時変周期α、・・・、X(D)の係数の時変周期α(k=1、2、・・・、n-2、n-1)、・・・、Xn-1(D)の係数の時変周期αn-1、P(D)の係数の時変周期βとするLDPC-CCの符号構成方法について述べる。このとき、時変周期s=LCM(α,α,・・・αn-2,αn-1,β)となる。つまり、時変周期sは、α,α,・・・αn-2,αn-1,βの最小公倍数となる。
 時変周期sの符号化率(n-1)/nのパリティ検査多項式に基づくLDPC-CCのi番目(i=0、1、2、・・・、s-2、s-1)のゼロを満たすパリティ検査多項式は、次式であらわされるゼロを満たすパリティ検査多項式となる。
Figure JPOXMLDOC01-appb-M000096
つまり、X(D)、X(D)、・・・、Xn-2(D)、Xn-1(D)、P(D)の項の数が3つに限ったものではない場合を考える。すると、上述を参考にすると、本実施の形態における符号構成方法では、以下のような条件が重要となる。
 <条件#25>
 i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000097
ただし、k=1、2、・・・、n-2、n-1とする。
 <条件#26>
 i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000098
 すなわち、本実施の形態に係る符号化方法は、時変周期sの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)の符号化方法であって、式(96-i)であらわされる第i(i=0、1、・・・、s-2、s-1)パリティ検査多項式を供給するステップと、前記第0から第s-1パリティ検査多項式と入力データとの線形演算によりLDPC-CC符号語を取得するステップと、を有し、X(D)の係数AXk,iの時変周期がα(αは1より大きい整数)であり(k=1、2、・・・、n-2、n-1)、P(D)の係数BXk,iの時変周期がβ(βは1より大きい整数)であり、前記時変周期sは、α,α,・・・αn-2,αn-1,βの最小公倍数であり、i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、式(97)が成立し、i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、式(98)が成立するようにした(図59参照)。
 以上のような条件を与えることで、時変周期を大きくしながら、かつ、乱数を用いて設定するパラメータの数を削減することができ、符号探索が容易となる、という効果を得ることができる。
 このとき、時変周期を効率的に大きくするためには、α,α,・・・,αn-2,αn-1およびβは「互いに素」であると時変周期を大きくすることができる。このとき、時変周期はα×α×・・・×αn-2×αn-1×βであらわすことができる。
 ただし、互いに素の関係でなくても、高い誤り訂正能力を得ることができる可能性はある。また、実施の形態6の記載に基づくと、α,α,・・・,αn-2,αn-1およびβは奇数であるとよい。ただし、奇数でなくても、高い誤り訂正能力を得ることができる可能性はある。
 (実施の形態13)
 本実施の形態では、実施の形態12で述べたLDPC-CCにおいて、低回路規模の符号化器/復号化器を構成することができるLDPC-CCを提案する。
 はじめに、上記特徴をもつ、符号化率1/2、2/3の符号構成方法について説明する。
 実施の形態12で述べたように、X(D)の時変周期がα、P(D)の時変周期がβ、時変周期sがLCM(α,β)、符号化率1/2のパリティ検査多項式に基づくLDPC-CCのi番目(i=0、1、2、・・・、s-2、s-1)のゼロを満たすパリティ検査多項式を次式のようにあらわす。
Figure JPOXMLDOC01-appb-M000099
 すると、実施の形態12を参考にすると、以下のような条件が成立する。
 <条件#26>
 i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000100
 <条件#27>
 i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000101
 ここで、上記の符号化率1/2のLDPC-CCと符号化器/復号化器の回路を共通化することが可能な符号化率2/3のLDPC-CCを考える。符号化率2/3の時変周期zのパリティ検査多項式に基づくi番目(i=0、1、2、・・・、z-2、z-1)のゼロを満たすパリティ検査多項式を次式のようにあらわす。
Figure JPOXMLDOC01-appb-M000102
 このとき、式(99-i)に基づく符号化率1/2のパリティ検査多項式に基づくLDPC-CCと符号化器/復号化器の回路を共通化が可能な符号化率2/3のLDPC-CCの条件を以下で記載する。
 <条件#28>
 式(102-i)のゼロを満たすパリティ検査多項式において、X(D)の時変周期がαであるとともに、i%α=j%α(i=0、1、・・・、s-2、s-1、j=0、1、・・・、z-2、z-1;)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000103
 <条件#29>
 式(102-i)のゼロを満たすパリティ検査多項式において、P(D)の時変周期がβであるとともに、i%β=j%β(i=0、1、・・・、s-2、s-1、j=0、1、・・・、z-2、z-1)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000104
 そして、式(102-i)のゼロを満たすパリティ検査多項式において、X(D)の時変周期をαとすればよいので、以下の条件が成立する。
 <条件#30>
 i%α=j%α(i,j=0、1、・・・、z-2、z-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000105
 このとき、αはα又はβであってもよいし、αはα及びβと互いに素の関係の自然数であってもよい。ただし、αはα及びβと互いに素の関係の自然数であれば時変周期を効率的に大きくするができるという特徴をもつ。また、実施の形態6の記載に基づくと、α、α及びβは奇数であるとよい。ただし、α、α及びβが奇数でなくても、高い誤り訂正能力を得ることができる可能性はある。
 そして、時変周期zは、LCM(α,α,β)、つまり、α,α,βの最小公倍数となる。
 図60は、符号化器/復号化器の回路を共通化することが可能な符号化率1/2,2/3のLDPC-CCのパリティ検査多項式を模式的にあらわした図である。
 上述では、符号化率1/2のLDPC-CCと符号化器/復号化器の回路を共通化することが可能な符号化率2/3のLDPC-CCについて述べた。以下では、一般化し、符号化率(n-1)/nのLDPC-CCと符号化器/復号化器の回路を共通化することが可能な符号化率(m-1)/mのLDPC-CC(n<m)の符号構成方法について述べる。
 X(D)の時変周期がα、X(D)の時変周期がα、・・・、Xn-1(D)の時変周期がαn-1、P(D)の時変周期がβ、時変周期sがLCM(α,α,・・・,αn-1,β)、つまり、α,α,・・・,αn-1,βの最小公倍数であり、(n-1)/nのパリティ検査多項式に基づくLDPC-CCのi番目(i=0、1、2、・・・、s-2、s-1)のゼロを満たすパリティ検査多項式を次式のようにあらわす。
Figure JPOXMLDOC01-appb-M000106
 すると、実施の形態12を参考にすると、以下のような条件が成立する。
 <条件#31>
 i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000107
ただし、k=1、2、・・・、n-1となる。
 <条件#32>
 i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000108
 ここで、上記の符号化率(n-1)/nのLDPC-CCと符号化器/復号化器の回路を共通化することが可能な符号化率(m-1)/mのLDPC-CCを考える。符号化率(m-1)/mの時変周期zのパリティ検査多項式に基づくi番目(i=0、1、2、・・・、z-2、z-1)のゼロを満たすパリティ検査多項式を次式のようにあらわす。
Figure JPOXMLDOC01-appb-M000109
 このとき、式(106-i)であらわされる符号化率(n-1)/nのパリティ検査多項式に基づくLDPC-CCと符号化器/復号化器の回路の共通化が可能な符号化率(m-1)/mのLDPC-CCの条件を以下に記載する。
 <条件#33>
 式(109-i)のゼロを満たすパリティ検査多項式において、X(D)の時変周期がα(k=1、2、・・・、n-1)であるとともに、i%α=j%α(i=0、1、・・・、s-2、s-1;j=0、1、・・・、z-2、z-1)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000110
 <条件#34>
 式(109-i)のゼロを満たすパリティ検査多項式において、P(D)の時変周期がβであるとともに、i%β=j%β(i=0、1、・・・、s-2、s-1;j=0、1、・・・、z-2、z-1)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000111
 そして、式(109-i)のゼロを満たすパリティ検査多項式において、X(D)の時変周期がα(h=n、n+1、・・・、m-1)とすればよいので、以下の条件が成立する。
 <条件#35>
 i%α=j%α(i,j=0、1、・・・、z-2、z-1;i≠j)が成立するとき、以下の式が成立する。
Figure JPOXMLDOC01-appb-M000112
 このとき、αは自然数であればよい。α、α、・・・、αn-1、α、・・・、αm-1、βがすべて互いに素の関係の自然数であれば時変周期を効率的に大きくするができるという特徴をもつ。また、実施の形態6の記載に基づくと、α、α、・・・、αn-1、α、・・・、αm-1、βは奇数であるとよい。ただし、奇数でなくても、高い誤り訂正能力を得ることができる可能性はある。
 そして、時変周期zは、LCM(α,α,・・・,αn-1,α,・・・,αm-1,β)、つまり、α、α、・・・、αn-1、α、・・・、αm-1、βの最小公倍数となる。
 次に、上述で述べた、低回路規模で符号化器/復号化器を構成することができる複数符号化率対応LDPC-CCの具体的な符号化器/復号化器の構成方法について述べる。
 はじめに、本発明に係る符号化器/復号化器において、回路の共用化を図る符号化率のうち最も高い符号化率を(q-1)/qとする。例えば、送受信装置が対応する符号化率を1/2、2/3、3/4、5/6としたとき、符号化率1/2、2/3、3/4の符号は、符号化器/復号化器において回路を共通化し、符号化率5/6は符号化器/復号化器において回路を共通化対象としないものとする。このとき、上記で述べた最も高い符号化率(q-1)/qは3/4となる。以下では、複数の符号化率(r-1)/r(rは2以上q以下の整数)に対応可能な時変周期z(zは自然数)のLDPC-CCを作成する符号化器について説明する。
 図61は、本実施の形態に係る符号化器の要部構成の一例を示すブロック図である。なお、図61に示す符号化器5800は、符号化率1/2、2/3、3/4に対応可能な符号化器である。図61の符号化器5800は、情報生成部5801、第1情報演算部5802-1、第2情報演算部5802-2、第3情報演算部5802-3、パリティ演算部5803、加算部5804、符号化率設定部5805及びウェイト制御部5806を主に備える。
 情報生成部5801は、符号化率設定部5805から指定される符号化率に応じて、時点kの情報X1,k、情報X2,k、情報X3,kを設定する。例えば、符号化率設定部5805が符号化率を1/2に設定した場合、情報生成部5801は、時点kの情報X1,kに入力情報データSを設定し、時点kの情報X2,k及び時点kの情報X3,kに0を設定する。
 また、符号化率2/3の場合、情報生成部5801は、時点kの情報X1,kに入力情報データSを設定し、時点kの情報X2,kに入力情報データSj+1を設定し、時点kの情報X3,kに0を設定する。
 また、符号化率3/4の場合、情報生成部5801は、時点kの情報X1,kに入力情報データSを設定し、時点kの情報X2,kに入力情報データSj+1を設定し、時点kの情報X3,kに入力情報データSj+2を設定する。
 このようにして、情報生成部5801は、符号化率設定部5805によって設定された符号化率に応じて、入力情報データを時点kの情報X1,k、情報X2,k、情報X3,kを設定し、設定後の情報X1,kを第1情報演算部5802-1に出力し、設定後の情報X2,kを第2情報演算部5802-2に出力し、設定後の情報X3,kを第3情報演算部5802-3に出力する。
 第1情報演算部5802-1は、式(106-i)のAX1,i(D)(式(110)が成立するので式(109-i)にも相当する)にしたがって、X(D)を算出する。同様に、第2情報演算部5802-2は、式(106-2)のAX2,i(D)(式(110)が成立するので式(109-i)にも相当する)にしたがって、X(D)を算出する。同様に、第3情報演算部580-3は、式(109-i)のCX3,i(D)にしたがって、X(D)を算出する。
 このとき、上述で説明したように、式(109-i)が<条件#33>、<条件#34>を満足することから、符号化率が切り替わったとしても、第1情報演算部5802-1の構成を変更する必要がなく、また、同様に、第2情報演算部5802-2の構成を変更する必要がない。
 したがって、複数の符号化率に対応する場合は、符号化器の回路が共用可能な符号化率の中で最も高い符号化率の符号化器の構成を基礎にして、上記のような操作で、他の符号化率に対応することができる。つまり、符号化器の主要な部分である第1情報演算部5802-1、第2情報演算部5802-2は、符号化率に関わらず共通化することができるという利点を、上述で説明したLDPC-CCは有することになる。
 図62に、第1情報演算部5802-1の内部構成を示す。図62の第1情報演算部5802-1は、シフトレジスタ5901-1~5901-M、ウェイト乗算器5902-0~5902-M、及び、加算部5903を備える。
 シフトレジスタ5901-1~5901-Mは、それぞれ、X1,i-t(t=0,・・・,M-1)を保持するレジスタであり、次の入力が入ってくるタイミングで、保持している値を右隣のシフトレジスタに送出し、左隣のシフトレジスタから出力されてきた値を保持する。
 ウェイト乗算器5902-0~5902-Mは、ウェイト制御部5904から出力される制御信号にしたがって、h (t)の値を0又は1に切り替える。
 加算部5903は、ウェイト乗算器5902-0~5902-Mの出力に対して、排他的論理和演算を行い、演算結果Y1,kを算出し、算出したY1,kを、図61の加算部5804に出力する。
 なお、第2情報演算部5802-2及び第3情報演算部5802-3の内部構成は、第1情報演算部5802-1と同様であるので、説明を省略する。第2情報演算部5802-2は、第1情報演算部5802-1と同様にして、演算結果Y2,kを算出し、算出したY2,kを図61の加算部5804に出力する。第3情報演算部5802-3は、第1情報演算部5802-1と同様にして、演算結果Y3,kを算出し、算出したY3,kを、図61の加算部5804に出力する。
 図61のパリティ演算部5803は、式(106-i)のB(D)(式(111)が成立するので式(109-i)にも相当する)にしたがって、P(D)を算出する。
 図63に、図61のパリティ演算部5803の内部構成を示す。図63のパリティ演算部5803は、シフトレジスタ6001-1~6001-M、ウェイト乗算器6002-0~6002-M、及び、加算部6003を備える。
 シフトレジスタ6001-1~6001-Mは、それぞれ、Pi-t(t=0,・・・,M-1)を保持するレジスタであり、次の入力が入ってくるタイミングで、保持している値を右隣のシフトレジスタに送出し、左隣のシフトレジスタから出力されてきた値を保持する。
 ウェイト乗算器6002-0~6002-Mは、ウェイト制御部6004から出力される制御信号にしたがって、h (t)の値を0又は1に切り替える。
 加算部6003は、ウェイト乗算器6002-0~6002-Mの出力に対し排他的論理和演算を行い、演算結果Zを算出し、算出したZを、図61の加算部5804に出力する。
 再度図61に戻って、加算部5804は、第1情報演算部5802-1、第2情報演算部5802-2、第3情報演算部5802-3、及び、パリティ演算部5803から出力される演算結果Y1,k、Y2,k、Y3,k、Zの排他的論理和演算を行い、時刻kのパリティPを得、出力する。加算部5804は、時刻kのパリティPをパリティ演算部5803にも出力する。
 符号化率設定部5805は、符号化器5800の符号化率を設定し、符号化率の情報を情報生成部5801に出力する。
 ウェイト制御部5806は、ウェイト制御部5806内に保持する式(106-i)および式(109-i)のゼロを満たすパリティ検査多項式に基づく時刻kにおけるh (m)の値を、第1情報演算部5802-1、第2情報演算部5802-2、第3情報演算部5802-3及びパリティ演算部5803に出力する。また、ウェイト制御部5806は、ウェイト制御部5806内に保持する式(106-i)および式(109-i)に対応したゼロを満たすパリティ検査多項式に基づいて、そのタイミングにおけるh (m)の値を6002-0~6002-Mに出力する。
 なお、図64に本実施の形態に係る符号化器の別の構成例を示す。図64の符号化器において、図61の符号化器と共通する構成部分には、図61と同一の符号を付している。図64の符号化器5800は、符号化率設定部5805が、符号化率の情報を第1情報演算部5802-1、第2情報演算部5802-2、第3情報演算部5802-3、および、パリティ演算部5803に出力する点で、図61の符号化器5800と異なっている。
 第2情報演算部5802-2は、符号化率が1/2の場合には、演算処理を行わずに、演算結果Y2,kとして0を加算部5804に出力する。また、第3情報演算部5802-3は、符号化率が1/2または2/3の場合には、演算処理を行わずに、演算結果Y3,kとして0を加算部5804に出力する。
 なお、図61の符号化器5800では、情報生成部5801が、符号化率に応じて、時点iの情報X2,i、情報X3,iを0に設定したのに対し、図64の符号化器5800では、第2情報演算部5802-2及び第3情報演算部5802-3が、符号化率に応じて、演算処理を停止し、演算結果Y2,k、Y3,kとして0を出力するので、得られる演算結果は図61の符号化器5800と同じとなる。
 このように、図64の符号化器5800では、第2情報演算部5802-2及び第3情報演算部5802-3が、符号化率に応じて、演算処理を停止するので、図61の符号化器5800に比べ演算処理を低減することができる。
 以上の具体的な例のように、式(106-i)および式(109-i)を用いて説明した符号化率(n-1)/nのLDPC-CCと符号化器/復号化器の回路を共通化することが可能な符号化率(m-1)/mのLDPC-CC(n<m)の符号では、符号化率の大きい符号化率(m-1)/mのLDPC-CCの符号化器を用意し、符号化率(n-1)/nの際、Xk(D)(ただし、k=n、n+1、・・・、m-1)に関連する演算の出力をゼロとし、符号化率(n-1)/nのときのパリティを求めることで、符号化器の回路の共通化が可能となる。
 次に、本実施の形態で述べたLDPC-CCの復号化器の回路の共用化方法について詳しく説明する。
 図65は、本実施の形態に係る復号化器の要部構成を示すブロック図である。なお、図65に示す復号化器6100は、符号化率1/2、2/3、3/4に対応可能な復号化器である。図65の復号化器6100は、対数尤度比設定部6101及び行列処理演算部6102を主に備える。
 対数尤度比設定部6101は、図示せぬ対数尤度比演算部により算出される受信対数尤度比及び符号化率を入力し、符号化率に応じて、受信対数尤度比に既知の対数尤度比を挿入する。
 例えば、符号化率が1/2の場合、符号化器5800では、X2,k、X3,kとして“0”を送信していることに相当するので、対数尤度比設定部6101は、既知ビット“0”に対応する固定の対数尤度比をX2,k、X3,kの対数尤度比として挿入し、挿入後の対数尤度比を行列処理演算部6102に出力する。以下、図66を用いて説明をする。
 図66に示すように、符号化率1/2の場合、対数尤度比設定部6101は、時点kのX1,kおよびPに対応する受信対数尤度比LLRX1,k,LLRPkを入力とする。そこで、対数尤度比設定部6101は、X2,k,X3,kに対応する受信対数尤度比LLRX2,k,LLR3,kを挿入する。図66において、点線の丸で囲まれた受信対数尤度比は、対数尤度比設定部6101によって挿入された受信対数尤度比LLRX2,k,LLR3,kを示す。対数尤度比設定部6101は、受信対数尤度比LLRX2,k,LLR3,kとして、固定値の対数尤度比を挿入する。
 また、符号化率が2/3の場合、符号化器5800は、X3,kとして“0”を送信していることに相当するので、対数尤度比設定部6101は、既知ビット“0”に対応する固定の対数尤度比をX3,kの対数尤度比として挿入し、挿入後の対数尤度比を行列処理演算部6102に出力する。以下、図67を用いて説明をする。
 図67に示すように、符号化率2/3の場合、対数尤度比設定部6101は、X1,k,X2,kおよびPに対応する受信対数尤度比LLRX1,k,LLRX2,k,LLRPkを入力とする。そこで、対数尤度比設定部6101は、X3,kに対応する受信対数尤度比LLR3,kを挿入する。図67において、点線の丸で囲まれた受信対数尤度比は、対数尤度比設定部6101によって挿入された受信対数尤度比LLR3,kを示す。対数尤度比設定部6101は、受信対数尤度比LLR3,kとして、固定値の対数尤度比を挿入する。
 図65の行列処理演算部6102は、記憶部6103、行処理演算部6104及び列処理演算部6105を備える。
 記憶部6103は、受信対数尤度比、行処理によって得られる外部値αmn、及び、列処理によって得られる事前値βmnを保持する。
 行処理演算部6104は、符号化器5800がサポートする符号化率のうち、最大の符号化率3/4のLDPC-CCのパルてぅ検査行列Hの行方向のウェイトパターンを保持する。行処理演算部6104は、当該行方向のウェイトパターンにしたがって、記憶部6103から必要な事前値βmnを読み込み、行処理演算を行う。
 行処理演算において、行処理演算部6104は、事前値βmnを用いて、単一パリティ検査符号の復号を行い、外部値αmnを求める。
 第m番目の行処理について説明する。ただし、2元M×N行列H={Hmn}を復号対象とするLDPC符号の検査行列とする。Hmn=1を満たす全ての組(m,n)に対して,次の更新式を利用して外部値αmnを更新する。
Figure JPOXMLDOC01-appb-M000113
ここで、Φ(x)は、Gallagerのf関数と呼ばれ、次式で定義される。
Figure JPOXMLDOC01-appb-M000114
 列処理演算部6105は、符号化器5800がサポートする符号化率のうち、最大の符号化率3/4のLDPC-CCの検査行列Hの列方向のウェイトパターンを保持する。列処理演算部6105は、当該列方向のウェイトパターンにしたがって、記憶部321から必要な外部値αmnを読み込み、事前値βmnを求める。
 列処理演算において、列処理演算部6105は、入力対数尤度比λと外部値αmnとを用いて繰り返し復号により、事前値βmnを求める。
 第m番目の列処理について説明する。
 Hmn=1を満たす全ての組(m,n)に対して、次の更新式を利用してβmnを更新する。ただし、初期の演算では、αmn=0として計算する。
Figure JPOXMLDOC01-appb-M000115
復号化器6100は、上述の行処理と列処理とを所定の回数だけ繰り返すことにより、事後対数尤度比を得る。
 以上のように、本実施の形態では、対応可能な符号化率のうち、最も高い符号化率を(m-1)/mとし、符号化率設定部5805が、符号化率を(n-1)/nに設定した際、情報生成部5801は、情報Xn,kから情報Xm-1,kまでの情報をゼロに設定する。
 例えば、対応する符号化率が1/2、2/3、3/4の場合(m=4)、第1情報演算部5802-1は、時点kの情報X1,kを入力し、X(D)項を算出する。また、第2情報演算部5802-2は、時点kの情報X2,kを入力し、X(D)項を算出する。また、第3情報演算部5802-3は、時点kの情報X3,kを入力し、X(D)項を算出する。
 また、パリティ演算部5803は、時点k-1のパリティPk-1を入力し、P(D)項を算出する。また、加算部5804は、第1情報演算部5802-1、第2情報演算部5802-2、第3情報演算部5802-3の演算結果及びパリティ演算部5803の演算結果の排他的論理和を、時刻kのパリティPとして得るようにした。
 この構成によれば、異なる符号化率に対応したLDPC-CCを作成する場合においても、本説明における情報演算部の構成を共通化することができるため、低演算規模で、複数の符号化率に対応可能なLDPC-CCの符号化器、復号化器を提供することができる。
 そして、符号化器/復号化器の回路の共用を可能とする符号化率の中で、最大の符号化率に応じた復号化器の構成に、対数尤度比設定部6101を追加することで、複数の符号化率に対応して復号を行うことができる。なお、対数尤度比設定部6101は、符号化率に応じて、時点kの情報Xn,kから情報Xm-1,kまでの情報に対応する対数尤度比を既定値に設定する。
 なお、以上の説明では、符号化器5800がサポートする最大の符号化率が3/4の場合について説明したが、サポートする最大の符号化率はこれに限らず、符号化率(m-1)/m(mは5以上の整数)をサポートする場合においても適用可能である(当然であるが、最大符号化率が2/3でもよい。)。この場合には、符号化器5800が、第1~第(m-1)情報演算部を備える構成とし、加算部5804が、第1~第(m-1)情報演算部の演算結果及びパリティ演算部5803の演算結果の排他的論理和を、時刻kのパリティPとして得るようにすれば良い。
 また、送受信装置(符号化器/復号化器)がサポートする符号化率が、すべて、上述で述べた方法に基づいた符号である場合、サポートする符号化率のうち、最も高い符号化率の符号化器/復号化器をもつことで、複数の符号化率の符号化、復号化に対応することができ、このとき、演算規模削減の効果が非常に大きい。
 また、上述では、復号方式の例としてsum-product復号を例に説明したが、復号方法はこれに限ったものではなく、非特許文献4~非特許文献6に示されている、例えば、min-sum復号、Normalized BP(Belief Propagation)復号、Shuffled BP復号、Offset BP復号などの、message-passingアルゴリズムを用いた復号方法(BP復号)を用いれば同様に実施することができる。
 次に、通信状況により適応的に符号化率を切り替える通信装置に、本発明を適用した場合の形態について説明する。なお、以下では、本発明を無線通信装置に適用した場合を例に説明するが、これに限られず、電灯線通信(PLC:Power Line Communication)装置、可視光通信装置、または、光通信装置にも適用可能である。
 図68に、適応的に符号化率を切り替える通信装置6200の構成を示す。図68の通信装置6200の符号化率決定部6203は、通信相手の通信装置から送信される受信信号(例えば、通信相手が送信したフィードバック情報)を入力とし、受信信号に受信処理等を行う。そして、符号化率決定部6203は、通信相手の通信装置との間の通信状況の情報、例えば、ビットエラー率、パケットエラー率、フレームエラー率、受信電界強度等の情報を(例えば、フィードバック情報から)得、通信相手の通信装置との間の通信状況の情報から符号化率及び変調方式を決定する。
 そして、符号化率決定部6203は、決定した符号化率及び変調方式を、制御信号として符号化器6201及び変調部6202に出力する。ただし、符号化率の決定は、必ずしも通信相手からのフィードバック情報に基づく必要はない。
 符号化率決定部6203は、例えば、図69に示すような送信フォーマットを用いて、制御情報シンボルに符号化率の情報を含めることにより、符号化器6201が用いる符号化率を通信相手の通信装置に通知する。ただし、図69では図示していないが、通信相手が、復調やチャネル推定のために必要な、例えば、既知の信号(プリアンブル、パイロットシンボル、リファレンスシンボルなど)を含んでいるものとする。
 このようにして、符号化率決定部6203は、通信相手の通信装置6300(図70参照)が送信した変調信号を受信し、その通信状況に基づいて、送信する変調信号の符号化率を決定することにより、符号化率を適応的に切り替える。符号化器6201は、制御信号により指定された符号化率に基づいて、上述の手順でLDPC-CC符号化を行う。変調部6202は、制御信号により指定された変調方式を用いて、符号化後の系列を変調する。
 図70に、通信装置6200と通信を行う通信相手の通信装置の構成例を示す。図70の通信装置6300の制御情報生成部6304は、ベースバンド信号に含まれる制御情報シンボルから制御情報を抽出する。制御情報シンボルには、符号化率の情報が含まれる。制御情報生成部6304は、抽出した符号化率の情報を制御信号として対数尤度比生成部6302及び復号化器6303に出力する。
 受信部6301は、通信装置6200から送信される変調信号に対応する受信信号に周波数変換、直交復調等の処理を施すことでベースバンド信号を得、ベースバンド信号を対数尤度比生成部6302に出力する。また、受信部6301は、ベースバンド信号に含まれる既知信号を用いて、通信装置6200と通信装置6300との間の(例えば、無線)伝送路におけるチャネル変動を推定し、推定したチャネル推定信号を対数尤度比生成部6302に出力する。
 また、受信部6301は、ベースバンド信号に含まれる既知信号を用いて、通信装置6200と通信装置6300との間の(例えば、無線)伝送路におけるチャネル変動を推定し、伝搬路の状況の判断を可能とするフィードバック情報(チャネル変動そのもの、例えば、Channel State Informationがその一例)を生成し、出力する。このフィードバック情報は、図示しない送信装置を通して、制御情報の一部として、通信相手(通信装置6200)に送信される。対数尤度比生成部6302は、ベースバンド信号を用いて、各送信系列の対数尤度比を求め、得られた対数尤度比を復号化器6303に出力する。
 復号化器6303は、上述したように、制御信号が示す符号化率(s-1)/sに応じて、時点kの情報Xs,kから情報Xm-1,kまでの情報に対応する対数尤度比を既定値に設定し、復号化器6303において回路の共用化を施した符号化率のうち、最大の符号化率に応じたLDPC-CCのパリティ検査行列を用いて、BP復号する。
 このようにして、本発明を適用した通信装置6200及び通信相手の通信装置6300の符号化率が通信状況により適応的に変更され得る。
 なお、符号化率の変更方法はこれに限ったものではなく、通信相手である通信装置6300が符号化率決定部6203を備え、希望する符号化率を指定するようにてもよい。また、通信装置6300が送信した変調信号から通信装置6200が伝送路の変動を推定し、符号化率を決定してもよい。この場合、上述のフィードバックの情報は不要となる。
 本発明の符号化方法の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法であって、前記時変周期qが、3より大きい素数であり、情報系列を入力とし、式(116)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて、前記情報系列を符号化する。
Figure JPOXMLDOC01-appb-M000116
 本発明の符号化方法の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法であって、前記時変周期qが、3より大きい素数であり、情報系列を入力とし、式(117)であらわされるg番目(g=0、1、・・・、q-1)の0を満たすパリティ検査多項式のうち、
 「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=・・・=a#g,k,1%q=・・・=a#q-2,k,1%q=a#q-1,k,1%q=vp=k (vp=k:固定値)」、
 「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=・・・=b#g,1%q=・・・=b#q-2,1%q=b#q-1,1%q=w (w:固定値)」、
 「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=・・・=a#g,k,2%q=・・・=a#q-2,k,2%q=a#q-1,k,2%q=yp=k (yp=k:固定値)」、
 「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=・・・=b#g,2%q=・・・=b#q-2,2%q=b#q-1,2%q=z (z:固定値)」、
 及び、
 「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=・・・=a#g,k,3%q=・・・=a#q-2,k,3%q=a#q-1,k,3%q=sp=k (sp=k:固定値)」
 を、k=1、2、・・・、n-1に対して満たすパリティ検査多項式を用いて、前記情報系列を符号化する。
Figure JPOXMLDOC01-appb-M000117
 本発明の符号化器の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化器であって、前記時変周期qが、3より大きい素数であり、時点iの情報ビットX[i](r=1,2,…,n-1)を入力し、式(116)であらわされるg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式と等価な式を式(118)とし、i%q=kの場合に、式(118)のgにkを代入した式を用いて、時点iのパリティビットP[i]を生成する生成手段と、前記パリティビットP[i]を出力する出力手段と、を具備する。
Figure JPOXMLDOC01-appb-M000118
 本発明の復号方法の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期q(3より大きい素数)の低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う上記符号化方法において、式(116)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号方法であって、前記符号化情報系列を入力とし、g番目の0を満たす前記パリティ検査多項式である式(116)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する。
 本発明の復号器の一つの態様は、符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期q(3より大きい素数)の低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う上記符号化方法において、式(116)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号器であって、前記符号化情報系列を入力とし、g番目の0を満たす前記パリティ検査多項式である式(116)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する復号手段、を具備する。
 本発明の符号化方法の一つの態様は、時変周期sの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)の符号化方法であって、式(98-i)であらわされる第i(i=0、1、・・・、s-2、s-1)パリティ検査多項式を供給するステップと、前記第0から第s-1パリティ検査多項式と入力データとの線形演算によりLDPC-CC符号語を取得するステップと、を有し、X(D)の係数AXk,iの時変周期がα(αは1より大きい整数)であり(k=1、2、・・・、n-2、n-1)、P(D)の係数BXk,iの時変周期がβ(βは1より大きい整数)であり、前記時変周期sは、α,α,・・・αn-2,αn-1,βの最小公倍数であり、i%α=j%α(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、式(97)が成立し、i%β=j%β(i,j=0、1、・・・、s-2、s-1;i≠j)が成立するとき、式(98)が成立する。
 本発明の符号化方法の一つの態様は、上記符号化方法において、前記時変周期α、α、・・・、αn-1、及びβが互いに素の関係である。
 本発明の符号化器の一つの態様は、低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)の符号化器であって、上記符号化方法によりパリティ系列を求めるパリティ計算部を具備する。
 本発明の復号方法の一つの態様は、時変周期sの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う上記符号化方法において、式(98-i)をi番目(i=0、1、・・・、s-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号方法であって、前記符号化情報系列を入力とし、i番目の0を満たす前記パリティ検査多項式である式(98-i)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する。
 本発明の復号器の一つの態様は、低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)を信頼度伝播(BP:Belief Propagation)を利用して復号する復号器であって、上記符号化器で用いたパリティ検査多項式に対応する検査行列を用いて行処理演算を行う行処理演算部と、前記検査行列を用いて列処理演算を行う列処理演算部と、前記行処理演算部及び前記列処理演算部での演算結果を用いて符号語を推定する判定部と、を具備する。
 本発明の符号化方法の一つの態様は、式(119)であらわされる符号化率1/2、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式に基づいて定義された低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)から、符号化率1/3の時変周期hの低密度パリティ検査畳み込み符号を生成する符号化方法であって、前記符号化率1/2、前記時変周期hの低密度パリティ検査畳み込み符号を用いた符号化出力である情報及びパリティビットから構成されデータ系列において、前記情報のビット系列からZビットの情報X(時点jは時点jから時点jまでに含まれる時点であり、j及びjは、共に偶数、又は、共に奇数であり、Z=(j-j)/2である)を選択するステップと、選択した前記Zビットの情報Xに既知情報を挿入するステップと、前記既知情報を含む前記情報から前記パリティビットを求めるステップと、を有し、前記選択するステップは、前記jから前記jまでに含まれるすべての前記jをhで除算したときに得られるh種類の余りにおいて、各余りとなる個数に基づいて、前記Zビットの情報Xを選択する。
Figure JPOXMLDOC01-appb-M000119
 本発明の符号化方法の一つの態様は、前記時点jは時点2hiであり、前記時点jは時点2h(i+k-1)+2h-1であり、前記Zビットは、hkビットであり、
 前記選択するステップは、情報X2hi、X2hi+1、X2hi+2、・・・、X2hi+2h-1、・・・、X2h(i+k-1)、X2h(i+k-1)+1、X2h(i+k-1)+2、・・・、X2h(i+k-1)+2h-1の2×h×kビットから、前記Zビットの情報Xを選択し、前記時点jから前記時点jに含まれるすべての前記時点jをhで除算したときの余りのうち、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となり、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となり、「余りが(vp=1+γ) mod h(ただし、個数は0でない。)」となる個数と「余りが(yp=1+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となる条件を満たすγが少なくとも一つ存在するように、前記Zビットの情報Xを選択する。
 本発明の符号化方法の一つの態様は、前記条件を満たさないγでは、「余りが(0+γ) mod hとなる個数」、「余りが(vp=1+γ) mod hとなる個数」、「余りが(yp=1+γ) mod hとなる個数」はゼロとなる。
 本発明の復号方法の一つの態様は、時変周期hの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う請求項1に記載の符号化方法において、式(119)をg番目(i=0、1、・・・、h-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号方法であって、前記符号化情報系列を入力とし、g番目の0を満たす前記パリティ検査多項式である式(119)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する。
 本発明の符号化器の一つの態様は、畳み込み符号から低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)を作成する符号化器であって、上記符号化方法によりパリティを求める計算部を具備する。
 本発明の復号器の一つの態様は、低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)を信頼度伝播(BP:Belief Propagation)を利用して復号する復号器であって、上記符号化器で用いたパリティ検査多項式に対応する検査行列を用いて行処理演算を行う行処理演算部と、前記検査行列を用いて列処理演算を行う列処理演算部と、前記行処理演算部及び前記列処理演算部での演算結果を用いて符号語を推定する判定部と、を具備する。
 本発明の符号化方法の一つの態様は、式(120-g)であらわされる符号化率(n-1)/n、時変周期hのg番目(g=0、1、・・・、h-1)のパリティ検査多項式に基づいて定義された低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)から、符号化率(n-1)/nより小さい符号化率の時変周期hの低密度パリティ検査畳み込み符号を生成する符号化方法であって、前記符号化率(n-1)/n、前記時変周期hの低密度パリティ検査畳み込み符号を用いた符号化出力である情報及びパリティビットから構成されデータ系列において、前記情報のビット系列からZビットの情報Xf,j(f=1、2、3、・・・、n-1、jは時刻)を選択するステップと、選択した前記情報Xf,jに既知情報を挿入するステップと、前記既知情報を含む前記情報から前記パリティビットを求めるステップと、を有し、前記選択するステップは、時刻jすべてに対し、hで除算したときの余り、及び、当該余りをとる前記時刻jの個数に基づいて、前記情報Xf,jを選択する。
Figure JPOXMLDOC01-appb-M000120
 本発明の符号化方法の一つの態様は、上記符号化方法において、前記時刻jは、hi~h(i+k-1)+h-1のいずれかの値をとる時刻であり、前記選択するステップは、情報X1,hi、X2,hi、・・・、Xn-1,hi、・・・・・・、X1,h(i+k-1)+h-1、X2,h(i+k-1)+h-1、・・・、Xn-1,h(i+k-1)+h-1のh×(n-1)×kビットから、前記Zビットの前記情報Xf,jを選択し、前記時刻jすべてに対し、hで除算したときの余りのうち、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となり、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となり、「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数と余りが「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となる(f=1、2、3、・・・、n-1)ようなγが少なくとも一つ存在するように、前記情報Xf,jを選択する。
 本発明の符号化方法の一つの態様は、上記符号化方法において、前記時刻jは、0~vのいずれかの値をとり、前記選択するステップは、情報X1,0、X2,0、・・・、Xn-1,0、・・・・・・、X1,v、X2,v、・・・、Xn-1,vのビット系列から前記Zビットの前記情報Xf,jを選択し、前記時刻jすべてに対し、hで除算したときの余りのうち、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となり、「余りが(0+γ) mod hとなる個数(ただし、個数は0でない。)」と「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となり、「余りが(vp=f+γ) mod h(ただし、個数は0でない。)」となる個数と余りが「余りが(yp=f+γ) mod h(ただし、個数は0でない。)」となる個数との差は1以下となる(f=1、2、3、・・・、n-1)ようなγが少なくとも一つ存在するように、前記情報Xf,jを選択する。
 本発明の復号方法の一つの態様は、時変周期hの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う上記符号化方法において、式(120-g)をg番目(i=0、1、・・・、h-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号方法であって、前記符号化情報系列を入力とし、g番目の0を満たす前記パリティ検査多項式である式(120-g)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する。
 本発明の符号化器の一つの態様は、畳み込み符号から低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)を作成する符号化器であって、上記符号化方法によりパリティを求める計算部を具備する。
 本発明の復号器の一つの態様は、低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)を信頼度伝播(BP:Belief Propagation)を利用して復号する復号器であって、上記符号化器で用いたパリティ検査多項式に対応する検査行列を用いて行処理演算を行う行処理演算部と、前記検査行列を用いて列処理演算を行う列処理演算部と、前記行処理演算部及び前記列処理演算部での演算結果を用いて符号語を推定する判定部と、を具備する。
 本発明は上記全ての実施の形態に限定されず、種々変更して実施することが可能である。例えば、上記実施の形態では、主に、符号化器を実現する場合について説明しているが、これに限られるものではなく、通信装置で実現する場合においても適用可能である。(LSI(:Large Scale Integration)により構成することも可能である。)
 また、この符号化方法及び復号化方法をソフトウェアとして行うことも可能である。例えば、上記符号化方法及び通信方法を実行するプログラムを予めROM(Read Only Memory)に格納しておき、そのプログラムをCPU(Central Processor Unit)によって動作させるようにしても良い。
 また、上記符号化方法を実行するプログラムをコンピュータで読み取り可能な記憶媒体に格納し、記憶媒体に格納されたプログラムをコンピュータのRAM(Random Access Memory)に記録して、コンピュータをそのプログラムにしたがって動作させるようにしても良い。
 また、本発明は、無線通信に限らず、電灯線通信(PLC:Power Line Communication)、可視光通信、光通信においても有用であることは言うまでもない。
 また、本明細書において、「時変周期」と記載しているが、これは、時変LDPC-CCが形成する周期となる。
 2009年11月13日出願の特願2009-260503、2010年7月12日出願の特願2010-157991、2010年7月30日出願の特願2010-172577、及び、2010年10月14日出願の特願2010-231807に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
 本発明に係る符号化方法及び符号化器等は、誤り誤り訂正能力が高いため、高いデータ受信品質を確保することができる。
 100、2907、2914、3204、3103、3208、3212 LDPC-CC符号化器
 110 データ演算部
 120 パリティ演算部
 130 ウェイト制御部
 140 mod2加算(排他的論理和演算)器
 111-1~111-M、121-1~121-M、221-1~221-M、231-1~231-M シフトレジスタ
 112-0~112-M、122-0~122-M、222-0~222-M、232-0~232-M ウェイト乗算器
 1910、2114、2617、2605 送信装置
 1911、2900、3200 符号化器
 1912 変調部
 1920、2131、2609、2613 受信装置
 1921 受信部
 1922 対数尤度比生成部
 1923、3310 復号化器
 2110、2130、2600、2608 通信装置
 2112、2312、2603 消失訂正符号化関連処理部
 2113、2604 誤り訂正符号化部
 2120、2607 通信路
 2132、2610 誤り訂正復号部
 2133、2433、2611 消失訂正復号関連処理部
 2211 パケット生成部
 2215、2902、2909、3101、3104、3202、3206、3210 並び替え部
 2216 消失訂正符号化器(パリティパケット生成部)
 2217、2317 誤り検出符号付加部
 2314 消失訂正符号化部
 2316、2560 消失訂正符号化器
 2435 誤り検出部
 2436 消失訂正復号器
 2561 第1の消失訂正符号化器
 2562 第2の消失訂正符号化器
 2563 第3の消失訂正符号化器
 2564 選択部
 3313 BP復号器
 4403 既知情報挿入部
 4405 符号化器
 4407 既知情報削減部
 4409 変調部
 4603 対数尤度比挿入部
 4605 復号化部
 4607 既知情報削減部
 44100 誤り訂正符号化部
 44200 送信装置
 46100 誤り訂正復号部
 5800 符号化器
 5801 情報生成部
 5802-1 第1情報演算部
 5802-2 第2情報演算部
 5802-3 第3情報演算部
 5803 パリティ演算部
 5804,5903,6003 加算部
 5805 符号化率設定部
 5806,5904,6004 ウェイト制御部
 5901-1~5901-M,6001-1~6001-M シフトレジスタ
 5902-0~5902-M,6002-0~6002-M ウェイト乗算器
 6100 復号化器
 6101 対数尤度比設定部
 6102 行列処理演算部
 6103 記憶部
 6104 行処理演算部
 6105 列処理演算部
 6200,6300 通信装置
 6201 符号化器
 6202 変調部
 6203 符号化率決定部
 6301 受信部
 6302 対数尤度比生成部
 6303 復号化器
 6304 制御情報生成部
 

Claims (15)

  1.  符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法であって、
     前記時変周期qが、3より大きい素数であり、
     情報系列を入力とし、
     式(1)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて、前記情報系列を符号化する、
     符号化方法。
    Figure JPOXMLDOC01-appb-M000121
  2.  a#g,k,3=0である、
     請求項1に記載の符号化方法。
  3.  式(2-1)及び式(2-2)が成立するi,j(i≠j)が存在し、
     又は、
     式(2-3)及び式(2-4)が成立するiが存在する、
     請求項1に記載の符号化方法。
    Figure JPOXMLDOC01-appb-M000122
  4.  符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化方法であって、
     前記時変周期qが、3より大きい素数であり、
     情報系列を入力とし、
     式(3)であらわされるg番目(g=0、1、・・・、q-1)の0を満たすパリティ検査多項式のうち、
     「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=・・・=a#g,k,1%q=・・・=a#q-2,k,1%q=a#q-1,k,1%q=vp=k (vp=k:固定値)」、
     「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=・・・=b#g,1%q=・・・=b#q-2,1%q=b#q-1,1%q=w (w:固定値)」、
     「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=・・・=a#g,k,2%q=・・・=a#q-2,k,2%q=a#q-1,k,2%q=yp=k (yp=k:固定値)」、
     「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=・・・=b#g,2%q=・・・=b#q-2,2%q=b#q-1,2%q=z (z:固定値)」、
     及び、
     「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=・・・=a#g,k,3%q=・・・=a#q-2,k,3%q=a#q-1,k,3%q=sp=k (sp=k:固定値)」
     を、k=1、2、・・・、n-1に対して満たすパリティ検査多項式を用いて、前記情報系列を符号化する、
     符号化方法。
    Figure JPOXMLDOC01-appb-M000123
  5.  a#g,k,3=0である、
     請求項4に記載の符号化方法。
  6.  式(4-1)及び式(4-2)が成立するi,j(i≠j)が存在し、
     又は、
     式(4-3)及び式(4-4)が成立するiが存在する、
     請求項4に記載の符号化方法。
    Figure JPOXMLDOC01-appb-M000124
  7.  符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期qの低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う符号化器であって、
     前記時変周期qが、3より大きい素数であり、
     時点iの情報ビットX[i](r=1,2,…,n-1)を入力し、
     式(1)であらわされるg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式と等価な式を式(5)とし、i%q=kの場合に、式(5)のgにkを代入した式を用いて、時点iのパリティビットP[i]を生成する生成手段と、
     前記パリティビットP[i]を出力する出力手段と、
     を具備する符号化器。
    Figure JPOXMLDOC01-appb-M000125
  8.  a#g,k,3=0である、
     請求項7に記載の符号化器。
  9.  式(2-1)及び式(2-2)が成立するi,j(i≠j)が存在し、
     又は、
     式(2-3)及び式(2-4)が成立するiが存在する、
     請求項7に記載の符号化器。
  10.  符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期q(3より大きい素数)の低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う請求項1に記載の符号化方法において、式(1)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号方法であって、
     前記符号化情報系列を入力とし、
     g番目の0を満たす前記パリティ検査多項式である式(1)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する、
     復号方法。
  11.  a#g,k,3=0である、
     請求項10に記載の復号方法。
  12.  式(1-1)及び式(1-2)が成立するi,j(i≠j)が存在し、
     又は、
     式(1-3)及び式(1-4)が成立するiが存在する、
     請求項10に記載の復号方法。
  13.  符号化率(n-1)/n(nは2以上の整数)のパリティ検査多項式を用いて、時変周期q(3より大きい素数)の低密度パリティ検査畳み込み符号(LDPC-CC:Low-Density Parity-Check Convolutional Codes)化を行う請求項1に記載の符号化方法において、式(1)をg番目(g=0、1、・・・、q-1)の0を満たす前記パリティ検査多項式として用いて符号化された符号化情報系列を復号する復号器であって、
     前記符号化情報系列を入力とし、
     g番目の0を満たす前記パリティ検査多項式である式(1)を用いて生成されるパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化情報系列を復号する復号手段、
     を具備する復号器。
  14.  a#g,k,3=0である、
     請求項13に記載の復号器。
  15.  式(1-1)及び式(1-2)が成立するi,j(i≠j)が存在し、
     又は、
     式(1-3)及び式(1-4)が成立するiが存在する、
     請求項13に記載の復号器。
     
PCT/JP2010/006668 2009-11-13 2010-11-12 符号化方法、復号方法、符号化器、及び、復号器 WO2011058760A1 (ja)

Priority Applications (18)

Application Number Priority Date Filing Date Title
EP18204534.4A EP3474454B1 (en) 2009-11-13 2010-11-12 Encoding method, decoding method, coder and decoder
KR1020117016127A KR101660554B1 (ko) 2009-11-13 2010-11-12 부호화 방법, 복호 방법, 부호화기 및 복호기
EP10829720.1A EP2501047B1 (en) 2009-11-13 2010-11-12 Encoding method, decoding method, and coder
AU2010318464A AU2010318464B2 (en) 2009-11-13 2010-11-12 Encoding method, decoding method, coder and decoder
US13/145,018 US8595588B2 (en) 2009-11-13 2010-11-12 Encoding method, decoding method, coder and decoder
CN201080046146.XA CN102577135B (zh) 2009-11-13 2010-11-12 编码方法、解码方法、编码器以及解码器
RU2012117558/08A RU2532702C2 (ru) 2009-11-13 2010-11-12 Способ кодирования, способ декодирования, кодер и декодер
JP2011515009A JP5523452B2 (ja) 2009-11-13 2010-11-12 符号化方法、復号方法、符号化器、及び、復号器
KR1020167024684A KR101742451B1 (ko) 2009-11-13 2010-11-12 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
KR1020157010522A KR101730277B1 (ko) 2009-11-13 2010-11-12 송신 장치 및 송신 방법
US14/055,617 US8738992B2 (en) 2009-11-13 2013-10-16 Encoder, decoder, encoding method and decoding method
US14/229,551 US9032275B2 (en) 2009-11-13 2014-03-28 Transmission apparatus and transmission method
US14/597,810 US9350387B2 (en) 2009-11-13 2015-01-15 Encoding method, encoder, decoding method and decoder
US15/132,971 US10075184B2 (en) 2009-11-13 2016-04-19 Encoding apparatus, transmission apparatus, encoding method and transmission method
US16/048,949 US10333551B2 (en) 2009-11-13 2018-07-30 Decoding apparatus, reception apparatus, encoding method and reception method
US16/403,758 US10693497B2 (en) 2009-11-13 2019-05-06 Decoding apparatus, reception apparatus, encoding method and reception method
US16/862,239 US11463107B2 (en) 2009-11-13 2020-04-29 Decoding apparatus, reception apparatus, encoding method and reception method
US17/878,660 US20230006696A1 (en) 2009-11-13 2022-08-01 Decoding apparatus, reception apparatus, encoding method and reception method

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP2009-260503 2009-11-13
JP2009260503 2009-11-13
JP2010157991 2010-07-12
JP2010-157991 2010-07-12
JP2010-172577 2010-07-30
JP2010172577 2010-07-30
JP2010231807 2010-10-14
JP2010-231807 2010-10-14

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/145,018 A-371-Of-International US8595588B2 (en) 2009-11-13 2010-11-12 Encoding method, decoding method, coder and decoder
US14/055,617 Continuation US8738992B2 (en) 2009-11-13 2013-10-16 Encoder, decoder, encoding method and decoding method

Publications (1)

Publication Number Publication Date
WO2011058760A1 true WO2011058760A1 (ja) 2011-05-19

Family

ID=43991426

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/006668 WO2011058760A1 (ja) 2009-11-13 2010-11-12 符号化方法、復号方法、符号化器、及び、復号器

Country Status (10)

Country Link
US (9) US8595588B2 (ja)
EP (2) EP3474454B1 (ja)
JP (5) JP5523452B2 (ja)
KR (3) KR101742451B1 (ja)
CN (4) CN104506200B (ja)
AU (2) AU2010318464B2 (ja)
MY (1) MY154330A (ja)
RU (2) RU2532702C2 (ja)
TW (6) TWI629873B (ja)
WO (1) WO2011058760A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014017062A1 (ja) * 2012-07-24 2014-01-30 パナソニック株式会社 符号化方法、復号方法
WO2014054283A1 (ja) 2012-10-05 2014-04-10 パナソニック株式会社 符号化方法、復号方法、符号化器、及び、復号器
JP2015084591A (ja) * 2011-07-27 2015-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
CN105337700A (zh) * 2015-11-19 2016-02-17 济南澳普通信技术有限公司 一种基于码率自适应qc-ldpc编码方式的电力线载波的可见光通信系统及其运行方法
JP2016028531A (ja) * 2011-07-27 2016-02-25 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
JP2018139456A (ja) * 2009-11-13 2018-09-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信装置、送信方法、受信装置及び受信方法
CN110048803A (zh) * 2018-01-17 2019-07-23 中兴通讯股份有限公司 一种低密度奇偶校验码译码的方法、装置和设备
RU2703974C2 (ru) * 2015-04-17 2019-10-22 Таль Способы кодирования и декодирования с дифференцированной защитой

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5312484B2 (ja) * 2008-12-26 2013-10-09 パナソニック株式会社 符号化方法、符号化器及び復号器
JP4898858B2 (ja) * 2009-03-02 2012-03-21 パナソニック株式会社 符号化器、復号化器及び符号化方法
US8504847B2 (en) * 2009-04-20 2013-08-06 Cleversafe, Inc. Securing data in a dispersed storage network using shared secret slices
WO2013097174A1 (zh) * 2011-12-30 2013-07-04 华为技术有限公司 前向纠错编、解码方法、装置及系统
US8787506B2 (en) 2012-05-04 2014-07-22 Qualcomm Incorporated Decoders and methods for decoding convolutional coded data
US8861653B2 (en) * 2012-05-04 2014-10-14 Qualcomm Incorporated Devices and methods for obtaining and using a priori information in decoding convolutional coded data
US9203440B1 (en) 2013-01-29 2015-12-01 Xilinx, Inc. Matrix expansion
US9294133B1 (en) * 2013-01-29 2016-03-22 Marvell International Ltd. Method and apparatus for error correction
US9083383B1 (en) * 2013-01-29 2015-07-14 Xilinx, Inc. Parity check matrix
US10528410B2 (en) 2014-12-16 2020-01-07 Intel Corporation Apparatus, method and system to exchange error information in a unified protocol communication
RU2616180C1 (ru) * 2015-11-30 2017-04-12 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Владимирский государственный университет имени Александра Григорьевича и Николая Григорьевича Столетовых" (ВлГУ) Способ диагностики сверточных кодов
CN107919941B (zh) * 2016-10-10 2022-01-25 深圳市硅派科技有限公司 基于重叠复用的调制解调方法和装置
JP6885030B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
JP6885027B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
JP6885028B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
WO2018117651A1 (en) 2016-12-20 2018-06-28 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system
KR20180071917A (ko) * 2016-12-20 2018-06-28 삼성전자주식회사 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
JP6891519B2 (ja) * 2017-02-06 2021-06-18 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6880791B2 (ja) * 2017-02-06 2021-06-02 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6880792B2 (ja) * 2017-02-06 2021-06-02 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6852427B2 (ja) * 2017-02-06 2021-03-31 ソニー株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6891518B2 (ja) * 2017-02-06 2021-06-18 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6903979B2 (ja) * 2017-02-20 2021-07-14 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6897205B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6895053B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
RU178755U1 (ru) * 2017-07-04 2018-04-18 Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет" Устройство декодирования ldpc-кодов
CN111066251A (zh) 2017-08-18 2020-04-24 上海诺基亚贝尔股份有限公司 用于nr的ldpc基础图的使用
US10630315B2 (en) 2017-09-29 2020-04-21 Intel Corporation Technologies for applying a redundancy encoding scheme to segmented network packets
CN107566091A (zh) * 2017-10-24 2018-01-09 重庆电子工程职业学院 一种顾及广义耦合暗信息的卷积码盲识别方法
JP7135344B2 (ja) * 2018-01-18 2022-09-13 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP7077628B2 (ja) * 2018-01-18 2022-05-31 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
TWI685217B (zh) * 2018-07-23 2020-02-11 朱盈宇 可辨封包次序更正碼
CN114822393B (zh) 2018-07-27 2024-03-15 京东方科技集团股份有限公司 移位寄存器单元、栅极驱动电路、显示装置以及驱动方法
US11032023B1 (en) * 2019-05-21 2021-06-08 Tarana Wireless, Inc. Methods for creating check codes, and systems for wireless communication using check codes
CN110324048B (zh) * 2019-06-24 2020-12-08 华中科技大学 一种通信调制系统中ra-ldpc-cc的编码方法及编码器
TWI744960B (zh) * 2020-06-22 2021-11-01 旺宏電子股份有限公司 記憶體控制器及記憶體裝置
KR20220120859A (ko) 2021-02-24 2022-08-31 에스케이하이닉스 주식회사 메모리 시스템 내 에러 정정 코드를 사용하는 장치 및 방법
WO2023241687A1 (en) * 2022-06-17 2023-12-21 Mediatek Inc. Ldpc low coding rate designs for next-generation wlan

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009177228A (ja) * 2007-09-28 2009-08-06 Panasonic Corp 符号化方法、符号化器、復号器
JP2009246926A (ja) 2008-01-07 2009-10-22 Panasonic Corp 符号化方法、符号化器、復号器
JP2009260503A (ja) 2008-04-14 2009-11-05 Sharp Corp 受光アンプ素子、光ピックアップ、およびそれを備える光ディスク記録再生装置
JP2010157991A (ja) 2008-12-05 2010-07-15 Sony Corp 電源装置、電源ケーブル、および受信装置
JP2010172577A (ja) 2009-01-30 2010-08-12 Fujifilm Corp 内視鏡装置
JP2010231807A (ja) 1998-12-22 2010-10-14 Hitachi Ltd 記憶装置システム

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05110539A (ja) 1991-10-17 1993-04-30 Fujitsu Ltd デイジタル伝送方式
JPH0879149A (ja) 1994-08-31 1996-03-22 Nec Corp 衛星通信用送受信装置
JP3571918B2 (ja) * 1997-06-04 2004-09-29 株式会社東芝 符号伝送方法、送信装置、受信装置および通信システム
US6073250A (en) * 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
KR100264061B1 (ko) * 1997-12-10 2000-08-16 김영환 바이패스 기능을 구비한 리드 솔로몬 엔코더의 제어장치 및방법
US6304991B1 (en) * 1998-12-04 2001-10-16 Qualcomm Incorporated Turbo code interleaver using linear congruential sequence
KR100295760B1 (ko) * 1998-12-31 2001-09-06 윤종용 디지털시스템의길쌈부호처리장치및방법
JP3502559B2 (ja) 1999-02-05 2004-03-02 松下電器産業株式会社 消失訂正方法、及び消失訂正回路
JP3481542B2 (ja) 2000-03-09 2003-12-22 日本電信電話株式会社 無線通信システムにおける誤り訂正用送信回路ならびに受信回路
US7095729B2 (en) * 2000-12-22 2006-08-22 Intel Corporation Method for multimedia communication over packet channels
US6954448B2 (en) * 2001-02-01 2005-10-11 Ipr Licensing, Inc. Alternate channel for carrying selected message types
CA2516716C (en) * 2003-02-26 2012-08-14 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation
US7213197B2 (en) * 2003-08-08 2007-05-01 Intel Corporation Adaptive bit loading with low density parity check forward error correction
US7221680B2 (en) 2003-09-02 2007-05-22 Qualcomm Incorporated Multiplexing and transmission of multiple data streams in a wireless multi-carrier communication system
DE10353974A1 (de) * 2003-11-19 2005-06-30 Siemens Ag Verfahren zur Übertragung von digitalen Informationspaketen in einem Datennetz
US7673213B2 (en) * 2004-02-19 2010-03-02 Trellisware Technologies, Inc. Method and apparatus for communications using improved turbo like codes
TWI305090B (en) * 2004-05-07 2009-01-01 Broadcom Corp Reduced latency concatenated reed solomon-convolutional coding for mimo wireless lan
KR20050118056A (ko) * 2004-05-12 2005-12-15 삼성전자주식회사 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치
US10355825B2 (en) * 2004-07-21 2019-07-16 Qualcomm Incorporated Shared signaling channel for a communication system
WO2006075382A1 (ja) * 2005-01-14 2006-07-20 Fujitsu Limited 符号化方法、復号方法及びそれらの装置
US7500172B2 (en) * 2005-02-26 2009-03-03 Broadcom Corporation AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes
US7436901B2 (en) * 2005-04-19 2008-10-14 Telefonaktiebolaget Lm Ericsson (Publ) Selection of channel coding and multidimensional interleaving schemes for improved performance
US8706048B2 (en) * 2006-07-14 2014-04-22 Broadcom Corporation Method and system for explicit feedback with sounding packet for wireless local area networks (WLAN)
US8078933B2 (en) * 2005-05-18 2011-12-13 The Governors Of The University Of Alberta Decoder for low-density parity-check convolutional codes
US8358714B2 (en) * 2005-06-16 2013-01-22 Qualcomm Incorporated Coding and modulation for multiple data streams in a communication system
CN100450187C (zh) * 2005-10-17 2009-01-07 华为技术有限公司 支持错误弹性的多媒体数据网络实时传送方法
US7889703B2 (en) * 2005-11-14 2011-02-15 Mediatek Inc. Adaptive modulation and coding method
US20090125778A1 (en) * 2005-12-15 2009-05-14 Mitsubishi Electric Corporation Communication system, transmission-side communication device, and reception-side communication device
JP4620132B2 (ja) * 2005-12-20 2011-01-26 三菱電機株式会社 検査行列生成方法、符号化方法、通信装置、通信システム、符号化器
US7617433B2 (en) * 2006-01-03 2009-11-10 Broadcom Corporation Implementation of LDPC (low density parity check) decoder by sweeping through sub-matrices
US20070195905A1 (en) * 2006-02-21 2007-08-23 Adc Telecommunications, Inc. Forward error correction in wideband digital RF transport systems
US7613256B2 (en) * 2006-04-04 2009-11-03 Qualcomm Incorporated Forward error correction in a distribution system
JP2008024613A (ja) 2006-06-23 2008-02-07 Showa Denko Kk 第1級アルコールの製造方法
JP4856605B2 (ja) * 2006-08-31 2012-01-18 パナソニック株式会社 符号化方法、符号化装置、及び送信装置
WO2008041309A1 (fr) * 2006-09-29 2008-04-10 Fujitsu Limited Système de communication sans fil et émetteur et récepteur associés
EP2089974A2 (en) * 2006-11-01 2009-08-19 QUALCOMM Incorporated Turbo interleaver for high data rates
US7996747B2 (en) * 2006-11-03 2011-08-09 International Business Machines Corporation Forward error correction encoding for multiple link transmission compatible with 64B/66B scrambling
JP2008124613A (ja) * 2006-11-09 2008-05-29 Mitsubishi Electric Corp 無線通信システム、移動端末装置及び基地局装置
US8566676B2 (en) * 2007-01-05 2013-10-22 Qualcomm Incorporated FEC code and code rate selection based on packet size
US8140625B2 (en) * 2007-02-20 2012-03-20 Nec Laboratories America, Inc. Method for operating a fixed prefix peer to peer network
CN101094000B (zh) * 2007-06-20 2011-11-30 北京大学 一种基于peg算法的时不变ldpcc码的构造方法及其编译码器
JP5354985B2 (ja) 2007-07-30 2013-11-27 パナソニック株式会社 符号化装置及び復号化装置
JP5219699B2 (ja) 2007-08-30 2013-06-26 パナソニック株式会社 符号化装置及び復号装置
EP3059869B1 (en) 2007-09-28 2018-09-26 Panasonic Corporation Encoding method, encoder, and decoder
JP5247355B2 (ja) 2007-10-31 2013-07-24 パナソニック株式会社 送信装置
CN101431396A (zh) * 2007-11-09 2009-05-13 松下电器产业株式会社 在拆分码字中分配填充比特的方法
JP5203717B2 (ja) 2007-12-19 2013-06-05 パナソニック株式会社 符号器、復号器、符号化方法、及び、復号方法
AU2010318464B2 (en) * 2009-11-13 2015-07-09 Panasonic Intellectual Property Corporation Of America Encoding method, decoding method, coder and decoder

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010231807A (ja) 1998-12-22 2010-10-14 Hitachi Ltd 記憶装置システム
JP2009177228A (ja) * 2007-09-28 2009-08-06 Panasonic Corp 符号化方法、符号化器、復号器
JP2009246926A (ja) 2008-01-07 2009-10-22 Panasonic Corp 符号化方法、符号化器、復号器
JP2009260503A (ja) 2008-04-14 2009-11-05 Sharp Corp 受光アンプ素子、光ピックアップ、およびそれを備える光ディスク記録再生装置
JP2010157991A (ja) 2008-12-05 2010-07-15 Sony Corp 電源装置、電源ケーブル、および受信装置
JP2010172577A (ja) 2009-01-30 2010-08-12 Fujifilm Corp 内視鏡装置

Non-Patent Citations (21)

* Cited by examiner, † Cited by third party
Title
"IEEE Standard for Local and Metropolitan Area Networks", IEEE P802.16E/D12, October 2005 (2005-10-01)
A. J. FELTSTROM; K. S. ZIGANGIROV: "Time-varying periodic convolutional codes with low-density parity-check matrix", IEEE TRANS. INFORM. THEORY, vol. 45, no. 6, September 1999 (1999-09-01), pages 2181 - 2191
A. J. VITERBI: "Error bounds for convolutional codes and an asymptotically optimum decoding algorithm", IEEE TRANS. INF. THEORY, vol. IT-13, no. 2, April 1967 (1967-04-01), pages 260 - 269
A. J. VITERBI; J. K. OMURA: "Principles of digital communication and coding", 1979, MCGRAW-HILL
ALI EMRE PUSANE ET AL.: "On Deriving Good LDPC Convolutional Codes from QC LDPC Block Codes", PROCEEDINGS OF THE IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY, 2007 (ISIT 2007), - 24 June 2007 (2007-06-24), pages 1221 - 1225, XP008155519 *
C. WEIB; C. BETTSTETTER; S. RIEDEL: "Code construction and decoding of parallel concatenated tail-biting codes", IEEE TRANS. INFORM. THEORY, vol. 47, no. 1, January 2001 (2001-01-01), pages 366 - 386
CHRISTIAN CARDINAL ET AL.: "A New Approach for the Construction of Powerful LDPC Convolutional Codes", PROCEEDINGS OF THE IEEE VEHICULAR TECHNOLOGY CONFERENCE, 2008 (VTC SPRING 2008), - 11 May 2008 (2008-05-11), pages 1176 - 1180, XP008155520 *
D. J. C. MACKAY: "Good error-correcting codes based on very sparse matrices", IEEE TRANS. INFORM. THEORY, vol. 45, no. 2, March 1999 (1999-03-01), pages 399 - 431
DMITRI TRUHACHEV ET AL.: "Distance Bounds for Periodically Time-Varying andTail-Biting LDPC Convolutional Codes", IEEE TRANSACTIONS ON INFORMATION THEORY, vol. 56, no. 9, September 2010 (2010-09-01), pages 4301 - 4308, XP008155521 *
G. MULLER; D. BURSHTEIN: "Bounds on the maximum likelihood decoding error probability of low-density parity check codes", IEEE TRANS. INF. THEORY, vol. 47, no. 7, November 2001 (2001-11-01), pages 2696 - 2710
H. H. MA; J. K. WOLF: "On tail biting convolutional codes", IEEE TRANS. COMMUN., vol. COM-34, no. 2, February 1986 (1986-02-01), pages 104 - 111
J. CHEN; A. DHOLAKIA; E. ELEFTHERIOU; M. P. C. FOSSORIER; X.-YU HU: "Reduced-complexity decoding of LDPC codes", IEEE TRANS. COMMUN., vol. 53, no. 8, August 2005 (2005-08-01), pages 1288 - 1299
J. ZHANG; M. P. C. FOSSORIER: "Shuffled iterative decoding", IEEE TRANS. COMMUN., vol. 53, no. 2, February 2005 (2005-02-01), pages 209 - 213
M. B. S. TAVARES; K. S. ZIGANGIROV; G. P. FETTWEIS: "Tail-biting LDPC convolutional codes", PROC. OF IEEE ISIT 2007, June 2007 (2007-06-01), pages 2341 - 2345
M. P. C. FOSSORIER: "Quasi-cyclic low-density parity-check codes from circulant permutation matrices", IEEE TRANS. INFORM. THEORY, vol. 50, no. 8, November 2001 (2001-11-01), pages 1788 - 1793
M. P. C. FOSSORIER; M. MIHALJEVIC; H. IMAI: "Reduced complexity iterative decoding of low density parity check codes based on belief propagation", IEEE TRANS. COMMUN., vol. 47, no. 5, May 1999 (1999-05-01), pages 673 - 680
R. G. GALLAGER: "a simple derivation of the coding theorem and some applications", IEEE TRANS. INF. THEORY, vol. IT-11, no. 1, January 1965 (1965-01-01), pages 3 - 18
R. G. GALLAGER: "Low-density parity check codes", IRE TRANS. INFORM. THEORY, vol. IT-8, 1962, pages 21 - 28
R. M. TANNER; D. SRIDHARA; A. SRIDHARAN; T. E. FUJA; D. J. COSTELLO JR.: "LDPC block and convolutional codes based on circulant matrices", IEEE TRANS. INFORM. THEORY, vol. 50, no. 12, December 2004 (2004-12-01), pages 2966 - 2984
See also references of EP2501047A4
TAKAAKI KISHIGAMI ET AL.: "LDPC-Convolutional Codes for E-MBS FEC", IEEE 802.16 BROADBAND WIRELESS ACCESS WORKING GROUP, IEEE C802.16M- 09/0162, 5 January 2009 (2009-01-05), XP008155532, Retrieved from the Internet <URL:http://wirelessman.org/tgm/contrib/C80216m-09_0162.doc> *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11463107B2 (en) 2009-11-13 2022-10-04 Panasonic Intellectual Property Corporation Of America Decoding apparatus, reception apparatus, encoding method and reception method
US10693497B2 (en) 2009-11-13 2020-06-23 Panasonic Intellectual Property Corporation Of America Decoding apparatus, reception apparatus, encoding method and reception method
JP2018139456A (ja) * 2009-11-13 2018-09-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信装置、送信方法、受信装置及び受信方法
JP2017123689A (ja) * 2011-07-27 2017-07-13 サン パテント トラスト 符号化方法、復号方法
JP2015084591A (ja) * 2011-07-27 2015-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
JP2018085761A (ja) * 2011-07-27 2018-05-31 サン パテント トラスト 符号化方法、復号方法
JP2016028531A (ja) * 2011-07-27 2016-02-25 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
JP2016146646A (ja) * 2011-07-27 2016-08-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
JP2016189618A (ja) * 2011-07-27 2016-11-04 サン パテント トラスト 符号化方法、復号方法
JP5864749B2 (ja) * 2012-07-24 2016-02-17 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
WO2014017062A1 (ja) * 2012-07-24 2014-01-30 パナソニック株式会社 符号化方法、復号方法
US10224961B2 (en) 2012-07-24 2019-03-05 Sun Patent Trust Coding method and decoding method
US9584157B2 (en) 2012-10-05 2017-02-28 Sun Patent Trust Coding method, decoding method, coder, and decoder
US10243586B2 (en) 2012-10-05 2019-03-26 Sun Patent Trust Coding method, decoding method, coder, and decoder
JP5865503B2 (ja) * 2012-10-05 2016-02-17 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法、符号化器、及び、復号器
WO2014054283A1 (ja) 2012-10-05 2014-04-10 パナソニック株式会社 符号化方法、復号方法、符号化器、及び、復号器
RU2703974C2 (ru) * 2015-04-17 2019-10-22 Таль Способы кодирования и декодирования с дифференцированной защитой
CN105337700A (zh) * 2015-11-19 2016-02-17 济南澳普通信技术有限公司 一种基于码率自适应qc-ldpc编码方式的电力线载波的可见光通信系统及其运行方法
CN105337700B (zh) * 2015-11-19 2019-01-11 济南澳普通信技术有限公司 一种基于码率自适应qc-ldpc编码方式的电力线载波的可见光通信系统及其运行方法
CN110048803A (zh) * 2018-01-17 2019-07-23 中兴通讯股份有限公司 一种低密度奇偶校验码译码的方法、装置和设备

Also Published As

Publication number Publication date
KR101742451B1 (ko) 2017-05-31
CN104348491A (zh) 2015-02-11
RU2532702C2 (ru) 2014-11-10
KR101660554B1 (ko) 2016-09-27
EP2501047A4 (en) 2014-04-02
JP6357572B2 (ja) 2018-07-11
AU2015238854A1 (en) 2015-11-05
JP2017195640A (ja) 2017-10-26
JP2016012945A (ja) 2016-01-21
RU2014133507A (ru) 2016-03-10
US20150121162A1 (en) 2015-04-30
TW202044781A (zh) 2020-12-01
TW201631903A (zh) 2016-09-01
US9032275B2 (en) 2015-05-12
EP2501047A1 (en) 2012-09-19
RU2643506C2 (ru) 2018-02-01
KR101730277B1 (ko) 2017-04-25
EP2501047B1 (en) 2019-01-02
CN102577135B (zh) 2014-12-03
US20110283162A1 (en) 2011-11-17
US11463107B2 (en) 2022-10-04
KR20160110540A (ko) 2016-09-21
US8595588B2 (en) 2013-11-26
TWI467977B (zh) 2015-01-01
US9350387B2 (en) 2016-05-24
US20230006696A1 (en) 2023-01-05
US20140047304A1 (en) 2014-02-13
CN102577135A (zh) 2012-07-11
AU2010318464A1 (en) 2012-03-22
AU2015238854B2 (en) 2016-09-22
JP2014147110A (ja) 2014-08-14
CN104348491B (zh) 2018-12-07
TWI766317B (zh) 2022-06-01
TW202232897A (zh) 2022-08-16
TW201134157A (en) 2011-10-01
MY154330A (en) 2015-05-29
US20180337692A1 (en) 2018-11-22
CN104506200B (zh) 2018-07-24
US8738992B2 (en) 2014-05-27
US20140215293A1 (en) 2014-07-31
JPWO2011058760A1 (ja) 2013-03-28
US20190334550A1 (en) 2019-10-31
CN104467872B (zh) 2018-02-02
AU2010318464B2 (en) 2015-07-09
US10693497B2 (en) 2020-06-23
EP3474454B1 (en) 2022-02-23
RU2012117558A (ru) 2013-12-20
EP3474454A1 (en) 2019-04-24
KR20150054002A (ko) 2015-05-19
TWI700898B (zh) 2020-08-01
TW201511478A (zh) 2015-03-16
KR20120090762A (ko) 2012-08-17
JP5523452B2 (ja) 2014-06-18
TW201838345A (zh) 2018-10-16
JP2018139456A (ja) 2018-09-06
US20160233887A1 (en) 2016-08-11
TWI629873B (zh) 2018-07-11
TWI539757B (zh) 2016-06-21
JP6609352B2 (ja) 2019-11-20
US10333551B2 (en) 2019-06-25
US20200266833A1 (en) 2020-08-20
US10075184B2 (en) 2018-09-11
CN104506200A (zh) 2015-04-08
CN104467872A (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
JP6609352B2 (ja) 送信装置、送信方法、受信装置及び受信方法
KR101669398B1 (ko) 송신 장치, 송신 방법, 수신 장치 및 수신 방법
JP5312484B2 (ja) 符号化方法、符号化器及び復号器
JP4563476B2 (ja) 符号化器、復号化器及び符号化方法
JP5749843B2 (ja) 受信装置および受信方法
JP2011146899A (ja) 符号化器、復号化器及び符号化方法、復号化方法

Legal Events

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

Ref document number: 201080046146.X

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2011515009

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10829720

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20117016127

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13145018

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1525/MUMNP/2011

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2010318464

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2010318464

Country of ref document: AU

Date of ref document: 20101112

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2010829720

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2012117558

Country of ref document: RU