WO2011105288A1 - Dispositif de traitement de données et procédé de traitement de données - Google Patents

Dispositif de traitement de données et procédé de traitement de données Download PDF

Info

Publication number
WO2011105288A1
WO2011105288A1 PCT/JP2011/053452 JP2011053452W WO2011105288A1 WO 2011105288 A1 WO2011105288 A1 WO 2011105288A1 JP 2011053452 W JP2011053452 W JP 2011053452W WO 2011105288 A1 WO2011105288 A1 WO 2011105288A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
bit
bits
symbol
parity check
Prior art date
Application number
PCT/JP2011/053452
Other languages
English (en)
Japanese (ja)
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 ソニー株式会社
Publication of WO2011105288A1 publication Critical patent/WO2011105288A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/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/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/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
    • 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) (number of “1” s) (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), consisting of variable nodes (also called message nodes) and check nodes (check nodes). 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 representing 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 will be received.
  • the value is u 0i .
  • 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.
  • 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.
  • 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.
  • 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 made into symbols of orthogonal modulation (digital modulation) such as QPSK (Quadrature Phase Shift Keying), and the symbol is a signal. 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.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 1/4.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the information length corresponding to the code length and the coding rate of the parity check matrix for every 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 58 311 554 679 783 1280 1500 1545 1821 2089 2105 2251 3004 255 728 2316 2854 3170 162 2083 2446 2637 2693 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 1/3.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table representing the 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 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 231 416 587 952 1189 1523 1602 1750 1833 1894 2236 2620 2869 951 1160 2509 2849 472 1089 2326 2787 474 591 2500 2866 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step for performing encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 5/12.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the information length corresponding to the code length and the coding rate of the parity check matrix for every 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 24 441 446 550 880 921 980 1038 1515 1710 1847 2234 2360 55 131 1943 2409 69 178 405 1962 284 449 728 808 357 915 975 1708 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 1/2.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table representing the 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 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 118 375 395 490 552 599 895 954 1005 1517 1576 1739 2030 194 1547 1598 1801 140 238 253 1734 243 378 919 1188 201 1005 1033 1128 202 727 782 1100
  • a data processing apparatus or a data processing method 118 375 395 490 552 599 895 954 1005 1517 1576 1739 2030 194 1547 1598 1801
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 7/12.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the information length corresponding to the code length and the coding rate of the parity check matrix for every 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 125 447 543 634 864 1112 1124 1206 1268 1484 1568 1668 1672 105 605 821 1587 50 531 803 1595 226 410 810 1378 27 925 933 966 131 261 687 1079 207 1054 1706 1764 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using 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 is a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the information length corresponding to the code length and the coding rate of the parity check matrix for every 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 15 253 313 501 563 582 865 911 977 1266 1276 1356 1427 256 743 982 1109 343 525 976 1102 12 502 539 782 556 593 1120 1420 18 119 431 460 178 253 416 771 74 100 205 1214 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using 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 is a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the information length corresponding to the code length and the coding rate of the parity check matrix for every 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 109 116 136 141 178 238 250 503 566 723 978 1065 1068 113 191 586 1003 219 426 583 1061 329 429 576 855 121 231 337 620 199 216 676 831 223 560 686 713 632 944 1015 1043 171 365 514 882 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 5/6.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table that represents the position of one element of the information matrix corresponding to the information length corresponding to the code length and the coding rate of the parity check matrix for every 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 20 44 158 177 274 312 352 384 420 547 670 678 709 1 7 21 39 153 160 236 281 353 419 473 507 668 248 257 661 701 229 568 596 700 233 456 632 707 193 481 485 544 18 142 144 373 80 91 389 556 123 233 306 348 159 377 506 658 A data processing apparatus or a data processing method.
  • a data processing device or a data processing method includes an encoding unit or an encoding step that performs encoding using an LDPC code having a code length of 4320 bits and an encoding rate of 11/12.
  • the parity check matrix of the LDPC code is a parity check matrix initial value table representing the 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 360 columns.
  • 1 element of the information matrix determined by is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 0 300 314 326 336 344 351 355 357 0 124 215 280 0 121 213 279 0 118 211 278 0 115 209 277 0 112 207 276 0 109 205 275 0 106 203 274 0 103 201 273 0 100 199 272 0 78 197 271
  • a data processing apparatus or a data processing method is arranged in a column direction with a period of every 360 columns, the parity check matrix initial value table, 0 300 314 326 336 344 351 355 357 0 124 215 280 0 121 213 279 0 118 211 278 0 115 209 277 0 112 207 276 0 109 205 275 0 106 203 274 0 103 201 273 0 100 199
  • the code length is 4320 bits and the coding rate is 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, 3/4, 5/6.
  • encoding using an 11/12 LDPC code is performed.
  • 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 according to the coding rate for every 360 columns.
  • the check matrix initial value table of the LDPC code having a coding rate of 1/4 is configured by arranging 1 element of the information matrix to be determined at a period of every 360 columns in the column direction.
  • the parity check matrix initial value table of an LDPC code having a coding rate of 1/3 is: 231 416 587 952 1189 1523 1602 1750 1833 1894 2236 2620 2869 951 1160 2509 2849 472 1089 2326 2787 474 591 2500 2866
  • the parity check matrix initial value table of an LDPC code with a coding rate of 5/12 is: 24 441 446 550 880 921 980 1038 1515 1710 1847 2234 2360 55 131 1943 2409 69 178 405 1962 284 449 728 808 357 915 975 1708
  • the parity check matrix initial value table of an LDPC code having a coding rate of 1/2 is 118 375 395 490 552 599 895 954 1005 1517 1576 1739 2030 194 1547 1598 1801 140
  • the data processing apparatus may be an independent apparatus or an internal block constituting one apparatus.
  • 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. It is a figure which shows the minimum cycle length and performance threshold value of the parity check matrix of the LDPC code of 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.
  • 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 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. 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 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. 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 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. 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 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. 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/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. 11 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 an encoding 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 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.
  • 3 is a block diagram illustrating a configuration example of a receiving device 12.
  • FIG. 3 is a block diagram illustrating a configuration example of an LDPC decoder 166.
  • 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. 165 shows the other structural example of the bit deinterleaver 165.
  • FIG. 3 is a block diagram illustrating a first configuration example of a receiving system applicable to the receiving device 12.
  • FIG. 12 is a block diagram illustrating a second configuration example of a receiving system applicable to the receiving device 12.
  • FIG. 12 is a block diagram illustrating a third configuration example of a reception system applicable to the reception device 12.
  • FIG. It is a block diagram which shows the structural example of one Embodiment of the computer to which this invention is applied.
  • 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 mobile 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 (ImputsStreams) as target data are supplied to a mode adaptation / multiplexer (Mode Adaptation / Multiplexer) 111.
  • mode adaptation / multiplexer Mode Adaptation / Multiplexer
  • 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 on the data from the padder 112 and supplies the data obtained as a result to a BCH encoder (BCH encoder) 114.
  • BCH encoder BCH encoder
  • 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 according to a parity check matrix in which a parity matrix that is a portion corresponding to a parity bit of the LDPC code has a staircase structure for LDPC encoding of the LDPC target data from the BCH encoder 114, Outputs LDPC code with LDPC target data as information bits.
  • the LDPC encoder 115 performs LDPC encoding for encoding 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 is a data processing device that interleaves data, performs bit interleaving for the LDPC code from the LDPC encoder 115, and supplies the LDPC code after the bit interleaving to a QAM encoder (QAM encoder) 117. To do.
  • 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 for each symbol on the data (symbol) from the QAM encoder 117, and supplies the resulting data to a MISO / MIMO encoder (MISO / MIMO encoder) 119.
  • MISO / MIMO encoder MISO / MIMO encoder
  • 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 for each symbol on the data (symbol) from the MISO / MIMO encoder 119 and supplies the data to the frame builder / resource allocation unit (Frame Builder & Resource Allocation) 131.
  • the BCH encoder 121 is supplied with signaling for control such as a preamble called L1 or the like.
  • the BCH encoder 121 performs BCH encoding on the signaling 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 for each symbol on the data (symbol) from the QAM encoder 123 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 obtains an LDPC code with enhanced resistance to AWGN by performing 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. 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.
  • the row vector T can be represented by the row vector with the element of the row vector T as the right side element).
  • 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.
  • 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 that the demultiplexer 25 obtains by so-called 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.
  • the parity matrix H T has a staircase structure, in the Tanner graph of the parity matrix H T, of the LDPC code, the value of the parity matrix H T corresponding to the sequence of elements that is a 1, the adjacent code bits Variable nodes for which a message is requested using (parity bit) are connected to the same check node.
  • 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 the cyclic of another column.For example, for each P column, the position of 1 in each row of the P column is the first in the P column.
  • a structure in which a column is cyclically shifted in the column direction by a value proportional to a 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 output by the LDPC encoder 115 and defined in the DVB-T.2 standard includes two types of code length N of 64800 bits and 16200 bits. There is an LDPC code.
  • the coding rate of the LDPC code having a code length N of 64,800 bits is: As described with reference to FIGS. 12 and 13, there are eleven.
  • the LDPC code having a code length N of 64,800 bits indicates that the number of columns P of the cyclic structure unit is about the parity length M.
  • the numbers, 360 is defined as one of the divisors except 1 and 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 + 1th code bit is represented as the K + Py + x + 1th code. Interleave at bit position.
  • 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 for 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 to be described later
  • there is only one element of 1 it is an element of 0
  • a pseudo cyclic structure is used instead of a (complete) 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.
  • the 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 post-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
  • 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
  • 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,
  • 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
  • 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
  • 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,
  • 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 and the start position of the 6th column are the position where the address is 3
  • the start position of the 7th column is the position where the address is 4
  • the start position of the 8th column is The address 4 position
  • the 9th column write start position are the address 5 position
  • the 10th column write start position are the address 7 position.
  • 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 target data supplied to 115 is subjected to LDPC encoding, and the resulting LDPC code is supplied to the bit interleaver 116 (FIG. 9).
  • 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 check matrix H generated by the check matrix generation unit 613 from the storage unit 602, calculates parity bits for the information bits read by the information bit read unit 614 based on a predetermined formula, Generate a word (LDPC code).
  • LDPC code Generate a word
  • 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, and the processes in steps S201 to S206 are hereinafter performed. 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. It is possible to perform digital broadcasting for portable terminals by using as an 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.
  • the LDPC encoder (FIGS. 8 and 31) 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
  • an LDPC code with good performance can be found among the LDPC codes belonging to the ensemble.
  • the 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.
  • a modulation method with a relatively small number of signal points such as 16QAM or 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 threshold performance improves (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 subsequent KY column is Y
  • the subsequent M-1 column is The column weight
  • the column weight is 1 for the last column.
  • 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 (FIG. 8, FIG. 31) 115, when performing LDPC encoding to a portable LDPC code using parity check matrix H (obtained from the parity check matrix initial value table) shown in FIGS.
  • parity check matrix H obtained from the parity check matrix initial value table
  • 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.
  • 16QAM and 64QAM with a relatively small number of signal points are employed as described above.
  • 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 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.
  • the portable LDPC code having a code length N of 4k bits in FIGS. 35 to 43 by performing column twist interleaving as described above, a plurality of variables corresponding to a plurality of variable nodes connected to the same check node are performed. It is possible to avoid that the code bit is one symbol of 16QAM or 64QAM (contained in the same symbol), and as a result, it is possible to improve the decoding performance on a communication path with an erasure. it can.
  • a demultiplexer 25 As measures for improving the tolerance against 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 allocation rule.
  • the demultiplexer 25 performs a replacement process on the LDPC code defined in DVB-T.2 or the like (hereinafter also referred to as a defined code) by the current method. In this case, the replacement process will be described.
  • FIG. 50 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. 50 is an LDPC code in which the code length N is 64800 bits, the coding rate is 3/5, the modulation scheme 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.
  • FIG. 50B 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.
  • 50C shows the current scheme when the LDPC code is a defined code with a code length N of 64,800 bits, a coding rate of 3/5, a modulation scheme of 256QAM, and a multiple b of 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. 51 shows an example of the current system replacement process 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. 51 is an LDPC code in which an LDPC code is an LDPC code having a code length N of 16200 bits and a coding rate of 3/5, a modulation scheme of 16QAM, and a multiple b of 2.
  • An example of the replacement process of the current method is shown.
  • the replacement unit 32 performs replacement for assigning the code bits b 0 to b 7 to the symbol bits y 0 to y 7 as in the case of FIG. 50A described above.
  • 51B shows the current scheme when the LDPC code is a defined code with a code length N of 16200 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 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. 50 described above.
  • 51C shows an LDPC code in which the code length N is 16200 bits, the coding rate is 3/5, the code 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 16QAM and 64QAM with few signal points are adopted, so the new replacement scheme will be described for each of the modulation schemes of 16QAM and 64QAM.
  • 52 to 54 are diagrams for explaining the new replacement method.
  • the replacement unit 32 of the demultiplexer 25 performs replacement of the mb bit code bit 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 sign bit has a difference in error probability
  • the symbol bit also has a difference in error probability.
  • 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. 52 shows a code bit in 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, 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. 53 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 the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • the combination of the code 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 group set information (Gb1, Gy3, 1) 1 bit of the code bit of the code bit group Gb1 having the highest error probability is assigned to 1 bit of the symbol bit of the symbol bit group Gy3 having the third highest error probability.
  • the group set information (Gb2, Gy3, 2) 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 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.
  • 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. 54 shows an example of exchanging code bits in accordance with the assignment rule of FIG.
  • a in FIG. 54 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 further, the modulation scheme is 64QAM and the multiple b is 2. 53 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 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. 54B 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, a modulation scheme of 64QAM, and a multiple b of 2.
  • N code length
  • N code length
  • 64QAM modulation scheme
  • b multiple b of 2
  • 54A and 54B are all assigned to the symbol bit y # i in accordance with the assignment rule of FIG. 53 (observing the assignment rule). ing).
  • FIG. 55 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 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 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. 56 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.
  • 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. 57 shows an example of exchanging code bits in accordance with the assignment rule of FIG.
  • a in FIG. 57 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.
  • 56 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. 57B 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/3, and further when the modulation scheme is 64QAM and the multiple b is 2.
  • 56 shows a second example of exchanging code bits according to the allocation rule of FIG.
  • FIG. 58 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, 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 b4 belong to code bit group Gb2
  • code bits b5 to b11 belong to code bit group Gb3.
  • 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. 59 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.
  • the 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. 60 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 60 is an LDPC code that is a portable LDPC code with a code length N of 4320 bits and a coding rate of 5/12, and further, a modulation scheme of 64QAM and a multiple b of 2 59 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. 60B 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, a modulation scheme of 64QAM, and a multiple b of 2.
  • 60 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 61 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 group Gb1 includes code bit b0
  • code bit group Gb2 includes code bits b1 to b5
  • code bit group Gb3 includes code bits b6 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. 62 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, the modulation method is 64QAM and the multiple b is 2. Is shown.
  • the group set information (Gb1, Gy1, 1), (Gb2, Gy3, 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. 63 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 63 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.
  • 62 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, 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.
  • 63B 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.
  • 62 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 64 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 7/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 group Gb1 includes code bit b0
  • code bit group Gb2 includes code bits b1 to b6
  • code bit group Gb3 includes 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. 65 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 7/12, and further the modulation scheme is 64QAM and the multiple b is 2. Is shown.
  • the 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. 66 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 66 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.
  • 65 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, 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.
  • 66B 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.
  • the modulation scheme is 64QAM and the multiple b is 2.
  • a second example of exchanging code bits according to the allocation rule of FIG. 65 is shown.
  • FIG. 67 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 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 b7 belong to code bit group Gb2
  • code bits b8 to b11 belong to code bit group Gb3.
  • 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. 68 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 2/3, and furthermore, 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. 69 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 69 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.
  • 68 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.
  • 69B 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, and further, when the modulation scheme is 64QAM and the multiple b is 2.
  • 68 shows a second example of code bit replacement according to 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 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. 70 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 3/4, 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 b8 belong to code bit group Gb2
  • code bits b9 to b11 belong to code bit group Gb3.
  • 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. 71 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 3/4, 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,4), (Gb2, Gy1, 3), (Gb3, Gy2, 2), (Gb3, Gy1, 1) is defined.
  • FIG. 72 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 72 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.
  • 71 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. 72B 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, a modulation scheme of 64QAM, and a multiple b of 2.
  • 71 shows a second example of code bit replacement according to the allocation rule of FIG. 71.
  • 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. 73 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. 74 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.
  • the 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. 75 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 75 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.
  • 74 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.
  • FIG. 75B 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.
  • 74 shows a second example of code bit replacement according to the allocation 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. 76 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 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 Gb1 includes the code bit b0
  • the code bit group Gb2 includes the code bits b1 to b10
  • the code bit group Gb3 includes the code bit b11.
  • 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. 77 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 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. 78 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 78 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 method is 64QAM and the multiple b is 2.
  • 77 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. 78B 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.
  • 77 shows a second example of code bit replacement according to the allocation rule of FIG. 77.
  • 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. 79 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 1/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, Gb3 as shown in A of FIG. 79 according to the difference in error probability. Can be grouped.
  • code bit b0 belongs to code bit group Gb1
  • code bit b1 belongs to code bit group Gb2
  • code bits b2 to b7 belong to code bit group Gb3.
  • 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. 80 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, a modulation scheme of 16QAM, and a multiple b of 2. Is shown.
  • group set information (Gb1, Gy2, 1), (Gb2, Gy2, 1), (Gb3, Gy2, 2), (Gb3, Gy1, 4) are defined in the allocation rule of FIG.
  • FIG. 81 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 81 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.
  • 80 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.
  • FIG. 81B shows 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 further when the modulation scheme is 16QAM and the multiple b is 2.
  • 80 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. 82 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. 83 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.
  • FIG. 84 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 84 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.
  • 83 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.
  • 84B shows a case where the LDPC code is a portable LDPC code with 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.
  • 83 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 85 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 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.
  • 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. 86 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 16QAM and the multiple b is 2. Is shown.
  • 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. 87 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 87 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 16QAM and the multiple b is 2.
  • 86 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.
  • 87B shows a case where 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.
  • 86 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 88 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 1/2, 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 three code bit groups Gb1, Gb2, and Gb3 as shown in A of FIG. 88 according to the difference in error probability. Can be grouped.
  • code bit b0 belongs to code bit group Gb1
  • code bits b1 to b3 belong to code bit group Gb2
  • code bits b4 to b7 belong to code bit group Gb3.
  • 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. 89 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/2, and further, when the modulation scheme is 16QAM and the multiple b is 2. Is shown.
  • 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. 90 shows an example of exchanging code bits according to the assignment rule of FIG.
  • a in FIG. 90 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/2, and the modulation scheme is 16QAM and the multiple b is 2.
  • 89 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 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.
  • 90B 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 method is 16QAM and the multiple b is 2.
  • 89 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 91 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 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. 92 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 method 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. 93 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 93 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.
  • 92 shows a first example of exchanging code bits 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.
  • FIG. 93B 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.
  • 92 shows a second example of code bit replacement according to the allocation rule of FIG.
  • FIG. 94 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 scheme 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 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. 95 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.
  • 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. 96 shows an example of exchanging code bits according to the assignment rule of FIG.
  • a in FIG. 96 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 2/3, and further, the modulation method is 16QAM and the multiple b is 2.
  • 95 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.
  • FIG. 96B 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, and further when the modulation method is 16QAM and the multiple b is 2.
  • FIG. 96 shows a second example of exchanging code bits according to the allocation rule of FIG. 95.
  • FIG. 97 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 3/4, 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 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 b5
  • code bit group Gb3 includes code bits b6 and 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. 98 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 3/4, and further, when 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. 99 shows an example of exchanging code bits according to the assignment rule of FIG.
  • a in FIG. 99 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. 98 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. 99B 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 method is 16QAM and the multiple b is 2.
  • FIG. 99 shows a second example of code bit replacement according to the allocation rule of FIG. 98.
  • FIG. 100 shows code bits 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 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 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 contains the sign bit b0
  • the sign bit group Gb2 contains the sign bit b1
  • the sign bit group Gb3 contains the sign bits b2 to b5
  • the sign bit group Gb4 contains 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. 101 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. 102 shows an example of exchanging code bits according to the allocation rule of FIG.
  • a in FIG. 102 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 scheme is 16QAM and the multiple b is 2.
  • 101 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. 102 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 16QAM and the multiple b is 2.
  • 101 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 103 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.
  • the symbol bit group Gy1 includes symbol bits y0, y1, y4, and y5
  • the symbol bit group Gy2 includes symbol bits y2, y3, y6, and y7. Belong to each.
  • FIG. 104 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 when 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) 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 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. 105 shows an example of exchanging code bits according to the assignment rule of FIG.
  • a in FIG. 105 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 method is 16QAM and the multiple b is 2.
  • 104 shows a first example of code bit replacement in accordance with 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. 105 is an LDPC code in which the code length N is 4320 bits and the portable LDPC code has an encoding rate of 11/12, and the modulation scheme is 16QAM, and the multiple b is 2.
  • 104 shows a second example of code bit replacement according to the assignment rule of FIG.
  • FIG. 123 shows the result of a BER (Bit Error Rate) simulation 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.
  • the BER is improved as a whole or at a certain level of E s / N 0 compared to the case where the replacement process is not performed. Therefore, it can be seen that the tolerance to errors is improved.
  • a dedicated bit allocation pattern can be employed for the LDPC code.
  • the bit allocation pattern mounted on the transmission device 11 can be reduced.
  • the code bit b0 shown in A of FIGS. 57, 60, 63, and 66 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.
  • FIG. 124 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 configured by the symbols supplied from the OFDM processing unit 151, and converts the symbol of the target data and the signaling symbol obtained as a result thereof into a frequency deinterleaver ( Frequency Deinterleaver) 161 and 153, respectively.
  • processing frame interpretation
  • Frequency Deinterleaver Frequency Deinterleaver
  • the frequency deinterleaver 153 performs frequency deinterleaving for each symbol on the symbols from the frame management unit 152 and supplies the symbols to a QAM decoder (QAM decoder) 154.
  • QAM decoder QAM decoder
  • the QAM decoder 154 performs demapping (signal point constellation decoding) on the symbol (symbol arranged at the signal point) from the frequency deinterleaver 153 and performs orthogonal demodulation, and the resulting data (LDPC code) (LDPC decoder) 155 is supplied.
  • 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 the resulting signaling.
  • the frequency deinterleaver 161 performs frequency deinterleaving for each symbol on the 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 for each symbol on the data (symbol) from the MISO / MIMO decoder 162 and supplies the data to a 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 the BB descrambler 168.
  • 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. 125 is a block diagram showing a configuration example of the bit deinterleaver 165 in FIG.
  • the bit deinterleaver 165 includes a multiplexer (MUX) 54 and a column twist deinterleaver 55, and performs (bit) deinterleaving of the symbol bits of the symbols from the QAM decoder 164 (FIG. 124).
  • MUX multiplexer
  • bit deinterleaver 55 performs (bit) deinterleaving of the symbol bits of the symbols from the QAM decoder 164 (FIG. 124).
  • 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 deinterleave as the rearrangement process performed by the column twist interleaver 24 in 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 (reverse processing of parity interleaving), ie, 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.
  • 126 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.
  • 127 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.
  • 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 which are divided by six and the remainder is 1, the first, second, third, fourth, and fifth rows respectively.
  • 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 61st column (parity matrix) and the 61st column, the 67th column, the 73rd column, the 79th column, and the 85th column whose remainder is 1 are divided by 61, respectively.
  • 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. 127 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 transformed parity check matrix H ′ in FIG. 128 is a parity check matrix of the LDPC code c ′ obtained by performing the column replacement of the equation (12) on the LDPC code c of the original parity check matrix H.
  • the column replacement of equation (12) is performed on the LDPC code c of the original check matrix H, and the LDPC code c ′ after the column replacement is decoded using the conversion check matrix H ′ of FIG. 128 (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. 129 shows the conversion parity check matrix H ′ of FIG. 128 with an interval in units of 5 ⁇ 5 matrices.
  • 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 A sum of two or more of a unit matrix, a quasi-unit matrix, or a shift matrix (hereinafter, referred to as sum matrix), 5 It is represented by a combination of ⁇ 5 zero matrices.
  • the conversion check matrix H ′ in FIG. 129 includes a 5 ⁇ 5 unit matrix, a quasi-unit matrix, a shift matrix, a sum matrix, and a zero matrix. Therefore, these 5 ⁇ 5 matrices constituting the conversion check matrix H ′ are hereinafter referred to as “configuration matrices” as appropriate.
  • FIG. 130 is a block diagram illustrating a configuration example of a decoding device that performs such decoding.
  • FIG. 130 decodes the LDPC code using at least the transformed parity check matrix H ′ of FIG. 129 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 device in FIG. 130 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, 18 FIFOs 304 1 to 304 18 the edge data storage memory 304 consisting of, FIFOs 304 1 to the selector 305 for selecting 304 18, the reception data memory 306 for storing received information, 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. 129 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 configuration matrix is a P ⁇ P unit matrix having a weight of 1, a quasi-unit matrix in which one or more of its elements is 0, or a unit
  • the matrix or the quasi-unit matrix is expressed in the form of a plurality of shift matrices obtained by cyclically shifting, the data corresponding to the position of the unit matrix, quasi-unit matrix, or 1 of the shift matrix whose weight is 1 ( Messages corresponding to branches belonging to the unit matrix, the quasi-unit matrix, or the 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. 129 '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 configuration matrix is a P ⁇ P unit matrix having a weight of 1, a quasi-unit matrix in which one or more of its elements is 0, or a unit
  • the matrix or the quasi-unit matrix is expressed in the form of a plurality of shift matrices obtained by cyclically shifting, the data corresponding to the position of the unit matrix, quasi-unit matrix, or 1 of the shift matrix whose weight is 1 ( unit matrix, quasi unit matrix or message corresponding to the branch belonging to 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 data) indicating to which row the five message D 311 supplied from the preceding cyclic shift circuit 308 belongs to the conversion check matrix H ′. ) According to D312, the FIFO for storing the data is selected from the FIFOs 300 1 to 300 6 , and the five messages D311 are collectively stored in the selected FIFO in order. 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 according to the select signal D307, and the variable node calculation unit 307 and the decoded word calculation unit are used as the message D308. 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. 130 decodes the LDPC code a predetermined number of times, and then obtains and outputs a final decoding result in the decoded word calculation unit 309 and the decoded data rearranging unit 311.
  • 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 rearranging unit 311 rearranges the order of the decoded data D315 supplied from the decoded word calculation unit 309 by performing the column replacement in the formula (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.
  • 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 the equation (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. 130 except that the column replacement of Expression (12) is not performed.
  • FIG. 131 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 in FIG. 130 except that the received data rearrangement unit 310 in FIG. 130 is not provided. Except for the above, since the same processing as that of the decoding device of FIG. 130 is performed, the description thereof is omitted.
  • the scale can be reduced as compared with the decoding apparatus of FIG.
  • 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 and the divisor q is M / P, respectively.
  • the LDPC decoder 166 of FIG. 131 performs check node computation and variable node computation on such LDPC code. It is also applicable to LDPC decoding by performing P at the same time.
  • FIG. 132 is a diagram for explaining processing of the multiplexer 54 constituting the bit deinterleaver 165 of FIG.
  • a in FIG. 132 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. 132 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. 133 is a diagram for explaining processing of the column twist deinterleaver 55 configuring the bit deinterleaver 165 of FIG.
  • FIG. 133 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. 134 is a block diagram showing another configuration example of the bit deinterleaver 165 of FIG.
  • bit deinterleaver 165 in FIG. 134 has the same configuration as that in FIG. 125 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.
  • the multiplexer 54 replaces the LDPC code from the QAM decoder 164 by reverse replacement processing (reverse processing of the replacement processing) corresponding to the replacement processing performed by the demultiplexer 25 of the transmission device 11, that is, the replacement processing. Then, a reverse permutation process is performed to return the position of the code bit to the original position, and the resulting LDPC code is supplied to the column twist deinterleaver 55.
  • reverse replacement processing reverse processing of the replacement processing
  • the column twist deinterleaver 55 performs column twist deinterleave corresponding to the column twist interleave as the rearrangement process performed by the column twist interleaver 24 of the transmission device 11 for the LDPC code from the multiplexer 54.
  • the LDPC code obtained as a result of the column twist deinterleave is supplied from the column twist deinterleaver 55 to the parity deinterleaver 1011.
  • the parity deinterleaver 1011 targets the code bit after the column twist deinterleave in the column twist deinterleaver 55, and performs parity deinterleave corresponding to the parity interleave performed by the parity interleaver 23 of the transmission device 11 (inverse of parity interleave). In other words, parity deinterleaving is performed to return the code bits of the LDPC code whose arrangement has been changed by parity interleaving to the original order.
  • the LDPC code obtained as a result of parity deinterleaving is supplied from the parity deinterleaver 1011 to the LDPC decoder 166.
  • the LDPC decoder 166 includes the LDPC code subjected to the reverse permutation process, the column twist deinterleave, and the parity deinterleave, that is, the LDPC encoding according to the check matrix H.
  • the LDPC code obtained by is supplied.
  • the LDPC decoder 166 performs the LDPC decoding of the LDPC code from the bit deinterleaver 165, and performs parity interleaving on the parity check matrix H itself or the parity check matrix H used by the LDPC encoder 115 of the transmission apparatus 11 for the LDPC encoding. Is performed using a conversion parity check matrix obtained by performing at least column replacement corresponding to the above, and data obtained as a result is output as a decoding result of LDPC target data.
  • the LDPC decoder 166 since the LDPC code obtained by LDPC encoding according to the check matrix H is supplied from the bit deinterleaver 165 (its parity deinterleaver 1011) to the LDPC decoder 166, the LDPC When the LDPC decoding of the code is performed using the parity check matrix H itself used for the LDPC encoding by the LDPC encoder 115 of the transmission apparatus 11, the LDPC decoder 166, for example, a message (check node message, variable node message) Decoding device that performs LDPC decoding by full serial decoding (full serial decoding) method that sequentially performs operations of one node at a time, and full parallel decoding (full parallel) that performs message operations on all nodes simultaneously (in parallel) A decoding apparatus that performs LDPC decoding by a decoding method can be used.
  • LDPC decoder 166 performs LDPC decoding of an LDPC code, and a transform check obtained by performing at least column replacement corresponding to parity interleaving on parity check matrix H used by LDPC encoder 115 of transmitting apparatus 11 for LDPC encoding
  • the LDPC decoder 166 is an architecture decoding device that simultaneously performs P (or a divisor other than 1 of P) check node operations and variable node operations.
  • the decoding apparatus (FIG. 130) having the received data rearrangement unit 310 that rearranges the code bits of the LDPC code by performing column replacement similar to the column replacement for obtaining the check matrix on the LDPC code. it can.
  • a multiplexer 54 that performs reverse permutation processing, a column twist deinterleaver 55 that performs column twist deinterleaving, and a parity deinterleaver 1011 that performs parity deinterleaving are separately illustrated.
  • the multiplexer 54, the column twist deinterleaver 55, and the parity deinterleaver 1011 are configured, the parity interleaver 23, the column twist interleaver 24, and the demultiplexer 25 of the transmission device 11 Similarly, it can be configured integrally.
  • FIG. 135 is a block diagram illustrating a first configuration example of a receiving system applicable to the receiving device 12.
  • the reception system includes an acquisition unit 1101, a transmission path decoding processing unit 1102, and an information source decoding processing unit 1103.
  • the acquisition unit 1101 obtains a signal including an LDPC code obtained by LDPC encoding at least LDPC target data such as program image data and audio data, for example, terrestrial digital broadcasting, satellite digital broadcasting, CATV network, the Internet, and the like. Obtained via a transmission line (not shown) such as a network of the network and supplied to the transmission line decoding processing unit 1102.
  • the acquisition unit 1101 when the signal acquired by the acquisition unit 1101 is broadcast from a broadcasting station via a terrestrial wave, a satellite wave, a CATV (Cable Television) network, or the like, the acquisition unit 1101 includes a tuner, It consists of STB (Set Top Box).
  • the acquisition unit 11 When the signal acquired by the acquisition unit 1101 is transmitted from a web server by multicast such as IPTV (Internet Protocol Television), for example, the acquisition unit 11 includes, for example, a NIC (Network Interface Card). Network I / F (Inter face).
  • the transmission path decoding processing unit 1102 performs a transmission path decoding process including at least processing for correcting an error occurring in the transmission path on the signal acquired by the acquisition unit 1101 via the transmission path, and obtains a signal obtained as a result thereof.
  • the information is supplied to the information source decoding processing unit 1103.
  • the signal acquired by the acquisition unit 1101 via the transmission path is a signal obtained by performing at least error correction coding for correcting an error occurring in the transmission path.
  • the transmission path decoding processing unit 1102 Such a signal is subjected to transmission path decoding processing such as error correction processing, for example.
  • examples of error correction coding include LDPC coding and BCH coding.
  • at least LDPC encoding is performed as error correction encoding.
  • the transmission path decoding process may include demodulation of the modulation signal.
  • the information source decoding processing unit 1103 performs an information source decoding process including at least a process of expanding the compressed information into the original information on the signal subjected to the transmission path decoding process.
  • the signal acquired by the acquisition unit 1101 via the transmission path may be subjected to compression coding for compressing information in order to reduce the amount of data such as images and sounds as information.
  • the information source decoding processing unit 1103 performs information source decoding processing such as processing (decompression processing) for expanding the compressed information to the original information on the signal subjected to the transmission path decoding processing.
  • the information source decoding processing unit 1103 performs a process of expanding the compressed information to the original information. I will not.
  • examples of the decompression process include MPEG decoding.
  • the transmission path decoding process may include descrambling and the like in addition to the decompression process.
  • the acquisition unit 1101 for example, compression coding such as MPEG coding is performed on data such as images and sound, and further error correction codes such as LDPC coding are performed.
  • the processed signal is acquired via the transmission path and supplied to the transmission path decoding processing unit 1102.
  • the transmission path decoding processing unit 1102 for example, processing similar to that performed by the orthogonal demodulation unit 51, QAM decoder 164, bit deinterleaver 165, and LDPC decoder 166 (or LDPC decoder 166) is performed on the signal from the acquisition unit 1101.
  • the signal obtained as a result of the transmission path decoding process is supplied to the information source decoding processing unit 1103.
  • the information source decoding processing unit 1103 performs information source decoding processing such as MPEG decoding on the signal from the transmission path decoding processing unit 1102 and outputs the resulting image or sound.
  • the reception system of FIG. 135 as described above can be applied to, for example, a television tuner that receives a television broadcast as a digital broadcast.
  • the acquisition unit 1101, the transmission path decoding processing unit 1102, and the information source decoding processing unit 1103 are each configured as one independent device (hardware (IC (Integrated Circuit), etc.)) or software module). Is possible.
  • the set of the unit 1103, the acquisition unit 1101, the transmission path decoding processing unit 1102, and the information source decoding processing unit 1103 can be configured as one independent device.
  • FIG. 136 is a block diagram illustrating a second configuration example of the receiving system applicable to the receiving device 12.
  • the reception system of FIG. 136 includes an acquisition unit 1101, a transmission path decoding processing unit 1102, and an information source decoding processing unit 1103, and is common to the case of FIG. 135, in that an output unit 1111 is newly provided. This is different from the case of FIG.
  • the output unit 1111 is, for example, a display device that displays an image or a speaker that outputs audio, and outputs an image, audio, or the like as a signal output from the information source decoding processing unit 1103. That is, the output unit 1111 displays an image or outputs sound.
  • the reception system of FIG. 136 as described above can be applied to, for example, a TV (television receiver) that receives a television broadcast as a digital broadcast, a radio receiver that receives a radio broadcast, or the like.
  • a TV television receiver
  • a radio receiver that receives a radio broadcast
  • the signal output from the transmission path decoding processing unit 1102 is supplied to the output unit 1111.
  • FIG. 137 is a block diagram illustrating a third configuration example of the receiving system applicable to the receiving device 12.
  • the reception system of FIG. 137 is common to the case of FIG. 135 in that it includes an acquisition unit 1101 and a transmission path decoding processing unit 1102.
  • the receiving system of FIG. 137 is different from the case of FIG. 135 in that the information source decoding processing unit 1103 is not provided and the recording unit 1121 is newly provided.
  • the recording unit 1121 records a signal (for example, TS packet of MPEG TS) output from the transmission path decoding processing unit 1102 on a recording (storage) medium such as an optical disk, a hard disk (magnetic disk), or a flash memory (memory). )
  • a recording (storage) medium such as an optical disk, a hard disk (magnetic disk), or a flash memory (memory).
  • the reception system of FIG. 137 as described above can be applied to a recorder or the like for recording a television broadcast.
  • the receiving system is configured by providing an information source decoding processing unit 1103, and the information source decoding processing unit 1103 performs a signal after the information source decoding processing, that is, an image obtained by decoding, Audio can be recorded by the recording unit 1121.
  • FIG. 138 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
  • the program can be recorded in advance on a hard disk 705 or ROM 703 as a recording medium built in the computer.
  • the program is stored temporarily on a removable recording medium 711 such as a flexible disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto Optical) disc, a DVD (Digital Versatile Disc), a magnetic disc, or a semiconductor memory. It can be stored permanently (recorded).
  • a removable recording medium 711 can be provided as so-called package software.
  • the program can be wirelessly transferred from a download site to a computer via a digital satellite broadcasting artificial satellite, LAN (Local Area Network),
  • the program can be transferred to a computer via a network such as the Internet, and the computer can receive the program transferred in this manner by the communication unit 708 and install it in the built-in hard disk 705.
  • the computer has a CPU (Central Processing Unit) 702 built-in.
  • An input / output interface 710 is connected to the CPU 702 via a bus 701, and the CPU 702 operates an input unit 707 including a keyboard, a mouse, a microphone, and the like by the user via the input / output interface 710.
  • a program stored in a ROM (Read Only Memory) 703 is executed accordingly.
  • the CPU 702 may be a program stored in the hard disk 705, a program transferred from a satellite or a network, received by the communication unit 708 and installed in the hard disk 705, or a removable recording medium 711 installed in the drive 709.
  • a program read and installed in the hard disk 705 is loaded into a RAM (Random Access Memory) 704 and executed.
  • the CPU 702 performs processing according to the above-described flowchart or processing performed by the configuration of the above-described block diagram.
  • the CPU 702 outputs the processing result from an output unit 706 configured with an LCD (Liquid Crystal Display), a speaker, or the like via an input / output interface 710, for example, or from a communication unit 708 as necessary. Transmission and further recording on the hard disk 705 are performed.
  • processing steps for describing a program for causing the computer to perform various processes do not necessarily have to be processed in time series in the order described in the flowcharts, but in parallel or individually. This includes processing to be executed (for example, parallel processing or processing by an object).
  • the program may be processed by one computer, or may be processed in a distributed manner by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.

