WO2019087774A1 - 送信装置、送信方法、受信装置、及び、受信方法 - Google Patents
送信装置、送信方法、受信装置、及び、受信方法 Download PDFInfo
- Publication number
- WO2019087774A1 WO2019087774A1 PCT/JP2018/038586 JP2018038586W WO2019087774A1 WO 2019087774 A1 WO2019087774 A1 WO 2019087774A1 JP 2018038586 W JP2018038586 W JP 2018038586W WO 2019087774 A1 WO2019087774 A1 WO 2019087774A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- matrix
- parity check
- check matrix
- parity
- bits
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/033—Theoretical methods to calculate these checking codes
- H03M13/036—Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
- H03M13/1165—QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/255—Error 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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/2703—Coding, 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/271—Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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/2778—Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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/2906—Coding, 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic 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/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
Definitions
- the present technology relates to a transmission device, a transmission method, a reception device, and a reception method, and in particular, a transmission device and a transmission method that can ensure good communication quality, for example, in data transmission using an LDPC code. , A receiving apparatus, and a receiving method.
- LDPC Low Density Parity Check codes
- DVB Digital Video Broadcasting
- DVB-T. 2 Digital Video Broadcasting
- DVB-C. 2 Digital Broadcasting
- ATSC Advanced Television Systems Committee
- ATSC Standard Physical Layer Protocol (A / 322), 7 September 2016
- the LDPC code is a symbol (symbolized) of orthogonal modulation (digital modulation) such as QPSK (Quadrature Phase Shift Keying), and the symbol is a signal point of orthogonal modulation. It is mapped and sent.
- orthogonal modulation digital modulation
- QPSK Quadrature Phase Shift Keying
- the present technology has been made in view of such a situation, and aims to ensure good communication quality in data transmission using an LDPC code.
- the first transmitting apparatus / transmission method of the present technology is an encoding unit / step for performing LDPC encoding based on a parity check matrix of an LDPC code having a code length N of 17280 bits and a coding rate r of 13/16.
- the LDPC code includes information bits and parity bits
- the parity check matrix includes an information matrix unit corresponding to the information bits and a parity matrix unit corresponding to the parity bits
- the information matrix unit is a parity check matrix.
- the parity check matrix initial value table is a table that represents the position of one element of the information matrix unit every 360 columns, 225 274 898 916 1020 1055 1075 1179 1185 1343 1376 1569 1828 1972 2852 2957 3183 548 602 628 928 1077 1474 1557 1598 1935 1981 2110 2472 2543 2594 2721 2884 2981 59 69 518 900 1158 1325 1367 1480 1744 2069 2119 2406 2757 2883 2914 2966 3232 1330 1369 1712 2133 2206 2487 2596 2606 2612 2666 2726 2733 2754 2811 2948 3030 391 542 689 748 810 1716 1927 2006 2296 2340 2357 2514 2797 2887 2896 3226 256 410 799 1126 1377 1409 1518 1619 1829 2037 2303 2324 2472 2475 2874 2992 862 1522 1905 809 842 945 561 1001 2857 2132 2592 29
- LDPC encoding is performed based on a parity check matrix of an LDPC code having a code length N of 17280 bits and a coding rate r of 13/16.
- the LDPC code includes information bits and parity bits
- the parity check matrix includes an information matrix unit corresponding to the information bits and a parity matrix unit corresponding to the parity bits
- the information matrix unit includes an initial value of a parity check matrix.
- the parity check matrix initial value table is a table representing the position of one element of the information matrix unit for every 360 columns, 225 274 898 916 1020 1055 1075 1179 1185 1343 1376 1569 1828 1972 2852 2957 3183 548 602 628 928 1077 1474 1557 1598 1935 1981 2110 2472 2543 2594 2721 2884 2981 59 69 518 900 1158 1325 1367 1480 1744 2069 2119 2406 2757 2883 2914 2966 3232 1330 1369 1712 2133 2206 2487 2596 2606 2612 2666 2726 2733 2754 2811 2948 3030 391 542 689 748 810 1716 1927 2006 2296 2340 2357 2514 2797 2887 2896 3226 256 410 799 1126 1377 1409 1518 1619 1829 2037 2303 2324 2472 2475 2874 2992 862 1522 1905 809 842 945 561 1001 2857 2132 2592 2905
- the first receiver / reception method of the present technology includes an encoding step of performing LDPC encoding based on a parity check matrix of an LDPC code having a code length N of 17280 bits and a coding rate r of 13/16,
- the LDPC code includes information bits and parity bits
- the parity check matrix includes an information matrix unit corresponding to the information bits and a parity matrix unit corresponding to the parity bits
- the information matrix unit includes an initial value of a parity check matrix.
- the parity check matrix initial value table is a table representing the position of one element of the information matrix unit for every 360 columns, 225 274 898 916 1020 1055 1075 1179 1185 1343 1376 1569 1828 1972 2852 2957 3183 548 602 628 928 1077 1474 1557 1598 1935 1981 2110 2472 2543 2594 2721 2884 2981 59 69 518 900 1158 1325 1367 1480 1744 2069 2119 2406 2757 2883 2914 2966 3232 1330 1369 1712 2133 2206 2487 2596 2606 2612 2666 2726 2733 2754 2811 2948 3030 391 542 689 748 810 1716 1927 2006 2296 2340 2357 2514 2797 2887 2896 3226 256 410 799 1126 1377 1409 1518 1619 1829 2037 2303 2324 2472 2475 2874 2992 862 1522 1905 809 842 945 561 1001 2857 2132 2592 2905
- the LDPC code obtained from data transmitted by the first transmission method is decoded.
- the second transmitting apparatus / transmission method uses an encoding unit / step that performs LDPC encoding based on a parity check matrix of an LDPC code having a code length N of 17280 bits and a coding rate r of 14/16.
- the LDPC code includes information bits and parity bits
- the parity check matrix includes an information matrix unit corresponding to the information bits and a parity matrix unit corresponding to the parity bits
- the information matrix unit is a parity check matrix.
- the parity check matrix initial value table is a table that represents the position of one element of the information matrix unit every 360 columns, 337 376 447 504 551 864 872 975 1136 1225 1254 1271 1429 1478 1870 2122 58 121 163 365 515 534 855 889 1083 1122 1190 1448 1476 1635 1691 1954 247 342 395 454 479 665 674 1033 1041 1198 1300 1484 1680 1941 2096 2121 80 487 500 513 661 970 1038 1095 1109 1133 1416 1545 1696 1992 2051 2089 32 101 205 413 568 712 714 944 1329 1669 1703 1826 1908 2014 2097 142 201 491 838 860 954 960 965 997 1027 1225 1488 1502 1521 1737 1804 453 1184 1542 10 781 1709 497 903 1546 1080 1640 1861 1198 1616 1817 771 978
- LDPC encoding is performed based on a parity check matrix of an LDPC code having a code length N of 17280 bits and a coding rate r of 14/16.
- the LDPC code includes information bits and parity bits
- the parity check matrix includes an information matrix unit corresponding to the information bits and a parity matrix unit corresponding to the parity bits
- the information matrix unit includes an initial value of a parity check matrix.
- the parity check matrix initial value table is a table representing the position of one element of the information matrix unit for every 360 columns, 337 376 447 504 551 864 872 975 1136 1225 1254 1271 1429 1478 1870 2122 58 121 163 365 515 534 855 889 1083 1122 1190 1448 1476 1635 1691 1954 247 342 395 454 479 665 674 1033 1041 1198 1300 1484 1680 1941 2096 2121 80 487 500 513 661 970 1038 1095 1109 1133 1416 1545 1696 1992 2051 2089 32 101 205 413 568 712 714 944 1329 1669 1703 1826 1908 2014 2097 142 201 491 838 860 954 960 965 997 1027 1225 1488 1502 1521 1737 1804 453 1184 1542 10 781 1709 497 903 1546 1080 1640 1861 1198 1616 1817 771 978 20
- the second receiver / reception method of the present technology includes an encoding step of performing LDPC encoding based on a parity check matrix of an LDPC code having a code length N of 17280 bits and a coding rate r of 14/16,
- the LDPC code includes information bits and parity bits
- the parity check matrix includes an information matrix unit corresponding to the information bits and a parity matrix unit corresponding to the parity bits
- the information matrix unit includes an initial value of a parity check matrix.
- the parity check matrix initial value table is a table representing the position of one element of the information matrix unit for every 360 columns, 337 376 447 504 551 864 872 975 1136 1225 1254 1271 1429 1478 1870 2122 58 121 163 365 515 534 855 889 1083 1122 1190 1448 1476 1635 1691 1954 247 342 395 454 479 665 674 1033 1041 1198 1300 1484 1680 1941 2096 2121 80 487 500 513 661 970 1038 1095 1109 1133 1416 1545 1696 1992 2051 2089 32 101 205 413 568 712 714 944 1329 1669 1703 1826 1908 2014 2097 142 201 491 838 860 954 960 965 997 1027 1225 1488 1502 1521 1737 1804 453 1184 1542 10 781 1709 497 903 1546 1080 1640 1861 1198 1616 1817 771 978 20
- the LDPC code obtained from data transmitted by the second transmission method is decoded.
- the transmitting device and the receiving device may be independent devices or may be an internal block constituting one device.
- FIG. 1 is a diagram illustrating a configuration example of an embodiment of a transmission system to which the present technology is applied.
- FIG. 2 is a block diagram showing a configuration example of a transmission device 11.
- FIG. 6 is a block diagram showing an example of configuration of a bit interleaver 116. It is a figure which shows the example of a test matrix. It is a figure which shows the example of a parity matrix. It is a figure explaining the test matrix of the LDPC code prescribed
- FIG. 1 is a diagram illustrating an example of a parity matrix H T of the parity check matrix H corresponding to the LDPC code after parity interleave.
- 5 is a flowchart illustrating an example of processing performed by the bit interleaver 116 and the mapper 117.
- FIG. 2 is a block diagram showing an example configuration of an LDPC encoder 115.
- FIG. 18 is a flowchart for describing an example of processing of the LDPC encoder 115.
- FIG. FIG. 18 is a diagram illustrating an example of a parity check matrix initial value table with a coding rate of 1/4 and a code length of 16200. It is a figure explaining the method to obtain
- FIG. 10 is a diagram showing a parity check matrix in which column permutation is performed as parity deinterleaving for restoring parity interleaving. It is a figure which shows the conversion parity check matrix obtained by performing row permutation to a parity check matrix.
- FIG. 10 is a diagram for explaining group-wise interleaving performed by the group-wise interleaver 24.
- FIG. 2 is a block diagram showing a configuration example of a receiving device 12;
- FIG. 16 is a block diagram illustrating an example configuration of a bit deinterleaver 165.
- FIG. 16 is a flowchart describing an example of processing performed by the demapper 164, the bit deinterleaver 165, and the LDPC decoder 166.
- FIG. It is a figure which shows the example of the test matrix of a LDPC code. It is a figure which shows the example of the matrix (conversion test matrix) which applied row permutation and column permutation to the parity check matrix.
- FIG. 16 is a block diagram illustrating an example configuration of an LDPC decoder 166. It is a figure explaining the block de interleaving performed by the block de interleaver 54.
- FIG. FIG. 20 is a block diagram illustrating another configuration example of the bit deinterleaver 165.
- FIG. 7 is a block diagram showing a first configuration example of a receiving system to which the receiving device 12 is applicable.
- FIG. 7 is a block diagram showing a second configuration example of a receiving system to which the receiving device 12 can be applied.
- FIG. 16 is a block diagram showing a third configuration example of a receiving system to which the receiving device 12 can be applied.
- Fig. 21 is a block diagram illustrating a configuration example of an embodiment of a computer to which the present technology is applied.
- the LDPC code is a linear code and does not have to be binary, but it will be described here as binary.
- An LDPC code is most characterized in that a parity check matrix defining the LDPC code is sparse.
- a sparse matrix is a matrix in which the number of “1” s of matrix elements is very small (a matrix in which most elements are 0).
- FIG. 1 is a diagram illustrating an example of a parity check matrix H of an LDPC code.
- the weight (column weight) (number of "1" s) (weight) of each column is "3"
- the weight (row weight) of each row is "6” .
- a generator matrix G is generated based on a parity check matrix H, and a code word (LDPC code) is generated by multiplying the generator matrix G with binary information bits. ) Is generated.
- LDPC code code word
- the generator matrix G is a K ⁇ N matrix
- the codeword (LDPC code) generated by the coding device is received at the receiving side via a predetermined communication path.
- the LDPC code decoding is an algorithm proposed by Gallager as probabilistic decoding, which is a variable node (also called a message node) and a check node. It can be done by a message passing algorithm with belief propagation on the so-called Tanner graph.
- the variable node and the check node are also simply referred to as nodes.
- FIG. 2 is a flowchart showing the procedure of decoding an LDPC code.
- a real value (received LLR) expressing “0 likeliness of the value” of the i-th code bit of the LDPC code (1 code word) received by the receiving side as appropriate by a log likelihood ratio ) Is also called a received value u 0i .
- u j be the message output from the check node
- v i be the message output from the variable node.
- step S11 an LDPC code is received in step S11, and a message (check node message) u j is initialized to "0", and as a counter of repeated processing A variable k taking an integer of 0 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 operation (variable node operation) shown in equation (1) based on the received value u 0i obtained by receiving the LDPC code, and further, Based on the message v i , the message u j is obtained by performing the operation (check node operation) shown in the equation (2).
- Equation (1) and Equation (2) can be arbitrarily selected to indicate the number of “1” in the vertical direction (column) and the horizontal direction (row) of parity check matrix H, respectively.
- variable node operation of equation (1) and the check node operation of (2) a message input from an edge (a line connecting a variable node and a check node) to output a message.
- the range of the operation is 1 to d v ⁇ 1 or 1 to d c ⁇ 1, because
- a table of the function R (v 1 , v 2 ) shown in the equation (3) defined by one output for two inputs v 1 and v 2 is actually created in advance This is done 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 the variable k is larger than a predetermined number C of repeated decodings. If it is determined in step S13 that the variable k is not larger than C, the process returns to step S12, and the same processing is repeated.
- step S13 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 determined by performing the operation shown in equation (5). Then, the decoding process of the LDPC code is completed.
- equation (5) is performed using messages u j from all the branches connected to the variable node.
- FIG. 3 is a diagram showing 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.
- FIG. 4 is a diagram showing a Tanner graph of the parity check matrix H of FIG.
- the 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 an element of the parity check matrix.
- FIG. 5 is a diagram showing a variable node operation performed at a variable node.
- the message v i corresponding to the branch to be calculated is the message from the remaining branches connected to the variable node u 1 and u 2 and the variable node of the equation (1) using the received value u 0i It is obtained by calculation.
- the messages corresponding to the other branches are likewise sought.
- FIG. 6 is a diagram showing a check node operation performed at a check node.
- sign (x) is 1 when x ⁇ 0, and ⁇ 1 when x ⁇ 0.
- Equation (6) can be transformed into equation (7).
- the message u j corresponding to the branch to be calculated is the messages v 1 , v 2 , v 3 , v 4 , v from the remaining branches connected to the check node. It is obtained by the check node calculation of Expression (7) using 5 .
- the messages corresponding to the other branches are likewise sought.
- ⁇ (x) and ⁇ ⁇ 1 (x) are implemented in hardware, they may be implemented using a LUT (Look Up Table), but both are the same LUT.
- FIG. 7 shows a transmission system to which the present technology is applied (a system is a logical aggregation of a plurality of devices, regardless of whether devices of respective configurations are in the same case) It is a figure showing an example of composition of an embodiment.
- the transmission system includes a transmitter 11 and a receiver 12.
- the transmission device 11 transmits (broadcasts) (transmits), for example, a program of television broadcasting. That is, the transmitting device 11 encodes target data to be transmitted, such as image data and audio data as a program, into an LDPC code, for example, a satellite line, a ground wave, a cable (wired line), etc. It transmits via the communication path 13.
- target data to be transmitted such as image data and audio data as a program
- an LDPC code for example, a satellite line, a ground wave, a cable (wired line), etc. It transmits via the communication path 13.
- the receiving device 12 receives the 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 Additive White Gaussian Noise (AWGN) channel.
- AWGN Additive White Gaussian Noise
- burst errors or erasures may occur.
- D / U Desired to Undesired Ratio
- Desired main path power
- the power of a particular symbol may be zero (0) depending on the delay of echo (path other than the main path).
- the Doppler frequency makes it possible to use OFDM of a particular time.
- the power of the entire symbol may be zero (erasure).
- a burst error may occur due to the wiring condition from the receiving unit (not shown) such as an antenna or the like that receives the signal from the transmitting device 11 to the receiving device 12 and the receiving device 12 or the instability of the power supply of the receiving device 12. May occur.
- the receiving unit such as an antenna or the like that receives the signal from the transmitting device 11 to the receiving device 12 and the receiving device 12 or the instability of the power supply of the receiving device 12. May occur.
- the check node calculation of Expression (7) is performed using a message obtained by the variable node connected to the check node in the check node, so a plurality of connected variable nodes ( If the number of check nodes at which the code bits of the LDPC code corresponding to ⁇ ⁇ ⁇ cause errors (including erasures) at the same time increases, the decoding performance deteriorates.
- the check node sends messages with equal probability that the probability that the value is 0 and the probability that the value is 1 to all variable nodes. return.
- a check node returning an equal probability message will not contribute to one decoding process (one set of variable node operation and check node operation), and as a result, many decoding processes need to be repeated. As a result, the decoding performance is degraded, and the power consumption of the receiver 12 that decodes the LDPC code is increased.
- FIG. 8 is a block diagram showing a configuration example of the transmission apparatus 11 of FIG.
- one or more input streams (Input Streams) 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 performs processing such as mode selection and multiplexing of one or more input streams supplied thereto as necessary, and supplies the resultant data to the padder 112. .
- the padder 112 performs necessary zero padding (insertion of a null) on the data from the mode adaptation / multiplexer 111, and supplies the resulting data to a BB scrambler 113.
- the BB scrambler 113 subjects the data from the padder 112 to BB scrambling (Base-Band Scrambling) and supplies the resulting data to a BCH encoder (BCH encoder) 114.
- the BCH encoder 114 BCH encodes the data from the BB scrambler 113, and supplies the resultant data to an LDPC encoder (LDPC encoder) 115 as LDPC target data to be subjected to LDPC encoding.
- LDPC encoder LDPC encoder
- the LDPC encoder 115 (coding unit) is, for example, a parity check matrix in which a parity matrix, which is a portion corresponding to parity bits of the LDPC code, has a dual diagonal structure, for the LDPC target data from the BCH encoder 114.
- LDPC encoding is performed according to the instruction, and an LDPC code is output, which uses data to be subjected to LDPC as information bits.
- the LDPC encoder 115 defines the LDPC target data in a predetermined standard such as DVB-S.2, DVB-T.2, DVB-C.2, ATSC 3.0, etc. LDPC encoding is performed to encode the corresponding LDPC code and the other LDPC codes, and the resultant LDPC code is output.
- the LDPC code specified in the DVB-S. 2 and ATSC 3.0 standards is an IRA (Irregular Repeat Accumulate) code, and (a part or all) of the parity matrix in the check matrix of the LDPC code , Has a staircase structure.
- 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, pp. 1-8. , Sept. 2000.
- the LDPC code output from the LDPC encoder 115 is supplied to a bit interleaver (Bit Interleaver) 116.
- Bit Interleaver Bit Interleaver
- the bit interleaver 116 performs bit interleaving described later on the LDPC code from the LDPC encoder 115, and supplies the LDPC code after the bit interleaving to the mapper (Mapper) 117.
- the mapper 117 maps the LDPC code from the bit interleaver 116 into signal points representing one symbol of orthogonal modulation in units of one or more code bits (symbol units) of the LDPC code and performs orthogonal modulation (multiple Value modulation).
- mapper 117 is a constellation on an IQ plane 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 from the LDPC code from bit interleaver 116.
- orthogonal modulation is performed by mapping to signal points determined by a modulation scheme that performs orthogonal modulation of an LDPC code.
- the mapper 117 uses m code bits of the LDPC code as a symbol (one symbol).
- the LDPC code from bit interleaver 116 is mapped on a symbol basis to a signal point representing a symbol out of 2 m signal points.
- a modulation method of orthogonal modulation performed by the mapper 117 for example, a modulation method defined in the standards of DVB-S. 2 and ATSC 3.0, etc.
- other modulation methods that is, for example, BPSK (Binary (Binary) Phase Shift Keying (QPSK), Quadrature Phase Shift Keying (QPSK), Phase-Shift Keying (8PSK), Amplitude Phase-Shift Keying (16APSK), 32APSK, Quadrature Amplitude Modulation (16QAM), 16QAM, 64QAM, 256QAM, 1024QAM, 4096QAM, 4PAM (Pulse Amplitude Modulation) and the like.
- BPSK Binary (Binary) Phase Shift Keying
- QPSK Quadrature Phase Shift Keying
- 8PSK Phase-Shift Keying
- Amplitude Phase-Shift Keying (16APSK)
- 32APSK Quadrature Amplitude Modulation
- 16QAM 16
- Data obtained by the processing at the mapper 117 (the mapping result of mapping the symbols to the signal points) is supplied to a time interleaver 118.
- the time interleaver 118 performs time interleaving (interleaving in the time direction) in symbol units on the data from the mapper 117, and the resulting data is converted to a SISO / MISO encoder (SISO / MISO (Single Input Single Output / Multiple).
- SISO / MISO encoder SISO / MISO encoder
- the SISO / MISO encoder 119 performs space-time coding on the data from the time interleaver 118 and supplies the data to a frequency interleaver (Frequency Interleaver) 120.
- a frequency interleaver Frequency Interleaver
- the frequency interleaver 120 performs frequency interleaving (interleaving in the frequency direction) on the data from the SISO / MISO encoder 119 in symbol units, and supplies the data to a frame builder & resource allocation unit (Frame Builder & Resource Allocation) 131.
- a frame builder & resource allocation unit Fre Builder & Resource Allocation
- control data (signalling) for transmission control such as BB signaling (Base Band Signaling) (BB Header) is supplied to the BCH encoder 121, for example.
- the BCH encoder 121 BCH encodes the control data supplied thereto in the same manner as the BCH encoder 114, and supplies the resultant 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, similarly to the LDPC encoder 115, and supplies the resulting LDPC code to the mapper 123.
- the mapper 123 maps the LDPC code from the LDPC encoder 122 to a signal point representing one symbol of orthogonal modulation in units of one or more code bits of the LDPC code (symbol unit). Quadrature modulation, and the resulting data is provided to frequency interleaver 124.
- the frequency interleaver 124 performs frequency interleaving in symbol units on the data from the mapper 123, and supplies the data to the frame builder / resource allocation unit 131.
- the frame builder / resource allocation unit 131 inserts symbols of pilots (Pilot) at necessary positions of data (symbols) from the frequency interleaver 120 and 124, and the predetermined data is obtained from the resulting data (symbols).
- a frame for example, a PL (Physical Layer) frame, a T2 frame, a C2 frame, and the like
- OFDM generation OFDM generation
- 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 through the communication path 13 (FIG. 7).
- the transmitting device 11 may be configured without providing a part of the blocks illustrated in FIG. 8 such as the time interleaver 118, the SISO / MISO encoder 119, the frequency interleaver 120, and the frequency interleaver 124, for example. Can.
- FIG. 9 is a block diagram showing a configuration example of the bit interleaver 116 of FIG.
- the bit interleaver 116 has a function of interleaving data, and is configured of a parity interleaver (Parity Interleaver) 23, a group-wise interleaver (Group-Wise Interleaver) 24, and a block interleaver (Block Interleaver) 25.
- parity interleaver parity Interleaver
- Group-Wise Interleaver group-wise interleaver
- Block Interleaver Block Interleaver
- the parity interleaver 23 performs parity interleaving in which the parity bits of the LDPC code from the LDPC encoder 115 are interleaved at the positions of other parity bits, and supplies the LDPC code after the parity interleaving to the group-wise interleaver 24.
- the group-wise interleaver 24 performs group-wise interleaving on the LDPC code from the parity interleaver 23, and supplies the LDPC code after the group-wise interleaving to the block interleaver 25.
- the parity interleaver 23 sets 360 bits of one section into which the LDPC code of one code is divided into 360 bit units equal to the parallel factor P described later from the head thereof. LDPC codes from are interleaved on a bit group basis.
- the error rate can be improved as compared with the case where group-wise interleaving is not performed. As a result, good communication quality can be ensured in data transmission.
- the block interleaver 25 performs block interleaving for demultiplexing the LDPC code from the group-wise interleaver 24. For example, the symbol of an LDPC code of one code is converted into a symbol of m bits which is a unit of mapping. To the mapper 117 (FIG. 8).
- a column as a storage area for storing a predetermined number of bits in the column (vertical) direction is equal to the number m of symbols in the row (horizontal) direction.
- the LDPC code from the group-wise interleaver 24 is written in the column direction and read in the row direction with respect to the storage areas aligned in a row, whereby the LDPC code is symbolized into m-bit symbols.
- FIG. 10 is a diagram showing an example of a parity check matrix H used for LDPC encoding in the LDPC encoder 115 of FIG.
- the parity check matrix H has a low-density generation matrix (LDGM) structure, and an information matrix H A of a portion corresponding to an information bit among code bits of an LDPC code and a parity matrix H T corresponding to parity bits.
- H [H A
- the information length K and parity length M for an LDPC code of a given code length N are determined by the coding rate.
- the parity check matrix H is a matrix of M ⁇ N rows ⁇ columns (M-row N-column matrix).
- the information matrix H A is an M ⁇ K matrix
- the parity matrix H T is an M ⁇ M matrix.
- FIG. 11 is a diagram showing an example of a parity matrix H T of a parity check matrix H used for LDPC encoding by the LDPC encoder 115 of FIG.
- the parity matrix H T of the parity check matrix H used for LDPC encoding in the LDPC encoder 115 is, for example, a parity matrix H T similar to the parity check matrix H of an LDPC code specified in the standard such as DVB- T . It can be adopted.
- the parity matrix H T of the parity check matrix H of the LDPC code defined in the standard such as DVB-T.2 is a matrix in which the elements of 1 are arranged in a step-like matrix (lower bidiagonal). It has become a matrix).
- the row weights of the parity matrix H T are 1 for the first row and 2 for all the remaining rows.
- the column weight is 1 for the last 1 column and 2 for all remaining columns.
- the LDPC code of the parity check matrix H in which the parity matrix H T has a step structure can be easily generated using the parity check matrix H.
- 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, a portion of information bits is represented by a row vector A, and a portion of parity bits is represented by a row vector T.
- FIG. 12 is a diagram for explaining a parity check matrix H of an LDPC code defined in a standard such as DVB-T.2.
- the column weight is X, and for the subsequent K3 column, the column weight is 3 and then For the M ⁇ 1 columns, the column weights are 2 and for the last 1 column, the column weights are 1.
- 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 standard such as DVB-T.2.
- LDPC codes with a code length N of 64800 bits and 16200 bits are defined.
- the code length N of 64800 bits is also referred to as 64 k bits
- the code length N of 16200 bits is also referred to as 16 k bits.
- the error rate tends to be lower for code bits corresponding to columns with larger column weights of the parity check matrix H.
- the column weight tends to be larger as the column on the head side (left side), and hence the parity check matrix
- the first code bit is more resistant to errors (more resistant to errors), and the last code bit is more susceptible to errors.
- parity interleaving by the parity interleaver 23 of FIG. 9 will be described with reference to FIGS. 14 to 16.
- FIG. 14 is a diagram illustrating an example of (a part of) a Tanner graph of a parity check matrix of an LDPC code.
- variable nodes such as (two corresponding bit bits) of variable nodes connected to the check node simultaneously cause an error such as erasure
- all check nodes are connected to the check node, as shown in FIG.
- the probability that the value is 0 and the probability that the value are 1 return messages with equal probability. For this reason, if multiple variable nodes connected to the same check node simultaneously become erasures etc., the decoding performance will deteriorate.
- the LDPC code output from the LDPC encoder 115 in FIG. 8 is, for example, an IRA code, like the LDPC code defined in the standard such as DVB-T.2, and the parity matrix H T of the parity check matrix H is , As shown in FIG. 11, it has a staircase structure.
- FIG. 11 is a diagram illustrating a parity matrix H T having a staircase structure, an example of a Tanner graph corresponding to the parity matrix H T.
- a of FIG. 15 shows an example of the parity matrix H T having a step structure
- B of FIG. 15 shows a Tanner graph corresponding to the parity matrix H T of A of FIG.
- the value of the parity matrix H T corresponding to the columns of two adjacent elements are set to 1, the two variable nodes adjacent, connected to the same check node There is.
- the parity interleaver 23 (FIG. 9) performs parity interleaving to interleave the parity bits of the LDPC code from the LDPC encoder 115 at the positions of other parity bits in order to prevent the deterioration of the decoding performance described above. .
- FIG. 16 is a diagram showing a parity matrix H T of a parity check matrix H corresponding to an LDPC code after parity interleaving performed by the parity interleaver 23 of FIG.
- the information matrix HA of the parity check matrix H corresponding to the LDPC code output from the LDPC encoder 115 is the same as the information matrix of the parity check matrix H corresponding to the LDPC code defined in the standard such as DVB-T. 2
- the structure is cyclic.
- a cyclic structure is a structure in which a certain column matches the cyclic shift of another column.
- the position of 1 in each row of the P column is the first of the P column
- the position of the column of is cyclically shifted in the column direction by a predetermined value such as a value proportional to the value q obtained by dividing the parity length M.
- the P sequence in the cyclic structure is referred to as a parallel factor.
- the parallel factor P is defined to 360, which is one of the divisors of parity length M except 1 and M.
- the parity interleaver 23 assumes that the information length is K, and an integer between 0 and P is x, and an integer between 0 and q is y.
- the K + qx + y + 1st code bit is interleaved at the position of the K + Py + x + 1st code bit.
- the K + qx + y + 1st code bit and the K + Py + x + 1st code bit are both parity bits since they are the K + 1 and subsequent code bits, and hence parity According to the interleaving, the position of the parity bit of the LDPC code is moved.
- the LDPC code after parity interleaving that interleaves the K + qx + y + 1st code bit at the position of the K + Py + x + 1st code bit is the K + qx + of the original parity check matrix H. It matches the LDPC code of a parity check matrix (hereinafter, also referred to as a transformed parity check matrix) obtained by performing column permutation in which the (y + 1) th column is replaced with the (K + Py + x + 1) th column.
- a parity check matrix hereinafter, also referred to as a transformed parity check matrix
- the pseudo cyclic structure means a structure in which a part excluding a part is a cyclic structure.
- a converted parity check matrix obtained by performing column permutation corresponding to parity interleaving on a parity check matrix of an LDPC code defined in a standard such as DVB-T.2 has 360 rows of the upper right corner of the transform parity check matrix ⁇
- a part of 360 columns (a shift matrix to be described later) does not have only one element (it is an element of 0), and in that respect it is not a (perfect) cyclic structure but a pseudo cyclic structure ing.
- the transformation parity check matrix for the parity check matrix of the LDPC code output from the LDPC encoder 115 has, for example, a pseudo cyclic structure similar to the transformation parity check matrix for the parity check matrix of the LDPC code defined in the standard such as DVB-T.2. ing.
- the transformed parity check matrix in FIG. 16 is a row permutation for causing the transformed parity check matrix to be configured by a configuration matrix described later, in addition to column permutation corresponding to parity interleaving with respect to the original parity check matrix H. It is a matrix that is also subjected to (row substitution).
- FIG. 17 is a flowchart illustrating processing performed by the LDPC encoder 115, the bit interleaver 116, and the mapper 117 of FIG.
- the LDPC encoder 115 waits for the LDPC target data to be supplied from the BCH encoder 114, and 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 the bit interleaving to the mapper 117, and the process proceeds to step S103.
- step S102 in the bit interleaver 116 (FIG. 9), the parity interleaver 23 performs parity interleaving on the LDPC code from the LDPC encoder 115, and the LDPC code after the parity interleaving is processed as a group-wise interleave. It is supplied to the lever 24.
- the group-wise interleaver 24 subjects the LDPC code from the parity interleaver 23 to group-wise interleaving and supplies the block interleaver 25 with the group-wise interleaving.
- the block interleaver 25 performs block interleaving on the LDPC code after group-wise interleaving by the group-wise interleaver 24, and supplies the resulting m-bit symbols to the mapper 117.
- step S103 the mapper 117 maps the symbols from the block interleaver 25 to any of 2 m signal points determined by the modulation scheme of the quadrature modulation performed by the mapper 117, and quadrature modulates the result.
- the data is provided to time interleaver 118.
- the parity interleaver 23, which is a block for performing parity interleaving, and the group-wise interleaver 24, which is a block for performing group-wise interleaving, are separately configured.
- the parity interleaver 23 and the group-wise interleaver 24 can be integrally configured.
- both parity interleaving and group-wise interleaving can be performed by writing and reading code bits to and from the memory, and an address for writing code bits (write address) is an address for reading code bits. It can be represented by a matrix that converts to (read address).
- parity interleaving is performed by converting code bits by these matrices, and further, The result of group-wise interleaving of the LDPC code after parity interleaving can be obtained.
- the block interleaver 25 can also be configured integrally.
- the block interleaving performed by the block interleaver 25 can also be represented by a matrix for converting the write address of the memory storing the LDPC code into the read address.
- parity interleaving, group-wise interleaving, and block are performed according to those matrices. Interleaving can be performed collectively.
- FIG. 18 is a block diagram showing a configuration example of the LDPC encoder 115 of FIG.
- the LDPC encoder 122 of FIG. 8 is similarly configured.
- the LDPC encoder 115 performs, for example, such coding (error correction coding) with an LDPC code of each code rate N of 64800 bits or 16200 bits for each code length N and for each code rate. It can be performed according to the prepared check matrix H.
- the LDPC encoder 115 has a coding rate of 2/16, 3/16, 4/16, 5/16, 6/16, 7/16, where the code length N is 17280 bits or any other code length N.
- the LDPC encoder 115 includes an encoding processing unit 601 and a storage unit 602.
- the coding processing unit 601 includes a coding rate setting unit 611, an initial value table reading unit 612, a check matrix generation unit 613, an information bit reading unit 614, a coding parity calculation unit 615, and a control unit 616.
- LDPC encoding of the LDPC target data supplied to 115 is performed, and the resulting LDPC code is supplied to the bit interleaver 116 (FIG. 8).
- the coding rate setting unit 611 sets the code length N of the LDPC code, the coding rate r, and other specific information for specifying the LDPC code, for example, according to the operation of the operator.
- the initial value table reading unit 612 reads a parity check matrix initial value table, which will be described later, representing a parity check matrix of the LDPC code specified by the specific information set by the coding rate setting unit 611 from the storage unit 602.
- a check matrix H is generated by arranging one element at a period of 360 columns (parallel factor P) in the column direction, and stored in 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 encoding parity operation unit 615 reads out the parity check matrix H generated by the parity check matrix generation unit 613 from the storage unit 602, and uses the parity check matrix H to specify parity bits for the information bits read out by the information bit read out unit 614
- a code word (LDPC code) is generated by calculation based on a formula.
- the control unit 616 controls each block constituting the encoding processing unit 601.
- a plurality of parity check matrix initial value tables corresponding to the plurality of coding rates shown in FIGS. 12 and 13 for code lengths N such as 64800 bits and 16200 bits, and The coding rate is 2/16, 3/16, 4/16, 5/16, 6/16, 7/16, 8/16, 9/16, 10/16, 11 / for a length N of 17280 bits.
- Parity check matrix initial value table corresponding to each of 16, 12/16, 13/16, 14/16, and parity check matrix initial value table of parity check matrix H of LDPC code of arbitrary code rate r with other arbitrary code length N Is stored.
- the storage unit 602 temporarily stores data necessary for the processing of the encoding processing unit 601.
- FIG. 19 is a flowchart for explaining an example of processing of the LDPC encoder 115 of FIG.
- step S201 the coding rate setting unit 611 sets a code length N for performing LDPC encoding, a coding rate r, and other specific information for specifying an LDPC code.
- step S202 the initial value table reading unit 612 determines a predetermined check matrix initial value table specified by the code length N as the specific information set by the coding rate setting unit 611, the coding rate r, and the like. , Read from the storage unit 602.
- step S203 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 sets the code length N and the coding rate set 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 encoding parity operation unit 615 sequentially operates the parity bits of the codeword c satisfying Expression (8) using the information bits from the information bit reading unit 614 and the parity check matrix H.
- c represents a row vector as a codeword (LDPC code), and c T represents transposition of the row vector c.
- step S206 the control unit 616 determines whether to end the LDPC encoding. If it is determined in step S206 that the end of LDPC encoding is not determined, that is, for example, there is still LDPC target data to be subjected to LDPC encoding, the process returns to step S201 (or step S204). The processes of S201 (or step S204) to S206 are repeated.
- step S206 when it is determined in step S206 that the LDPC encoding is to be ended, that is, for example, there is no LDPC target data to be subjected to LDPC encoding, the LDPC encoder 115 ends the processing.
- a parity check matrix initial value table (representing a parity check matrix) of LDPC codes of various code lengths N and coding rates r can be prepared in advance.
- the LDPC encoder 115 can perform LDPC coding to LDPC codes of various code lengths N and coding rates r using a parity check matrix H generated from a parity check matrix initial value table prepared in advance.
- the parity check matrix initial value table may be, for example, an information matrix H A (corresponding to an information length K corresponding to a code length N of an LDPC code (LDPC code defined by the parity check matrix H) and a coding rate r in parity check matrix H).
- FIG. 10 is a table showing the position of the element 1 in 360 columns (parallel factor P), and is created in advance for each code length N and each parity check matrix H of each coding rate r.
- the parity check matrix initial value table represents at least the position of one element of the information matrix H A for every 360 columns (parallel factor P).
- parity check matrix H a parity check matrix in which all of the parity matrices H T have a staircase structure, and a part of the parity matrix H T have a staircase structure, and the remaining portions are diagonal matrices (unit matrix There is a check matrix that is).
- a method of expressing a parity check matrix initial value table representing a parity check matrix in which a part of the parity matrix H T has a step structure and the remaining part is a diagonal matrix is also referred to as a type A method.
- a method of expressing a parity check matrix initial value table representing a parity check matrix in which all of the parity matrices H T have a step structure is also referred to as a type B method.
- the LDPC code for the parity check matrix represented by the type A parity check matrix initial value table is also referred to as type A code
- the LDPC code for the parity check matrix represented by the type B parity check matrix initial value table is also referred to as type B code.
- the designations "type A” and “type B” are designations in accordance with the ATSC 3.0 standard. For example, in ATSC 3.0, both Type A code and Type B code are adopted.
- type B codes are adopted.
- FIG. 20 is a diagram illustrating an example of a parity check matrix initial value table of the type B method.
- FIG. 20 shows that the code rate N is 16200 bits and the coding rate (the coding rate on the notation of DVB-T. 2) r is 1 ⁇ 4, as defined in the DVB-T. 2 standard.
- a parity check matrix initial value table (representing parity check matrix H) of type B code is shown.
- the parity check matrix generation unit 613 obtains the parity check matrix H as follows using the parity check matrix initial value table of the type B method.
- FIG. 21 is a diagram for explaining a method of obtaining a parity check matrix H from a parity check matrix initial value table of the type B method.
- FIG. 21 shows a parity check matrix initial value table of a type B code having a code length N of 16200 bits and a coding rate r of 2/3 defined in the DVB-T. 2 standard.
- the type B parity check matrix initial value table has 360 columns of positions of all 1 elements of the information matrix H A corresponding to the information length K according to the code length N of the LDPC code and the coding rate r (parallel factor P) is a table representing every row, in the i-th row, the row number of the 1 element of the 1 + 360 ⁇ (i ⁇ 1) column of the parity check matrix H (the row number of the first row of the parity check matrix H Row numbers to be 0) are arranged by the number of column weights of the 1 + 360 ⁇ (i ⁇ 1) th column.
- the parity matrix H T (FIG. 10) corresponding to the parity length M of the parity check matrix H of the type B method is determined to have the step structure as shown in FIG. If the information matrix H A (FIG. 10) corresponding to the information length K can be obtained, the parity check matrix H can be obtained.
- the number of rows k + 1 of the type-B parity check matrix initial value table differs depending on the information length K.
- Equation (9) holds between the information length K and the number of rows k + 1 of the parity check matrix initial value table.
- the column weights of the parity check matrix H determined from the parity check matrix initial value table of FIG. 21 are 13 from the first column to 1 + 360 ⁇ (3-1) ⁇ 1th column, and 1 + 360 ⁇ (3-1) From the column to the K column are three.
- the first row of the parity check matrix initial value table in FIG. 21 is 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620, 2622, which corresponds to 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 the other elements Indicates that 0 is 0).
- the second line of the parity check matrix initial value table in FIG. 21 is 1,122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358, 3108, which corresponds to 361 of 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 H A of the parity check matrix H for every 360 columns.
- the columns other than the 1 + 360 ⁇ (i ⁇ 1) -th column of the parity check matrix H, that is, each column from the 2 + 360 ⁇ (i ⁇ 1) -th column to the 360 ⁇ ith column is a parity check matrix initial value table
- the first element of the 1 + 360 ⁇ (i ⁇ 1) th column, which is determined by the above, is cyclically cyclically arranged in the downward direction (downward direction of the column) according to the parity length M.
- the numerical value of the j-th column (j-th from the left) in the i-th row (i-th from the top) of the parity check matrix initial value table is denoted as h i, j and j in the w-th column of the parity check matrix H
- the row number H of the element of column 1 in column w other than the column 1 + 360 ⁇ (i ⁇ 1) of parity check matrix H w j can be obtained by equation (10).
- mod (x, y) means the remainder of dividing x by y.
- P is the parallel factor described above, and in the present embodiment, it is 360, as in the DVB-T. 2 or the like and the ATSC 3.0 standard, for example.
- the parity check matrix generation unit 613 (FIG. 18) specifies the row number of the element 1 in the (1 + 360 ⁇ (i ⁇ 1))-th column of the parity check matrix H using the parity check matrix initial value table.
- the parity check matrix generation unit 613 (FIG. 18) generates the row number H wj of the element of 1 in the w-th column other than the 1 + 360 ⁇ (i ⁇ 1) -th column of the parity check matrix H According to 10), a parity check matrix H is generated in which the element of the row number obtained by the above is one.
- FIG. 22 shows the structure of a parity check matrix H of the type A system.
- the type A parity check matrix is composed of an A matrix, a B matrix, a C matrix, a D matrix, and a Z matrix.
- the B matrix is a matrix with a staircase structure adjacent to the right of the A matrix, of M1 row and M1 column.
- the C matrix is a matrix adjacent to the bottom of the A matrix and the B matrix of N ⁇ K ⁇ M1 rows and K + M1 columns.
- the D matrix is an identity matrix adjacent to the right of the C matrix of N ⁇ K ⁇ M1 rows and N ⁇ K ⁇ M1 columns.
- the Z matrix is a zero matrix (0 matrix) adjacent to the right of the B matrix of M1 rows and N-K-M1 columns.
- the type A parity check matrix H configured by the above A matrix to D matrix and Z matrix
- a part of the A matrix and the C matrix constitute an information matrix
- the B matrix, The rest of the C matrix, the D matrix, and the Z matrix make up the parity matrix.
- the B matrix is a matrix with a step structure
- the D matrix is a unit matrix. Therefore, part (the portion of the B matrix) of the parity matrix of the parity check matrix H of type A has a step structure. , And the remaining part (part of D matrix) is a diagonal matrix (unit matrix).
- the A matrix and the C matrix have a cyclic structure for each column (for example, 360 columns) of parallel factors P, similarly to the information matrix of the parity check matrix H of the type B scheme, and the parity check matrix initial value table of the type A scheme Represents the position of one element of the A matrix and the C matrix every 360 columns.
- a type A parity check matrix representing positions of 1 elements of the A matrix and C matrix for every 360 columns
- the initial value table can be said to represent at least positions of one element of the information matrix every 360 columns.
- the type A parity check matrix initial value table represents the positions of 1 elements of the A matrix and C matrix for every 360 columns, the 1 element of part of the check matrix (the remaining part of the C matrix) It can also be said that the position is represented every 360 columns.
- FIG. 23 is a diagram showing an example of a parity check matrix initial value table of the type A system.
- FIG. 23 shows an example of a parity check matrix initial value table representing a parity check matrix H having a code length N of 35 bits and a coding rate r of 2/7.
- the parity check matrix initial value table of the type A method is a table that represents the position of one element of the A matrix and the C matrix for each parallel factor P, and in its i-th row, 1 + P ⁇ (parity check matrix H) i-1)
- a row number of an element of row 1 (row number where row number of row 1 of parity check matrix H is 0) is a column of the 1 + P ⁇ (i-1) th column It is arranged by the number of weights.
- the parallel factor P is assumed to be 5, for example.
- parity check matrix H of the type A system there are M1, M2, Q1, and Q2 as parameters.
- M1 (FIG. 22) is a parameter for determining the size of the B matrix, and takes multiples of the parallel factor P.
- M1 the performance of the LDPC code changes and is adjusted to a predetermined value when determining the parity check matrix H.
- it is assumed that 15 which is three times the parallel factor P 5 is adopted as M1.
- M2 (FIG. 22) takes a value M-M1 obtained by subtracting M1 from the parity length M.
- each column is cyclically shifted by arranging the 1 element of the 1 + P ⁇ (i ⁇ 1) -th column determined downward by the parity check matrix initial value table in the downward direction (downward direction of the column).
- Q 1 represents the number of shifts of that cyclic shift in the A matrix.
- each column is cyclically shifted by arranging the 1 element of the 1 + P ⁇ (i ⁇ 1) -th column determined downward by the parity check matrix initial value table in the downward direction (downward direction of the column).
- Q2 represents the number of shifts of that cyclic shift in the C matrix.
- the parity check matrix initial value table of FIG. 23 three numerical values are arranged in the first and second lines, and one numerical value is arranged in the third to fifth lines.
- the first row of the parity check matrix initial value table of FIG. 23 is 2, 6, 18 and this corresponds to the row of row 2, 6, 18 in the first column of parity check matrix H. It indicates that the element is 1 (and that the other elements are 0).
- the A matrix (FIG. 22) is a matrix of 15 rows and 10 columns (M1 row and K columns), and the C matrix (FIG. 22) is 10 rows and 25 columns (NK-M1 row K + M1). Since the row of row numbers 0 to 14 of parity check matrix H is a row of matrix A, the row of row numbers 15 to 24 of parity check matrix H is a row of C matrix.
- rows # 2 and # 6 among the rows with row numbers 2, 6 and 18 are rows of the A matrix, and rows # 18 is a row of the C matrix.
- rows # 2 and # 10 among rows # 2, # 10, and # 19 are rows of A matrix.
- row # 19 is a row of the C matrix.
- row # 22 is a row of C matrix.
- the (2 + 5 ⁇ (i ⁇ 1) th column is a cyclic shift downward by Q1).
- the (2 + 5 ⁇ (i ⁇ 1) th column is a cyclic shift downward by Q2).
- FIG. 24 is a diagram showing an A matrix generated from the parity check matrix initial value table of FIG.
- FIG. 25 is a diagram showing parity interleaving of the B matrix.
- FIG. 25 shows A matrix and B matrix after parity interleaving of B matrix in FIG.
- FIG. 26 is a diagram showing a C matrix generated from the parity check matrix initial value table of FIG.
- the parity check matrix generation unit 613 (FIG. 18) generates a C matrix using the parity check matrix initial value table, and arranges the C matrix below the A matrix and the B matrix (after parity interleaving).
- parity check matrix generation unit 613 arranges the Z matrix on the right of the B matrix, and arranges the D matrix on the right of the C matrix, and generates the parity check matrix H shown in FIG.
- FIG. 27 is a diagram illustrating parity interleaving of the D matrix.
- FIG. 27 shows the parity check matrix H after parity interleaving of the D matrix is performed on the parity check matrix H of FIG.
- the LDPC encoder 115 (the encoding parity operation unit 615 (FIG. 18)) performs, for example, LDPC encoding (generation of an LDPC code) using the parity check matrix H of FIG.
- the LDPC code generated using parity check matrix H in FIG. 27 is an LDPC code subjected to parity interleaving. Therefore, for the LDPC code generated using parity check matrix H in FIG. It is not necessary to perform parity interleaving in the parity interleaver 23 (FIG. 9). That is, since the LDPC code generated using parity check matrix H after parity interleaving of the D matrix becomes an LDPC code subjected to parity interleaving, parity interleaving in the parity interleaver 23 is performed for this LDPC code. Is skipped.
- FIG. 28 shows that parity interleaving is restored to the B matrix of the parity check matrix H of FIG. 27, a part of the C matrix (the part of the C matrix located below the B matrix), and the D matrix. It is a figure which shows the test matrix H which performed column permutation (column permutation) as parity deinterleaving.
- the LDPC encoder 115 can perform LDPC coding (LDPC code generation) using the parity check matrix H of FIG.
- parity interleaving is performed in parity interleaver 23 (FIG. 9).
- FIG. 29 is a view showing a transformed parity check matrix H obtained by performing row permutation on the parity check matrix H of FIG.
- the transformation parity check matrix is a P ⁇ P unit matrix, a quasi unit matrix in which one or more of the unit matrices become 1 or 0, a shift matrix obtained by cyclically shifting the unit matrix or the quasi unit matrix, It is a sum matrix which is a sum of two or more of an identity matrix, a quasi identity matrix, or a shift matrix, and a matrix represented by a combination of P ⁇ P 0 matrices.
- the type A code or type B code corresponding to the parity check matrix H of the cyclic structure may be adopted as the parallel factor P is 360 similar to DVB-T.2 or ATSC 3.0 etc. it can.
- the LDPC encoder 115 (FIG. 8 and FIG. 18) has a code length N longer than 64 k bits, for example, 69120 bits, and a coding rate r of, for example, 2/16, 3/16, 4/16, 5
- Checking any LDPC code of / 16, 6/16, 7/16, 8/16, 9/16, 10/16, 11/16, 12/16, 13/16, or 14/16 LDPC encoding to an LDPC code can be performed using (a parity check matrix H obtained from) a matrix initial value table.
- the LDPC encoder 115 has a code length N shorter than 64 k bits, for example, 17280 bits (17 k bits) as follows, and the coding rate r is, for example, 2/16, 3/16, 4 / 16, 5/16, 6/16, 7/16, 16/16, 9/16, 10/16, 11/16, 12/16, 13/16, or any of 14/16 LDPC encoding to a new LDPC code can be performed using (a parity check matrix H obtained from) a parity check matrix initial value table of the new LDPC code.
- the storage unit 602 of the LDPC encoder 115 (FIG. 8) stores a parity check matrix initial value table of the new LDPC code.
- a type A code of r 4/16
- a type A code of r 7/16
- a type B code of r 10/16
- a type B code of r 11/16
- a type B code of r 13/16
- a type B code of r 14/16
- the new LDPC code has become a high performance LDPC code.
- a good-performance LDPC code is an LDPC code obtained from an appropriate parity check matrix H.
- An appropriate parity check matrix H is, for example, when the LDPC code obtained from the parity check matrix H is transmitted at low E s / N 0 or E b / N o (signal power to noise power ratio per bit) , BER (bit error rate) (and FER (frame error rate)) smaller, a check matrix satisfying a predetermined condition.
- An appropriate parity check matrix H can be obtained, for example, by performing a simulation to measure BER when an LDPC code obtained from various parity check matrices satisfying a predetermined condition is transmitted at a low E s / N o .
- the cycle 4 is an element of 1 There is no loop, etc.
- parity check matrix H the minimum value of the loop length (loop length) formed by elements of 1 is called girth.
- the absence of cycle 4 means that the girth is greater than four.
- the predetermined condition to be satisfied by the appropriate parity check matrix H can be appropriately determined from the viewpoint of improvement in the decoding performance of the LDPC code, facilitation (simplification) of the decoding process of the LDPC code, and the like.
- FIGS. 44 and 45 are diagrams for explaining density evolution in which an analysis result is obtained as a predetermined condition that an appropriate check matrix H should satisfy.
- 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 the later-described degree sequence (degree sequence). It is.
- the variance of noise when the variance of noise is increased from 0, the expected value of error probability of an ensemble is initially 0, but the variance of noise is greater than or equal to a threshold When it becomes, it is not 0.
- the performance of the ensemble is improved by comparing the noise variance threshold (hereinafter also referred to as performance threshold) where the expected value of the error probability is not 0. You can decide
- a good-performance LDPC code can be found among the LDPC codes belonging to the ensemble, if a good-performance ensemble is found.
- the above-described degree sequence indicates how many variable nodes or check nodes having weights of respective values are present with respect to the code length N of the LDPC code.
- the weight (column weight) of all variable nodes is 3 and the weight (row weight) of all check nodes is 6 It belongs to the ensemble characterized by the sequence.
- FIG. 44 shows a Tanner graph of such an ensemble.
- Each variable node is connected with three edges equal to the column weight, so there are a total of only 3N branches connected to N variable nodes.
- branches equal to the row weight are connected to each check node, so there are a total of 3N branches connected to N / 2 check nodes.
- the interleaver randomly rearranges the 3N branches connected to the N variable nodes, and each branch after the rearrangement is connected to the N / 2 check nodes of the 3N branches. Connect to one of the houses.
- an interleaver through which a branch connected to a variable node and a branch connected to a check node pass is divided into multiple (multi edges), whereby characterization of the ensemble is more Strictly done.
- FIG. 45 shows an example of a Tanner graph of a multi-edge type ensemble.
- the Tanner graph in FIG. 45 there is one branch connected to the first interleaver, and only one variable node connected to the second interleaver has 0 variable nodes, and one branch connected to the first interleaver.
- the branch connected to the second interleaver has only two variable nodes with two branches, the branch connected to the first interleaver has zero branches, and the branch connected to the second interleaver has only two variable nodes v3 each Exists.
- the Tanner graph of FIG. 45 there are two branches connected to the first interleaver, only one check node c connected to the second interleaver, and two branches connected to the first interleaver.
- the branch connected to the second interleaver has only two check nodes c2
- the branch connected to the first interleaver has zero branches
- the branch connected to the second interleaver has only three check nodes c3 Exists.
- the BER starts to fall (becomes smaller) E b / N 0 (signal power to noise power ratio per bit) by multi-edge type density evolution Find an ensemble whose performance threshold is less than or equal to a predetermined value, and select an LDPC code that reduces the BER when using one or more orthogonal modulations such as QPSK among LDPC codes belonging to the ensemble as a good LDPC code. Selected.
- the new LDPC code (a parity check matrix initial value table representing the parity check matrix) was obtained by the above simulation.
- FIG. 46 is a diagram for explaining column weights of a parity check matrix H of a type A code as a new LDPC code.
- the column weights of the first column to the K1 column of the A matrix and the C matrix are X1
- the column weights of the subsequent K2 columns of the A matrix and the C matrix Let X3 be the column weight of the K3 column after the X matrix and the A matrix and the C matrix, and XM1 be the column weight of the M1 column after the C matrix.
- K1 + K2 + K3 is equal to the information length K
- the column weight of the first column to the column M1-1 of the B matrix is 2, and the column weight of the M1 column (the last column) of the B matrix is 1. Furthermore, the column weight of the D matrix is 1 and the column weight of the Z matrix is 0.
- FIG. 47 is a diagram showing parameters of parity check matrix H of type A code (represented by parity check matrix initial value table) in FIG. 30 to FIG.
- K, X1, K1, X2, X2, K2, X3, K3 as parameters of the parity check matrix H of the type A code of r 2/16, 3/16, 4/16, 5/16, 6/6, 16 and 17/16 , XM1, M1, and M2 are as shown in FIG.
- the parameters X1, K1, X2, K2, X3, K3, XM1 and M1 are set so as to further improve the performance (for example, error rate etc.) of the LDPC code.
- FIG. 48 is a diagram for explaining column weights of a parity check matrix H of a type B code as a new LDPC code.
- the column weight of the first column to the KX1 column is X1
- the column weight of the subsequent KX2 column is X2
- the subsequent column weight of the KX3 column is X3.
- the column weight of the subsequent KX4 column is represented by X4
- the column weight of the subsequent KY1 column is represented by Y1.
- KX1 + KX2 + KX3 + KX4 + KY1 is equal to the information length K
- the column weight of the M-1 column excluding the last one of the last M columns is 2, and the column weight of the last one is 1.
- FIG. 49 is a diagram showing parameters of the parity check matrix H of the type B code (represented by the parity check matrix initial value table) in FIGS.
- the parameters X1, KX1, X2, KX2, X3, KX3, X4, KX4, Y1, and KY1 are set so as to further improve the performance of the LDPC code.
- 50 to 74 show examples of constellations that can be employed in the transmission system of FIG.
- a constellation used in MODCOD can be set for MODCOD which is a combination of a modulation scheme (MODulation) and an LDPC code (CODe).
- MODCOD which is a combination of a modulation scheme (MODulation) and an LDPC code (CODe).
- one or more constellations can be set.
- the constellation includes UC (Uniform Constellation) in which the arrangement of signal points is uniform, and NUC (Non Uniform Constellation) in which the constellation of signal points is nonuniform.
- UC Uniform Constellation
- NUC Non Uniform Constellation
- NUC for example, a constellation called 1D-NUC (1-dimensional (M 2 -QAM) non-uniform constellation) or a constellation called 2D-NUC (2-dimensional (Q QAM) non-uniform constellation).
- 1D-NUC improves BER over UC
- 2D-NUC improves BER over 1D-NUC
- the constellation with modulation scheme QPSK is UC.
- UC or 2D-NUC can be adopted as a modulation scheme of 16 QAM, 64 QAM, 256 QAM or the like, and UC or 1 D can be employed as a modulation scheme of 1024 QAM or 4096 QAM, for example.
- -NUC can be adopted.
- constellations defined in ATSC 3.0, DVB-C. 2 or the like, and various other constellations that improve the error rate can be used.
- the modulation scheme is QPSK, for example, the same UC can be used for each coding rate r of the LDPC code.
- the modulation scheme is 16 QAM, 64 QAM, or 256 QAM, for example, the same UC can be used for each coding rate r of the LDPC code. Furthermore, when the modulation scheme is 16 QAM, 64 QAM, or 256 QAM, for example, different 2D-NUC can be used for each coding rate r of the LDPC code.
- the modulation scheme is 1024 QAM or 4096 QAM, for example, the same UC can be used for each coding rate r of the LDPC code. Furthermore, when the modulation scheme is 1024 QAM or 4096 QAM, for example, different 1D-NUCs can be used for each coding rate r of the LDPC code.
- the UC of QPSK described with QPSK-UC
- the UC of 2 m QAM also referred to as 2 m QAM-UC
- the 1D-NUC and 2D-NUC of 2 m QAM respectively, also referred to as 2 m QAM-1D-NUC and 2 m QAM-2D-NUC.
- FIG. 50 is a diagram showing coordinates of QPSK-UC signal points used for all coding rates of the LDPC code defined in ATSC 3.0 when the modulation scheme is QPSK.
- “Input Data cell y” represents a 2-bit symbol mapped to QPSK-UC
- “Constellation point z s ” represents the coordinates of signal point z s .
- the index s of the signal point z s (as well as the index q of the signal point z q described later) represents the discrete time of the symbol (time interval between one symbol and the next symbol).
- the coordinates of the signal point z s are represented in the form of a complex number, and j represents an imaginary unit ( ⁇ ( ⁇ 1)).
- FIG. 15 is a diagram showing coordinates of signal points of 16 QAM-2D-NUC used for 15, 7/15, 8/15, 9/15, 10/15, 11/15, 12, 15, 13/15.
- the coordinates of the signal point z s are represented in the form of a complex number, and j represents an imaginary unit.
- w # k represents the coordinates of the signal point in the first quadrant of the constellation.
- the signal point in the second quadrant of the constellation is placed at a position where the signal point in the first quadrant is moved symmetrically with respect to the Q axis, and the signal point in the third quadrant of the constellation is The signal points in one quadrant are arranged at positions moved symmetrically with respect to the origin. Then, the signal point in the fourth quadrant of the constellation is placed at a position where the signal point in the first quadrant is moved symmetrically with respect to the I axis.
- the modulation scheme is 2 m QAM
- one symbol is mapped to a signal point corresponding to the symbol, with m bits as one symbol.
- An m-bit symbol can be represented by, for example, an integer value of 0 to 2 m -1.
- b 2 m / 4
- a symbol represented by an integer value of 0 to 2 m -1 y (0), y (1),..., y (2 m -1) are symbols y (0) to y (b-1), y (b) to y (2b-1), y (2). 2b) to y (3b-1) and y (3b) to y (4b-1).
- the suffix k of w # k takes an integer value in the range of 0 to b-1, and w # k indicates the symbol y (k) in the range of symbols y (0) to y (b-1). Represents the coordinates of the signal point corresponding to.
- the coordinates of the signal point corresponding to the symbol y (k + b) in the range of symbols y (b) to y (2b-1) are represented by -conj (w # k), and the symbols y (2b) to y (2b)
- the coordinates of the signal point corresponding to the symbol y (k + 2b) in the range of y (3b-1) are represented by conj (w # k).
- the coordinates of the signal point corresponding to the symbol y (k + 3b) in the range of the symbols y (3b) to y (4b-1) are represented by -w # k.
- conj (w # k) represents the complex conjugate of w # k.
- the modulation scheme is 16QAM
- the symbols y It is classified into four of (0) to y (3), y (4) to y (7), y (8) to y (11), and y (12) to y (15).
- the coding rate r (CR) of the LDPC code is, for example, 9/15
- FIG. 53 is a diagram showing the relationship between the symbol y of 1024 QAM and (the component u # k of) the position vector u.
- a of FIG. 53 shows the even-numbered 5 bits y 1, s , y 3, s 5, y 5, s 7, y 7, s 9, y 9, s of the symbol y and the signal point z s corresponding to the symbol y.
- FIG. 53 shows the odd-numbered 5 bits y 0, s , y 2, y 2, s , y 4, s 6, y 6, s , y 8, s of the symbol y and the signal point z s corresponding to the symbol y Represents the correspondence with u # k, which represents the imaginary part Im (z s ) of
- a 10-bit symbol of 1024 QAM y (y 0, s , y 1, s , y 2, s , y 3, s , y 4, s , y 5, s , y 6, s , y 7, s , y If , for example, ( 8, s , y 9, s ) are ( 0, 0, 1, 0, 0, 1, 1, 1, 0, 0), then the odd-numbered 5 bits (y 0, s , y) 2, s , y 4, s , y 6, s 8, 8 ) are (0, 1, 0, 1, 0), and the even-numbered 5 bits (y 1, s , y 3, s) , Y 5, s , y 7, s , y 9, s ) are (0, 0 , 1 , 1, 0).
- the modulation scheme is 1024 QAM and the coding rate r (CR) of the LDPC code is 6/15.
- u3 is 0.1295 and u11 is 0.7196.
- the signal points of the 1D-NUC are arranged in a lattice on a straight line parallel to the I axis or a straight line parallel to the Q axis in the constellation.
- the interval between signal points is not constant.
- the average power of the signal points on the constellation can be normalized for transmission of the signal points (the data mapped to them). Normalization the signal points on the constellation of the mean square value of the absolute values for all (coordinates) and is represented as P ave, the reciprocal of the square root ⁇ p ave mean square value P ave 1 / ( ⁇ It can be done by multiplying P ave ) by each signal point z s on the constellation.
- the constellation defined in ATSC 3.0 as described above can be used.
- FIG. 54 to 65 show coordinates of signal points of UC defined in DVB-C.2.
- FIG. 54 to 65 show coordinates of signal points of UC defined in DVB-C.2.
- FIG. 54 is a diagram showing the real part Re (z q ) of the coordinate z q of the signal point of QPSK-UC (UC in QPSK) defined in DVB-C.2.
- FIG. 55 is a diagram showing an imaginary part Im (z q ) of coordinates z q of a signal point of QPSK-UC specified in DVB-C.2.
- FIG. 56 is a diagram illustrating a real part Re (z q ) of coordinates z q of a signal point of 16 QAM-UC (UC of 16 QAM) defined in DVB-C.2.
- FIG. 57 is a diagram showing an imaginary part Im (z q ) of coordinates z q of a 16 QAM-UC signal point defined in DVB-C.2.
- FIG. 58 is a diagram illustrating a real part Re (z q ) of coordinates z q of a signal point of 64 QAM-UC (UC of 64 QAM) defined in DVB-C.2.
- FIG. 59 is a diagram showing an imaginary part Im (z q ) of coordinates z q of a 64 QAM-UC signal point defined in DVB-C.2.
- FIG. 60 is a diagram illustrating a real part Re (z q ) of coordinates z q of a signal point of 256 QAM-UC (UC of 256 QAM) defined in DVB-C.2.
- FIG. 61 is a diagram showing an imaginary part Im (z q ) of coordinates z q of a 256 QAM-UC signal point defined in DVB-C.2.
- FIG. 62 is a diagram illustrating a real part Re (z q ) of coordinates z q of a signal point of 1024 QAM-UC (UC of 1024 QAM) defined in DVB-C.2.
- FIG. 63 is a diagram showing an imaginary part Im (z q ) of coordinates z q of a signal point of 1024 QAM-UC specified in DVB-C.2.
- FIG. 64 is a diagram illustrating a real part Re (z q ) of coordinates z q of a signal point of 4096 QAM-UC (UC of 4096 QAM) defined in DVB-C.2.
- FIG. 65 is a diagram showing an imaginary part Im (z q ) of coordinates z q of a 4096 QAM-UC signal point defined in DVB-C.2.
- y i, q represents the i + 1 bit from the head of the 2 m QAM m bit (for example, 2 bits in QPSK) symbol.
- the average power of the constellation points on the constellation can be normalized when transmitting (the data mapped to) the UC constellation points. Normalization the signal points on the constellation of the mean square value of the absolute values for all (coordinates) and is represented as P ave, the reciprocal of the square root ⁇ p ave mean square value P ave 1 / ( ⁇ It can be done by multiplying P ave ) by each signal point z q on the constellation.
- the UC defined in DVB-C.2 as described above can be used.
- the code length N is 17280 bits and the coding rate r is 2/16, 3/16, 4/16, 5/16, 6/16, 16/7, 16/16,
- the new LDPC codes (corresponding to the parity check matrix initial value table) of 9/16, 10/16, 11/16, 12/16, 13/16, and 14/16 are shown in FIGS. 54 to 65. Can be used.
- FIG. 66 is a diagram showing an example of coordinates of a signal point of 16 QAM-2D-NUC that can be used for the new LDPC code.
- FIG. 67 is a diagram showing an example of coordinates of a signal point of 64 QAM-2D-NUC that can be used for a new LDPC code.
- 68 and 69 are diagrams showing examples of coordinates of signal points of 256 QAM-2D-NUC that can be used for a new LDPC code.
- FIG. 69 is a view following FIG. 68.
- the coordinates of the signal point z s are represented in the form of a complex number, and j represents an imaginary unit.
- w # k represents the coordinates of the signal point in the first quadrant of the constellation, as in FIG.
- the symbols y (0), y (1),..., Y (2 m -1) represented by are symbols y (0) to y (b-1), y (b) to y (2b-). 1), y (2b) to y (3b-1), and y (3b) to y (4b-1).
- the suffix k of w # k takes an integer value in the range of 0 to b-1, and w # k indicates symbols y (0) to y (b-1). Represents the coordinates of the signal point corresponding to the symbol y (k) in the range of.
- the coordinates of the signal point corresponding to the symbol y (k + b) in the range of the symbols y (b) to y (2b-1) are represented by -conj (w # k), and the symbol y
- the coordinates of the signal point corresponding to the symbol y (k + 2b) in the range from (2b) to y (3b-1) are represented by conj (w # k), but in FIG. 66 to FIG. The sign is reversed.
- FIG. 70 is a diagram showing an example of coordinates of a signal point of 1024 QAM-1D-NUC that can be used for a new LDPC code.
- FIG. 70 shows real part Re (z s ) and imaginary part Im (z s ) of a complex number as coordinates of signal point z s of 1024 QAM-1 D-NUC, and position vector u (component u # k of) FIG.
- FIG. 71 is a diagram showing the relationship between the symbol y of 1024 QAM and (the component u # k of) the position vector u of FIG.
- a of FIG. 71 shows five odd bits (from the top) of the 10-bit symbol y, y 0, s , y 2 , y 4, s 4 , y 6 , y, 8 and its symbol y Represents the correspondence between the signal point z s corresponding to (the coordinates of) and the position vector u # k representing the real part Re (z s ).
- FIG. 71 shows the even-numbered 5 bits y 1, s , y 3, s 5, y 5, s , y 7, s , y 9, s of the 10-bit symbol y and the signal corresponding to the symbol y It shows the correspondence with the position vector u # k that represents the imaginary part Im (z s ) of the point z s .
- FIG. 72 is a diagram showing an example of coordinates of a 4096 QAM-1D-NUC signal point that can be used for a new LDPC code.
- FIG. 72 shows the relationship between the real part Re (z s ) and the imaginary part Im (z s ) of a complex number as coordinates of the signal point z s of 4096 QAM-1 D-NUC, and the position vector u (u # k)
- FIG. 72 shows the relationship between the real part Re (z s ) and the imaginary part Im (z s ) of a complex number as coordinates of the signal point z s of 4096 QAM-1 D-NUC, and the position vector u (u # k)
- 73 and 74 are diagrams showing the relationship between the symbol y of 4096 QAM and (the component u # k of) the position vector u of FIG.
- FIG. 73 shows the odd-numbered 6 bits y 0, s , y 2, s 2 , y 4, s 6, y 6, s , y 8, s , y 10, s of the 12-bit symbol y and their symbols y. It represents the correspondence with the position vector u # k that represents the real part Re (z s ) of the corresponding signal point z s .
- FIG. 74 shows the even-numbered 6 bits y 1, s , y 3, s , y 5, s , y 7, s , y 9, s , y 11, s of the 12-bit symbol y and its symbol y. It shows the correspondence between the corresponding signal point z s and the position vector u # k representing the imaginary part Im (z s ).
- the average power of the signal point on the constellation can be normalized. Normalization the signal points on the constellation of the mean square value of the absolute values for all (coordinates) and is represented as P ave, the reciprocal of the square root ⁇ p ave mean square value P ave 1 / ( ⁇ It can be done by multiplying P ave ) by each signal point z s on the constellation. Further, in FIG.
- the odd-numbered bits of the symbol y are associated with the position vector u # k representing the imaginary part Im (z s ) of the signal point z s and the even-numbered bits of the symbol y Is associated with the position vector u # k representing the real part Re (z s ) of the signal point z s , but in FIG. 71 and FIG. 73 and FIG. represent together is associated with the position vector u # k but representing the real part Re (z s) of the signal point z s, imaginary part Im of the even-numbered bit signal point z s symbol y a (z s) It is associated with the position vector u # k.
- FIG. 75 is a diagram for explaining block interleaving performed by the block interleaver 25 of FIG.
- the block interleaving is performed by dividing the LDPC code of one code word into a part called part 1 and a part called part 2 from the top thereof.
- Npart 1 + Npart 2 is equal to the code length N.
- a column as a storage area for storing Npart1 / m bits in the column direction as one direction, the number of bits of symbols in the row direction orthogonal to the column direction
- the columns are arranged by a number m equal to m, and each column is divided into small units of 360 bits which is a parallel factor P from the top. This small unit of column is also called a column unit.
- writing Part 1 of an LDPC code of one code word from the top to the bottom (column direction) of the first column unit of a column is from left to right. It will be done towards.
- part 1 of the LDPC code is read out in units of m bits from the first row of all m columns in the row direction. .
- the m-bit unit of this part 1 is supplied from the block interleaver 25 to the mapper 117 (FIG. 8) as an m-bit symbol.
- Reading of part 1 in m bits is sequentially performed toward the lower row of m columns, and when reading of part 1 is completed, part 2 is divided into m bits from the beginning, m bits
- the block interleaver 25 supplies the mapper 117 as a symbol of.
- part 1 is symbolized while being interleaved
- part 2 is symbolized by being sequentially divided into m bits without being interleaved.
- Npart1 / m The length of the column, Npart1 / m, is a multiple of 360, which is a parallel factor P, and so the LDPC code of one code word is part 1 and part 2 so that Npart1 / m is a multiple of 360. Divided into
- FIG. 76 is a diagram illustrating an example of Part 1 and Part 2 of an LDPC code whose code length N is 69120 bits when the modulation scheme is QPSK, 16 QAM, 64 QAM, 256 QAM, 1024 QAM, and 4096 QAM.
- Part 1 when the modulation scheme is 1024 QAM, Part 1 is 68400 bits, Part 2 is 720 bits, and the modulation scheme is QPSK, 16 QAM, 64 QAM, 256 QAM, or 4096 QAM, whichever is the case. In this case as well, part 1 is 69,120 bits and part 2 is 0 bits.
- FIG. 77 is a diagram for explaining group-wise interleaving performed by group-wise interleaver 24 in FIG.
- one code is divided into 360 bits equal to the parallel factor P from the head of the LDPC code, and 360 bits of the one section are regarded as one bit group as one code.
- the LDPC code of a word is interleaved in units of bit groups according to a predetermined pattern (hereinafter also referred to as a GW pattern).
- bit group i the i + 1th bit group from the head when an LDPC code of one code word is divided into bit groups.
- the GW pattern is represented by a sequence of numbers representing bit groups. For example, for LDPC codes of five bit groups 0, 1, 2, 3, 4 having a code length N of 1,800 bits, for example, GW patterns 4, 2, 0, 3, 1 have bit groups 0, 1, 0, 1 The sequence of 2, 3, 4 is to be interleaved (sorted) in the sequence of bit groups 4, 2, 0, 3, 1.
- the i + 1st code bit from the head of the LDPC code having a code length N of 1800 bits is represented by x i .
- bits of LDPC code ⁇ x 0 , x 1 ,..., X 1799 ⁇ are ⁇ x 1440 , x 1441 , ..., x 1799 ⁇ , ⁇ x 720 , x 721 , ..., x 1079 ⁇ , ⁇ x 0 , x 1 , ..., x 359 ⁇ , ⁇ x 1080 , x 1081 , ..., x 1439 ⁇ , ⁇ x 360 , x 361 ,..., X 719 ⁇ are interleaved.
- the GW pattern has two or more of: LDPC code code length N, coding rate r, modulation scheme, constellation, code length N, coding rate r, modulation scheme, and constellation. It can be set for each combination.
- FIG. 78 is a diagram showing an example of a GW pattern for an LDPC code with a code length N of 69120 bits.
- the sequence of bit groups 0 to 191 of the LDPC code of 69,120 bits is the bit groups 191, 12, 188, 158, 173, 48, 75, 146, 113, 15, 51, 119, 132, 161, 91, 189, 142, 93, 120, 29, 156, 101, 100, 22, 65, 98, 153, 127, 74, 39, 80, 38, 130, 148, 81, 13, 24, 125, 0, 174, 140, 124, 5, 68, 3, 104, 136, 63, 162, 106, 8, 25, 182, 178, 90, 96, 79, 168, 172, 128, 64, 69, 102, 45, 66, 86, 155, 163, 6, 152, 164, 108, 9, 111, 16, 177, 53, 94, 85, 72, 32, 147, 184, 117, 30, 54, 34, 70, 149, 157, 109, 73,
- FIG. 79 is a block diagram showing a configuration example of the receiving device 12 of FIG.
- An OFDM processing unit (OFDM operation) 151 receives an OFDM signal from the transmitter 11 (FIG. 7) and performs signal processing of the OFDM signal. Data obtained by the OFDM processing unit 151 performing signal processing is supplied to a frame management unit (Frame Management) 152.
- a frame management unit (Frame Management) 152 receives an OFDM signal from the transmitter 11 (FIG. 7) and performs signal processing of the OFDM signal.
- Data obtained by the OFDM processing unit 151 performing signal processing is supplied to a frame management unit (Frame Management) 152.
- the frame management unit 152 processes (frames interprets) a frame composed of data supplied from the OFDM processing unit 151, and obtains a signal of target data obtained as a result thereof and a signal of control data as a frequency deinterleaver. (Frequency Deinterleaver) 161 and 153, respectively.
- the frequency deinterleaver 153 performs frequency deinterleaving in symbol units on the data from the frame management unit 152, and supplies the data to a demapper 154.
- the demapper 154 demaps the data (data on the constellation) from the frequency deinterleaver 153 based on the constellation (constellation) of signal points determined by the orthogonal modulation performed on the transmitting device 11 side (signal constellation). Decode and orthogonally demodulate, and the resultant data ((the likelihood of the LDPC code)) is supplied to the LDPC decoder (LDPC decoder) 155.
- LDPC decoder LDPC decoder
- the LDPC decoder 155 (decoding unit) performs LDPC decoding of the LDPC code from the demapper 154, and supplies the resulting LDPC target data (here, BCH code) to a BCH decoder (BCH decoder) 156.
- the BCH decoder 156 performs BCH decoding of the LDPC target data from the LDPC decoder 155, and outputs control data (signaling) obtained as a result.
- the frequency deinterleaver 161 performs frequency deinterleaving in symbol units on the data from the frame management unit 152, and supplies the data to the SISO / MISO decoder (SISO / MISO decoder) 162.
- SISO / MISO decoder SISO / MISO decoder
- the SISO / MISO decoder 162 performs space-time decoding of the data from the frequency deinterleaver 161 and supplies it to a time deinterleaver (Time Deinterleaver) 163.
- the time deinterleaver 163 deinterleaves the data from the SISO / MISO decoder 162 on a symbol basis and supplies the data to a demapper 164.
- the demapper 164 demaps the data (data on the constellation) from the time deinterleaver 163 based on the constellation (constellation) of the signal points determined by the orthogonal modulation performed on the transmitting device 11 side (signal constellation). Decoding and quadrature demodulation, and the resulting data is supplied to a bit deinterleaver 165.
- the bit deinterleaver 165 performs bit deinterleaving of the data from the demapper 164, and supplies (the likelihood of) the LDPC code that is the data after the bit deinterleaving to the LDPC decoder 166.
- the LDPC decoder 166 performs the LDPC decoding of the LDPC code from the bit deinterleaver 165, and supplies the resulting LDPC target data (here, the BCH code) to the BCH decoder 167.
- the BCH decoder 167 performs BCH decoding of the LDPC target data from the LDPC decoder 155, and supplies the resultant data to a BB descrambler 168.
- the BB descrambler 168 subjects the data from the BCH decoder 167 to BB descrambling, and supplies the resulting data to a null deletion unit (Null Deletion) 169.
- the null removing unit 169 removes the null inserted in the padder 112 of FIG. 8 from the data from the BB descrambler 168, and supplies the null to the demultiplexer (Demultiplexer) 170.
- the demultiplexer 170 separates each of the one or more streams (target data) multiplexed into the data from the null removal unit 169, performs necessary processing, and outputs the result as an output stream (Output stream).
- the receiving device 12 can be configured without providing a part of the block illustrated in FIG. That is, for example, when the transmitting device 11 (FIG. 8) is configured without the time interleaver 118, the SISO / MISO encoder 119, the frequency interleaver 120, and the frequency interleaver 124, the receiving device 12 A time deinterleaver 163, a SISO / MISO decoder 162, and a frequency deinterleaver 161, which are blocks respectively corresponding to the time interleaver 118, the SISO / MISO encoder 119, the frequency interleaver 120, and the frequency interleaver 124 of the transmission apparatus 11. And can be configured without providing the frequency deinterleaver 153.
- FIG. 80 is a block diagram showing a configuration example of the bit de-interleaver 165 of FIG.
- the bit deinterleaver 165 comprises a block deinterleaver 54 and a groupwise deinterleaver 55, and performs (bit) deinterleaving of symbol bits of symbols which are data from the demapper 164 (FIG. 79).
- the block deinterleaver 54 performs block deinterleave (a reverse process of block interleaving) corresponding to block interleaving performed by the block interleaver 25 of FIG. 9 on symbol bits of symbols from the demapper 164, ie, block Block deinterleaving is performed to restore the position of (the likelihood of) the code bit of the LDPC code rearranged by interleaving to the original position, and the resulting LDPC code is supplied to the group-wise deinterleaver 55.
- block deinterleave a reverse process of block interleaving
- the group-wise deinterleaver 55 performs group-wise de-interleaving corresponding to the group-wise interleaving performed by the group-wise interleaver 24 in FIG. 9 on the LDPC code from the block de-interleaver 54 (a reverse process of the group-wise interleaving) That is, for example, the group-wise de-interleaving to restore the original order is performed by rearranging, in bit group units, the code bits of the LDPC code whose arrangement has been changed in bit group units by the group-wise interleaving described in FIG.
- the bit deinterleaver 165 when parity interleaving, group-wise interleaving, and block interleaving are performed on the LDPC code supplied from the demapper 164 to the bit deinterleaver 165, the bit deinterleaver 165 generates parity corresponding to the parity interleaving.
- De-interleaving inverse processing of parity interleaving, that is, parity de-interleaving for restoring code bits of an LDPC code rearranged by parity interleaving back to the original order
- block de-interleaving corresponding to block interleaving, and group-wise interleaving All of the corresponding group-wise de-interleaving can be done.
- the block deinterleaver 54 that performs block deinterleaving corresponding to block interleaving, and the group-wise deinterleaver 55 that performs group-wise deinterleaving that corresponds to group-wise interleaving are: Although provided, a block performing parity deinterleaving corresponding to parity interleaving is not provided, and parity deinterleaving is not performed.
- bit de-interleaver 165 group-wise de-interleaver 55
- LDPC decoder 166 an LDPC code in which block de-interleaving and group-wise de-interleaving are performed and parity de-interleaving is not performed. Is supplied.
- the LDPC decoder 166 is a column permutation equivalent to parity interleaving for an LDPC decoding of the LDPC code from the bit deinterleaver 165 and a parity check matrix H of the type B method used by the LDPC encoder 115 of FIG. 8 for LDPC encoding.
- FIG. 81 is a flowchart for describing processes performed by the demapper 164, the bit deinterleaver 165, and the LDPC decoder 166 in FIG.
- step S111 the demapper 164 demaps and orthogonally demodulates the data from the time deinterleaver 163 (data on the constellation mapped to the signal point), supplies it to the bit deinterleaver 165, and the processing , And proceeds to step S112.
- step S112 the bit deinterleaver 165 deinterleaves (bit deinterleaves) the data from the demapper 164, and the process proceeds to step S113.
- step S112 in the bit deinterleaver 165, the block deinterleaver 54 performs block deinterleaving on data (symbols) from the demapper 164, and group code bits of the resulting LDPC code into groups. It is supplied to the Wise De interleaver 55.
- the group-wise deinterleaver 55 subjects the LDPC code from the block de-interleaver 54 to group-wise deinterleaving, and supplies (the likelihood of) the resulting LDPC code to the LDPC decoder 166.
- step S113 the LDPC decoder 166 performs LDPC decoding of the LDPC code from the group-wise deinterleaver 55 using the parity check matrix H used in the LDPC encoding by the LDPC encoder 115 of FIG. 8, ie, for example, The conversion check matrix obtained from the matrix H is used, and the data obtained as a result is output to the BCH decoder 167 as the decoding result of the LDPC target data.
- the block deinterleaver 54 for performing block deinterleaving and the groupwise deinterleaver 55 for performing groupwise deinterleaving are separately configured for the convenience of description.
- the block de-interleaver 54 and the group-wise de-interleaver 55 can be integrally configured.
- the receiver 12 can be configured without providing the group-wise de-interleaver 55 that performs group-wise de-interleaving.
- the LDPC decoding performed by the LDPC decoder 166 in FIG. 79 will be further described.
- LDPC of LDPC code in which block deinterleaving and group-wise deinterleaving from the group-wise de-interleaver 55 are performed and parity de-interleaving is not performed.
- a converted parity check matrix obtained by performing at least a column permutation equivalent to parity interleaving on a parity check matrix H of type B method that the LDPC encoder 115 of FIG. This is performed using a transformed parity check matrix (FIG. 29) obtained by row permutation on the matrix (FIG. 27).
- FIG. 82 is a diagram illustrating an example of a parity check matrix H of an LDPC code with a code length N of 90 and a coding rate of 2/3.
- 0 is represented by a period (.).
- the parity matrix has a step structure.
- FIG. 83 is a diagram showing a parity check matrix H ′ obtained by subjecting the parity check matrix H of FIG. 82 to the row permutation of equation (11) and the column permutation of equation (12).
- s, t, x and y are integers in the range of 0 ⁇ s ⁇ 5, 0 ⁇ t ⁇ 6, 0 ⁇ x ⁇ 5, 0 ⁇ t ⁇ 6, respectively. It is.
- the remainder becomes 1 for the 61st and subsequent columns (parity matrix) by dividing by 6 into 61, 67, 73, 79, and 85th columns, respectively.
- a matrix obtained by performing row and column permutation on the parity check matrix H of FIG. 82 is the parity check matrix H ′ of FIG.
- the row permutation of the parity check matrix H does not affect the arrangement of code bits of the LDPC code.
- the column permutation of equation (12) is the information length K of parity interleaving in which the above-described K + qx + y + 1st code bit is interleaved at the position of the K + Py + x + 1th code bit.
- 60 as the parallel factor P, and 6 as the divisor q ( M / P) of the parity length M (here, 30), respectively correspond to parity interleaving.
- the parity check matrix H ′ of FIG. 83 is the K + qx + y + 1 th column of the parity check matrix H of FIG. 82 (hereinafter, referred to as original parity check matrix as appropriate) H, K + Py + x + 1 th It is a transformed parity check matrix obtained by performing at least column permutation in which column permutation is performed.
- the converted parity check matrix H ′ in FIG. 83 is a parity check matrix of the LDPC code c ′ obtained by performing column substitution of Equation (12) on the LDPC code c of the original parity check matrix H.
- Equation (12) column permutation of equation (12) is performed on LDPC code c of original parity check matrix H, and LDPC code c ′ after column permutation is decoded using transformed check matrix H ′ in FIG. 83 (LDPC decoding) (12) to obtain the same decoding result as in the case of decoding the LDPC code of the original parity check matrix H using the parity check matrix H.
- LDPC decoding LDPC decoding
- FIG. 84 is a diagram showing the transformed parity check matrix H ′ of FIG. 83, which is spaced in units of a 5 ⁇ 5 matrix.
- the transformed parity check matrix H ′ of FIG. 84 is composed of a 5 ⁇ 5 identity matrix, a quasi identity matrix, a shift matrix, a sum matrix, and a 0 matrix. Therefore, these 5 ⁇ 5 matrices (unit matrix, quasi-unit matrix, shift matrix, sum matrix, 0 matrix) that form the transformed parity check matrix H ′ are hereinafter referred to as configuration matrices as appropriate.
- FIG. 85 is a block diagram showing a configuration example of a decoding device that performs such decoding.
- FIG. 85 decodes the LDPC code using the converted parity check matrix H ′ of FIG. 84 obtained by performing at least the column permutation of equation (12) on the original parity check matrix H of FIG.
- the structural example of a decoding apparatus is shown.
- Decoding device in FIG. 85 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 304 18 to select the selector 305, the reception data memory 306 for storing received data, a variable node calculation section 307, a decoded word calculation section 309 And a received data rearranging unit 310 and a decoded data rearranging unit 311.
- the branch data storage memory 300 is composed of six FIFOs 300 1 to 300 6, which is the number obtained by dividing the number of rows 30 of the conversion parity check matrix H ′ of FIG. 84 by the number of rows of the configuration matrix (parallel factor P) 5.
- the FIFO300 the data corresponding to the first position from the first row of the conversion parity check matrix H of FIG. 84 'to the fifth row (messages v i from variable nodes) were packed in each line both in the lateral direction Stored in a form (ignoring 0). That is, the j-th row and the i-th column, (j, i) When be expressed as, in the storage area of the first stage of the FIFO 300 1, the conversion parity check matrix H '(1,1) to (5,5) Data corresponding to the position of 1 in the 5 ⁇ 5 identity matrix of is stored.
- shift matrices (1, 21) to (5, 25) of the transformation parity check matrix H ′ (shift matrices obtained by cyclically shifting the 5 ⁇ 5 unit matrix by three in the right direction) Data corresponding to the position of 1 is stored.
- data is stored in association with the conversion parity check matrix H ′.
- shift matrices of (1, 86) to (5, 90) of the transformed parity check matrix H ′ (1 in the first row of the 5 ⁇ 5 unit matrix are replaced with 0
- the data corresponding to the position 1 of the shift matrix (which is cyclically shifted left by one) is stored.
- FIFO300 The 2, data corresponding to one position from the sixth row of the conversion parity check matrix H of FIG. 84 'to the line 10 is stored. That, FIFO300 in the storage area of the first stage 2, only one cyclic shift unit matrix of the sum matrix (5 ⁇ 5 to the right of the conversion parity check matrix H 'from (6,1) (10,5) 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 are stored. In the second stage storage area, data corresponding to the position of 1 of the second shift matrix constituting the sum matrix of (6, 1) to (10, 5) of the transformed parity check matrix H ′ is stored. Ru.
- the constituent matrix is a P ⁇ P unit matrix with a weight of 1, a quasi-unit matrix in which one or more of the elements of the unit matrix is 0, or
- a unit matrix or a quasi-unit matrix is expressed in the form of a sum of a plurality of cyclically shifted shift matrices
- data corresponding to the position of the unit matrix whose unit weight is 1, the unit matrix, or the shift matrix are stored in the same address (same FIFO from among the FIFO 300 1 to 300 6).
- FIFO300 3 to 300 6 also stores the data in an associated relationship with the conversion parity check matrix H 'similarly.
- Edge data storage memory 304, the column number 90 of the conversion parity check matrix H ', and a to 304 18 18 FIFOs 304 1 not divided by 5 is the column number of the component matrices (parallel factor P).
- the FIFO304 1 the data corresponding to the first position from the first row of the conversion parity check matrix H of FIG. 84 'to the fifth column (messages u j from the check nodes) are packed vertically in each column both Are stored (in a form ignoring 0). That is, the storage area of the first stage of the FIFOs 304 1, the corresponding data is stored in the 1 position of the unit matrix of 5 ⁇ 5 of the conversion parity check matrix H 'from (1,1) (5,5) .
- the sum matrix of (6, 1) to (10, 5) of the transformed parity check matrix H ′ (the first shift in which the 5.times.5 unit matrix is cyclically shifted to the right by one
- Data corresponding to the position of 1 of the first shift matrix constituting the matrix and the sum matrix, which is the sum of the second shift matrix that is cyclically shifted to the right by two, is stored.
- data corresponding to the position of 1 of the second shift matrix constituting the sum matrix of (6, 1) to (10, 5) of the transformed parity check matrix H ′ is stored.
- the constituent matrix is a P ⁇ P unit matrix with a weight of 1, a quasi-unit matrix in which one or more of the elements of the unit matrix is 0, or
- a unit matrix or a quasi-unit matrix is expressed in the form of a sum of a plurality of cyclically shifted shift matrices
- data corresponding to the position of the unit matrix whose unit weight is 1, the unit matrix, or the shift matrix are stored in the same address (same FIFO from among the FIFOs 304 1 to 304 18).
- data is stored also in the fourth and fifth storage areas in association with the conversion parity check matrix H ′.
- the FIFO304 1 number of stages of the storage area is adapted to 5 which is a maximum number of 1 in the row direction in the fifth row from the first row of the conversion parity check matrix H '(Hamming weight).
- FIFO304 2 and 304 3 also store data in an associated relationship with the conversion parity check matrix H 'similarly, respective lengths (number) is 5.
- FIFO304 4 to 304 12 likewise store data in an associated relationship with the conversion parity check matrix H ', each of length 3.
- FIFO304 13 to 304 18 similarly stores data in association with the conversion parity check matrix H ', each of length 2.
- Edge data storage memory 300 consists of six FIFO 300 1 to 300 6, five messages D311 supplied from the preceding cyclic shift circuit 308, they belong to the rows of the conversion parity check matrix H 'throat in FIG. 84 according to the information (Matrix data) D312, a FIFO to store the data, select from among the FIFO300 1 to 300 6, will be stored in the order together five messages D311 to the selected FIFO. Also, the edge data storage memory 300, when reading data, sequentially reads five messages D300 1 from FIFO 300 1, supplied to the next stage of the selector 301. Edge data storage memory 300, after the end of the message read from the FIFO 300 1, from FIFO 300 2 to 300 6, in turn, reads the message, to the selector 301.
- the selector 301 in accordance with the select signal D 301, of the FIFO 300 1 to 300 6, select the five messages from the FIFO currently data is read as a message D302, and supplies to the check node calculation section 302.
- the cyclic shift circuit 303 processes the five messages D303 1 to D 3035 obtained by the check node calculation unit 302 into several unit matrices (or quasi-unit matrices) whose corresponding branches are original in the transformed parity check matrix H ′. It cyclically shifts based on information (Matrix data) D305 indicating whether it is click-shifted, and supplies the result as a message D304 to the branch data storage memory 304.
- Edge data storage memory 304 consists of 18 FIFOs 304 1 to 304 18, according to whether the information D305 5 single message supplied from the preceding cyclic shift circuit 303 D304 belongs to the row of the conversion parity check matrix H 'throat , the FIFO to store the data, select from among the FIFO304 1 to 304 18, will be stored in the order together five messages D304 to the selected FIFO. Also, 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 in accordance with a select signal D307, FIFOs 304 of from 1 to 304 18, select the five messages from the FIFO currently data is read as a message D 308, the decoded word calculation section and the variable node calculation section 307 Supply to 309.
- received data rearranging section 310 rearranges LDPC code D313 corresponding to parity check matrix H in FIG. 82 received through communication path 13 by performing column substitution of equation (12) to obtain received data D314,
- the received data memory 306 is supplied.
- the reception data memory 306 calculates and stores reception LLRs (log-likelihood ratios) from the reception data D314 supplied from the reception data rearranging unit 310, and collects the five reception LLRs together as a reception value D309.
- the variable node calculation unit 307 and the decoded word calculation unit 309 are supplied.
- the variable node calculation is performed according to the equation (1) using the five reception values D309 (the reception value u 0i of the equation (1)) supplied from the memory 306, and the message D310 (D310 1 to D310 5 ) (message v i of equation (1)) is supplied to the cyclic shift circuit 308.
- Cyclic shift circuit 308 the D310 5 to messages D310 1 not calculated by the variable node calculation section 307, the corresponding unit matrix branch is based in the conversion parity check matrix H 'of (or quasi unit matrix) a number cyclic shift The information is cyclically shifted based on the information as to whether the result is stored, and the result is supplied as the message D 311 to the branch data storage memory 300.
- one decoding (variable node operation and check node operation) of an LDPC code can be performed.
- the decoding device in FIG. 85 obtains and outputs a final decoding result in the decoded word calculation unit 309 and the decoded data rearrangement unit 311.
- the decoded word calculation section 309 consists of five decoded word calculators 309 1 to 309 5
- the selector 305 is five messages D308 to output (to D308 1 D308 5) and (messages u j of the expression (5))
- the five received values D 309 (received value u 0i of the equation (5)) supplied from the received data memory 306 as the final stage of the plurality of times of decoding based on the equation (5) Word) and supplies the decoded data D315 obtained as a result to the decoded data sorting unit 311.
- the decoded data reordering unit 311 rearranges the order by performing reverse permutation of the column substitution of Expression (12) on the decoded data D 315 supplied from the decoded word calculation unit 309, and the final decoding result Output as D316.
- one or both of row permutation and column permutation are applied to a parity check matrix (original check matrix), and a P ⁇ P unit matrix, one or more of 1 of its elements is set to 0
- a combination matrix of P ⁇ P 0 matrices that is, a quasi identity matrix, a shift matrix in which the identity matrix or quasi identity matrix is cyclically shifted, an identity matrix, a quasi identity matrix, or a sum of shift matrices
- node operations check node operations and variable node operations
- the node operations are equal in number to the number of rows and columns
- the number of iterations of decoding can be performed with the operating frequency kept within a feasible range.
- the LDPC decoder 166 that configures the reception device 12 of FIG. 79 performs, for example, 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 transmitting apparatus 11 of FIG. 8 has a step structure, for example, as shown in FIG.
- the parity interleaver 23 of the transmission apparatus 11 interleaves the K + qx + y + 1st code bit at the position of the K + Py + x + 1th code bit.
- the information length K is set to 60
- the parallel factor P is set to 5
- the group-wise deinterleaver 55 applies an LDPC code not subjected to parity deinterleaving to the LDPC decoder 166, that is, the column of Expression (12).
- the LDPC code in a state in which the replacement has been performed is supplied, and the LDPC decoder 166 performs the same process as the decoding device in FIG. 85 except that the column replacement of Equation (12) is not performed.
- FIG. 86 is a view showing a configuration example of the LDPC decoder 166 of FIG.
- LDPC decoder 166 is configured the same as the decoding device of FIG. 85 except that reception data rearranging section 310 of FIG. 85 is not provided, and column replacement of equation (12) Since the same processing as the decoding device in FIG. 85 is performed except that the description is omitted.
- the LDPC decoder 166 can be configured without providing the received data rearranging unit 310, the size can be reduced compared to the decoding device in FIG.
- the code length N of the LDPC code is 90
- the information length K is 60
- the parallel factor (the number of rows and the number of columns of the configuration matrix) P is 5.
- the LDPC code that performs factor P of 360 and divisor q of M / P the LDPC decoder 166 in FIG. 86 targets P check node operations and variable node operations for such an LDPC code. It is applicable to the case of performing LDPC decoding by performing simultaneously.
- the parity part of the decoding result is unnecessary, and when only information bits of the decoding result are output, the LDPC decoder 166 is not provided without the decoded data rearrangement unit 311. Can be configured.
- FIG. 87 is a diagram for explaining block deinterleaving performed by the block deinterleaver 54 in FIG.
- the sequence of code bits of the LDPC code is returned (restored) to the original order by performing the reverse processing to the block interleaving of the block interleaver 25 described in FIG.
- the LDPC code code sequence is the original sequence by writing and reading the LDPC code to m columns equal to the bit number m of the symbol. Will be returned.
- the part 1 of the LDPC code in the symbol unit of m bits is written in the row direction from the first row of all m columns. That is, the code bits of the LDPC code, which are m-bit symbols, are written in the row direction.
- Writing of part 1 in m-bit units is sequentially performed toward the lower row of m columns, and when writing of part 1 is completed, as shown in FIG. 87, the writing is performed on the first column unit of the column. From the left, reading out part 1 is performed towards the left-to-right column.
- the LDPC code of (1) is returned as an array of code bits of an original LDPC code (LDCP code before block interleaving).
- FIG. 88 is a block diagram showing another configuration example of the bit deinterleaver 165 of FIG.
- bit deinterleaver 165 of FIG. 88 is configured in the same manner as the case of FIG. 80 except that a parity deinterleaver 1011 is newly provided.
- the bit deinterleaver 165 is composed of a block deinterleaver 54, a group-wise deinterleaver 55, and a parity deinterleaver 1011 and performs bit deinterleaving of the LDPC code code bits from the demapper 164. .
- the block de-interleaver 54 performs block de-interleaving (process reverse to block interleaving) corresponding to block interleaving performed by the block interleaver 25 of the transmitter 11 on the LDPC code from the demapper 164, ie, block interleaving Block deinterleaving is performed to return the position of the code bit replaced by B. to the original position, and the resulting LDPC code is supplied to the group-wise deinterleaver 55.
- the group-wise deinterleaver 55 performs group-wise de-interleaving corresponding to group-wise interleaving as rearrangement processing performed by the group-wise interleaver 24 of the transmission apparatus 11 on the LDPC code from the block de-interleaver 54.
- the LDPC code obtained as a result of group-wise de-interleaving is supplied from the group-wise de-interleaver 55 to the parity de-interleaver 1011.
- the parity deinterleaver 1011 performs parity deinterleave corresponding to parity interleaving performed by the parity interleaver 23 of the transmitter 11 on code bits after group-wise deinterleaving in the group-wise deinterleaver 55 (reverse of parity interleaving). Processing, i.e., parity de-interleaving that restores the original ordered code bits of the LDPC code rearranged by parity interleaving.
- the LDPC code obtained as a result of parity deinterleaving is supplied from the parity deinterleaver 1011 to the LDPC decoder 166.
- LDPC decoder 166 is an LDPC code subjected to block de-interleaving, group-wise de-interleaving and parity de-interleaving, ie, LDPC encoding according to parity check matrix H
- the LDPC decoder 166 performs the LDPC decoding of the LDPC code from the bit deinterleaver 165 using the parity check matrix H used for the LDPC encoding by the LDPC encoder 115 of the transmission apparatus 11.
- the LDPC decoder 166 uses LDPC decoding of the LDPC code from the bit de-interleaver 165 and a check matrix H (of the type-B method) used by the LDPC encoder 115 of the transmission apparatus 11 for LDPC coding. It is performed using itself or using a transformed parity check matrix obtained by at least performing column permutation corresponding to parity interleaving on the parity check matrix H.
- the bit de-interleaver 165 (the parity de-interleaver 1011) supplies the LDPC code obtained by the LDPC coding according to the parity check matrix H to the LDPC decoder 166
- Column permutation of the LDPC decoding of the code into the parity check matrix H of the type B scheme itself used for LDPC encoding by the LDPC encoder 115 of the transmission apparatus 11 or the parity check matrix of the type A scheme used for LDPC encoding (FIG. 27)
- the parity check matrix (FIG. 28) obtained by performing the process of FIG.
- the LDPC decoder 166 performs, for example, full serial decoding in which operations of messages (check node message, valid node message) are sequentially performed one node at a time.
- Decoding device that performs LDPC decoding by full serial decoding method, and operation of messages simultaneously (parallelly) for all nodes Cormorants can be composed of a decoding device for performing LDPC decoding by full parallel decoding (full parallel decoding) scheme.
- the LDPC decoder 166 at least column replacement equivalent to parity interleaving is performed on the parity check matrix H of the type B method that the LDPC encoder 115 of the transmission apparatus 11 uses for LDPC encoding.
- the LDPC decoder 166 Is a decoding device of an architecture that simultaneously performs check node operation and variable node operation P (or submultiples of P other than 1), and is similar to column permutation (parity interleaving) for obtaining a conversion parity check matrix
- the decoding apparatus (FIG. 85) including the received data reordering unit 310 that rearranges the code bits of the LDPC code is configured. It is possible.
- block deinterleaver 54 that performs block deinterleaving
- group-wise deinterleaver 55 that performs group-wise deinterleaving
- parity de-interleaver 1011 that performs parity deinterleaving
- two or more of the block deinterleaver 54, the groupwise deinterleaver 55, and the parity deinterleaver 1011 are separately configured, but the parity interleaver 23 of the transmitting apparatus 11, the groupwise interleaver 24, And, like the block interleaver 25, it can be configured integrally.
- FIG. 89 is a block diagram showing a first configuration example of a receiving system to which the receiving device 12 can be applied.
- the receiving system includes an acquiring unit 1101, a transmission path decoding processing unit 1102, and an information source decoding processing unit 1103.
- the acquisition unit 1101 may be, for example, a terrestrial digital broadcast, a satellite digital broadcast, a CATV network, the Internet, and the like, for example, a signal including an LDPC code obtained by at least LDPC encoding LDPC target data such as program image data and audio data. And a transmission path (processing path) (not shown) such as a network of FIG.
- the acquisition unit 1101 may be a tuner or a tuner. It consists of STB (Set Top Box) etc.
- the acquisition unit 1101 is, for example, a NIC (Network Interface Card) or the like.
- Network I / F Inter face
- the transmission path decoding processing unit 1102 corresponds to the receiving device 12.
- the transmission path decoding processing unit 1102 subjects the signal acquired by the acquisition unit 1101 via the transmission path to transmission path decoding processing including at least processing for correcting an error occurring in the transmission path, and the resulting signal is
- the information source decoding processing unit 1103 is supplied.
- 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, and the transmission path decoding processing unit 1102 For example, transmission path decoding processing such as error correction processing is performed on such a signal.
- error correction coding for example, there are LDPC coding, BCH coding, and the like.
- at least LDPC encoding is performed as error correction encoding.
- the transmission path decoding process may include demodulation of a modulated signal.
- the information source decoding processing unit 1103 performs an information source decoding process including at least a process of decompressing 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 encoding for compressing information in order to reduce the amount of data such as image and sound as the information.
- the information source decoding processing unit 1103 performs information source decoding processing such as processing (expansion processing) of decompressing compressed information into original information, for a signal subjected to transmission path decoding processing.
- the information source decoding processing unit 1103 performs processing for decompressing the compressed information into the original information. I can not do it.
- the decompression processing for example, there is MPEG decoding and the like.
- the transmission path decoding processing may include descrambling and the like.
- compression coding such as MPEG coding is performed on data such as an image and sound in the acquisition unit 1101, and further, an error correction code such as LDPC coding
- an error correction code such as LDPC coding
- the signal that has been converted is acquired through the transmission line and supplied to the transmission line decoding processing unit 1102.
- the transmission path decoding processing unit 1102 performs, for example, processing similar to that performed by the receiving device 12 on the signal from the acquisition unit 1101 as transmission path decoding processing, and the resulting signal is an information source. It is supplied to the decoding processing unit 1103.
- the information source decoding processing unit 1103 subjects the signal from the transmission path decoding processing unit 1102 to information source decoding processing such as MPEG decoding, and outputs an image or sound obtained as a result.
- information source decoding processing such as MPEG decoding
- the reception system of FIG. 89 as described above can be applied to, for example, a television tuner that receives television broadcasting as digital broadcasting.
- 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). It is possible.
- a set of the acquisition unit 1101 and the transmission path decoding processing unit 1102 or the transmission path decoding processing unit 1102 and the information source decoding processing can be configured as one independent device.
- FIG. 90 is a block diagram showing a second configuration example of a receiving system to which the receiving device 12 can be applied.
- the receiving system of FIG. 90 is common to the case of FIG. 89 in that it has an acquiring unit 1101, a transmission path decoding processing unit 1102, and an information source decoding processing unit 1103, and 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 for displaying an image or a speaker for outputting an 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 an audio.
- the reception system of FIG. 90 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, and 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. 91 is a block diagram showing a third configuration example of a receiving system to which the receiving device 12 can be applied.
- the reception system of FIG. 91 is common to the case of FIG. 89 in that it includes an acquisition unit 1101 and a transmission path decoding processing unit 1102.
- the receiving system of FIG. 91 is different from the case of FIG. 89 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 TS of MPEG) output by 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 ).
- a recording (storage) medium such as an optical disk, a hard disk (magnetic disk), or a flash memory .
- the reception system of FIG. 91 as described above can be applied to a recorder or the like that records television broadcasting.
- the receiving system is configured by providing an information source decoding processing unit 1103, and the signal after the information source decoding processing is performed in the information source decoding processing unit 1103, that is, an image obtained by decoding or Audio can be recorded by the recording unit 1121.
- FIG. 92 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 in a hard disk 705 or a ROM 703 as a recording medium incorporated in the computer.
- the program may be temporarily or in a removable recording medium 711 such as a flexible disc, a compact disc read only memory (CD-ROM), a magneto optical disc (MO), a digital versatile disc (DVD), a magnetic disc or a semiconductor memory. It can be stored (recorded) permanently.
- a removable recording medium 711 such as a flexible disc, a compact disc read only memory (CD-ROM), a magneto optical disc (MO), a digital versatile disc (DVD), a magnetic disc or a semiconductor memory.
- a removable recording medium 711 such as a flexible disc, a compact disc read only memory (CD-ROM), a magneto optical disc (MO), a digital versatile disc (DVD), a magnetic disc or a semiconductor memory. It can be stored (recorded) permanently.
- Such removable recording medium 711 can be provided as so-called package software.
- the program is installed in the computer from the removable recording medium 711 as described above, and is wirelessly transferred from the download site to the computer via an artificial satellite for digital satellite broadcasting, LAN (Local Area Network),
- the program can be transferred by wire to a computer via a network such as the Internet, and the computer can receive the program transferred as such by the communication unit 708 and install it in the built-in hard disk 705.
- the computer incorporates a CPU (Central Processing Unit) 702.
- An input / output interface 710 is connected to the CPU 702 via a bus 701.
- 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.
- the program stored in the 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 network, received by the communication unit 708 and installed in the hard disk 705, or from the removable recording medium 711 mounted on the drive 709.
- a program read out and installed in the hard disk 705 is loaded to a random access memory (RAM) 704 and executed.
- RAM random access memory
- the CPU 702 performs the processing according to the above-described flowchart or the processing performed by the configuration of the above-described block diagram. Then, the CPU 702 outputs the processing result from the output unit 706 configured of an LCD (Liquid Crystal Display), a speaker, or the like, for example, via the input / output interface 710 as needed, or from the communication unit 708. Transmission, and further recording on the hard disk 705 or the like.
- the output unit 706 configured of an LCD (Liquid Crystal Display), a speaker, or the like
- processing steps for describing a program for causing a computer to perform various processing do not necessarily have to be processed chronologically in the order described as a flowchart, and may be performed in parallel or individually. It also includes the processing to be performed (for example, parallel processing or processing by an object).
- the program may be processed by one computer or may be distributed and processed by a plurality of computers. Furthermore, the program may be transferred to a remote computer for execution.
- the above-described new LDPC code (test matrix initial value table) and GW pattern can be used for a satellite channel, a ground wave, a cable (wired channel), and the other communication channel 13 (FIG. 7). Furthermore, the new LDPC code and GW pattern can be used for data transmission other than digital broadcasting.
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)
- Radar Systems Or Details Thereof (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020207011032A KR102591936B1 (ko) | 2017-10-31 | 2018-10-17 | 송신 장치, 송신 방법, 수신 장치 및 수신 방법 |
US16/757,791 US11700019B2 (en) | 2017-10-31 | 2018-10-17 | Transmission device, transmission method, reception device, and reception method |
BR112020008014-4A BR112020008014A2 (pt) | 2017-10-31 | 2018-10-17 | dispositivo e método de transmissão, e, dispositivo e método de recepção. |
EP18872880.2A EP3706319B1 (en) | 2017-10-31 | 2018-10-17 | Transmission and reception using ldpc codes of length 17280 with code rates of 13/16 and 14/16 |
PH12020550536A PH12020550536A1 (en) | 2017-10-31 | 2020-04-30 | Transmission device, transmission method, reception device, and reception method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-209878 | 2017-10-31 | ||
JP2017209878A JP6930377B2 (ja) | 2017-10-31 | 2017-10-31 | 送信装置及び送信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019087774A1 true WO2019087774A1 (ja) | 2019-05-09 |
Family
ID=66331751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/038586 WO2019087774A1 (ja) | 2017-10-31 | 2018-10-17 | 送信装置、送信方法、受信装置、及び、受信方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US11700019B2 (zh) |
EP (1) | EP3706319B1 (zh) |
JP (4) | JP6930377B2 (zh) |
KR (1) | KR102591936B1 (zh) |
BR (1) | BR112020008014A2 (zh) |
PH (1) | PH12020550536A1 (zh) |
TW (1) | TWI772543B (zh) |
WO (1) | WO2019087774A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111865333A (zh) * | 2020-08-06 | 2020-10-30 | 南京信息工程大学 | 一种基于多元ldpc码码率兼容的比特级打孔方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7240136B2 (ja) * | 2017-11-07 | 2023-03-15 | 日本放送協会 | インターリーバ、デインターリーバ、送信装置、受信装置、及びこれらのプログラム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4224777B2 (ja) | 2003-05-13 | 2009-02-18 | ソニー株式会社 | 復号方法および復号装置、並びにプログラム |
JP2015228647A (ja) * | 2014-05-30 | 2015-12-17 | パナソニックIpマネジメント株式会社 | 送信装置、受信装置、送信方法および受信方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7260764B2 (en) | 2002-11-26 | 2007-08-21 | Qualcomm Incorporated | Multi-channel transmission and reception with block coding in a communication system |
US7596743B2 (en) | 2005-09-28 | 2009-09-29 | Ati Technologies Inc. | Method and apparatus for error management |
JP5719998B2 (ja) | 2010-02-10 | 2015-05-20 | パナソニックIpマネジメント株式会社 | 送信装置、受信装置、送信方法及び受信方法 |
US8402341B2 (en) | 2010-02-18 | 2013-03-19 | Mustafa Eroz | Method and system for providing low density parity check (LDPC) encoding and decoding |
JP5500379B2 (ja) * | 2010-09-03 | 2014-05-21 | ソニー株式会社 | データ処理装置、及びデータ処理方法 |
JP5648852B2 (ja) * | 2011-05-27 | 2015-01-07 | ソニー株式会社 | データ処理装置、及び、データ処理方法 |
EP2955853A4 (en) | 2013-02-08 | 2016-08-24 | Sony Corp | DATA PROCESSING DEVICE AND DATA PROCESSING METHOD |
US8887024B2 (en) * | 2013-02-10 | 2014-11-11 | Hughes Network Systems, Llc | Apparatus and method for improved modulation and coding schemes for broadband satellite communications systems |
KR102104937B1 (ko) * | 2013-06-14 | 2020-04-27 | 삼성전자주식회사 | Ldpc 부호의 부호화 장치, 그의 부호화 방법, 복호화 장치 및 그의 복호화 방법 |
JP6553518B2 (ja) | 2013-12-27 | 2019-07-31 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 送信方法、受信方法、および、送信装置、受信装置 |
JP2015156530A (ja) | 2014-02-19 | 2015-08-27 | ソニー株式会社 | データ処理装置、及び、データ処理方法 |
JP2015156532A (ja) * | 2014-02-19 | 2015-08-27 | ソニー株式会社 | データ処理装置、及び、データ処理方法 |
JP2015156534A (ja) * | 2014-02-19 | 2015-08-27 | ソニー株式会社 | データ処理装置、及び、データ処理方法 |
US9602137B2 (en) | 2014-02-19 | 2017-03-21 | Samsung Electronics Co., Ltd. | Transmitting apparatus and interleaving method thereof |
JP2015170912A (ja) * | 2014-03-05 | 2015-09-28 | ソニー株式会社 | データ処理装置、及び、データ処理方法 |
WO2015174053A1 (ja) | 2014-05-16 | 2015-11-19 | パナソニックIpマネジメント株式会社 | 送信方法、受信方法、送信装置および受信装置 |
US9800269B2 (en) * | 2014-05-21 | 2017-10-24 | Samsung Electronics Co., Ltd. | Transmitting apparatus and interleaving method thereof |
WO2015182102A1 (ja) | 2014-05-30 | 2015-12-03 | パナソニックIpマネジメント株式会社 | 送信装置、受信装置、送信方法および受信方法 |
KR102184832B1 (ko) * | 2014-08-14 | 2020-12-01 | 한국전자통신연구원 | 길이가 64800이며, 부호율이 4/15인 ldpc 부호화기 및 이를 이용한 ldpc 부호화 방법 |
KR102240745B1 (ko) * | 2015-01-20 | 2021-04-16 | 한국전자통신연구원 | 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법 |
-
2017
- 2017-10-31 JP JP2017209878A patent/JP6930377B2/ja active Active
-
2018
- 2018-10-17 US US16/757,791 patent/US11700019B2/en active Active
- 2018-10-17 WO PCT/JP2018/038586 patent/WO2019087774A1/ja unknown
- 2018-10-17 BR BR112020008014-4A patent/BR112020008014A2/pt unknown
- 2018-10-17 EP EP18872880.2A patent/EP3706319B1/en active Active
- 2018-10-17 KR KR1020207011032A patent/KR102591936B1/ko active IP Right Grant
- 2018-10-22 TW TW107137150A patent/TWI772543B/zh active
-
2020
- 2020-04-30 PH PH12020550536A patent/PH12020550536A1/en unknown
-
2021
- 2021-07-28 JP JP2021122877A patent/JP7115608B2/ja active Active
-
2022
- 2022-07-26 JP JP2022118890A patent/JP7338754B2/ja active Active
-
2023
- 2023-08-22 JP JP2023134679A patent/JP2023153282A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4224777B2 (ja) | 2003-05-13 | 2009-02-18 | ソニー株式会社 | 復号方法および復号装置、並びにプログラム |
JP2015228647A (ja) * | 2014-05-30 | 2015-12-17 | パナソニックIpマネジメント株式会社 | 送信装置、受信装置、送信方法および受信方法 |
Non-Patent Citations (5)
Title |
---|
"1.9 Terrestrial broadcasting transmission technology Annual Report 2017", NHK SCIENCE & TECHNOLOGY RESEARCH LABORATORIES, May 2018 (2018-05-01), pages 12 - 13, XP055615001 * |
ATSC STANDARD: PHYSICAL LAYER PROTOCOL (A/322, 7 September 2016 (2016-09-07) |
H. JINA. KHANDEKARR. J. MCELIECE: "Proceedings of 2nd International Symposium on Turbo codes and Related Topics", September 2000, article "Irregular Repeat-Accumulate Codes", pages: 1 - 8 |
JERRY WHITAKER: "ATSC Standard: Physical Layer Protocol (A/322)", ADVANCED TELEVISION SYSTEMS COMMITTEE (ATSC), 6 June 2017 (2017-06-06), pages 1 - 262, XP055555175 * |
S. Y. CHUNGG. D. FORNEYT. J. RICHARDSONR. URBANKE: "On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit", IEEE COMMUNICATIONS LEGGERS, vol. 5, no. 2, February 2001 (2001-02-01) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111865333A (zh) * | 2020-08-06 | 2020-10-30 | 南京信息工程大学 | 一种基于多元ldpc码码率兼容的比特级打孔方法 |
CN111865333B (zh) * | 2020-08-06 | 2023-06-23 | 南京信息工程大学 | 一种基于多元ldpc码码率兼容的比特级打孔方法 |
Also Published As
Publication number | Publication date |
---|---|
TWI772543B (zh) | 2022-08-01 |
EP3706319A1 (en) | 2020-09-09 |
JP2022140577A (ja) | 2022-09-26 |
KR102591936B1 (ko) | 2023-10-23 |
JP2021176239A (ja) | 2021-11-04 |
US20210152185A1 (en) | 2021-05-20 |
JP2019083421A (ja) | 2019-05-30 |
US11700019B2 (en) | 2023-07-11 |
TW201924233A (zh) | 2019-06-16 |
BR112020008014A2 (pt) | 2020-10-27 |
PH12020550536A1 (en) | 2021-03-22 |
KR20200075835A (ko) | 2020-06-26 |
EP3706319B1 (en) | 2022-10-05 |
JP2023153282A (ja) | 2023-10-17 |
JP6930377B2 (ja) | 2021-09-01 |
JP7338754B2 (ja) | 2023-09-05 |
EP3706319A4 (en) | 2020-11-04 |
JP7115608B2 (ja) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6424888B2 (ja) | データ処理装置、及び、データ処理方法 | |
JP6425100B2 (ja) | データ処理装置、及び、データ処理方法 | |
WO2015133321A1 (ja) | データ処理装置、及び、データ処理方法 | |
JP2018082368A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
WO2015133322A1 (ja) | データ処理装置、及び、データ処理方法 | |
JP6424837B2 (ja) | データ処理装置、及び、データ処理方法 | |
JP2018082367A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
JP2018082364A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
JP6424836B2 (ja) | データ処理装置、及び、データ処理方法 | |
JP7347601B2 (ja) | 受信装置、及び、受信方法 | |
JP2018082365A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
JP2018082369A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
JP2018082366A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
JP2023153282A (ja) | 送受信システム、及び、送受信方法 | |
WO2019142683A1 (ja) | 送信方法及び受信装置 | |
JP6425098B2 (ja) | データ処理装置、及び、データ処理方法 | |
JP2019126017A (ja) | 送信方法及び受信装置 | |
JP2023158099A (ja) | 受信装置、及び、受信方法 | |
JP2019016852A (ja) | 送信方法、及び、受信装置 | |
JP2018207198A (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
WO2019087782A1 (ja) | 送信装置、送信方法、受信装置、及び、受信方法 | |
WO2019142686A1 (ja) | 送信方法及び受信装置 | |
WO2019142680A1 (ja) | 送信方法及び受信装置 | |
WO2019142681A1 (ja) | 送信方法及び受信装置 | |
WO2019039284A1 (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: 18872880 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2018872880 Country of ref document: EP Effective date: 20200602 |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112020008014 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 112020008014 Country of ref document: BR Kind code of ref document: A2 Effective date: 20200422 |