WO2012029614A1 - データ処理装置、及びデータ処理方法 - Google Patents

データ処理装置、及びデータ処理方法 Download PDF

Info

Publication number
WO2012029614A1
WO2012029614A1 PCT/JP2011/069110 JP2011069110W WO2012029614A1 WO 2012029614 A1 WO2012029614 A1 WO 2012029614A1 JP 2011069110 W JP2011069110 W JP 2011069110W WO 2012029614 A1 WO2012029614 A1 WO 2012029614A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
bit
bits
symbol
column
Prior art date
Application number
PCT/JP2011/069110
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
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to CA2808813A priority Critical patent/CA2808813A1/en
Priority to MX2013002215A priority patent/MX2013002215A/es
Priority to US13/818,709 priority patent/US9106256B2/en
Priority to EP11821631.6A priority patent/EP2613443B1/en
Priority to AU2011297270A priority patent/AU2011297270B2/en
Priority to CN201180050501.5A priority patent/CN103181082B/zh
Priority to BR112013004461A priority patent/BR112013004461A2/pt
Priority to RU2013108081/08A priority patent/RU2574828C2/ru
Priority to ES11821631.6T priority patent/ES2544610T3/es
Publication of WO2012029614A1 publication Critical patent/WO2012029614A1/ja

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
    • 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/033Theoretical methods to calculate these checking codes
    • H03M13/036Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
    • 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/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • H03M13/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • 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/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6552DVB-T2
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/36Modulator circuits; Transmitter circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes

Definitions

  • the present invention relates to a data processing apparatus and a data processing method, and more particularly, to a data processing apparatus and a data processing method capable of improving, for example, tolerance against data errors.
  • LDPC Low Density Parity Check
  • DVB Digital Video Broadcasting
  • S.2 Satellite Digital Broadcasting
  • LDPC codes are also being considered for next-generation terrestrial digital broadcasting.
  • LDPC codes have been found to have performance close to the Shannon limit as the code length is increased, as is the case with turbo codes and the like.
  • the LDPC code has the property that the minimum distance is proportional to the code length, its characteristic is that the block error probability characteristic is good, and furthermore, the so-called error floor phenomenon observed in the decoding characteristic such as turbo code is observed.
  • An advantage is that it hardly occurs.
  • LDPC code is a linear code and does not necessarily need to be binary, but will be described here as being binary.
  • LDPC code is characterized by the fact that the parity check matrix that defines the LDPC code is sparse.
  • a sparse matrix is a matrix in which the number of “1” s in the matrix is very small (a matrix in which most elements are 0).
  • FIG. 1 shows an example of a parity check matrix H of an LDPC code.
  • the weight of each column (column weight) (the number of “1”) (weight) is “3”, and the weight of each row (row weight) is “6”. .
  • a generator matrix G is generated based on the check matrix H, and the generator matrix G is multiplied by binary information bits to generate a codeword (LDPC code). ) Is generated.
  • the generator matrix G is a K ⁇ N matrix
  • the encoding device multiplies the generator matrix G by a bit string (vector u) of information bits made up of K bits to generate a code made up of N bits.
  • Generate the word c ( uG).
  • the code word (LDPC code) generated by this encoding device is received on the receiving side via a predetermined communication path.
  • LDPC code decoding is an algorithm proposed by Gallager called probabilistic decoding (Probabilistic Decoding), which consists of a variable node (also called a message node) and a check node (check node). This can be done by a message passing algorithm based on belief propagation on a so-called Tanner graph.
  • the variable node and the check node are also simply referred to as nodes as appropriate.
  • FIG. 2 shows a procedure for decoding the LDPC code.
  • a real value (reception LLR) expressing the “0” likelihood of the value of the i-th code bit of the LDPC code (1 codeword) received on the receiving side as a log likelihood ratio as appropriate. ) Is also referred to as a received value u 0i . Further, a message output from the check node is u j and a message output from the variable node is v i .
  • step S11 the LDPC code is received, the message (check node message) u j is initialized to “0”, and the counter of the iterative process is used.
  • the variable k taking the integer of is initialized to “0”, and the process proceeds to step S12.
  • step S12 a message (variable node message) v i is obtained by performing the calculation (variable node calculation) shown in Expression (1) based on the received value u 0i obtained by receiving the LDPC code.
  • the message u j is obtained by performing the calculation (check node calculation) shown in Expression (2).
  • Equation (1) and Equation (2) can be arbitrarily selected to indicate the number of “1” s in the vertical direction (column) and horizontal direction (row) of the parity check matrix H, respectively.
  • variable node calculation of Expression (1) the message input from the edge (line connecting the variable node and the check node) to which the message is to be output, respectively.
  • the computation range is 1 to d v -1 or 1 to d c -1.
  • the check node calculation of equation (2) actually creates a table of function R (v 1 , v 2 ) shown in equation (3) defined by one output for two inputs v 1 and v 2 in advance. In addition, this is performed by using it continuously (recursively) as shown in Equation (4).
  • step S12 the variable k is further incremented by “1”, and the process proceeds to step S13.
  • step S13 it is determined whether or not the variable k is larger than a predetermined iterative decoding count C. If it is determined in step S13 that the variable k is not greater than C, the process returns to step S12, and thereafter the same processing is repeated.
  • step S13 determines whether the variable k is larger than C. If it is determined in step S13 that the variable k is larger than C, the process proceeds to step S14, and a message v i as a decoding result to be finally output is obtained by performing the calculation shown in equation (5). And the LDPC code decoding process ends.
  • equation (5) is performed using messages u j from all branches connected to the variable node.
  • FIG. 3 shows an example of a parity check matrix H of a (3, 6) LDPC code (coding rate 1/2, code length 12).
  • the column weight is 3 and the row weight is 6, as in FIG.
  • FIG. 4 shows a Tanner graph of the check matrix H in FIG.
  • a plus “+” represents a check node
  • Check nodes and variable nodes correspond to the rows and columns of the parity check matrix H, respectively.
  • the connection between the check node and the variable node is an edge, and corresponds to “1” of the check matrix element.
  • the branch represents that the sign bit corresponding to the variable node has a constraint condition corresponding to the check node.
  • FIG. 5 shows variable node calculation performed in the variable node.
  • the message v i corresponding to the branch to be calculated is the variable node of the formula (1) using the messages u 1 and u 2 from the remaining branches connected to the variable node and the received value u 0i. It is obtained by calculation. Messages corresponding to other branches are obtained in the same manner.
  • FIG. 6 shows a check node operation performed at the check node.
  • sign (x) is 1 when x ⁇ 0, and ⁇ 1 when x ⁇ 0.
  • Equation (6) can be transformed into Equation (7).
  • the message u j corresponding to the branch to be calculated is the messages v 1 , v 2 , v 3 , v 4 , v from the remaining branches connected to the check node. It is obtained by the check node calculation of Equation (7) using 5 . Messages corresponding to other branches are obtained in the same manner.
  • ⁇ (x) and ⁇ ⁇ 1 (x) are mounted on hardware, they may be mounted using a LUT (Look Up Table), but both are the same LUT.
  • DVB-S.2 ETSI EN 302 307 V1.1.2 (2006-06)
  • LDPC code is used in DVB-S.2 which is a standard for satellite digital broadcasting and DVB-T.2 which is a standard for next-generation terrestrial digital broadcasting.
  • the LDPC code is planned to be used in DVB-C.2, which is the next-generation CATV (Cable Television) digital broadcasting standard.
  • LDPC codes are converted to symbols of orthogonal modulation (digital modulation) such as QPSK (Quadrature Phase Shift Keying), and these symbols are signals. It is mapped to a point and transmitted.
  • digital modulation digital modulation
  • QPSK Quadrature Phase Shift Keying
  • the code bits of the LDPC code are exchanged in units of two or more code bits, and the code bit after the exchange is used as a symbol bit.
  • DVB-T.2 is a standard for digital broadcasting for fixed terminals such as television receivers installed in homes and the like, and may not be appropriate for digital broadcasting for portable terminals.
  • the mobile terminal needs to have a smaller circuit scale than the fixed terminal, and it is necessary to reduce power consumption. Therefore, in digital broadcasting for portable terminals, in order to reduce the load necessary for processing such as decoding of LDPC codes in portable terminals, for example, the number of repetitions of LDPC code decoding (repetition decoding number C), LDPC code May be more limited than in the case of digital broadcasting for fixed terminals.
  • the present invention has been made in view of such a situation, and is intended to improve resistance to errors in data such as LDPC codes.
  • the data processing device or the data processing method according to the first aspect of the present invention provides a coding means or a coding step for performing coding by an LDPC code having a code length of 4320 bits and a coding rate of 1/2.
  • the parity check matrix of the LDPC code includes a parity check matrix initial representing a position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length according to the coding rate for every 72 columns.
  • 1 element of the information matrix determined by the value table is arranged with a period of every 72 columns in the column direction, and the parity check matrix initial value table is 142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117 3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956 148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055 185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991 424 444 923 1679 91 436 535 978 362 677 821 1695 1117 1392 1454 2030 35 840 1477 2152 10
  • the data processing apparatus or the data processing method according to the second aspect of the present invention provides an encoding means for performing encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 7/12, or an encoding step
  • the parity check matrix of the LDPC code includes a parity check matrix initial representing a position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length according to the coding rate for every 72 columns.
  • 1 element of the information matrix determined by the value table is arranged with a period of every 72 columns in the column direction, and the parity check matrix initial value table is 96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702 22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794 80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753 15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348 11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783 455 610 1123 1603 631 914 1424 1461 149 507 1275 1468 5 1078 1415 1735 169 772 775 1516 1207 1315 1683 1688 19 1053 1221
  • the data processing apparatus or the data processing method according to the third aspect of the present invention provides an encoding means or encoding step for performing encoding by an LDPC code having a code length of 4320 bits and an encoding rate of 2/3
  • the parity check matrix of the LDPC code includes a parity check matrix initial representing a position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length according to the coding rate for every 72 columns.
  • 1 element of the information matrix determined by the value table is arranged with a period of every 72 columns in the column direction, and the parity check matrix initial value table is 56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428 1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431 2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422 50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260 151 674 732 1240 1099 1250 1348 1366 1115 1124 1394 1414 66 250 875 1040 525 603 916 140
  • the data processing apparatus or the data processing method according to the fourth aspect of the present invention provides an encoding means or encoding step for performing encoding by an LDPC code having a code length of 4320 bits and an encoding rate of 3/4
  • the parity check matrix of the LDPC code includes a parity check matrix initial representing a position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length according to the coding rate for every 72 columns.
  • 1 element of the information matrix determined by the value table is arranged with a period of every 72 columns in the column direction, and the parity check matrix initial value table is 3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069 4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076 0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064 10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069 12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072 124 381 715 981 503 610 633 1030 321 874 900 1020 509 817 902 978 3 118 688 911 515 644 848 1067 13 75 721 970 9 464 7
  • a data processing device is a data processing device that decodes an LDPC (Low Density Parity Check) code and decodes an LDPC code having a code length of 4320 bits and an encoding rate of 1/2.
  • the LDPC code parity check matrix represents the position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length corresponding to the coding rate for every 72 columns.
  • the parity check matrix initial value table is 142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117 3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956 148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055 185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991 424 444 923 1679 91 436 535 978 362 677 821 1695 1117 1392 1454 2030 35 840 14
  • a data processing device is a data processing device that decodes an LDPC (Low Density Parity Check) code and decodes an LDPC code having a code length of 4320 bits and an encoding rate of 7/12.
  • the LDPC code parity check matrix represents the position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length corresponding to the coding rate for every 72 columns.
  • the parity check matrix initial value table is 96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702 22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794 80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753 15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348 11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783 455 610 1123 1603 631 914 1424 1461 149 507 1275 1468 5 1078 1415 1735 169 772 775 1516 1207 1315 1683 1688 19
  • a data processing device is a data processing device that decodes an LDPC (Low Density Parity Check) code and decodes an LDPC code having a code length of 4320 bits and an encoding rate of 2/3.
  • the LDPC code parity check matrix represents the position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length corresponding to the coding rate for every 72 columns.
  • the parity check matrix initial value table is 56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428 1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431 2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422 50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260 151 674 732 1240 1099 1250 1348 1366 1115 1124 1394 1414 66 250 875 1040 525 60
  • a data processing device is a data processing device that decodes LDPC (Low Density Parity Check) codes, and that decodes LDPC codes with a code length of 4320 bits and a coding rate of 3/4.
  • the LDPC code parity check matrix represents the position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length corresponding to the coding rate for every 72 columns.
  • the parity check matrix initial value table is 3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069 4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076 0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064 10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069 12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072 124 381 715 981 503 610 633 1030 321 874 900 1020 509 817 902 978 3 118 688 911 515 644 848 1067 13 75 721 970
  • encoding is performed with an LDPC code having a code length of 4320 bits and an encoding rate of 1/2, 7/12, 2/3, or 3/4. .
  • LDPC codes having a code length of 4320 bits and a coding rate of 1/2, 7/12, 2/3, or 3/4 are decoded.
  • the parity check matrix of the LDPC code is based on a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the code length of the parity check matrix and the information length corresponding to the coding rate for every 72 columns.
  • 1 element of the information matrix to be determined is arranged in a column direction with a period of every 72 columns, and the parity check matrix initial value table of an LDPC code with a coding rate of 1/2 is: 142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117 3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956 148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 18
  • the data processing apparatus may be an independent apparatus or an internal block constituting one apparatus.
  • tolerance against errors can be improved.
  • FIG. 3 is a block diagram illustrating a configuration example of a transmission device 11.
  • FIG. 3 is a block diagram illustrating a configuration example of a bit interleaver 116.
  • FIG. It is a figure which shows a check matrix.
  • FIG. 6 is a diagram for explaining processing of a demultiplexer 25.
  • FIG. 6 is a diagram for explaining processing of a demultiplexer 25.
  • FIG. 10 is a flowchart for explaining processing performed by a bit interleaver 116 and a QAM encoder 117. It is a figure which shows the model of the communication path employ
  • An error rate obtained by the simulation is a diagram showing the relationship between the Doppler frequency f d of the flutter.
  • An error rate obtained by the simulation is a diagram showing the relationship between the Doppler frequency f d of the flutter.
  • 3 is a block diagram illustrating a configuration example of an LDPC encoder 115.
  • FIG. 5 is a flowchart for explaining processing of an LDPC encoder 115. [Fig. 38] Fig.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 1/4 and the code length 16200. It is a figure explaining the method of calculating
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 1/4 and the code length 4320.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with an encoding rate of 1/3 and a code length of 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 5/12 and the code length 4320.
  • FIG. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 1/2 and the code length 4320.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 7/12 and the code length 4320.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 2/3 and the code length 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 3/4 and the code length 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 5/6 and the code length 4320.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 11/12 and the code length 4320. It is a figure which shows the example of the Tanner graph of the ensemble of a degree sequence that column weight is 3 and row weight is 6. FIG. It is a figure which shows the example of the Tanner graph of a multi-edge type ensemble.
  • Fig. 38 is a diagram illustrating a minimum cycle length and a performance threshold value of a parity check matrix of an LDPC code having a code length 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating a parity check matrix of an LDPC code having a code length of 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating a parity check matrix of an LDPC code having a code length of 4320.
  • FIG. 38 is a diagram illustrating a parity check matrix of an LDPC code having a code length of 4320. It is a figure which shows the number of columns of the memory 31 required for column twist interleaving, and the address of the write start position. It is a figure which shows the simulation result of BER at the time of performing column twist interleaving. It is a figure explaining the exchange process of the present system. It is a figure explaining the exchange process of the present system. It is a figure explaining the exchange process of the present system.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 64QAM and a multiple b is 2.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 64QAM and a multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 64QAM and a multiple b is 2.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 64QAM and a multiple b is 2.
  • FIG. 10 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 12 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 64QAM and a multiple b is 2.
  • Fig. 11 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 64QAM and the multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and an encoding rate of 5/12 is modulated by 64QAM and a multiple b is 2.
  • Fig. 11 Fig. 11 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 64QAM and a multiple b is 2.
  • FIG. 10 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 12 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 64QAM and a multiple b is 2.
  • Fig. 12 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 12 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 11 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 64QAM and a multiple b is 2.
  • Fig. 12 Fig. 12 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 2/3 is modulated by 64QAM and a multiple b is 2.
  • FIG. 10 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 2/3 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and an encoding rate of 2/3 is modulated by 64QAM and a multiple b is 2.
  • FIG. 6 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 11 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and an encoding rate of 3/4 is modulated by 64QAM and a multiple b is 2.
  • Fig. 10 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 64QAM and a multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 12 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 64QAM and a multiple b is 2.
  • Fig. 10 Fig. 10 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 64QAM and a multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 64QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 64QAM and a multiple b is 2.
  • FIG. 5 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 12 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 16QAM and a multiple b is 2.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 16QAM and a multiple b is 2.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 12 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 16QAM and a multiple b is 2.
  • Fig. 10 Fig. 10 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and an encoding rate of 1/2 is modulated by 16QAM and a multiple b is 2.
  • Fig. 10 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 16QAM and a multiple b is 2.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 2/3 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 2/3 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and an encoding rate of 2/3 is modulated by 16QAM and a multiple b is 2.
  • FIG. 3 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 16QAM and a multiple b is 2.
  • FIG. 7 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 16QAM and the multiple b is 2.
  • FIG. 11 is a diagram illustrating an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 16QAM and a multiple b is 2.
  • FIG. 4 is a diagram illustrating a code bit group and a symbol bit group when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 16QAM and a multiple b is 2.
  • FIG. 11 is a diagram showing an allocation rule when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 10 is a diagram illustrating code bit replacement according to an allocation rule when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 16QAM and a multiple b is 2.
  • FIG. 7 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 7 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 7 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 2/3 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 64QAM, and a multiple b is 2. [Fig. 10] Fig.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 64QAM, and a multiple b is 2.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 1/4 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 1/3 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 5/12 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 10 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 1/2 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 7/12 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 2/3 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 3/4 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 6 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 5/6 is modulated by 16QAM, and a multiple b is 2.
  • FIG. 11 is a diagram illustrating a BER simulation result when an LDPC code having a code length of 4k and a coding rate of 11/12 is modulated by 16QAM, and a multiple b is 2.
  • Fig. 38 Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 1/2 and the code length 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 7/12 and the code length 4320.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 2/3 and the code length 4320.
  • Fig. 38 is a diagram illustrating an example of a parity check matrix initial value table with the code rate 3/4 and the code length 4320.
  • Fig. 38 is a diagram illustrating a minimum cycle length and a performance threshold value of a parity check matrix of an LDPC code having a code length 4320.
  • Fig. 38] Fig. 38 is a diagram illustrating a parity check matrix of an LDPC code having a code length of 4320. It is a figure which shows the simulation result of BER.
  • 3 is a block diagram illustrating a configuration example of a receiving device 12.
  • FIG. It is a block diagram which shows the structural example of the bit deinterleaver 165.
  • FIG. 12 is a flowchart for describing processing performed by a QAM decoder 164, a bit deinterleaver 165, and an LDPC decoder 166. It is a figure which shows the example of the check matrix of a LDPC code. It is a figure which shows the matrix (conversion test matrix) which performed row substitution and column substitution to the check matrix. It is a figure which shows the conversion test matrix divided
  • FIG. 12 is a flowchart for describing processing performed by a QAM decoder 164, a bit deinterleaver 165, and an LDPC decoder 166. It is a figure which shows the example of the check matrix
  • FIG. It is a figure explaining the process of the multiplexer 54 which comprises the bit deinterleaver 165.
  • FIG. It is a figure explaining the process of the column twist deinterleaver.
  • FIG. It is a block diagram which shows the 1st structural example of the receiving system which can apply the receiving device.
  • FIG. 7 is a diagram of a transmission system to which the present invention is applied (a system refers to a logical collection of a plurality of devices, regardless of whether or not each configuration device is in the same housing). The structural example of embodiment is shown.
  • the transmission system includes a transmission device 11 and a reception device 12.
  • the transmission device 11 transmits (broadcasts) (transmits) programs for fixed terminals and portable terminals. That is, the transmission device 11 encodes target data to be transmitted, such as image data and audio data as a program for a fixed terminal or a portable terminal, into an LDPC code, for example, a communication channel that is a terrestrial wave 13 to transmit.
  • target data to be transmitted such as image data and audio data as a program for a fixed terminal or a portable terminal
  • an LDPC code for example, a communication channel that is a terrestrial wave 13 to transmit.
  • the receiving device 12 is, for example, a portable terminal, receives an LDPC code transmitted from the transmitting device 11 via the communication path 13, decodes it into target data, and outputs it.
  • the LDPC code used in the transmission system of FIG. 7 exhibits extremely high capability in an AWGN (Additive White Gaussian Noise) channel.
  • AWGN Additional White Gaussian Noise
  • a burst error or erasure may occur in the communication path 13 such as terrestrial waves.
  • echo Orthogonal-Frequency-Division-Multiplexing
  • D / U Desired-to-Undesired-Ratio
  • Desired main path power
  • a burst error may occur due to the state of the wiring from the receiving unit (not shown) such as an antenna that receives a signal from the transmitting device 11 to the receiving device 12 on the receiving device 12 side or the instability of the power supply of the receiving device 12. May occur.
  • the code bit (received value u 0i of the LDPC code) at the variable node corresponding to the column of the parity check matrix H and thus the code bit of the LDPC code. Since the variable node operation of the expression (1) with the addition of) is performed, if an error occurs in the sign bit used for the variable node operation, the accuracy of the required message is reduced.
  • the check node performs the check node calculation of Expression (7) using the message obtained by the variable node connected to the check node, so that a plurality of connected variable nodes ( When the number of check nodes in which the error (including erasure) of the code bits of the LDPC code corresponding to) simultaneously increases, the decoding performance deteriorates.
  • the check node sends a message with an equal probability of a probability of 0 and a probability of 1 to all the variable nodes. return.
  • a check node that returns an equiprobable message does not contribute to one decoding process (one set of variable node calculation and check node calculation), and as a result, requires a large number of repetitions of the decoding process. As a result, the decoding performance deteriorates, and the power consumption of the receiving apparatus 12 that decodes the LDPC code increases.
  • the transmission system of FIG. 7 is designed to improve the tolerance to burst errors and erasures while maintaining the performance on the AWGN communication path.
  • FIG. 8 is a block diagram illustrating a configuration example of the transmission device 11 of FIG.
  • one or more input streams (Input Streams) as target data are supplied to a Mode Adaptation / Multiplexer 111.
  • the mode adaptation / multiplexer 111 selects a mode and multiplexes one or more input streams supplied thereto, and supplies data obtained as a result to a padder 112.
  • the padder 112 performs necessary zero padding (Null insertion) on the data from the mode adaptation / multiplexer 111 and supplies the resulting data to the BB scrambler 113.
  • the BB scrambler 113 performs energy diffusion processing on the data from the padder 112 and supplies data obtained as a result to a BCH encoder 114.
  • the BCH encoder 114 BCH-encodes the data from the BB scrambler 113, and supplies the resulting data to an LDPC encoder 115 as LDPC target data that is an LDPC encoding target.
  • the LDPC encoder 115 performs LDPC encoding on the LDPC target data from the BCH encoder 114 according to a parity check matrix in which a parity matrix that is a part corresponding to the parity bits of the LDPC code has a staircase structure. Output LDPC code as information bits.
  • the LDPC encoder 115 performs LDPC encoding that encodes LDPC target data into an LDPC code such as an LDPC code defined in the DVB-T.2 standard, and outputs the resulting LDPC code. To do.
  • the LDPC code defined in the DVB-S.2 standard is adopted except when the code length is 16200 bits and the coding rate is 3/5. .
  • the LDPC code defined in the DVB-T.2 standard is an IRA (Irregular Repeat Accumulate) code, and the parity matrix in the parity check matrix of the LDPC code has a staircase structure. The parity matrix and the staircase structure will be described later.
  • IRA codes for example, “Irregular Repeat-Accumulate Codes,” H. Jin, A. Khandekar, and R. J. McEliece, in Proceedings of 2nd International Symposium on Turbo codes and Related Topics-8 , Sept. 2000.
  • the LDPC code output from the LDPC encoder 115 is supplied to the bit interleaver 116.
  • the bit interleaver 116 performs bit interleaving described later on the LDPC code from the LDPC encoder 115, and supplies the LDPC code after the bit interleaving to a QAM encoder (QAM encoder) 117.
  • QAM encoder QAM encoder
  • the QAM encoder 117 maps the LDPC code from the bit interleaver 116 to a signal point representing one symbol of orthogonal modulation in units of one or more code bits (symbol unit) of the LDPC code and performs orthogonal modulation ( Multilevel modulation).
  • the QAM encoder 117 converts the LDPC code from the bit interleaver 116 into an IQ plane (IQ constellation) defined by an I axis representing an I component in phase with the carrier and a Q axis representing a Q component orthogonal to the carrier. ) Perform the quadrature modulation by mapping to the signal points determined by the modulation method that performs the quadrature modulation of the LDPC code.
  • IQ plane IQ constellation
  • a modulation method of orthogonal modulation performed by the QAM encoder 117 for example, a modulation method including a modulation method defined in the DVB-T standard, that is, for example, QPSK (QuadraturerPhase Shift Keying), 16QAM (Quadrature Amplitude Modulation), 64QAM, 256QAM, 1024QAM, 4096QAM, etc.
  • QPSK QuadratturerPhase Shift Keying
  • 16QAM Quadadrature Amplitude Modulation
  • 64QAM 64QAM
  • 256QAM 256QAM
  • 1024QAM 1024QAM
  • 4096QAM a modulation method including a modulation method defined in the DVB-T standard, that is, for example, QPSK (QuadraturerPhase Shift Keying), 16QAM (Quadrature Amplitude Modulation), 64QAM, 256QAM, 1024QAM, 4096QAM, etc.
  • Time Interleaver Time Interleaver
  • the time interleaver 118 performs time interleaving (interleaving in the time direction) in units of symbols on the data (symbols) from the QAM encoder 117, and obtains the resulting data as a MISO / MIMO encoder (MISO / MIMO encoder) 119. To supply.
  • the MISO / MIMO encoder 119 performs space-time coding on the data (symbol) from the time interleaver 118 and supplies it to a frequency interleaver 120.
  • the frequency interleaver 120 performs frequency interleaving (interleaving in the frequency direction) for each data (symbol) from the MISO / MIMO encoder 119 and supplies the data to a frame builder / resource allocation unit (Frame Builder & Resource Allocation) 131. To do.
  • the BCH encoder 121 is supplied with control data (signalling) for transmission control such as a preamble called L1 or the like.
  • the BCH encoder 121 performs BCH encoding on the control data supplied thereto in the same manner as the BCH encoder 114, and supplies the resulting data to the LDPC encoder 122.
  • the LDPC encoder 122 performs LDPC encoding on the data from the BCH encoder 121 as LDPC target data in the same manner as the LDPC encoder 115, and supplies the resulting LDPC code to the QAM encoder 123.
  • the QAM encoder 123 converts the LDPC code from the LDPC encoder 122 into a signal point representing one symbol of orthogonal modulation in units of one or more code bits (symbol unit) of the LDPC code.
  • the orthogonal modulation is performed by mapping, and data (symbol) obtained as a result is supplied to the frequency interleaver 124.
  • the frequency interleaver 124 performs frequency interleaving on the data (symbol) from the QAM encoder 123 in units of symbols and supplies the data to the frame builder / resource allocation unit 131.
  • the frame builder / resource allocation unit 131 inserts pilot symbols at necessary positions of the data (symbols) from the frequency interleavers 120 and 124, and from the resulting data (symbols), a predetermined number A frame composed of a number of symbols is constructed and supplied to an OFDM generation unit 132.
  • the OFDM generation unit 132 generates an OFDM signal corresponding to the frame from the frame from the frame builder / resource allocation unit 131, and transmits the OFDM signal via the communication path 13 (FIG. 7).
  • FIG. 9 shows a configuration example of the bit interleaver 116 of FIG.
  • the bit interleaver 116 is a data processing device that interleaves data, and includes a parity interleaver 23, a column twist interleaver 24, and a demultiplexer (DEMUX) 25.
  • the parity interleaver 23 performs parity interleaving for interleaving the parity bits of the LDPC code from the LDPC encoder 115 to the positions of other parity bits, and supplies the LDPC code after the parity interleaving to the column twist interleaver 24.
  • the column twist interleaver 24 performs column twist interleaving on the LDPC code from the parity interleaver 23 and supplies the LDPC code after the column twist interleaving to the demultiplexer 25.
  • the LDPC code is transmitted in the QAM encoder 117 of FIG. 8 by mapping one or more code bits of the LDPC code to a signal point representing one symbol of orthogonal modulation.
  • the column twist interleaver 24 uses a parity interleaver 23 so that a plurality of code bits of the LDPC code corresponding to 1 in any one row of the parity check matrix used in the LDPC encoder 115 are not included in one symbol. As rearrangement processing for rearranging the code bits of the LDPC code, for example, column twist interleaving as described later is performed.
  • the demultiplexer 25 performs an exchange process for exchanging positions of two or more code bits of the LDPC code as a symbol for the LDPC code from the column twist interleaver 24 to obtain an LDPC code with enhanced resistance to AWGN. Then, the demultiplexer 25 supplies two or more code bits of the LDPC code obtained by the replacement process to the QAM encoder 117 (FIG. 8) as a symbol.
  • FIG. 10 shows a parity check matrix H used for LDPC encoding by the LDPC encoder 115 of FIG.
  • LDGM Low-Density Generation Matrix
  • the number of information bits and the number of parity bits in the code bits of one LDPC code are referred to as information length K and parity length M, respectively, and one LDPC.
  • the information length K and the parity length M for an LDPC code having a certain code length N are determined by the coding rate.
  • the parity check matrix H is an M ⁇ N matrix with rows ⁇ columns. Then, the information matrix H A, becomes the matrix of M ⁇ K, the parity matrix H T is a matrix of M ⁇ M.
  • Figure 11 illustrates a parity matrix H T of the parity DVB-T.2 (and DVB-S.2) check matrix H of an LDPC code prescribed in the standard of.
  • the row weight of the parity matrix H T is 1 for the first row and 2 for all the remaining rows.
  • the column weight is 1 for the last column and 2 for all the remaining columns.
  • LDPC codes of the check matrix H the parity matrix H T has a staircase structure can be using the check matrix H, readily produced.
  • an LDPC code (one codeword), together represented by a row vector c, and column vector obtained by transposing the row vector is represented as c T. Further, in the row vector c which is an LDPC code, the information bit portion is represented by the row vector A, and the parity bit portion is represented by the row vector T.
  • FIG. 12 is a diagram for explaining the parity check matrix H of the LDPC code defined in the DVB-T.2 standard.
  • the column weight is X
  • the subsequent K3 column is the column weight 3
  • the subsequent The column weight is 2 for the M-1 column
  • the column weight is 1 for the last column.
  • KX + K3 + M-1 + 1 is equal to the code length N.
  • FIG. 13 is a diagram showing the number of columns KX, K3, and M and the column weight X for each coding rate r of the LDPC code defined in the DVB-T.2 standard.
  • the DVB-T.2 standard specifies LDPC codes with a code length of 64800 bits and 16200 bits.
  • LDPC code having a code length N of 64,800 bits 11 coding rates (nominal rates) 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3 / 4, 4/5, 5/6, 8/9, and 9/10 are defined, and for an LDPC code having a code length N of 16200 bits, 10 coding rates 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, and 8/9 are specified.
  • the code length N of 64800 bits is also referred to as 64k bits
  • the code length N of 16200 bits is also referred to as 16k bits.
  • the column weight on the head side (left side) tends to be large.
  • the LDPC code corresponding to there is a tendency that the first code bit is more resistant to errors (is more resistant to errors), and the last code bit is more vulnerable to errors.
  • FIG. 14 shows an arrangement on the IQ plane of 16 symbols (corresponding signal points) when 16QAM is performed by the QAM encoder 117 of FIG.
  • a in FIG. 14 shows a 16QAM symbol of DVB-T.2.
  • the 16 symbols are arranged so that the I direction ⁇ Q direction is a 4 ⁇ 4 square shape with the origin of the IQ plane as the center.
  • bit y i + 1 bit from the most significant bit in the bit string represented by one symbol is represented as bit y i
  • the four bits represented by one symbol of 16QAM are bit y 0 in order from the most significant bit. , y 1 , y 2 , y 3 .
  • 4 code bits of the LDPC code is (symbolized) into 4-bit y 0 to y 3 symbol (symbol value).
  • FIG. 14B shows bit boundaries for each of 4 bits (hereinafter also referred to as symbol bits) y 0 to y 3 represented by a 16QAM symbol.
  • the symbol bit y i represented by a symbol is more likely to be erroneous (lower error probability) as there are more symbols far from the bit boundary, and more likely to be erroneous (higher error probability) as there are more symbols near the bit boundary.
  • strong to errors a bit that is hard to error
  • weak to errors a bit that is easy to error
  • 4 symbol bits y 0 to y 3 of a 16QAM symbol 4 symbol bits y 0 to y 3 of a 16QAM symbol .
  • the most significant symbol bit y 0 and the second symbol bit y 1 are strong bits
  • the third symbol bit y 2 and the fourth symbol bit y 3 are weak bits. .
  • 15 to 17 show the arrangement of 64 symbols (corresponding signal points) on the IQ plane when 64QAM is performed by the QAM encoder 117 of FIG. 8, that is, DVB-T.2 16QAM symbols. Is shown.
  • One symbol bit of 64QAM can be expressed as bits y 0 , y 1 , y 2 , y 3 , y 4 , y 5 in order from the most significant bit.
  • the 6 code bits of the LDPC code are the symbol bit y 0 no 6-bit to the symbol y 5.
  • FIG. 15 shows bit boundaries for the most significant symbol bit y 0 and the second symbol bit y 1 among the symbol bits y 0 to y 5 of the 64QAM symbol, and FIG. th symbol bit y 2, the bit boundaries for the fourth symbol bit y 3, respectively, FIG. 17, the fifth symbol bit y 4, the bit boundaries for the sixth symbol bit y 5, respectively, each Show.
  • the symbol bits y 0 of the uppermost bit boundaries for the second symbol bit y 1, respectively, has at one place. Also, as shown in FIG. 16, there are two bit boundaries for each of the third symbol bit y 2 and the fourth symbol bit y 3 , and as shown in FIG. 17, the fifth symbol bit There are four bit boundaries for bit y 4 and sixth symbol bit y 5 .
  • the most significant symbol bit y 0 and the second symbol bit y 1 are strong bits, and the third symbol bits y 2 and 4 th symbol bit y 3 has become a strong bit to the next.
  • the fifth symbol bit y 4 and the sixth symbol bit y 5 are weak bits.
  • the LDPC code output from the LDPC encoder 115 includes a code bit that is resistant to errors and a code bit that is vulnerable to errors.
  • the symbol bits of the orthogonal modulation symbols performed by the QAM encoder 117 include strong bits and weak bits.
  • an interleaver for interleaving the code bits of the LDPC code has been proposed in which the code bits vulnerable to errors of the LDPC code are assigned to the strong bits (symbol bits) of the orthogonal modulation symbol.
  • FIG. 18 is a diagram for explaining the processing of the demultiplexer 25 in FIG.
  • a in FIG. 18 shows a functional configuration example of the demultiplexer 25.
  • the demultiplexer 25 includes a memory 31 and a replacement unit 32.
  • the memory 31 is supplied with the LDPC code from the LDPC encoder 115.
  • the memory 31 has a storage capacity for storing mb bits in the row (horizontal) direction and N / (mb) bits in the column (vertical) direction, and the LDPC supplied thereto The sign bit of the code is written in the column direction, read in the row direction, and supplied to the switching unit 32.
  • N information length K + parity length M
  • m represents the number of code bits of an LDPC code that is one symbol
  • b is a predetermined positive integer, which is a multiple used to multiply m by an integer.
  • the demultiplexer 25 uses the sign bit of the LDPC code as a symbol (symbolizes), and the multiple b represents the number of symbols obtained by the demultiplexer 25 by one-time symbolization.
  • FIG. 18A shows a configuration example of the demultiplexer 25 when the modulation scheme is 64QAM. Therefore, the number m of code bits of the LDPC code that is one symbol is 6 bits.
  • the multiple b is 1, and therefore the memory 31 has a storage capacity of N / (6 ⁇ 1) ⁇ (6 ⁇ 1) bits in the column direction ⁇ row direction.
  • the storage area of the memory 31 extending in the column direction and having a 1-bit row direction is hereinafter referred to as a column as appropriate.
  • the code bits of the LDPC code are written from the top to the bottom (column direction) of the columns constituting the memory 31 from the left to the right columns.
  • the sign bit When writing of the sign bit is completed to the bottom of the rightmost column, the sign bit is changed in units of 6 bits (mb bits) in the row direction from the first row of all the columns constituting the memory 31. It is read out and supplied to the replacement unit 32.
  • the exchanging unit 32 performs an exchanging process of exchanging the positions of the 6-bit code bits from the memory 31, and the 6 bits obtained as a result are replaced with 6 symbol bits y 0 , y 1 , y 2 , y representing one symbol of 64QAM. Output as 3 , y 4 , y 5 .
  • mb bits (6 bits in this case) of code bits are read from the memory 31 in the row direction, and the i-th bit from the most significant bit of the mb bits of code bits read from the memory 31 is read out.
  • bit b i the 6-bit code bits read out from the memory 31 in the row direction are bits b 0 , It can be expressed as b 1 , b 2 , b 3 , b 4 , b 5 .
  • the sign bit in the direction of bit b 0 is a sign bit that is resistant to errors in the relationship of the column weights described in FIGS. 12 and 13, and the sign bit in the direction of bit b 5 is a sign that is vulnerable to errors. It is a bit.
  • the 6-bit code bits b 0 to b 5 from the memory 31 are assigned the error-sensitive code bits to the strong bits of the 64QAM 1-symbol symbol bits y 0 to y 5. As shown in the figure, it is possible to perform a replacement process for replacing the positions of the 6-bit code bits b 0 to b 5 from the memory 31.
  • FIG. 18B shows the first replacement method
  • FIG. 18C shows the second replacement method
  • FIG. 18D shows the third replacement method.
  • FIG. 19 shows a case where the modulation scheme is 64QAM (therefore, the number m of code bits of the LDPC code mapped to one symbol is 6 bits as in FIG. 18) and the multiple b is 2.
  • the demultiplexer 25 and a fourth replacement method are shown.
  • FIG. 19A shows the order of writing LDPC codes to the memory 31.
  • the code bits of the LDPC code are written from the upper side to the lower side (column direction) of the columns constituting the memory 31. Is called.
  • the sign bit When the writing of the sign bit is completed to the bottom of the rightmost column, the sign bit is set in units of 12 bits (mb bits) in the row direction from the first row of all the columns constituting the memory 31. It is read out and supplied to the replacement unit 32.
  • the exchanging unit 32 performs an exchanging process of exchanging the positions of the 12-bit code bits from the memory 31 by the fourth exchanging method, and the 12 bits obtained as a result represent 2 symbols (b symbols) of 64QAM. 12 bits, that is, 6 symbol bit y 0 representing a symbol of 64QAM, y 1, y 2, y 3, y 4, and y 5, 6 symbol bits y 0 representing the next one symbol, y 1, y 2 , y 3 , y 4 , y 5
  • B of FIG. 19 shows a fourth replacement method of the replacement processing by the replacement unit 32 of A of FIG.
  • mb code bits are allocated to mb symbol bits of b consecutive symbols.
  • bit (symbol bit) y i the i + 1-th bit from the most significant bit of the mb bits of b consecutive symbols.
  • parity interleaving by the parity interleaver 23 in FIG. 9 will be described with reference to FIGS.
  • FIG. 20 shows (part of) a Tanner graph of a parity check matrix of an LDPC code.
  • variable nodes corresponding code bits
  • all the check nodes are connected to the check node.
  • a message having a probability that the value is 0 and the probability that the value is 1 is returned to the variable node. For this reason, if a plurality of variable nodes connected to the same check node simultaneously become erasures or the like, the decoding performance deteriorates.
  • LDPC encoder 115 of FIG. 8 outputs, LDPC code prescribed in the standard of DVB-T.2 is the IRA code, parity matrix H T of the parity check matrix H, as shown in FIG. 11 It has a staircase structure.
  • FIG. 21 shows a parity matrix H T having a staircase structure and a Tanner graph corresponding to the parity matrix H T.
  • a of FIG. 21 shows a parity matrix H T having a staircase structure
  • B of FIG. 21 shows a Tanner graph corresponding to the parity matrix H T of A of FIG.
  • parity matrix H T has a staircase structure, in each row (except the first row) first element is adjacent. Therefore, in the Tanner graph of the parity matrix H T, the value of the parity matrix H T corresponding to the columns of two adjacent elements are set to 1, the two variable nodes adjacent, connected to the same check node Yes.
  • the parity bits corresponding to the two adjacent variable nodes mentioned above simultaneously become an error due to a burst error, an erasure, or the like, two variable nodes corresponding to the two parity bits in error (using the parity bit). Since the check node connected to the variable node that seeks the message returns the message having the same probability of 0 and 1 to the variable node connected to the check node, the decoding performance is improved. to degrade. When the burst length (the number of parity bits that continuously cause an error) increases, the number of check nodes that return messages with equal probability increases, and the decoding performance further deteriorates.
  • the parity interleaver 23 (FIG. 9) performs parity interleaving for interleaving the parity bits of the LDPC code from the LDPC encoder 115 to the positions of other parity bits in order to prevent the above-described degradation in decoding performance. .
  • Figure 22 illustrates a parity matrix H T of the parity check matrix H corresponding to the LDPC code after parity interleave to the parity interleaver 23 of FIG. 9 is performed.
  • the information matrix H A of the parity check matrix H corresponding to the LDPC code defined in the DVB-T.2 standard and output from the LDPC encoder 115 has a cyclic structure.
  • a cyclic structure is a structure in which a column matches a cyclic shift of another column.For example, for each P column, the position of 1 in each row of the P column is the first of the P column.
  • a structure in which the column is cyclically shifted in the column direction by a value proportional to the value q obtained by dividing the parity length M is also included.
  • the P column in the cyclic structure is referred to as the number of columns in the cyclic structure unit as appropriate.
  • the LDPC code defined in the DVB-T.2 standard includes two types of LDPC codes having a code length N of 64800 bits and 16200 bits.
  • N 64800 bits
  • 16200 bits 16200 bits.
  • the number P of columns in the unit of the cyclic structure is defined as 360 which is one of the divisors excluding 1 and M among the divisors of the parity length M.
  • the parity interleaver 23 sets the information length to K, sets x to an integer between 0 and less than P, and sets y to an integer between 0 and less than q.
  • the K + qx + y + 1-th code bit is interleaved at the position of the K + Py + x + 1-th code bit.
  • the K + qx + y + 1-th code bit and the K + Py + x + 1-th code bit are both the K + 1-th code bit and the subsequent parity bits, and are therefore parity bits. According to interleaving, the position of the parity bit of the LDPC code is moved.
  • variable nodes connected to the same check node are separated by the number of columns P of the cyclic structure unit, that is, 360 bits here, so the burst length is In the case of less than 360 bits, it is possible to avoid a situation in which a plurality of variable nodes connected to the same check node cause an error at the same time, and as a result, it is possible to improve resistance to burst errors.
  • the LDPC code after parity interleaving that interleaves the K + qx + y + 1-th code bit at the position of the K + Py + x + 1-th code bit is K + qx + of the original parity check matrix H.
  • the pseudo cyclic structure means a structure in which a part except a part has a cyclic structure.
  • the parity check matrix obtained by performing column replacement equivalent to parity interleaving on the parity check matrix of the LDPC code specified in the DVB-T.2 standard is a 360-row x 360-column portion at the right corner.
  • the shift matrix there is only one element of 1 (it is an element of 0), and in that respect, it is not a (complete) cyclic structure but a pseudo cyclic structure.
  • the conversion check matrix in FIG. 22 replaces rows so that the conversion check matrix is configured with a configuration matrix described later. (Row replacement) is also applied to the matrix.
  • LDPC 8 transmits one or more code bits of the LDPC code as one symbol. That is, for example, when 2 bits of code bits are used as one symbol, QPSK is used as a modulation system, for example. When 4 bits of code bits are used as 1 symbol, a modulation system is used. For example, 16QAM is used.
  • LDPC encoder 115 is output, the parity check matrix H of an LDPC code prescribed in the standard of DVB-T.2, the information matrix H A has a cyclic structure and the parity matrix H T is Has a staircase structure.
  • a cyclic structure (more precisely, a pseudo cyclic structure as described above) also appears in the parity matrix.
  • FIG. 23 shows a conversion check matrix
  • a in FIG. 23 shows a conversion parity check matrix of a parity check matrix H of an LDPC code having a code length N of 64,800 bits and a coding rate (r) of 3/4.
  • FIG. 23B shows processing performed by the demultiplexer 25 (FIG. 9) for the LDPC code of the conversion parity check matrix of FIG. 23A, that is, the LDPC code after parity interleaving.
  • the modulation method is 16QAM, and the code bits of the LDPC code after parity interleaving are written in the column direction in the four columns constituting the memory 31 of the demultiplexer 25.
  • the sign bit written in the column direction in the four columns constituting the memory 31 is read out in units of 4 bits in the row direction to become one symbol.
  • 4-bit code bits B 0 , B 1 , B 2 , and B 3 that are one symbol are code bits corresponding to 1 in any one row of the conversion check matrix of A in FIG.
  • the variable nodes corresponding to the sign bits B 0 , B 1 , B 2 , and B 3 are connected to the same check node.
  • a plurality of code bits corresponding to a plurality of variable nodes connected to the same check node may be one symbol of 16QAM. is there.
  • the column twist interleaver 24 performs a process after parity interleaving from the parity interleaver 23 so that a plurality of code bits corresponding to 1 in any one row of the conversion check matrix are not included in one symbol. Column twist interleaving is performed to interleave the code bits of the LDPC code.
  • FIG. 24 is a diagram for explaining column twist interleaving.
  • FIG. 24 shows the memory 31 of the demultiplexer 25 (FIGS. 18 and 19).
  • the memory 31 stores mb bits in the column (vertical) direction and has a storage capacity for storing N / (mb) bits in the row (horizontal) direction.
  • Consists of The column twist interleaver 24 performs column twist interleaving by controlling the write start position when writing the code bits of the LDPC code in the column direction and reading in the row direction to the memory 31.
  • a plurality of code bits, which are read as one symbol, are read out in the row direction by appropriately changing the write start position at which code bit writing is started for each of a plurality of columns.
  • the sign bit corresponding to 1 in any one row of the conversion parity check matrix is prevented (a plurality of code bits corresponding to 1 in any one row of the parity check matrix are not included in the same symbol.
  • the code bits of the LDPC code are rearranged).
  • the column twist interleaver 24 writes the code bits of the LDPC code from the top to the bottom (column direction) of the four columns constituting the memory 31 (instead of the demultiplexer 25 in FIG. 18) from left to right. Towards the direction column.
  • the column twist interleaver 24 starts from the first row of all the columns constituting the memory 31 in the row direction in units of 4 bits (mb bits).
  • the code bit is read out and output to the switching unit 32 (FIGS. 18 and 19) of the demultiplexer 25 as the LDPC code after column twist interleaving.
  • the address at the top (top) position of each column is 0 and the address at each position in the column direction is expressed as an integer in ascending order
  • the starting position of writing is the position where the address is 0, the second column (from the left) is the starting position of writing, the address is the position 2, and the third column is the starting position of writing.
  • the address is at position 4, and for the fourth column, the write start position is the position at address 7.
  • the writing start position is other than the position where the address is 0
  • the writing start position After writing the sign bit to the lowest position, it returns to the beginning (position where the address is 0), and the writing start position. Writing up to the position immediately before is performed. Thereafter, writing to the next (right) column is performed.
  • FIG. 25 shows the number of columns of the memory 31 required for column twist interleaving and the writing of LDPC codes for 11 coding rates with a code length N of 64,800 as defined in the DVB-T.2 standard. The address of the starting position is shown for each modulation method.
  • the write start position of the first column of the two columns of the memory 31 is the position where the address is 0, and the write start position of the second column is the position where the address is 2.
  • the memory 31 is arranged in the row direction according to FIG. It has 4 columns for storing 2 ⁇ 2 bits and stores 64800 / (2 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the third column The start position of writing in the column is the position where the address is 4
  • the start position of writing in the fourth column is the position where the address is 7.
  • the multiple b is 2.
  • the memory 31 is arranged in the row direction according to FIG. It has four columns for storing 4 ⁇ 1 bits, and stores 64800 / (4 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the write start position of the second column is the position where the address is 4
  • the write start position of the fourth column is the position where the address is 7.
  • the memory 31 is arranged in the row direction according to FIG. It has 8 columns for storing 4 ⁇ 2 bits and stores 64800 / (4 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 4
  • the start position of the fifth column is the position where the address is 4.
  • the position and the start position of writing in the sixth column are the position where the address is 5
  • the start position of writing in the seventh column is the position where the address is 7, and the starting position of the eighth column is The address is made with 7 positions, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 6 columns for storing 6 ⁇ 1 bits, and stores 64800 / (6 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the first column write position is the address 5 position
  • the fourth column write start position is the address 9 position
  • the fifth column write start position is the address 10.
  • the position and the position at the beginning of writing in the sixth column are the position where the address is 13, respectively.
  • the memory 31 is arranged in the row direction. It has 12 columns for storing 6 ⁇ 2 bits, and stores 64800 / (6 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • 3 The start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the position where the address is 3.
  • the position and the start position of the 6th column are the position where the address is 4, the start position of the 7th column is the position where the address is 4 and the start position of the 8th column is The position where the address is 5 and the start position of writing in the ninth column are the position where the address is 5, and the start position of writing in the 10th column is the position where the address is 7 and the start position of writing in the 11th column The position of is the position of address 8 and the 12th color Position of the writing start is set to the position whose address is 9, are respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 8 columns for storing 8 ⁇ 1 bits and stores 64800 / (8 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 4
  • the start position of the fifth column is the position where the address is 4.
  • the position and the start position of writing in the sixth column are the position where the address is 5
  • the start position of writing in the seventh column is the position where the address is 7, and the starting position of the eighth column is The address is made with 7 positions, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 16 columns for storing 8 ⁇ 2 bits, and stores 64800 / (8 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the address where the address is 2.
  • the position and the start position of writing the sixth column are the position where the address is 3
  • the start position of the seventh column is the position where the address is 7
  • the start position of the eighth column is
  • the position where the address is 15 and the start position of the 9th column are the position where the address is 16 and the start position where the 10th column is written are the position where the address is 20 and the start position of the 11th column.
  • the positions of the address 22 and the 12th The start position of the program is the position where the address is 22, the start position of the 13th column is the position where the address is 27, and the start position of the 14th column is the position where the address is 27.
  • the write start position of the 15th column is the position where the address is 28, and the write start position of the 16th column is the position where the address is 32.
  • the memory 31 is arranged in the row direction according to FIG. It has 10 columns for storing 10 ⁇ 1 bits, and stores 64800 / (10 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 3 position
  • the first column write position is the address 6 position
  • the fourth column write start position is the address 8 position
  • the fifth column start position is the address 11
  • the position and the start position of the 6th column are the position of the address 13
  • the start position of the 7th column is the position of the address 15
  • the start position of the 8th column is The address 17 position, the 9th column write start position, the address 18 position, and the 10th column write start position, the address 20 position, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 20 columns for storing 10 ⁇ 2 bits and stores 64800 / (10 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 1 position
  • the start position of the second column is the position where the address is 3
  • the start position of the fourth column is the position where the address is 4
  • the start position of the fifth column is the position where the address is 5.
  • the position and the start position of writing in the sixth column are the position where the address is 6
  • the start position of writing in the seventh column is the position where the address is 6
  • the starting position of the eighth column is
  • the position where the address is 9 and the start position of writing the ninth column are the position where the address is 13, and the start position of writing the tenth column is the position where the address is 14 and the start of writing the eleventh column.
  • the position of is the position of address 14 and the 12th
  • the start position of the program is the position where the address is 16, the start position of the 13th column is the position where the address is 21, and the start position of the 14th column is the position where the address is 21.
  • the 15th column write start position is the address 23
  • the 16th column write start position is the address 25 position
  • the 17th column write start position is the address
  • the 25th position and the 18th column start position are the address 26
  • the 19th column start position are the address 28 and the 20th column start position. Is addressed with 30 positions, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 12 columns for storing 12 ⁇ 1 bits, and stores 64800 / (12 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • 3 The start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the position where the address is 3.
  • the position and the start position of the 6th column are the position where the address is 4, the start position of the 7th column is the position where the address is 4 and the start position of the 8th column is The position where the address is 5 and the start position of writing in the ninth column are the position where the address is 5, and the start position of writing in the 10th column is the position where the address is 7 and the start position of writing in the 11th column The position of is the position of address 8 and the 12th color Position of the writing start is set to the position whose address is 9, are respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 24 columns for storing 12 ⁇ 2 bits, and stores 64800 / (12 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 5 position
  • the start position of the second column is the position where the address is 8
  • the start position of the fourth column is the position where the address is 8
  • the start position of the fifth column is the position where the address is 8.
  • the position and the writing start position of the sixth column are the position where the address is 8
  • the writing start position of the seventh column is the position of the address 10
  • the writing start position of the eighth column is
  • the position where the address is 10 and the start position of the 9th column are the position where the address is 10 and the start position where the 10th column is written are the position where the address is 12 and the start position of the 11th column.
  • the position of is the position of address 13 and the 12th
  • the starting position of the ram writing is the position of address 16, the starting position of the 13th column is the position of address 17, the starting position of the 14th column is the position of address 19
  • the 15th column write start position is the address 21 position
  • the 16th column write start position is the address 22 position
  • the 17th column write start position is the address
  • the position of 23 and the start position of writing of the 18th column are the position of address 26
  • the start position of writing of the 19th column is the position of address 37 and the start position of writing of the 20th column.
  • the position of the address 39 and the start position of the 21st column are the position of the address 40 and the start position of the 22nd column is the position of the address 41 and the position of the 23rd column.
  • the address at the beginning of writing is 41 Position and, writing starting the 24th column position is set to the position whose address is 41, are respectively.
  • FIG. 26 shows the number of columns of the memory 31 required for column twist interleaving and the writing for each LDPC code of 10 coding rates defined in the DVB-T.2 standard and having a code length N of 16200. The address of the starting position is shown for each modulation method.
  • the memory 31 is arranged in the row direction according to FIG. It has two columns that store 2 ⁇ 1 bits and stores 16200 / (2 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position. Is done.
  • the memory 31 is arranged in the row direction according to FIG. It has four columns for storing 2 ⁇ 2 bits, and stores 16200 / (2 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the writing start position of the second column is the position where the address is 3
  • the writing start position of the fourth column is the position where the address is 3.
  • the memory 31 is arranged in the row direction according to FIG. It has four columns for storing 4 ⁇ 1 bits, and stores 16200 / (4 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the writing start position of the second column is the position where the address is 3
  • the writing start position of the fourth column is the position where the address is 3.
  • the memory 31 is arranged in the row direction according to FIG. It has 8 columns that store 4 ⁇ 2 bits, and stores 16200 / (4 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the first column write start position is the address 0
  • the fourth column write start position is the address 1 position
  • the fifth column write start position is the address 7.
  • the position and the start position of writing the sixth column are the position where the address is 20, the start position of the seventh column is the position where the address is 20, and the start position of the eighth column is Addresses are made with 21 positions, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 6 columns for storing 6 ⁇ 1 bits, and stores 16200 / (6 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 3
  • the start position of the fifth column is the position where the address is 7.
  • the position and the position at the beginning of writing in the sixth column are set to the position where the address is 7, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 12 columns for storing 6 ⁇ 2 bits, and stores 16200 / (6 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 0
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the position where the address is 2.
  • the position of the start position of the 6th column is the position where the address is 2
  • the start position of the 7th column is the position of the address 3
  • the start position of the 8th column is
  • the position where the address is 3 and the start position of the 9th column are the position where the address is 3 and the start position of the 10th column is the position where the address is 6 and the start of writing the 11th column.
  • the position of is the position of address 7 and the 12th color Position of the writing start is set to the position whose address is 7, are respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 8 columns for storing 8 ⁇ 1 bits, and stores 16200 / (8 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the first column write start position is the address 0
  • the fourth column write start position is the address 1 position
  • the fifth column write start position is the address 7.
  • the position and the start position of writing the sixth column are the position where the address is 20, the start position of the seventh column is the position where the address is 20, and the start position of the eighth column is Addresses are made with 21 positions, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 10 columns for storing 10 ⁇ 1 bits, and stores 16200 / (10 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 1 position
  • the start position of the second column is the position where the address is 2
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the position where the address is 3.
  • the position of the start position of the 6th column is the position where the address is 3
  • the start position of the 7th column is the position of the address 4
  • the start position of the 8th column is The address 4 position, the 9th column write start position, the address 5 position, and the 10th column write start position are the address 7 position, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 20 columns for storing 10 ⁇ 2 bits, and stores 16200 / (10 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 0
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the position where the address is 2.
  • the position and the start position of writing in the sixth column are the position where the address is 2
  • the start position of writing in the seventh column is the position of address 2
  • the starting position of the eighth column is
  • the position where the address is 2 and the start position of writing the ninth column are the position where the address is 5,
  • the start position of writing the tenth column is the position where the address is 5 and the start of writing the eleventh column.
  • the position of is the position of address 5 and the 12th color
  • the writing start position is the position where the address is 5
  • the writing start position of the 13th column is the position where the address is 5
  • the writing start position of the 14th column is the position where the address is 7
  • the write start position of the 15th column is the position where the address is 7
  • the write start position of the 16th column is the position of address 7
  • the write start position of the 17th column is address 7
  • the position of the 18th column and the start position of the 18th column are the position where the address is 8
  • the start position of the 19th column is the position of the address 8 and the start position of the 20th column is ,
  • the address is 10 positions, respectively.
  • the memory 31 is arranged in the row direction. It has 12 columns for storing 12 ⁇ 1 bits, and stores 16200 / (12 ⁇ 1) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 0
  • the start position of the fourth column is the position where the address is 2
  • the start position of the fifth column is the position where the address is 2.
  • the position of the start position of the 6th column is the position where the address is 2
  • the start position of the 7th column is the position of the address 3
  • the start position of the 8th column is
  • the position where the address is 3 and the start position of the 9th column are the position where the address is 3 and the start position of the 10th column is the position where the address is 6 and the start of writing the 11th column.
  • the position of is the position of address 7 and the 12th color Position of the writing start is set to the position whose address is 7, are respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 24 columns for storing 12 ⁇ 2 bits, and stores 16200 / (12 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the second column is the position where the address is 0
  • the start position of the fourth column is the position where the address is 0
  • the start position of the fifth column is the position where the address is 0.
  • the position of the start position of the 6th column is the position where the address is 0
  • the start position of the 7th column is the position where the address is 0,
  • the start position of the 8th column is
  • the position where the address is 1 and the start position of writing the ninth column are the position where the address is 1, and the start position of writing the tenth column is the position where the address is 1 and the start of writing the eleventh column.
  • the position of is the position of address 2 and the 12th color
  • the write start position is the position where the address is 2
  • the write start position of the 13th column is the position where the address is 2
  • the write start position of the 14th column is the position where the address is 3
  • the write start position of the 15th column is the position where the address is 7
  • the write start position of the 16th column is the position of address 9
  • the write start position of the 17th column is the address 9
  • the 18th column write start position are the address 9 position
  • the 19th column write start position are the address 10 position
  • the 20th column write start position are
  • the first position is the position where the address is 10.
  • the writing starting position for the 24th column is set to the position whose address is 11, are respectively.
  • FIG. 27 is a flowchart for explaining processing performed by the LDPC encoder 115, the bit interleaver 116, and the QAM encoder 117 of FIG.
  • the LDPC encoder 115 waits for the LDPC target data to be supplied from the BCH encoder 114, encodes the LDPC target data into an LDPC code in step S101, and supplies the LDPC code to the bit interleaver 116. The process proceeds to step S102.
  • step S102 the bit interleaver 116 performs bit interleaving on the LDPC code from the LDPC encoder 115, supplies a symbol obtained by symbolizing the LDPC code after the bit interleaving to the QAM encoder 117, and performs processing.
  • the process proceeds to step S103.
  • the parity interleaver 23 performs parity interleaving for the LDPC code from the LDPC encoder 115, and converts the LDPC code after the parity interleaving into the column twist interleave. Supplied to Lever 24.
  • the column twist interleaver 24 performs column twist interleaving on the LDPC code from the parity interleaver 23 and supplies it to the demultiplexer 25.
  • the demultiplexer 25 replaces the code bits of the LDPC code after the column twist interleaving by the column twist interleaver 24, and performs a replacement process using the replaced code bits as symbol bits (symbol bits) of the symbols.
  • the replacement process by the demultiplexer 25 can be performed according to the first to fourth replacement methods shown in FIGS. 18 and 19 and according to the allocation rule.
  • the allocation rule is a rule for allocating a code bit of an LDPC code to a symbol bit representing a symbol, and details thereof will be described later.
  • the symbol obtained by the replacement process by the demultiplexer 25 is supplied from the demultiplexer 25 to the QAM encoder 117.
  • step S103 the QAM encoder 117 maps the symbol from the demultiplexer 25 to a signal point determined by the modulation method of the orthogonal modulation performed by the QAM encoder 117 and performs orthogonal modulation, and the resulting data is converted into a time interleaver. 118.
  • the parity interleaver 23 that is a block that performs parity interleaving and the column twist interleaver 24 that is a block that performs column twist interleaving are configured separately.
  • the parity interleaver 23 and the column twist interleaver 24 can be integrally configured.
  • both parity interleaving and column twist interleaving can be performed by writing and reading code bits to and from the memory, and an address (write address) for writing code bits is an address for reading code bits. It can be represented by a matrix to be converted into (read address).
  • parity interleaving is performed by converting the sign bit by the matrix, and further, the parity.
  • the result of column twist interleaving of the interleaved LDPC code can be obtained.
  • the demultiplexer 25 can also be configured integrally.
  • the replacement process performed by the demultiplexer 25 can also be represented by a matrix that converts the write address of the memory 31 that stores the LDPC code into a read address.
  • parity interleaving, column twist interleaving, and replacement processing are performed according to the matrix. Can be performed collectively.
  • parity interleaving and column twist interleaving can be performed, or neither can be performed.
  • the simulation was performed using a communication path with flutter with a D / U of 0 dB.
  • FIG. 28 shows a model of the communication path adopted in the simulation.
  • a in FIG. 28 shows a flutter model employed in the simulation.
  • 28B shows a model of a communication path with flutter represented by the model of A in FIG.
  • H represents the flutter model of A in FIG.
  • N represents ICI (Inter Carrier Interference).
  • E [N 2 ] of the power is approximated by AWGN.
  • an error rate obtained by the simulation shows the relationship between the Doppler frequency f d of the flutter.
  • FIG. 29 shows the relationship between the error rate and the Doppler frequency f d when the modulation method is 16QAM, the coding rate (r) is (3/4), and the replacement method is the first replacement method.
  • FIG. 30 shows the relationship between the error rate and the Doppler frequency f d when the modulation method is 64QAM, the coding rate (r) is (5/6), and the replacement method is the first replacement method. Show.
  • the thick line indicates the relationship between the error rate and the Doppler frequency f d when the parity interleaving, the column twist interleaving, and the replacement process are all performed
  • the thin line indicates the parity. interleave, column twist interleave and of the replacement process, in the case of performing only the replacement process, shows the relationship between the error rate and the Doppler frequency f d.
  • the error rate is improved (smaller) when parity interleaving, column twist interleaving, and replacement processing are all performed than when only replacement processing is performed. I understand that.
  • FIG. 31 is a block diagram showing a configuration example of the LDPC encoder 115 of FIG.
  • LDPC encoder 122 of FIG. 8 is similarly configured.
  • the DVB-T.2 standard defines LDPC codes with two code lengths N of 64800 bits and 16200 bits.
  • LDPC codes having a code length N of 64,800 bits eleven coding rates 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4 / 5, 5/6, 8/9, and 9/10 are defined, and for LDPC codes with a code length N of 16200 bits, 10 coding rates 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, and 8/9 are defined (FIGS. 12 and 13).
  • the LDPC encoder 115 performs encoding (error correction coding) using an LDPC code having a code length N of 64,800 bits or 16200 bits for each code length N and each code rate. This can be performed according to the prepared check matrix H.
  • the LDPC encoder 115 includes an encoding processing unit 601 and a storage unit 602.
  • the encoding processing unit 601 includes an encoding rate setting unit 611, an initial value table reading unit 612, a parity check matrix generation unit 613, an information bit reading unit 614, an encoded parity calculation unit 615, and a control unit 616, and an LDPC encoder
  • the LDPC encoding of the LDPC target data supplied to 115 is performed, and the resulting LDPC code is supplied to the bit interleaver 116 (FIG. 8).
  • the coding rate setting unit 611 sets the code length N and coding rate of the LDPC code in accordance with, for example, an operator's operation.
  • the initial value table reading unit 612 reads a parity check matrix initial value table, which will be described later, corresponding to the code length N and the coding rate set by the coding rate setting unit 611 from the storage unit 602.
  • the information bit reading unit 614 reads (extracts) information bits for the information length K from the LDPC target data supplied to the LDPC encoder 115.
  • the encoded parity calculation unit 615 reads the parity check matrix H generated by the parity check matrix generation unit 613 from the storage unit 602, and uses the parity check matrix H to calculate a parity bit for the information bits read by the information bit reading unit 614, A codeword (LDPC code) is generated by calculating based on the formula.
  • LDPC code LDPC code
  • the control unit 616 controls each block constituting the encoding processing unit 601.
  • the storage unit 602 stores, for example, a plurality of parity check matrix initial value tables corresponding to a plurality of coding rates and the like shown in FIGS. 12 and 13 for code lengths N such as 64800 bits and 16200 bits, respectively. Has been.
  • the storage unit 602 temporarily stores data necessary for the processing of the encoding processing unit 601.
  • FIG. 32 is a flowchart for explaining processing of the LDPC encoder 115 of FIG.
  • step S201 the coding rate setting unit 611 determines (sets) a code length N and a coding rate r for performing LDPC coding.
  • step S202 the initial value table reading unit 612 reads, from the storage unit 602, a predetermined parity check matrix initial value table corresponding to the code length N and the coding rate r determined by the coding rate setting unit 611. .
  • the parity check matrix generation unit 613 uses the parity check matrix initial value table read from the storage unit 602 by the initial value table reading unit 612, and the code length N and the coding rate determined by the coding rate setting unit 611.
  • the parity check matrix H of the LDPC code of r is obtained (generated), supplied to the storage unit 602 and stored.
  • step S205 the encoded parity calculation unit 615 sequentially calculates the parity bits of the codeword c that satisfies Expression (8).
  • c represents a row vector as a code word (LDPC code), and c T represents transposition of the row vector c.
  • the information bit portion is represented by the row vector A and the parity bit portion is represented by the row vector T.
  • step S206 the control unit 616 determines whether or not to end LDPC encoding. If it is determined in step S206 that the LDPC encoding is not terminated, that is, for example, if there is still LDPC target data to be LDPC encoded, the process returns to step S201 (or step S204). The processing from S201 (or step S204) to S206 is repeated.
  • step S206 If it is determined in step S206 that the LDPC encoding is to be ended, that is, for example, if there is no LDPC target data to be LDPC encoded, the LDPC encoder 115 ends the processing.
  • a parity check matrix initial value table corresponding to each code length N and each coding rate r is prepared, and the LDPC encoder 115 has a predetermined code length N and a predetermined coding rate r.
  • LDPC encoding is performed using a parity check matrix H generated from a parity check matrix initial value table corresponding to the predetermined code length N and the predetermined coding rate r.
  • the parity check matrix initial value table includes an information matrix H A corresponding to the code length N of the LDPC code (LDPC code defined by the parity check matrix H) and the information length K of the parity check matrix H (FIG. 10). ) Is a table that represents the position of one element for each 360 columns (number of columns P of cyclic structure units), and is created in advance for each check matrix H of each code length N and each coding rate r.
  • FIG. 33 is a diagram illustrating an example of a parity check matrix initial value table.
  • FIG. 33 shows a parity check matrix initial value table for a parity check matrix H defined in the DVB-T.2 standard and having a code length N of 16200 bits and a coding rate r of 1/4.
  • the parity check matrix generation unit 613 obtains the parity check matrix H using the parity check matrix initial value table as follows.
  • FIG. 34 shows a method for obtaining the parity check matrix H from the parity check matrix initial value table.
  • parity check matrix initial value table in FIG. 34 is the parity check matrix initial value for the parity check matrix H defined in the DVB-T.2 standard and having a code length N of 16200 bits and a code rate r of 2/3. Shows the table.
  • the parity check matrix initial value table indicates the position of one element of the information matrix H A (FIG. 10) corresponding to the information length K corresponding to the code length N of the LDPC code and the coding rate r, as 360 columns.
  • This is a table expressed for each (number of columns P of the unit of the cyclic structure), and in the i-th row, the row number of the 1 element of the 1 + 360 ⁇ (i ⁇ 1) -th column of the check matrix H (check matrix H (The row number where the row number of the first row is 0) is arranged by the number of column weights of the 1 + 360 ⁇ (i ⁇ 1) th column.
  • the number of rows k + 1 in the parity check matrix initial value table differs depending on the information length K.
  • Equation (9) The relationship of Equation (9) is established between the information length K and the number k + 1 of rows in the parity check matrix initial value table.
  • 360 in equation (9) is the number of columns P of the unit of the cyclic structure described in FIG.
  • the column weights of the parity check matrix H obtained from the parity check matrix initial value table of FIG. 34 are 13 from the first column to the 1 + 360 ⁇ (3-1) ⁇ 1 column, and 1 + 360 ⁇ (3-1) It is 3 from the column to the Kth column.
  • the first row of the parity check matrix initial value table in FIG. 34 is 0,2084,1613,1548,1286,1460,3196,4297,2481,3369,3451,4620,2622, which is the parity check matrix H
  • the row number is 0,2084,1613,1548,1286,1460,3196,4297,2481,3369,3451,4620,2622
  • the element of the row is 1 (and other elements) Is 0).
  • 34 is 1,122,1516,3448,2880,1407,1847,3799,3529,373,971,4358,3108, which is 361 of the parity check matrix H.
  • the row number is 1,122,1516,3448,2880,1407,1847,3799,3529,373,971,4358,3108, indicating that the element is 1 ing.
  • the parity check matrix initial value table represents the position of one element of the information matrix HA of the parity check matrix H for every 360 columns.
  • the numerical value of the i-th row (i-th from the top) and j-th column (j-th from the left) of the parity check matrix initial value table is represented as h i, j and j items in the w-th column of the parity check matrix H. If the row number of the first element is represented as H wj , the row number H of the first element in the w column, which is a column other than the 1 + 360 ⁇ (i ⁇ 1) column of the parity check matrix H wj can be obtained by Expression (10).
  • mod (x, y) means the remainder of dividing x by y.
  • P is the number of columns of the unit of the cyclic structure described above, and is 360, for example, as described above in the DVB-T.2 standard.
  • the parity check matrix generation unit 613 (FIG. 31) specifies the row number of the 1 element in the 1 + 360 ⁇ (i ⁇ 1) column of the parity check matrix H using the parity check matrix initial value table.
  • the parity check matrix generation unit 613 calculates the row number H wj of the first element of the w column that is a column other than the 1 + 360 ⁇ (i ⁇ 1) column of the parity check matrix H by the formula ( 10) to generate a parity check matrix H in which the element of the row number obtained as described above is 1.
  • LDPC codes with a code length N of 64k bits and 16k bits are defined, but LDPC codes with shorter code lengths are not defined.
  • the LDPC code with a short code length can reduce the memory and delay required when decoding the LDPC code, compared with the LDPC code with a long code length, in digital broadcasting for mobile terminals, May be effective.
  • an LDPC code having a code length shorter than the LDPC code (code length N is 64 kbit and 16 kbit LDPC code) stipulated in DVB-T.2 is used for portable terminals.
  • Digital broadcasting for portable terminals can be performed using the LDPC code for digital broadcasting (hereinafter also referred to as portable LDPC code).
  • parity check matrix H is the same as for LDPC codes specified in DVB-T.2, from the viewpoint of maintaining compatibility with DVB-T.2 as much as possible.
  • the matrix H T has a staircase structure (FIG. 11).
  • the information matrix HA of the parity check matrix H has a cyclic structure, and the number of columns P of the cyclic structure unit is 360 as in the LDPC code defined in DVB-T.2.
  • the code length N of the portable LDPC code is shorter than the LDPC code specified in DVB-T.2, and is cyclic (similar to the LDPC code specified in DVB-T.2).
  • 4320 bits hereinafter also referred to as 4k bits, which is a multiple of the number of columns P of the unit of the structure, is adopted.
  • 35 to 43 are diagrams showing examples of the parity check matrix initial value table of the LDPC code (portable) having a code length N of 4k bits as described above.
  • FIG. 35 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a coding rate r of 1/4.
  • FIG. 36 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 1/3.
  • FIG. 37 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 5/12.
  • FIG. 38 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 1/2.
  • FIG. 39 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a coding rate r of 7/12.
  • FIG. 40 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 2/3.
  • FIG. 41 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 3/4.
  • FIG. 43 illustrates a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and an encoding rate r of 11/12.
  • the LDPC encoder 115 uses a parity check matrix H obtained from the parity check matrix initial value table shown in FIGS. 35 to 43 for digital broadcasting for mobile terminals, and a code length N is 4k bits.
  • the coding rate r is 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, 3/4, 5/6, and 11/12 Encode to any LDPC code.
  • the LDPC code obtained by using the parity check matrix H obtained from the parity check matrix initial value table of FIG. 35 to FIG. 43 is a high-performance LDPC code.
  • a high-performance LDPC code is an LDPC code obtained from an appropriate check matrix H.
  • an appropriate parity check matrix H is an LDPC code obtained from the parity check matrix H with a low E s / N 0 (signal power to noise power ratio per symbol) or E b / N o (per bit). This is a parity check matrix that satisfies a predetermined condition for making BER (Bit Error Rate) smaller when transmitted at a signal power to noise power ratio.
  • An appropriate parity check matrix H can be obtained, for example, by performing a simulation for measuring the BER when LDPC codes obtained from various parity check matrices satisfying a predetermined condition are transmitted at low E s / N o .
  • the predetermined conditions that the appropriate check matrix H should satisfy are, for example, that the analysis result obtained by the code performance analysis method called “Density Evolution” is good, There are no loops, etc.
  • the predetermined condition to be satisfied by the appropriate parity check matrix H can be determined as appropriate from the viewpoints of improving the decoding performance of the LDPC code, facilitating (simplifying) the decoding process of the LDPC code, and the like.
  • 44 and 45 are diagrams for explaining density evolution in which an analysis result as a predetermined condition to be satisfied by an appropriate check matrix H is obtained.
  • Density evolution is a code analysis method that calculates the expected value of the error probability for the entire LDPC code (ensemble) with a code length N of ⁇ characterized by a degree sequence described later. It is.
  • the noise variance when the noise variance is increased from 0, the expected value of the error probability of a certain ensemble is initially 0, but the noise variance is greater than a certain threshold. Then, it is not 0.
  • the expected value of the error probability is not zero, and the threshold of noise variance (hereinafter also referred to as performance threshold) is compared to determine whether the ensemble performance (appropriateness of the check matrix) is good or bad. Can be decided.
  • performance threshold the threshold of noise variance
  • a high-performance LDPC code can be found among the LDPC codes belonging to the ensemble.
  • the above-described degree sequence represents the ratio of variable nodes and check nodes having weights of each value to the code length N of the LDPC code.
  • a regular (3,6) LDPC code with a coding rate of 1/2 is a degree in which the weights (column weights) of all variable nodes are 3 and the weights (row weights) of all check nodes are 6. Belongs to an ensemble characterized by a sequence.
  • FIG. 44 shows a Tanner graph of such an ensemble.
  • Each variable node is connected with three edges equal to the column weight, and therefore there are only 3N branches connected to the N variable nodes.
  • each check node is connected with 6 branches equal to the row weight, and therefore there are only 3N branches connected to N / 2 check nodes.
  • the interleaver randomly reorders 3N branches connected to N variable nodes, and reorders each of the rearranged branches into 3N branches connected to N / 2 check nodes. Connect to one of them.
  • the interleaver through which the branch connected to the variable node and the branch connected to the check node pass is divided into multiple (multi edge), which makes it possible to further characterize the ensemble. Strictly done.
  • FIG. 45 shows an example of a multi-edge type ensemble Tanner graph.
  • the Tanner graph of FIG. 45 there are two branches connected to the first interleaver, c1 check nodes with 0 branches connected to the second interleaver, and two branches connected to the first interleaver.
  • the number of branches connected to the second interleaver is c2 check nodes, the number of branches connected to the first interleaver is 0, and the number of branches connected to the second interleaver is c3. Exists.
  • the performance threshold value is E b / N 0 where the BER begins to drop (becomes smaller) due to multi-edge type density evolution. Finds an ensemble that falls below the specified value, and from among the LDPC codes belonging to that ensemble, the performance of an LDPC code that reduces BER in multiple modulation schemes used in digital broadcasting for mobile terminals, such as 16QAM and 64QAM, Selected as a good LDPC code.
  • a modulation method with a relatively small number of signal points such as QPSK, 16QAM, and 64QAM, is adopted.
  • 35 to 43 described above are parity check matrix initial value tables of LDPC codes having a code length N of 4k bits obtained by the above simulation.
  • the code length N of FIGS. 35 to 43 is 4k bits, and the coding rate r is 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, 3 /. It is a figure which shows the minimum cycle length and performance threshold value of the parity check matrix H calculated
  • the minimum cycle length of the parity check matrix H whose coding rate r is 1/4 and 1/3 is 8 cycles.
  • the minimum cycle length of the parity check matrix H with r 5/12, 1/2, 7/12, 2/3, 3/4, 5/6, and 11/12 is 6 cycles.
  • the performance threshold increases (becomes smaller) as the encoding rate r decreases.
  • FIGS. 35 to 43 are diagrams for explaining a check matrix H (which is also referred to as a check matrix H of a portable LDPC code hereinafter) in FIGS. 35 to 43 (obtained from the check matrix initial value table).
  • H which is also referred to as a check matrix H of a portable LDPC code hereinafter
  • the column weight is X
  • the column weight is Y for the subsequent KY column
  • the column weight is M for the subsequent M-1 column.
  • the column weight is 1, respectively.
  • parity check matrix H of a portable LDPC code having a code length N of 4k As in the parity check matrix defined in DVB-T.2 described in FIGS.
  • the column weight tends to be large, and therefore, the first code bit of the portable LDPC code tends to be more resistant to errors (resistant to errors).
  • LDPC encoder 115 when performing LDPC encoding to a portable LDPC code using parity check matrix H (determined from the parity check matrix initial value table) shown in FIGS.
  • parity check matrix H determined from the parity check matrix initial value table shown in FIGS.
  • the write start position of each column (FIG. 24) of the memory 31 is defined in DVB-T.2. This is different from the writing start position in the case of the existing LDPC code (FIGS. 25 and 26).
  • FIG. 49 is a diagram showing the number of columns of the memory 31 necessary for column twist interleaving and the address of the writing start position for the portable LDPC code.
  • the code length N of FIGS. 35 to 43 is 4k bits
  • the coding rate r is 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, Number of columns in memory 31 required for column twist interleaving for 9 types of portable LDPC codes (obtained from parity check matrix H obtained from parity check matrix initial value table) of 9/4, 5/6, and 11/12
  • the address of the writing start position are shown for each modulation method.
  • QPSK QPSK
  • 16QAM 16QAM
  • 64QAM 64QAM
  • the write start position of the first column is the position where the address is 0, and the write start position of the second column is the position where the address is 2. Is done.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • 3 The write start position of the second column is the position where the address is 1
  • the write start position of the fourth column is the position where the address is 0.
  • the writing start position of each of the four columns of the memory 31 is the same as when the multiple b is 2 and QPSK is adopted as the modulation method.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the write start position of the second column is the position where the address is 1
  • the write start position of the fourth column is the position where the address is 0.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 8 position
  • the first column write position is the address 10 position
  • the fourth column write start position is the address 10 position
  • the fifth column write start position is the address 25.
  • the position and the start position of writing the sixth column are the position where the address is 54
  • the start position of the seventh column is the position where the address is 62
  • the start position of the eighth column is Each address is made 69 positions.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 0 position
  • the start position of the first column is the position where the address is 1
  • the start position of the fourth column is the position where the address is 1
  • the start position of the fifth column is the address where the address is 0.
  • the position and the position at the beginning of writing in the sixth column are set as the position where the address is 0, respectively.
  • the memory 31 is arranged in the row direction according to FIG. It has 12 columns for storing 6 ⁇ 2 bits, and stores 4320 / (6 ⁇ 2) bits in the column direction.
  • the first column write start position is the address 0 position
  • the second column write start position is the address 2 position
  • the first column write position is the address 10 position
  • the fourth column write start position is the address 12 position
  • the fifth column start position is the address 15
  • the position and the start position of writing in the sixth column are the position where the address is 17,
  • the start position of writing in the seventh column is the position where the address is 20,
  • the starting position of the eighth column is
  • the position of address 21 and the start position of writing the ninth column are the position of address 23 and the start position of the tenth column are the position of address 25 and the start of writing the eleventh column.
  • the position of the address is 26 and the 12th position
  • the writing starting position for the column is set to the position whose address is 30, are respectively.
  • FIG. 50 is a diagram illustrating a BER simulation result when column twist interleaving is performed on a portable LDPC code.
  • the simulation assumes a communication channel (channel) in which Rayleigh fading with an erasure probability of symbol loss of 0.167 is assumed, and a portable LDPC code has a code length N of 4k bits and a coding rate of 2/3 LDPC code (FIG. 40) and QPSK as a modulation method.
  • the horizontal axis represents E s / N 0 (signal power to noise power ratio per symbol), and the vertical axis represents BER.
  • the solid line represents BER when both parity interleaving and column twist interleaving are performed
  • the dotted line represents BER when parity interleaving is performed and column twist interleaving is not performed.
  • a demultiplexer 25 As measures for improving the tolerance to errors, as described above, in addition to a method employing a modulation method with a relatively small number of signal points such as 16QAM and 64QAM, for example, a demultiplexer 25 (FIG. 9). There is a replacement process performed in.
  • the above-described first to fourth replacement methods, DVB-T.2 and the like can be used as the replacement method for replacing the code bits of the LDPC code defined in the DVB-T.2 standard.
  • There is a replacement method defined in the standard but when digital broadcasting for mobile terminals is performed by the above-described LDPC code (portable LDPC code) with a code length N of 4k bits, the code length N is 4k. It is necessary to adopt a replacement process suitable for the LDPC code of bits.
  • the replacement process can be performed according to the assignment rule.
  • the demultiplexer 25 performs a replacement process on the LDPC code defined in DVB-T.2 etc. (hereinafter also referred to as a defined code) in the current method. In this case, the replacement process will be described.
  • FIG. 51 shows an example of replacement processing of the current method when the LDPC code is an LDPC code defined in DVB-T.2 and having a code length N of 64,800 bits and a coding rate of 3/5. Show.
  • a in FIG. 51 is an LDPC code in which the code length N is 64800 bits, the coding rate is 3/5, the modulation method is 16QAM, and the multiple b is 2.
  • An example of the replacement process of the current method is shown.
  • the replacement unit 32 Sign bit b 0 to symbol bit y 7 Sign bit b 1 to symbol bit y 1 Sign bit b 2 to symbol bit y 4 Sign bit b 3 to symbol bit y 2 Sign bit b 4 to symbol bit y 5 Sign bit b 5 to symbol bit y 3 Sign bit b 6 into symbol bit y 6
  • the sign bit b 7 to the symbol bit y 0 Replace each assigned.
  • 51B shows the current scheme when the LDPC code is a defined code with a code length N of 64,800 bits and a coding rate of 3/5, and the modulation scheme is 64QAM and the multiple b is 2. Shows an example of the replacement process.
  • the replacement unit 32 Sign bit b 0 to symbol bit y 11 Sign bit b 1 to symbol bit y 7 Sign bit b 2 to symbol bit y 3 Sign bit b 3 to symbol bit y 10 Sign bit b 4 to symbol bit y 6 Sign bit b 5 to symbol bit y 2 Sign bit b 6 to symbol bit y 9 Sign bit b 7 to symbol bit y 5 Sign bit b 8 to symbol bit y 1 Sign bit b 9 to symbol bit y 8 Sign bit b 10 to symbol bit y 4
  • the sign bit b 11 to the symbol bit y 0 Replace each assigned.
  • 51C shows the current scheme when the LDPC code is a defined code with a code length N of 64,800 bits and a coding rate of 3/5, and the modulation scheme is 256QAM and the multiple b is 2. Shows an example of the replacement process.
  • the replacement unit 32 Sign bit b 0 to symbol bit y 15 Sign bit b 1 to symbol bit y 1 Sign bit b 2 into symbol bit y 13 Sign bit b 3 to symbol bit y 3 Sign bit b 4 to symbol bit y 8 Sign bit b 5 to symbol bit y 11 Sign bit b 6 to symbol bit y 9 Sign bit b 7 to symbol bit y 5 Sign bit b 8 to symbol bit y 10 Sign bit b 9 to symbol bit y 6 Sign bit b 10 to symbol bit y 4 Sign bit b 11 to symbol bit y 7 Sign bit b 12 into symbol bit y 12 The sign bit b 13 into the symbol bit y 2 Sign bit b 14 into symbol bit y 14 The sign bit b 15 to the symbol bit y 0 Replace each assigned.
  • FIG. 52 shows an example of the replacement process of the current method when the LDPC code is a defined code with a code length N of 16200 bits and a coding rate of 3/5.
  • a in FIG. 52 is an LDPC code in which the LDPC code is an LDPC code having a code length N of 16200 bits and a coding rate of 3/5, and further, the modulation scheme is 16QAM and the multiple b is 2.
  • the replacement process of the current method is shown.
  • the replacement unit 32 performs replacement to assign the code bits b 0 to b 7 to the symbol bits y 0 to y 7 as in the case of A in FIG.
  • 52B shows an LDPC code in which the code length N is 16200 bits, the code rate is 3/5, the code is 3/5, the modulation method is 64QAM, and the multiple b is 2. Shows an example of the replacement process.
  • the replacement unit 32 performs the replacement for assigning the code bits b 0 to b 11 to the symbol bits y 0 to y 11 as in the case of B in FIG. 51 described above.
  • 52C shows an LDPC code in which the code length N is 16200 bits and the coding rate is 3/5, the modulation method is 256QAM, and the multiple b is 1. An example of a replacement process is shown.
  • the replacement unit 32 Sign bit b 0 to symbol bit y 7 Sign bit b 1 to symbol bit y 3 Sign bit b 2 to symbol bit y 1 Sign bit b 3 to symbol bit y 5 Sign bit b 4 to symbol bit y 2 Sign bit b 5 to symbol bit y 6 Sign bit b 6 to symbol bit y 4
  • the sign bit b 7 to the symbol bit y 0 Replace each assigned.
  • modulation schemes such as QPSK with fewer signal points, 16QAM, 64QAM, etc. are adopted.
  • each of the modulation schemes is 16QAM and 64QAM. The new replacement method will be described.
  • the modulation method is QPSK
  • the 2-bit symbol bits y 0 and y 1 representing the four symbols (signal points) of QPSK do not have superiority or inferiority to the error described with reference to FIGS. Therefore, it is not necessary to perform the replacement process (the resistance to errors does not change even if the replacement process is performed).
  • 53 to 55 are diagrams for explaining the new replacement method.
  • the replacement unit 32 of the demultiplexer 25 performs replacement of the mb bit code bits according to a predetermined allocation rule.
  • Allocation rules are rules for allocating code bits of LDPC codes to symbol bits.
  • a group set that is a combination of a code bit group of a code bit and a symbol bit group of a symbol bit to which a code bit of the code bit group is allocated, and each of the code bit group and the symbol bit group of the group set.
  • the number of code bits and the number of symbol bits (hereinafter also referred to as the number of group bits) are defined.
  • the code bit group is a group that groups the code bits according to the error probability
  • the symbol bit group is a group that groups the symbol bits according to the error probability
  • FIG. 53 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/4, and further having a modulation scheme of 64QAM and a multiple b of 2. A group and a symbol bit group are shown.
  • the code bit group Gb # i is a group having a better (smaller) error probability of code bits belonging to the code bit group Gb # i as the suffix #i is smaller.
  • the # i + 1 bit from the most significant bit of the mb code bit read out from the memory 31 in the row direction is also expressed as bit b # i, and mb of consecutive b symbols.
  • the # i + 1 bit from the most significant bit of the bit symbols is also expressed as bit y # i.
  • the sign bit group Gb1 includes the sign bit b0
  • the sign bit group Gb2 includes the sign bits b1 and b2
  • the sign bit group Gb3 includes the sign bits b3, b4, b5, b6, b7. , b8, b9, b10, b11 belong respectively.
  • the symbol bit group Gy # i is a group having a better error probability of the symbol bits belonging to the symbol bit group Gy # i as the suffix #i is smaller.
  • symbol bit group Gy1 includes symbol bits y0, y1, y6, and y7
  • symbol bit group Gy2 includes symbol bits y2, y3, y8, and y9
  • symbol bit group Gy3 includes symbols. Bits y4, y5, y10, and y11 belong to each.
  • FIG. 54 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/4, and further, the modulation method is 64QAM and the multiple b is 2. Is shown.
  • the combination of the sign bit group Gb1 and the symbol bit group Gy3 is defined as one group set.
  • the number of group bits of the group set is defined as 1 bit.
  • group set information the group set and the number of group bits are collectively referred to as group set information.
  • group set information the group set of the sign bit group Gb1 and the symbol bit group Gy3 and 1 bit that is the number of group bits of the group set are described as group set information (Gb1, Gy3, 1).
  • group set information (Gb1, Gy3, 1), group set information (Gb2, Gy3, 2), (Gb3, Gy3, 1), (Gb3, Gy2, 4), (Gb3, Gy1,4) is specified.
  • the group set information (Gb1, Gy3, 1) means that one bit of the code bit belonging to the code bit group Gb1 is allocated to one bit of the symbol bit belonging to the symbol bit group Gy3.
  • the code bit group is a group that groups the code bits according to the error probability
  • the symbol bit group is a group that groups the symbol bits according to the error probability. Therefore, it can be said that the allocation rule defines a combination of an error probability of a code bit and an error probability of a symbol bit to which the code bit is allocated.
  • the allocation rule that defines the combination of the error probability of the code bit and the error probability of the symbol bit to which the code bit is assigned is, for example, an error resistance (resistance to noise) by simulation or the like that measures BER. Determined to be better.
  • group set information that minimizes the BER (Bit Error Rate), that is, the sign bit group of the sign bit and the symbol bit group of the symbol bit to which the sign bit of the sign bit group is assigned And the number of sign bits and the number of symbol bits (number of group bits) of each group bit set (group set) and the symbol bit group of the group set are defined as allocation rules.
  • the code bits may be exchanged so that the code bits are assigned to the symbol bits.
  • FIG. 55 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 55 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/4, and the modulation method is 64QAM and the multiple b is 2.
  • 54 shows a first example of code bit replacement according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y11 Sign bit b1 to symbol bit y10, Sign bit b2 to symbol bit y4, Sign bit b3 into symbol bit y5 Sign bit b4 to symbol bit y2 Sign bit b5 to symbol bit y3, Sign bit b6 to symbol bit y8 Sign bit b7 to symbol bit y9, Sign bit b8 to symbol bit y6, Sign bit b9 into symbol bit y7 Sign bit b10 to symbol bit y1 Sign bit b11 to symbol bit y0, Replace each assigned.
  • FIG. 55B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/4, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 54 shows a second example of code bit replacement according to the assignment rule of FIG.
  • the method of allocating the sign bit b # i to the symbol bit y # i shown in A of FIG. 55 and B of FIG. 55 follows the allocation rule of FIG. 54 (observing the allocation rule). ing).
  • FIG. 56 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 1/3, and further having a modulation scheme of 64QAM and a multiple b of 2. A group and a symbol bit group are shown.
  • code bit group Gb1 includes code bit b0
  • code bit group Gb2 includes code bits b1 to b3
  • code bit group Gb3 includes code bits b4 to b11.
  • symbol bit group Gy1 includes symbol bits y0, y1, y6, and y7
  • symbol bit group Gy2 includes symbol bits y2, y3, y8, and y9.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 57 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 1/3, and further, when the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • the group set information (Gb1, Gy1, 1), (Gb2, Gy3, 2), (Gb2, Gy1, 1), (Gb3, Gy3, 2), (Gb3, Gy2, 4), (Gb3, Gy1, 2) is specified.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 2 bits of the code bit group Gb2 having the second highest error probability are allocated to 2 bits of the symbol bit group Gy3 having the third highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • FIG. 58 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 58 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 1/3, and further, the modulation method is 64QAM and the multiple b is 2.
  • 57 shows a first example of exchanging code bits in accordance with the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, The sign bit b1 is changed to the symbol bit y11. Sign bit b2 to symbol bit y1, Sign bit b3 into symbol bit y10, Sign bit b4 to symbol bit y4, Sign bit b5 to symbol bit y8 Sign bit b6 to symbol bit y2 Sign bit b7 to symbol bit y9, Sign bit b8 to symbol bit y3, Sign bit b9 into symbol bit y7 Sign bit b10 to symbol bit y5 Sign bit b11 to symbol bit y6, Replace each assigned.
  • LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/3, and further when the modulation method is 64QAM and the multiple b is 2.
  • 57 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 59 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further having a modulation scheme of 64QAM and a multiple b of 2. A group and a symbol bit group are shown.
  • code bit b0 belongs to code bit group Gb1
  • code bits b1 to b4 belong to code bit group Gb2
  • code bits b5 to b11 belong to code bit group Gb3.
  • the symbol bit group Gy1 includes symbol bits y0, y1, y6, and y7
  • the symbol bit group Gy2 includes symbol bits y2, y3, y8, and y9.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 60 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further, the modulation method is 64QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy1, 1), (Gb2, Gy3, 3), (Gb2, Gy1, 1), (Gb3, Gy2, 4), (Gb3, Gy1, 2), (Gb3, Gy3, 1) is defined.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy3 having the third highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • FIG. 61 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 61 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further, the modulation method is 64QAM and the multiple b is 2. 60 shows a first example of code bit replacement according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, The sign bit b1 is changed to the symbol bit y11. Sign bit b2 to symbol bit y1, Sign bit b3 into symbol bit y10, Sign bit b4 to symbol bit y4, Sign bit b5 to symbol bit y8 Sign bit b6 to symbol bit y2 Sign bit b7 to symbol bit y9, Sign bit b8 to symbol bit y3, Sign bit b9 into symbol bit y7 Sign bit b10 to symbol bit y5 Sign bit b11 to symbol bit y6, Replace each assigned.
  • FIG. 61B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 60 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 62 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and a modulation scheme of 64QAM and a multiple b of 2. A group and a symbol bit group are shown.
  • code bit b0 belongs to code bit group Gb1
  • code bits b1 to b5 belong to code bit group Gb2
  • code bits b6 to b11 belong to code bit group Gb3.
  • symbol bits y0, y1, y6, and y7 are included in symbol bit group Gy1
  • symbol bits y2, y3, y8, and y9 are included in symbol bit group Gy2, as in B of FIG.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 63 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, when the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy1, 1), (Gb2, Gy1, 3), (Gb2, Gy1, 1), (Gb2, Gy2, 1), (Gb3, Gy2, 3), (Gb3, Gy1, 2) and (Gb3, Gy3, 1) are defined.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy3 having the third highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • the group set information (Gb2, Gy2, 1) one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb3, Gy2, 3) 3 bits of the code bit of the code bit group Gb3 having the third highest error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb3, Gy1, 2) 2 bits of the code bit of the code bit group Gb3 having the third highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • FIG. 64 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 64 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, the modulation method is 64QAM and the multiple b is 2.
  • 63 shows a first example of exchanging code bits in accordance with the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, The sign bit b1 is changed to the symbol bit y11. Sign bit b2 to symbol bit y1, Sign bit b3 into symbol bit y10, Sign bit b4 to symbol bit y4, Sign bit b5 to symbol bit y8 Sign bit b6 to symbol bit y2 Sign bit b7 to symbol bit y9, Sign bit b8 to symbol bit y3, Sign bit b9 into symbol bit y7 Sign bit b10 to symbol bit y5 Sign bit b11 to symbol bit y6, Replace each assigned.
  • 64B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 63 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 65 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 7/12, and further the modulation method is 64QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • the code bit group Gb1 includes the code bit b0
  • the code bit group Gb2 includes the code bits b1 to b6
  • the code bit group Gb3 includes the code bits b7 to b11.
  • symbol bit group Gy1 includes symbol bits y0, y1, y6, and y7
  • symbol bit group Gy2 includes symbol bits y2, y3, y8, and y9.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 66 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 7/12, and further the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy1, 1), (Gb2, Gy3, 3), (Gb2, Gy1, 1), (Gb2, Gy2, 2), (Gb3, Gy2, 2), (Gb3, Gy1, 2) and (Gb3, Gy3, 1) are defined.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy3 having the third highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • FIG. 67 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 67 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 7/12, and further, the modulation method is 64QAM and the multiple b is 2.
  • 66 shows a first example of exchanging code bits in accordance with the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, The sign bit b1 is changed to the symbol bit y11. Sign bit b2 to symbol bit y1, Sign bit b3 into symbol bit y10, Sign bit b4 to symbol bit y4, Sign bit b5 to symbol bit y8 Sign bit b6 to symbol bit y2 Sign bit b7 to symbol bit y9, Sign bit b8 to symbol bit y3, Sign bit b9 into symbol bit y7 Sign bit b10 to symbol bit y5 Sign bit b11 to symbol bit y6, Replace each assigned.
  • FIG. 67B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 7/12, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 66 shows a second example of exchanging code bits according to the allocation rule of FIG.
  • FIG. 68 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 2/3, and further, when the modulation scheme is 64QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bit group Gb1 includes code bit b0
  • code bit group Gb2 includes code bits b1 to b7
  • code bit group Gb3 includes code bits b8 to b11.
  • symbol bit group Gy1 includes symbol bits y0, y1, y6, and y7
  • symbol bit group Gy2 includes symbol bits y2, y3, y8, and y9.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 69 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 2/3, and further, the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy2, 1), (Gb2, Gy2, 1), (Gb2, Gy3, 3), (Gb2, Gy1, 3), (Gb3, Gy3, 1), (Gb3, Gy2, 2) and (Gb3, Gy1, 1) are defined.
  • 3 bits of the code bit of the code bit group Gb2 having the second best error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • one bit of the sign bit of the code bit group Gb3 having the third highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy3 having the third highest error probability.
  • 2 bits of the code bit of the code bit group Gb3 having the third highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • FIG. 70 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 70 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 2/3, and further, the modulation method is 64QAM and the multiple b is 2.
  • 69 shows a first example of code bit replacement according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y2 Sign bit b1 into symbol bit y8 Sign bit b2 to symbol bit y5 Sign bit b3 to symbol bit y11, Sign bit b4 to symbol bit y0, Sign bit b5 to symbol bit y6, Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y10 Sign bit b8 to symbol bit y4, Sign bit b9 to symbol bit y9, Sign bit b10 to symbol bit y3, Sign bit b11 to symbol bit y7 Replace each assigned.
  • FIG. 70B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 2/3, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 69 shows a second example of code bit replacement according to the allocation rule of FIG. 69. *
  • Sign bit b0 to symbol bit y2 Sign bit b1 into symbol bit y8 Sign bit b2 to symbol bit y11
  • Sign bit b3 into symbol bit y5 Sign bit b4 to symbol bit y0
  • Sign bit b5 to symbol bit y6 Sign bit b6 to symbol bit y1
  • Sign bit b8 to symbol bit y4 Sign bit b9 to symbol bit y3
  • Sign bit b10 into symbol bit y9, Sign bit b11 to symbol bit y7 Replace each assigned.
  • FIG. 71 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 3/4, and further, the modulation scheme is 64QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bit group Gb1 includes code bit b0
  • code bit group Gb2 includes code bits b1 to b8
  • code bit group Gb3 includes code bits b9 to b11.
  • symbol bit group Gy1 includes symbol bits y0, y1, y6, and y7
  • symbol bit group Gy2 includes symbol bits y2, y3, y8, and y9.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 72 shows an allocation rule when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 3/4, and further, the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • the group set information (Gb1, Gy2, 1), (Gb2, Gy2, 1), (Gb2, Gy3,4), (Gb2, Gy1, 3), (Gb3, Gy2, 2), (Gb3, Gy1, 1) is defined.
  • FIG. 73 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 73 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 3/4, and further, the modulation method is 64QAM and the multiple b is 2.
  • 72 shows a first example of exchanging code bits according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y2 Sign bit b1 into symbol bit y8 Sign bit b2 to symbol bit y5 Sign bit b3 to symbol bit y11, Sign bit b4 to symbol bit y0, Sign bit b5 to symbol bit y6, Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y10 Sign bit b8 to symbol bit y4, Sign bit b9 to symbol bit y9, Sign bit b10 to symbol bit y3, Sign bit b11 to symbol bit y7 Replace each assigned.
  • 73B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 3/4, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 72 shows a second example of code bit replacement in accordance with the allocation rule of FIG.
  • Sign bit b0 to symbol bit y2 Sign bit b1 into symbol bit y8 Sign bit b2 to symbol bit y4, Sign bit b3 into symbol bit y10, Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y0, Sign bit b6 to symbol bit y6, Sign bit b7 to symbol bit y11, Sign bit b8 to symbol bit y5 Sign bit b9 to symbol bit y3, Sign bit b10 into symbol bit y9, Sign bit b11 to symbol bit y7 Replace each assigned.
  • FIG. 74 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and further having a modulation scheme of 64QAM and a multiple b of 2. A group and a symbol bit group are shown.
  • code bits b0 and b1 belong to code bit group Gb1
  • code bits b2 to b9 belong to code bit group Gb2
  • code bits b10 and b11 belong to code bit group Gb3, respectively.
  • symbol bit group Gy1 includes symbol bits y0, y1, y6, y7
  • symbol bit group Gy2 includes symbol bits y2, y3, y8, y9.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 75 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and further having a modulation scheme of 64QAM and a multiple b of 2. Is shown.
  • group set information (Gb1, Gy2, 2), (Gb2, Gy3,4), (Gb2, Gy1, 3), (Gb2, Gy2, 1), (Gb3, Gy2, 1), (Gb3, Gy1, 1) is defined.
  • the group set information (Gb1, Gy2, 2) 2 bits of the code bit of the code bit group Gb1 having the first highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb2, Gy3,4) 4 bits of code bits of the code bit group Gb2 having the second highest error probability are allocated to 4 bits of symbol bits of the symbol bit group Gy3 having the third highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second best error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • one bit of the code bit of the code bit group Gb3 having the third highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • 1 bit of the sign bit of the code bit group Gb3 having the third highest error probability and 1 bit of the symbol bit of the symbol bit group Gy1 having the highest error probability It is stipulated to be assigned to
  • FIG. 76 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 76 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and further, the modulation method is 64QAM and the multiple b is 2. 75 shows a first example of exchanging code bits according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y2 Sign bit b1 into symbol bit y8 Sign bit b2 to symbol bit y5 Sign bit b3 to symbol bit y11, Sign bit b4 to symbol bit y0, Sign bit b5 to symbol bit y6, Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y10 Sign bit b8 to symbol bit y4, Sign bit b9 to symbol bit y9, Sign bit b10 to symbol bit y3, Sign bit b11 to symbol bit y7 Replace each assigned.
  • 76B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and further when the modulation scheme is 64QAM and the multiple b is 2.
  • 75 shows a second example of code bit replacement according to the assignment rule of FIG.
  • Sign bit b0 to symbol bit y8 Sign bit b1 to symbol bit y2 Sign bit b2 to symbol bit y4, Sign bit b3 into symbol bit y10, Sign bit b4 to symbol bit y6, Sign bit b5 to symbol bit y0, Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y11, Sign bit b8 to symbol bit y5 Sign bit b9 to symbol bit y9, Sign bit b10 to symbol bit y3, Sign bit b11 to symbol bit y7 Replace each assigned.
  • FIG. 77 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 11/12, and further, the modulation method is 64QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bit b0 belongs to code bit group Gb1
  • code bits b1 to b10 belong to code bit group Gb2
  • code bit b11 belongs to code bit group Gb3.
  • symbol bits y0, y1, y6, and y7 are included in symbol bit group Gy1
  • symbol bits y2, y3, y8, and y9 are included in symbol bit group Gy2, as in B of FIG.
  • Symbol bits y4, y5, y10, and y11 belong to the symbol bit group Gy3, respectively.
  • FIG. 78 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 11/12, and further the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy2, 1), (Gb2, Gy2, 3), (Gb2, Gy3,4) (Gb2, Gy1, 3), (Gb3, Gy1, 1) are defined. Has been.
  • the group set information (Gb1, Gy2, 1) 1 bit of the code bit of the code bit group Gb1 having the first highest error probability is assigned to 1 bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb2, Gy2, 3) 3 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb2, Gy3,4) 4 bits of code bits of the code bit group Gb2 having the second highest error probability are allocated to 4 bits of symbol bits of the symbol bit group Gy3 having the third highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second best error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • 1 bit of the sign bit of the code bit group Gb3 having the third highest error probability and 1 bit of the symbol bit of the symbol bit group Gy1 having the highest error probability It is stipulated to be assigned to
  • FIG. 79 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 79 is a portable LDPC code whose LDPC code has a code length N of 4320 bits and a coding rate of 11/12, and further, the modulation method is 64QAM and the multiple b is 2.
  • 78 shows a first example of exchanging code bits according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y2 Sign bit b1 into symbol bit y8 Sign bit b2 to symbol bit y5 Sign bit b3 to symbol bit y11, Sign bit b4 to symbol bit y0, Sign bit b5 to symbol bit y6, Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y10 Sign bit b8 to symbol bit y4, Sign bit b9 to symbol bit y9, Sign bit b10 to symbol bit y3, Sign bit b11 to symbol bit y7 Replace each assigned.
  • 79B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 11/12, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 78 shows a second example of code bit replacement in accordance with the assignment rule of FIG.
  • Sign bit b0 to symbol bit y2 Sign bit b1 to symbol bit y3, Sign bit b2 into symbol bit y10
  • Sign bit b3 to symbol bit y4 Sign bit b4 to symbol bit y6, Sign bit b5 to symbol bit y1, Sign bit b6 to symbol bit y0, Sign bit b7 to symbol bit y11, Sign bit b8 to symbol bit y5
  • Sign bit b9 to symbol bit y8 Sign bit b10 into symbol bit y9, Sign bit b11 to symbol bit y7 Replace each assigned.
  • FIG. 80 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/4, and further having a modulation scheme of 16QAM and a multiple b of 2. A group and a symbol bit group are shown.
  • code bits read from the memory 31 are divided into three code bit groups Gb1, Gb2, and Gb3 as shown in FIG. Can be grouped.
  • code bit group Gb1 includes code bit b0
  • code bit group Gb2 includes code bit b1
  • code bit group Gb3 includes code bits b2 to b7.
  • symbol bits y0, y1, y4, and y5 belong to symbol bit group Gy1
  • symbol bits y2, y3, y6, and y7 belong to symbol bit group Gy2, respectively.
  • FIG. 81 shows an allocation rule when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 1/4, and further the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy2, 1), (Gb2, Gy2, 1), (Gb3, Gy2, 2), (Gb3, Gy1, 4) are defined.
  • FIG. 82 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 82 is a case where the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 1/4, and the modulation scheme is 16QAM and the multiple b is 2.
  • 81 shows a first example of code bit replacement according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y7 Sign bit b1 to symbol bit y6, Sign bit b2 to symbol bit y4, Sign bit b3 into symbol bit y3 Sign bit b4 to symbol bit y2 Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y0, Replace each assigned.
  • B in FIG. 82 is a portable LDPC code with an LDPC code having a code length N of 4320 bits and an encoding rate of 1/4, and further, when the modulation scheme is 16QAM and the multiple b is 2.
  • 81 shows a second example of code bit replacement according to the allocation rule of FIG.
  • Sign bit b0 to symbol bit y7 Sign bit b1 to symbol bit y6, Sign bit b2 to symbol bit y1, Sign bit b3 to symbol bit y2 Sign bit b4 to symbol bit y3, Sign bit b5 to symbol bit y4, Sign bit b6 to symbol bit y0, Sign bit b7 to symbol bit y5, Replace each assigned.
  • FIG. 83 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 1/3, and further when the modulation method is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • the sign bit group Gb1 includes the sign bit b0
  • the sign bit group Gb2 includes the sign bit b1
  • the sign bit group Gb3 includes the sign bit b2
  • the sign bit group Gb4 includes the sign bit. Bits b3 to b7 belong to each.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 84 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 1/3, and further, when the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy2, 1), (Gb2, Gy2, 1), (Gb3, Gy1, 1), (Gb4, Gy2, 2), (Gb4, Gy1, 3) It is prescribed.
  • FIG. 85 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 85 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 1/3, and further, the modulation method is 16QAM and the multiple b is 2.
  • 84 shows a first example of exchanging code bits according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y7 Sign bit b1 to symbol bit y6, Sign bit b2 to symbol bit y4, Sign bit b3 into symbol bit y3 Sign bit b4 to symbol bit y2 Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y0, Replace each assigned.
  • B in FIG. 85 is a portable LDPC code in which the LDPC code has a code length N of 4320 bits and a coding rate of 1/3, and the modulation scheme is 16QAM, and the multiple b is 2.
  • 84 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 86 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 5/12, and further when the modulation method is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bits read from the memory 31 are divided into four code bit groups Gb1, Gb2, Gb3, Gb1, as shown in FIG. Can be grouped into Gb4.
  • the sign bit group Gb1 includes the sign bit b0
  • the sign bit group Gb2 includes the sign bits b1 and b2
  • the sign bit group Gb3 includes the sign bit b3
  • the sign bit group Gb4 includes the sign bit b3.
  • the code bits b4 to b7 belong respectively.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 87 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further has a modulation scheme of 16QAM and a multiple b of 2. Is shown.
  • the group set information (Gb1, Gy1, 1), (Gb2, Gy1, 1), (Gb2, Gy2, 1), (Gb3, Gy2, 1), (Gb4, Gy1, 2), (Gb4, Gy2, 2) is specified.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • one bit of the code bit of the code bit group Gb3 having the third highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • 2 bits of the code bit of the code bit group Gb4 having the fourth highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • 2 bits of the sign bit of the code bit group Gb4 having the fourth highest error probability and 2 bits of the symbol bits of the symbol bit group Gy2 having the second highest error probability It is stipulated to be assigned to
  • FIG. 88 shows an example of exchanging code bits according to the allocation rule of FIG.
  • 88A shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further, the modulation method is 16QAM and the multiple b is 2.
  • 87 shows a first example of exchanging code bits according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, Sign bit b1 into symbol bit y4 Sign bit b2 to symbol bit y2 Sign bit b3 into symbol bit y6 Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y3, Sign bit b7 into symbol bit y7 Replace each assigned.
  • 88B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/12, and further when the modulation method is 16QAM and the multiple b is 2.
  • 87 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 89 shows a code bit when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, when the modulation scheme is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bits read from the memory 31 are divided into three code bit groups Gb1, Gb2, and Gb3 as shown in FIG. 89A according to the difference in error probability. Can be grouped.
  • the code bit group Gb1 includes the code bit b0
  • the code bit group Gb2 includes the code bits b1 to b3
  • the code bit group Gb3 includes the code bits b4 to b7.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 90 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, when the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • the group set information (Gb1, Gy2, 1), (Gb2, Gy2, 2), (Gb2, Gy1, 1), (Gb3, Gy2, 1), (Gb3, Gy1, 3) It is prescribed.
  • the group set information (Gb1, Gy2, 1) 1 bit of the code bit of the code bit group Gb1 having the first highest error probability is assigned to 1 bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb2, Gy2, 2) 2 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • one bit of the code bit of the code bit group Gb3 having the third highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • the group set information (Gb3, Gy1, 3) 3 bits of the code bit of the code bit group Gb3 having the third highest error probability, and 3 bits of the symbol bits of the symbol bit group Gy1 having the highest error probability It is stipulated to be assigned to
  • FIG. 91 shows an example of exchanging code bits according to the assignment rule of FIG.
  • a in FIG. 91 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, the modulation method is 16QAM and the multiple b is 2.
  • 90 shows a first example of code bit replacement in accordance with the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y7 Sign bit b1 to symbol bit y6, Sign bit b2 to symbol bit y4, Sign bit b3 into symbol bit y3, Sign bit b4 into symbol bit y2, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y1 Sign bit b7 to symbol bit y0, Replace each assigned.
  • 91B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 1/2, and further, when the modulation scheme is 16QAM and the multiple b is 2.
  • 90 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 92 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and an encoding rate of 7/12, and further when the modulation method is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • the sign bit group Gb1 includes the sign bit b0
  • the sign bit group Gb2 includes the sign bits b1 to b3
  • the sign bit group Gb3 includes the sign bit b4
  • the sign bit group Gb4 includes the sign bit b4.
  • the code bits b5 to b7 belong respectively.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 93 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 7/12, and further, when the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • the group set information (Gb1, Gy1, 1), (Gb2, Gy1, 1), (Gb2, Gy2, 2), (Gb3, Gy1, 1), (Gb4, Gy1, 1), (Gb4, Gy2, 2) is specified.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • 2 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • one bit of the code bit of the code bit group Gb3 having the third highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • one bit of the code bit of the code bit group Gb4 having the fourth highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 2 bits of the sign bit of the code bit group Gb4 having the fourth highest error probability and 2 bits of the symbol bits of the symbol bit group Gy2 having the second highest error probability It is stipulated to be assigned to
  • FIG. 94 shows an example of exchanging code bits in accordance with the assignment rule of FIG.
  • a in FIG. 94 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 7/12, and further the modulation method is 16QAM and the multiple b is 2.
  • 93 shows a first example of exchanging code bits in accordance with the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, Sign bit b1 into symbol bit y4 Sign bit b2 to symbol bit y2 Sign bit b3 into symbol bit y6 Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y3, Sign bit b7 into symbol bit y7 Replace each assigned.
  • FIG. 94B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 7/12, and further when the modulation method is 16QAM and the multiple b is 2.
  • 93 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 95 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 2/3, and further when the modulation method is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bits read out from the memory 31 are divided into four code bit groups Gb1, Gb2, Gb3, Gb1, as shown in FIG. Can be grouped into Gb4.
  • the sign bit group Gb1 includes the sign bit b0
  • the sign bit group Gb2 includes the sign bits b1 to b4
  • the sign bit group Gb3 includes the sign bit b5
  • the sign bit group Gb4 includes the sign bit b5.
  • the code bits b6 and b7 belong respectively.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 96 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 2/3, and further, when the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy1, 1), (Gb2, Gy1, 2), (Gb2, Gy2, 2), (Gb3, Gy1, 1), (Gb4, Gy2, 2) It is prescribed.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 2 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • 2 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • one bit of the code bit of the code bit group Gb3 having the third highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 2 bits of the sign bit of the code bit group Gb4 having the fourth highest error probability and 2 bits of the symbol bits of the symbol bit group Gy2 having the second highest error probability It is stipulated to be assigned to
  • FIG. 97 shows an example of exchanging code bits according to the allocation rule of FIG. *
  • a in FIG. 97 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 2/3, and further, the modulation method is 16QAM and the multiple b is 2.
  • 96 shows a first example of exchanging code bits in accordance with the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, Sign bit b1 into symbol bit y4 Sign bit b2 to symbol bit y2 Sign bit b3 into symbol bit y6 Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y3, Sign bit b7 into symbol bit y7 Replace each assigned.
  • FIG. 97B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 2/3, a modulation scheme of 16QAM, and a multiple b of 2.
  • 96 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 98 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 3/4, and the modulation method is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bits read from the memory 31 are divided into three code bit groups Gb1, Gb2, and Gb3 as shown in FIG. Can be grouped.
  • code bit b0 belongs to code bit group Gb1
  • code bits b1 to b5 belong to code bit group Gb2
  • code bits b6 and b7 belong to code bit group Gb3, respectively.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 99 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 3/4, and further, the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy1, 1), (Gb2, Gy1, 3), (Gb2, Gy2, 2), (Gb3, Gy2, 2) are defined.
  • the group set information (Gb1, Gy1, 1) one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • the group set information (Gb2, Gy1, 3) 3 bits of the code bit of the code bit group Gb2 having the second best error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • the group set information (Gb2, Gy2, 2) 2 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • FIG. 100 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 100 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 3/4, and further, the modulation method is 16QAM and the multiple b is 2.
  • FIG. 99 shows a first example of code bit replacement according to the assignment rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, Sign bit b1 into symbol bit y4 Sign bit b2 to symbol bit y2 Sign bit b3 into symbol bit y6 Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y3, Sign bit b7 into symbol bit y7 Replace each assigned.
  • B in FIG. 100 is a portable LDPC code in which the LDPC code has a code length N of 4320 bits and a coding rate of 3/4, and the modulation scheme is 16QAM and the multiple b is 2. 99 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 101 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and a coding rate of 5/6, and the modulation scheme is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bits read out from the memory 31 are divided into five code bit groups Gb1, Gb2, Gb3, Gb1, as shown in FIG. Can be grouped into Gb4 and Gb5.
  • the sign bit group Gb1 includes the sign bit b0
  • the sign bit group Gb2 includes the sign bit b1
  • the sign bit group Gb3 includes the sign bits b2 to b5
  • the sign bit group Gb4 includes the sign bit b1.
  • the code bit b6 belongs to the code bit group Gb5, and the code bit b7 belongs to the code bit group Gb5.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 102 shows an allocation rule when the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and further having a modulation scheme of 16QAM and a multiple b of 2. Is shown.
  • the group set information (Gb1, Gy1, 1), (Gb2, Gy1, 1), (Gb3, Gy2, 2), (Gb3, Gy1, 2), (Gb4, Gy2, 1), (Gb5, Gy2, 1) is specified.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • one bit of the sign bit of the code bit group Gb2 having the second highest error probability is assigned to one bit of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • 2 bits of the code bit of the code bit group Gb3 having the third highest error probability are allocated to 2 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • FIG. 103 shows an example of exchanging code bits in accordance with the assignment rule of FIG.
  • a in FIG. 103 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and further, the modulation method is 16QAM and the multiple b is 2.
  • 102 shows a first example of code bit replacement according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, Sign bit b1 into symbol bit y4 Sign bit b2 to symbol bit y2 Sign bit b3 into symbol bit y6 Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y3, Sign bit b7 into symbol bit y7 Replace each assigned.
  • FIG. 103B shows a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and a coding rate of 5/6, and the modulation method is 16QAM and the multiple b is 2.
  • 102 shows a second example of code bit replacement in accordance with the assignment rule of FIG.
  • FIG. 104 shows a code bit when the LDPC code is a portable LDPC code with a code length N of 4320 bits and an encoding rate of 11/12, and further when the modulation scheme is 16QAM and the multiple b is 2. A group and a symbol bit group are shown.
  • code bits read from the memory 31 are divided into three code bit groups Gb1, Gb2, and Gb3 as shown in FIG. Can be grouped.
  • code bit group Gb1 includes code bit b0
  • code bit group Gb2 includes code bits b1 to b6
  • code bit group Gb3 includes code bit b7.
  • symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 105 shows an allocation rule when the LDPC code is a portable LDPC code with a code length N of 4320 bits and an encoding rate of 11/12, and further the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • group set information (Gb1, Gy1, 1), (Gb2, Gy2, 3), (Gb2, Gy1, 3), (Gb3, Gy2, 1) is defined.
  • one bit of the code bit of the code bit group Gb1 having the highest error probability is allocated to one bit of the symbol bit of the symbol bit group Gy1 having the highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second highest error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy2 having the second highest error probability.
  • 3 bits of the code bit of the code bit group Gb2 having the second best error probability are allocated to 3 bits of the symbol bit of the symbol bit group Gy1 having the best error probability.
  • FIG. 106 shows an example of exchanging code bits according to the assignment rule of FIG.
  • a in FIG. 106 is a case where the LDPC code is a portable LDPC code having a code length N of 4320 bits and an encoding rate of 11/12, and further, the modulation scheme is 16QAM and the multiple b is 2.
  • 105 shows a first example of exchanging code bits according to the allocation rule of FIG.
  • the demultiplexer 25 uses the column direction ⁇
  • the replacement unit 32 Sign bit b0 to symbol bit y0, Sign bit b1 into symbol bit y4 Sign bit b2 to symbol bit y2 Sign bit b3 into symbol bit y6 Sign bit b4 to symbol bit y1, Sign bit b5 to symbol bit y5 Sign bit b6 to symbol bit y3, Sign bit b7 into symbol bit y7 Replace each assigned.
  • B in FIG. 106 is an LDPC code in which the code length N is 4320 bits and the code rate is 11/12 portable LDPC code, and the modulation scheme is 16QAM and the multiple b is 2.
  • 105 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIGS. 124A and 124B show simulation results of BER (Bit ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ Error Rate) when the replacement process of the new replacement method is performed and when the replacement process is not performed.
  • the code length N is 4320, and the coding rate is 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, 3/4, 5 /.
  • the BER is shown when 64QAM is adopted as a modulation method for portable LDPC codes (FIGS. 35 to 43) of 6, 11/12.
  • the code length N is 4320, and the coding rate is 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, 3/4, 5/6,
  • the BER is shown for 11/12 portable LDPC codes and 16QAM is used as the modulation method.
  • the multiple b is 2.
  • the horizontal axis represents E s / N 0 (signal power to noise power ratio per symbol), and the vertical axis represents BER.
  • a circle ( ⁇ ) represents the BER when the replacement process of the new replacement method is performed, and the asterisk represents the BER when the replacement process is not performed.
  • a dedicated bit allocation pattern can be employed for the LDPC code.
  • the bit allocation pattern implemented in the transmission apparatus 11 can be reduced.
  • the code bit b0 shown in A of FIGS. 58, 61, 64, and 67 is used.
  • the replacement unit 32 performs the replacement process for the code bit read from the memory 31, but the replacement process is performed in the memory 31. This can be done by controlling the writing and reading of the sign bit for.
  • the replacement process can be performed, for example, by controlling the address (read address) from which the code bits are read so that the code bits are read from the memory 31 in the order of the code bits after the replacement.
  • DVB-T.2 For an LDPC code having a code length of 4k bits (hereinafter, also referred to as a first 4k code) obtained using a parity check matrix obtained from the parity check matrix initial value table of FIGS. 35 to 43, DVB-T.2 From the standpoint of maintaining the affinity with the PSB as much as possible, 360 as specified in DVB-T.2 is used as the number of columns P of the unit of the cyclic structure, as in the LDPC code specified in DVB-T.2. It has been adopted.
  • FIGS. 125 to 128 are diagrams showing examples of a parity check matrix initial value table of a second 4k code that is a portable LDPC code having a code length of 4k bits, which is different from the first 4k code.
  • FIG. 125 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 1/2.
  • 126 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 7/12.
  • 127 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 2/3.
  • 128 shows a parity check matrix initial value table for a parity check matrix H having a code length N of 4k bits and a code rate r of 3/4.
  • parity matrix of the parity check matrix obtained from the parity check matrix initial value table of FIGS. 125 to 128 has a staircase structure (FIG. 11).
  • the second 4k code which is an LDPC code having a 4k-bit code length obtained using the parity check matrix obtained from the parity check matrix initial value table of FIGS. 125 to 128, is defined in DVB-T.2. Similar to the LDPC code, the information matrix of the check matrix H has a cyclic structure.
  • the number P of units of the cyclic structure unit is not 360, but 72, which is one of the divisors of 360.
  • LDPC encoder 115 uses a parity check matrix obtained from the parity check matrix initial value table shown in FIGS. 125 to 128, and has a code length N of 4k bits and a coding rate r of 1/2. , 7/12, 2/3, and 3/4, LDPC encoding to any second 4k code can be performed.
  • the LDPC encoder 115 sets the number of columns P of the cyclic structure as 72 instead of 360, from the parity check matrix initial value table shown in FIGS. 125 to 128, as in the case described in FIG. A parity check matrix is obtained, and LDPC encoding to the second 4k code is performed using the parity check matrix.
  • the second 4k code (the check matrix initial value table) in FIGS. 125 to 128 was obtained by performing a simulation similar to the simulation for obtaining the first 4k code in FIGS.
  • an ensemble in which the performance threshold at which Eb / N 0 starts to decrease (becomes smaller) due to multi-edge type density evolution is equal to or less than a predetermined value is found. From among the LDPC codes belonging to the ensemble, an LDPC code that reduces the BER in a plurality of modulation schemes used in digital broadcasting for mobile terminals, such as 16QAM and 64QAM, was selected as a high-performance LDPC code.
  • the number of signal points such as QPSK, 16QAM, 64QAM, and the like is compared in order to improve tolerance to errors, similarly to the simulation for obtaining the first 4k code.
  • FIG. 129 is obtained from the parity check matrix initial value tables of the second 4k codes of the four types of coding rates r of 1/2, 7/12, 2/3, and 3/4 in FIGS. 125 to 128. It is a figure which shows the minimum cycle length and performance threshold value of the check matrix which are calculated
  • the minimum cycle length of the parity check matrix obtained from the parity check matrix initial value table of FIGS. 125 to 128 is all 6 cycles, and cycle 4 does not exist.
  • the performance threshold increases (becomes smaller) as the encoding rate r decreases.
  • FIG. 130 is a diagram for explaining the parity check matrix (of the second 4k code obtained from the parity check matrix initial value table) in FIGS. 125 to 128.
  • the column weight of the KX column from the first column is X
  • the subsequent KY The column weight of the column is Y
  • the column weight of the subsequent M-1 column is 2
  • the column weight of the last column is 1.
  • the weights X and Y are as shown in FIG.
  • the second 4k code parity check matrix is the same as the parity check matrix defined in DVB-T.2 described with reference to FIGS. 12 and 13 and the first 4k code parity check matrix.
  • the column weight tends to be larger in the column, and therefore, the first code bit of the second 4k code tends to be more resistant to errors (tolerant to errors).
  • FIG. 131 is a diagram showing a result of BER simulation performed on the second 4k code.
  • the horizontal axis represents E s / N 0 (signal power to noise power ratio per symbol), and the vertical axis represents BER.
  • the second 4k code is better than the first 4k code. It has been confirmed that the BER is improved. Therefore, according to the second 4k code, tolerance against errors can be improved.
  • FIG. 132 is a block diagram illustrating a configuration example of the receiving device 12 of FIG.
  • An OFDM processor 151 receives an OFDM signal from the transmission device 11 (FIG. 7) and performs signal processing on the OFDM signal. Data (symbols) obtained by performing signal processing by the OFDM processing unit 151 is supplied to a frame management unit 152.
  • the frame management unit 152 performs processing (frame interpretation) of a frame including symbols supplied from the OFDM processing unit 151, and converts the symbol of the target data and the control data symbol obtained as a result thereof into a frequency deinterleaver. (Frequency Deinterleaver) 161 and 153, respectively.
  • the frequency deinterleaver 153 performs frequency deinterleaving for each symbol from the frame management unit 152 and supplies the symbol to the QAM decoder 154.
  • the QAM decoder 154 performs demapping (signal point constellation decoding) on the symbol (symbol arranged at the signal point) from the frequency deinterleaver 153 to perform orthogonal demodulation, and the resulting data (LDPC code) is converted into the LDPC decoder.
  • demapping signal point constellation decoding
  • LDPC decoder LDPC decoder
  • the LDPC decoder 155 performs LDPC decoding of the LDPC code from the QAM decoder 154, and supplies LDPC target data (in this case, BCH code) obtained as a result thereof to a BCH decoder (BCH decoder) 156.
  • LDPC target data in this case, BCH code
  • the BCH decoder 156 performs BCH decoding of the LDPC target data from the LDPC decoder 155 and outputs control data (signaling) obtained as a result.
  • the frequency deinterleaver 161 performs frequency deinterleaving for each symbol from the frame management unit 152 and supplies the symbol to the MISO / MIMO decoder 162.
  • the MISO / MIMO decoder 162 performs space-time decoding of data (symbols) from the frequency deinterleaver 161 and supplies it to a time deinterleaver 163.
  • the time deinterleaver 163 performs time deinterleaving on the data (symbol) from the MISO / MIMO decoder 162 in units of symbols, and supplies the data to the QAM decoder (QAM decoder) 164.
  • QAM decoder QAM decoder
  • the QAM decoder 164 performs demapping (signal point arrangement decoding) on the symbol (symbol arranged at the signal point) from the time deinterleaver 163 to perform orthogonal demodulation, and the resulting data (symbol) is subjected to bit deinterlacing. This is supplied to a Lieber (Bit Deinterleaver) 165.
  • the bit deinterleaver 165 performs bit deinterleaving on the data (symbol) from the QAM decoder 164 and supplies the resulting LDPC code to the LDPC decoder 166.
  • the LDPC decoder 166 performs LDPC decoding of the LDPC code from the bit deinterleaver 165 and supplies the LDPC target data (in this case, BCH code) obtained as a result to the BCH decoder 167.
  • the BCH decoder 167 performs BCH decoding of the LDPC target data from the LDPC decoder 155 and supplies data obtained as a result to a BB descrambler BB.
  • the BB descrambler 168 performs energy despreading processing on the data from the BCH decoder 167, and supplies the data obtained as a result to a null deletion unit (Null Deletion) 169.
  • the null deletion unit 169 deletes the null inserted by the padder 112 in FIG. 8 from the data from the BB descrambler 168 and supplies the null to the demultiplexer 170.
  • the demultiplexer 170 separates each of one or more streams (target data) multiplexed in the data from the null deletion unit 169, and outputs it as an output stream (Output stream).
  • FIG. 133 is a block diagram showing a configuration example of the bit deinterleaver 165 of FIG.
  • the bit deinterleaver 165 includes a multiplexer (MUX) 54 and a column twist deinterleaver 55, and performs symbol bit deinterleaving of symbols from the QAM decoder 164 (FIG. 132).
  • MUX multiplexer
  • MUX column twist deinterleaver
  • the multiplexer 54 replaces the symbol bit of the symbol from the QAM decoder 164 by the reverse replacement process (reverse process of the replacement process) corresponding to the replacement process performed by the demultiplexer 25 of FIG.
  • a reverse permutation process is performed to return the position of the code bit (symbol bit) of the LDPC code to the original position, and the resulting LDPC code is supplied to the column twist deinterleaver 55.
  • the column twist deinterleaver 55 targets the LDPC code from the multiplexer 54, and corresponds to the column twist interleave as the rearrangement process performed by the column twist interleaver 24 of FIG. Processing), that is, column twist deinterleaving, for example, as reverse rearrangement processing for returning the code bits of LDPC codes whose rearrangement has been changed by column twist interleaving as rearrangement processing.
  • the column twist deinterleaver 55 writes the code bit of the LDPC code to the memory for deinterleaving configured similarly to the memory 31 shown in FIG. Perform column twist deinterleaving.
  • writing of the sign bit is performed in the row direction of the memory for deinterleaving, using the read address when reading the sign bit from the memory 31 as the write address.
  • the sign bit is read out in the column direction of the deinterleave memory using the write address at the time of writing the sign bit to the memory 31 as the read address.
  • the LDPC code obtained as a result of the column twist deinterleaving is supplied from the column twist deinterleaver 55 to the LDPC decoder 166.
  • the LDPC code supplied from the QAM decoder 164 to the bit deinterleaver 165 is subjected to parity interleaving, column twist interleaving, and replacement processing in that order.
  • bit deinterleaver 165 Only reverse permutation processing corresponding to permutation processing and column twist deinterleaving corresponding to column twist interleaving are performed, and therefore, parity deinterleaving corresponding to parity interleaving (processing opposite to parity interleaving), that is, parity interleaving is performed. Parity deinterleaving is not performed to return the code bits of the LDPC code whose code has been changed to the original order.
  • bit deinterleaver 165 the column twist deinterleaver 55
  • LDPC decoder 166 the reverse permutation process and the column twist deinterleave are performed, and the LDPC code not subjected to the parity deinterleave Is supplied.
  • the LDPC decoder 166 performs LDPC decoding of the LDPC code from the bit deinterleaver 165, and at least performs column replacement corresponding to parity interleaving on the parity check matrix H used by the LDPC encoder 115 in FIG. 8 for LDPC encoding.
  • the conversion check matrix obtained is used, and the resulting data is output as the decoding result of the LDPC target data.
  • FIG. 134 is a flowchart for explaining processing performed by the QAM decoder 164, the bit deinterleaver 165, and the LDPC decoder 166 of FIG.
  • step S111 the QAM decoder 164 demaps and orthogonally demodulates symbols (symbols mapped to signal points) from the time deinterleaver 163, and supplies them to the bit deinterleaver 165. Proceed to
  • step S112 the bit deinterleaver 165 performs deinterleaving (bit deinterleaving) of the symbol bits of the symbols from the QAM decoder 164, and the process proceeds to step S113.
  • step S112 in the bit deinterleaver 165, the multiplexer 54 performs a reverse permutation process on the symbol bits of the symbols from the QAM decoder 164, and converts the code bits of the LDPC code obtained as a result of This is supplied to the interleaver 55.
  • the column twist deinterleaver 55 performs column twist deinterleaving on the LDPC code from the multiplexer 54 and supplies the resulting LDPC code to the LDPC decoder 166.
  • step S113 the LDPC decoder 166 performs LDPC decoding of the LDPC code from the column twist deinterleaver 55, and a column corresponding to parity interleaving with respect to the parity check matrix H used by the LDPC encoder 115 in FIG. 8 for LDPC encoding.
  • the conversion check matrix obtained by performing at least the replacement is performed, and the data obtained as a result is output to the BCH decoder 167 as the decoding result of the LDPC target data.
  • the multiplexer 54 that performs reverse permutation processing and the column twist deinterleaver 55 that performs column twist deinterleaving are configured separately.
  • the multiplexer 54 and the column twist deinterleaver 55 can be configured integrally.
  • the column twist deinterleaver 55 need not be provided in the bit deinterleaver 165 in FIG.
  • Decoding is performed using a transform parity check matrix obtained by performing at least column replacement corresponding to parity interleaving on parity check matrix H for parity check matrix H used by LDPC encoder 115 in FIG.
  • FIG. 135 shows an example of a parity check matrix H of an LDPC code having a code length N of 90 and a coding rate of 2/3.
  • 0 is represented by a period (.).
  • the parity matrix has a staircase structure.
  • FIG. 136 shows a parity check matrix H ′ obtained by subjecting the parity check matrix H of FIG. 135 to row replacement of equation (11) and column replacement of equation (12).
  • s, t, x, and y are integers in the range of 0 ⁇ s ⁇ 5, 0 ⁇ t ⁇ 6, 0 ⁇ x ⁇ 5, 0 ⁇ t ⁇ 6, respectively. It is.
  • the first, seventh, thirteenth, nineteenth, and twenty-fifth rows that divide by six and the remainder is 1, respectively, the first, second, third, fourth, and fifth rows,
  • the second, eighth, eighth, ninth, and tenth lines that are divided by the remainder of 2 are replaced with the sixth, seventh, eighth, ninth, and tenth lines, respectively.
  • the 61st column, the 67th column, the 73th column, and the 85th column in which the remainder is 1 after dividing by 6 with respect to the 61st column and later (parity matrix) are respectively obtained.
  • 62, 63, 64, and 65, the 62, 68, 74, 80, and 86 columns, which are divided by 6 and have a remainder of 2 are called 66, 67, 68, 69, and 70 columns, respectively.
  • the replacement is performed accordingly.
  • the matrix obtained by performing row and column replacement on the parity check matrix H in FIG. 135 is the parity check matrix H ′ in FIG.
  • a zero vector is output. That is, if the row vector obtained by performing column substitution of Expression (12) on the row vector c as the LDPC code (one codeword) of the original check matrix H is expressed as c ′, the property of the check matrix , Hc T is a 0 vector, and H'c ' T is naturally a 0 vector.
  • the conversion parity check matrix H ′ of FIG. 136 is a parity check matrix of the LDPC code c ′ obtained by performing column replacement of the equation (12) on the LDPC code c of the original parity check matrix H.
  • Equation (12) the column replacement of Equation (12) is performed on the LDPC code c of the original parity check matrix H, and the LDPC code c ′ after the column replacement is decoded using the transform parity check matrix H ′ of FIG. 136 (LDPC decoding). Then, the decoding result similar to the case of decoding the LDPC code of the original parity check matrix H using the parity check matrix H is obtained by performing the inverse permutation of the column permutation of the equation (12) on the decoding result. Can do.
  • FIG. 137 shows the conversion parity check matrix H ′ of FIG. 136 with a space in 5 ⁇ 5 matrix units.
  • the transform parity check matrix H ′ is a 5 ⁇ 5 unit matrix, a matrix in which one or more of the unit matrices are 0 (hereinafter referred to as a quasi-unit matrix as appropriate), a unit matrix or a quasi-unit matrix.
  • FIG. 138 is a block diagram illustrating a configuration example of a decoding device that performs such decoding.
  • FIG. 138 performs decoding of the LDPC code using at least the transformed parity check matrix H ′ of FIG. 137 obtained by performing column replacement of equation (12) on the original parity check matrix H of FIG. 2 shows a configuration example of a decoding device.
  • Decoding apparatus six FIFO 300 1 to the edge data storage memory 300 consisting of 300 6, FIFO 300 1 to the selector 301 for selecting 300 6, a check node calculation section 302,2 one cyclic shift circuit 303 and 308 in FIG. 138, 18 FIFOs 304 1 to 304 18 the edge data storage memory 304 consisting of, FIFOs 304 1 to 304 18 to select the selector 305, the reception data memory 306 for storing received data, a variable node calculation section 307, a decoded word calculation section 309
  • the branch data storage memory 300 is composed of six FIFOs 300 1 to 300 6 that are numbers obtained by dividing the number of rows 30 of the conversion check matrix H ′ of FIG. 137 by the number of rows 5 of the configuration matrix.
  • the storage area of the first stage of the FIFO 300 1 includes (1, 1) to (5, 5) of the conversion parity check matrix H ′. The data corresponding to the position of 1 in the 5 ⁇ 5 unit matrix is stored.
  • the shift check matrix H '(1,21) to (5,25) shift matrix (shift matrix obtained by cyclically shifting three 5 ⁇ 5 unit matrices to the right by 3)
  • the data corresponding to the 1 position is stored.
  • the third to eighth storage areas store data in association with the conversion parity check matrix H ′.
  • 1 in the first row of the 5 ⁇ 5 unit matrix is replaced with 0 in the shift matrix from (1,86) to (5,90) of the conversion check matrix H ′. Data corresponding to one position of the shift matrix that has been shifted by one to the left.
  • the storage area of the first stage of the FIFO 300 2 has a sum matrix of (6,1) to (10,5) of the conversion check matrix H ′ (5 ⁇ 5 unit matrix cyclically shifted by one to the right)
  • the data corresponding to the position of 1 of the first shift matrix constituting the first shift matrix and the sum matrix which is the sum of the second shift matrix cyclically shifted by two to the right is stored.
  • the second storage area stores data corresponding to position 1 of the second shift matrix constituting the sum matrix of (6,1) to (10,5) of the conversion check matrix H ′.
  • the constituent matrix is a P ⁇ P unit matrix having a weight of 1, a quasi-unit matrix in which one or more of the elements of the unit matrix are 0, or Data corresponding to the unit matrix, quasi-unit matrix, or 1 position of the shift matrix when the unit matrix or quasi-unit matrix is expressed in the form of a plurality of shift matrices obtained by cyclically shifting the unit matrix or quasi-unit matrix (Messages corresponding to branches belonging to the unit matrix, quasi-unit matrix, or shift matrix) are stored in the same address (the same FIFO among the FIFOs 300 1 to 300 6 ).
  • the third to ninth storage areas are also stored in association with the conversion check matrix H ′.
  • the FIFOs 300 3 to 300 6 store data in association with the conversion check matrix H ′.
  • the branch data storage memory 304 is composed of 18 FIFOs 304 1 to 304 18 obtained by dividing the number of columns 90 of the conversion check matrix H ′ by 5 that is the number of columns of the configuration matrix.
  • the FIFO304 1 the data corresponding to the first position from the first row of the conversion parity check matrix H of FIG. 137 'to the fifth column (messages u j from the check nodes) are packed vertically in each column both Stored in the form (ignoring 0). That is, data corresponding to the position of 1 in the 5 ⁇ 5 unit matrix of (1, 1) to (5, 5) of the conversion parity check matrix H ′ is stored in the first-stage storage area of the FIFO 304 1 . .
  • the sum matrix of (6,1) to (10,5) of the conversion check matrix H ′ (the first shift obtained by cyclically shifting one 5 ⁇ 5 unit matrix to the right by one)
  • the data corresponding to the position of 1 of the first shift matrix constituting the matrix and the sum matrix that is the sum of the matrix and the second shift matrix cyclically shifted by two to the right is stored.
  • the third storage area stores data corresponding to position 1 of the second shift matrix constituting the sum matrix of (6,1) to (10,5) of the conversion check matrix H ′.
  • the constituent matrix is a P ⁇ P unit matrix having a weight of 1, a quasi-unit matrix in which one or more of the elements of the unit matrix are 0, or Data corresponding to the unit matrix, quasi-unit matrix, or 1 position of the shift matrix when the unit matrix or quasi-unit matrix is expressed in the form of a plurality of shift matrices obtained by cyclically shifting the unit matrix or quasi-unit matrix (identity matrix, the message corresponding to the branch belonging to quasi unit matrix or shift matrix) are stored in the same address (same FIFO from among the FIFOs 304 1 to 304 18).
  • data is also stored in the storage areas of the fourth and fifth stages in association with the conversion parity check matrix H ′.
  • the number of stages in the storage area of the FIFO 304 1 is 5, which is the maximum number of 1s (Hamming weights) in the row direction in the first to fifth columns of the conversion parity check matrix H ′.
  • the FIFOs 304 2 and 304 3 store data in association with the conversion parity check matrix H ′, and each has a length (number of stages) of 5.
  • the FIFOs 304 4 to 304 12 store data in association with the conversion check matrix H ′, and each has a length of 3.
  • the FIFOs 304 13 to 304 18 store data in association with the conversion check matrix H ′, and each has a length of 2.
  • the branch data storage memory 300 includes six FIFOs 300 1 to 300 6 , and information (Matrix) indicating to which row of the conversion check matrix H ′ the five messages D 311 supplied from the preceding cyclic shift circuit 308 belong. according to the data) D312, a FIFO to store the data, select from among the FIFO300 1 to 300 6, will be stored in the order together five messages D311 to the selected FIFO. Also, the edge data storage memory 300, when reading data, sequentially reads five messages D300 1 from FIFO 300 1, supplied to the next stage of the selector 301. The branch data storage memory 300 reads the messages in order from the FIFOs 300 2 to 300 6 after reading the messages from the FIFO 300 1 and supplies them to the selector 301.
  • the selector 301 selects five messages from the FIFO from which the current data is read out of the FIFOs 300 1 to 300 6 according to the select signal D301, and supplies the selected message to the check node calculation unit 302 as a message D302.
  • Check node calculation section 302, 302 1 five check node calculator to consist 302 5, messages D302 (D302 1 to D302 5) supplied through the selector 301 using (messages v i of the expression (7)), A check node operation is performed according to Equation (7), and five messages D303 (D303 1 to D303 5 ) (message u j in Equation (7)) obtained as a result of the check node operation are supplied to the cyclic shift circuit 303.
  • the cyclic shift circuit 303 is obtained by cyclically shifting the five unit messages D303 1 to D303 5 obtained by the check node calculation unit 302 from the unit matrix whose corresponding branch is the original in the conversion check matrix H ′. Based on such information (Matrix data) D305, a cyclic shift is performed, and the result is supplied as message D304 to branch data storage memory 304.
  • the branch data storage memory 304 includes 18 FIFOs 304 1 to 304 18 , and is in accordance with information D 305 indicating which row of the conversion check matrix H ′ the five messages D 304 supplied from the preceding cyclic shift circuit 303 belong to.
  • the FIFO for storing data is selected from the FIFOs 304 1 to 304 18 , and the five messages D 304 are collectively stored in the selected FIFO in order.
  • the edge data storage memory 304 when reading data, sequentially reads five messages D306 1 from FIFOs 304 1, supplied to the next stage of the selector 305.
  • Edge data storage memory 304 after completion of the data read from the FIFOs 304 1, from FIFOs 304 2 to 304 18, sequentially reads out a message, to the selector 305.
  • the selector 305 selects five messages from the FIFO from which the current data is read out of the FIFOs 304 1 to 304 18 in accordance with the select signal D307, and as the message D308, the variable node calculation unit 307 and the decoded word calculation unit 309.
  • the received data rearrangement unit 310 rearranges the LDPC code D313 received through the communication path by performing column replacement of Expression (12), and supplies the rearranged data to the received data memory 306 as received data D314.
  • the reception data memory 306 calculates and stores reception LLRs (log likelihood ratios) from the reception data D314 supplied from the reception data rearrangement unit 310, and collects the reception LLRs by five as reception values D309.
  • the variable node calculation unit 307 and the decoded word calculation unit 309 are supplied.
  • the variable node calculation unit 307 includes five variable node calculators 307 1 to 307 5 , a message D308 (D308 1 to D308 5 ) (message u j in Expression (1)) supplied through the selector 305, and received data. using five reception values supplied from use memory 306 D309 (formula (reception values u 0i 1)), the variable node operation according to equation (1), to the message D310 (D310 1 not obtained as a result of the calculation D310 5 ) (message v i in equation (1)) is supplied to the cyclic shift circuit 308.
  • the cyclic shift circuit 308 determines how many times the messages D310 1 to D310 5 calculated by the variable node calculation unit 307 are cyclically shifted from the original unit matrix in the transformation check matrix H ′. A cyclic shift is performed based on the information, and the result is supplied to the branch data storage memory 300 as a message D311.
  • the LDPC code can be decoded once by performing the above operation once.
  • the decoding apparatus in FIG. 138 obtains and outputs a final decoding result in the decoded word calculation unit 309 and the decoded data rearrangement unit 311 after decoding the LDPC code a predetermined number of times.
  • the decoded word calculation unit 309 includes five decoded word calculators 309 1 to 309 5 , and five messages D308 (D308 1 to D308 5 ) (message u j in Expression (5)) output from the selector 305 and Using the five reception values D309 (the reception value u 0i in equation (5)) supplied from the reception data memory 306, the decoding result (decoding) based on equation (5) is used as the final stage of multiple times of decoding. And the decoded data D315 obtained as a result is supplied to the decoded data rearranging unit 311.
  • the decoded data rearrangement unit 311 rearranges the order of the decoded data D315 supplied from the decoded word calculation unit 309 by performing the column substitution inverse substitution in Expression (12), and obtains the final decoding result. Output as D316.
  • one or both of row permutation and column permutation is applied to the parity check matrix (original parity check matrix), and one or more of the P ⁇ P unit matrix and one of its elements is set to 0.
  • a quasi-unit matrix, a unit matrix or a shift matrix obtained by cyclically shifting a quasi-unit matrix, a unit matrix, a quasi-unit matrix, a sum matrix that is a sum of shift matrices, or a combination of P ⁇ P 0 matrices By converting to a parity check matrix (conversion parity check matrix) that can be represented by a combination of component matrices, it is possible to adopt an architecture that decodes LDPC codes and performs P check node operations and variable node operations simultaneously. Thus, a large number of iterative decoding can be performed while suppressing the operation frequency to a range that can be realized by performing P node operations simultaneously.
  • the LDPC decoder 166 constituting the receiving device 12 performs LDPC decoding by simultaneously performing P check node operations and P variable node operations, similarly to the decoding device of FIG. 138.
  • the parity check matrix of the LDPC code output from the LDPC encoder 115 constituting the transmission apparatus 11 of FIG. 8 is, for example, the parity matrix shown in FIG.
  • the parity interleaver 23 of the transmission apparatus 11 interleaves the K + qx + y + 1-th code bit at the position of the K + Py + x + 1-th code bit.
  • the information length K is set to 60
  • the column number P of the cyclic structure unit is set to 5
  • the column twist deinterleaver 55 applies to the LDPC decoder 166 the LDPC code that has not been subjected to parity deinterleaving, that is, the sequence of Expression (12).
  • the LDPC code in a state where the replacement is performed is supplied, and the LDPC decoder 166 performs the same processing as that of the decoding device in FIG. 138 except that the column replacement of the equation (12) is not performed.
  • FIG. 139 shows a configuration example of the LDPC decoder 166 of FIG.
  • the LDPC decoder 166 is configured in the same manner as the decoding device of FIG. 138 except that the received data rearrangement unit 310 of FIG. 138 is not provided, and column replacement of equation (12) is performed. Except for the above, the same processing as that of the decoding device of FIG. 138 is performed, and thus the description thereof is omitted.
  • the scale can be reduced as compared with the decoding apparatus of FIG. 138.
  • the code length N of the LDPC code is 90
  • the information length K is 60
  • the number of columns of the unit of the cyclic structure (the number of rows and the number of columns of the constituent matrix).
  • P is 5
  • the number of columns P is 360, 72, 60, and the divisor q is M / P, respectively.
  • the LDPC decoder 166 in FIG. 139 performs check node operation on such LDPC codes.
  • the present invention can also be applied to LDPC decoding by performing P variable node operations simultaneously.
  • FIG. 140 is a diagram for explaining the processing of the multiplexer 54 constituting the bit deinterleaver 165 of FIG.
  • a in FIG. 140 shows a functional configuration example of the multiplexer 54.
  • the multiplexer 54 includes a reverse switching unit 1001 and a memory 1002.
  • the multiplexer 54 performs reverse replacement processing (reverse processing of replacement processing) corresponding to the replacement processing performed by the demultiplexer 25 of the transmission device 11 on the symbol bit of the symbol supplied from the preceding stage QAM decoder 164, that is, replacement.
  • a reverse replacement process is performed to return the position of the code bit (symbol bit) of the LDPC code replaced by the process to the original position, and the resulting LDPC code is supplied to the subsequent column twist deinterleaver 55.
  • the reverse switching unit 1001 includes the symbol bits y 0 , y 1 ,..., Y mb ⁇ 1 of the b symbols in units of (consecutive) b symbols. Is supplied.
  • the reverse permutation unit 1001 replaces the mb symbol bits y 0 to y mb ⁇ 1 with the original mb bit code bits b 0 , b 1 ,. Reverse replacement is performed to return to the order of the sign bits b 0 to b mb ⁇ 1 before the replacement in the replacement unit 32 constituting the multiplexer 25, and the resulting mb bit code bits b 0 to b mb ⁇ 1 is output.
  • the memory 1002 stores mb bits in the row (horizontal) direction and N / (mb in the column (vertical) direction, similarly to the memory 31 constituting the demultiplexer 25 on the transmission device 11 side. ) It has a storage capacity for storing bits. That is, the memory 1002 includes mb columns that store N / (mb) bits.
  • the code bits of the LDPC code output from the reverse switching unit 1001 are written in the direction in which the code bits are read from the memory 31 of the demultiplexer 25 of the transmission device 11.
  • the sign bit written in the memory 1002 is read in the direction in which the sign bit is written.
  • the multiplexer 54 reads the code bits from the memory 1002 in the column direction and supplies them to the subsequent column twist deinterleaver 55.
  • B in FIG. 140 is a diagram showing reading of the sign bit from the memory 1002.
  • the multiplexer 54 reads the code bits of the LDPC code from the top to the bottom (column direction) of the columns constituting the memory 1002 from the left to the right columns.
  • FIG. 141 is a diagram for explaining processing of the column twist deinterleaver 55 configuring the bit deinterleaver 165 of FIG. 133.
  • FIG. 141 shows a configuration example of the memory 1002 of the multiplexer 54.
  • the memory 1002 stores mb bits in the column (vertical) direction and has a storage capacity for storing N / (mb) bits in the row (horizontal) direction, and includes mb columns.
  • the column twist deinterleaver 55 performs column twist deinterleaving by writing the code bit of the LDPC code in the row direction to the memory 1002 and controlling the read start position when reading in the column direction.
  • the code bit sequence rearranged by the column twist interleave is appropriately changed by appropriately changing the read start position where the code bit read is started for each of the plurality of columns.
  • a reverse rearrangement process for returning the sequence is performed.
  • the column twist deinterleaver 55 sequentially writes the code bits of the LDPC code output from the switching unit 1001 in the row direction, instead of the multiplexer 54, from the first row to the lower row of the memory 1002.
  • the column twist deinterleaver 55 reads the code bits from the top to the bottom (column direction) from the top of the memory 1002 in the column from the left to the right. Do towards.
  • the column twist deinterleaver 55 reads the code bit from the memory 1002 with the write start position where the column twist interleaver 24 on the transmission apparatus 11 side writes the code bit as the code bit read start position. .
  • the column twist deinterleaver 55 sets the read start position for the leftmost column as the position where the address is 0, and the read start position for the second column (from the left). In the third column, the read start position is the position of the address 4, and for the fourth column, the read start position is the position of the address 7.
  • FIG. 142 is a block diagram showing another configuration example of the bit deinterleaver 165 of FIG.
  • bit deinterleaver 165 in FIG. 142 has the same configuration as that in FIG. 133 except that a parity deinterleaver 1011 is newly provided.
  • the bit deinterleaver 165 includes a multiplexer (MUX) 54, a column twist deinterleaver 55, and a parity deinterleaver 1011.
  • the bit deinterleaver 165 performs bit deinterleaving of the code bits of the LDPC code from the QAM decoder 164. Do.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)

Abstract

本発明は、データのエラーに対する耐性を向上させることができるデータ処理装置、及びデータ処理方法に関する。 LDPCエンコーダ115は、符号長が4320ビットで、符号化率が1/2,7/12,2/3、及び、3/4の4種類のうちのいずれかのLDPC符号による符号化を行う。LDPC符号の検査行列Hは、検査行列Hの、符号長及び符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる情報行列の1の要素を、列方向に72列ごとの周期で配置して構成される。検査行列初期値テーブルは、例えば、携帯端末向けのディジタル放送用のものになっている。本発明は、LDPC符号化を行う場合に適用できる。

Description

データ処理装置、及びデータ処理方法
 本発明は、データ処理装置、及びデータ処理方法に関し、特に、例えば、データのエラーに対する耐性を向上させることができるようにするデータ処理装置、及び、データ処理方法に関する。
 LDPC(Low Density Parity Check)符号は、高い誤り訂正能力を有し、近年では、例えば、欧州で行われているDVB(Digital Video Broadcasting)-S.2等の衛星ディジタル放送を含む伝送方式に広く採用され始めている(例えば、非特許文献1を参照)。また、LDPC符号は、次世代の地上ディジタル放送にも採用が検討されている。
 LDPC符号は、近年の研究により、ターボ符号等と同様に、符号長を長くしていくにしたがって、シャノン限界に近い性能が得られることがわかりつつある。また、LDPC符号は、最小距離が符号長に比例するという性質があることから、その特徴として、ブロック誤り確率特性がよく、さらに、ターボ符号等の復号特性において観測される、いわゆるエラーフロア現象が殆ど生じないことも利点として挙げられる。
 以下、このようなLDPC符号について具体的に説明する。なお、LDPC符号は、線形符号であり、必ずしも2元である必要はないが、ここでは、2元であるものとして説明する。
 LDPC符号は、そのLDPC符号を定義する検査行列(parity check matrix)が疎なものであることを最大の特徴とする。ここで、疎な行列とは、行列の要素の"1"の個数が非常に少ない行列(ほとんどの要素が0の行列)である。
 図1は、LDPC符号の検査行列Hの例を示している。
 図1の検査行列Hでは、各列の重み(列重み)("1"の数)(weight)が"3"であり、且つ、各行の重み(行重み)が"6"になっている。
 LDPC符号による符号化(LDPC符号化)では、例えば、検査行列Hに基づいて生成行列Gを生成し、この生成行列Gを2元の情報ビットに対して乗算することで、符号語(LDPC符号)が生成される。
 具体的には、LDPC符号化を行う符号化装置は、まず、検査行列Hの転置行列HTとの間に、式GHT=0が成立する生成行列Gを算出する。ここで、生成行列Gが、K×N行列である場合には、符号化装置は、生成行列Gに対してKビットからなる情報ビットのビット列(ベクトルu)を乗算し、Nビットからなる符号語c(=uG)を生成する。この符号化装置によって生成された符号語(LDPC符号)は、所定の通信路を介して受信側において受信される。
 LDPC符号の復号は、Gallagerが確率復号(Probabilistic Decoding)と称して提案したアルゴリズムであって、バリアブルノード(variable node(メッセージノード(message node)とも呼ばれる))と、チェックノード(check node)とからなる、いわゆるタナーグラフ(Tanner graph)上での確率伝播(belief propagation)によるメッセージ・パッシング・アルゴリズムによって行うことが可能である。ここで、以下、適宜、バリアブルノードとチェックノードを、単に、ノードともいう。
 図2は、LDPC符号の復号の手順を示している。
 なお、以下、適宜、受信側で受信したLDPC符号(1符号語)のi番目の符号ビットの、値の"0"らしさを対数尤度比(log likelihood ratio)で表現した実数値(受信LLR)を、受信値u0iともいう。また、チェックノードから出力されるメッセージをujとし、バリアブルノードから出力されるメッセージをviとする。
 まず、LDPC符号の復号においては、図2に示すように、ステップS11において、LDPC符号が受信され、メッセージ(チェックノードメッセージ)ujが"0"に初期化されるとともに、繰り返し処理のカウンタとしての整数をとる変数kが"0"に初期化され、ステップS12に進む。ステップS12において、LDPC符号を受信して得られる受信値u0iに基づいて、式(1)に示す演算(バリアブルノード演算)を行うことによってメッセージ(バリアブルノードメッセージ)viが求められ、さらに、このメッセージviに基づいて、式(2)に示す演算(チェックノード演算)を行うことによってメッセージujが求められる。
Figure JPOXMLDOC01-appb-M000001
                        ・・・(1)
Figure JPOXMLDOC01-appb-M000002
                        ・・・(2)
 ここで、式(1)と式(2)におけるdvとdcは、それぞれ、検査行列Hの縦方向(列)と横方向(行)の"1"の個数を示す任意に選択可能とされるパラメータであり、例えば、(3,6)符号の場合には、dv=3,dc=6となる。
 なお、式(1)のバリアブルノード演算、及び(2)のチェックノード演算においては、それぞれ、メッセージを出力しようとする枝(edge)(バリアブルノードとチェックノードとを結ぶ線)から入力されたメッセージを、演算の対象としないことから、演算の範囲が、1ないしdv-1又は1ないしdc-1となっている。また、式(2)のチェックノード演算は、実際には、2入力v1,v2に対する1出力で定義される式(3)に示す関数R(v1,v2)のテーブルを予め作成しておき、これを式(4)に示すように連続的(再帰的)に用いることによって行われる。
Figure JPOXMLDOC01-appb-M000003
                        ・・・(3)
Figure JPOXMLDOC01-appb-M000004
                        ・・・(4)
 ステップS12では、さらに、変数kが"1"だけインクリメントされ、ステップS13に進む。ステップS13では、変数kが所定の繰り返し復号回数Cよりも大きいか否かが判定される。ステップS13において、変数kがCよりも大きくないと判定された場合、ステップS12に戻り、以下、同様の処理が繰り返される。
 また、ステップS13において、変数kがCよりも大きいと判定された場合、ステップS14に進み、式(5)に示す演算を行うことによって最終的に出力する復号結果としてのメッセージviが求められて出力され、LDPC符号の復号処理が終了する。
Figure JPOXMLDOC01-appb-M000005
                        ・・・(5)
 ここで、式(5)の演算は、式(1)のバリアブルノード演算とは異なり、バリアブルノードに接続している全ての枝からのメッセージujを用いて行われる。
 図3は、(3,6)LDPC符号(符号化率1/2、符号長12)の検査行列Hの例を示している。
 図3の検査行列Hでは、図1と同様に、列の重みが3に、行の重みが6に、それぞれなっている。
 図4は、図3の検査行列Hのタナーグラフを示している。
 ここで、図4において、プラス"+"で表わされるのが、チェックノードであり、イコール"="で表わされるのが、バリアブルノードである。チェックノードとバリアブルノードは、それぞれ、検査行列Hの行と列に対応する。チェックノードとバリアブルノードとの間の結線は、枝(edge)であり、検査行列の要素の"1"に相当する。
 すなわち、検査行列の第j行第i列の要素が1である場合には、図4において、上からi番目のバリアブルノード("="のノード)と、上からj番目のチェックノード("+"のノード)とが、枝により接続される。枝は、バリアブルノードに対応する符号ビットが、チェックノードに対応する拘束条件を持つことを表す。
 LDPC符号の復号方法であるサムプロダクトアルゴリズム(Sum Product Algorithm)では、バリアブルノード演算とチェックノード演算とが繰り返し行われる。
 図5は、バリアブルノードで行われるバリアブルノード演算を示している。
 バリアブルノードでは、計算しようとしている枝に対応するメッセージviは、バリアブルノードに繋がっている残りの枝からのメッセージu1およびu2と、受信値u0iを用いた式(1)のバリアブルノード演算により求められる。他の枝に対応するメッセージも同様に求められる。
 図6は、チェックノードで行われるチェックノード演算を示している。
 ここで、式(2)のチェックノード演算は、式a×b=exp{ln(|a|)+ln(|b|)}×sign(a)×sign(b)の関係を用いて、式(6)に書き直すことができる。但し、sign(x)は、x≧0のとき1であり、x<0のとき-1である。
Figure JPOXMLDOC01-appb-M000006
                        ・・・(6)
 x≧0において、関数φ(x)を、式φ(x)=ln(tanh(x/2))と定義すると、式φ-1(x)=2tanh-1(e-x)が成り立つから、式(6)は、式(7)に変形することができる。
Figure JPOXMLDOC01-appb-M000007
                        ・・・(7)
 チェックノードでは、式(2)のチェックノード演算が、式(7)に従って行われる。
 すなわち、チェックノードでは、図6のように、計算しようとしている枝に対応するメッセージujは、チェックノードに繋がっている残りの枝からのメッセージv1,v2,v3,v4,v5を用いた式(7)のチェックノード演算によって求められる。他の枝に対応するメッセージも同様に求められる。
 なお、式(7)の関数φ(x)は、式φ(x)=ln((ex+1)/(ex-1))で表すことができ、x>0において、φ(x)=φ-1(x)である。関数φ(x)およびφ-1(x)をハードウェアに実装する際には、LUT(Look Up Table)を用いて実装される場合があるが、両者共に同一のLUTとなる。
DVB-S.2 : ETSI EN 302 307 V1.1.2 (2006-06)
 LDPC符号は、衛星ディジタル放送の規格であるDVB-S.2や、次世代の地上ディジタル放送の規格であるDVB-T.2で採用されている。また、LDPC符号は、次世代のCATV(Cable Television)ディジタル放送の規格であるDVB-C.2での採用が予定されている。
 DVB-S.2等のDVBの規格に準拠したディジタル放送では、LDPC符号が、QPSK(Quadrature Phase Shift Keying)等の直交変調(ディジタル変調)のシンボルとされ(シンボル化され)、そのシンボルが信号点にマッピングされて送信される。
 LDPC符号のシンボル化では、LDPC符号の符号ビットの入れ替えが、2ビット以上の符号ビット単位で行われ、その入れ替え後の符号ビットが、シンボルのビットとされる。
 LDPC符号のシンボル化のための、符号ビットの入れ替えの方式としては、種々の方式で提案されており、例えば、DVB-T.2でも規定されている。
 ところで、DVB-T.2は、家庭等に設置されるテレビジョン受像機等の固定端末向けのディジタル放送の規格であり、携帯端末向けのディジタル放送には、適切でない場合がある。
 すなわち、携帯端末は、固定端末に比較して、回路規模を小さくする必要があり、低消費電力化を図る必要がある。したがって、携帯端末向けのディジタル放送では、携帯端末でのLDPC符号の復号等の処理に必要な負荷を軽減するために、例えば、LDPC符号の復号の繰り返し回数(繰り返し復号回数C)や、LDPC符号の符号長等が、固定端末向けのディジタル放送の場合よりも制限されることがある。
 しかしながら、そのような制限の下であっても、エラーに対する耐性は、ある程度維持する必要がある。
 本発明は、このような状況に鑑みてなされたものであり、LDPC符号等のデータのエラーに対する耐性を向上させることができるようにするものである。
 本発明の第1の側面のデータ処理装置、又は、データ処理方法は、符号長が4320ビットで、符号化率が1/2のLDPC符号による符号化を行う符号化手段、又は、符号化ステップを備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117
 3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956
 148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055
 185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991
 424 444 923 1679
 91 436 535 978
 362 677 821 1695
 1117 1392 1454 2030
 35 840 1477 2152
 1061 1202 1836 1879
 242 286 1140 1538
 111 240 481 760
 59 1268 1899 2144
 737 1299 1395 2072
 34 288 810 1903
 232 1013 1365 1729
 410 783 1066 1187
 113 885 1423 1560
 760 909 1475 2048
 68 254 420 1867
 283 325 334 970
 168 321 479 554
 378 836 1913 1928
 101 238 964 1393
 304 460 1497 1588
 151 192 1075 1614
 297 313 677 1303
 329 447 1348 1832
 582 831 984 1900
 からなるデータ処理装置、又は、データ処理方法である。
 本発明の第2の側面のデータ処理装置、又は、データ処理方法は、符号長が4320ビットで、符号化率が7/12のLDPC符号による符号化を行う符号化手段、又は、符号化ステップを備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702
 22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794
 80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753
 15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348
 11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783
 455 610 1123 1603
 631 914 1424 1461
 149 507 1275 1468
 5 1078 1415 1735
 169 772 775 1516
 1207 1315 1683 1688
 19 1053 1221 1260
 933 1095 1597 1628
 893 1209 1360 1740
 1222 1486 1675 1737
 897 1074 1651 1728
 115 730 1363 1752
 1552 1672 1734 1795
 75 1087 1371 1712
 123 438 839 1074
 4 203 1407 1798
 441 476 658 1400
 380 1341 1741 1774
 974 1487 1664 1756
 7 273 834 1658
 798 1475 1653 1686
 12 1237 1539 1709
 211 1494 1618 1624
 367 1036 1390 1587
 18 166 1645 1679
 530 1092 1571 1707
 588 1593 1689 1707
 980 1104 1522 1701
 1025 1510 1552 1683
 270 340 1326 1770
 からなるデータ処理装置、又は、データ処理方法である。
 本発明の第3の側面のデータ処理装置、又は、データ処理方法は、符号長が4320ビットで、符号化率が2/3のLDPC符号による符号化を行う符号化手段、又は、符号化ステップを備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428
 1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431
 2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422
 50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260
 151 674 732 1240
 1099 1250 1348 1366
 1115 1124 1394 1414
 66 250 875 1040
 525 603 916 1402
 529 561 913 1089
 1110 1243 1280 1372
 137 656 1316 1369
 5 458 1043 1381
 1122 1171 1187 1335
 18 130 312 1209
 30 534 705 1294
 272 727 955 1192
 925 1287 1385 1437
 11 446 1281 1408
 614 716 787 1340
 615 1147 1411 1416
 284 865 1151 1414
 202 689 1088 1144
 459 633 838 941
 46 301 1229 1367
 476 1031 1120 1418
 138 336 560 1419
 168 357 536 938
 1001 1052 1162 1414
 349 1039 1353 1426
 146 203 530 549
 510 545 979 1108
 479 1069 1106 1244
 743 1019 1275 1348
 427 721 1023 1435
 73 842 1296 1435
 323 1106 1140 1428
 1074 1235 1353 1391
 からなるデータ処理装置、又は、データ処理方法である。
 本発明の第4の側面のデータ処理装置、又は、データ処理方法は、符号長が4320ビットで、符号化率が3/4のLDPC符号による符号化を行う符号化手段、又は、符号化ステップを備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069
 4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076
 0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064
 10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069
 12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072
 124 381 715 981
 503 610 633 1030
 321 874 900 1020
 509 817 902 978
 3 118 688 911
 515 644 848 1067
 13 75 721 970
 9 464 756 1023
 26 219 304 672
 5 310 410 695
 0 7 267 1040
 76 822 873 1043
 7 129 1010 1065
 115 156 714 1003
 163 480 505 1079
 238 601 743 1046
 216 702 738 912
 13 20 166 979
 11 14 261 1051
 186 476 595 843
 13 237 451 532
 7 11 594 738
 10 225 495 851
 520 675 1018 1045 9 352 514 543
 60 917 1071 1074
 471 556 673 1062
 345 350 1043 1076
 5 539 788 1061
 704 851 883 1049
 211 233 242 1072
 9 1047 1057 1076
 18 172 473 1042
 365 488 921 968
 211 216 554 824
 1 709 923 1074
 576 647 901 963
 71 676 1053 1073 265 738 958 969
 66 274 774 811
 からなるデータ処理装置、又は、データ処理方法である。
 本発明の第5の側面のデータ処理装置は、LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、符号長が4320ビットで、符号化率が1/2のLDPC符号の復号を行う復号手段を備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117
 3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956
 148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055
 185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991
 424 444 923 1679
 91 436 535 978
 362 677 821 1695
 1117 1392 1454 2030
 35 840 1477 2152
 1061 1202 1836 1879
 242 286 1140 1538
 111 240 481 760
 59 1268 1899 2144
 737 1299 1395 2072
 34 288 810 1903
 232 1013 1365 1729
 410 783 1066 1187
 113 885 1423 1560
 760 909 1475 2048
 68 254 420 1867
 283 325 334 970
 168 321 479 554
 378 836 1913 1928
 101 238 964 1393
 304 460 1497 1588
 151 192 1075 1614
 297 313 677 1303
 329 447 1348 1832
 582 831 984 1900
 からなるデータ処理装置である。
 本発明の第6の側面のデータ処理装置は、LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、符号長が4320ビットで、符号化率が7/12のLDPC符号の復号を行う復号手段を備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702
 22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794
 80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753
 15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348
 11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783
 455 610 1123 1603
 631 914 1424 1461
 149 507 1275 1468
 5 1078 1415 1735
 169 772 775 1516
 1207 1315 1683 1688
 19 1053 1221 1260
 933 1095 1597 1628
 893 1209 1360 1740
 1222 1486 1675 1737
 897 1074 1651 1728
 115 730 1363 1752
 1552 1672 1734 1795
 75 1087 1371 1712
 123 438 839 1074
 4 203 1407 1798
 441 476 658 1400
 380 1341 1741 1774
 974 1487 1664 1756
 7 273 834 1658
 798 1475 1653 1686
 12 1237 1539 1709
 211 1494 1618 1624
 367 1036 1390 1587
 18 166 1645 1679
 530 1092 1571 1707
 588 1593 1689 1707
 980 1104 1522 1701
 1025 1510 1552 1683
 270 340 1326 1770
 からなるデータ処理装置である。
 本発明の第7の側面のデータ処理装置は、LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、符号長が4320ビットで、符号化率が2/3のLDPC符号の復号を行う復号手段を備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428
 1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431
 2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422
 50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260
 151 674 732 1240
 1099 1250 1348 1366
 1115 1124 1394 1414
 66 250 875 1040
 525 603 916 1402
 529 561 913 1089
 1110 1243 1280 1372
 137 656 1316 1369
 5 458 1043 1381
 1122 1171 1187 1335
 18 130 312 1209
 30 534 705 1294
 272 727 955 1192
 925 1287 1385 1437
 11 446 1281 1408
 614 716 787 1340
 615 1147 1411 1416
 284 865 1151 1414
 202 689 1088 1144
 459 633 838 941
 46 301 1229 1367
 476 1031 1120 1418
 138 336 560 1419
 168 357 536 938
 1001 1052 1162 1414
 349 1039 1353 1426
 146 203 530 549
 510 545 979 1108
 479 1069 1106 1244
 743 1019 1275 1348
 427 721 1023 1435
 73 842 1296 1435
 323 1106 1140 1428
 1074 1235 1353 1391
 からなるデータ処理装置である。
 本発明の第8の側面のデータ処理装置は、LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、符号長が4320ビットで、符号化率が3/4のLDPC符号の復号を行う復号手段を備え、前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、前記検査行列初期値テーブルは、
 3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069
 4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076
 0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064
 10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069
 12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072
 124 381 715 981
 503 610 633 1030
 321 874 900 1020
 509 817 902 978
 3 118 688 911
 515 644 848 1067
 13 75 721 970
 9 464 756 1023
 26 219 304 672
 5 310 410 695
 0 7 267 1040
 76 822 873 1043
 7 129 1010 1065
 115 156 714 1003
 163 480 505 1079
 238 601 743 1046
 216 702 738 912
 13 20 166 979
 11 14 261 1051
 186 476 595 843
 13 237 451 532
 7 11 594 738
 10 225 495 851
 520 675 1018 1045
 9 352 514 543
 60 917 1071 1074
 471 556 673 1062
 345 350 1043 1076
 5 539 788 1061
 704 851 883 1049
 211 233 242 1072
 9 1047 1057 1076
 18 172 473 1042
 365 488 921 968
 211 216 554 824
 1 709 923 1074
 576 647 901 963
 71 676 1053 1073
 265 738 958 969
 66 274 774 811
 からなるデータ処理装置である。
 本発明の第1ないし第4の側面においては、符号長が4320ビットで、符号化率が1/2,7/12,2/3、又は、3/4のLDPC符号による符号化が行われる。
 本発明の第5ないし第8の側面においては、符号長が4320ビットで、符号化率が1/2,7/12,2/3、又は、3/4のLDPC符号の復号が行われる。
 前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、符号化率が1/2のLDPC符号の前記検査行列初期値テーブルは、
 142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117
 3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956
 148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055
 185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991
 424 444 923 1679
 91 436 535 978
 362 677 821 1695
 1117 1392 1454 2030
 35 840 1477 2152
 1061 1202 1836 1879
 242 286 1140 1538
 111 240 481 760
 59 1268 1899 2144
 737 1299 1395 2072
 34 288 810 1903
 232 1013 1365 1729
 410 783 1066 1187
 113 885 1423 1560
 760 909 1475 2048
 68 254 420 1867
 283 325 334 970
 168 321 479 554
 378 836 1913 1928
 101 238 964 1393
 304 460 1497 1588
 151 192 1075 1614
 297 313 677 1303
 329 447 1348 1832
 582 831 984 1900
 からなり、符号化率が7/12のLDPC符号の前記検査行列初期値テーブルは、
 96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702
 22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794
 80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753
 15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348
 11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783
 455 610 1123 1603
 631 914 1424 1461
 149 507 1275 1468
 5 1078 1415 1735
 169 772 775 1516
 1207 1315 1683 1688
 19 1053 1221 1260
 933 1095 1597 1628
 893 1209 1360 1740
 1222 1486 1675 1737
 897 1074 1651 1728
 115 730 1363 1752
 1552 1672 1734 1795
 75 1087 1371 1712
 123 438 839 1074
 4 203 1407 1798
 441 476 658 1400
 380 1341 1741 1774
 974 1487 1664 1756
 7 273 834 1658
 798 1475 1653 1686
 12 1237 1539 1709
 211 1494 1618 1624
 367 1036 1390 1587
 18 166 1645 1679
 530 1092 1571 1707
 588 1593 1689 1707
 980 1104 1522 1701
 1025 1510 1552 1683
 270 340 1326 1770
 からなり、符号化率が2/3のLDPC符号の前記検査行列初期値テーブルは、
 56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428
 1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431
 2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422
 50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260
 151 674 732 1240
 1099 1250 1348 1366
 1115 1124 1394 1414
 66 250 875 1040
 525 603 916 1402
 529 561 913 1089
 1110 1243 1280 1372
 137 656 1316 1369
 5 458 1043 1381
 1122 1171 1187 1335
 18 130 312 1209
 30 534 705 1294
 272 727 955 1192
 925 1287 1385 1437
 11 446 1281 1408
 614 716 787 1340
 615 1147 1411 1416
 284 865 1151 1414
 202 689 1088 1144
 459 633 838 941
 46 301 1229 1367
 476 1031 1120 1418
 138 336 560 1419
 168 357 536 938
 1001 1052 1162 1414
 349 1039 1353 1426
 146 203 530 549
 510 545 979 1108
 479 1069 1106 1244
 743 1019 1275 1348
 427 721 1023 1435
 73 842 1296 1435
 323 1106 1140 1428
 1074 1235 1353 1391
 からなり、符号化率が3/4のLDPC符号の前記検査行列初期値テーブルは、
 3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069
 4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076
 0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064
 10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069
 12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072
 124 381 715 981
 503 610 633 1030
 321 874 900 1020
 509 817 902 978
 3 118 688 911
 515 644 848 1067
 13 75 721 970
 9 464 756 1023
 26 219 304 672
 5 310 410 695
 0 7 267 1040
 76 822 873 1043
 7 129 1010 1065
 115 156 714 1003
 163 480 505 1079
 238 601 743 1046
 216 702 738 912
 13 20 166 979
 11 14 261 1051
 186 476 595 843
 13 237 451 532
 7 11 594 738
 10 225 495 851
 520 675 1018 1045
 9 352 514 543
 60 917 1071 1074
 471 556 673 1062
 345 350 1043 1076
 5 539 788 1061
 704 851 883 1049
 211 233 242 1072
 9 1047 1057 1076
 18 172 473 1042
 365 488 921 968
 211 216 554 824
 1 709 923 1074
 576 647 901 963
 71 676 1053 1073
 265 738 958 969
 66 274 774 811
 からなる。
 なお、データ処理装置は、独立した装置であっても良いし、1個の装置を構成している内部ブロックであっても良い。
 本発明の第1ないし第8の側面によれば、エラーに対する耐性を向上させることができる。
LDPC符号の検査行列Hを説明する図である。 LDPC符号の復号手順を説明するフローチャートである。 LDPC符号の検査行列の例を示す図である。 検査行列のタナーグラフを示す図である。 バリアブルノードを示す図である。 チェックノードを示す図である。 本発明を適用した伝送システムの一実施の形態の構成例を示す図である。 送信装置11の構成例を示すブロック図である。 ビットインターリーバ116の構成例を示すブロック図である。 検査行列を示す図である。 パリティ行列を示す図である。 DVB-S.2の規格に規定されているLDPC符号の検査行列を説明する図である。 DVB-S.2の規格に規定されているLDPC符号の検査行列を説明する図である。 16QAMの信号点配置を示す図である。 64QAMの信号点配置を示す図である。 64QAMの信号点配置を示す図である。 64QAMの信号点配置を示す図である。 デマルチプレクサ25の処理を説明する図である。 デマルチプレクサ25の処理を説明する図である。 LDPC符号の復号についてのタナーグラフを示す図である。 階段構造になっているパリティ行列HTと、そのパリティ行列HTに対応するタナーグラフを示す図である。 パリティインターリーブ後のLDPC符号に対応する検査行列Hのパリティ行列HTを示す図である。 変換検査行列を示す図である。 カラムツイストインターリーバ24の処理を説明する図である。 カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスを示す図である。 カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスを示す図である。 ビットインターリーバ116、及び、QAMエンコーダ117で行われる処理を説明するフローチャートである。 シミュレーションで採用した通信路のモデルを示す図である。 シミュレーションで得られたエラーレートと、フラッタのドップラ周波数fdとの関係を示す図である。 シミュレーションで得られたエラーレートと、フラッタのドップラ周波数fdとの関係を示す図である。 LDPCエンコーダ115の構成例を示すブロック図である。 LDPCエンコーダ115の処理を説明するフローチャートである。 符号化率1/4、符号長16200の検査行列初期値テーブルの例を示す図である。 検査行列初期値テーブルから検査行列Hを求める方法を説明する図である。 符号化率1/4、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率1/3、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率5/12、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率1/2、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率7/12、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率2/3、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率3/4、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率5/6、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率11/12、符号長4320の検査行列初期値テーブルの例を示す図である。 列重みが3で、行重みが6であるというデグリーシーケンスのアンサンブルのタナーグラフの例を示す図である。 マルチエッジタイプのアンサンブルのタナーグラフの例を示す図である。 符号長4320のLDPC符号の検査行列の最小サイクル長と性能閾値とを示す図である。 符号長4320のLDPC符号の検査行列を説明する図である。 符号長4320のLDPC符号の検査行列を説明する図である。 カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスを示す図である。 カラムツイストインターリーブを行った場合のBERのシミュレーション結果を示す図である。 現行方式の入れ替え処理を説明する図である。 現行方式の入れ替え処理を説明する図である。 符号長4k、符号化率1/4のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率1/4のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率1/4のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率1/3のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率1/3のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率1/3のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率5/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率5/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率5/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率1/2のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率1/2のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率1/2のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率7/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率7/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率7/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率2/3のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率2/3のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率2/3のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率3/4のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率3/4のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率3/4のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率5/6のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率5/6のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率5/6のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率11/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率11/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率11/12のLDPC符号を64QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率1/4のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率1/4のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率1/4のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率1/3のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率1/3のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率1/3のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率5/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率5/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率5/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率1/2のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率1/2のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率1/2のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率7/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率7/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率7/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率2/3のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率2/3のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率2/3のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率3/4のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率3/4のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率3/4のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率5/6のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率5/6のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率5/6のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率11/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示す図である。 符号長4k、符号化率11/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールを示す図である。 符号長4k、符号化率11/12のLDPC符号を16QAMで変調し、倍数bが2である場合の、割り当てルールに従った符号ビットの入れ替えを示す図である。 符号長4k、符号化率1/4のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率1/3のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率5/12のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率1/2のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率7/12のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率2/3のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率3/4のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率5/6のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率11/12のLDPC符号を64QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率1/4のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率1/3のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率5/12のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率1/2のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率7/12のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率2/3のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率3/4のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率5/6のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号長4k、符号化率11/12のLDPC符号を16QAMで変調し、倍数bが2である場合のBERのシミュレーション結果を示す図である。 符号化率1/2、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率7/12、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率2/3、符号長4320の検査行列初期値テーブルの例を示す図である。 符号化率3/4、符号長4320の検査行列初期値テーブルの例を示す図である。 符号長4320のLDPC符号の検査行列の最小サイクル長と性能閾値とを示す図である。 符号長4320のLDPC符号の検査行列を説明する図である。 BERのシミュレーション結果を示す図である。 受信装置12の構成例を示すブロック図である。 ビットデインターリーバ165の構成例を示すブロック図である。 QAMデコーダ164、ビットデインターリーバ165、及び、LDPCデコーダ166が行う処理を説明するフローチャートである。 LDPC符号の検査行列の例を示す図である。 検査行列に行置換と列置換を施した行列(変換検査行列)を示す図である。 5×5単位に分割した変換検査行列を示す図である。 ノード演算をP個まとめて行う復号装置の構成例を示すブロック図である。 LDPCデコーダ166の構成例を示すブロック図である。 ビットデインターリーバ165を構成するマルチプレクサ54の処理を説明する図である。 カラムツイストデインターリーバ55の処理を説明する図である。 ビットデインターリーバ165の他の構成例を示すブロック図である。 受信装置12を適用可能な受信システムの第1の構成例を示すブロック図である。 受信装置12を適用可能な受信システムの第2の構成例を示すブロック図である。 受信装置12を適用可能な受信システムの第3の構成例を示すブロック図である。 本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
 [本発明を適用した伝送システムの構成例]
 図7は、本発明を適用した伝送システム(システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは、問わない)の一実施の形態の構成例を示している。
 図7において、伝送システムは、送信装置11と受信装置12とから構成される。
 送信装置11は、固定端末向けや携帯端末向けの番組の送信(放送)(伝送)を行う。すなわち、送信装置11は、例えば、固定端末向けや携帯端末向けの番組としての画像データや音声データ等の、送信の対象である対象データをLDPC符号に符号化し、例えば、地上波である通信路13を介して送信する。
 受信装置12は、例えば、携帯端末であり、送信装置11から通信路13を介して送信されてくるLDPC符号を受信し、対象データに復号して出力する。
 ここで、図7の伝送システムで使用されるLDPC符号は、AWGN(Additive White Gaussian Noise)通信路で極めて高い能力を発揮することが知られている。
 しかしながら、地上波等の通信路13では、バースト(burst)誤りやイレージャ(erasure)を発生することがある。例えば、OFDM(Orthogonal Frequency Division Multiplexing)システムでは、D/U(Desired to Undesired Ratio)が0dB(Undesired=echoのパワーがDesired=メインパスのパワーと等しい)のマルチパス環境において、エコー(echo)(メインパス以外のパス)の遅延(delay)に応じて、特定のシンボルのパワーが0になってしまう(erasure)場合がある。
 また、フラッタ(flutter)(遅延が0でドップラ(dopper)周波数の掛かったechoが加算される通信路)でも、D/Uが0dBである場合には、ドップラ周波数によって、特定の時刻のOFDMのシンボル全体のパワーが0になる(erasure)場合が生じる。
 さらに、受信装置12側の、送信装置11からの信号を受信するアンテナ等の受信部(図示せず)から受信装置12までの配線の状況や、受信装置12の電源の不安定性により、バースト誤りが発生することがある。
 一方、LDPC符号の復号においては、検査行列Hの列、ひいては、LDPC符号の符号ビットに対応するバリアブルノードにおいて、前述の図5に示したように、LDPC符号の符号ビット(の受信値u0i)の加算を伴う式(1)のバリアブルノード演算が行われるため、そのバリアブルノード演算に用いられる符号ビットにエラーが生じると、求められるメッセージの精度が低下する。
 そして、LDPC符号の復号では、チェックノードにおいて、そのチェックノードに繋がっているバリアブルノードで求められるメッセージを用いて、式(7)のチェックノード演算が行われるため、繋がっている複数のバリアブルノード(に対応するLDPC符号の符号ビット)が同時にエラー(イレージャを含む)となるチェックノードの数が多くなると、復号の性能が劣化する。
 すなわち、例えば、チェックノードは、そのチェックノードに繋がっているバリアブルノードの2個以上が同時にイレージャになると、全バリアブルノードに、値が0である確率と1である確率とが等確率のメッセージを戻す。この場合、等確率のメッセージを戻すチェックノードは、1回の復号処理(1セットのバリアブルノード演算及びチェックノード演算)に寄与しないこととなり、その結果、復号処理の繰り返し回数を多く必要とすることになって、復号の性能が劣化し、さらに、LDPC符号の復号を行う受信装置12の消費電力が増大する。
 そこで、図7の伝送システムでは、AWGN通信路での性能を維持しつつ、バースト誤りやイレージャへの耐性を向上させるようになっている。
 [送信装置11の構成例]
 図8は、図7の送信装置11の構成例を示すブロック図である。
 送信装置11では、対象データとしての1以上のインプットストリーム(Input Streams)が、モードアダプテーション/マルチプレクサ(Mode Adaptation/Multiplexer)111に供給される。
 モードアダプテーション/マルチプレクサ111は、モード選択、及び、そこに供給される1以上のインプットストリームの多重化を行い、その結果得られるデータを、パダー(padder)112に供給する。
 パダー112は、モードアダプテーション/マルチプレクサ111からのデータに対して、必要なゼロ詰め(Nullの挿入)を行い、その結果得られるデータを、BBスクランブラ(BB Scrambler)113に供給する。
 BBスクランブラ113は、パダー112からのデータに、エネルギ拡散処理を施し、その結果得られるデータを、BCHエンコーダ(BCH encoder)114に供給する。
 BCHエンコーダ114は、BBスクランブラ113からのデータをBCH符号化し、その結果得られるデータを、LDPC符号化の対象であるLDPC対象データとして、LDPCエンコーダ(LDPC encoder)115に供給する。
 LDPCエンコーダ115は、BCHエンコーダ114からのLDPC対象データについて、LDPC符号のパリティビットに対応する部分であるパリティ行列が階段構造になっている検査行列に従ったLDPC符号化を行い、LDPC対象データを情報ビットとするLDPC符号を出力する。
すなわち、LDPCエンコーダ115は、LDPC対象データを、例えば、DVB-T.2の規格に規定されているLDPC符号等のLDPC符号に符号化するLDPC符号化を行い、その結果得られるLDPC符号を出力する。
 ここで、DVB-T.2の規格では、符号長が16200ビットで、符号化率が3/5の場合を除き、DVB-S.2の規格に規定されているLDPC符号が採用されている。DVB-T.2の規格に規定されているLDPC符号は、IRA(Irregular Repeat Accumulate)符号であり、そのLDPC符号の検査行列におけるパリティ行列は、階段構造になっている。パリティ行列、及び、階段構造については、後述する。また、IRA符号については、例えば、"Irregular Repeat-Accumulate Codes," H. Jin, A. Khandekar, and R. J. McEliece, in Proceedings of 2nd International Symposium on Turbo codes and Related Topics, pp. 1-8, Sept. 2000に記載されている。
 LDPCエンコーダ115が出力するLDPC符号は、ビットインターリーバ116に供給される。
 ビットインターリーバ116は、LDPCエンコーダ115からのLDPC符号について、後述するビットインターリーブを行い、そのビットインターリーブ後のLDPC符号を、QAMエンコーダ(QAM encoder)117に供給する。
 QAMエンコーダ117は、ビットインターリーバ116からのLDPC符号を、そのLDPC符号の1ビット以上の符号ビットの単位(シンボル単位)で、直交変調の1つのシンボルを表す信号点にマッピングして直交変調(多値変調)を行う。
 すなわち、QAMエンコーダ117は、ビットインターリーバ116からのLDPC符号を、搬送波と同相のI成分を表すI軸と、搬送波と直交するQ成分を表すQ軸とで規定されるIQ平面(IQコンスタレーション)上の、LDPC符号の直交変調を行う変調方式で定める信号点にマッピングして直交変調を行う。
 ここで、QAMエンコーダ117で行われる直交変調の変調方式としては、例えば、DVB-Tの規格に規定されている変調方式を含む変調方式、すなわち、例えば、QPSK(Quadrature Phase Shift Keying)や、16QAM(Quadrature Amplitude Modulation),64QAM,256QAM,1024QAM,4096QAM等がある。QAMエンコーダ117において、いずれの変調方式による直交変調が行われるかは、例えば、送信装置11のオペレータの操作に従って、あらかじめ設定される。なお、QAMエンコーダ117では、その他、例えば、4PAM(Pulse Amplitude Modulation)その他の直交変調を行うことが可能である。
 QAMエンコーダ117での処理により得られるデータ(信号点にマッピングされたシンボル)は、時間インターリーバ(Time Interleaver)118に供給される。
 時間インターリーバ118は、QAMエンコーダ117からのデータ(シンボル)について、シンボル単位での時間インターリーブ(時間方向のインターリーブ)を行い、その結果得られるデータを、MISO/MIMOエンコーダ(MISO/MIMO encoder)119に供給する。
 MISO/MIMOエンコーダ119は、時間インターリーバ118からのデータ(シンボル)に、時空間符号化を施し、周波数インターリーバ(Frequency Interleaver)120に供給する。
 周波数インターリーバ120は、MISO/MIMOエンコーダ119からのデータ(シンボル)について、シンボル単位での周波数インターリーブ(周波数方向のインターリーブ)を行い、フレームビルダ/リソースアロケーション部(Frame Builder & Resource Allocation)131に供給する。
 一方、BCHエンコーダ121には、例えば、L1等と呼ばれるプリアンブル等の伝送制御用の制御データ(signalling)が供給される。
 BCHエンコーダ121は、そこに供給される制御データを、BCHエンコーダ114と同様にBCH符号化し、その結果得られるデータを、LDPCエンコーダ122に供給する。
 LDPCエンコーダ122は、BCHエンコーダ121からのデータを、LDPC対象データとして、LDPCエンコーダ115と同様にLDPC符号化し、その結果得られるLDPC符号を、QAMエンコーダ123に供給する。
 QAMエンコーダ123は、QAMエンコーダ117と同様に、LDPCエンコーダ122からのLDPC符号を、そのLDPC符号の1ビット以上の符号ビットの単位(シンボル単位)で、直交変調の1つのシンボルを表す信号点にマッピングして直交変調を行い、その結果得られるデータ(シンボル)を、周波数インターリーバ124に供給する。
 周波数インターリーバ124は、周波数インターリーバ120と同様に、QAMエンコーダ123からのデータ(シンボル)について、シンボル単位での周波数インターリーブを行い、フレームビルダ/リソースアロケーション部131に供給する。
 フレームビルダ/リソースアロケーション部131は、周波数インターリーバ120、及び、124からのデータ(シンボル)の必要な位置に、パイロット(Pilot)のシンボルを挿入し、その結果られるデータ(シンボル)から、所定の数のシンボルで構成されるフレームを構成して、OFDM生成部(OFDM generation)132に供給する。
 OFDM生成部132は、フレームビルダ/リソースアロケーション部131からのフレームから、そのフレームに対応するOFDM信号を生成し、通信路13(図7)を介して送信する。
 図9は、図8のビットインターリーバ116の構成例を示している。
 ビットインターリーバ116は、データをインターリーブするデータ処理装置であり、パリティインターリーバ(parity interleaver)23、カラムツイストインターリーバ(column twist interleaver)24、及びデマルチプレクサ(DEMUX)25から構成される。
 パリティインターリーバ23は、LDPCエンコーダ115からのLDPC符号のパリティビットを、他のパリティビットの位置にインターリーブするパリティインターリーブを行い、そのパリティインターリーブ後のLDPC符号を、カラムツイストインターリーバ24に供給する。
 カラムツイストインターリーバ24は、パリティインターリーバ23からのLDPC符号について、カラムツイストインターリーブを行い、そのカラムツイストインターリーブ後のLDPC符号を、デマルチプレクサ25に供給する。
 すなわち、LDPC符号は、図8のQAMエンコーダ117において、そのLDPC符号の1ビット以上の符号ビットを、直交変調の1つのシンボルを表す信号点にマッピングして送信される。
 カラムツイストインターリーバ24では、LDPCエンコーダ115で用いられる検査行列の任意の1行にある1に対応するLDPC符号の複数の符号ビットが、1つのシンボルに含まれないように、パリティインターリーバ23からのLDPC符号の符号ビットを並び替える並び替え処理として、例えば、後述するようなカラムツイストインターリーブが行われる。
 デマルチプレクサ25は、カラムツイストインターリーバ24からのLDPC符号について、シンボルとなるLDPC符号の2以上の符号ビットの位置を入れ替える入れ替え処理を行うことで、AWGNに対する耐性を強化したLDPC符号を得る。そして、デマルチプレクサ25は、入れ替え処理によって得られる、LDPC符号の2以上の符号ビットを、シンボルとして、QAMエンコーダ117(図8)に供給する。
 次に、図10は、図8のLDPCエンコーダ115でLDPC符号化に用いられる検査行列Hを示している。
 検査行列Hは、LDGM(Low-Density Generation Matrix)構造になっており、LDPC符号の符号ビットのうちの、情報ビットに対応する部分の情報行列HAと、パリティビットに対応するパリティ行列HTとによって、式H=[HA|HT](情報行列HAの要素を左側の要素とし、パリティ行列HTの要素を右側の要素とする行列)で表すことができる。
 ここで、1個のLDPC符号(1符号語)の符号ビットのうちの情報ビットのビット数と、パリティビットのビット数を、それぞれ、情報長Kと、パリティ長Mというとともに、1個のLDPC符号の符号ビットのビット数を、符号長N(=K+M)という。
 ある符号長NのLDPC符号についての情報長Kとパリティ長Mは、符号化率によって決まる。また、検査行列Hは、行×列がM×Nの行列となる。そして、情報行列HAは、M×Kの行列となり、パリティ行列HTは、M×Mの行列となる。
 図11は、DVB-T.2(及びDVB-S.2)の規格に規定されているLDPC符号の検査行列Hのパリティ行列HTを示している。
 DVB-T.2の規格に規定されているLDPC符号の検査行列Hのパリティ行列HTは、図11に示すように、1の要素が、いわば階段状に並ぶ階段構造になっている。パリティ行列HTの行重みは、1行目については1で、残りの全ての行については2になっている。また、列重みは、最後の1列については1で、残りの全ての列で2になっている。
 以上のように、パリティ行列HTが階段構造になっている検査行列HのLDPC符号は、その検査行列Hを用いて、容易に生成することができる。
 すなわち、LDPC符号(1符号語)を、行ベクトルcで表すとともに、その行ベクトルを転置して得られる列ベクトルを、cTと表す。また、LDPC符号である行ベクトルcのうちの、情報ビットの部分を、行ベクトルAで表すとともに、パリティビットの部分を、行ベクトルTで表すこととする。
 この場合、行ベクトルcは、情報ビットとしての行ベクトルAと、パリティビットとしての行ベクトルTとによって、式c =[A|T](行ベクトルAの要素を左側の要素とし、行ベクトルTの要素を右側の要素とする行ベクトル)で表すことができる。
 検査行列Hと、LDPC符号としての行ベクトルc=[A|T]とは、式HcT=0を満たす必要があり、かかる式HcT=0を満たす行ベクトルc=[A|T]を構成するパリティビットとしての行ベクトルTは、検査行列H=[HA|HT]のパリティ行列HTが、図11に示した階段構造になっている場合には、式HcT=0における列ベクトルHcTの1行目の要素から順に、各行の要素を0にしていくようにすることで、逐次的(順番)に求めることができる。
 図12は、DVB-T.2の規格に規定されているLDPC符号の検査行列Hを説明する図である。
 DVB-T.2の規格に規定されているLDPC符号の検査行列Hの1列目からのKX列については、列重みがXに、その後のK3列については、列重みが3に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
 ここで、KX+K3+M-1+1は、符号長Nに等しい。
 図13は、DVB-T.2の規格に規定されているLDPC符号の各符号化率rについての、列数KX,K3、及びM、並びに、列重みXを示す図である。
 DVB-T.2の規格では、64800ビットと16200ビットの符号長NのLDPC符号が規定されている。
 そして、符号長Nが64800ビットのLDPC符号については、11個の符号化率(nominal rate)1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6,8/9、及び9/10が規定されており、符号長Nが16200ビットのLDPC符号については、10個の符号化率1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6、及び8/9が規定されている。
 ここで、以下、64800ビットの符号長Nを、64kビットともいい、16200ビットの符号長Nを、16kビットともいう。
 LDPC符号については、検査行列Hの列重みが大の列に対応する符号ビットほど、エラーレートが低いことが知られている。
 図12及び図13に示した、DVB-T.2の規格に規定されている検査行列Hでは、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、その検査行列Hに対応するLDPC符号については、先頭の符号ビットほど、エラーに強く(エラーに対する耐性があり)、終わりの符号ビットほど、エラーに弱い傾向がある。
 次に、図14は、図8のQAMエンコーダ117で16QAMが行われる場合の、16個のシンボル(に対応する信号点)のIQ平面上の配置を示している。
 すなわち、図14のAは、DVB-T.2の16QAMのシンボルを示している。
 16QAMでは、1シンボルは、4ビットで表され、16(=24)個のシンボルが存在する。そして、16個のシンボルは、IQ平面の原点を中心として、I方向×Q方向が4×4の正方形状となるように配置されている。
 いま、1シンボルが表すビット列の、最上位ビットからi+1ビット目のビットを、ビットyiと表すこととすると、16QAMの1シンボルが表す4ビットは、最上位ビットから順に、ビットy0,y1,y2,y3と表すことができる。変調方式が16QAMの場合には、LDPC符号の符号ビットの4ビットが、4ビットy0ないしy3のシンボル(シンボル値)に(シンボル化)される。
 図14のBは、16QAMのシンボルが表す4ビット(以下、シンボルビットともいう)y0ないしy3それぞれについてのビット境界を示している。
 ここで、シンボルビットyi(図14では、i=0,1,2,3)についてのビット境界とは、そのシンボルビットyiが0になっているシンボルと、1になっているシンボルとの境界を意味する。
 図14のBに示すように、16QAMのシンボルが表す4シンボルビットy0ないしy3のうちの最上位のシンボルビットy0については、IQ平面のQ軸の1箇所だけがビット境界となり、2番目(最上位ビットから2番目)のシンボルビットy1については、IQ平面のI軸の1箇所だけがビット境界となる。
 また、3番目のシンボルビットy2については、4×4個のシンボルのうちの、左から1列目と2列目との間、及び3列目と4列目との間の2箇所が、ビット境界となる。
 さらに、4番目のシンボルビットy3については、4×4個のシンボルのうちの、上から1行目と2行目との間、及び3行目と4行目との間の2箇所が、ビット境界となる。
 シンボルが表すシンボルビットyiは、ビット境界から離れているシンボルが多いほど、誤りにくく(エラー確率が低く)、ビット境界に近いシンボルが多いほど、誤りやすい(エラー確率が高い)。
 いま、誤りにくい(エラーに強い)ビットを、「強いビット」というとともに、誤りやすい(エラーに弱い)ビットを、「弱いビット」ということとすると、16QAMのシンボルの4シンボルビットy0ないしy3については、最上位のシンボルビットy0、及び2番目のシンボルビットy1が強いビットになっており、3番目のシンボルビットy2、及び4番目のシンボルビットy3が弱いビットになっている。
 図15ないし図17は、図8のQAMエンコーダ117で64QAMが行われる場合の、64個のシンボル(に対応する信号点)のIQ平面上の配置、すなわち、DVB-T.2の16QAMのシンボルを示している。
 64QAMでは、1シンボルは、6ビットを表し、64(=26)個のシンボルが存在する。そして、64個のシンボルは、IQ平面の原点を中心として、I方向×Q方向が8×8の正方形状となるように配置されている。
 64QAMの1シンボルのシンボルビットは、最上位ビットから順に、ビットy0,y1,y2,y3,y4,y5と表すことができる。変調方式が64QAMの場合には、LDPC符号の符号ビットの6ビットは、6ビットのシンボルビットy0ないしy5のシンボルにされる。
 ここで、図15は、64QAMのシンボルのシンボルビットy0ないしy5のうちの、最上位のシンボルビットy0と、2番目のシンボルビットy1それぞれについてのビット境界を、図16は、3番目のシンボルビットy2と、4番目のシンボルビットy3それぞれについてのビット境界を、図17は、5番目のシンボルビットy4と、6番目のシンボルビットy5それぞれについてのビット境界を、それぞれ示している。
 図15に示すように、最上位のシンボルビットy0と、2番目のシンボルビットy1それぞれについてのビット境界は、1箇所になっている。また、図16に示すように、3番目のシンボルビットy2と、4番目のシンボルビットy3それぞれについてのビット境界は、2箇所になっており、図17に示すように、5番目のシンボルビットy4と、6番目のシンボルビットy5それぞれについてのビット境界は、4箇所になっている。
 したがって、64QAMのシンボルのシンボルビットy0ないしy5については、最上位シンボルビットy0、及び2番目のシンボルビットy1が、強いビットになっており、3番目のシンボルビットy2、及び4番目のシンボルビットy3が、その次に強いビットになっている。そして、5番目のシンボルビットy4と、6番目のシンボルビットy5は、弱いビットになっている。
 図14、さらには、図15ないし図17から、直交変調のシンボルのシンボルビットについては、上位ビットが強いビットとなり、下位ビットが弱いビットになる傾向があることが分かる。
 ここで、図12及び図13で説明したように、LDPCエンコーダ115(図8)が出力するLDPC符号については、エラーに強い符号ビットと、エラーに弱い符号ビットがある。
 また、図14ないし図17で説明したように、QAMエンコーダ117で行われる直交変調のシンボルのシンボルビットについては、強いビットと弱いビットがある。
 したがって、LDPC符号の、エラーに弱い符号ビットを、直交変調のシンボルの、弱いシンボルビットに割り当てると、全体として、エラーに対する耐性が低下する。
 そこで、LDPC符号の、エラーに弱い符号ビットを、直交変調のシンボルの、強いビット(シンボルビット)に割り当てる傾向で、LDPC符号の符号ビットをインターリーブするインターリーバが提案されている。
 図9のデマルチプレクサ25は、そのインターリーバの処理を行うことができる。
 図18は、図9のデマルチプレクサ25の処理を説明する図である。
 すなわち、図18のAは、デマルチプレクサ25の機能的な構成例を示している。
 デマルチプレクサ25は、メモリ31及び入れ替え部32から構成される。
 メモリ31には、LDPCエンコーダ115からのLDPC符号が供給される。
 メモリ31は、ロウ(row)(横)方向にmbビットを記憶するとともに、カラム(column)(縦)方向にN/(mb)ビットを記憶する記憶容量を有し、そこに供給されるLDPC符号の符号ビットを、カラム方向に書き込み、ロウ方向に読み出して、入れ替え部32に供給する。
 ここで、N(=情報長K+パリティ長M)は、上述したように、LDPC符号の符号長を表す。
 また、mは、1シンボルとなるLDPC符号の符号ビットのビット数を表し、bは所定の正の整数で、mを整数倍するのに用いられる倍数である。デマルチプレクサ25は、上述したように、LDPC符号の符号ビットをシンボルとする(シンボル化する)が、倍数bは、デマルチプレクサ25が、いわば一度のシンボル化によって得るシンボルの個数を表す。
 図18のAは、変調方式が64QAMである場合のデマルチプレクサ25の構成例を示しており、したがって、1シンボルとなるLDPC符号の符号ビットのビット数mは、6ビットである。
 また、図18のAでは、倍数bは1になっており、したがって、メモリ31は、カラム方向×ロウ方向がN/(6×1)×(6×1)ビットの記憶容量を有する。
 ここで、メモリ31の、ロウ方向が1ビットの、カラム方向に延びる記憶領域を、以下、適宜、カラムという。図18のAでは、メモリ31は、6(=6×1)個のカラムから構成される。
 デマルチプレクサ25では、LDPC符号の符号ビットを、メモリ31を構成するカラムの上から下方向(カラム方向)に書き込むことが、左から右方向のカラムに向かって行われる。
 そして、符号ビットの書き込みが、最も右のカラムの一番下まで終了すると、メモリ31を構成するすべてのカラムの1行目から、ロウ方向に、6ビット(mbビット)単位で、符号ビットが読み出され、入れ替え部32に供給される。
 入れ替え部32は、メモリ31からの6ビットの符号ビットの位置を入れ替える入れ替え処理を行い、その結果得られる6ビットを、64QAMの1シンボルを表す6シンボルビットy0,y1,y2,y3,y4,y5として出力する。
 すなわち、メモリ31からは、ロウ方向に、mbビット(ここでは、6ビット)の符号ビットが読み出されるが、その、メモリ31から読み出されるmbビットの符号ビットの、最上位ビットからiビット目を(i=0,1,・・・,mb-1)、ビットbiと表すこととすると、メモリ31からロウ方向に読み出される6ビットの符号ビットは、最上位ビットから順に、ビットb0,b1,b2,b3,b4,b5と表すことができる。
 図12及び図13で説明した列重みの関係で、ビットb0の方向にある符号ビットは、エラーに強い符号ビットになっており、ビットb5の方向にある符号ビットは、エラーに弱い符号ビットになっている。
 入れ替え部32では、メモリ31からの6ビットの符号ビットb0ないしb5のうちの、エラーに弱い符号ビットが、64QAMの1シンボルのシンボルビットy0ないしy5のうちの、強いビットに割り当てられるように、メモリ31からの6ビットの符号ビットb0ないしb5の位置を入れ替える入れ替え処理を行うことができる。
 ここで、メモリ31からの6ビットの符号ビットb0ないしb5をどのように入れ替えて、64QAMの1シンボルを表す6シンボルビットy0ないしy5のそれぞれに割り当てるかの入れ替え方式としては、各社から、様々な方式が提案されている。
 図18のBは、第1の入れ替え方式を、図18のCは、第2の入れ替え方式を、図18のDは、第3の入れ替え方式を、それぞれ示している。
 図18のBないし図18のDにおいて(後述する図19においても同様)、ビットbiとyjとを結ぶ線分は、符号ビットbiを、シンボルのシンボルビットyjに割り当てる(シンボルビットyjの位置に入れ替える)ことを意味する。
 図18のBの第1の入れ替え方式としては、3種類の入れ替え方のうちのいずれか1つを採用することが提案されており、図18のCの第2の入れ替え方式としては、2種類の入れ替え方のうちのいずれか1つを採用することが提案されている。
 図18のDの第3の入れ替え方式としては、6種類の入れ替え方を順番に選択して用いることが提案されている。
 図19は、変調方式が64QAMであり(したがって、1シンボルにマッピングされるLDPC符号の符号ビットのビット数mは、図18と同様に6ビットである)、かつ、倍数bが2の場合のデマルチプレクサ25の構成例と、第4の入れ替え方式を示している。
 倍数bが2である場合、メモリ31は、カラム方向×ロウ方向がN/(6×2)×(6×2)ビットの記憶容量を有し、12(=6×2)個のカラムから構成される。
 図19のAは、メモリ31へのLDPC符号の書き込み順を示している。
 デマルチプレクサ25では、図18で説明したように、LDPC符号の符号ビットを、メモリ31を構成するカラムの上から下方向(カラム方向)に書き込むことが、左から右方向のカラムに向かって行われる。
 そして、符号ビットの書き込みが、最も右のカラムの一番下まで終了すると、メモリ31を構成するすべてのカラムの1行目から、ロウ方向に、12ビット(mbビット)単位で、符号ビットが読み出され、入れ替え部32に供給される。
 入れ替え部32は、メモリ31からの12ビットの符号ビットの位置を、第4の入れ替え方式で入れ替える入れ替え処理を行い、その結果得られる12ビットを、64QAMの2シンボル(b個のシンボル)を表す12ビット、つまり、64QAMの1シンボルを表す6シンボルビットy0,y1,y2,y3,y4,y5と、次の1シンボルを表す6シンボルビットy0,y1,y2,y3,y4,y5として出力する。
 ここで、図19のBは、図19のAの入れ替え部32による入れ替え処理の第4の入れ替え方式を示している。
 なお、倍数bが2である場合(3以上である場合も同様)、入れ替え処理では、mbビットの符号ビットが、連続するb個のシンボルのmbビットのシンボルビットに割り当てられる。図19を含め、以下では、説明の便宜上、連続するb個のシンボルのmbビットのシンボルビットの最上位ビットからi+1ビット目を、ビット(シンボルビット)yiと表す。
 また、どのような入れ替え方が適切であるか、つまり、AWGN通信路でのエラーレートをより向上させるかは、LDPC符号の符号化率や符号長、変調方式等によって異なる。
 [パリティインターリーブ]
 次に、図20ないし図22を参照して、図9のパリティインターリーバ23によるパリティインターリーブについて説明する。
 図20は、LDPC符号の検査行列のタナーグラフ(の一部)を示している。
 チェックノードは、図20に示すように、そのチェックノードに繋がっているバリアブルノード(に対応する符号ビット)の2個等の複数が同時にイレージャ等のエラーになると、そのチェックノードに繋がっている全バリアブルノードに、値が0である確率と1である確率とが等確率のメッセージを戻す。このため、同一のチェックノードに繋がっている複数のバリアブルノードが同時にイレージャ等になると、復号の性能が劣化する。
 ところで、図8のLDPCエンコーダ115が出力する、DVB-T.2の規格に規定されているLDPC符号は、IRA符号であり、検査行列Hのパリティ行列HTは、図11に示したように、階段構造になっている。
 図21は、階段構造になっているパリティ行列HTと、そのパリティ行列HTに対応するタナーグラフを示している。
 すなわち、図21のAは、階段構造になっているパリティ行列HTを示しており、図21のBは、図21のAのパリティ行列HTに対応するタナーグラフを示している。
 階段構造になっているパリティ行列HTでは、各行において、1の要素が隣接する(1行目を除く)。このため、パリティ行列HTのタナーグラフにおいて、パリティ行列HTの値が1になっている隣接する2つの要素の列に対応する、隣接する2つのバリアブルノードは、同一のチェックノードに繋がっている。
 したがって、バースト誤りやイレージャ等によって、上述の隣接する2つのバリアブルノードに対応するパリティビットが同時にエラーとなると、そのエラーとなった2つのパリティビットに対応する2つのバリアブルノード(パリティビットを用いてメッセージを求めるバリアブルノード)に繋がっているチェックノードは、値が0である確率と1である確率とが等確率のメッセージを、そのチェックノードに繋がっているバリアブルノードに戻すため、復号の性能が劣化する。そして、バースト長(連続してエラーとなるパリティビットのビット数)が大になると、等確率のメッセージを戻すチェックノードが増加し、復号の性能は、さらに劣化する。
 そこで、パリティインターリーバ23(図9)は、上述した復号の性能の劣化を防止するため、LDPCエンコーダ115からの、LDPC符号のパリティビットを、他のパリティビットの位置にインターリーブするパリティインターリーブを行う。
 図22は、図9のパリティインターリーバ23が行うパリティインターリーブ後のLDPC符号に対応する検査行列Hのパリティ行列HTを示している。
 ここで、LDPCエンコーダ115が出力する、DVB-T.2の規格に規定されているLDPC符号に対応する検査行列Hの情報行列HAは、巡回構造になっている。
 巡回構造とは、ある列が、他の列をサイクリックシフトしたものと一致している構造をいい、例えば、P列ごとに、そのP列の各行の1の位置が、そのP列の最初の列を、パリティ長Mを除算して得られる値qに比例する値だけ、列方向にサイクリックシフトした位置になっている構造も含まれる。以下、適宜、巡回構造におけるP列を、巡回構造の単位の列数という。
 DVB-T.2の規格に規定されているLDPC符号としては、図12及び図13で説明したように、符号長Nが64800ビットと16200ビットとの、2種類のLDPC符号があり、その2種類のLDPC符号のいずれについても、巡回構造の単位の列数Pが、パリティ長Mの約数のうちの、1とMを除く約数の1つである360に規定されている。
 また、パリティ長Mは、符号化率によって異なる値qを用いて、式M=q×P=q×360で表される素数以外の値になっている。したがって、値qも、巡回構造の単位の列数Pと同様に、パリティ長Mの約数のうちの、1とMを除く約数の他の1つであり、パリティ長Mを、巡回構造の単位の列数Pで除算することにより得られる(パリティ長Mの約数であるP及びqの積は、パリティ長Mとなる)。
 パリティインターリーバ23は、上述したように、情報長をKとし、また、0以上P未満の整数をxとするとともに、0以上q未満の整数をyとすると、パリティインターリーブとして、NビットのLDPC符号の符号ビットのうちの、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブする。
 K+qx+y+1番目の符号ビット、及び、K+Py+x+1番目の符号ビットは、いずれも、K+1番目以降の符号ビットであるから、パリティビットであり、したがって、パリティインターリーブによれば、LDPC符号のパリティビットの位置が移動される。
 このようなパリティインターリーブによれば、同一のチェックノードに繋がれるバリアブルノード(に対応するパリティビット)が、巡回構造の単位の列数P、すなわち、ここでは、360ビットだけ離れるので、バースト長が360ビット未満である場合には、同一のチェックノードに繋がっているバリアブルノードの複数が同時にエラーになる事態を避けることができ、その結果、バースト誤りに対する耐性を改善することができる。
 なお、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブするパリティインターリーブ後のLDPC符号は、元の検査行列Hの、K+qx+y+1番目の列を、K+Py+x+1番目の列に置換する列置換を行って得られる検査行列(以下、変換検査行列ともいう)のLDPC符号に一致する。
 また、変換検査行列のパリティ行列には、図22に示すように、P列(図22では、360列)を単位とする擬似巡回構造が現れる。
 ここで、擬似巡回構造とは、一部を除く部分が巡回構造になっている構造を意味する。
DVB-T.2の規格に規定されているLDPC符号の検査行列に対して、パリティインターリーブに相当する列置換を施して得られる変換検査行列は、その右隅部分の360行×360列の部分(後述するシフト行列)に、1の要素が1つだけ足らず(0の要素になっており)、その点で、(完全な)巡回構造ではなく、いわば、擬似巡回構造になっている。
なお、図22の変換検査行列は、元の検査行列Hに対して、パリティインターリーブに相当する列置換の他、変換検査行列が、後述する構成行列で構成されるようにするための行の置換(行置換)も施された行列になっている。
 [カラムツイストインターリーブ]
 次に、図23ないし図26を参照して、図9のカラムツイストインターリーバ24による並び替え処理としてのカラムツイストインターリーブについて説明する。
 図8の送信装置11では、LDPC符号の符号ビットの1ビット以上を、1個のシンボルとして送信する。すなわち、例えば、符号ビットの2ビットを1個のシンボルとする場合には、変調方式として、例えば、QPSKが用いられ、符号ビットの4ビットを1個のシンボルとする場合には、変調方式として、例えば、16QAMが用いられる。
 符号ビットの2ビット以上を、1個のシンボルとして送信する場合、あるシンボルに、イレージャ等が発生すると、そのシンボルの符号ビットは、すべてエラー(イレージャ)になる。
 したがって、復号の性能を向上させるために、同一のチェックノードに繋がっているバリアブルノード(に対応する符号ビット)の複数が同時にイレージャになる確率を低下させるには、1個のシンボルの符号ビットに対応するバリアブルノードが、同一のチェックノードに繋がることを避ける必要がある。
 一方、上述したように、LDPCエンコーダ115が出力する、DVB-T.2の規格に規定されているLDPC符号の検査行列Hでは、情報行列HAが巡回構造を有し、パリティ行列HTが階段構造を有している。そして、図22で説明したように、パリティインターリーブ後のLDPC符号の検査行列である変換検査行列では、パリティ行列にも巡回構造(正確には、上述したように、擬似巡回構造)が現れる。
 図23は、変換検査行列を示している。
 すなわち、図23のAは、符号長Nが64800ビットで、符号化率(r)が3/4のLDPC符号の検査行列Hの変換検査行列を示している。
 図23のAでは、変換検査行列において、値が1になっている要素の位置が、点(・)で示されている。
 図23のBは、図23のAの変換検査行列のLDPC符号、つまり、パリティインターリーブ後のLDPC符号を対象として、デマルチプレクサ25(図9)が行う処理を示している。
 図23のBでは、変調方式を16QAMとして、デマルチプレクサ25のメモリ31を構成する4カラムに、パリティインターリーブ後のLDPC符号の符号ビットが、カラム方向に書き込まれている。
 メモリ31を構成する4カラムに、カラム方向に書き込まれた符号ビットは、ロウ方向に、4ビット単位で読み出され、1シンボルとなる。
 この場合、1シンボルとなる4ビットの符号ビットB0,B1,B2,B3は、図23のAの変換検査行列の、任意の1行にある1に対応する符号ビットとなっていることがあり、この場合、その符号ビットB0,B1,B2,B3それぞれに対応するバリアブルノードは、同一のチェックノードに繋がっている。
 したがって、1シンボルの4ビットの符号ビットB0,B1,B2,B3が、変換検査行列の任意の1行にある1に対応する符号ビットとなっている場合には、そのシンボルに、イレージャが発生すると、符号ビットB0,B1,B2,B3それぞれに対応するバリアブルノードが繋がっている同一のチェックノードにおいて、適切なメッセージを求めることができず、その結果、復号の性能が劣化する。
 符号化率が3/4以外の符号化率についても、同様に、同一のチェックノードに繋がっている複数のバリアブルノードに対応する複数の符号ビットが、16QAMの1個のシンボルとされることがある。
 そこで、カラムツイストインターリーバ24は、変換検査行列の任意の1行にある1に対応する複数の符号ビットが、1個のシンボルに含まれないように、パリティインターリーバ23からのパリティインターリーブ後のLDPC符号の符号ビットをインターリーブするカラムツイストインターリーブを行う。
 図24は、カラムツイストインターリーブを説明する図である。
 すなわち、図24は、デマルチプレクサ25のメモリ31(図18、図19)を示している。
 メモリ31は、図18で説明したように、カラム(縦)方向にmbビットを記憶するとともに、ロウ(横)方向にN/(mb)ビットを記憶する記憶容量を有し、mb個のカラムから構成される。そして、カラムツイストインターリーバ24は、メモリ31に対して、LDPC符号の符号ビットを、カラム方向に書き込み、ロウ方向に読み出すときの書き始めの位置を制御することで、カラムツイストインターリーブを行う。
 すなわち、カラムツイストインターリーバ24では、複数のカラムそれぞれについて、符号ビットの書き込みを開始する書き始めの位置を、適宜変更することで、ロウ方向に読み出される、1シンボルとされる複数の符号ビットが、変換検査行列の任意の1行にある1に対応する符号ビットにならないようにする(検査行列の任意の1行にある1に対応する複数の符号ビットが、同一のシンボルに含まれないように、LDPC符号の符号ビットを並び替える)。
 ここで、図24は、変調方式が16QAMであり、かつ、図18で説明した倍数bが1である場合の、メモリ31の構成例を示している。したがって、1シンボルにされるLDPC符号の符号ビットのビット数mは、4ビットであり、また、メモリ31は、4(=mb)個のカラムで構成されている。
 カラムツイストインターリーバ24は、(図18のデマルチプレクサ25に代わり)LDPC符号の符号ビットを、メモリ31を構成する4個のカラムの上から下方向(カラム方向)に書き込むことを、左から右方向のカラムに向かって行う。
 そして、符号ビットの書き込みが、最も右のカラムまで終了すると、カラムツイストインターリーバ24は、メモリ31を構成するすべてのカラムの1行目から、ロウ方向に、4ビット(mbビット)単位で、符号ビットを読み出し、カラムツイストインターリーブ後のLDPC符号として、デマルチプレクサ25の入れ替え部32(図18、図19)に出力する。
 但し、カラムツイストインターリーバ24では、各カラムの先頭(一番上)の位置のアドレスを0として、カラム方向の各位置のアドレスを、昇順の整数で表すこととすると、最も左のカラムについては、書き始めの位置を、アドレスが0の位置とし、(左から)2番目のカラムについては、書き始めの位置を、アドレスが2の位置とし、3番目のカラムについては、書き始めの位置を、アドレスが4の位置とし、4番目のカラムについては、書き始めの位置を、アドレスが7の位置とする。
 なお、書き始めの位置が、アドレスが0の位置以外の位置のカラムについては、符号ビットを、最も下の位置まで書き込んだ後は、先頭(アドレスが0の位置)に戻り、書き始めの位置の直前の位置までの書き込みが行われる。そして、その後、次(右)のカラムへの書き込みが行われる。
 以上のようなカラムツイストインターリーブを行うことにより、DVB-T.2の規格に規定されているLDPC符号について、同一のチェックノードに繋がっている複数のバリアブルノードに対応する複数の符号ビットが、16QAMの1個のシンボルとされること(同一のシンボルに含まれること)を回避することができ、その結果、イレージャのある通信路での復号の性能を向上させることができる。
 図25は、DVB-T.2の規格に規定されている、符号長Nが64800の、11個の符号化率それぞれのLDPC符号について、カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスを、変調方式ごとに示している。
 倍数bが1であり、かつ、変調方式として、例えば、QPSKが採用されることによって、1シンボルのビット数mが、2ビットである場合、図25によれば、メモリ31は、ロウ方向に2×1(=mb)ビットを記憶する2個のカラムを有し、カラム方向に64800/(2×1)ビットを記憶する。
 そして、メモリ31の2個のカラムのうちの1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、それぞれされる。
 なお、例えば、デマルチプレクサ25(図9)の入れ替え処理の入れ替え方式として、図18の第1ないし第3の入れ替え方式のうちのいずれかが採用される場合等に、倍数bは1となる。
 倍数bが2であり、かつ、変調方式として、例えば、QPSKが採用されることによって、1シンボルのビット数mが、2ビットである場合、図25によれば、メモリ31は、ロウ方向に2×2ビットを記憶する4個のカラムを有し、カラム方向に64800/(2×2)ビットを記憶する。
 そして、メモリ31の4個のカラムのうちの1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが4の位置と、4番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 なお、例えば、デマルチプレクサ25(図9)の入れ替え処理の入れ替え方式として、図19の第4の入れ替え方式が採用される場合等に、倍数bは2となる。
 倍数bが1であり、かつ、変調方式として、例えば、16QAMが採用されることによって、1シンボルのビット数mが、4ビットである場合、図25によれば、メモリ31は、ロウ方向に4×1ビットを記憶する4個のカラムを有し、カラム方向に64800/(4×1)ビットを記憶する。
 そして、メモリ31の4個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが4の位置と、4番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、16QAMが採用されることによって、1シンボルのビット数mが、4ビットである場合、図25によれば、メモリ31は、ロウ方向に4×2ビットを記憶する8個のカラムを有し、カラム方向に64800/(4×2)ビットを記憶する。
 そして、メモリ31の8個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが4の位置と、5番目のカラムの書き始めの位置は、アドレスが4の位置と、6番目のカラムの書き始めの位置は、アドレスが5の位置と、7番目のカラムの書き始めの位置は、アドレスが7の位置と、8番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、64QAMが採用されることによって、1シンボルのビット数mが、6ビットである場合、図25によれば、メモリ31は、ロウ方向に6×1ビットを記憶する6個のカラムを有し、カラム方向に64800/(6×1)ビットを記憶する。
 そして、メモリ31の6個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが5の位置と、4番目のカラムの書き始めの位置は、アドレスが9の位置と、5番目のカラムの書き始めの位置は、アドレスが10の位置と、6番目のカラムの書き始めの位置は、アドレスが13の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、64QAMが採用されることによって、1シンボルのビット数mが、6ビットである場合、図25によれば、メモリ31は、ロウ方向に6×2ビットを記憶する12個のカラムを有し、カラム方向に64800/(6×2)ビットを記憶する。
 そして、メモリ31の12個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが3の位置と、6番目のカラムの書き始めの位置は、アドレスが4の位置と、7番目のカラムの書き始めの位置は、アドレスが4の位置と、8番目のカラムの書き始めの位置は、アドレスが5の位置と、9番目のカラムの書き始めの位置は、アドレスが5の位置と、10番目のカラムの書き始めの位置は、アドレスが7の位置と、11番目のカラムの書き始めの位置は、アドレスが8の位置と、12番目のカラムの書き始めの位置は、アドレスが9の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、256QAMが採用されることによって、1シンボルのビット数mが、8ビットである場合、図25によれば、メモリ31は、ロウ方向に8×1ビットを記憶する8個のカラムを有し、カラム方向に64800/(8×1)ビットを記憶する。
 そして、メモリ31の8個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが4の位置と、5番目のカラムの書き始めの位置は、アドレスが4の位置と、6番目のカラムの書き始めの位置は、アドレスが5の位置と、7番目のカラムの書き始めの位置は、アドレスが7の位置と、8番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、256QAMが採用されることによって、1シンボルのビット数mが、8ビットである場合、図25によれば、メモリ31は、ロウ方向に8×2ビットを記憶する16個のカラムを有し、カラム方向に64800/(8×2)ビットを記憶する。
 そして、メモリ31の16個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが2の位置と、6番目のカラムの書き始めの位置は、アドレスが3の位置と、7番目のカラムの書き始めの位置は、アドレスが7の位置と、8番目のカラムの書き始めの位置は、アドレスが15の位置と、9番目のカラムの書き始めの位置は、アドレスが16の位置と、10番目のカラムの書き始めの位置は、アドレスが20の位置と、11番目のカラムの書き始めの位置は、アドレスが22の位置と、12番目のカラムの書き始めの位置は、アドレスが22の位置と、13番目のカラムの書き始めの位置は、アドレスが27の位置と、14番目のカラムの書き始めの位置は、アドレスが27の位置と、15番目のカラムの書き始めの位置は、アドレスが28の位置と、16番目のカラムの書き始めの位置は、アドレスが32の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、1024QAMが採用されることによって、1シンボルのビット数mが、10ビットである場合、図25によれば、メモリ31は、ロウ方向に10×1ビットを記憶する10個のカラムを有し、カラム方向に64800/(10×1)ビットを記憶する。
 そして、メモリ31の10個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが3の位置と、3番目のカラムの書き始めの位置は、アドレスが6の位置と、4番目のカラムの書き始めの位置は、アドレスが8の位置と、5番目のカラムの書き始めの位置は、アドレスが11の位置と、6番目のカラムの書き始めの位置は、アドレスが13の位置と、7番目のカラムの書き始めの位置は、アドレスが15の位置と、8番目のカラムの書き始めの位置は、アドレスが17の位置と、9番目のカラムの書き始めの位置は、アドレスが18の位置と、10番目のカラムの書き始めの位置は、アドレスが20の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、1024QAMが採用されることによって、1シンボルのビット数mが、10ビットである場合、図25によれば、メモリ31は、ロウ方向に10×2ビットを記憶する20個のカラムを有し、カラム方向に64800/(10×2)ビットを記憶する。
 そして、メモリ31の20個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが1の位置と、3番目のカラムの書き始めの位置は、アドレスが3の位置と、4番目のカラムの書き始めの位置は、アドレスが4の位置と、5番目のカラムの書き始めの位置は、アドレスが5の位置と、6番目のカラムの書き始めの位置は、アドレスが6の位置と、7番目のカラムの書き始めの位置は、アドレスが6の位置と、8番目のカラムの書き始めの位置は、アドレスが9の位置と、9番目のカラムの書き始めの位置は、アドレスが13の位置と、10番目のカラムの書き始めの位置は、アドレスが14の位置と、11番目のカラムの書き始めの位置は、アドレスが14の位置と、12番目のカラムの書き始めの位置は、アドレスが16の位置と、13番目のカラムの書き始めの位置は、アドレスが21の位置と、14番目のカラムの書き始めの位置は、アドレスが21の位置と、15番目のカラムの書き始めの位置は、アドレスが23の位置と、16番目のカラムの書き始めの位置は、アドレスが25の位置と、17番目のカラムの書き始めの位置は、アドレスが25の位置と、18番目のカラムの書き始めの位置は、アドレスが26の位置と、19番目のカラムの書き始めの位置は、アドレスが28の位置と、20番目のカラムの書き始めの位置は、アドレスが30の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、4096QAMが採用されることによって、1シンボルのビット数mが、12ビットである場合、図25によれば、メモリ31は、ロウ方向に12×1ビットを記憶する12個のカラムを有し、カラム方向に64800/(12×1)ビットを記憶する。
 そして、メモリ31の12個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが3の位置と、6番目のカラムの書き始めの位置は、アドレスが4の位置と、7番目のカラムの書き始めの位置は、アドレスが4の位置と、8番目のカラムの書き始めの位置は、アドレスが5の位置と、9番目のカラムの書き始めの位置は、アドレスが5の位置と、10番目のカラムの書き始めの位置は、アドレスが7の位置と、11番目のカラムの書き始めの位置は、アドレスが8の位置と、12番目のカラムの書き始めの位置は、アドレスが9の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、4096QAMが採用されることによって、1シンボルのビット数mが、12ビットである場合、図25によれば、メモリ31は、ロウ方向に12×2ビットを記憶する24個のカラムを有し、カラム方向に64800/(12×2)ビットを記憶する。
 そして、メモリ31の24個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが5の位置と、3番目のカラムの書き始めの位置は、アドレスが8の位置と、4番目のカラムの書き始めの位置は、アドレスが8の位置と、5番目のカラムの書き始めの位置は、アドレスが8の位置と、6番目のカラムの書き始めの位置は、アドレスが8の位置と、7番目のカラムの書き始めの位置は、アドレスが10の位置と、8番目のカラムの書き始めの位置は、アドレスが10の位置と、9番目のカラムの書き始めの位置は、アドレスが10の位置と、10番目のカラムの書き始めの位置は、アドレスが12の位置と、11番目のカラムの書き始めの位置は、アドレスが13の位置と、12番目のカラムの書き始めの位置は、アドレスが16の位置と、13番目のカラムの書き始めの位置は、アドレスが17の位置と、14番目のカラムの書き始めの位置は、アドレスが19の位置と、15番目のカラムの書き始めの位置は、アドレスが21の位置と、16番目のカラムの書き始めの位置は、アドレスが22の位置と、17番目のカラムの書き始めの位置は、アドレスが23の位置と、18番目のカラムの書き始めの位置は、アドレスが26の位置と、19番目のカラムの書き始めの位置は、アドレスが37の位置と、20番目のカラムの書き始めの位置は、アドレスが39の位置と、21番目のカラムの書き始めの位置は、アドレスが40の位置と、22番目のカラムの書き始めの位置は、アドレスが41の位置と、23番目のカラムの書き始めの位置は、アドレスが41の位置と、24番目のカラムの書き始めの位置は、アドレスが41の位置と、それぞれされる。
 図26は、DVB-T.2の規格に規定されている、符号長Nが16200の、10個の符号化率それぞれのLDPC符号について、カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスを、変調方式ごとに示している。
 倍数bが1であり、かつ、変調方式として、例えば、QPSKが採用されることによって、1シンボルのビット数mが、2ビットである場合、図26によれば、メモリ31は、ロウ方向に2×1ビットを記憶する2個のカラムを有し、カラム方向に16200/(2×1)ビットを記憶する。
 そして、メモリ31の2個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、QPSKが採用されることによって、1シンボルのビット数mが、2ビットである場合、図26によれば、メモリ31は、ロウ方向に2×2ビットを記憶する4個のカラムを有し、カラム方向に16200/(2×2)ビットを記憶する。
 そして、メモリ31の4個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが3の位置と、4番目のカラムの書き始めの位置は、アドレスが3の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、16QAMが採用されることによって、1シンボルのビット数mが、4ビットである場合、図26によれば、メモリ31は、ロウ方向に4×1ビットを記憶する4個のカラムを有し、カラム方向に16200/(4×1)ビットを記憶する。
 そして、メモリ31の4個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが3の位置と、4番目のカラムの書き始めの位置は、アドレスが3の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、16QAMが採用されることによって、1シンボルのビット数mが、4ビットである場合、図26によれば、メモリ31は、ロウ方向に4×2ビットを記憶する8個のカラムを有し、カラム方向に16200/(4×2)ビットを記憶する。
 そして、メモリ31の8個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが0の位置と、4番目のカラムの書き始めの位置は、アドレスが1の位置と、5番目のカラムの書き始めの位置は、アドレスが7の位置と、6番目のカラムの書き始めの位置は、アドレスが20の位置と、7番目のカラムの書き始めの位置は、アドレスが20の位置と、8番目のカラムの書き始めの位置は、アドレスが21の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、64QAMが採用されることによって、1シンボルのビット数mが、6ビットである場合、図26によれば、メモリ31は、ロウ方向に6×1ビットを記憶する6個のカラムを有し、カラム方向に16200/(6×1)ビットを記憶する。
 そして、メモリ31の6個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが3の位置と、5番目のカラムの書き始めの位置は、アドレスが7の位置と、6番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、64QAMが採用されることによって、1シンボルのビット数mが、6ビットである場合、図26によれば、メモリ31は、ロウ方向に6×2ビットを記憶する12個のカラムを有し、カラム方向に16200/(6×2)ビットを記憶する。
 そして、メモリ31の12個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが0の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが2の位置と、6番目のカラムの書き始めの位置は、アドレスが2の位置と、7番目のカラムの書き始めの位置は、アドレスが3の位置と、8番目のカラムの書き始めの位置は、アドレスが3の位置と、9番目のカラムの書き始めの位置は、アドレスが3の位置と、10番目のカラムの書き始めの位置は、アドレスが6の位置と、11番目のカラムの書き始めの位置は、アドレスが7の位置と、12番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、256QAMが採用されることによって、1シンボルのビット数mが、8ビットである場合、図26によれば、メモリ31は、ロウ方向に8×1ビットを記憶する8個のカラムを有し、カラム方向に16200/(8×1)ビットを記憶する。
 そして、メモリ31の8個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが0の位置と、4番目のカラムの書き始めの位置は、アドレスが1の位置と、5番目のカラムの書き始めの位置は、アドレスが7の位置と、6番目のカラムの書き始めの位置は、アドレスが20の位置と、7番目のカラムの書き始めの位置は、アドレスが20の位置と、8番目のカラムの書き始めの位置は、アドレスが21の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、1024QAMが採用されることによって、1シンボルのビット数mが、10ビットである場合、図26によれば、メモリ31は、ロウ方向に10×1ビットを記憶する10個のカラムを有し、カラム方向に16200/(10×1)ビットを記憶する。
 そして、メモリ31の10個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが1の位置と、3番目のカラムの書き始めの位置は、アドレスが2の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが3の位置と、6番目のカラムの書き始めの位置は、アドレスが3の位置と、7番目のカラムの書き始めの位置は、アドレスが4の位置と、8番目のカラムの書き始めの位置は、アドレスが4の位置と、9番目のカラムの書き始めの位置は、アドレスが5の位置と、10番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、1024QAMが採用されることによって、1シンボルのビット数mが、10ビットである場合、図26によれば、メモリ31は、ロウ方向に10×2ビットを記憶する20個のカラムを有し、カラム方向に16200/(10×2)ビットを記憶する。
 そして、メモリ31の20個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが0の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが2の位置と、6番目のカラムの書き始めの位置は、アドレスが2の位置と、7番目のカラムの書き始めの位置は、アドレスが2の位置と、8番目のカラムの書き始めの位置は、アドレスが2の位置と、9番目のカラムの書き始めの位置は、アドレスが5の位置と、10番目のカラムの書き始めの位置は、アドレスが5の位置と、11番目のカラムの書き始めの位置は、アドレスが5の位置と、12番目のカラムの書き始めの位置は、アドレスが5の位置と、13番目のカラムの書き始めの位置は、アドレスが5の位置と、14番目のカラムの書き始めの位置は、アドレスが7の位置と、15番目のカラムの書き始めの位置は、アドレスが7の位置と、16番目のカラムの書き始めの位置は、アドレスが7の位置と、17番目のカラムの書き始めの位置は、アドレスが7の位置と、18番目のカラムの書き始めの位置は、アドレスが8の位置と、19番目のカラムの書き始めの位置は、アドレスが8の位置と、20番目のカラムの書き始めの位置は、アドレスが10の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、例えば、4096QAMが採用されることによって、1シンボルのビット数mが、12ビットである場合、図26によれば、メモリ31は、ロウ方向に12×1ビットを記憶する12個のカラムを有し、カラム方向に16200/(12×1)ビットを記憶する。
 そして、メモリ31の12個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが0の位置と、4番目のカラムの書き始めの位置は、アドレスが2の位置と、5番目のカラムの書き始めの位置は、アドレスが2の位置と、6番目のカラムの書き始めの位置は、アドレスが2の位置と、7番目のカラムの書き始めの位置は、アドレスが3の位置と、8番目のカラムの書き始めの位置は、アドレスが3の位置と、9番目のカラムの書き始めの位置は、アドレスが3の位置と、10番目のカラムの書き始めの位置は、アドレスが6の位置と、11番目のカラムの書き始めの位置は、アドレスが7の位置と、12番目のカラムの書き始めの位置は、アドレスが7の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、4096QAMが採用されることによって、1シンボルのビット数mが、12ビットである場合、図26によれば、メモリ31は、ロウ方向に12×2ビットを記憶する24個のカラムを有し、カラム方向に16200/(12×2)ビットを記憶する。
 そして、メモリ31の24個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが0の位置と、4番目のカラムの書き始めの位置は、アドレスが0の位置と、5番目のカラムの書き始めの位置は、アドレスが0の位置と、6番目のカラムの書き始めの位置は、アドレスが0の位置と、7番目のカラムの書き始めの位置は、アドレスが0の位置と、8番目のカラムの書き始めの位置は、アドレスが1の位置と、9番目のカラムの書き始めの位置は、アドレスが1の位置と、10番目のカラムの書き始めの位置は、アドレスが1の位置と、11番目のカラムの書き始めの位置は、アドレスが2の位置と、12番目のカラムの書き始めの位置は、アドレスが2の位置と、13番目のカラムの書き始めの位置は、アドレスが2の位置と、14番目のカラムの書き始めの位置は、アドレスが3の位置と、15番目のカラムの書き始めの位置は、アドレスが7の位置と、16番目のカラムの書き始めの位置は、アドレスが9の位置と、17番目のカラムの書き始めの位置は、アドレスが9の位置と、18番目のカラムの書き始めの位置は、アドレスが9の位置と、19番目のカラムの書き始めの位置は、アドレスが10の位置と、20番目のカラムの書き始めの位置は、アドレスが10の位置と、21番目のカラムの書き始めの位置は、アドレスが10の位置と、22番目のカラムの書き始めの位置は、アドレスが10の位置と、23番目のカラムの書き始めの位置は、アドレスが10の位置と、24番目のカラムの書き始めの位置は、アドレスが11の位置と、それぞれされる。
 図27は、図8のLDPCエンコーダ115、ビットインターリーバ116、及び、QAMエンコーダ117で行われる処理を説明するフローチャートである。
 LDPCエンコーダ115は、BCHエンコーダ114から、LDPC対象データが供給されるのを待って、ステップS101において、LDPC対象データを、LDPC符号に符号化し、そのLDPC符号を、ビットインターリーバ116に供給して、処理は、ステップS102に進む。
 ビットインターリーバ116は、ステップS102において、LDPCエンコーダ115からのLDPC符号を対象として、ビットインターリーブを行い、そのビットインターリーブ後のLDPC符号をシンボル化したシンボルを、QAMエンコーダ117に供給して、処理は、ステップS103に進む。
 すなわち、ステップS102では、ビットインターリーバ116(図9)において、パリティインターリーバ23が、LDPCエンコーダ115からのLDPC符号を対象として、パリティインターリーブを行い、そのパリティインターリーブ後のLDPC符号を、カラムツイストインターリーバ24に供給する。
 カラムツイストインターリーバ24は、パリティインターリーバ23からのLDPC符号を対象として、カラムツイストインターリーブを行い、デマルチプレクサ25に供給する。
 デマルチプレクサ25は、カラムツイストインターリーバ24によるカラムツイストインターリーブ後のLDPC符号の符号ビットを入れ替えて、入れ替え後の符号ビットを、シンボルのシンボルビット(シンボルを表すビット)とする入れ替え処理を行う。
 ここで、デマルチプレクサ25による入れ替え処理は、図18及び図19に示した第1ないし第4の入れ替え方式に従って行うことができる他、割り当てルールに従って行うことができる。割り当てルールは、LDPC符号の符号ビットを、シンボルを表すシンボルビットに割り当てるためのルールであり、その詳細については、後述する。
 デマルチプレクサ25による入れ替え処理によって得られたシンボルは、デマルチプレクサ25から、QAMエンコーダ117に供給される。
 QAMエンコーダ117は、ステップS103において、デマルチプレクサ25からのシンボルを、QAMエンコーダ117で行われる直交変調の変調方式で定める信号点にマッピングして直交変調し、その結果得られるデータを、時間インターリーバ118に供給する。
 以上のように、パリティインターリーブや、カラムツイストインターリーブを行うことで、LDPC符号の複数の符号ビットを1個のシンボルとして送信する場合の、イレージャやバースト誤りに対する耐性を向上させることができる。
 ここで、図9では、説明の便宜のため、パリティインターリーブを行うブロックであるパリティインターリーバ23と、カラムツイストインターリーブを行うブロックであるカラムツイストインターリーバ24とを、別個に構成するようにしたが、パリティインターリーバ23とカラムツイストインターリーバ24とは、一体的に構成することができる。
 すなわち、パリティインターリーブと、カラムツイストインターリーブとは、いずれも、メモリに対する符号ビットの書き込み、及び読み出しによって行うことができ、符号ビットの書き込みを行うアドレス(書き込みアドレス)を、符号ビットの読み出しを行うアドレス(読み出しアドレス)に変換する行列によって表すことができる。
 したがって、パリティインターリーブを表す行列と、カラムツイストインターリーブを表す行列とを乗算して得られる行列を求めておけば、その行列によって、符号ビットを変換することで、パリティインターリーブを行い、さらに、そのパリティインターリーブ後のLDPC符号をカラムツイストインターリーブした結果を得ることができる。
 また、パリティインターリーバ23とカラムツイストインターリーバ24に加えて、デマルチプレクサ25も、一体的に構成することが可能である。
 すなわち、デマルチプレクサ25で行われる入れ替え処理も、LDPC符号を記憶するメモリ31の書き込みアドレスを、読み出しアドレスに変換する行列によって表すことができる。
 したがって、パリティインターリーブを表す行列、カラムツイストインターリーブを表す行列、及び、入れ替え処理を表す行列を乗算して得られる行列を求めておけば、その行列によって、パリティインターリーブ、カラムツイストインターリーブ、及び、入れ替え処理を、一括して行うことができる。
 なお、パリティインターリーブと、カラムツイストインターリーブとについては、そのうちのいずれか一方だけを行うようにすること、又は、いずれも行わないようにすることが可能である。
 次に、図28ないし図30を参照して、図8の送信装置11について行った、エラーレート(bit error rate)を計測するシミュレーションについて説明する。
 シミュレーションは、D/Uが0dBのフラッタ(flutter)がある通信路を採用して行った。
 図28は、シミュレーションで採用した通信路のモデルを示している。
 すなわち、図28のAは、シミュレーションで採用したフラッタのモデルを示している。
 また、図28のBは、図28のAのモデルで表されるフラッタがある通信路のモデルを示している。
 なお、図28のBにおいて、Hは、図28のAのフラッタのモデルを表す。また、図28のBにおいて、Nは、ICI(Inter Carrier Interference)を表し、シミュレーションでは、そのパワーの期待値E[N2]を、AWGNで近似した。
 図29及び図30は、シミュレーションで得られたエラーレートと、フラッタのドップラ周波数fdとの関係を示している。
 なお、図29は、変調方式が16QAMで、符号化率(r)が(3/4)で、入れ替え方式が第1の入れ替え方式である場合の、エラーレートとドップラ周波数fdとの関係を示している。また、図30は、変調方式が64QAMで、符号化率(r)が(5/6)で、入れ替え方式が第1の入れ替え方式である場合の、エラーレートとドップラ周波数fdとの関係を示している。
 さらに、図29及び図30において、太線は、パリティインターリーブ、カラムツイストインターリーブ、及び、入れ替え処理のすべてを行った場合の、エラーレートとドップラ周波数fdとの関係を示しており、細線は、パリティインターリーブ、カラムツイストインターリーブ、及び、入れ替え処理のうちの、入れ替え処理だけを行った場合の、エラーレートとドップラ周波数fdとの関係を示している。
 図29及び図30のいずれにおいても、パリティインターリーブ、カラムツイストインターリーブ、及び、入れ替え処理のすべてを行った場合の方が、入れ替え処理だけを行った場合よりも、エラーレートが向上する(小さくなる)ことが分かる。
 [LDPCエンコーダ115の構成例]
 図31は、図8のLDPCエンコーダ115の構成例を示すブロック図である。
 なお、図8のLDPCエンコーダ122も、同様に構成される。
 図12及び図13で説明したように、DVB-T.2の規格では、64800ビットと16200ビットとの2通りの符号長NのLDPC符号が規定されている。
 そして、符号長Nが64800ビットのLDPC符号については、11個の符号化率1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6,8/9、及び9/10が規定されており、符号長Nが16200ビットのLDPC符号については、10個の符号化率1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6、及び8/9が規定されている(図12及び図13)。
 LDPCエンコーダ115は、例えば、このような、符号長Nが64800ビットや16200ビットの各符号化率のLDPC符号による符号化(誤り訂正符号化)を、符号長Nごと、及び符号化率ごとに用意された検査行列Hに従って行うことができる。
 LDPCエンコーダ115は、符号化処理部601と記憶部602とから構成される。
 符号化処理部601は、符号化率設定部611、初期値テーブル読み出し部612、検査行列生成部613、情報ビット読み出し部614、符号化パリティ演算部615、及び制御部616から構成され、LDPCエンコーダ115に供給されるLDPC対象データのLDPC符号化を行い、その結果得られるLDPC符号を、ビットインターリーバ116(図8)に供給する。
 すなわち、符号化率設定部611は、例えば、オペレータの操作等に応じて、LDPC符号の符号長Nと符号化率とを設定する。
 初期値テーブル読み出し部612は、符号化率設定部611が設定した符号長N及び符号化率に対応する、後述する検査行列初期値テーブルを、記憶部602から読み出す。
 検査行列生成部613は、初期値テーブル読み出し部612が読み出した検査行列初期値テーブルに基づいて、符号化率設定部611が設定した符号長N及び符号化率に応じた情報長K(=符号長N-パリティ長M)に対応する情報行列HAの1の要素を列方向に360列(巡回構造の単位の列数P)ごとの周期で配置して検査行列Hを生成し、記憶部602に格納する。
 情報ビット読み出し部614は、LDPCエンコーダ115に供給されるLDPC対象データから、情報長K分の情報ビットを読み出す(抽出する)。
 符号化パリティ演算部615は、検査行列生成部613が生成した検査行列Hを記憶部602から読み出し、その検査行列Hを用いて、情報ビット読み出し部614が読み出した情報ビットに対するパリティビットを所定の式に基づいて算出することにより、符号語(LDPC符号)を生成する。
 制御部616は、符号化処理部601を構成する各ブロックを制御する。
 記憶部602には、例えば、64800ビットや16200ビット等の符号長Nそれぞれについての、図12及び図13に示した複数の符号化率等それぞれに対応する複数の検査行列初期値テーブル等が格納されている。また、記憶部602は、符号化処理部601の処理上必要なデータを一時記憶する。
 図32は、図31のLDPCエンコーダ115の処理を説明するフローチャートである。
 ステップS201において、符号化率設定部611は、LDPC符号化を行う符号長N及び符号化率rを決定(設定)する。
 ステップS202において、初期値テーブル読み出し部612は、符号化率設定部611により決定された符号長N及び符号化率rに対応する、予め定められた検査行列初期値テーブルを、記憶部602から読み出す。
 ステップS203において、検査行列生成部613は、初期値テーブル読み出し部612が記憶部602から読み出した検査行列初期値テーブルを用いて、符号化率設定部611により決定された符号長N及び符号化率rのLDPC符号の検査行列Hを求め(生成し)、記憶部602に供給して格納する。
 ステップS204において、情報ビット読み出し部614は、LDPCエンコーダ115に供給されるLDPC対象データから、符号化率設定部611により決定された符号長N及び符号化率rに対応する情報長K(=N×r)の情報ビットを読み出すとともに、検査行列生成部613が求めた検査行列Hを、記憶部602から読み出し、符号化パリティ演算部615に供給する。
 ステップS205において、符号化パリティ演算部615は、式(8)を満たす符号語cのパリティビットを順次演算する。
   HcT=0
                        ・・・(8)
 式(8)において、cは、符号語(LDPC符号)としての行ベクトルを表し、cTは、行ベクトルcの転置を表す。
 ここで、上述したように、LDPC符号(1符号語)としての行ベクトルcのうちの、情報ビットの部分を、行ベクトルAで表すとともに、パリティビットの部分を、行ベクトルTで表す場合には、行ベクトルcは、情報ビットとしての行ベクトルAと、パリティビットとしての行ベクトルTとによって、式c =[A|T]で表すことができる。
 検査行列Hと、LDPC符号としての行ベクトルc=[A|T]とは、式HcT=0を満たす必要があり、かかる式HcT=0を満たす行ベクトルc=[A|T]を構成するパリティビットとしての行ベクトルTは、検査行列H=[HA|HT]のパリティ行列HTが、図11に示した階段構造になっている場合には、式HcT=0における列ベクトルHcTの1行目の要素から順に、各行の要素を0にしていくようにすることで、逐次的に求めることができる。
 符号化パリティ演算部615は、情報ビットAに対して、パリティビットTを求めると、その情報ビットAとパリティビットTとによって表される符号語c =[A|T]を、情報ビットAのLDPC符号化結果として出力する。
 その後、ステップS206において、制御部616は、LDPC符号化を終了するかどうかを判定する。ステップS206において、LDPC符号化を終了しないと判定された場合、すなわち、例えば、LDPC符号化すべきLDPC対象データが、まだある場合、処理は、ステップS201(又は、ステップS204)に戻り、以下、ステップS201(又は、ステップS204)ないしS206の処理が繰り返される。
 また、ステップS206において、LDPC符号化を終了すると判定された場合、すなわち、例えば、LDPC符号化すべきLDPC対象データがない場合、LDPCエンコーダ115は、処理を終了する。
 以上のように、各符号長N、及び、各符号化率rに対応する検査行列初期値テーブルが用意されており、LDPCエンコーダ115は、所定の符号長Nの、所定の符号化率rのLDPC符号化を、その所定の符号長N、及び、所定の符号化率rに対応する検査行列初期値テーブルから生成される検査行列Hを用いて行う。
 [検査行列初期値テーブルの例]
 検査行列初期値テーブルは、検査行列Hの、LDPC符号(検査行列Hによって定義されるLDPC符号)の符号長N及び符号化率rに応じた情報長Kに対応する情報行列HA(図10)の1の要素の位置を360列(巡回構造の単位の列数P)ごとに表すテーブルであり、各符号長N及び各符号化率rの検査行列Hごとに、あらかじめ作成される。
 図33は、検査行列初期値テーブルの例を示す図である。
 すなわち、図33は、DVB-T.2の規格に規定されている、符号長Nが16200ビットの、符号化率rが1/4の検査行列Hに対する検査行列初期値テーブルを示している。
 検査行列生成部613(図31)は、検査行列初期値テーブルを用いて、以下のように、検査行列Hを求める。
 すなわち、図34は、検査行列初期値テーブルから検査行列Hを求める方法を示している。
 なお、図34の検査行列初期値テーブルは、DVB-T.2の規格に規定されている、符号長Nが16200ビットの、符号化率rが2/3の検査行列Hに対する検査行列初期値テーブルを示している。
 検査行列初期値テーブルは、上述したように、LDPC符号の符号長N及び符号化率rに応じた情報長Kに対応する情報行列HA(図10)の1の要素の位置を、360列(巡回構造の単位の列数P)ごとに表すテーブルであり、そのi行目には、検査行列Hの1+360×(i-1)列目の1の要素の行番号(検査行列Hの1行目の行番号を0とする行番号)が、その1+360×(i-1)列目の列が持つ列重みの数だけ並んでいる。
 ここで、検査行列Hの、パリティ長Mに対応するパリティ行列HT(図10)は、図21に示したように決まっているので、検査行列初期値テーブルによれば、検査行列Hの、情報長Kに対応する情報行列HA(図10)が求められる。
 検査行列初期値テーブルの行数k+1は、情報長Kによって異なる。
 情報長Kと、検査行列初期値テーブルの行数k+1との間には、式(9)の関係が成り立つ。
   K=(k+1)×360
                        ・・・(9)
 ここで、式(9)の360は、図22で説明した巡回構造の単位の列数Pである。
 図34の検査行列初期値テーブルでは、1行目から3行目までに、13個の数値が並び、4行目からk+1行目(図34では、30行目)までに、3個の数値が並んでいる。
 したがって、図34の検査行列初期値テーブルから求められる検査行列Hの列重みは、1列目から、1+360×(3-1)-1列目までは、13であり、1+360×(3-1)列目から、K列目までは、3である。
 図34の検査行列初期値テーブルの1行目は、0,2084,1613,1548,1286,1460,3196,4297,2481,3369,3451,4620,2622となっており、これは、検査行列Hの1列目において、行番号が、0,2084,1613,1548,1286,1460,3196,4297,2481,3369,3451,4620,2622の行の要素が1であること(かつ、他の要素が0であること)を示している。
 また、図34の検査行列初期値テーブルの2行目は、1,122,1516,3448,2880,1407,1847,3799,3529,373,971,4358,3108となっており、これは、検査行列Hの361(=1+360×(2-1))列目において、行番号が、1,122,1516,3448,2880,1407,1847,3799,3529,373,971,4358,3108の行の要素が1であることを示している。
 以上のように、検査行列初期値テーブルは、検査行列Hの情報行列HAの1の要素の位置を360列ごとに表す。
 検査行列Hの1+360×(i-1)列目以外の列、つまり、2+360×(i-1)列目から、360×i列目までの各列は、検査行列初期値テーブルによって定まる1+360×(i-1)列目の1の要素を、パリティ長Mに従って下方向(列の下方向)に、周期的にサイクリックシフトして配置したものになっている。
 すなわち、例えば、2+360×(i-1)列目は、1+360×(i-1)列目を、M/360(=q)だけ下方向にサイクリックシフトしたものとなっており、次の3+360×(i-1)列目は、1+360×(i-1)列目を、2×M/360(=2×q)だけ下方向にサイクリックシフトしたもの(2+360×(i-1)列目を、M/360(=q)だけ下方向にサイクリックシフトしたもの)となっている。
 いま、検査行列初期値テーブルのi行目(上からi番目)のj列目(左からj番目)の数値を、hi,jと表すとともに、検査行列Hのw列目の、j個目の1の要素の行番号を、Hw-jと表すこととすると、検査行列Hの1+360×(i-1)列目以外の列であるw列目の、1の要素の行番号Hw-jは、式(10)で求めることができる。
   Hw-j=mod{hi,j+mod((w-1),P)×q,M)
                        ・・・(10)
 ここで、mod(x,y)はxをyで割った余りを意味する。
 また、Pは、上述した巡回構造の単位の列数であり、例えば、DVB-T.2の規格では、上述のように、360である。さらに、qは、パリティ長Mを、巡回構造の単位の列数P(=360)で除算することにより得られる値M/360である。
 検査行列生成部613(図31)は、検査行列初期値テーブルによって、検査行列Hの1+360×(i-1)列目の1の要素の行番号を特定する。
 さらに、検査行列生成部613(図31)は、検査行列Hの1+360×(i-1)列目以外の列であるw列目の、1の要素の行番号Hw-jを、式(10)に従って求め、以上により得られた行番号の要素を1とする検査行列Hを生成する。
 [符号長Nが4320ビットのLDPC符号]
 ところで、携帯端末向けのディジタル放送は、固定端末向けのディジタル放送の規格であるDVB-T.2に準拠した送信装置、及び、受信装置の仕様を、なるべく変更せずに行うことができれば、コストの面で有利である。
 しかしながら、DVB-T.2では、符号長Nが64kビット及び16kビットのLDPC符号が規定されているが、それより短い符号長のLDPC符号は、規定されていない。
 一方、長い符号長のLDPC符号よりも、短い符号長のLDPC符号の方が、LDPC符号の復号時等に必要なメモリや遅延を小とすることができることから、携帯端末向けのディジタル放送では、有効なことがある。
 そこで、送信装置11(図7)では、DVB-T.2に規定されているLDPC符号(符号長Nが64kビット及び16kビットのLDPC符号)よりも短い符号長のLDPC符号を、携帯端末向けのディジタル放送のLDPC符号(以下、携帯用LDPC符号ともいう)として用いて、携帯端末向けのディジタル放送を行うことができる。
なお、携帯用LDPC符号については、DVB-T.2との親和性(compatibility)を、なるべく維持する観点から、DVB-T.2に規定されているLDPC符号と同様に、検査行列Hのパリティ行列HTは、階段構造とする(図11)。
 さらに、携帯用LDPC符号については、DVB-T.2に規定されているLDPC符号と同様に、検査行列Hの情報行列HAは、巡回構造とし、巡回構造の単位の列数Pも、360とする。
 また、携帯用LDPC符号の符号長Nとしては、DVB-T.2に規定されているLDPC符号よりも短く、かつ、(DVB-T.2に規定されているLDPC符号と同様に、)巡回構造の単位の列数Pの倍数である、例えば、4320ビット(以下、4kビットともいう)を採用することとする。
 図35ないし図43は、以上のような、符号長Nが4kビットの(携帯用)LDPC符号の検査行列初期値テーブルの例を示す図である。
 すなわち、図35は、符号長Nが4kビットの、符号化率rが1/4の検査行列Hに対する検査行列初期値テーブルを示している。
 図36は、符号長Nが4kビットの、符号化率rが1/3の検査行列Hに対する検査行列初期値テーブルを示している。
 図37は、符号長Nが4kビットの、符号化率rが5/12の検査行列Hに対する検査行列初期値テーブルを示している。
 図38は、符号長Nが4kビットの、符号化率rが1/2の検査行列Hに対する検査行列初期値テーブルを示している。
 図39は、符号長Nが4kビットの、符号化率rが7/12の検査行列Hに対する検査行列初期値テーブルを示している。
 図40は、符号長Nが4kビットの、符号化率rが2/3の検査行列Hに対する検査行列初期値テーブルを示している。
 図41は、符号長Nが4kビットの、符号化率rが3/4の検査行列Hに対する検査行列初期値テーブルを示している。
 図42は、符号長Nが4kビットの、符号化率rが5/6の検査行列Hに対する検査行列初期値テーブルを示している。
図43は、符号長Nが4kビットの、符号化率rが11/12の検査行列Hに対する検査行列初期値テーブルを示している。
 LDPCエンコーダ115(図8、図31)は、携帯端末向けのディジタル放送については、図35ないし図43に示した検査行列初期値テーブルから求められる検査行列Hを用いて、符号長Nが4kビットの、符号化率rが1/4,1/3,5/12,1/2,7/12,2/3,3/4,5/6、及び、11/12の9種類のうちのいずれかのLDPC符号への符号化を行う。
 図35ないし図43の検査行列初期値テーブルから求められる検査行列Hを用いて得られるLDPC符号は、性能の良いLDPC符号になっている。
 ここで、性能の良いLDPC符号とは、適切な検査行列Hから得られるLDPC符号である。
 また、適切な検査行列Hとは、検査行列Hから得られるLDPC符号を、低いEs/N0(1シンボルあたりの信号電力対雑音電力比)、又はEb/No(1ビットあたりの信号電力対雑音電力比)で送信したときに、BER(Bit Error Rate)をより小にする、所定の条件を満たす検査行列である。
 適切な検査行列Hは、例えば、所定の条件を満たす様々な検査行列から得られるLDPC符号を、低いEs/Noで送信したときのBERを計測するシミュレーションを行うことにより求めることができる。
 適切な検査行列Hが満たすべき所定の条件としては、例えば、デンシティエボリューション(Density Evolution)と呼ばれる符号の性能の解析法で得られる解析結果が良好であること、サイクル4と呼ばれる、1の要素のループが存在しないこと、等がある。
 ここで、情報行列HAにおいて、サイクル4のように、1の要素が密集していると、LDPC符号の復号性能が劣化することが知られており、このため、適切な検査行列Hが満たすべき所定の条件として、サイクル4が存在しないことが要求される。
 なお、適切な検査行列Hが満たすべき所定の条件は、LDPC符号の復号性能の向上や、LDPC符号の復号処理の容易化(単純化)等の観点から適宜決定することができる。
 図44及び図45は、適切な検査行列Hが満たすべき所定の条件としての解析結果が得られるデンシティエボリューションを説明する図である。
 デンシティエボリューションとは、後述するデグリーシーケンス(degree sequence)で特徴付けられる符号長Nが∞のLDPC符号全体(アンサンブル(ensemble))に対して、そのエラー確率の期待値を計算する、符号の解析法である。
 例えば、AWGNチャネル上で、ノイズの分散値を0からどんどん大きくしていくと、あるアンサンブルのエラー確率の期待値は、最初は0であるが、ノイズの分散値が、ある閾値(threshold)以上となると、0ではなくなる。
 デンシティエボリューションによれば、そのエラー確率の期待値が0ではなくなる、ノイズの分散値の閾値(以下、性能閾値ともいう)を比較することで、アンサンブルの性能(検査行列の適切さ)の良し悪しを決めることができる。
 なお、具体的なLDPC符号に対して、そのLDPC符号が属するアンサンブルを決定し、そのアンサンブルに対してデンシティエボリューションを行うと そのLDPC符号のおおまかな性能を予想することができる。
 したがって、性能の良いLDPC符号は、性能の良いアンサンブルを見つければ、そのアンサンブルに属するLDPC符号の中から見つけることができる。
 ここで、上述のデグリーシーケンス とは、LDPC符号の符号長Nに対して、各値の重みをもつバリアブルノードやチェックノードがどれくらいの割合だけあるかを表す。
 例えば、符号化率が1/2のregular(3,6)LDPC符号は、すべてのバリアブルノードの重み(列重み)が3で、すべてのチェックノードの重み(行重み)が6であるというデグリーシーケンスによって特徴付けられるアンサンブルに属する。
 図44は、そのようなアンサンブルのタナーグラフ(Tanner graph)を示している。
 図44のタナーブラフでは、図中丸印(○印)で示すバリアブルノードが、符号長Nに等しいN個だけ存在し、図中四角形(□印)で示すチェックノードが、符号長Nに符号化率1/2を乗算した乗算値に等しいN/2個だけ存在する。
 各バリアブルノードには、列重みに等しい3本の枝(edge)が接続されており、したがって、N個のバリアブルノードに接続している枝は、全部で、3N本だけ存在する。
 また、各チェックノードには、行重みに等しい6本の枝が接続されており、したがって、N/2個のチェックノードに接続している枝は、全部で、3N本だけ存在する。
 さらに、図44のタナーグラフでは、1つのインターリーバが存在する。
 インターリーバは、N個のバリアブルノードに接続している3N本の枝をランダムに並べ替え、その並べ替え後の各枝を、N/2個のチェックノードに接続している3N本の枝のうちのいずれかに繋げる。
 インターリーバでの、N個のバリアブルノードに接続している3N本の枝を並べ替える並べ替えパターンは、(3N)!(=(3N)×(3N-1)×・・・×1)通りだけある。したがって、すべてのバリアブルノードの重みが3で、すべてのチェックノードの重みが6であるというデグリーリーケンスによって特徴付けられるアンサンブルは、(3N)!個のLDPC符号の集合となる。
 性能の良いLDPC符号(適切な検査行列)を求めるシミュレーションでは、デンシティエボリューションにおいて、マルチエッジタイプ(multi-edge type)のアンサンブルを用いた。
 マルチエッジタイプでは、バリアブルノードに接続している枝と、チェックノードに接続している枝とが経由するインターリーバが、複数(multi edge)に分割され、これにより、アンサンブルの特徴付けが、より厳密に行われる。
 図45は、マルチエッジタイプのアンサンブルのタナーグラフの例を示している。
 図45のタナーグラフでは、第1インターリーバと第2インターリーバとの2つのインターリーバが存在する。
 また、図45のタナーグラフでは、第1インターリーバに繋がる枝が1本で、第2インターリーバに繋がる枝が0本のバリアブルノードがv1個だけ、第1インターリーバに繋がる枝が1本で、第2インターリーバに繋がる枝が2本のバリアブルノードがv2個だけ、第1インターリーバに繋がる枝が0本で、第2インターリーバに繋がる枝が2本のバリアブルノードがv3個だけ、それぞれ存在する。
 さらに、図45のタナーグラフでは、第1インターリーバに繋がる枝が2本で、第2インターリーバに繋がる枝が0本のチェックノードがc1個だけ、第1インターリーバに繋がる枝が2本で、第2インターリーバに繋がる枝が2本のチェックノードがc2個だけ、第1インターリーバに繋がる枝が0本で、第2インターリーバに繋がる枝が3本のチェックノードがc3個だけ、それぞれ存在する。
 ここで、デンシティエボリューションと、その実装については、例えば、"On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit", S.Y.Chung, G.D.Forney, T.J.Richardson,R.Urbanke, IEEE Communications Leggers, VOL.5, NO.2, Feb 2001に記載されている。
 図35ないし図43の携帯用LDPC符号(の検査行列初期値テーブル)を求めるシミュレーションでは、マルチエッジタイプのデンシティエボリューションによって、BERが落ち始める(小さくなっていく)Eb/N0である性能閾値が、所定値以下になるアンサンブルを見つけ、そのアンサンブルに属するLDPC符号の中から、16QAMや64QAM等の、携帯端末向けのディジタル放送で用いられる複数の変調方式におけるBERを小さくするLDPC符号を、性能の良いLDPC符号として選択した。
 ここで、上述したように、携帯端末向けのディジタル放送において、DVB-T.2に規定されているLDPC符号(符号長Nが16k及び64kビットのLDPC符号)よりも符号長Nが短い4kビットのLDPC符号は、DVB-T.2に規定されている、符号長Nが長いLDPC符号よりも、通信路13(図7)におけるエラーに対する耐性が低下する。
 そこで、携帯端末向けのディジタル放送では、エラーに対する耐性を向上させるために、例えば、QPSKや、16QAM,64QAM等の、信号点の数が比較的少ない変調方式を採用する。
 上述の図35ないし図43の検査行列初期値テーブルは、以上のようなシミュレーションにより求められた、符号長Nが4kビットのLDPC符号の検査行列初期値テーブルである。
 図46は、図35ないし図43の、符号長Nが4kビットで、符号化率rが1/4,1/3,5/12,1/2,7/12,2/3,3/4,5/6、及び、11/12の9種類それぞれのLDPC符号の検査行列初期値テーブルから求められる検査行列Hの最小サイクル長と性能閾値とを示す図である。
 図35ないし図43の検査行列初期値テーブルから求められる検査行列Hのうちの、符号化率rが1/4及び1/3の検査行列Hの最小サイクル長は、8サイクルに、符号化率rが5/12,1/2,7/12,2/3,3/4,5/6、及び、11/12の検査行列Hの最小サイクル長は、6サイクルに、それぞれなっている。
 したがって、図35ないし図43の検査行列初期値テーブルから求められる検査行列Hには、サイクル4は、存在しない。
 また、符号化率rが小さいほど、LDPC符号の冗長性が大になるため、性能閾値は、符号化率rが小さくなるにつれて、向上している(小さくなっている)。
 図47は、図35ないし図43の(検査行列初期値テーブルから求められる)検査行列H(以下、携帯用LDPC符号の検査行列Hともいう)を説明する図である。
 携帯用LDPC符号の検査行列Hの1列目からのKX列については、列重みがXに、その後のKY列については、列重みがYに、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
 ここで、KX+KY+M-1+1は、符号長N=4320ビットに等しい。
 図48は、携帯用LDPC符号の各符号化率r(=1/4,1/3,5/12,1/2,7/12,2/3,3/4,5/6,11/12)についての、列数KX,KY、及びM、並びに、列重みX及びYを示す図である。
 符号長Nが4kの携帯用LDPC符号の検査行列Hについては、図12及び図13で説明したDVB-T.2に規定されている検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、携帯用LDPC符号の先頭の符号ビットほど、エラーに強い(エラーに対する耐性がある)傾向がある。
 [符号長Nが4320ビットのLDPC符号のカラムツイストインターリーブ]
 LDPCエンコーダ115(図8、図31)において、図35ないし図43に示した(検査行列初期値テーブルから求められる)検査行列Hを用いて、携帯用LDPC符号へのLDPC符号化を行う場合には、カラムツイストインターリーバ24(図9)で行われる並び替え処理としてのカラムツイストインターリーブでの、メモリ31の各カラム(図24)の書き始めの位置は、DVB-T.2に規定されているLDPC符号の場合の書き始めの位置(図25、図26)と異なる。
 図49は、携帯用LDPC符号について、カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスとを示す図である。
 すなわち、図49では、図35ないし図43の、符号長Nが4kビットで、符号化率rが1/4,1/3,5/12,1/2,7/12,2/3,3/4,5/6、及び、11/12の9種類の(検査行列初期値テーブルから求められる検査行列Hから得られる)携帯用LDPC符号について、カラムツイストインターリーブに必要なメモリ31のカラム数と、書き始めの位置のアドレスとが、変調方式ごとに示されている。
 なお、携帯用LDPC符号については、変調方式として、上述したように、信号点の数が比較的少ないQPSK,16QAM、及び、64QAMを採用することとする。
 倍数bが1であり、かつ、変調方式として、QPSKが採用されることによって、1シンボルのビット数mが、2ビットである場合、メモリ31は、ロウ方向に2×1ビットを記憶する2個のカラムを有し、カラム方向にN/(mb)=4320/(2×1)ビットを記憶する。
 そして、メモリ31の2個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、QPSKが採用されることによって、1シンボルのビット数mが、2ビットである場合、メモリ31は、ロウ方向に2×2ビットを記憶する4個のカラムを有し、カラム方向にN/(mb)=4320/(2×2)ビットを記憶する。
 そして、メモリ31の4個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが1の位置と、4番目のカラムの書き始めの位置は、アドレスが0の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、16QAMが採用されることによって、1シンボルのビット数mが、4ビットである場合、メモリ31は、ロウ方向に4×1ビットを記憶する4個のカラムを有し、カラム方向にN/(mb)=4320/(4×1)ビットを記憶する。
 そして、メモリ31の4個のカラムそれぞれの書き始めの位置は、倍数bが2であり、かつ、変調方式として、QPSKが採用される場合と同様にされる。
 すなわち、メモリ31の4個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが1の位置と、4番目のカラムの書き始めの位置は、アドレスが0の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、16QAMが採用されることによって、1シンボルのビット数mが、4ビットである場合、メモリ31は、ロウ方向に4×2ビットを記憶する8個のカラムを有し、カラム方向にN/(mb)=4320/(4×2)ビットを記憶する。
 そして、メモリ31の8個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが8の位置と、3番目のカラムの書き始めの位置は、アドレスが10の位置と、4番目のカラムの書き始めの位置は、アドレスが10の位置と、5番目のカラムの書き始めの位置は、アドレスが25の位置と、6番目のカラムの書き始めの位置は、アドレスが54の位置と、7番目のカラムの書き始めの位置は、アドレスが62の位置と、8番目のカラムの書き始めの位置は、アドレスが69の位置と、それぞれされる。
 倍数bが1であり、かつ、変調方式として、64QAMが採用されることによって、1シンボルのビット数mが、6ビットである場合、メモリ31は、ロウ方向に6×1ビットを記憶する6個のカラムを有し、カラム方向にN/(mb)=4320/(6×1)ビットを記憶する。
 そして、メモリ31の6個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが0の位置と、3番目のカラムの書き始めの位置は、アドレスが1の位置と、4番目のカラムの書き始めの位置は、アドレスが1の位置と、5番目のカラムの書き始めの位置は、アドレスが0の位置と、6番目のカラムの書き始めの位置は、アドレスが0の位置と、それぞれされる。
 倍数bが2であり、かつ、変調方式として、例えば、64QAMが採用されることによって、1シンボルのビット数mが、6ビットである場合、図49によれば、メモリ31は、ロウ方向に6×2ビットを記憶する12個のカラムを有し、カラム方向に4320/(6×2)ビットを記憶する。
 そして、メモリ31の12個のカラムのうちの、1番目のカラムの書き始めの位置は、アドレスが0の位置と、2番目のカラムの書き始めの位置は、アドレスが2の位置と、3番目のカラムの書き始めの位置は、アドレスが10の位置と、4番目のカラムの書き始めの位置は、アドレスが12の位置と、5番目のカラムの書き始めの位置は、アドレスが15の位置と、6番目のカラムの書き始めの位置は、アドレスが17の位置と、7番目のカラムの書き始めの位置は、アドレスが20の位置と、8番目のカラムの書き始めの位置は、アドレスが21の位置と、9番目のカラムの書き始めの位置は、アドレスが23の位置と、10番目のカラムの書き始めの位置は、アドレスが25の位置と、11番目のカラムの書き始めの位置は、アドレスが26の位置と、12番目のカラムの書き始めの位置は、アドレスが30の位置と、それぞれされる。
 図35ないし図43の、符号長Nが4kビットの携帯用LDPC符号については、以上のようなカラムツイストインターリーブを行うことにより、同一のチェックノードに繋がっている複数のバリアブルノードに対応する複数の符号ビットが、QPSK,16QAM、又は、64QAMの1個のシンボルとされること(同一のシンボルに含まれること)を回避することができ、その結果、イレージャのある通信路での復号の性能を向上させることができる。
 図50は、携帯用LDPC符号について、カラムツイストインターリーブを行った場合のBERのシミュレーションの結果を示す図である。
 シミュレーションでは、シンボルが消失(erasure)する消失確率が0.167のレイリーフェージングが生じる通信路(チャネル)を想定し、携帯用LDPC符号としては、符号長Nが4kビットで、符号化率が2/3のLDPC符号(図40)を採用するとともに、変調方式として、QPSKを採用した。
 図50において、横軸は、Es/N0(1シンボルあたりの信号電力対雑音電力比)を表し、縦軸は、BERを表す。
 また、図50において、実線は、パリティインターリーブとカラムツイストインターリーブとの両方を行った場合のBERを表し、点線は、パリティインターリーブを行い、カラムツイストインターリーブを行わない場合のBERを表す。
 図50によれば、カラムツイストインターリーブを行う場合には、カラムツイストインターリーブを行わない場合に比較して、全体的に、BERが向上しており、したがって、エラーに対する耐性が向上していることが分かる。
 [符号長Nが4320ビットのLDPC符号の入れ替え処理]
 携帯端末向けのディジタル放送において、上述したような、符号長Nが短い携帯用LDPC符号、すなわち、符号長Nが4kビットのLDPC符号を採用する場合には、通信路13(図7)におけるエラーに対する耐性が低下する。
 そこで、携帯端末向けのディジタル放送では、エラーに対する耐性を向上させるための対策を施すことが望ましい。
 エラーに対する耐性を向上させるための対策としては、上述したように、16QAMや64QAM等の、信号点の数が比較的少ない変調方式を採用する方法等の他、例えば、デマルチプレクサ25(図9)で行われる入れ替え処理がある。
 入れ替え処理において、DVB-T.2等の規格で規定されているLDPC符号の符号ビットを入れ替える入れ替え方式としては、例えば、上述した第1ないし第4の入れ替え方式や、DVB-T.2等の規格で規定されている入れ替え方式があるが、携帯端末向けのディジタル放送を、上述した符号長Nが4kビットのLDPC符号(携帯用LDPC符号)によって行う場合には、その、符号長Nが4kビットのLDPC符号に適した入れ替え処理を採用する必要がある。
 さらに、符号長Nが4kビットのLDPC符号について採用する入れ替え処理としては、エラーに対する耐性がより向上する方式の入れ替え処理を採用することが望ましい。
 そこで、デマルチプレクサ25(図9)では、図27で説明したように、割り当てルールに従って、入れ替え処理を行うことができるようになっている。
 以下、割り当てルールに従った入れ替え処理について説明するが、その前に、既に提案されている入れ替え方式(以下、現行方式ともいう)による入れ替え処理について説明する。
 図51及び図52を参照して、デマルチプレクサ25で、DVB-T.2等に規定されているLDPC符号(以下、規定符号ともいう)に対して、現行方式で入れ替え処理が行われるとした場合の、その入れ替え処理について説明する。
 図51は、LDPC符号が、DVB-T.2に規定されている、符号長Nが64800ビットで、符号化率が3/5のLDPC符号である場合の、現行方式の入れ替え処理の一例を示している。
 すなわち、図51のAは、LDPC符号が、符号長Nが64800ビットで、符号化率が3/5の規定符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、現行方式の入れ替え処理の一例を示している。
 変調方式が16QAMである場合、符号ビットの4(=m)ビットが、1個のシンボルとして、16QAMで定める16個の信号点のうちのいずれかにマッピングされる。
 さらに、符号長Nが64800ビットで、倍数bが2である場合、デマルチプレクサ25のメモリ31(図18、図19)は、ロウ方向に4×2(=mb)ビットを記憶する8個のカラムを有し、カラム方向に64800/(4×2)ビットを記憶する。
 デマルチプレクサ25では、LDPC符号の符号ビットが、メモリ31のカラム方向に書き込まれ、64800ビットの符号ビット(1符号語)の書き込みが終了すると、メモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0,b1,b2,b3,b4,b5,b6,b7を、例えば、図51のAに示すように、連続する2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0,y1,y2,y3,y4,y5,y6,y7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy1に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy5に、
 符号ビットb5を、シンボルビットy3に、
 符号ビットb6を、シンボルビットy6に、
 符号ビットb7を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図51のBは、LDPC符号が、符号長Nが64800ビットで、符号化率が3/5の規定符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、現行方式の入れ替え処理の一例を示している。
 変調方式が64QAMである場合、符号ビットの6(=m)ビットが、1個のシンボルとして、64QAMで定める64個の信号点のうちのいずれかにマッピングされる。
 さらに、符号長Nが64800ビットで、倍数bが2である場合、デマルチプレクサ25のメモリ31(図18、図19)は、ロウ方向に6×2(=mb)ビットを記憶する12個のカラムを有し、カラム方向に64800/(6×2)ビットを記憶する。
 デマルチプレクサ25では、LDPC符号の符号ビットが、メモリ31のカラム方向に書き込まれ、64800ビットの符号ビット(1符号語)の書き込みが終了すると、メモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11を、例えば、図51のBに示すように、連続する2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0,y1,y2,y3,y4,y5,y6,y7,y8,y9,y10,y11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy11に、
 符号ビットb1を、シンボルビットy7に、
 符号ビットb2を、シンボルビットy3に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy6に、
 符号ビットb5を、シンボルビットy2に、
 符号ビットb6を、シンボルビットy9に、
 符号ビットb7を、シンボルビットy5に、
 符号ビットb8を、シンボルビットy1に、
 符号ビットb9を、シンボルビットy8に、
 符号ビットb10を、シンボルビットy4に、
 符号ビットb11を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図51のCは、LDPC符号が、符号長Nが64800ビットで、符号化率が3/5の規定符号であり、さらに、変調方式が256QAMで、倍数bが2である場合の、現行方式の入れ替え処理の一例を示している。
 変調方式が256QAMである場合、符号ビットの8(=m)ビットが、1個のシンボルとして、256QAMで定める256個の信号点のうちのいずれかにマッピングされる。
 さらに、符号長Nが64800ビットで、倍数bが2である場合、デマルチプレクサ25のメモリ31(図18、図19)は、ロウ方向に8×2(=mb)ビットを記憶する16個のカラムを有し、カラム方向に64800/(8×2)ビットを記憶する。
 デマルチプレクサ25では、LDPC符号の符号ビットが、メモリ31のカラム方向に書き込まれ、64800ビットの符号ビット(1符号語)の書き込みが終了すると、メモリ31に書き込まれた符号ビットが、ロウ方向に、8×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、メモリ31から読み出される8×2(=mb)ビットの符号ビットb0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15を、例えば、図51のCに示すように、連続する2(=b)個のシンボルの8×2(=mb)ビットのシンボルビットy0,y1,y2,y3,y4,y5,y6,y7,y8,y9,y10,y11,y12,y13,y14,y15に割り当てるように、8×2(=mb)ビットの符号ビットb0ないしb15を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy15に、
 符号ビットb1を、シンボルビットy1に、
 符号ビットb2を、シンボルビットy13に、
 符号ビットb3を、シンボルビットy3に、
 符号ビットb4を、シンボルビットy8に、
 符号ビットb5を、シンボルビットy11に、
 符号ビットb6を、シンボルビットy9に、
 符号ビットb7を、シンボルビットy5に、
 符号ビットb8を、シンボルビットy10に、
 符号ビットb9を、シンボルビットy6に、
 符号ビットb10を、シンボルビットy4に、
 符号ビットb11を、シンボルビットy7に、
 符号ビットb12を、シンボルビットy12に、
 符号ビットb13を、シンボルビットy2に、
 符号ビットb14を、シンボルビットy14に、
 符号ビットb15を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図52は、LDPC符号が、符号長Nが16200ビットで、符号化率が3/5の規定符号である場合の、現行方式の入れ替え処理の一例を示している。
 すなわち、図52のAは、LDPC符号が、符号長Nが16200ビットで、符号化率が3/5のLDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、現行方式の入れ替え処理の一例を示している。
 変調方式が16QAMである場合、符号ビットの4(=m)ビットが、1個のシンボルとして、16QAMで定める16個の信号点のうちのいずれかにマッピングされる。
 さらに、符号長Nが16200ビットで、倍数bが2である場合、デマルチプレクサ25のメモリ31(図18、図19)は、ロウ方向に4×2(=mb)ビットを記憶する8個のカラムを有し、カラム方向に16200/(4×2)ビットを記憶する。
 デマルチプレクサ25では、LDPC符号の符号ビットが、メモリ31のカラム方向に書き込まれ、16200ビットの符号ビット(1符号語)の書き込みが終了すると、メモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0,b1,b2,b3,b4,b5,b6,b7を、例えば、図52のAに示すように、連続する2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0,y1,y2,y3,y4,y5,y6,y7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、上述した図51のAの場合と同様に、符号ビットb0ないしb7を、シンボルビットy0ないしy7に割り当てる入れ替えを行う。
 図52のBは、LDPC符号が、符号長Nが16200ビットで、符号化率が3/5の規定符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、現行方式の入れ替え処理の一例を示している。
 変調方式が64QAMである場合、符号ビットの6(=m)ビットが、1個のシンボルとして、64QAMで定める64個の信号点のうちのいずれかにマッピングされる。
 さらに、符号長Nが16200ビットで、倍数bが2である場合、デマルチプレクサ25のメモリ31(図18、図19)は、ロウ方向に6×2(=mb)ビットを記憶する12個のカラムを有し、カラム方向に16200/(6×2)ビットを記憶する。
 デマルチプレクサ25では、LDPC符号の符号ビットが、メモリ31のカラム方向に書き込まれ、16200ビットの符号ビット(1符号語)の書き込みが終了すると、メモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11を、例えば、図52のBに示すように、連続する2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0,y1,y2,y3,y4,y5,y6,y7,y8,y9,y10,y11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、上述した図51のBの場合と同様に、符号ビットb0ないしb11を、シンボルビットy0ないしy11に割り当てる入れ替えを行う。
 図52のCは、LDPC符号が、符号長Nが16200ビットで、符号化率が3/5の規定符号であり、さらに、変調方式が256QAMで、倍数bが1ある場合の、現行方式の入れ替え処理の一例を示している。
 変調方式が256QAMである場合、符号ビットの8(=m)ビットが、1個のシンボルとして、256QAMで定める256個の信号点のうちのいずれかにマッピングされる。
 さらに、符号長Nが16200ビットで、倍数bが1である場合、デマルチプレクサ25のメモリ31(図18、図19)は、ロウ方向に8×1(=mb)ビットを記憶する8個のカラムを有し、カラム方向に16200/(8×1)ビットを記憶する。
 デマルチプレクサ25では、LDPC符号の符号ビットが、メモリ31のカラム方向に書き込まれ、16200ビットの符号ビット(1符号語)の書き込みが終了すると、メモリ31に書き込まれた符号ビットが、ロウ方向に、8×1(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、メモリ31から読み出される8×1(=mb)ビットの符号ビットb0,b1,b2,b3,b4,b5,b6,b7を、例えば、図52のCに示すように、1(=b)個のシンボルの8×1(=mb)ビットのシンボルビットy0,y1,y2,y3,y4,y5,y6,y7に割り当てるように、8×1(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy3に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy5に、
 符号ビットb4を、シンボルビットy2に、
 符号ビットb5を、シンボルビットy6に、
 符号ビットb6を、シンボルビットy4に、
 符号ビットb7を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 次に、割り当てルールに従った入れ替え処理(以下、新入れ替え方式での入れ替え処理ともいう)について説明する。
 なお、携帯端末向けのディジタル放送では、信号点の少ないQPSKや、16QAM,64QAM等の変調方式が採用されることとして、ここでは、変調方式が、16QAMの場合、及び、64QAMの場合のそれぞれについて、新入れ替え方式を説明する。
 なお、変調方式がQPSKの場合、QPSKの4個のシンボル(信号点)を表す2ビットのシンボルビットy0,y1には、図14ないし図17で説明したエラーに対する強さの優劣がないので、入れ替え処理を行う必要はない(入れ替え処理を行っても、エラーに対する耐性は、変化しない)。
 図53ないし図55は、新入れ替え方式を説明する図である。
 新入れ替え方式では、デマルチプレクサ25の入れ替え部32は、mbビットの符号ビットの入れ替えを、あらかじめ定めた割り当てルールに従って行う。
 割り当てルールとは、LDPC符号の符号ビットをシンボルビットに割り当てるためのルールである。割り当てルールでは、符号ビットの符号ビットグループと、その符号ビットグループの符号ビットを割り当てるシンボルビットのシンボルビットグループとの組み合わせであるグループセットと、そのグループセットの符号ビットグループ、及びシンボルビットグループそれぞれの符号ビット、及びシンボルビットのビット数(以下、グループビット数ともいう)とが規定されている。
 ここで、符号ビットには、上述したように、エラー確率に違いがあり、シンボルビットにも、エラー確率に違いがある。符号ビットグループとは、符号ビットをエラー確率に応じてグループ分けするグループであり、シンボルビットグループとは、シンボルビットをエラー確率に応じてグループ分けするグループである。
 図53は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図53のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 ここで、符号ビットグループGb#iは、そのサフィックス#iが小さいほど、その符号ビットグループGb#iに属する符号ビットのエラー確率が良い(小さい)グループである。
 また、以下では、メモリ31から、ロウ方向に読み出される、mbビットの符号ビットの、最上位ビットから#i+1ビット目を、ビットb#iとも表すとともに、連続するb個のシンボルのmbビットのシンボルビットの、最上位ビットから#i+1ビット目のビットを、ビットy#iとも表す。
 図53のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1及びb2が、符号ビットグループGb3には、符号ビットb3,b4,b5,b6,b7,b8,b9,b10,b11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図53のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 ここで、シンボルビットグループGy#iは、符号ビットグループと同様に、そのサフィックス#iが小さいほど、そのシンボルビットグループGy#iに属するシンボルビットのエラー確率が良いグループである。
 図53のBでは、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図54は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図54の割り当てルールでは、符号ビットグループGb1と、シンボルビットグループGy3との組み合わせが、1個のグループセットとして規定されている。そして、そのグループセットのグループビット数が1ビットに規定されている。
 ここで、以下では、グループセットと、そのグループビット数とを、まとめて、グループセット情報という。そして、例えば、符号ビットグループGb1とシンボルビットグループGy3とのグループセットと、そのグループセットのグループビット数である1ビットを、グループセット情報(Gb1,Gy3,1)と記載する。
 図54の割り当てルールでは、グループセット情報(Gb1,Gy3,1)の他、グループセット情報(Gb2,Gy3,2),(Gb3,Gy3,1),(Gb3,Gy2,4),(Gb3,Gy1,4)が規定されている。
 例えば、グループセット情報(Gb1,Gy3,1)は、符号ビットグループGb1に属する符号ビットの1ビットを、シンボルビットグループGy3に属するシンボルビットの1ビットに割り当てることを意味する。
 したがって、図54の割り当てルールでは、
 グループセット情報(Gb1,Gy3,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy3,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,4)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの4ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの4ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,4)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの4ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの4ビットに割り当てること
 が規定されている。
 上述したように、符号ビットグループは、符号ビットをエラー確率に応じてグループ分けするグループであり、シンボルビットグループは、シンボルビットをエラー確率に応じてグループ分けするグループである。したがって、割り当てルールは、符号ビットのエラー確率と、その符号ビットを割り当てるシンボルビットのエラー確率との組み合わせを規定している、ということもできる。
 このように、符号ビットのエラー確率と、その符号ビットを割り当てるシンボルビットのエラー確率との組み合わせを規定する割り当てルールは、例えば、BERを計測するシミュレーション等によって、エラーに対する耐性(ノイズに対する耐性)を、より良くするように決定される。
 なお、ある符号ビットグループの符号ビットの割り当て先を、同一のシンボルビットグループのビットの中で変更しても、エラーに対する耐性には(ほとんど)影響しない。
 したがって、エラーに対する耐性を向上させるには、BER(Bit Error Rate)を最も小さくするグループセット情報、つまり、符号ビットの符号ビットグループと、その符号ビットグループの符号ビットを割り当てるシンボルビットのシンボルビットグループとの組み合わせ(グループセット)と、そのグループセットの符号ビットグループ、及びシンボルビットグループそれぞれの符号ビット、及びシンボルビットのビット数(グループビット数)とを、割り当てルールとして規定し、その割り当てルールに従って、符号ビットを、シンボルビットに割り当てるように、符号ビットの入れ替えを行えばよい。
 但し、割り当てルールに従って、どの符号ビットを、どのシンボルビットに割り当てるかの具体的な割り当て方は、送信装置11及び受信装置12(図7)の間で、あらかじめ決めておく必要がある。
 図55は、図54の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図55のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図54の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図54の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図55のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy11に、
 符号ビットb1を、シンボルビットy10に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy5に、
 符号ビットb4を、シンボルビットy2に、
 符号ビットb5を、シンボルビットy3に、
 符号ビットb6を、シンボルビットy8に、
 符号ビットb7を、シンボルビットy9に、
 符号ビットb8を、シンボルビットy6に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy1に、
 符号ビットb11を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図55のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図54の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図55のBによれば、入れ替え部32は、図54の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy11に、
 符号ビットb1を、シンボルビットy10に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy5に、
 符号ビットb4を、シンボルビットy9に、
 符号ビットb5を、シンボルビットy8に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy2に、
 符号ビットb8を、シンボルビットy0に、
 符号ビットb9を、シンボルビットy1に、
 符号ビットb10を、シンボルビットy6に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 ここで、図55のA及び図55のBに示した、符号ビットb#iの、シンボルビットy#iへの割り当て方は、いずれも、図54の割り当てルールに従っている(割り当てルールを遵守している)。
 図56は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図56のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図56のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb3が、符号ビットグループGb3には、符号ビットb4ないしb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図56のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図56のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図57は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図57の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy3,2),(Gb2,Gy1,1),(Gb3,Gy3,2),(Gb3,Gy2,4),(Gb3,Gy1,2)が規定されている。
 すなわち、図57の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy3,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy2,4)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの4ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの4ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること
 が規定されている。
 図58は、図57の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図58のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図57の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図57の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図58のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy11に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy8に、
 符号ビットb6を、シンボルビットy2に、
 符号ビットb7を、シンボルビットy9に、
 符号ビットb8を、シンボルビットy3に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy6に、
 それぞれ割り当てる入れ替えを行う。
 図58のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図57の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図58のBによれば、入れ替え部32は、図57の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy10に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy5に、
 符号ビットb5を、シンボルビットy3に、
 符号ビットb6を、シンボルビットy9に、
 符号ビットb7を、シンボルビットy2に、
 符号ビットb8を、シンボルビットy8に、
 符号ビットb9を、シンボルビットy6に、
 符号ビットb10を、シンボルビットy4に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図59は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図59のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図59のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb4が、符号ビットグループGb3には、符号ビットb5ないしb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図59のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図59のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図60は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図60の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy3,3),(Gb2,Gy1,1),(Gb3,Gy2,4),(Gb3,Gy1,2),(Gb3,Gy3,1)が規定されている。
 すなわち、図60の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,4)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの4ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの4ビットに割り当てること、
 グループセット情報(Gb3,Gy1,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy3,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの1ビットに割り当てること
 が規定されている。
 図61は、図60の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図61のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図60の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図60の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図61のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy11に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy8に、
 符号ビットb6を、シンボルビットy2に、
 符号ビットb7を、シンボルビットy9に、
 符号ビットb8を、シンボルビットy3に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy6に、
 それぞれ割り当てる入れ替えを行う。
 図61のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図60の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図61のBによれば、入れ替え部32は、図60の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy10に、
 符号ビットb5を、シンボルビットy3に、
 符号ビットb6を、シンボルビットy9に、
 符号ビットb7を、シンボルビットy2に、
 符号ビットb8を、シンボルビットy8に、
 符号ビットb9を、シンボルビットy6に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図62は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図62のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図62のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb5が、符号ビットグループGb3には、符号ビットb6ないしb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図62のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図62のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図63は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図63の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy3,3),(Gb2,Gy1,1),(Gb2,Gy2,1),(Gb3,Gy2,3),(Gb3,Gy1,2),(Gb3,Gy3,1)が規定されている。
 すなわち、図63の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,3)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの3ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb3,Gy1,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy3,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの1ビットに割り当てること
 が規定されている。
 図64は、図63の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図64のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図63の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図63の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図64のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy11に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy8に、
 符号ビットb6を、シンボルビットy2に、
 符号ビットb7を、シンボルビットy9に、
 符号ビットb8を、シンボルビットy3に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy6に、
 それぞれ割り当てる入れ替えを行う。
 図64のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図63の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図64のBによれば、入れ替え部32は、図63の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy10に、
 符号ビットb5を、シンボルビットy8に、
 符号ビットb6を、シンボルビットy9に、
 符号ビットb7を、シンボルビットy2に、
 符号ビットb8を、シンボルビットy3に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy6に、
 それぞれ割り当てる入れ替えを行う。
 図65は、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図65のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図65のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb6が、符号ビットグループGb3には、符号ビットb7ないしb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図65のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図65のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図66は、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図66の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy3,3),(Gb2,Gy1,1),(Gb2,Gy2,2),(Gb3,Gy2,2),(Gb3,Gy1,2),(Gb3,Gy3,1)が規定されている。
 すなわち、図66の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy2,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy1,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy3,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの1ビットに割り当てること
 が規定されている。
 図67は、図66の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図67のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図66の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図66の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図67のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy11に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy8に、
 符号ビットb6を、シンボルビットy2に、
 符号ビットb7を、シンボルビットy9に、
 符号ビットb8を、シンボルビットy3に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy6に、
 それぞれ割り当てる入れ替えを行う。
 図67のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図66の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図67のBによれば、入れ替え部32は、図66の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy10に、
 符号ビットb5を、シンボルビットy2に、
 符号ビットb6を、シンボルビットy8に、
 符号ビットb7を、シンボルビットy3に、
 符号ビットb8を、シンボルビットy9に、
 符号ビットb9を、シンボルビットy7に、
 符号ビットb10を、シンボルビットy5に、
 符号ビットb11を、シンボルビットy6に、
 それぞれ割り当てる入れ替えを行う。
 図68は、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図68のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図68のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb7が、符号ビットグループGb3には、符号ビットb8ないしb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図68のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図68のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図69は、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図69の割り当てルールでは、グループセット情報(Gb1,Gy2,1),(Gb2,Gy2,1),(Gb2,Gy3,3),(Gb2,Gy1,3),(Gb3,Gy3,1),(Gb3,Gy2,2),(Gb3,Gy1,1)が規定されている。
 すなわち、図69の割り当てルールでは、
 グループセット情報(Gb1,Gy2,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy1,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb3,Gy3,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること
 が規定されている。
 図70は、図69の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図70のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図69の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図69の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図70のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy8に、
 符号ビットb2を、シンボルビットy5に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy0に、
 符号ビットb5を、シンボルビットy6に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy10に、
 符号ビットb8を、シンボルビットy4に、
 符号ビットb9を、シンボルビットy9に、
 符号ビットb10を、シンボルビットy3に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図70のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図69の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。 
 図70のBによれば、入れ替え部32は、図69の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy8に、
 符号ビットb2を、シンボルビットy11に、
 符号ビットb3を、シンボルビットy5に、
 符号ビットb4を、シンボルビットy0に、
 符号ビットb5を、シンボルビットy6に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy10に、
 符号ビットb8を、シンボルビットy4に、
 符号ビットb9を、シンボルビットy3に、
 符号ビットb10を、シンボルビットy9に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図71は、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図71のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図71のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb8が、符号ビットグループGb3には、符号ビットb9ないしb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図71のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図71のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図72は、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図72の割り当てルールでは、グループセット情報(Gb1,Gy2,1),(Gb2,Gy2,1),(Gb2,Gy3,4),(Gb2,Gy1,3),(Gb3,Gy2,2),(Gb3,Gy1,1)が規定されている。
 すなわち、図72の割り当てルールでは、
 グループセット情報(Gb1,Gy2,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy3,4)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの4ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの4ビットに割り当てること、
 グループセット情報(Gb2,Gy1,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb3,Gy2,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること
 が規定されている。
 図73は、図72の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図73のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図72の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図72の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図73のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy8に、
 符号ビットb2を、シンボルビットy5に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy0に、
 符号ビットb5を、シンボルビットy6に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy10に、
 符号ビットb8を、シンボルビットy4に、
 符号ビットb9を、シンボルビットy9に、
 符号ビットb10を、シンボルビットy3に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図73のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図72の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図73のBによれば、入れ替え部32は、図72の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy8に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy0に、
 符号ビットb6を、シンボルビットy6に、
 符号ビットb7を、シンボルビットy11に、
 符号ビットb8を、シンボルビットy5に、
 符号ビットb9を、シンボルビットy3に、
 符号ビットb10を、シンボルビットy9に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図74は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図74のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図74のAでは、符号ビットグループGb1には、符号ビットb0及びb1が、符号ビットグループGb2には、符号ビットb2ないしb9が、符号ビットグループGb3には、符号ビットb10及びb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図74のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図74のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図75は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図75の割り当てルールでは、グループセット情報(Gb1,Gy2,2),(Gb2,Gy3,4),(Gb2,Gy1,3),(Gb2,Gy2,1),(Gb3,Gy2,1),(Gb3,Gy1,1)が規定されている。
 すなわち、図75の割り当てルールでは、
 グループセット情報(Gb1,Gy2,2)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb2,Gy3,4)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの4ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの4ビットに割り当てること、
 グループセット情報(Gb2,Gy1,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること
 が規定されている。
 図76は、図75の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図76のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図75の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図75の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図76のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy8に、
 符号ビットb2を、シンボルビットy5に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy0に、
 符号ビットb5を、シンボルビットy6に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy10に、
 符号ビットb8を、シンボルビットy4に、
 符号ビットb9を、シンボルビットy9に、
 符号ビットb10を、シンボルビットy3に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図76のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図75の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図76のBによれば、入れ替え部32は、図75の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy8に、
 符号ビットb1を、シンボルビットy2に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy10に、
 符号ビットb4を、シンボルビットy6に、
 符号ビットb5を、シンボルビットy0に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy11に、
 符号ビットb8を、シンボルビットy5に、
 符号ビットb9を、シンボルビットy9に、
 符号ビットb10を、シンボルビットy3に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図77は、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される6×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図77のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図77のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb10が、符号ビットグループGb3には、符号ビットb11が、それぞれ属する。
 変調方式が64QAMで、倍数bが2である場合、6×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図77のBに示すように、3個のシンボルビットグループGy1,Gy2,Gy3にグループ分けすることができる。
 図77のBでは、図53のBと同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y6,y7が、シンボルビットグループGy2には、シンボルビットy2,y3,y8,y9が、シンボルビットグループGy3には、シンボルビットy4,y5,y10,y11が、それぞれ属する。
 図78は、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、割り当てルールを示している。
 図78の割り当てルールでは、グループセット情報(Gb1,Gy2,1),(Gb2,Gy2,3),(Gb2,Gy3,4)(Gb2,Gy1,3),(Gb3,Gy1,1)が規定されている。
 すなわち、図78の割り当てルールでは、
 グループセット情報(Gb1,Gy2,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy3,4)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの4ビットを、エラー確率が3番目に良いシンボルビットグループGy3のシンボルビットの4ビットに割り当てること、
 グループセット情報(Gb2,Gy1,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること
 が規定されている。
 図79は、図78の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図79のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図78の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(6×2))×(6×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、6×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図78の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11を、例えば、図79のAに示すように、2(=b)個のシンボルの6×2(=mb)ビットのシンボルビットy0ないしy11に割り当てるように、6×2(=mb)ビットの符号ビットb0ないしb11を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy8に、
 符号ビットb2を、シンボルビットy5に、
 符号ビットb3を、シンボルビットy11に、
 符号ビットb4を、シンボルビットy0に、
 符号ビットb5を、シンボルビットy6に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy10に、
 符号ビットb8を、シンボルビットy4に、
 符号ビットb9を、シンボルビットy9に、
 符号ビットb10を、シンボルビットy3に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図79のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が64QAMで、倍数bが2である場合の、図78の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図79のBによれば、入れ替え部32は、図78の割り当てルールに従い、メモリ31から読み出される6×2(=mb)ビットの符号ビットb0ないしb11について、
 符号ビットb0を、シンボルビットy2に、
 符号ビットb1を、シンボルビットy3に、
 符号ビットb2を、シンボルビットy10に、
 符号ビットb3を、シンボルビットy4に、
 符号ビットb4を、シンボルビットy6に、
 符号ビットb5を、シンボルビットy1に、
 符号ビットb6を、シンボルビットy0に、
 符号ビットb7を、シンボルビットy11に、
 符号ビットb8を、シンボルビットy5に、
 符号ビットb9を、シンボルビットy8に、
 符号ビットb10を、シンボルビットy9に、
 符号ビットb11を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図80は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図80のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図80のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1が、符号ビットグループGb3には、符号ビットb2ないしb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図80のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図80のBでは、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図81は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図81の割り当てルールでは、グループセット情報(Gb1,Gy2,1),(Gb2,Gy2,1),(Gb3,Gy2,2),(Gb3,Gy1,4)が規定されている。
 すなわち、図81の割り当てルールでは、
 グループセット情報(Gb1,Gy2,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,4)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの4ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの4ビットに割り当てること
 が規定されている。
 図82は、図81の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図82のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図81の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図81の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図82のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy6に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy3に、
 符号ビットb4を、シンボルビットy2に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図82のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図81の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図82のBによれば、入れ替え部32は、図81の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy6に、
 符号ビットb2を、シンボルビットy1に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy3に、
 符号ビットb5を、シンボルビットy4に、
 符号ビットb6を、シンボルビットy0に、
 符号ビットb7を、シンボルビットy5に、
 それぞれ割り当てる入れ替えを行う。
 図83は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図83のAに示すように、4個の符号ビットグループGb1,Gb2,Gb3,Gb4にグループ分けすることができる。
 図83のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1が、符号ビットグループGb3には、符号ビットb2が、符号ビットグループGb4には、符号ビットb3ないしb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図83のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図83のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図84は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図84の割り当てルールでは、グループセット情報(Gb1,Gy2,1),(Gb2,Gy2,1),(Gb3,Gy1,1),(Gb4,Gy2,2),(Gb4,Gy1,3)が規定されている。
 すなわち、図84の割り当てルールでは、
 グループセット情報(Gb1,Gy2,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb4,Gy2,2)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb4,Gy1,3)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること
 が規定されている。
 図85は、図84の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図85のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図84の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図84の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図85のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy6に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy3に、
 符号ビットb4を、シンボルビットy2に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図85のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図84の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図85のBによれば、入れ替え部32は、図84の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy6に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy3に、
 符号ビットb5を、シンボルビットy0に、
 符号ビットb6を、シンボルビットy5に、
 符号ビットb7を、シンボルビットy1に、
 それぞれ割り当てる入れ替えを行う。
 図86は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図86のAに示すように、4個の符号ビットグループGb1,Gb2,Gb3,Gb4にグループ分けすることができる。
 図86のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1及びb2が、符号ビットグループGb3には、符号ビットb3が、符号ビットグループGb4には、符号ビットb4ないしb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図86のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図86のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図87は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図87の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy1,1),(Gb2,Gy2,1),(Gb3,Gy2,1),(Gb4,Gy1,2),(Gb4,Gy2,2)が規定されている。
 すなわち、図87の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb4,Gy1,2)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb4,Gy2,2)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること
 が規定されている。
 図88は、図87の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図88のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図87の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図87の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図88のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図88のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図87の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図88のBによれば、入れ替え部32は、図87の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy5に、
 符号ビットb5を、シンボルビットy1に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図89は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図89のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図89のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb3が、符号ビットグループGb3には、符号ビットb4ないしb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図89のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図89のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図90は、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図90の割り当てルールでは、グループセット情報(Gb1,Gy2,1),(Gb2,Gy2,2),(Gb2,Gy1,1),(Gb3,Gy2,1),(Gb3,Gy1,3)が規定されている。
 すなわち、図90の割り当てルールでは、
 グループセット情報(Gb1,Gy2,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy1,3)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること
 が規定されている。
 図91は、図90の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図91のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図90の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図90の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図91のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy6に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy3に、 符号ビットb4を、シンボルビットy2に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy1に、
 符号ビットb7を、シンボルビットy0に、
 それぞれ割り当てる入れ替えを行う。
 図91のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が1/2の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図90の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図91のBによれば、入れ替え部32は、図90の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy7に、
 符号ビットb1を、シンボルビットy3に、
 符号ビットb2を、シンボルビットy4に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy2に、
 符号ビットb5を、シンボルビットy0に、
 符号ビットb6を、シンボルビットy5に、
 符号ビットb7を、シンボルビットy1に、
 それぞれ割り当てる入れ替えを行う。
 図92は、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図92のAに示すように、4個の符号ビットグループGb1,Gb2,Gb3,Gb4にグループ分けすることができる。
 図92のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb3が、符号ビットグループGb3には、符号ビットb4が、符号ビットグループGb4には、符号ビットb5ないしb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図92のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図92のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図93は、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図93の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy1,1),(Gb2,Gy2,2),(Gb3,Gy1,1),(Gb4,Gy1,1),(Gb4,Gy2,2)が規定されている。
 すなわち、図93の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb4,Gy1,1)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 及び、グループセット情報(Gb4,Gy2,2)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること
 が規定されている。
 図94は、図93の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図94のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図93の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図93の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図94のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図94のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が7/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図93の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図94のBによれば、入れ替え部32は、図93の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy6に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy7に、
 符号ビットb7を、シンボルビットy3に、
 それぞれ割り当てる入れ替えを行う。
 図95は、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図95のAに示すように、4個の符号ビットグループGb1,Gb2,Gb3,Gb4にグループ分けすることができる。
 図95のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb4が、符号ビットグループGb3には、符号ビットb5が、符号ビットグループGb4には、符号ビットb6及びb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図95のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図95のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図96は、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図96の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy1,2),(Gb2,Gy2,2),(Gb3,Gy1,1),(Gb4,Gy2,2)が規定されている。
 すなわち、図96の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy1,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb2,Gy2,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy1,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 及び、グループセット情報(Gb4,Gy2,2)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること
 が規定されている。
 図97は、図96の割り当てルールに従った符号ビットの入れ替えの例を示している。 
 すなわち、図97のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図96の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図96の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図97のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図97のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が2/3の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図96の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図97のBによれば、入れ替え部32は、図96の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy1に、
 符号ビットb2を、シンボルビットy6に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy7に、
 符号ビットb7を、シンボルビットy3に、
 それぞれ割り当てる入れ替えを行う。
 図98は、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図98のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図98のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb5が、符号ビットグループGb3には、符号ビットb6及びb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図98のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図98のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図99は、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図99の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy1,3),(Gb2,Gy2,2),(Gb3,Gy2,2)が規定されている。
 すなわち、図99の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy1,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy2,2)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy2,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること
 が規定されている。
 図100は、図99の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図100のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図99の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図99の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図100のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図100のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が3/4の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図99の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図100のBによれば、入れ替え部32は、図99の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy5に、
 符号ビットb2を、シンボルビットy6に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy1に、
 符号ビットb6を、シンボルビットy7に、
 符号ビットb7を、シンボルビットy3に、
 それぞれ割り当てる入れ替えを行う。
 図101は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図101のAに示すように、5個の符号ビットグループGb1,Gb2,Gb3,Gb4,Gb5にグループ分けすることができる。
 図101のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1が、符号ビットグループGb3には、符号ビットb2ないしb5が、符号ビットグループGb4には、符号ビットb6が、符号ビットグループGb5には、符号ビットb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図101のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図101のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図102は、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図102の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy1,1),(Gb3,Gy2,2),(Gb3,Gy1,2),(Gb4,Gy2,1),(Gb5,Gy2,1)が規定されている。
 すなわち、図102の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy1,1)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb3,Gy2,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb3,Gy1,2)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの2ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの2ビットに割り当てること、
 グループセット情報(Gb4,Gy2,1)により、エラー確率が4番目に良い符号ビットグループGb4の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること、
 及び、グループセット情報(Gb5,Gy2,1)により、エラー確率が5番目に良い符号ビットグループGb5の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること
 が規定されている。
 図103は、図102の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図103のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図102の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図102の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図103のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
図103のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が5/6の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図102の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図103のBによれば、入れ替え部32は、図102の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy6に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy5に、
 符号ビットb5を、シンボルビットy1に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図104は、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、符号ビットグループとシンボルビットグループとを示している。
 この場合、メモリ31から読み出される4×2(=mb)ビットの符号ビットは、エラー確率の違いに応じて、図104のAに示すように、3個の符号ビットグループGb1,Gb2,Gb3にグループ分けすることができる。
 図104のAでは、符号ビットグループGb1には、符号ビットb0が、符号ビットグループGb2には、符号ビットb1ないしb6が、符号ビットグループGb3には、符号ビットb7が、それぞれ属する。
 変調方式が16QAMで、倍数bが2である場合、4×2(=mb)ビットのシンボルビットは、エラー確率の違いに応じて、図104のBに示すように、2個のシンボルビットグループGy1,Gy2にグループ分けすることができる。
 図104のBでは、図80のBの場合と同様に、シンボルビットグループGy1には、シンボルビットy0,y1,y4,y5が、シンボルビットグループGy2には、シンボルビットy2,y3,y6,y7が、それぞれ属する。
 図105は、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、割り当てルールを示している。
 図105の割り当てルールでは、グループセット情報(Gb1,Gy1,1),(Gb2,Gy2,3),(Gb2,Gy1,3),(Gb3,Gy2,1)が規定されている。
 すなわち、図105の割り当てルールでは、
 グループセット情報(Gb1,Gy1,1)により、エラー確率が1番目に良い符号ビットグループGb1の符号ビットの1ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの1ビットに割り当てること、
 グループセット情報(Gb2,Gy2,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの3ビットに割り当てること、
 グループセット情報(Gb2,Gy1,3)により、エラー確率が2番目に良い符号ビットグループGb2の符号ビットの3ビットを、エラー確率が1番目に良いシンボルビットグループGy1のシンボルビットの3ビットに割り当てること、
 及び、グループセット情報(Gb3,Gy2,1)により、エラー確率が3番目に良い符号ビットグループGb3の符号ビットの1ビットを、エラー確率が2番目に良いシンボルビットグループGy2のシンボルビットの1ビットに割り当てること
 が規定されている。
 図106は、図105の割り当てルールに従った符号ビットの入れ替えの例を示している。
 すなわち、図106のAは、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図105の割り当てルールに従った符号ビットの入れ替えの第1の例を示している。
 LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合、デマルチプレクサ25では、カラム方向×ロウ方向が(4320/(4×2))×(4×2)ビットのメモリ31に書き込まれた符号ビットが、ロウ方向に、4×2(=mb)ビット単位で読み出され、入れ替え部32(図18、図19)に供給される。
 入れ替え部32は、図105の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7を、例えば、図106のAに示すように、2(=b)個のシンボルの4×2(=mb)ビットのシンボルビットy0ないしy7に割り当てるように、4×2(=mb)ビットの符号ビットb0ないしb7を入れ替える。
 すなわち、入れ替え部32は、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy4に、
 符号ビットb2を、シンボルビットy2に、
 符号ビットb3を、シンボルビットy6に、
 符号ビットb4を、シンボルビットy1に、
 符号ビットb5を、シンボルビットy5に、
 符号ビットb6を、シンボルビットy3に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図106のBは、LDPC符号が、符号長Nが4320ビットで、符号化率が11/12の携帯用LDPC符号であり、さらに、変調方式が16QAMで、倍数bが2である場合の、図105の割り当てルールに従った符号ビットの入れ替えの第2の例を示している。
 図106のBによれば、入れ替え部32は、図105の割り当てルールに従い、メモリ31から読み出される4×2(=mb)ビットの符号ビットb0ないしb7について、
 符号ビットb0を、シンボルビットy0に、
 符号ビットb1を、シンボルビットy5に、
 符号ビットb2を、シンボルビットy3に、
 符号ビットb3を、シンボルビットy2に、
 符号ビットb4を、シンボルビットy4に、
 符号ビットb5を、シンボルビットy1に、
 符号ビットb6を、シンボルビットy6に、
 符号ビットb7を、シンボルビットy7に、
 それぞれ割り当てる入れ替えを行う。
 図107、図108、図109、図110、図111、図112、図113、図114、図115、図116、図117、図118、図119、図120、図121、図122、図123、及び、図124は、新入れ替え方式の入れ替え処理を行った場合と、入れ替え処理を行わない場合の、BER(Bit Error Rate)のシミュレーションの結果を示している。
 すなわち、図107ないし図115は、符号長Nが4320で、符号化率が1/4,1/3,5/12,1/2,7/12,2/3,3/4,5/6,11/12それぞれの携帯用LDPC符号(図35ないし図43)を対象とし、変調方式として、64QAMを採用した場合のBERを示している。
 図116ないし図124は、符号長Nが4320で、符号化率が1/4,1/3,5/12,1/2,7/12,2/3,3/4,5/6,11/12それぞれの携帯用LDPC符号を対象とし、変調方式として、16QAMを採用した場合のBERを示している。
 ここで、図107ないし図124において、倍数bは、2である。
 また、図107ないし図123において、横軸は、Es/N0(1シンボルあたりの信号電力対雑音電力比)を表し、縦軸は、BERを表す。また、丸(○)印が、新入れ替え方式の入れ替え処理を行った場合のBERを表し、アスタリスクが、入れ替え処理を行わない場合のBERを表す。
 図107ないし図124から、新入れ替え方式の入れ替え処理によれば、入れ替え処理を行わない場合に比較して、全体的に、あるいは、ある程度以上のEs/N0で、BERが向上しており、したがって、エラーに対する耐性が向上していることが分かる。
 ここで、入れ替え部32による入れ替え処理でのLDPC符号の符号ビットの入れ替え方、すなわち、LDPC符号の符号ビットと、シンボルを表すシンボルビットとの割り当てのパターン(以下、ビット割り当てパターンともいう)としては、符号化率が異なるLDPC符号それぞれについて、そのLDPC符号に専用のビット割り当てパターンを採用することができる。
 しかしながら、符号化率が異なるLDPC符号それぞれについて、そのLDPC符号に専用のビット割り当てパターンを採用すると、多数のビット割り当てパターンを送信装置11に実装する必要があり、さらに、符号化率が異なる種類のLDPC符号ごとに、ビット割り当てパターンの変更(切り替え)が必要になる。
 一方、図53ないし図106で説明した入れ替え処理によれば、送信装置11に実装するビット割り当てパターンを少なくすることができる。
 すなわち、符号長Nが4320ビットで、変調方式が64QAMである場合には、
 符号化率が1/4のLDPC符号それぞれについては、図55のAに示した、符号ビットb0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11を、それぞれ、シンボルビットy11,y10,y4,y5,y2,y3,y8,y9,y6,y7,y1,y0に割り当てるビット割り当てパターンを、
 符号化率が1/3,5/12,1/2、及び、7/12のLDPC符号それぞれについては、図58、図61、図64、及び、図67のAに示した、符号ビットb0ないしb11を、それぞれ、シンボルビットy0,y11,y1,y10,y4,y8,y2,y9,y3,y7,y5,y6に割り当てるビット割り当てパターンを、
 符号化率が2/3,3/4,5/6、及び、11/12のLDPC符号それぞれについては、図70、図73、図76、及び、図79のAに示した、符号ビットb0ないしb11を、それぞれ、シンボルビットy2,y8,y5,y11,y0,y6,y1,y10,y4,y9,y3,y7に割り当てるビット割り当てパターンを、
 それぞれ採用することで、送信装置11には、3パターンのビット割り当てパターンを実装するだけで済む。
 また、符号長Nが4320ビットで、変調方式が16QAMである場合には、
 符号化率が1/4,1/3、及び、1/2のLDPC符号それぞれについては、図82、図85、及び、図91のAに示した、符号ビットb0ないしb7を、それぞれ、シンボルビットy7,y6,y4,y3,y2,y5,y1,y0に割り当てるビット割り当てパターンを、
 符号化率が5/12,7/12,2/3,3/4,5/6、及び、11/12のLDPC符号については、図88、図94、図97、図100、図103、及び、図106のAに示した、符号ビットb0ないしb7を、それぞれ、シンボルビットy0,y4,y2,y6,y1,y5,y3,y7に割り当てるビット割り当てパターンを、
 それぞれ採用することで、送信装置11には、2パターンのビット割り当てパターンを実装するだけで済む。
 なお、本実施の形態では、説明の便宜上、デマルチプレクサ25において、入れ替え部32が、メモリ31から読み出された符号ビットを対象として、入れ替え処理を行うようにしたが、入れ替え処理は、メモリ31に対する符号ビットの書き込みや読み出しを制御することによって行うことができる。
 すなわち、入れ替え処理は、例えば、メモリ31からの符号ビットの読み出しを、入れ替え後の符号ビットの順番で行うように、符号ビットを読み出すアドレス(読み出しアドレス)を制御することにより行うことができる。
 [符号長Nが4320ビットのLDPC符号(第2の4k符号)]
 ところで、図35ないし図43の検査行列初期値テーブルから求められる検査行列を用いて得られる符号長が4kビットのLDPC符号(以下、第1の4k符号ともいう)については、DVB-T.2との親和性を、なるべく維持する観点から、DVB-T.2に規定されているLDPC符号と同様に、巡回構造の単位の列数Pとして、DVB-T.2に規定されている360が採用されている。
 しかしながら、DVB-T.2との親和性を、多少犠牲にしても、BERを向上させることが要請されることがある。
 そこで、図125ないし図128は、第1の4k符号とは異なる、符号長が4kビットの携帯用LDPC符号である第2の4k符号の検査行列初期値テーブルの例を示す図である。
 すなわち、図125は、符号長Nが4kビットの、符号化率rが1/2の検査行列Hに対する検査行列初期値テーブルを示している。
 図126は、符号長Nが4kビットの、符号化率rが7/12の検査行列Hに対する検査行列初期値テーブルを示している。
 図127は、符号長Nが4kビットの、符号化率rが2/3の検査行列Hに対する検査行列初期値テーブルを示している。
 図128は、符号長Nが4kビットの、符号化率rが3/4の検査行列Hに対する検査行列初期値テーブルを示している。
 なお、図125ないし図128の検査行列初期値テーブルから求められる検査行列のパリティ行列は、階段構造になっている(図11)。
 さらに、図125ないし図128の検査行列初期値テーブルから求められる検査行列を用いて得られる符号長が4kビットのLDPC符号である第2の4k符号については、DVB-T.2に規定されているLDPC符号と同様に、検査行列Hの情報行列は、巡回構造になっている。
 但し、第2の4k符号については、巡回構造の単位の列数Pは、360ではなく、その360の約数の1つである72になっている。
 LDPCエンコーダ115(図8、図31)では、図125ないし図128に示した検査行列初期値テーブルから求められる検査行列を用いて、符号長Nが4kビットの、符号化率rが1/2,7/12,2/3、及び、3/4の4種類のうちのいずれかの第2の4k符号へのLDPC符号化を行うことができる。
 すなわち、LDPCエンコーダ115は、巡回構造の単位の列数Pを、360ではなく、72として、図125ないし図128に示した検査行列初期値テーブルから、図34で説明した場合と同様にして、検査行列を求め、その検査行列を用いて、第2の4k符号へのLDPC符号化を行う。
 図125ないし図128の第2の4k符号(の検査行列初期値テーブル)は、図35ないし図43の第1の4k符号を求めるシミュレーションと同様のシミュレーションを行うことによって求めた。
 すなわち、第2の4k符号を求めるシミュレーションでは、マルチエッジタイプのデンシティエボリューションによって、BERが落ち始める(小さくなっていく)Eb/N0である性能閾値が、所定値以下になるアンサンブルを見つけ、そのアンサンブルに属するLDPC符号の中から、16QAMや64QAM等の、携帯端末向けのディジタル放送で用いられる複数の変調方式におけるBERを小さくするLDPC符号を、性能の良いLDPC符号として選択した。
 なお、第2の4k符号を求めるシミュレーションでは、第1の4k符号を求めるシミュレーションと同様に、エラーに対する耐性を向上させるために、例えば、QPSKや、16QAM,64QAM等の、信号点の数が比較的少ない変調方式を採用した。
 図129は、図125ないし図128の、符号化率rが1/2,7/12,2/3、及び、3/4の4種類それぞれの第2の4k符号の検査行列初期値テーブルから求められる検査行列の最小サイクル長と性能閾値とを示す図である。
 図125ないし図128の検査行列初期値テーブルから求められる検査行列の最小サイクル長は、すべて、6サイクルになっており、サイクル4は、存在しない。
 また、符号化率rが小さいほど、LDPC符号の冗長性が大になるため、性能閾値は、符号化率rが小さくなるにつれて、向上している(小さくなっている)。
 図130は、図125ないし図128の(検査行列初期値テーブルから求められる第2の4k符号の)検査行列を説明する図である。
 第2の4k符号の検査行列においては、図47及び図48で説明した第1の4k符号の検査行列の場合と同様に、1列目からのKX列の列重みがXに、その後のKY列の列重みがYに、その後のM-1列の列重みが2に、最後の1列の列重みが1に、それぞれなっている。
 ここで、KX+KY+M-1+1は、符号長N=4320ビットに等しい。
 そして、符号化率(rate)rが1/2,7/12,2/3、及び、3/4それぞれの第2の4k符号の検査行列の列数KX,KY、及びM、並びに、列重みX及びYは、図130に示すようになっている。
 第2の4k符号の検査行列については、図12及び図13で説明したDVB-T.2に規定されている検査行列や、第1の4k符号の検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、第2の4k符号の先頭の符号ビットほど、エラーに強い(エラーに対する耐性がある)傾向がある。
 図131は、第2の4k符号について行ったBERのシミュレーションの結果を示す図である。
 シミュレーションでは、AWGNの通信路(チャネル)を想定し、変調方式として、BPSKを採用するとともに、繰り返し復号回数Cとして、50回を採用した。
 図131において、横軸は、Es/N0(1シンボルあたりの信号電力対雑音電力比)を表し、縦軸は、BERを表す。
 本件発明者によれば、1/2,7/12,2/3、及び、3/4のいずれの符号化率rについても、第1の4k符号より、第2の4k符号の方が、BERが向上することが確認されており、したがって、第2の4k符号によれば、エラーに対する耐性を向上させることができる。
 [受信装置12の構成例]
 図132は、図7の受信装置12の構成例を示すブロック図である。
 OFDM処理部(OFDM operation)151は、送信装置11(図7)からのOFDM信号を受信し、そのOFDM信号の信号処理を行う。OFDM処理部151が信号処理を行うことにより得られるデータ(シンボル)は、フレーム管理部(Frame Management)152に供給される。
 フレーム管理部152は、OFDM処理部151から供給されるシンボルで構成されるフレームの処理(フレーム解釈)を行い、その結果得られる対象データのシンボルと、制御データのシンボルとを、周波数デインターリーバ(Frequency Deinterleaver)161と153とに、それぞれ供給する。
 周波数デインターリーバ153は、フレーム管理部152からのシンボルについて、シンボル単位での周波数デインターリーブを行い、QAMデコーダ(QAM decoder)154に供給する。
 QAMデコーダ154は、周波数デインターリーバ153からのシンボル(信号点に配置されたシンボル)をデマッピング(信号点配置復号)して直交復調し、その結果得られるデータ(LDPC符号)を、LDPCデコーダ(LDPC decoder)155に供給する。
 LDPCデコーダ155は、QAMデコーダ154からのLDPC符号のLDPC復号を行い、その結果得られるLDPC対象データ(ここでは、BCH符号)を、BCHデコーダ(BCH decoder)156に供給する。
 BCHデコーダ156は、LDPCデコーダ155からのLDPC対象データのBCH復号を行い、その結果得られる制御データ(シグナリング)を出力する。
 一方、周波数デインターリーバ161は、フレーム管理部152からのシンボルについて、シンボル単位での周波数デインターリーブを行い、MISO/MIMOデコーダ(MISO/MIMO decoder)162に供給する。
 MISO/MIMOデコーダ162は、周波数デインターリーバ161からのデータ(シンボル)の時空間復号を行い、時間デインターリーバ(Time Deinterleaver)163に供給する。
 時間デインターリーバ163は、MISO/MIMOデコーダ162からのデータ(シンボル)について、シンボル単位での時間デインターリーブを行い、QAMデコーダ(QAM decoder)164に供給する。
 QAMデコーダ164は、時間デインターリーバ163からのシンボル(信号点に配置されたシンボル)をデマッピング(信号点配置復号)して直交復調し、その結果得られるデータ(シンボル)を、ビットデインターリーバ(Bit Deinterleaver)165に供給する。
 ビットデインターリーバ165は、QAMデコーダ164からのデータ(シンボル)のビットデインターリーブを行い、その結果得られるLDPC符号を、LDPCデコーダ166に供給する。
 LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を行い、その結果得られるLDPC対象データ(ここでは、BCH符号)を、BCHデコーダ167に供給する。
 BCHデコーダ167は、LDPCデコーダ155からのLDPC対象データのBCH復号を行い、その結果得られるデータを、BBデスクランブラ(BB DeScrambler)168に供給する。
 BBデスクランブラ168は、BCHデコーダ167からのデータに、エネルギ逆拡散処理を施し、その結果得られるデータを、ヌル削除部(Null Deletion)169に供給する。
 ヌル削除部169は、BBデスクランブラ168からのデータから、図8のパダー112で挿入されたNullを削除し、デマルチプレクサ(Demultiplexer)170に供給する。
 デマルチプレクサ170は、ヌル削除部169からのデータに多重化されている1以上のストリーム(対象データ)それぞれを分離し、アウトプットストリーム(Output stream)として出力する。
 図133は、図132のビットデインターリーバ165の構成例を示すブロック図である。
 ビットデインターリーバ165は、マルチプレクサ(MUX)54、及びカラムツイストデインターリーバ55から構成され、QAMデコーダ164(図132)からのシンボルのシンボルビットの(ビット)デインターリーブを行う。
 すなわち、マルチプレクサ54は、QAMデコーダ164からのシンボルのシンボルビットを対象として、図9のデマルチプレクサ25が行う入れ替え処理に対応する逆入れ替え処理(入れ替え処理の逆の処理)、すなわち、入れ替え処理によって入れ替えられたLDPC符号の符号ビット(シンボルビット)の位置を元の位置に戻す逆入れ替え処理を行い、その結果得られるLDPC符号を、カラムツイストデインターリーバ55に供給する。
 カラムツイストデインターリーバ55は、マルチプレクサ54からのLDPC符号を対象として、図9のカラムツイストインターリーバ24が行う並び替え処理としてのカラムツイストインターリーブに対応するカラムツイストデインターリーブ(カラムツイストインターリーブの逆の処理)、すなわち、並び替え処理としてのカラムツイストインターリーブによって並びが変更されたLDPC符号の符号ビットを、元の並びに戻す逆並び替え処理としての、例えば、カラムツイストデインターリーブを行う。
 具体的には、カラムツイストデインターリーバ55は、図24等に示したメモリ31と同様に構成される、デインターリーブ用のメモリに対して、LDPC符号の符号ビットを書き込み、さらに読み出すことで、カラムツイストデインターリーブを行う。
 但し、カラムツイストデインターリーバ55では、符号ビットの書き込みは、メモリ31からの符号ビットの読み出し時の読み出しアドレスを、書き込みアドレスとして用いて、デインターリーブ用のメモリのロウ方向に行われる。また、符号ビットの読み出しは、メモリ31への符号ビットの書き込み時の書き込みアドレスを、読み出しアドレスとして用いて、デインターリーブ用のメモリのカラム方向に行われる。
 カラムツイストデインターリーブの結果得られるLDPC符号は、カラムツイストデインターリーバ55からLDPCデコーダ166に供給される。
 ここで、QAMデコーダ164から、ビットデインターリーバ165に供給されるLDPC符号には、パリティインターリーブ、カラムツイストインターリーブ、及び入れ替え処理が、その順番で施されているが、ビットデインターリーバ165では、入れ替え処理に対応する逆入れ替え処理、及び、カラムツイストインターリーブに対応するカラムツイストデインターリーブしか行われず、したがって、パリティインターリーブに対応するパリティデインターリーブ(パリティインターリーブの逆の処理)、すなわち、パリティインターリーブによって並びが変更されたLDPC符号の符号ビットを、元の並びに戻すパリティデインターリーブは、行われない。
 したがって、ビットデインターリーバ165(のカラムツイストデインターリーバ55)から、LDPCデコーダ166には、逆入れ替え処理、及び、カラムツイストデインターリーブが行われ、かつ、パリティデインターリーブが行われていないLDPC符号が供給される。
 LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を、図8のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行い、その結果得られるデータを、LDPC対象データの復号結果として出力する。
 図134は、図133のQAMデコーダ164、ビットデインターリーバ165、及び、LDPCデコーダ166が行う処理を説明するフローチャートである。
 ステップS111において、QAMデコーダ164は、時間デインターリーバ163からのシンボル(信号点にマッピングされたシンボル)をデマッピングして直交復調し、ビットデインターリーバ165に供給して、処理は、ステップS112に進む。
 ステップS112では、ビットデインターリーバ165は、QAMデコーダ164からのシンボルのシンボルビットのデインターリーブ(ビットデインターリーブ)を行って、処理は、ステップS113に進む。
 すなわち、ステップS112では、ビットデインターリーバ165において、マルチプレクサ54が、QAMデコーダ164からのシンボルのシンボルビットを対象として、逆入れ替え処理を行い、その結果得られるLDPC符号の符号ビットを、カラムツイストデインターリーバ55に供給する。
 カラムツイストデインターリーバ55は、マルチプレクサ54からのLDPC符号を対象として、カラムツイストデインターリーブを行い、その結果得られるLDPC符号を、LDPCデコーダ166に供給する。
 ステップS113では、LDPCデコーダ166が、カラムツイストデインターリーバ55からのLDPC符号のLDPC復号を、図8のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行い、その結果得られるデータを、LDPC対象データの復号結果として、BCHデコーダ167に出力する。
 なお、図133でも、図9の場合と同様に、説明の便宜のため、逆入れ替え処理を行うマルチプレクサ54と、カラムツイストデインターリーブを行うカラムツイストデインターリーバ55とを、別個に構成するようにしたが、マルチプレクサ54とカラムツイストデインターリーバ55とは、一体的に構成することができる。
 また、図9のビットインターリーバ116において、カラムツイストインターリーブを行わない場合には、図133のビットデインターリーバ165において、カラムツイストデインターリーバ55は、設ける必要がない。
 次に、図132のLDPCデコーダ166で行われるLDPC復号について、さらに説明する。
 図132のLDPCデコーダ166では、上述したように、カラムツイストデインターリーバ55からの、逆入れ替え処理、及び、カラムツイストデインターリーブが行われ、かつ、パリティデインターリーブが行われていないLDPC符号のLDPC復号が、図8のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行われる。
 ここで、LDPC復号を、変換検査行列を用いて行うことで、回路規模を抑制しつつ、動作周波数を十分実現可能な範囲に抑えることが可能となるLDPC復号が先に提案されている(例えば、特許第4224777号を参照)。
 そこで、まず、図135ないし図138を参照して、先に提案されている、変換検査行列を用いたLDPC復号について説明する。
 図135は、符号長Nが90で、符号化率が2/3のLDPC符号の検査行列Hの例を示している。
 なお、図135では(後述する図136及び図137においても同様)、0を、ピリオド(.)で表現している。
 図135の検査行列Hでは、パリティ行列が階段構造になっている。
 図136は、図135の検査行列Hに、式(11)の行置換と、式(12)の列置換を施して得られる検査行列H'を示している。
 行置換:6s+t+1行目→5t+s+1行目
                        ・・・(11)
 列置換:6x+y+61列目→5y+x+61列目
                        ・・・(12)
 但し、式(11)及び(12)において、s,t,x,yは、それぞれ、0≦s<5,0≦t<6,0≦x<5,0≦t<6の範囲の整数である。
 式(11)の行置換によれば、6で割って余りが1になる1,7,13,19,25行目を、それぞれ、1,2,3,4,5行目に、6で割って余りが2になる2,8,14,20,26行目を、それぞれ、6,7,8,9,10行目に、という具合に置換が行われる。
 また、式(12)の列置換によれば、61列目以降(パリティ行列)に対して、6で割って余りが1になる61,67,73,79,85列目を、それぞれ、61,62,63,64,65列目に、6で割って余りが2になる62,68,74,80,86列目を、それぞれ、66,67,68,69,70列目に、という具合に置換が行われる。
 このようにして、図135の検査行列Hに対して、行と列の置換を行って得られた行列(matrix)が、図136の検査行列H'である。
 ここで、検査行列Hの行置換を行っても、LDPC符号の符号ビットの並びには影響しない。
 また、式(12)の列置換は、上述の、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブするパリティインターリーブの、情報長Kを60と、巡回構造の単位の列数Pを5と、パリティ長M(ここでは、30)の約数q(=M/P)を6と、それぞれしたときのパリティインターリーブに相当する。
 図136の検査行列(以下、適宜、変換検査行列という)H'に対して、図135の検査行列(以下、適宜、元の検査行列という)HのLDPC符号に、式(12)と同一の置換を行ったものを乗じると、0ベクトルが出力される。すなわち、元の検査行列HのLDPC符号(1符号語)としての行ベクトルcに、式(12)の列置換を施して得られる行ベクトルをc'と表すこととすると、検査行列の性質から、HcTは、0ベクトルとなるから、H'c'Tも、当然、0ベクトルとなる。
 以上から、図136の変換検査行列H'は、元の検査行列HのLDPC符号cに、式(12)の列置換を行って得られるLDPC符号c'の検査行列になっている。
 したがって、元の検査行列HのLDPC符号cに、式(12)の列置換を行い、その列置換後のLDPC符号c'を、図136の変換検査行列H'を用いて復号(LDPC復号)し、その復号結果に、式(12)の列置換の逆置換を施すことで、元の検査行列HのLDPC符号を、その検査行列Hを用いて復号する場合と同様の復号結果を得ることができる。
 図137は、5×5の行列の単位に間隔を空けた、図136の変換検査行列H'を示している。
 図137においては、変換検査行列H'は、5×5の単位行列、その単位行列の1のうち1個以上が0になった行列(以下、適宜、準単位行列という)、単位行列または準単位行列をサイクリックシフト(cyclic shift)した行列(以下、適宜、シフト行列という)、単位行列、準単位行列、またはシフト行列のうちの2以上の和(以下、適宜、和行列という)、5×5の0行列の組合わせで表されている。
 図137の変換検査行列H'は、5×5の単位行列、準単位行列、シフト行列、和行列、0行列で構成されているということができる。そこで、変換検査行列H'を構成する、これらの5×5の行列を、以下、適宜、構成行列という。
 P×Pの構成行列で表される検査行列のLDPC符号の復号には、チェックノード演算、及びバリアブルノード演算を、P個同時に行うアーキテクチャ(architecture)を用いることができる。
 図138は、そのような復号を行う復号装置の構成例を示すブロック図である。
 すなわち、図138は、図135の元の検査行列Hに対して、少なくとも、式(12)の列置換を行って得られる図137の変換検査行列H'を用いて、LDPC符号の復号を行う復号装置の構成例を示している。
 図138の復号装置は、6つのFIFO3001ないし3006からなる枝データ格納用メモリ300、FIFO3001ないし3006を選択するセレクタ301、チェックノード計算部302、2つのサイクリックシフト回路303及び308、18個のFIFO3041ないし30418からなる枝データ格納用メモリ304、FIFO3041ないし30418を選択するセレクタ305、受信データを格納する受信データ用メモリ306、バリアブルノード計算部307、復号語計算部309、受信データ並べ替え部310、復号データ並べ替え部311からなる。
 まず、枝データ格納用メモリ300と304へのデータの格納方法について説明する。
 枝データ格納用メモリ300は、図137の変換検査行列H'の行数30を構成行列の行数5で除算した数である6つのFIFO3001ないし3006から構成されている。FIFO300y(y=1,2,・・・,6)は、複数の段数の記憶領域からなり、各段の記憶領域については、構成行列の行数及び列数である5つの枝に対応するメッセージを同時に読み出すこと、及び、書き込むことができるようになっている。また、FIFO300yの記憶領域の段数は、図137の変換検査行列の行方向の1の数(ハミング重み)の最大数である9になっている。
 FIFO3001には、図137の変換検査行列H'の第1行目から第5行目までの1の位置に対応するデータ(バリアブルノードからのメッセージvi)が、各行共に横方向に詰めた形に(0を無視した形で)格納される。すなわち、第j行第i列を、(j,i)と表すこととすると、FIFO3001の第1段の記憶領域には、変換検査行列H'の(1,1)から(5,5)の5×5の単位行列の1の位置に対応するデータが格納される。第2段の記憶領域には、変換検査行列H'の(1,21)から(5,25)のシフト行列(5×5の単位行列を右方向に3つだけサイクリックシフトしたシフト行列)の1の位置に対応するデータが格納される。第3から第8段の記憶領域も同様に、変換検査行列H'と対応付けてデータが格納される。そして、第9段の記憶領域には、変換検査行列H'の(1,86)から(5,90)のシフト行列(5×5の単位行列のうちの1行目の1を0に置き換えて1つだけ左にサイクリックシフトしたシフト行列)の1の位置に対応するデータが格納される。
 FIFO3002には、図137の変換検査行列H'の第6行目から第10行目までの1の位置に対応するデータが格納される。すなわち、FIFO3002の第1段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列(5×5の単位行列を右に1つだけサイクリックシフトした第1のシフト行列と、右に2つだけサイクリックシフトした第2のシフト行列の和である和行列)を構成する第1のシフト行列の1の位置に対応するデータが格納される。また、第2段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列を構成する第2のシフト行列の1の位置に対応するデータが格納される。
 すなわち、重みが2以上の構成行列については、その構成行列を、重みが1であるP×Pの単位行列、単位行列の要素の1のうち1個以上が0になった準単位行列、又は単位行列もしくは準単位行列をサイクリックシフトしたシフト行列のうちの複数の和の形で表現したときの、その重みが1の単位行列、準単位行列、又はシフト行列の1の位置に対応するデータ(単位行列、準単位行列、又はシフト行列に属する枝に対応するメッセージ)は、同一アドレス(FIFO3001ないし3006のうちの同一のFIFO)に格納される。
 以下、第3から第9段の記憶領域についても、変換検査行列H'に対応付けてデータが格納される。
 FIFO3003ないし3006も同様に変換検査行列H'に対応付けてデータを格納する。
 枝データ格納用メモリ304は、変換検査行列H'の列数90を、構成行列の列数である5で割った18個のFIFO3041ないし30418から構成されている。FIFO304x(x=1,2,・・・,18)は、複数の段数の記憶領域からなり、各段の記憶領域については、変換構成行列H'の行数及び列数である5つの枝に対応するメッセージを同時に読み出すこと、及び、書き込むことができるようになっている。
 FIFO3041には、図137の変換検査行列H'の第1列目から第5列目までの1の位置に対応するデータ(チェックノードからのメッセージuj)が、各列共に縦方向に詰めた形に(0を無視した形で)格納される。すなわち、FIFO3041の第1段の記憶領域には、変換検査行列H'の(1,1)から(5,5)の5×5の単位行列の1の位置に対応するデータが格納される。第2段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列(5×5の単位行列を右に1つだけサイクリックシフトした第1のシフト行列と、右に2つだけサイクリックシフトした第2のシフト行列との和である和行列)を構成する第1のシフト行列の1の位置に対応するデータが格納される。また、第3段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列を構成する第2のシフト行列の1の位置に対応するデータが格納される。
 すなわち、重みが2以上の構成行列については、その構成行列を、重みが1であるP×Pの単位行列、単位行列の要素の1のうち1個以上が0になった準単位行列、又は単位行列もしくは準単位行列をサイクリックシフトしたシフト行列のうちの複数の和の形で表現したときの、その重みが1の単位行列、準単位行列、又はシフト行列の1の位置に対応するデータ(単位行列、準単位行列、又はシフト行列に属する枝に対応するメッセージ)は、同一アドレス(FIFO3041ないし30418のうちの同一のFIFO)に格納される。
 以下、第4及び第5段の記憶領域についても、変換検査行列H'に対応付けて、データが格納される。このFIFO3041の記憶領域の段数は、変換検査行列H'の第1列から第5列における行方向の1の数(ハミング重み)の最大数である5になっている。
 FIFO3042と3043も同様に変換検査行列H'に対応付けてデータを格納し、それぞれの長さ(段数)は、5である。FIFO3044ないし30412も同様に、変換検査行列H'に対応付けてデータを格納し、それぞれの長さは3である。FIFO30413ないし30418も同様に、変換検査行列H'に対応付けてデータを格納し、それぞれの長さは2である。
 次に、図138の復号装置の動作について説明する。
 枝データ格納用メモリ300は、6つのFIFO3001ないし3006からなり、前段のサイクリックシフト回路308から供給される5つのメッセージD311が、変換検査行列H'のどの行に属するかの情報(Matrixデータ)D312に従って、データを格納するFIFOを、FIFO3001ないし3006の中から選び、選んだFIFOに5つのメッセージD311をまとめて順番に格納していく。また、枝データ格納用メモリ300は、データを読み出す際には、FIFO3001から5つのメッセージD3001を順番に読み出し、次段のセレクタ301に供給する。枝データ格納用メモリ300は、FIFO3001からのメッセージの読み出しの終了後、FIFO3002ないし3006からも、順番に、メッセージを読み出し、セレクタ301に供給する。
 セレクタ301は、セレクト信号D301に従って、FIFO3001ないし3006のうちの、現在データが読み出されているFIFOからの5つのメッセージを選択し、メッセージD302として、チェックノード計算部302に供給する。
 チェックノード計算部302は、5つのチェックノード計算器3021ないし3025からなり、セレクタ301を通して供給されるメッセージD302(D3021ないしD3025)(式(7)のメッセージvi)を用いて、式(7)に従ってチェックノード演算を行い、そのチェックノード演算の結果得られる5つのメッセージD303(D3031ないしD3035)(式(7)のメッセージuj)をサイクリックシフト回路303に供給する。
 サイクリックシフト回路303は、チェックノード計算部302で求められた5つのメッセージD3031ないしD3035を、対応する枝が変換検査行列H'において元となる単位行列を幾つサイクリックシフトしたものであるかの情報(Matrixデータ)D305を元にサイクリックシフトし、その結果をメッセージD304として、枝データ格納用メモリ304に供給する。
 枝データ格納用メモリ304は、18個のFIFO3041ないし30418からなり、前段のサイクリックシフト回路303から供給される5つのメッセージD304が変換検査行列H'のどの行に属するかの情報D305に従って、データを格納するFIFOを、FIFO3041ないし30418の中から選び、選んだFIFOに5つのメッセージD304をまとめて順番に格納していく。また、枝データ格納用メモリ304は、データを読み出す際には、FIFO3041から5つのメッセージD3061を順番に読み出し、次段のセレクタ305に供給する。枝データ格納用メモリ304は、FIFO3041からのデータの読み出しの終了後、FIFO3042ないし30418からも、順番に、メッセージを読み出し、セレクタ305に供給する。
 セレクタ305は、セレクト信号D307に従って、FIFO3041ないし30418のうちの、現在データが読み出されているFIFOからの5つのメッセージを選択し、メッセージD308として、バリアブルノード計算部307と復号語計算部309に供給する。
 一方、受信データ並べ替え部310は、通信路を通して受信したLDPC符号D313を、式(12)の列置換を行うことにより並べ替え、受信データD314として、受信データ用メモリ306に供給する。受信データ用メモリ306は、受信データ並べ替え部310から供給される受信データD314から、受信LLR(対数尤度比)を計算して記憶し、その受信LLRを5個ずつまとめて受信値D309として、バリアブルノード計算部307と復号語計算部309に供給する。
 バリアブルノード計算部307は、5つのバリアブルノード計算器3071ないし3075からなり、セレクタ305を通して供給されるメッセージD308(D3081ないしD3085)(式(1)のメッセージuj)と、受信データ用メモリ306から供給される5つの受信値D309(式(1)の受信値u0i)を用いて、式(1)に従ってバリアブルノード演算を行い、その演算の結果得られるメッセージD310(D3101ないしD3105)(式(1)のメッセージvi)を、サイクリックシフト回路308に供給する。
 サイクリックシフト回路308は、バリアブルノード計算部307で計算されたメッセージD3101ないしD3105を、対応する枝が変換検査行列H'において元となる単位行列を幾つサイクリックシフトしたものであるかの情報を元にサイクリックシフトし、その結果をメッセージD311として、枝データ格納用メモリ300に供給する。
 以上の動作を1巡することで、LDPC符号の1回の復号を行うことができる。図138の復号装置は、所定の回数だけLDPC符号を復号した後、復号語計算部309及び復号データ並べ替え部311において、最終的な復号結果を求めて出力する。
 すなわち、復号語計算部309は、5つの復号語計算器3091ないし3095からなり、セレクタ305が出力する5つのメッセージD308(D3081ないしD3085)(式(5)のメッセージuj)と、受信データ用メモリ306から供給される5つの受信値D309(式(5)の受信値u0i)を用い、複数回の復号の最終段として、式(5)に基づいて、復号結果(復号語)を計算して、その結果得られる復号データD315を、復号データ並べ替え部311に供給する。
 復号データ並べ替え部311は、復号語計算部309から供給される復号データD315を対象に、式(12)の列置換の逆置換を行うことにより、その順序を並べ替え、最終的な復号結果D316として出力する。
 以上のように、検査行列(元の検査行列)に対して、行置換と列置換のうちの一方又は両方を施し、P×Pの単位行列、その要素の1のうち1個以上が0になった準単位行列、単位行列もしくは準単位行列をサイクリックシフトしたシフト行列、単位行列、準単位行列、もしくはシフト行列の複数の和である和行列、P×Pの0行列の組合せ、つまり、構成行列の組み合わせで表すことができる検査行列(変換検査行列)に変換することで、LDPC符号の復号を、チェックノード演算とバリアブルノード演算をP個同時に行うアーキテクチャ(architecture)を採用することが可能となり、これにより、ノード演算を、P個同時に行うことで動作周波数を実現可能な範囲に抑えて、多数の繰り返し復号を行うことができる。
 図132の受信装置12を構成するLDPCデコーダ166は、図138の復号装置と同様に、チェックノード演算とバリアブルノード演算をP個同時に行うことで、LDPC復号を行うようになっている。
 すなわち、いま、説明を簡単にするために、図8の送信装置11を構成するLDPCエンコーダ115が出力するLDPC符号の検査行列が、例えば、図135に示した、パリティ行列が階段構造になっている検査行列Hであるとすると、送信装置11のパリティインターリーバ23では、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブするパリティインターリーブが、情報長Kを60に、巡回構造の単位の列数Pを5に、パリティ長Mの約数q(=M/P)を6に、それぞれして行われる。
 このパリティインターリーブは、上述したように、式(12)の列置換に相当するから、LDPCデコーダ166では、式(12)の列置換を行う必要がない。
 このため、図132の受信装置12では、上述したように、カラムツイストデインターリーバ55から、LDPCデコーダ166に対して、パリティデインターリーブが行われていないLDPC符号、つまり、式(12)の列置換が行われた状態のLDPC符号が供給され、LDPCデコーダ166では、式(12)の列置換を行わないことを除けば、図138の復号装置と同様の処理が行われる。
 すなわち、図139は、図132のLDPCデコーダ166の構成例を示している。
 図139において、LDPCデコーダ166は、図138の受信データ並べ替え部310が設けられていないことを除けば、図138の復号装置と同様に構成されており、式(12)の列置換が行われないことを除いて、図138の復号装置と同様の処理を行うため、その説明は省略する。
 以上のように、LDPCデコーダ166は、受信データ並べ替え部310を設けずに構成することができるので、図138の復号装置よりも、規模を削減することができる。
 なお、図135ないし図139では、説明を簡単にするために、LDPC符号の符号長Nを90と、情報長Kを60と、巡回構造の単位の列数(構成行列の行数及び列数)Pを5と、パリティ長Mの約数q(=M/P)を6と、それぞれしたが、符号長N、情報長K、巡回構造の単位の列数P、及び約数q(=M/P)のそれぞれは、上述した値に限定されるものではない。
 すなわち、図8の送信装置11において、LDPCエンコーダ115が出力するのは、例えば、符号長Nを64800や16200,4320等と、情報長KをN-Pq(=N-M)と、巡回構造の単位の列数Pを360や72,60と、約数qをM/Pと、それぞれするLDPC符号であるが、図139のLDPCデコーダ166は、そのようなLDPC符号を対象として、チェックノード演算とバリアブルノード演算をP個同時に行うことで、LDPC復号を行う場合にも適用可能である。
 図140は、図133のビットデインターリーバ165を構成するマルチプレクサ54の処理を説明する図である。
 すなわち、図140のAは、マルチプレクサ54の機能的な構成例を示している。
 マルチプレクサ54は、逆入れ替え部1001、及びメモリ1002から構成される。
 マルチプレクサ54は、前段のQAMデコーダ164から供給されるシンボルのシンボルビットを対象として、送信装置11のデマルチプレクサ25が行う入れ替え処理に対応する逆入れ替え処理(入れ替え処理の逆の処理)、すなわち、入れ替え処理によって入れ替えられたLDPC符号の符号ビット(シンボルビット)の位置を元の位置に戻す逆入れ替え処理を行い、その結果得られるLDPC符号を、後段のカラムツイストデインターリーバ55に供給する。
 すなわち、マルチプレクサ54において、逆入れ替え部1001には、(連続する)b個のシンボルの単位で、そのb個のシンボルのmbビットのシンボルビットy0,y1,・・・,ymb-1が供給される。
 逆入れ替え部1001は、mbビットのシンボルビットy0ないしymb-1を、元のmbビットの符号ビットb0,b1,・・・,bmb-1の並び(送信装置11側のデマルチプレクサ25を構成する入れ替え部32での入れ替えが行われる前の符号ビットb0ないしbmb-1の並び)に戻す逆入れ替えを行い、その結果得られるmbビットの符号ビットb0ないしbmb-1を出力する。
 メモリ1002は、送信装置11側のデマルチプレクサ25を構成するメモリ31と同様に、ロウ(row)(横)方向にmbビットを記憶するとともに、カラム(column)(縦)方向にN/(mb)ビットを記憶する記憶容量を有する。すなわち、メモリ1002は、N/(mb)ビットを記憶するmb個のカラムから構成される。
 但し、メモリ1002では、送信装置11のデマルチプレクサ25のメモリ31からの符号ビットの読み出しが行われる方向に、逆入れ替え部1001が出力するLDPC符号の符号ビットの書き込みが行われ、メモリ31への符号ビットの書き込みが行われる方向に、メモリ1002に書き込まれた符号ビットの読み出しが行われる。
 すなわち、受信装置12のマルチプレクサ54では、図140のAに示すように、逆入れ替え部1001が出力するLDPC符号の符号ビットを、mbビット単位で、ロウ方向に書き込むことが、メモリ1002の1行目から下の行に向かって順次行われる。
 そして、1符号長分の符号ビットの書き込みが終了すると、マルチプレクサ54では、メモリ1002から、符号ビットを、カラム方向に読み出して、後段のカラムツイストデインターリーバ55に供給する。
 ここで、図140のBは、メモリ1002からの符号ビットの読み出しを示す図である。
 マルチプレクサ54では、LDPC符号の符号ビットを、メモリ1002を構成するカラムの上から下方向(カラム方向)に読み出すことが、左から右方向のカラムに向かって行われる。
 図141は、図133のビットデインターリーバ165を構成するカラムツイストデインターリーバ55の処理を説明する図である。
 すなわち、図141は、マルチプレクサ54のメモリ1002の構成例を示している。
 メモリ1002は、カラム(縦)方向にmbビットを記憶するとともに、ロウ(横)方向にN/(mb)ビットを記憶する記憶容量を有し、mb個のカラムから構成される。
 カラムツイストデインターリーバ55は、メモリ1002に対して、LDPC符号の符号ビットを、ロウ方向に書き込み、カラム方向に読み出すときの読み出し始めの位置を制御することで、カラムツイストデインターリーブを行う。
 すなわち、カラムツイストデインターリーバ55では、複数のカラムそれぞれについて、符号ビットの読み出しを開始する読み出し始めの位置を、適宜変更することで、カラムツイストインターリーブで並び替えられた符号ビットの並びを、元の並びに戻す逆並び替え処理を行う。
 ここで、図141は、図24で説明した、変調方式が16QAMであり、かつ、倍数bが1である場合の、メモリ1002の構成例を示している。したがって、1シンボルのビット数mは、4ビットであり、また、メモリ1002は、4(=mb)個のカラムで構成される。
 カラムツイストデインターリーバ55は、マルチプレクサ54に代わり、入れ替え部1001が出力するLDPC符号の符号ビットのロウ方向への書き込みを、メモリ1002の1行目から下の行に向かって順次行う。
 そして、1符号長分の符号ビットの書き込みが終了すると、カラムツイストデインターリーバ55は、符号ビットを、メモリ1002の上から下方向(カラム方向)に読み出すことを、左から右方向のカラムに向かって行う。
 但し、カラムツイストデインターリーバ55は、送信装置11側のカラムツイストインターリーバ24が符号ビットを書き込む書き始めの位置を、符号ビットの読み出し始めの位置として、メモリ1002からの符号ビットの読み出しを行う。
 すなわち、各カラムの先頭(一番上)の位置のアドレスを0として、カラム方向の各位置のアドレスを、昇順の整数で表すこととすると、変調方式が16QAMであり、かつ、倍数bが1である場合には、カラムツイストデインターリーバ55では、最も左のカラムについては、読み出し始めの位置を、アドレスが0の位置とし、(左から)2番目のカラムについては、読み出し始めの位置を、アドレスが2の位置とし、3番目のカラムについては、読み出し始めの位置を、アドレスが4の位置とし、4番目のカラムについては、読み出し始めの位置を、アドレスが7の位置とする。
 なお、読み出し始めの位置が、アドレスが0の位置以外の位置のカラムについては、符号ビットの読み出しを、最も下の位置まで行った後は、先頭(アドレスが0の位置)に戻り、読み出し始めの位置の直前の位置までの読み出しが行われる。そして、その後、次(右)のカラムからの読み出しが行われる。
 以上のようなカラムツイストデインターリーブを行うことにより、カラムツイストインターリーブで並び替えられた符号ビットの並びが、元の並びに戻される。
 図142は、図132のビットデインターリーバ165の他の構成例を示すブロック図である。
 なお、図中、図133の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 すなわち、図142のビットデインターリーバ165は、パリティデインターリーバ1011が新たに設けられている他は、図133の場合と同様に構成されている。
 図142では、ビットデインターリーバ165は、マルチプレクサ(MUX)54、カラムツイストデインターリーバ55、及び、パリティデインターリーバ1011から構成され、QAMデコーダ164からのLDPC符号の符号ビットのビットデインターリーブを行う。
 すなわち、マルチプレクサ54は、QAMデコーダ164からのLDPC符号を対象として、送信装置11のデマルチプレクサ25が行う入れ替え処理に対応する逆入れ替え処理(入れ替え処理の逆の処理)、すなわち、入れ替え処理によって入れ替えられた符号ビットの位置を元の位置に戻す逆入れ替え処理を行い、その結果得られるLDPC符号を、カラムツイストデインターリーバ55に供給する。
 カラムツイストデインターリーバ55は、マルチプレクサ54からのLDPC符号を対象として、送信装置11のカラムツイストインターリーバ24が行う並び替え処理としてのカラムツイストインターリーブに対応するカラムツイストデインターリーブを行う。
 カラムツイストデインターリーブの結果得られるLDPC符号は、カラムツイストデインターリーバ55からパリティデインターリーバ1011に供給される。
 パリティデインターリーバ1011は、カラムツイストデインターリーバ55でのカラムツイストデインターリーブ後の符号ビットを対象として、送信装置11のパリティインターリーバ23が行うパリティインターリーブに対応するパリティデインターリーブ(パリティインターリーブの逆の処理)、すなわち、パリティインターリーブによって並びが変更されたLDPC符号の符号ビットを、元の並びに戻すパリティデインターリーブを行う。
 パリティデインターリーブの結果得られるLDPC符号は、パリティデインターリーバ1011からLDPCデコーダ166に供給される。
 したがって、図142のビットデインターリーバ165では、LDPCデコーダ166には、逆入れ替え処理、カラムツイストデインターリーブ、及び、パリティデインターリーブが行われたLDPC符号、すなわち、検査行列Hに従ったLDPC符号化によって得られるLDPC符号が供給される。
 LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hそのもの、又は、その検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行い、その結果得られるデータを、LDPC対象データの復号結果として出力する。
 ここで、図142では、ビットデインターリーバ165(のパリティデインターリーバ1011)からLDPCデコーダ166に対して、検査行列Hに従ったLDPC符号化によって得られるLDPC符号が供給されるため、そのLDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hそのものを用いて行う場合には、LDPCデコーダ166は、例えば、メッセージ(チェックノードメッセージ、バリバブルノードメッセージ)の演算を1個のノードずつ順次行うフルシリアルデコーディング(full serial decoding)方式によるLDPC復号を行う復号装置や、メッセージの演算をすべてのノードについて同時(並列)に行うフルパラレルデコーディング(full parallel decoding)方式によるLDPC復号を行う復号装置で構成することができる。
 また、LDPCデコーダ166において、LDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行う場合には、LDPCデコーダ166は、チェックノード演算、及びバリアブルノード演算を、P(又はPの1以外の約数)個同時に行うアーキテクチャ(architecture)の復号装置であって、変換検査行列を得るための列置換と同様の列置換を、LDPC符号に施すことにより、そのLDPC符号の符号ビットを並び替える受信データ並べ替え部310を有する復号装置(図138)で構成することができる。
 なお、図142では、説明の便宜のため、逆入れ替え処理を行うマルチプレクサ54、カラムツイストデインターリーブを行うカラムツイストデインターリーバ55、及び、パリティデインターリーブを行うパリティデインターリーバ1011それぞれを、別個に構成するようにしたが、マルチプレクサ54、カラムツイストデインターリーバ55、及び、パリティデインターリーバ1011の2以上は、送信装置11のパリティインターリーバ23、カラムツイストインターリーバ24、及び、デマルチプレクサ25と同様に、一体的に構成することができる。
 [受信システムの構成例]
 図143は、受信装置12を適用可能な受信システムの第1の構成例を示すブロック図である。
 図143において、受信システムは、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103から構成される。
 取得部1101は、番組の画像データや音声データ等のLDPC対象データを、少なくともLDPC符号化することで得られるLDPC符号を含む信号を、例えば、地上ディジタル放送、衛星ディジタル放送、CATV網、インターネットその他のネットワーク等の、図示せぬ伝送路を介して取得し、伝送路復号処理部1102に供給する。
 ここで、取得部1101が取得する信号が、例えば、放送局から、地上波や、衛星波、CATV(Cable Television)網等を介して放送されてくる場合には、取得部1101は、チューナやSTB(Set Top Box)等で構成される。また、取得部1101が取得する信号が、例えば、webサーバから、IPTV(Internet Protocol Television)のようにマルチキャストで送信されてくる場合には、取得部11は、例えば、NIC(Network Interface Card)等のネットワークI/F(Inter face)で構成される。
 伝送路復号処理部1102は、受信装置12に相当する。伝送路復号処理部1102は、取得部1101が伝送路を介して取得した信号に対して、伝送路で生じる誤りを訂正する処理を少なくとも含む伝送路復号処理を施し、その結果得られる信号を、情報源復号処理部1103に供給する。
 すなわち、取得部1101が伝送路を介して取得した信号は、伝送路で生じる誤りを訂正するための誤り訂正符号化を、少なくとも行うことで得られた信号であり、伝送路復号処理部1102は、そのような信号に対して、例えば、誤り訂正処理等の伝送路復号処理を施す。
 ここで、誤り訂正符号化としては、例えば、LDPC符号化や、BCH符号化等がある。ここでは、誤り訂正符号化として、少なくとも、LDPC符号化が行われている。
 また、伝送路復号処理には、変調信号の復調等が含まれることがある。
 情報源復号処理部1103は、伝送路復号処理が施された信号に対して、圧縮された情報を元の情報に伸張する処理を少なくとも含む情報源復号処理を施す。
 すなわち、取得部1101が伝送路を介して取得した信号には、情報としての画像や音声等のデータ量を少なくするために、情報を圧縮する圧縮符号化が施されていることがあり、その場合、情報源復号処理部1103は、伝送路復号処理が施された信号に対して、圧縮された情報を元の情報に伸張する処理(伸張処理)等の情報源復号処理を施す。
 なお、取得部1101が伝送路を介して取得した信号に、圧縮符号化が施されていない場合には、情報源復号処理部1103では、圧縮された情報を元の情報に伸張する処理は行われない。
 ここで、伸張処理としては、例えば、MPEGデコード等がある。また、伝送路復号処理には、伸張処理の他、デスクランブル等が含まれることがある。
 以上のように構成される受信システムでは、取得部1101において、例えば、画像や音声等のデータに対して、MPEG符号化等の圧縮符号化が施され、さらに、LDPC符号化等の誤り訂正符号化が施された信号が、伝送路を介して取得され、伝送路復号処理部1102に供給される。
 伝送路復号処理部1102では、取得部1101からの信号に対して、例えば、直交復調部51や、QAMデコーダ164、ビットデインターリーバ165、LDPCデコーダ166(又はLDPCデコーダ166)と同様の処理が、伝送路復号処理として施され、その結果得られる信号が、情報源復号処理部1103に供給される。
 情報源復号処理部1103では、伝送路復号処理部1102からの信号に対して、MPEGデコード等の情報源復号処理が施され、その結果得られる画像、又は音声が出力される。
 以上のような図143の受信システムは、例えば、ディジタル放送としてのテレビジョン放送を受信するテレビチューナ等に適用することができる。
 なお、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103は、それぞれ、1つの独立した装置(ハードウェア(IC(Integrated Circuit)等))、又はソフトウエアモジュール)として構成することが可能である。
 また、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103については、取得部1101と伝送路復号処理部1102とのセットや、伝送路復号処理部1102と情報源復号処理部1103とのセット、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103のセットを、1つの独立した装置として構成することが可能である。
 図144は、受信装置12を適用可能な受信システムの第2の構成例を示すブロック図である。
 なお、図中、図143の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図144の受信システムは、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103を有する点で、図143の場合と共通し、出力部1111が新たに設けられている点で、図143の場合と相違する。
 出力部1111は、例えば、画像を表示する表示装置や、音声を出力するスピーカであり、情報源復号処理部1103から出力される信号としての画像や音声等を出力する。すなわち、出力部1111は、画像を表示し、あるいは、音声を出力する。
 以上のような図144の受信システムは、例えば、ディジタル放送としてのテレビジョン放送を受信するTV(テレビジョン受像機)や、ラジオ放送を受信するラジオ受信機等に適用することができる。
なお、取得部1101において取得された信号に、圧縮符号化が施されていない場合には、伝送路復号処理部1102が出力する信号が、出力部1111に供給される。
 図145は、受信装置12を適用可能な受信システムの第3の構成例を示すブロック図である。
 なお、図中、図143の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図145の受信システムは、取得部1101、及び、伝送路復号処理部1102を有する点で、図143の場合と共通する。
 但し、図145の受信システムは、情報源復号処理部1103が設けられておらず、記録部1121が新たに設けられている点で、図143の場合と相違する。
 記録部1121は、伝送路復号処理部1102が出力する信号(例えば、MPEGのTSのTSパケット)を、光ディスクや、ハードディスク(磁気ディスク)、フラッシュメモリ等の記録(記憶)媒体に記録する(記憶させる)。
 以上のような図145の受信システムは、テレビジョン放送を録画するレコーダ等に適用することができる。
 なお、図145において、受信システムは、情報源復号処理部1103を設けて構成し、情報源復号処理部1103で、情報源復号処理が施された後の信号、すなわち、デコードによって得られる画像や音声を、記録部1121で記録することができる。
 [コンピュータの一実施の形態]
 次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
 そこで、図146は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
 プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク705やROM703に予め記録しておくことができる。
 あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体711に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体711は、いわゆるパッケージソフトウエアとして提供することができる。
 なお、プログラムは、上述したようなリムーバブル記録媒体711からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部708で受信し、内蔵するハードディスク705にインストールすることができる。
 コンピュータは、CPU(Central Processing Unit)702を内蔵している。CPU702には、バス701を介して、入出力インタフェース710が接続されており、CPU702は、入出力インタフェース710を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部707が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)703に格納されているプログラムを実行する。あるいは、また、CPU702は、ハードディスク705に格納されているプログラム、衛星若しくはネットワークから転送され、通信部708で受信されてハードディスク705にインストールされたプログラム、又はドライブ709に装着されたリムーバブル記録媒体711から読み出されてハードディスク705にインストールされたプログラムを、RAM(Random Access Memory)704にロードして実行する。これにより、CPU702は、上述したフローチャートに従った処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU702は、その処理結果を、必要に応じて、例えば、入出力インタフェース710を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部706から出力、あるいは、通信部708から送信、さらには、ハードディスク705に記録等させる。
 ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
 また、プログラムは、1つのコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
 なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
 すなわち、上述した、携帯端末向けのディジタル放送等で採用するLDPC符号(の検査行列初期値テーブル)等は、固定端末向けのディジタル放送等で用いることが可能である。
 11 送信装置, 12 受信装置, 23 パリティインターリーバ, 24 カラムツイストインターリーバ, 25 デマルチプレクサ, 31 メモリ, 32 入れ替え部, 54 マルチプレクサ, 55 カラムツイストインターリーバ,
 111 モードアダプテーション/マルチプレクサ, 112 パダー, 113 BBスクランブラ, 114 BCHエンコーダ, 115 LDPCエンコーダ, 116 ビットインターリーバ, 117 QAMエンコーダ, 118 時間インターリーバ, 119 MISO/MIMOエンコーダ, 120 周波数インターリーバ, 121 BCHエンコーダ, 122 LDPCエンコーダ, 123 QAMエンコーダ, 124 周波数インターリーバ, 131 フレームビルダ/リソースアロケーション部 132 OFDM生成部, 151 OFDM処理部, 152 フレーム管理部, 153 周波数デインターリーバ, 154 QAMデコーダ, 155 LDPCデコーダ, 156 BCHデコーダ, 161 周波数デインターリーバ, 162 MISO/MIMOデコーダ, 163 時間デインターリーバ, 164 QAMデコーダ, 165 ビットデインターリーバ, 166 LDPCデコーダ, 167 BCHデコーダ, 168 BBデスクランブラ, 169 ヌル削除部, 170 デマルチプレクサ, 300 枝データ格納用メモリ, 301 セレクタ, 302 チェックノード計算部, 303 サイクリックシフト回路, 304 枝データ格納用メモリ, 305 セレクタ, 306 受信データ用メモリ, 307 バリアブルノード計算部, 308 サイクリックシフト回路, 309 復号語計算部, 310 受信データ並べ替え部, 311 復号データ並べ替え部, 601 符号化処理部, 602 記憶部, 611 符号化率設定部, 612 初期値テーブル読み出し部, 613 検査行列生成部, 614 情報ビット読み出し部, 615 符号化パリティ演算部, 616 制御部, 701 バス, 702 CPU, 703 ROM, 704 RAM, 705 ハードディスク, 706 出力部, 707 入力部, 708 通信部, 709 ドライブ, 710 入出力インタフェース, 711 リムーバブル記録媒体, 1001 逆入れ替え部, 1002 メモリ, 1011 パリティデインターリーバ, 1101 取得部, 1101 伝送路復号処理部, 1103 情報源復号処理部, 1111 出力部, 1121 記録部

Claims (12)

  1.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が1/2のLDPC符号による符号化を行う符号化手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117
     3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956
     148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055
     185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991
     424 444 923 1679
     91 436 535 978
     362 677 821 1695
     1117 1392 1454 2030
     35 840 1477 2152
     1061 1202 1836 1879
     242 286 1140 1538
     111 240 481 760
     59 1268 1899 2144
     737 1299 1395 2072
     34 288 810 1903
     232 1013 1365 1729
     410 783 1066 1187
     113 885 1423 1560
     760 909 1475 2048
     68 254 420 1867
     283 325 334 970
     168 321 479 554
     378 836 1913 1928
     101 238 964 1393
     304 460 1497 1588
     151 192 1075 1614
     297 313 677 1303
     329 447 1348 1832
     582 831 984 1900
     からなる
     データ処理装置。
  2.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が7/12のLDPC符号による符号化を行う符号化手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702
     22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794
     80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753
     15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348
     11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783
     455 610 1123 1603
     631 914 1424 1461
     149 507 1275 1468
     5 1078 1415 1735
     169 772 775 1516
     1207 1315 1683 1688
     19 1053 1221 1260
     933 1095 1597 1628
     893 1209 1360 1740
     1222 1486 1675 1737
     897 1074 1651 1728
     115 730 1363 1752
     1552 1672 1734 1795
     75 1087 1371 1712
     123 438 839 1074
     4 203 1407 1798
     441 476 658 1400
     380 1341 1741 1774
     974 1487 1664 1756
     7 273 834 1658
     798 1475 1653 1686
     12 1237 1539 1709
     211 1494 1618 1624
     367 1036 1390 1587
     18 166 1645 1679
     530 1092 1571 1707
     588 1593 1689 1707
     980 1104 1522 1701
     1025 1510 1552 1683
     270 340 1326 1770
     からなる
     データ処理装置。
  3.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が2/3のLDPC符号による符号化を行う符号化手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428
     1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431
     2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422
     50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260
     151 674 732 1240
     1099 1250 1348 1366
     1115 1124 1394 1414
     66 250 875 1040
     525 603 916 1402
     529 561 913 1089
     1110 1243 1280 1372
     137 656 1316 1369
     5 458 1043 1381
     1122 1171 1187 1335
     18 130 312 1209
     30 534 705 1294
     272 727 955 1192
     925 1287 1385 1437
     11 446 1281 1408
     614 716 787 1340
     615 1147 1411 1416
     284 865 1151 1414
     202 689 1088 1144
     459 633 838 941
     46 301 1229 1367
     476 1031 1120 1418
     138 336 560 1419
     168 357 536 938
     1001 1052 1162 1414
     349 1039 1353 1426
     146 203 530 549
     510 545 979 1108
     479 1069 1106 1244
     743 1019 1275 1348
     427 721 1023 1435
     73 842 1296 1435
     323 1106 1140 1428
     1074 1235 1353 1391
     からなる
     データ処理装置。
  4.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が3/4のLDPC符号による符号化を行う符号化手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069
     4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076
     0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064
     10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069
     12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072
     124 381 715 981
     503 610 633 1030
     321 874 900 1020
     509 817 902 978
     3 118 688 911
     515 644 848 1067
     13 75 721 970
     9 464 756 1023
     26 219 304 672
     5 310 410 695
     0 7 267 1040
     76 822 873 1043
     7 129 1010 1065
     115 156 714 1003
     163 480 505 1079
     238 601 743 1046
     216 702 738 912
     13 20 166 979
     11 14 261 1051
     186 476 595 843
     13 237 451 532
     7 11 594 738
     10 225 495 851
     520 675 1018 1045
     9 352 514 543
     60 917 1071 1074
     471 556 673 1062
     345 350 1043 1076
     5 539 788 1061
     704 851 883 1049
     211 233 242 1072
     9 1047 1057 1076
     18 172 473 1042
     365 488 921 968
     211 216 554 824
     1 709 923 1074
     576 647 901 963
     71 676 1053 1073
     265 738 958 969
     66 274 774 811
     からなる
     データ処理装置。
  5.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置が、
     符号長が4320ビットで、符号化率が1/2のLDPC符号による符号化を行う符号化ステップを備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117
     3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956
     148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055
     185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991
     424 444 923 1679
     91 436 535 978
     362 677 821 1695
     1117 1392 1454 2030
     35 840 1477 2152
     1061 1202 1836 1879
     242 286 1140 1538
     111 240 481 760
     59 1268 1899 2144
     737 1299 1395 2072
     34 288 810 1903
     232 1013 1365 1729
     410 783 1066 1187
     113 885 1423 1560
     760 909 1475 2048
     68 254 420 1867
     283 325 334 970
     168 321 479 554
     378 836 1913 1928
     101 238 964 1393
     304 460 1497 1588
     151 192 1075 1614
     297 313 677 1303
     329 447 1348 1832
     582 831 984 1900
     からなる
     データ処理方法。
  6.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置が、
     符号長が4320ビットで、符号化率が7/12のLDPC符号による符号化を行う符号化ステップを備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702
     22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794
     80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753
     15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348
     11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783
     455 610 1123 1603
     631 914 1424 1461
     149 507 1275 1468
     5 1078 1415 1735
     169 772 775 1516
     1207 1315 1683 1688
     19 1053 1221 1260
     933 1095 1597 1628
     893 1209 1360 1740
     1222 1486 1675 1737
     897 1074 1651 1728
     115 730 1363 1752
     1552 1672 1734 1795
     75 1087 1371 1712
     123 438 839 1074
     4 203 1407 1798
     441 476 658 1400
     380 1341 1741 1774
     974 1487 1664 1756
     7 273 834 1658
     798 1475 1653 1686
     12 1237 1539 1709
     211 1494 1618 1624
     367 1036 1390 1587
     18 166 1645 1679
     530 1092 1571 1707
     588 1593 1689 1707
     980 1104 1522 1701
     1025 1510 1552 1683
     270 340 1326 1770
     からなる
     データ処理方法。
  7.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置が、
     符号長が4320ビットで、符号化率が2/3のLDPC符号による符号化を行う符号化ステップを備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428
     1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431
     2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422
     50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260
     151 674 732 1240
     1099 1250 1348 1366
     1115 1124 1394 1414
     66 250 875 1040
     525 603 916 1402
     529 561 913 1089
     1110 1243 1280 1372
     137 656 1316 1369
     5 458 1043 1381
     1122 1171 1187 1335
     18 130 312 1209
     30 534 705 1294
     272 727 955 1192
     925 1287 1385 1437
     11 446 1281 1408
     614 716 787 1340
     615 1147 1411 1416
     284 865 1151 1414
     202 689 1088 1144
     459 633 838 941
     46 301 1229 1367
     476 1031 1120 1418
     138 336 560 1419
     168 357 536 938
     1001 1052 1162 1414
     349 1039 1353 1426
     146 203 530 549
     510 545 979 1108
     479 1069 1106 1244
     743 1019 1275 1348
     427 721 1023 1435
     73 842 1296 1435
     323 1106 1140 1428
     1074 1235 1353 1391
     からなる
     データ処理方法。
  8.  LDPC(Low Density Parity Check)符号による符号化を行うデータ処理装置が、
     符号長が4320ビットで、符号化率が3/4のLDPC符号による符号化を行う符号化ステップを備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069
     4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076
     0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064
     10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069
     12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072
     124 381 715 981
     503 610 633 1030
     321 874 900 1020
     509 817 902 978
     3 118 688 911
     515 644 848 1067
     13 75 721 970
     9 464 756 1023
     26 219 304 672
     5 310 410 695
     0 7 267 1040
     76 822 873 1043
     7 129 1010 1065
     115 156 714 1003
     163 480 505 1079
     238 601 743 1046
     216 702 738 912
     13 20 166 979
     11 14 261 1051
     186 476 595 843
     13 237 451 532
     7 11 594 738
     10 225 495 851
     520 675 1018 1045
     9 352 514 543
     60 917 1071 1074
     471 556 673 1062
     345 350 1043 1076
     5 539 788 1061
     704 851 883 1049
     211 233 242 1072
     9 1047 1057 1076
     18 172 473 1042
     365 488 921 968
     211 216 554 824
     1 709 923 1074
     576 647 901 963
     71 676 1053 1073
     265 738 958 969
     66 274 774 811
     からなる
     データ処理方法。
  9.  LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が1/2のLDPC符号の復号を行う復号手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     142 150 213 247 507 538 578 828 969 1042 1107 1315 1509 1584 1612 1781 1934 2106 2117
     3 17 20 31 97 466 571 580 842 983 1152 1226 1261 1392 1413 1465 1480 2047 2125 49 169 258 548 582 839 873 881 931 995 1145 1209 1639 1654 1776 1826 1865 1906 1956
     148 393 396 486 568 806 909 965 1203 1256 1306 1371 1402 1534 1664 1736 1844 1947 2055
     185 191 263 290 384 769 981 1071 1202 1357 1554 1723 1769 1815 1842 1880 1910 1926 1991
     424 444 923 1679
     91 436 535 978
     362 677 821 1695
     1117 1392 1454 2030
     35 840 1477 2152
     1061 1202 1836 1879
     242 286 1140 1538
     111 240 481 760
     59 1268 1899 2144
     737 1299 1395 2072
     34 288 810 1903
     232 1013 1365 1729
     410 783 1066 1187
     113 885 1423 1560
     760 909 1475 2048
     68 254 420 1867
     283 325 334 970
     168 321 479 554
     378 836 1913 1928
     101 238 964 1393
     304 460 1497 1588
     151 192 1075 1614
     297 313 677 1303
     329 447 1348 1832
     582 831 984 1900
     からなる
     データ処理装置。
  10.  LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が7/12のLDPC符号の復号を行う復号手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     96 246 326 621 668 748 874 965 1022 1108 1117 1142 1300 1469 1481 1627 1702
     22 79 122 127 339 359 516 587 1025 1143 1294 1478 1484 1594 1651 1681 1794
     80 426 429 506 599 810 892 1016 1117 1246 1277 1281 1316 1384 1713 1729 1753
     15 145 182 305 451 563 570 635 781 827 983 1123 1204 1244 1311 1317 1348
     11 157 164 292 301 360 636 859 871 895 1138 1164 1206 1268 1454 1613 1783
     455 610 1123 1603
     631 914 1424 1461
     149 507 1275 1468
     5 1078 1415 1735
     169 772 775 1516
     1207 1315 1683 1688
     19 1053 1221 1260
     933 1095 1597 1628
     893 1209 1360 1740
     1222 1486 1675 1737
     897 1074 1651 1728
     115 730 1363 1752
     1552 1672 1734 1795
     75 1087 1371 1712
     123 438 839 1074
     4 203 1407 1798
     441 476 658 1400
     380 1341 1741 1774
     974 1487 1664 1756
     7 273 834 1658
     798 1475 1653 1686
     12 1237 1539 1709
     211 1494 1618 1624
     367 1036 1390 1587
     18 166 1645 1679
     530 1092 1571 1707
     588 1593 1689 1707
     980 1104 1522 1701
     1025 1510 1552 1683
     270 340 1326 1770
     からなる
     データ処理装置。
  11.  LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が2/3のLDPC符号の復号を行う復号手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     56 291 315 374 378 665 682 713 740 884 923 927 1193 1203 1293 1372 1419 1428
     1 17 113 402 406 504 559 597 686 697 817 878 983 1007 1034 1142 1231 1431
     2 205 350 428 538 605 866 973 1008 1182 1252 1303 1319 1337 1346 1387 1417 1422
     50 158 244 424 455 597 830 889 900 945 978 1040 1052 1059 1101 1150 1254 1382 41 53 269 316 449 604 704 752 937 952 1021 1031 1044 1068 1104 1265 1327 1348 601 911 1020 1260
     151 674 732 1240
     1099 1250 1348 1366
     1115 1124 1394 1414
     66 250 875 1040
     525 603 916 1402
     529 561 913 1089
     1110 1243 1280 1372
     137 656 1316 1369
     5 458 1043 1381
     1122 1171 1187 1335
     18 130 312 1209
     30 534 705 1294
     272 727 955 1192
     925 1287 1385 1437
     11 446 1281 1408
     614 716 787 1340
     615 1147 1411 1416
     284 865 1151 1414
     202 689 1088 1144
     459 633 838 941
     46 301 1229 1367
     476 1031 1120 1418
     138 336 560 1419
     168 357 536 938
     1001 1052 1162 1414
     349 1039 1353 1426
     146 203 530 549
     510 545 979 1108
     479 1069 1106 1244
     743 1019 1275 1348
     427 721 1023 1435
     73 842 1296 1435
     323 1106 1140 1428
     1074 1235 1353 1391
     からなる
     データ処理装置。
  12.  LDPC(Low Density Parity Check)符号の復号を行うデータ処理装置において、
     符号長が4320ビットで、符号化率が3/4のLDPC符号の復号を行う復号手段を備え、
     前記LDPC符号の検査行列は、その検査行列の、前記符号長、及び前記符号化率に応じた情報長に対応する情報行列の1の要素の位置を72列ごとに表す検査行列初期値テーブルによって定まる前記情報行列の1の要素を、列方向に72列ごとの周期で配置して構成され、
     前記検査行列初期値テーブルは、
     3 14 207 304 349 414 577 587 748 761 772 855 920 976 1009 1058 1069
     4 61 81 86 136 146 257 392 402 594 812 959 972 1037 1055 1064 1076
     0 68 160 237 437 512 624 629 652 702 818 858 943 998 1035 1044 1064
     10 42 159 215 254 320 373 382 410 492 630 887 889 911 916 975 1069
     12 32 298 302 318 425 558 621 670 779 964 967 970 975 1054 1067 1072
     124 381 715 981
     503 610 633 1030
     321 874 900 1020
     509 817 902 978
     3 118 688 911
     515 644 848 1067
     13 75 721 970
     9 464 756 1023
     26 219 304 672
     5 310 410 695
     0 7 267 1040
     76 822 873 1043
     7 129 1010 1065
     115 156 714 1003
     163 480 505 1079
     238 601 743 1046
     216 702 738 912
     13 20 166 979
     11 14 261 1051
     186 476 595 843
     13 237 451 532
     7 11 594 738
     10 225 495 851
     520 675 1018 1045
     9 352 514 543
     60 917 1071 1074
     471 556 673 1062
     345 350 1043 1076
     5 539 788 1061
     704 851 883 1049
     211 233 242 1072
     9 1047 1057 1076
     18 172 473 1042
     365 488 921 968
     211 216 554 824
     1 709 923 1074
     576 647 901 963
     71 676 1053 1073
     265 738 958 969
     66 274 774 811
     からなる
     データ処理装置。
PCT/JP2011/069110 2010-09-03 2011-08-25 データ処理装置、及びデータ処理方法 WO2012029614A1 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
CA2808813A CA2808813A1 (en) 2010-09-03 2011-08-25 Data processing device and data processing method
MX2013002215A MX2013002215A (es) 2010-09-03 2011-08-25 Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
US13/818,709 US9106256B2 (en) 2010-09-03 2011-08-25 Data processing device and data processing method for encoding/decoding information bits
EP11821631.6A EP2613443B1 (en) 2010-09-03 2011-08-25 Data processing device and data processing method
AU2011297270A AU2011297270B2 (en) 2010-09-03 2011-08-25 Data processing device and data processing method
CN201180050501.5A CN103181082B (zh) 2010-09-03 2011-08-25 数据处理装置和数据处理方法
BR112013004461A BR112013004461A2 (pt) 2010-09-03 2011-08-25 dispositivo e método de processamento de dados, e, método de codificação de bits de informação
RU2013108081/08A RU2574828C2 (ru) 2010-09-03 2011-08-25 Устройство обработки данных и способ обработки данных
ES11821631.6T ES2544610T3 (es) 2010-09-03 2011-08-25 Dispositivo de procesamiento de datos y método de procesamiento de datos

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010197393A JP5500379B2 (ja) 2010-09-03 2010-09-03 データ処理装置、及びデータ処理方法
JP2010-197393 2010-09-03

Publications (1)

Publication Number Publication Date
WO2012029614A1 true WO2012029614A1 (ja) 2012-03-08

Family

ID=45772706

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/069110 WO2012029614A1 (ja) 2010-09-03 2011-08-25 データ処理装置、及びデータ処理方法

Country Status (10)

Country Link
US (1) US9106256B2 (ja)
EP (1) EP2613443B1 (ja)
JP (1) JP5500379B2 (ja)
CN (1) CN103181082B (ja)
AU (1) AU2011297270B2 (ja)
BR (1) BR112013004461A2 (ja)
CA (1) CA2808813A1 (ja)
ES (1) ES2544610T3 (ja)
MX (1) MX2013002215A (ja)
WO (1) WO2012029614A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2974037A4 (en) * 2013-03-15 2016-11-09 Hughes Network Systems Llc LOW DENSITY PARITY CHECK CODING AND DECODING (LDPC) FOR SMALL TERMINAL APPLICATIONS
RU2686664C1 (ru) * 2015-11-13 2019-04-30 Хуавей Текнолоджиз Ко., Лтд. Способ и устройство для передачи данных

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5500379B2 (ja) 2010-09-03 2014-05-21 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5505725B2 (ja) * 2010-09-16 2014-05-28 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5601182B2 (ja) * 2010-12-07 2014-10-08 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5630278B2 (ja) * 2010-12-28 2014-11-26 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5637393B2 (ja) * 2011-04-28 2014-12-10 ソニー株式会社 データ処理装置、及び、データ処理方法
JP5648852B2 (ja) 2011-05-27 2015-01-07 ソニー株式会社 データ処理装置、及び、データ処理方法
US9213593B2 (en) * 2013-01-16 2015-12-15 Maxlinear, Inc. Efficient memory architecture for low density parity check decoding
KR102091889B1 (ko) 2013-02-08 2020-04-14 소니 주식회사 데이터 처리 장치, 및 데이터 처리 방법
US20150046765A1 (en) 2013-02-08 2015-02-12 Sony Corporation Data processing apparatus and data processing method
KR101929145B1 (ko) 2013-06-12 2018-12-13 소니 주식회사 데이터 처리 장치, 및 데이터 처리 방법
EP3011732B1 (en) 2013-06-19 2020-04-08 LG Electronics Inc. Method and apparatus for transmitting/receiving broadcast signals
CN105531935B (zh) * 2013-09-20 2020-03-31 索尼公司 数据处理装置和数据处理方法
US20160211866A1 (en) * 2013-09-20 2016-07-21 Sony Corporation Data processing device and data processing method
CN105556858A (zh) * 2013-09-24 2016-05-04 索尼公司 数据处理装置和数据处理方法
EP2858249A1 (en) 2013-10-07 2015-04-08 Electronics and Telecommunications Research Institute Low density parity check encoder
US9787470B2 (en) * 2013-12-12 2017-10-10 Samsung Electronics Co., Ltd. Method and apparatus of joint security advanced LDPC cryptcoding
US9577678B2 (en) 2014-01-29 2017-02-21 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 7/15 and quadrature phase shift keying, and bit interleaving method using same
US9602135B2 (en) 2014-02-20 2017-03-21 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 5/15 and 64-symbol mapping, and bit interleaving method using same
US9602136B2 (en) 2014-03-06 2017-03-21 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 4/15 and 256-symbol mapping, and bit interleaving method using same
KR101775704B1 (ko) * 2014-05-21 2017-09-19 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
CA2892171C (en) 2014-05-22 2018-02-13 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 10/15 and 256-symbol mapping, and bit interleaving method using same
US9600367B2 (en) 2014-05-22 2017-03-21 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 4/15 and 16-symbol mapping, and bit interleaving method using same
US10361720B2 (en) 2014-05-22 2019-07-23 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 3/15 and 64-symbol mapping, and bit interleaving method using same
KR102260775B1 (ko) 2014-05-22 2021-06-07 한국전자통신연구원 길이가 16200이며, 부호율이 10/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
US10326471B2 (en) 2014-05-22 2019-06-18 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 3/15 and quadrature phase shift keying, and bit interleaving method using same
KR102260767B1 (ko) 2014-05-22 2021-06-07 한국전자통신연구원 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102541321B1 (ko) * 2014-07-11 2023-06-08 삼성전자주식회사 공동 보안 어드벤스드 ldpc 암호화 코딩 방법 및 장치
CA2963911C (en) 2014-08-14 2019-11-05 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 16200 and code rate of 2/15, and low density parity check encoding method using the same
CA2963841C (en) 2014-08-14 2019-08-20 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 2/15, and low denisty parity check encoding method using the same
KR102240748B1 (ko) 2015-01-20 2021-04-16 한국전자통신연구원 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240745B1 (ko) 2015-01-20 2021-04-16 한국전자통신연구원 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240750B1 (ko) 2015-01-20 2021-04-16 한국전자통신연구원 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240740B1 (ko) 2015-01-27 2021-04-16 한국전자통신연구원 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240728B1 (ko) 2015-01-27 2021-04-16 한국전자통신연구원 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240744B1 (ko) 2015-01-27 2021-04-16 한국전자통신연구원 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 16-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240741B1 (ko) 2015-01-27 2021-04-16 한국전자통신연구원 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240736B1 (ko) 2015-01-27 2021-04-16 한국전자통신연구원 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
JP6930374B2 (ja) * 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法
JP6930373B2 (ja) * 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法
JP6930377B2 (ja) 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法
JP6930375B2 (ja) * 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法
JP6930372B2 (ja) 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法
JP6930376B2 (ja) * 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法
CN110601792B (zh) * 2019-07-31 2022-02-01 苏州门海微电子科技有限公司 一种用于宽带电力载波通讯的前端编解码系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4224777B2 (ja) 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
WO2009069628A1 (ja) * 2007-11-26 2009-06-04 Sony Corporation データ処理装置、データ処理方法、及びプログラム
WO2011105288A1 (ja) * 2010-02-26 2011-09-01 ソニー株式会社 データ処理装置、及びデータ処理方法
WO2011105289A1 (ja) * 2010-02-26 2011-09-01 ソニー株式会社 データ処理装置、及びデータ処理方法
WO2011105287A1 (ja) * 2010-02-26 2011-09-01 ソニー株式会社 データ処理装置、及びデータ処理方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1008316B (zh) * 1985-05-08 1990-06-06 索尼公司 纠错码的译码方法和系统
US5359606A (en) * 1992-02-12 1994-10-25 Storage Technology Corporation Data quality analysis in a data signal processing channel
US6757122B1 (en) * 2002-01-29 2004-06-29 Seagate Technology Llc Method and decoding apparatus using linear code with parity check matrices composed from circulants
US7234098B2 (en) * 2003-10-27 2007-06-19 The Directv Group, Inc. Method and apparatus for providing reduced memory low density parity check (LDPC) codes
CN100546205C (zh) * 2006-04-29 2009-09-30 北京泰美世纪科技有限公司 构造低密度奇偶校验码的方法、译码方法及其传输系统
CN100446427C (zh) * 2006-08-07 2008-12-24 北京泰美世纪科技有限公司 移动数字多媒体广播系统中ldpc码的构造方法
WO2008092040A2 (en) * 2007-01-24 2008-07-31 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes
JP5500379B2 (ja) 2010-09-03 2014-05-21 ソニー株式会社 データ処理装置、及びデータ処理方法
JP2012085196A (ja) 2010-10-14 2012-04-26 Sony Corp データ処理装置、及びデータ処理方法
EP2477335B1 (en) 2011-01-18 2019-05-29 Samsung Electronics Co., Ltd. Apparatus and method for transmitting and reveiving data in communication/broadcasting system
US8566667B2 (en) * 2011-07-29 2013-10-22 Stec, Inc. Low density parity check code decoding system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4224777B2 (ja) 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
WO2009069628A1 (ja) * 2007-11-26 2009-06-04 Sony Corporation データ処理装置、データ処理方法、及びプログラム
WO2011105288A1 (ja) * 2010-02-26 2011-09-01 ソニー株式会社 データ処理装置、及びデータ処理方法
WO2011105289A1 (ja) * 2010-02-26 2011-09-01 ソニー株式会社 データ処理装置、及びデータ処理方法
WO2011105287A1 (ja) * 2010-02-26 2011-09-01 ソニー株式会社 データ処理装置、及びデータ処理方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"Digital Video Broadcasting (DVB);Frame structure channel coding and modulation for a second generation", ETSI EN 302 755 V1.1.1, September 2009 (2009-09-01), pages 117 - 125 *
H. JIN; A. KHANDEKAR; R. J. MCELIECE: "Irregular Repeat-Accumulate Codes", PROCEEDINGS OF SECOND INTERNATIONAL SYMPOSIUM ON TURBO CODES AND RELATED TOPICS, September 2000 (2000-09-01), pages 1 - 8
S.Y. CHUNG; G.D. FORNEY; T.J. RICHARDSON; R. URBANKE: "On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit", IEEE COMMUNICATIONS LEGGERS, vol. 5, no. 2, February 2001 (2001-02-01)
See also references of EP2613443A4

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2974037A4 (en) * 2013-03-15 2016-11-09 Hughes Network Systems Llc LOW DENSITY PARITY CHECK CODING AND DECODING (LDPC) FOR SMALL TERMINAL APPLICATIONS
RU2686664C1 (ru) * 2015-11-13 2019-04-30 Хуавей Текнолоджиз Ко., Лтд. Способ и устройство для передачи данных
US10419262B2 (en) 2015-11-13 2019-09-17 Huawei Technologies Co., Ltd. Data transmission method and apparatus
US10819553B2 (en) 2015-11-13 2020-10-27 Huawei Technologies Co., Ltd. Data transmission method and apparatus
US11140017B2 (en) 2015-11-13 2021-10-05 Huawei Technologies Co., Ltd. Data transmission method and apparatus

Also Published As

Publication number Publication date
RU2013108081A (ru) 2014-08-27
CA2808813A1 (en) 2012-03-08
US9106256B2 (en) 2015-08-11
CN103181082B (zh) 2016-02-17
EP2613443B1 (en) 2015-07-22
US20130254617A1 (en) 2013-09-26
EP2613443A1 (en) 2013-07-10
MX2013002215A (es) 2013-03-22
ES2544610T3 (es) 2015-09-02
AU2011297270A2 (en) 2013-03-14
EP2613443A4 (en) 2014-03-19
JP5500379B2 (ja) 2014-05-21
AU2011297270B2 (en) 2015-05-28
BR112013004461A2 (pt) 2016-06-07
AU2011297270A1 (en) 2013-03-14
JP2012054853A (ja) 2012-03-15
CN103181082A (zh) 2013-06-26

Similar Documents

Publication Publication Date Title
JP5500379B2 (ja) データ処理装置、及びデータ処理方法
JP5505725B2 (ja) データ処理装置、及びデータ処理方法
JP5664919B2 (ja) データ処理装置、及び、データ処理方法
JP5630282B2 (ja) データ処理装置、及び、データ処理方法
JP5648852B2 (ja) データ処理装置、及び、データ処理方法
JP5672489B2 (ja) データ処理装置、及び、データ処理方法
JP5601182B2 (ja) データ処理装置、及びデータ処理方法
JP5630278B2 (ja) データ処理装置、及びデータ処理方法
JP5630283B2 (ja) データ処理装置、及び、データ処理方法
WO2012147623A1 (ja) データ処理装置、及び、データ処理方法
WO2011105287A1 (ja) データ処理装置、及びデータ処理方法
WO2012002238A1 (ja) データ処理装置、及びデータ処理方法
WO2012098984A1 (ja) データ処理装置、及び、データ処理方法
WO2012098985A1 (ja) データ処理装置、及び、データ処理方法
WO2011105288A1 (ja) データ処理装置、及びデータ処理方法
WO2011105219A1 (ja) データ処理装置、及びデータ処理方法
WO2012050020A1 (ja) データ処理装置、及びデータ処理方法
JP2011182073A (ja) データ処理装置、及びデータ処理方法
WO2011158749A1 (ja) データ処理装置、及びデータ処理方法
WO2011105289A1 (ja) データ処理装置、及びデータ処理方法
JP2012235269A (ja) データ処理装置、及び、データ処理方法
WO2012002237A1 (ja) データ処理装置、及びデータ処理方法
JP2012239130A (ja) データ処理装置、及び、データ処理方法

Legal Events

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

Ref document number: 201180050501.5

Country of ref document: CN

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

Ref document number: 11821631

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2808813

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2011821631

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2013108081

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: MX/A/2013/002215

Country of ref document: MX

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2011297270

Country of ref document: AU

Date of ref document: 20110825

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13818709

Country of ref document: US

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013004461

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112013004461

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20130225