Landscapes

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

Abstract

Cette invention se rapporte à un dispositif de traitement de données qui présente la capacité d'améliorer la tolérance vis-à-vis d'erreurs et à un procédé de traitement de données. Un codeur LDPC (115) code des codes LDPC qui présentent une longueur de 4 320 bits et l'un de neuf débits de code parmi 1/4, 1/3, 5/12, 1/2, 7/12, 2/3, 3/4, 5/6 ou 11/12. Une matrice de contrôle de code LDPC H est configurée en agençant des éléments qui contiennent un 1 dans une matrice d'informations spécifiée par une table de valeur initiale de matrice de contrôle qui indique les positions des éléments qui contiennent un 1 dans une matrice d'informations correspondant à la longueur des informations sur la base de la longueur de code et du débit de code de la matrice de contrôle H, à chaque cycle de 360 colonnes dans la direction des colonnes, de même que pour la matrice de contrôle stipulée par DVB-T.2. Une table de valeur initiale de matrice de contrôle sert à des diffusions générales numériques pour des terminaux portables, par exemple. Le dispositif de traitement de données et le procédé de traitement de données peuvent être appliqués afin d'effectuer un codage LDPC.
PCT/JP2011/053452 2010-02-26 2011-02-18 Dispositif de traitement de données et procédé de traitement de données WO2011105288A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-041155 2010-02-26
JP2010041155A JP2011176783A (ja) 2010-02-26 2010-02-26 データ処理装置、及びデータ処理方法

Publications (1)

Publication Number Publication Date
WO2011105288A1 true WO2011105288A1 (fr) 2011-09-01

Family

ID=44506700

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/053452 WO2011105288A1 (fr) 2010-02-26 2011-02-18 Dispositif de traitement de données et procédé de traitement de données

Country Status (2)

Country Link
JP (1) JP2011176783A (fr)
WO (1) WO2011105288A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012029614A1 (fr) * 2010-09-03 2012-03-08 ソニー株式会社 Dispositif et procédé de traitement de données
WO2012036077A1 (fr) * 2010-09-16 2012-03-22 ソニー株式会社 Dispositif de traitement de données et procédé de traitement de données

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101929145B1 (ko) 2013-06-12 2018-12-13 소니 주식회사 데이터 처리 장치, 및 데이터 처리 방법
CN105531935B (zh) 2013-09-20 2020-03-31 索尼公司 数据处理装置和数据处理方法
MX2016003220A (es) 2013-09-20 2016-06-07 Sony Corp Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
JP2015170912A (ja) 2014-03-05 2015-09-28 ソニー株式会社 データ処理装置、及び、データ処理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009069628A1 (fr) * 2007-11-26 2009-06-04 Sony Corporation Dispositif et procédé de traitement de données

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009069628A1 (fr) * 2007-11-26 2009-06-04 Sony Corporation Dispositif et procédé de traitement de données

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Frame structure channel coding and modulationfor a second generation digital terrestrialtelevision broadcasting system (DVB-T2) ETSI EN 302 755 V1.1.1", DIGITAL VIDEO BROADCASTING (DVB), September 2009 (2009-09-01), pages 117 - 125 *
"Frame structurechannel coding and modulation for a secondgeneration digital terrestrial televisionbroadcasting system (DVB-T2) DVB Document A122", DIGITAL VIDEO BROADCASTING (DVB), June 2010 (2010-06-01), pages 127 - 135 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012029614A1 (fr) * 2010-09-03 2012-03-08 ソニー株式会社 Dispositif et procédé de traitement de données
JP2012054853A (ja) * 2010-09-03 2012-03-15 Sony Corp データ処理装置、及びデータ処理方法
US9106256B2 (en) 2010-09-03 2015-08-11 Sony Corporation Data processing device and data processing method for encoding/decoding information bits
WO2012036077A1 (fr) * 2010-09-16 2012-03-22 ソニー株式会社 Dispositif de traitement de données et procédé de traitement de données
JP2012065131A (ja) * 2010-09-16 2012-03-29 Sony Corp データ処理装置、及びデータ処理方法
US8949691B2 (en) 2010-09-16 2015-02-03 Sony Corporation Data processing device and data processing method

Also Published As

Publication number Publication date
JP2011176783A (ja) 2011-09-08

Similar Documents

Publication Publication Date Title
JP5630282B2 (ja) データ処理装置、及び、データ処理方法
JP5672489B2 (ja) データ処理装置、及び、データ処理方法
JP5664919B2 (ja) データ処理装置、及び、データ処理方法
JP5648852B2 (ja) データ処理装置、及び、データ処理方法
JP5630283B2 (ja) データ処理装置、及び、データ処理方法
JP5500379B2 (ja) データ処理装置、及びデータ処理方法
JP5601182B2 (ja) データ処理装置、及びデータ処理方法
JP5630278B2 (ja) データ処理装置、及びデータ処理方法
JP5637393B2 (ja) データ処理装置、及び、データ処理方法
WO2012036077A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2011105287A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2012098984A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2012002238A1 (fr) Dispositif et procédé de traitement de données
WO2011105288A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2012098985A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2011105219A1 (fr) Dispositif de traitement de données et procédé de traitement de données
JP2011182073A (ja) データ処理装置、及びデータ処理方法
WO2012050020A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2011105289A1 (fr) Dispositif de traitement de données et procédé de traitement de données
WO2011158749A1 (fr) Dispositif de traitement de données et procédé de traitement de données
JP2012235269A (ja) データ処理装置、及び、データ処理方法
WO2012002237A1 (fr) Dispositif et procédé de traitement de données
JP2012239130A (ja) データ処理装置、及び、データ処理方法

Legal Events

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

Ref document number: 11747252

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11747252

Country of ref document: EP

Kind code of ref document: A1