1. Technical Field
Apparatuses and methods consistent with exemplary embodiments relate to a transmitter apparatus and a signal processing method thereof, and more particularly, to a transmitter apparatus which processes data and transmits the data, and a signal processing method thereof.
2. Description of the Related Art
In the 21st century information-oriented society, broadcasting communication services are moving into the era of digitalization, multi-channel, wideband, and high quality. In particular, as more high quality digital televisions, portable multimedia players (PMPs) and portable broadcasting equipment are used in recent years, there is an increasing demand for various methods for receiving digital broadcasting services.
Many standard groups have established various standards to meet such a demand for providing a variety of services to satisfy the user's needs. Still, however, there is a demand for a method for providing an improved service with more robust encoding and decoding performance.
One or more exemplary embodiments may overcome the above disadvantages and other disadvantages not described above. However, it is understood that one or more exemplary embodiment are not required to overcome the disadvantages described above, and may not overcome any of the problems described above.
One or more exemplary embodiments provide a transmitter apparatus which can map a bit included in a predetermined group from among a plurality of groups of a Low Density Parity Check (LDPC) codeword onto a predetermined bit of a modulation symbol, and transmit the bit, and a signal processing method thereof.
According to an aspect of an exemplary embodiment, there is provided a transmitter apparatus including: an encoder configured to generate an LDPC codeword by performing LDPC encoding; an interleaver configured to interleave the LDPC codeword; and a modulator configured to map the interleaved LDPC codeword onto a modulation symbol, wherein the modulator maps a bit included in a predetermined group from among a plurality of groups constituting the LDPC codeword onto a predetermined bit in the modulation symbol.
Each of the plurality of groups may be formed of 360 bits.
The interleaver may include: a parity interleaver configured to interleave parity bits constituting the LDPC codeword; a group interleaver configured to perform group-interleaving by dividing the parity-interleaved LDPC codeword into the plurality of groups and rearranging an order of the plurality of groups in; and a block interleaver configured to perform block-interleaving of the plurality of groups the order of which has been rearranged.
The group interleaver may rearrange the order of the plurality of groups based on Equation 11.
In Equation 11, π(j) may be determined based on at least one of a length of the LDPC codeword, a modulation method and a code rate.
The π(j) may be defined as in Table 37 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 6/15.
The π(j) may be defined as in Table 38 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 8/15.
The π(j) may be defined as in Table 39 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 10/15.
The π(j) may be defined as in Table 40 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 10/15.
The π(j) may be defined as in Table 41 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 12/15.
The block interleaver may perform the block-interleaving by writing the plurality of groups in each of a plurality of columns in group units in a column direction, and reading each row of the plurality of columns in which the plurality of groups are written in group units in a row direction.
The block interleaver, for the writing the plurality of groups in each of the plurality of columns, may divide the plurality of columns in at least two parts, write at least some groups among the plurality of groups in a first part of each of the plurality of columns serially, and write the remaining of the plurality of groups in the other part of each of the plurality of columns.
The group interleaver may rearrange the order of the plurality of groups such that groups including a bit to be mapped onto a same location of different modulation symbols are serially arranged to be adjacent to one another so that the block interleaver writes a predetermined group among the plurality of groups in a predetermined column among the plurality of columns.
The modulator may generate the modulation symbol by mapping a bit output from the predetermined column onto a predetermined bit in the modulation symbol.
According to an aspect of another exemplary embodiment, there is provided a signal processing method of a transmitter apparatus, the signal processing method including: generating an LDPC codeword by performing LDPC encoding; interleaving the LDPC codeword; and mapping the interleaved LDPC codeword onto a modulation symbol, wherein the mapping the interleaved LDPC codeword onto the modulation symbol includes mapping a bit included in a predetermined group from among a plurality of groups constituting the LDPC codeword onto a predetermined bit in the modulation symbol.
Each of the plurality of groups may be formed of 360 bits.
The interleaving may include: interleaving parity bits constituting the LDPC codeword; group-interleaving by dividing the parity-interleaved LDPC codeword into the plurality of groups and rearranging an order of the plurality of groups; and block-interleaving the plurality of groups the order of which has been rearranged.
The rearranging the order of the plurality of groups in the group-wise fashion may include rearranging the order of the plurality of groups in the group-wise fashion based on Equation 11.
In Equation 11, π(j) may be determined based on at least one of a length of the LDPC codeword, a modulation method, and a code rate.
The π(j) may be defined as in Table 37 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 6/15.
The π(j) may be defined as in Table 38 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 8/15.
The π(j) may be defined as in Table 39 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 10/15.
The π(j) may be defined as in Table 40 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 10/15.
The π(j) may be defined as in Table 41 when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 12/15.
The block-interleaving the plurality of groups may include: performing the block-interleaving by writing the plurality of groups in each of a plurality of columns in group units in a column direction; and reading each row of the plurality of columns in which the plurality of groups are written in group units in a row direction.
The block-interleaving the plurality of groups may include: dividing the plurality of columns in at least two parts; writing at least some groups among the plurality of groups in a first part of each of the plurality of columns serially; and writing the remaining of the plurality of groups in the other part of each of the plurality of columns.
The rearranging the order of the plurality of groups on the group-wise fashion may be performed such that groups comprising a bit to be mapped onto a same location of different modulation symbols are serially arranged to be adjacent to one another so that a predetermined group among the plurality of groups is written on a predetermined column among the plurality of columns.
The mapping the LDPC codeword onto the modulation symbol may include generating the modulation symbol by mapping a bit output from the predetermined column onto a predetermined bit in the modulation symbol.
According to various exemplary embodiments described above, improved decoding and receiving performance maybe provided.
The above and/or other aspects will be more apparent by describing in detail exemplary embodiments, with reference to the accompanying drawings, in which:
Hereinafter, various exemplary embodiments will be described in greater detail with reference to the accompanying drawings.
In the following description, same reference numerals are used for the same elements when they are depicted in different drawings. The matters defined in the description, such as detailed construction and elements, are provided to assist in a comprehensive understanding of the exemplary embodiments. Thus, it is apparent that the exemplary embodiments can be carried out without those specifically defined matters. Also, functions or elements known in the related art are not described in detail since they would obscure the exemplary embodiments with unnecessary detail.
The encoder 110 generates a Low Density Parity Check (LDPC) codeword by performing LDPC encoding. The encoder 110 may include an LDPC encoder (not shown) to perform the LDPC encoding.
Specifically, the encoder 110 LDPC-encodes input bits to information word bits to generate the LDPC codeword which is formed of the information word bits and parity bits (that is, LDPC parity bits). Here, since an LDPC code for the LDPC encoding is a systematic code, the information word bits may be included in the LDPC codeword as they are.
The LDPC codeword is formed of the information word bits and the parity bits. For example, the LDPC codeword is formed of Nldpc number of bits, and includes Kldpc number of information word bits and Nparity=Nldpc−Kldpc number of parity bits.
In this case, the encoder 110 may generate the LDPC codeword by performing the LDPC encoding based on a parity check matrix. That is, since the LDPC encoding is a process for generating an LDPC codeword to satisfy H·CT=0, the encoder 110 may use the parity check matrix when performing the LDPC encoding. Herein, H is a parity check matrix and C is an LDPC codeword.
For the LDPC encoding, the transmitter apparatus 100 may include a separate memory and may pre-store parity check matrices of various formats.
For example, the transmitter apparatus 100 may pre-store parity check matrices which are defined in Digital Video Broadcasting-Cable version 2 (DVB-C2), Digital Video Broadcasting-Satellite-Second Generation (DVB-S2), Digital Video Broadcasting-Second Generation Terrestrial (DVB-T2), etc., or may pre-store parity check matrices which are defined in the North America digital broadcasting standard system Advanced Television System Committee (ATSC) 3.0 standards, which are currently being established. However, this is merely an example and the transmitter apparatus 100 may pre-store parity check matrices of other formats in addition to these parity check matrices.
Hereinafter, a configuration of a parity check matrix will be explained in detail with reference to
First, referring to
The information word submatrix 210 includes Kldpc number of columns and the parity submatrix 220 includes Nparity=Nldpc−Kldpc number of columns. The number of rows of the parity check matrix 200 is identical to the number of columns of the parity submatrix 220, Nparity=Nldpc−Kldpc.
In addition, in the parity check matrix 200, Nldpc is a length of an LDPC codeword, Kldpc is a length of information word bits, and Nparity=Nldpc−Kldpc is a length of parity bits. The length of the LDPC codeword, the information word bits, and the parity bits mean the number of bits included in each of the LDPC codeword, the information bits, and the parity bits.
Hereinafter, the configuration of the information word submatrix 210 and the parity submatrix 220 will be explained in detail.
The information word submatrix 210 includes Kldpc number of columns (that is, 0th column to (Kldpc−1)th column), and follows the following rules:
First, M number of columns from among Kldpc number of columns of the information word submatrix 210 belong to the same group, and Kldpc number of columns is divided into Kldpc/M number of column groups. In each column group, a column is cyclic-shifted from an immediately previous column by Qldpc or Qldpc number of bits.
Herein, M is an interval at which a pattern of a column group, which includes a plurality of columns, is repeated in the information word submatrix 210 (e.g., M=360), and Qldpc is a size by which one column is cyclic-shifted from an immediately previous column in a same column group in the information word submatrix 210. M and Qldpc are integers and are determined to satisfy Qldpc=(Nldpc−Kldpc)/M. In this case, Kldpc/M is also an integer. M and Qldpc may have various values according to a length of the LDPC codeword and a code rate.
For example, when M=360 and the length of the LDPC codeword, Nldpc, is 64800, Qldpc may be defined as in table 1 presented below, and, when M=360 and the length Nldpc of the LDPC codeword is 16200, Qldpc may be defined as in table 2 presented below.
Second, when the degree of the 0th column of the ith column group (i=0, 1, . . . , Kldpc/M−1) is Di (herein, the degree is the number of value 1 existing in each column and all columns belonging to the same column group have the same degree), and a position (or an index) of each row where 1 exists in the 0th column of the ith column group is Ri,0(0), Ri,0(1), . . . , Ri,0(D
R
i,j
(k)
=R
i,(j-1)
(k)
+Q
ldpc mod(Nldpc−Kldpc) (1)
where k=0, 1, 2, . . . Di−1; i=0, 1, . . . , Kldpc/M−1; and j=1, 2, . . . , M−1.
Equation 1 can be expressed as following Equation 2:
R
i,j
(k)
={R
i,0
(k)+(j mod M)×Qldpc} mod(Nldpc−Kldpc) (2)
where k=0, 1, 2, . . . Di−1; i=0, 1, . . . , Kldpc/M−1; and j=1, 2, . . . , M−1.
In the above equations, Ri,j(k) is an index of a row where kth weight-1 is located in the jth column in the ith column group, Nldpc is a length of an LDPC codeword, Kldpc is a length of information word bits, Di is a degree of columns belonging to the ith column group, M is the number of columns belonging to a single column group, and Qldpc is a size by which each column in the column group is cyclic-shifted.
As a result, referring to these equations, when only Ri,0(k) is known, the index Ri,j(k) of the row where the kth weight-1 is located in the jth column in the ith column group can be known. Therefore, when the index value of the row where the kth weight-1 is located in the first column of each column group is stored, a position of column and row where weight-1 is located in the parity check matrix 200 having the configuration of
According to the above-described rules, all of the columns belonging to the ith column group have the same degree Di. Accordingly, the LDPC codeword which stores information on the parity check matrix according to the above-described rules may be briefly expressed as follows.
For example, when Nldpc is 30, Kldpc is 15, and Qldpc is 3, position information of the row where weight-1 is located in the 0th column of the three column groups may be expressed by a sequence of Equations 3 and may be referred to as “weight-1 position sequence”.
R
1,0
(1)=1,R1,0(2)=2,R1,0(3)=8,R1,0(4)=10,
R
2,0
(1)=0,R2,0(2)=9,R1,0(3)=13,
R
3,0
(1)=0,R3,0(2)=14. (3),
where Ri,j(k) is an index of a row where kth weight-1 is located in the jth column in the ith column group.
The weight-1 position sequence like Equation 3 which expresses an index of a row where 1 is located in the 0th column of each column group may be briefly expressed as in Table 3 presented below:
Table 3 shows positions of elements having weight-1, that is, the value 1, in the parity check matrix, and the ith weight-1 position sequence is expressed by indexes of rows where weight-1 is located in the 0th column belonging to the ith column group.
The information word submatrix 210 of the parity check matrix according to an exemplary embodiment may be defined as in Tables 4 to 26 presented below, based on the above descriptions.
Specifically, Tables 4 to 26 show indexes of rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210. That is, the information word submatrix 210 is formed of a plurality of column groups each including M number of columns, and positions of 1 in the 0th column of each of the plurality of column groups may be defined by Tables 4 to 26.
Herein, the indexes of the rows where 1 is located in the 0th column of the ith column group mean “addresses of parity bit accumulators”. The “addresses of parity bit accumulators” have the same meaning as defined in the DVB-C2/S2/T2 standards or the ATSC 3.0 standards which are currently being established, and thus, a detailed explanation thereof is omitted.
For example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 5/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 4 presented below:
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 6/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 5 presented below:
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 7/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 6 presented below:
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 8/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 7, 8 or 9 presented below:
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 9/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 10 presented below:
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 10/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 11, 12 or 13 presented below:
1413 2471 5326
1080 3820
indicates data missing or illegible when filed
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 11/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 14 presented below:
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 12/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 15 or 16 presented below:
indicates data missing or illegible when filed
97 2022 2 26 2 7
72 232 2504 3
23 318
85 13 319
22 2055 2926
37 3115 3233
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate R is 13/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 17 presented below:
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 5/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 18 presented below:
0 83 1 50 12379 13152 1570 18322 18837 19 30 19707 2049 20515 21 1 25442 2 973 28529 31811 33 46 33 32 34951
028 8500 18269 2 93 34977 399 7 41007 41908 43134
7 14 41770 43179
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 6/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 19 presented below:
32 5209 25958 31085
19 3690 19648 37778
628 21515 34995
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 7/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 20 or 21 presented below:
indicates data missing or illegible when filed
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 8/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 22 presented below:
274 17243 21989
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 9/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 23 presented below:
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 10/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 24 or 25 presented below:
indicates data missing or illegible when filed
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate R is 12/15, and M is 360, the indexes of the rows where 1 is located in the 0th column of the ith column group of the information word submatrix 210 are as shown in Table 26 presented below:
indicates data missing or illegible when filed
According to an exemplary embodiment, even when the order of numbers, i.e., indexes, in a sequence corresponding to the ith column group of the parity check matrix 200 as shown in the above-described Tables 4 to 26 is changed, the changed parity check matrix is a parity check matrix used for the same LDPC code. Therefore, a case in which the order of numbers in the sequence corresponding to the ith column group in Tables 4 to 26 is changed is covered by the inventive concept.
According to an exemplary embodiment, even when one sequence corresponding to one column group is changed and another sequence corresponding to another column group are changed to each other in Tables 4 to 26, cycle characteristics on a graph of the LDPC code and algebraic characteristics such as degree distribution are not changed. Therefore, a case in which the arrangement order of the sequences shown in Tables 4 to 26 is changed is also covered by the inventive concept.
In addition, even when a multiple of Qldpc is equally added to all numbers, i.e., indexes, corresponding to a certain column group in Tables 4 to 26, the cycle characteristics on the graph of the LDPC code or the algebraic characteristics such as degree distribution are not changed. Therefore, a result of equally adding a multiple of Qldpc to the sequences shown in Tables 4 to 26 is also covered by the inventive concept. However, it should be noted that, when the resulting value obtained by adding a multiple of Qldpc to a given sequence is greater than or equal to (Nldpc−Kldpc), a value obtained by applying a modulo operation for (Nldpc−Kldpc) to the resulting value should be applied instead.
Once positions of the rows where 1 exists in the 0th column of the ith column group of the information word submatrix 210 are defined as shown in Tables 4 to 26, positions of rows where 1 exists in another column of each column group may be defined since the positions of the rows where 1 exists in the 0th column are cyclic-shifted by Qldpc in the next column.
For example, in the case of Table 4, in the 0th column of the 0th column group of the information word submatrix 210, 1 exists in the 245th row, 449th row, 491st row, . . . .
In this case, since Qldpc=(Nldpc−Kldpc)/M=(16200−5400)/360=30, the indexes of the rows where 1 is located in the 1st column of the 0th column group may be 275(=245+30), 479(=449+30), 521(=491+30), . . . , and the indexes of the rows where 1 is located in the 2nd column of the 0th column group may be 305(=275+30), 509(=479+30), 554=521+30).
The parity submatrix 220 of the parity check matrix 200 shown in
The parity submatrix 220 includes Nldpc−Kldpc number of columns (that is, Kldpcth column to (Nldpc−1)th column), and has a dual diagonal configuration. Accordingly, the degree of columns except the last column (that is, (Nldpc−1)th column) from among the columns included in the parity submatrix 220 is 2, and the degree of the last column is 1.
As a result, the information word submatrix 210 of the parity check matrix 200 may be defined by Tables 4 to 26, and the parity submatrix 220 may have a dual diagonal configuration.
When the columns and rows of the parity check matrix 200 shown in
Q
ldpc
·i+j
M·j+i(0≦i<M,0≦j<Qldpc) (4)
K
ldpc
+Q
ldpc
·k+l
K
ldpc
+M·l+k(0≦k<M,0≦l<Qldpc) (5)
The method for permutating based on Equation 4 and Equation 5 will be explained below. Since row permutation and column permutation apply the same principle, the row permutation will be explained by the way of an example.
In the case of the row permutation, regarding the Xth row, i and j satisfying X=Qldpc×i+j are calculated and the Xth row is permutated by assigning the calculated i and j to M×j+i. For example, regarding the 7th row, i and j satisfying 7=2×i+j are 3 and 1, respectively. Therefore, the 7th row is permutated to the 13th row (10×1+3=13).
When the row permutation and the column permutation are performed in the above-described method, the parity check matrix of
Referring to
Accordingly, the parity check matrix 300 having the configuration of
Since the parity check matrix 300 is formed of the quasi-cyclic matrices of M×M, M number of columns may be referred to as a column block and M number of rows may be referred to as a row block. Accordingly, the parity check matrix 300 having the configuration of
Hereinafter, the submatrix of M×M will be explained.
First, the (Nqc_column−1)th column block of the 0th row block has a form shown in Equation 6 presented below:
As described above, A 330 is an M×M matrix, values of the 0th row and the (M−1)th column are all “0”, and, regarding 0≦i≦(M−2), the (i+1)th row of the ith column is “1” and the other values are “0”.
Second, regarding 0≦i≦(Nldpc−Kldpc)/M−1 in the parity submatrix 320, the ith row block of the (Kldpc/M+i)th column block is configured by a unit matrix IM×M 340. In addition, regarding 0≦i≦(Nldpc−Kldpc)/M−2, the (i+1)th row block of the (Kldpc/M+i)th column block is configured by a unit matrix IM×M 340.
Third, a block 350 constituting the information word submatrix 310 may have a cyclic-shifted format of a cyclic matrix P, Pa
For example, a format in which the cyclic matrix P is cyclic-shifted to the right by 1 may be expressed by Equation 7 presented below:
The cyclic matrix P is a square matrix having an M×M size and is a matrix in which a weight of each of M number of rows is 1 and a weight of each of M number of columns is 1. When aij is 0, the cyclic matrix P, that is, P0 indicates a unit matrix IM×M, and when aij is ∞, P∞ is a zero matrix.
A submatrix existing where the ith row block and the jth column block intersect in the parity check matrix 300 of
Referring back to
In this case, the encoder 110 may perform the LDPC encoding by using the parity check matrix in which the information word submatrix is defined by Tables 4 to 26, and the parity submatrix has the dual diagonal configuration (that is, the parity check matrix shown in
In addition, the encoder 110 may perform Bose, Chaudhuri, Hocquenghem (BCH) encoding as well as LDPC encoding. To achieve this, the encoder 110 may further include a BCH encoder (not shown) to perform BCH encoding.
In this case, the encoder 110 may perform encoding in an order of BCH encoding and LDPC encoding. Specifically, the encoder 110 may add BCH parity bits to input bits by performing BCH encoding and LDPC-encodes the bits to which the BCH parity bits are added into information word bits, thereby generating the LDPC codeword.
The interleaver 120 interleaves the LDPC codeword. That is, the interleaver 120 receives the LDPC codeword from the encoder 110, and interleaves the LDPC codeword based on various interleaving rules.
In particular, the interleaver 120 may interleave the LDPC codeword such that a bit included in a predetermined group from among a plurality of groups constituting the LDPC codeword (that is, a plurality of bit groups or a plurality of blocks) is mapped onto a predetermined bit of a modulation symbol.
Hereinafter, an interleaving rules used in the interleaver 120 will be explained in detail according to exemplary embodiments.
According to a first exemplary embodiment, the interleaver 120 may interleave the LDPC codeword in a method described below such that a bit included in a predetermined group from among a plurality of groups constituting the interleaved LDPC codeword is mapped onto a predetermined bit in a modulation symbol. A detailed description thereof is provided with reference to
The parity interleaver 121 interleaves parity bits constituting the LDPC codeword.
Specifically, when the LDPC codeword is generated based on the parity check matrix 200 having the configuration of
where M is an interval at which a pattern of a column group, which includes a plurality of columns, is repeated in the information word submatrix 210, that is, the number of columns included in a column group (for example, M=360), and Qldpc is a size by which each column is cyclic-shifted in the information word submatrix 210. That is, the parity interleaver 121 performs parity interleaving with respect to the LDPC codeword c=(c0, c1, . . . , cN
When the LDPC codeword encoded based on the parity check matrix 200 of
The LDPC codeword parity-interleaved after having been encoded based on the parity check matrix 200 of
For example, the LDPC codeword may have the same characteristics on the basis of M number of continuous bits. Herein, M is an interval at which a pattern of a column group is repeated in the information word submatrix and, for example, may be 360.
Specifically, a product of the LDPC codeword bits and the parity check matrix should be “0”. This means that a sum of products of the ith LDPC codeword bit, ci(i=0, 1, . . . , Nldpc−1) and the ith column of the parity check matrix should be a “0” vector. Accordingly, the ith LDPC codeword bit may be regarded as corresponding to the ith column of the parity check matrix.
In a parity check matrix according to an exemplary embodiment, M number of columns belonging to the same group have the same degree, and have a substantially great cycle characteristic. Accordingly, since M number of continuous bits in an LDPC codeword correspond to the same column group of the parity check matrix and the cycle between M number of continuous bits is substantially great, these bits have a low decoding correlation.
Specifically, in the case of the parity check matrix of
In addition, in the case of the parity check matrix of
Herein, the row permutation does not influence the cycle characteristic or algebraic characteristic of the LDPC codeword such as a degree distribution, a minimum distance, etc. since the row permutation is just to rearrange the order of rows in the parity check matrix. In addition, since the column permutation is performed for the parity submatrix 320 to correspond to parity interleaving performed in the parity interleaver 121, the parity bits of the LDPC codeword encoded by the parity check matrix 300 of
Accordingly, the bits constituting an LDPC codeword may have the same characteristics on the basis of M number of continuous bits, according to the present exemplary embodiment.
The group interleaver 122 may divide the parity-interleaved LDPC codeword into a plurality of groups and rearrange the order of the plurality of groups. That is, the group interleaver 122 interleaves the plurality of groups in group units.
To achieve this, the group interleaver 122 divides the parity-interleaved LDPC codeword into a plurality of groups by using Equation 9 or Equation 10 presented below.
where Ngroup is the total number of groups, Xj is the jth group, and uk is the kth LDPC codeword bit input to the group interleaver 122. In addition,
is the largest integer below k/360.
Since 360 in these equations indicates an example of the interval M at which the pattern of a column group is repeated in the information word submatrix, 360 in these equations can be changed to M.
The LDPC codeword which is divided into the plurality of groups may be as shown in
Referring to
Specifically, since the LDPC codeword is divided by M number of continuous bits, Kldpc number of information word bits are divided into (Kldpc/M) number of groups and Nldpc−Kldpc number of parity bits are divided into (Nldpc−Kldpc)/M number of groups. Accordingly, the LDPC codeword may be divided into (Nldpc/M) number of groups in total.
For example, when M=360 and the length Nldpc of the LDPC codeword is 64800, the number of groups Ngroups is 180, and, when the length Nldpc of the LDPC codeword is 16200, the number of groups Ngroup is 45.
As described above, the group interleaver 122 divides the LDPC codeword such that M number of continuous bits are included in a same group since the LDPC codeword has the same codeword characteristics on the basis of M number of continuous bits. Accordingly, when the LDPC codeword is grouped by M number of continuous bits, the bits having the same codeword characteristics belong to the same group.
Meanwhile, in the above exemplary embodiment, M number of bits forms each group, but this is only an example. The number of bits forming each group may vary.
For example, the number of bits forming each group may be a divisor of M. In other words, the number of bits forming each group may be a divisor of the number of columns constituting a column group of an information word submatrix of a parity check matrix. In this case, each group may consist of the number of bits which is a divisor of M. For example, if the number of columns forming a column group of an information word submatrix is 360, that is, M=360, the group interleaver 122 may divide a LDPC codeword into a plurality of groups so that the number of bits constituting each group becomes one of divisors of 360.
However, in this specification, only a case where the number of bits forming a group is M will be described for convenience of explanation,
Thereafter, the group interleaver 122 interleaves the LDPC codeword in group units. That is, the group interleaver 122 changes positions of the plurality of groups constituting the LDPC codeword and rearranges the order of the plurality of groups constituting the LDPC codeword.
In this case, the group interleaver 122 may rearrange the order of the plurality of groups by using Equation 11 presented below:
Y
j
=X
π(j)(0≦j<Ngroup) (11),
where Xj is the jth group before group interleaving, and Yj is the jth group after group interleaving.
In addition, π(j) is a parameter indicating an interleaving order and is determined by at least one of a length of an LDPC codeword, a code rate and a modulation method.
According to an exemplary embodiment, an example of π(j) may be defined as in Tables 27 to 41 presented below.
For example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 16-QAM, π(j) may be defined as in Table 27 or 28 presented below:
In the case of Table 27, Equation 11 may be expressed as Y0=Xπ(0)=X7, Y1=Xπ(1)=X17, Y2=Xπ(2)=X33, . . . , Y43=Xπ(43)=X13, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 7th group to the 0th group, the 17th group to the 1st group, the 33rd group to the 2nd group, . . . , the 13th group to the 43-rd group, and the 44th group to the 44th group.
In the case of Table 28, Equation 11 may be expressed as Y0=Xπ(0)=X6, Y1=Xπ(1)=X34, Y2=Xπ(2)=X11, . . . , Y43=Xπ(43)=X27, and Y44=Xπ(44)=X29. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 6th group to the 0th group, the 34th group to the 1st group, the 11th group to the 2nd group, . . . , the 27th group to the 43rd group, and the 29th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 16-QAM, π(j) may be defined as in Table 29 or 30 presented below:
In the case of Table 29, Equation 11 may be expressed as Y0=Xπ(0)=X32, Y1=Xπ(1)=X4, Y2=Xπ(2)=X23, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 32nd group to the 0th group, the 4th group to the 1st group, the 23rd group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 30, Equation 11 may be expressed as Y0=Xπ(0)=X32, Y1=Xπ(1)=X16, Y2=Xπ(2)=X18, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 32nd group to the 0th group, the 16th group to the 1st group, the 18th group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 31 or 32 presented below:
In the case of Table 31, Equation 11 may be expressed as Y0=Xπ(0)=X28, Y1=Xπ(1)=X6, Y2=Xπ(2)=X15, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 28th group to the 0th group, the 6th group to the 1st group, the 15th group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 32, Equation 11 may be expressed as Y0=Xπ(0)=X21, Y1=Xπ(1)=X8, Y2=Xπ(2)=X30, β, Y43=Xπ(43)=X28, and Y44=Xπ(44)=X29. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 21st group to the 0th group, the 8th group to the 1st group, the 30th group to the 2nd group, . . . , the 28th group to the 43rd group, and the 29th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 1024-QAM, π(j) may be defined as in Table 33 or 34 presented below:
In the case of Table 33, Equation 11 may be expressed as Y0=Xπ(0)=X16, Y1=Xπ(1)=X13, Y2=Xπ(2)=X1, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 16th group to the 0th group, the 13th group to the 1st group, the 1st group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 34, Equation 11 may be expressed as Y0=Xπ(0)=X16, Y1=Xπ(1)=X12, Y2=Xπ(2)=X14, β, Y43=Xπ(43)=X38, and Y44=Xπ(44)=X39. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 16th group to the 0th group, the 12th group to the 1st group, the 14th group to the 2nd group, . . . , the 38th group to the 43rd group, and the 39th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 35 or 36 presented below:
In the case of Table 35, Equation 11 may be expressed as Y0=Xπ(0)=X48, Y1=Xπ(1)=X4, Y2=Xπ(2)=X15, . . . , Y178=Xπ(178)=X178, and Y179=Xπ(179)=X179. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 48th group to the 0th group, the 4th group to the 1st group, the 15th group to the 2nd group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In the case of Table 36, Equation 11 may be expressed as Y0=Xπ(0)=X48, Y1=Xπ(1)=X61, Y2=Xπ(2)=X65, . . . , Y178=Xπ(178)=X178, and Y179=Xπ(179)=X179. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 48th group to the 0th group, the 61st group to the 1st group, the 65th group to the 2nd group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 37 presented below:
In the case of Table 37, Equation 11 may be expressed as Y0=Xπ(0)=X53, Y1=Xπ(1)=X3, Y2=Xπ(2)=X28, . . . , Y178=Xπ(178)=X26, and Y179=Xπ(179)=X31. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 53rd group to the 0th group, the 3rd group to the 1st group, the 28th group to the 2nd group, . . . , the 26th group to the 178th group, and the 31st group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 8/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 37 presented below:
In the case of Table 38, Equation 11 may be expressed as Y0=Xπ(0)=X71, Y1=Xπ(1)=X1o4, Y2=Xπ(2)=X84, . . . , Y178=Xπ(178)=X16, and Y179=Xπ(179)=X18. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 71st group to the 0th group, the 104th group to the 1st group, the 84th group to the 2nd group, . . . , the 16th group to the 178th group, and the 18th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 39 presented below. In particular, when the encoder 110 performs the LDPC encoding based on the parity check matrix defined by Table 24, the group interleaver 122 may perform group interleaving by using π(j) defined as in Table 39:
In the case of Table 39, Equation 11 may be expressed as Y0=Xπ(0)=X111, Y1=Xπ(1)=X65, Y2=Xπ(2)=X78, . . . , Y178=Xπ(178)=X85, and Y179=Xπ(179)=X118. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 111th group to the 0th group, the 65th group to the 1st group, the 78th group to the 2nd group, . . . , the 85th group to the 178th group, and the 118th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 40 presented below. In particular, when the encoder 110 performs the LDPC encoding based on the parity check matrix defined by Table 25, the group interleaver 122 may perform group interleaving by using π(j) defined as in Table 40:
In the case of Table 40, Equation 11 may be expressed as Y0=Xπ(0)=X89, Y1=Xπ(1)=X64, Y2=Xπ(2)=X50, . . . , Y178=Xπ(178)=X27, and Y179=Xπ(179)=X29. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 89th group to the 0th group, the 64th group to the 1st group, the 50th group to the 2nd group, . . . , the 27th group to the 178th group, and the 29th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 12/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 41 presented below:
In the case of Table 41, Equation 11 may be expressed as Y0=Xπ(0)=X51, Y1=Xπ(1)=X122, Y2=Xπ(2)=X91, . . . , Y178=Xπ(178)=X18, and Y179=Xπ(179)=X25. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 51st group to the 0th group, the 122nd group to the 1st group, the 91st group to the 2nd group, . . . , the 18th group to the 178th group, and the 25th group to the 179th group.
As described above, it is possible to rearrange the order of column groups in the parity check matrix having the shape of
As described above, the group interleaver 122 may rearrange the order of the plurality of groups by using Equation 11 and Tables 27 to 41.
On the other hand, since the order of the groups constituting the LDPC codeword is rearranged by the group interleaver 122, and then the groups are block-interleaved by the block interleaver 124, which will be described below, “Order of bits groups to be block interleaved” is set forth in Tables 27 to 41 in relation to π(j).
In addition, the group interleaver 122 may interleave the LDPC codeword in group units by using Equation 12 presented below:
Y
π(j))=Xj(0≦j<Ngroup) (12),
where Xj is the jth group before group interleaving, and Yj is the jth group after group interleaving.
In addition, π(j) is a parameter indicating an interleaving order and is determined by at least one of a length of an LDPC codeword, a code rate and a modulation method.
According to an exemplary embodiment, an example of π(j) may be defined as in Tables 42 to 51 presented below.
For example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 16-QAM, π(j) may be defined as in Table 42 or 43 presented below:
In the case of Table 42, Equation 12 may be expressed as X0=Yπ(0)=Y35, X1=Yπ(1)=Y31, X2=Yπ(2)=Y39, . . . , X43=Yπ(43)=Y15, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 35th group, the 1st group to the 31st group, the 2nd group to the 39th group, . . . , the 43rd group to the 15th group, and the 44th group to the 44th group.
In the case of Table 43, Equation 12 may be expressed as X0=Yπ(0)=Y34, X1=Yπ(1)=Y40, X2=Yπ(2)=Y9, . . . , X43=Yπ(43)=Y24, and X44=Yπ(44)=Y30. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 34th group, the 1st group to the 40th group, the 2nd group to the 9th group, . . . , the 43rd group to the 24th group, and the 44th group to the 30th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 64-QAM, π(j) may be defined as in Table 44 or 45 presented below:
In the case of Table 44, Equation 12 may be expressed as X0=Yπ(0)=Y18, X1=Yπ(1)=Y31, X2=Yπ(2)=Y41, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 18th group, the 1st group to the 31st group, the 2nd group to the 41th group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 45, Equation 12 may be expressed as X0=Yπ(0)=Y3, X1=Yπ(1)=Y12, X2=Yπ(2)=Y41, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 3rd group, the 1st group to the 12th group, the 2nd group to the 41st group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 46 or 47 presented below:
In the case of Table 46, Equation 12 may be expressed as X0=Yπ(0)=Y4, X1=Yπ(1)=Y13, X2=Yπ(2)=Y31, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 4th group, the 1st group to the 13th group, the 2nd group to the 31st group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 47, Equation 12 may be expressed as X0=Yπ(0)=Y3, X1=Yπ(1)=Y6, X2=Yπ(2)=Y19, . . . , X43=Yπ(43)=Y33, and X44=Yπ(44)=Y30. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 3rd group, the 1st group to the 6th group, the 2nd group to the 19th group, . . . , the 43rd group to the 33rd group, and the 44th group to the 30th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 1024-QAM, π(j) may be defined as in Table 48 or 49 presented below:
In the case of Table 48, Equation 12 may be expressed as X0=Yπ(0)=Y10, X1=Yπ(1)=Y2, X2=Yπ(2)=Y28, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 10th group, the 1st group to the 2nd group, the 2nd group to the 28th group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 49, Equation 12 may be expressed as X0=Yπ(0)=Y32, X1=Yπ(1)=Y16, X2=Yπ(2)=Y40, . . . , X43=Yπ(43)=Y39, and X44=Yπ(44)=Y13. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 32nd group, the 1st group to the 16th group, the 2nd group to the 40th group, . . . , the 43rd group to the 39th group, and the 44th group to the 13th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 50 or 51 presented below:
In the case of Table 50, Equation 12 may be expressed as X0=Yπ(0)=Y9, X1=Yπ(1)=Y6, X2=Yπ(2)=Y160, . . . , X178=Yπ(178)=Y177, and X179=Yπ(179)=Y176 Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 9th group, the 1st group to the 6th group, the 2nd group to the 160th group, . . . , the 178th group to the 177th group, and the 179th group to the 176th group.
In the case of Table 51, Equation 12 may be expressed as X0=Yπ(0)=Y23, X1=Yπ(1)=Y132, X2=Yπ(2)=Y20, . . . , X178=Yπ(178)=Y178, and X179=Yπ(179)=Y179 Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 23rd group, the 1st group to the 132nd group, the 2nd group to the 20th group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 52 presented below:
In the case of Table 52, Equation 12 may be expressed as X0=Yπ(0)=Y9, X1=Yπ(1)=Y13, X2=Yπ(2)=Y130, . . . , X178=Yπ(178)=Y47, and X179=Yπ(179)=Y90. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 9th group, the 1st group to the 13th group, the 2nd group to the 130th group, . . . , the 178th group to the 47th group, and the 179th group to the 90th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 8/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 53 presented below:
In the case of Table 53, Equation 12 may be expressed as X0=Yπ(0)=Y171, X1=Yπ(1)=Y43, X2=Yπ(2)=Y85, . . . , X178=Yπ(178)=Y109, and X179=Yπ(179)=Y106. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 171st group, the 1st group to the 43rd group, the 2nd group to the 85th group, . . . , the 178th group to the 109th group, and the 179th group to the 106th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 54 presented below:
In the case of Table 54, Equation 12 may be expressed as X0=Yπ(0)=Y71, X1=Yπ(1)=Y112, X2=Yπ(2)=Y72, . . . , X178=Yπ(178)=Y129, and X179=Yπ(179)=Y151. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 71st group, the 1st group to the 112th group, the 2nd group to the 72nd group, . . . , the 178th group to the 129th group, and the 179th group to the 151st group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 55 presented below:
In the case of Table 55, Equation 12 may be expressed as X0=Yπ(0)=Y130, X1=Yπ(1)=Y33, X2=Yπ(2)=Y69, . . . , X178=Yπ(178)=Y134, and X179=Yπ(179)=Y124. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 130th group, the 1st group to the 33rd group, the 2nd group to the 69th group, . . . , the 178th group to the 134th group, and the 179th group to the 124th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 12/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 56 presented below:
In the case of Table 56, Equation 12 may be expressed as X0=Yπ(0)=Y29, X1=Yπ(1)=Y176, X2=Yπ(2)=Y28, . . . , X178=Yπ(178)=Y163, and X179=Yπ(179)=Y166 Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups by changing the 0th group to the 29th group, the 1st group to the 176th group, the 2nd group to the 28th group, . . . , the 178th group to the 163rd group, and the 179th group to the 166th group.
As described above, the group interleaver 122 may rearrange the order of the plurality of groups by using Equation 12 and Tables 42 to 56.
Since the order of the groups constituting the LDPC codeword is rearranged by the group interleaver 122, and then the groups are block-interleaved by the block interleaver 124, which will be described below, “Order of bits groups to be block interleaved” is set forth in Tables 42 to 56 in relation to π(j).
The LDPC codeword which is group-interleaved in the above-described method is illustrated in
That is, as shown in
The group twist interleaver 123 interleaves bits in a same group. That is, the group twist interleaver 123 may rearrange the order of the bits in the same group by changing the order of the bits in the same group.
In this case, the group twist interleaver 123 may rearrange the order of the bits in the same group by cyclic-shifting a predetermined number of bits from among the bits in the same group.
For example, as shown in
In addition, the group twist interleaver 123 may rearrange the order of bits in each group by cyclic-shifting a different number of bits in each group.
For example, the group twist interleaver 123 may cyclic-shift the bits included in the group Y1 to the right by 1 bit, and may cyclic-shift the bits included in the group Y2 to the right by 3 bits.
Changing the order of the bits in the same group as described above is referred to as a group twist. The group twist may be performed to prevent bits mapped onto a single modulation symbol from being connected to a single check node. Accordingly, the group twist interleaver 123 may be omitted according to circumstances.
In addition, the group twist interleaver 123 is placed after the group interleaver 122 in the above-described example. However, this is merely an example. That is, the group twist interleaver 123 changes only the order of bits in a certain group and does not change the order of the groups. Therefore, the group twist interleaver 123 may be placed before the group interleaver 122.
The block interleaver 124 interleaves the plurality of groups the order of which has been rearranged. Specifically, the block interleaver 124 may interleave the plurality of groups the order of which has been rearranged by the group interleaver 122.
That is, the group twist interleaver 123 changes only the order of bits in the same group and does not change the order of groups by interleaving. Accordingly, the order of the groups to be block-interleaved by the block interleaver 124 may be determined by the group interleaver 122. Specifically, the order of the groups to be block-interleaved by the block interleaver 124 may be determined by π(j) defined in Tables 27 to 56.
The block interleaver 124 may interleave the plurality of groups the order of which has been rearranged by using at least one column and a plurality of rows.
Specifically, the block interleaver 124 may interleave by writing the plurality of groups on each column of the at least one column in group units in a column direction, and reading each row of the at least one column in which the plurality of groups are written in group units in a row direction.
Hereinafter, the group located in the jth position after being interleaved by the group interleaver 122 will be referred to as group Yj.
When the number of groups constituting an LDPC codeword is an integer multiple of the number of columns, the block interleaver 124 interleaves the plurality of groups by writing as many groups as the number of groups divided by the number of columns in each column serially in group units.
For example, as shown in
However, when the number of groups of the LDPC codeword is not an integer multiple of the number of columns, the block interleaver 124 may interleave by dividing each column into N number of parts (N is an integer greater than or equal to 2).
Specifically, the block interleaver 124 divides each column into a part including as many rows as the number of bits included in groups which can be written in each column in group units, and a part including the other rows, and interleaves the plurality of groups by using the divided parts.
The part including as many rows as the number of bits included in the groups which can be written in group units is formed of as many rows as an integer multiple of M. In addition, as described above, the number of codeword bits forming each group may be a divisor of M and thus, a part including columns as many as the number of bits included in each group which can be written by group units may consist of rows as many as the integer multiple of the number of bits forming each group.
In this case, the block interleaver 124 writes at least some groups which can be written in each of the plurality of columns in group units from among the plurality of groups in each of the plurality of columns serially, and then writes the other groups in the other area which remains after the at least some groups have been written in group units in each of the plurality of columns. That is, the block interleaver 124 writes the bits included in the at least some writeable group in the first part (that is, part 1) of each column in group units, and then divides the bits included in the other groups and writes the bits in the second part (that is, part 2) of each column.
For example, it is assumed that the block interleaver 124 divides each column into the first part including R1 number of rows and the second part including R2 number of rows as shown in
In this case, the block interleaver 124 writes the bits included in the groups which can be written in each column in group units in the first part of each column in the column direction.
That is, as shown in
As described above, the block interleaver 124 writes the bits included in the groups which can be written in each column in group units in the first part of each column in the column direction.
Thereafter, the block interleaver 124 divides bits included in the other groups except the groups written in the first part of each column from among the plurality of groups, and writes the bits in the second part of each column in the column direction. In this case, the block interleaver 124 divides the bits included in the other groups except the groups written in the first part of each column by the number of columns, so that the same number of bits are written in the second part of each column, and writes the divided bits in the second part of each column in the column direction.
For example, when the last group YNgroup-1 of the LDPC codeword remains as shown in
That is, the block interleaver 124 writes the bits in the 1st to R2th rows of the second part of the 1st column, writes the bits in the 1st to R2th rows of the second part of the 2nd column, . . . , etc., and writes the bits in the 1st to R2th rows of the second part of the column C. In this case, the block interleaver 124 may write the bits in the second part of each column in the column direction as shown in
In the above-described example, the block interleaver 124 writes the bits in the second part in the column direction. However, this is merely an example. That is, the block interleaver 124 may write the bits in the plurality of columns of the second parts in a row direction. In this case, the block interleaver 124 may write the bits in the first part in the same method as described above.
Specifically, referring to
On the other hand, the block interleaver 124 reads the bits written in each row of each part in the row direction. That is, as shown in
As described above, the block interleaver 124 may interleave the plurality of groups in the methods described above with reference to
In particular, in the case of
However, the group which does not belong to the first part may not be interleaved as shown in
In
The block interleaver 124 may have a different configuration according to whether bits included in a same group are mapped onto a single bit of each modulation symbol or bits included in a same group are mapped onto two bits of each modulation symbol.
Meanwhile, in case of a system where the block interleaver 124 uses a plurality of antennas, the block interleaver 124 may determine the number of columns in consideration of the number of bits forming a modulation symbol and the number of antennas in use simultaneously. For example, in a case where a plurality of bits included in the same group are respectively mapped onto a single bit of each modulation symbol, and two antennas are used, the block interleaver 124 may determine the number of columns as twice the number of bits forming a modulation symbol.
First, when bits included in the same group are mapped onto a single bit of each modulation symbol, the block interleaver 124 may have configurations as shown in Tables 57 and 58:
Herein, C (or NO is the number of columns of the block interleaver 124, R1 is the number of rows constituting the first part in each column, and R2 is the number of rows constituting the second part in each column.
Referring to Tables 57 and 58, when the number of groups constituting an LDPC codeword is an integer multiple of the number of columns, the block interleaver 124 interleaves without dividing each column. Therefore, R1 corresponds to the number of rows constituting each column, and R2 is 0. In addition, when the number of groups constituting an LDPC codeword is not an integer multiple of the number of columns, the block interleaver 124 interleaves the groups by dividing each column into the first part formed of R1 number of rows, and the second part formed of R2 number of rows.
When the number of columns of the block interleaver 124 is equal to the number of bits constituting a modulation symbol, bits included in a same group are mapped onto a single bit of each modulation symbol as shown in Tables 57 and 58.
For example, when Nldpc=64800 and the modulation method is 16-QAM, the block interleaver 124 may use four (4) columns each including 16200 rows. In this case, a plurality of groups of an LDPC codeword are written in the four (4) columns in group units and bits written in the same row in each column are output serially. In this case, since four (4) bits constitute a single modulation symbol in the modulation method of 16-QAM, bits included in the same group and output from a single column may be mapped onto a single bit of each modulation symbol. For example, bits included in a group written in the 1st column may be mapped onto the first bit of each modulation symbol.
On the other hand, when bits included in a same group are mapped onto two bits of each modulation symbol, the block interleaver 124 may have configurations as shown in Tables 59 and 60:
Herein, C (or NO is the number of columns of the block interleaver 124, R1 is the number of rows constituting the first part in each column, and R2 is the number of rows constituting the second part in each column.
Referring to Tables 59 and 60, when the number of groups constituting an LDPC codeword is an integer multiple of the number of columns, the block interleaver 124 interleaves without dividing each column. Therefore, R1 corresponds to the number of rows constituting each column, and R2 is 0. In addition, when the number of groups constituting an LDPC codeword is not an integer multiple of the number of columns, the block interleaver 124 interleaves the groups by dividing each column into the first part formed of R1 number of rows, and the second part formed of R2 number of rows.
When the number of columns of the block interleaver 124 is half of the number of bits constituting a modulation symbol as shown in Tables 59 and 60, bits included in a same group are mapped onto two bits of each modulation symbol.
For example, when Nldpc=64800 and the modulation method is 16-QAM, the block interleaver 124 may use two (2) columns each including 32400 rows. In this case, a plurality of groups of an LDPC codeword are written in the two (2) columns in group units and bits written in the same row in each column are output serially. Since four (4) bits constitute a single modulation symbol in the modulation method of 16-QAM, bits output from two rows constitute a single modulation symbol. Accordingly, bits included in the same group and output from a single column may be mapped onto two bits of each modulation symbol. For example, bits included in a group written in the 1st column may be mapped onto bits existing in any two positions of each modulation symbol.
Referring to Tables 57 to 60, the total number of rows of the block interleaver 124, that is, R1+R2, is Nldpc/C.
In addition, the number of rows of the first part, R1, is an integer multiple of the number of bits included in each group, M (e.g., M=360), and maybe expressed as └Ngroup/C ┘×M, and the number of rows of the second part, R2, may be Nldpc/C−R1. Herein, └Ngroup/C┘ is the largest integer below Nldpc/C. Since R1 is an integer multiple of the number of bits included in each group, M, bits may be written in R1 in group units.
In addition, when the number of groups of an LDPC codeword is not an integer multiple of the number of columns, it can be seen from Tables 57 to 60 that the block interleaver 124 interleaves a plurality of groups of the LDPC codeword by dividing each column into two parts.
Specifically, the length of an LDPC codeword divided by the number of columns is the total number of rows included in the each column. In this case, when the number of groups of the LDPC codeword is an integer multiple of the number of columns, each column is not divided into two parts. However, when the number of groups of the LDPC codeword is not an integer multiple of the number of columns, each column is divided into two parts.
For example, it is assumed that the number of columns of the block interleaver 124 is identical to the number of bits constituting a modulation symbol, and an LDPC codeword is formed of 64800 bits as shown in Table 57. In this case, the LDPC codeword is formed of 64800/360(=180) groups.
When the modulation method is 16-QAM, each column may have 64800/4(=16200) rows. In this case, since the number of groups of an LDPC codeword divided by the number of columns is 180/4(=45), bits can be written in each column in group units without dividing each column into two parts. That is, bits included in 45 groups, that is, 45×360(=16200) bits can be written in each column.
However, when the modulation method is 256-QAM, each column may have 64800/8(=8100) rows. In this case, since the number of groups of an LDPC codeword divided by the number of columns is 180/8=22.5, each column is divided into two parts.
In this case, since the bits should be written in the first part of each column in group units, the first part of each column has 22×360(=7920) rows and 7920 bits included in 22 groups may be written. The second part of each column has rows which are the rows of the first part subtracted from the total rows of each column. Accordingly, the second part of each column includes 8100-7920(=180) rows, and 180 bits can be written. In this case, the bits included in the other group which has not been written in the first part are divided and written in the second part of each column.
In another example, it is assumed that the number of columns of the block interleaver 124 is half of the number of bits constituting the modulation symbol, and the LDPC codeword is formed of 16200 bits as shown in Table 60. In this case, the LDPC codeword is formed of 16200/360(=45) groups.
When the modulation method is 64-QAM, each column may have 16200/3(=5400) rows. In this case, since the number of groups of the LDPC codeword divided by the number of columns is 45/3(=15), bits can be written in each column in group units without dividing each column into two parts. That is, bits included in the 15 groups, that is, 15×360(=5400) bits can be written in each column.
However, when the modulation method is 256-QAM, each column may have 16200/4(=4050) rows. In this case, since the number of groups of the LDPC codeword divided by the number of columns is 45/4=11.25, each column is divided into 2 parts.
In this case, since the bits should be written in the first part of each column in group units, the first part of each column has 11×360(=3960) rows and 3960 bits included in 11 groups may be written. The second part of each column has rows which are the rows of the first part subtracted from the total rows of each column. Accordingly, the second part of each column includes 4050-3960(=90) rows, and 90 bits can be written. In this case, the bits included in the other group which has not been written in the first part are divided and written in the second part of each column.
Hereinafter, the block interleaver of
In a group-interleaved LDPC codeword (v0, v1, . . . , vN
The LDPC codeword after group interleaving may be interleaved by the block interleaver 124 as shown in
In this case, the number of columns and the number of rows of the first part and the second part of the block interleaver 124 vary according to a modulation method as in Table 61 presented below.
Herein, a sum of the number of rows of the first part, Nr1 and the number of rows of the second part, Nr2, is equal to Nldpc/NC (herein, NC is the number of columns). In addition, since Nr1 is a multiple of 360, a plurality of bit groups may be written in the first part.
Hereinafter, an operation of the block interleaver 124 will be explained in detail.
Specifically, as shown in
and ri=(i mod Nr1), respectively.
In addition, the input bit vi (NC×Nr1≦i<Nldpc) is written in an ri row of ci column of the second part of the block interleaver 124. Herein, ci and ri are
and ri=Nr1+{(i−NC×Nr1) mod Nr2}, respectively.
An output bit qj(0≦j<Nldpc) is read from cj column of rj row. Herein, rj and cj are
and cj=0 mod NO, respectively.
For example, when the length Nldpc of an LDPC codeword is 64800 and the modulation method is 256-QAM, an order of bits output from the block interleaver 124 may be (q0, q1, q2, . . . , q63357, q63358, q63359, q63360, q63361, . . . , q64799)=(v0, v7920, v15840, . . . , v47519, v55439, v63359, v63360, v63540, . . . , v64799). Herein, the indexes of the right side of the foregoing equation may be specifically expressed for the eight (8) columns as 0, 7920, 15840, 23760, 31680, 39600, 47520, 55440, 1, 7921, 15841, 23761, 31681, 39601, 47521, 55441, . . . , 7919, 15839, 23759, 31679, 39599, 47519, 55439, 63359, 63360, 63540, 63720, 63900, 64080, 64260, 64440, 64620, . . . , 63539, 63719, 63899, 64079, 64259, 64439, 64619, 64799.
Referring back to
First, the modulator 130 demultiplexes the interleaved LDPC codeword. To achieve this, the modulator 130 may include a demultiplexer shown in
The demultiplexer demultiplexes the interleaved LDPC codeword. Specifically, the demultiplexer performs serial-to-parallel conversion with respect to the interleaved LDPC codeword, and demultiplexes the interleaved LDPC codeword into a cell having a predetermined number of bits (or a data cell).
For example, as shown in
Herein, the number of substreams, Nsubstreams, may be equal to the number of bits constituting a modulation symbol, ηmod, and the number of bits constituting the cell may be equal to Nldpc/ηmod. ηmod varies according to a modulation method and the number of generated cells varies according to the length Nldpc of the LDPC codeword as in Table 62 presented below:
Bits having the same index in each of the plurality of sub-streams may constitute a same cell. That is, in
The demultiplexer may demultiplex an input LDPC codeword bits in various methods. That is, the demultiplexer may change an order of the LDPC codeword bits and output the bits to each of the plurality of substreams, or may output the bits to each of the plurality of streams serially without changing the order of the LDPC codeword bits. These operations may be determined according to the number of columns used for interleaving in the block interleaver 124.
Specifically, when the block interleaver 124 includes as many columns as half of the number of bits constituting a modulation symbol, the demultiplexer may change the order of the input LDPC codeword bits and output the bits to each of the plurality of sub-streams. An example of a method for changing the order is illustrated in Table 63 presented below:
indicates data missing or illegible when filed
According to Table 63, when the modulation method is 16-QAM for example, the number of substreams is four (4) since the number of bits constituting the modulation symbol is four (4) in the case of 16-QAM. In this case, the demultiplexer may output, from among the serially input bits, bits with an index i satisfying i mod 4=0 to the 0th substream, bits with an index i satisfying i mod 4=1 to the 2nd substream, bits with an index i satisfying i mode 4=2 to the 1st substream, and bits with an index i satisfying i mode 4=3 to the 3rd substream.
Accordingly, the LDPC codeword bits input to the demultiplexer, (q0, q1, q2, . . . ), may be output as cells like (y0,0, y1,0, y2,0, y3,0)=(q0, q2, q1, q3), (y0,1, y1,1, y2,1, y3,1)=(q4, q6, q5, q7), . . . .
When the block interleaver 124 includes the same number of columns as the number of bits constituting a modulation symbol, the demultiplexer may output the input LDPC codeword bits to each of the plurality of streams serially without changing the order of the bits. That is, as shown in
In the above-described example, the demultiplexer outputs the input LDPC codeword bits to each of the plurality of streams serially without changing the order of the bits. However, this is merely an example. That is, according to an exemplary embodiment, when the block interleaver 124 includes the same number of columns as the number of bits constituting a modulation symbol, the demultiplexer may be omitted.
The modulator 130 may map the demultiplexed LDPC codeword onto modulation symbols. However, when the demultiplexer is omitted as described above, the modulator 130 may map LDPC codeword bits output from the interleaver 120, that is, block-interleaved LDPC codeword bits, onto modulation symbols.
The modulator 130 may modulate bits (that is, cells) output from a demultiplexer in various modulation methods such as QPSK, 16-QAM, 64-QAM, 256-QAM, 1024-QAM, 4096-QAM, etc. When the modulation method is QPSK, 16-QAM, 64-QAM, 256-QAM, 1024-QAM and 4096-QAM, the number of bits constituting a modulation symbol, ηMOD (that is, a modulation degree), may be 2, 4, 6, 8, 10 and 12, respectively.
In this case, since each cell output from the demultiplexer is formed of as many bits as the number of bits constituting a modulation symbol, the modulator 130 may generate a modulation symbol by mapping each cell output from the demultiplexer onto a constellation point serially. Herein, a modulation symbol corresponds to a constellation point on the constellation.
However, when the demultiplexer is omitted, the modulator 130 may generate modulation symbols by grouping a predetermined number of bits from interleaved bits sequentially and mapping the predetermined number of bits onto constellation points. In this case, the modulator 130 may generate the modulation symbols by using ηMOD number of bits sequentially according to a modulation method.
The modulator 130 may modulate by mapping cells output from the demultiplexer onto constellation points in a uniform constellation (UC) method.
The uniform constellation method refers to a method for mapping a modulation symbol onto a constellation point so that a real number component Re(zq) and an imaginary number component Im(zq) of a constellation point have symmetry and the modulation symbol is placed at equal intervals. Accordingly, at least two of modulation symbols mapped onto constellation points in the uniform constellation method may have the same demodulation performance.
Examples of the method for generating a modulation symbol in the uniform constellation method according to an exemplary embodiment are illustrated in Tables 64 to 71 presented below, and an example of a case of a uniform constellation 64-QAM is illustrated in
Tables 64 and 65 are used for determining a real number component Re(zq) and an imaginary number component Im(zq) when the modulation is performed in a QPSK method, Tables 66 and 67 are used for determining a real number component Re(zq) and an imaginary number component Im(zq) when the modulation is performed in a 16-QAM method, Tables 68 and 69 are used for determining a real number component Re(zq) and an imaginary number component Im(zq) when the modulation is performed in a 64-QAM method, and Tables 70 and 71 are used for determining a real number component Re(zq) and an imaginary number component Im(zq) when the modulation is performed in a 256-QAM method.
Referring to Tables 64 to 71, performance (e.g., reliability) varies according to whether a plurality of bits constituting a modulation symbol correspond to most significant bits (MSBs) or least significant bits (LSBs).
For example, in the case of 16-QAM, from among four (4) bits constituting a modulation symbol, each of the first and second bits determines a sign of each of the real number component Re(zq) and the imaginary number component Im(zq) of a constellation point onto which a modulation symbol is mapped, and the third and fourth bits determine a size of the constellation point onto which the modulation symbol is mapped.
In this case, the first and second bits for determining the sign from among the four (4) bits constituting the modulation symbol have a higher reliability than the third and fourth bits for determining the size.
In another example, in the case of 64-QAM, from among six (6) bits constituting a modulation symbol, each of the first and second bits determines a sign of each of the real number component Re(zq) and the imaginary number component Im(zq) of a constellation point onto which the modulation symbol is mapped. In addition, the third to sixth bits determine a size of the constellation point onto which the modulation symbol is mapped. From among these bits, the third and fourth bits determine a relatively large size, and the fifth and sixth bits determine a relatively small size (for example, the third bit determines which of sizes (−7, −5) and (−3, −1) corresponds to the constellation point onto which the modulation symbol is mapped, and, when (−7, −5) is determined by the third bit, the fourth bit determines which of −7 and −5 corresponds to the size of the constellation point.).
In this case, the first and second bits for determining the sign from among the six bits constituting the modulation symbol have the highest reliability, and the third and fourth bits for determining the relatively large size has the higher reliability than the fifth and sixth bits for determining the relatively small size.
As described above, in the case of the uniform constellation method, the bits constituting a modulation symbol have different reliability according to mapping locations in the modulation symbol.
The modulator 130 may modulate by mapping cells output from the demultiplexer onto constellation points in a non-uniform constellation (NUC) method.
Specifically, the modulator 130 may modulate bits output from the demultiplexer in various modulation methods such as non-uniform 16-QAM, non-uniform 64-QAM, non-uniform 256-QAM, non-uniform 1024-QAM, non-uniform 4096-QAM, etc.
Hereinafter, a method for generating a modulation symbol by using the non-uniform constellation method according to an exemplary embodiment will be explained.
First, the non-uniform constellation method has the following characteristics:
In the non-uniform constellation method, the constellation points may not regularly be arranged unlike in the uniform constellation method. Accordingly, when the non-uniform constellation method is used, performance for a signal-to-noise ratio (SNR) less than a specific value can be improved and a high SNR gain can be obtained in comparison to the uniform constellation method.
In addition, the characteristics of the constellation may be determined by one or more parameters such as a distance between constellation points. Since the constellation points are regularly distributed in the uniform constellation, the number of parameters for specifying the uniform constellation method may be one (1). However, the number of parameters necessary for specifying the non-uniform constellation method is relatively larger and the number of parameters increases as the constellation (e.g., the number of constellation points) increases.
In the case of the non-uniform constellation method, an x-axis and a y-axis may be designed to be symmetric to each other or may be designed to be asymmetric to each other. When the x-axis and the y-axis are designed to be asymmetric to each other, improved performance can be guaranteed, but decoding complexity may increase.
Hereinafter, an example of a case in which the x-axis and the y-axis are designed to be asymmetric to each other will be explained. In this case, once a constellation point of the first quadrant is defined, locations of constellation points in the other three quadrants may be determined as follows. For example, when a set of constellation points defined for the first quadrant is X, the set becomes −conj(X) in the case of the second quadrant, becomes conj(X) in the case of the third quadrant, and becomes −(X) in the case of the fourth quadrant.
That is, once the first quadrant is defined, the other quadrants may be expressed as follows:
1 Quarter (first quadrant)=X
2 Quarter (second quadrant)=−conj(X)
3 Quarter (third quadrant)=conj(X)
4 Quarter (fourth quadrant)=−X
Specifically, when the non-uniform M-QAM is used, M number of constellation points may be defined as z={z0, z1, . . . , zM-1}. In this case, when the constellation points existing in the first quadrant are defined as {x0, x1, x2, . . . , XM/4-1}, z may be defined as follows:
from z0 to zM/4-1=from x0 to xM/4
from zM/4 to z2×M/4−1=−conj(from x0 to xM/4)
from z2×M/4 to z3×M/4-1=conj(from x0 to xM/4)
from z3×M/4 to z4×M/4-1=−(from x0 to xM/4)
Accordingly, the modulator 130 may map the bits [y0, . . . , ym-1] output from the demultiplexer onto constellation points in the non-uniform constellation method by mapping the output bits onto zL having an index of
An example of the constellation of the non-uniform constellation method is illustrated in
An example of the method for modulating asymmetrically in the non-uniform constellation method in the modulator 130 is illustrated as in Tables 72 to 77 presented below. That is, according to an exemplary embodiment, modulation is performed in the non-uniform constellation method by defining constellation points existing in the first quadrant and defining constellations points existing in the other quadrants based on Tables 72 to 77.
Table 72 indicates non-uniform 16-QAM, Tables 73 to 75 indicate non-uniform 64-QAM, and tables 76 and 77 indicate non-uniform 256-QAM, and different mapping methods may be applied according to a code rate.
On the other hand, when the non-uniform constellation is designed to have the x-axis and the y-axis symmetric to each other, constellation points may be expressed similarly to those of uniform QAM and an example is illustrated as in Tables 78 to 81 presented below:
Tables 78 and 79 are tables for determining the real number component Re(zq) and the imaginary number component Im(zq) when modulation is performed in the non-uniform 1024-QAM method. That is, Table 78 indicates the real number part of the 1024-QAM, and Table 79 indicates the imaginary number part of the 1024-QAM. In addition, Tables 80 and 81 illustrate an example of a case in which modulation is performed in the non-uniform 1024-QAM method, and show xi values of Tables 78 and 79.
Since the non-uniform constellation method does not symmetrically map the modulation symbol onto the constellation point as shown in Tables 72 to 77, modulation symbols mapped onto constellation points may have different decoding performance. That is, bits constituting a modulation symbol may have different performance.
For example, referring to
In addition, it is obvious that the constellation in the uniform constellation method and the non-uniform constellation method may be rotated and/or scaled (herein, the same or different scaling factor may be applied to a real number axis and an imaginary number axis), and other variations can be applied. In addition, the illustrated constellation indicates relevant locations of the constellation points and another constellation can be derived by rotation, scaling and/or other appropriate conversion.
As described above, the modulator 130 may map modulation symbols onto constellation points by using uniform constellation methods and non-uniform constellation methods. In this case, bits constituting a modulation symbol may have different performance as described above.
LDPC codeword bits may have different codeword characteristics according to a configuration of a parity check matrix. That is, the LDPC codeword bits may have different codeword characteristics according to the number of 1 existing in the columns of the parity check matrix, that is, a column degree.
Accordingly, the interleaver 120 may interleave to map the LDPC codeword bits onto modulation symbols by considering both the codeword characteristic of the LDPC codeword bits and the reliability of the bits constituting a modulation symbol.
In particular, since bits constituting a modulation symbol have different performance when a non-uniform QAM is used, the block interleaver 124 configures the number of columns to be identical to the number of bits constituting a modulation symbol such that one of a plurality of groups of an LDPC codeword can be mapped onto bits each of which exists on a same location of each modulation symbol.
That is, when LDPC codeword bits of high decoding performance are mapped onto high reliability bits from among bits of each modulation symbol, a receiver side may show high decoding performance, but there is a problem that the LDPC codeword bits of the high decoding performance are not received. In addition, when the LDPC codeword bits of high decoding performance are mapped onto low reliability bits from among the bits of the modulation symbol, initial reception performance is excellent, and thus, overall performance is also excellent. However, when many bits showing poor decoding performance are received, error propagation may occur.
Accordingly, when LDPC codeword bits are mapped onto modulation symbols, an LDPC codeword bit having a specific codeword characteristic is mapped onto a specific bit of a modulation symbol by considering both codeword characteristics of the LDPC codeword bits and reliability of the bits of the modulation symbol, and is transmitted to a receiver side. Accordingly, the receiver side can achieve both the high reception performance and the high decoding performance.
In this case, since the LDPC codeword is divided into groups each formed of M (=360) number of bits having the same codeword characteristic and the bits are mapped respectively onto a bit of a specific location of each modulation symbol in group units, bits having a specific codeword characteristic can be mapped onto the specific location of each modulation symbol more effectively. In addition, as described above, the number of bits forming a group may be a divisor of M. However, in this specification, the number of codeword bits forming a group will be limited to M for convenience of explanation.
That is, the modulator 130 can map bits included in a predetermined group from among the plurality of groups constituting the LDPC codeword onto a predetermined bit of each modulation symbol. Herein, each of the plurality of groups may be formed of M(=360) bits.
For example, in the case of 16-QAM, bits included in a predetermined group from among the plurality of groups may be mapped onto a first bit of each modulation symbol, or may be mapped onto a first bit and a second bit.
The modulator 130 can map bits included in a predetermined group from among the plurality of groups onto a predetermined bit of each modulation symbol for the following reasons.
As described above, the block interleaver 124 interleaves a plurality of groups of an LDPC codeword in group units, the demultiplexer demultiplexes bits output from the block interleaver 124, and the modulator 130 maps demultiplexed bits (that is, cells) onto modulation symbols serially.
Accordingly, the group interleaver 122, which is placed before the block interleaver 124, interleaves the LDPC codeword in group units such that groups including bits to be mapped onto bits of specific locations of a modulation symbol can be written in the same column of the block interleaver 124, considering a demultiplexing operation of the demultiplexer.
Specifically, the group interleaver 122 may rearrange the order of a plurality of groups of an LDPC codeword in group units such that groups including bits to be mapped onto the same location of different modulation symbols are serially arranged adjacent to one another, thereby allowing the block interleaver 122 to write a predetermined group on a predetermined column. That is, the group interleaver 122 interleaves the plurality of groups of the LDPC codeword in group units based on the above-described Tables 27 to 56, so that groups including bits to be mapped onto the same location of each modulation symbol are arranged to be adjacent to one another, and the block interleaver 124 interleaves by writing the adjacent groups on the same column.
Accordingly, the modulator 130 may generate a modulation symbol by mapping a bit output from a predetermined column of the block interleaver 124 onto a predetermined bit of the modulation symbol. In this case, bits included in one group may be mapped onto one bit of each modulation symbol or may be mapped onto two bits of each modulation symbol.
To explain detail, a case in which an LDPC codeword having a length of 16200 is modulated in the non-uniform 64-QAM method will be explained.
The group interleaver 122 divides the LDPC codeword into 16200/360(=45) groups, and interleaves the plurality of groups in group units.
In this case, the group interleaver 122 determines the number of groups to be written in each column of the block interleaver 124 based on the number of columns of the block interleaver 124, and interleaves the plurality of groups in group units based on the determined number of groups.
Herein, groups written in a same column of the block interleaver 124 may be mapped onto a single specific bit or two specific bits from among bits constituting each modulation symbol according to the number of columns of the block interleaver 124. Thus, the group interleaver 122 interleaves the plurality of groups in group units such that groups including bits required to be mapped onto a predetermined bit of each modulation symbol are adjacent to one another and serially arranged, considering bit characteristic of the modulation symbol. In this case, the group interleaver 122 may use the above-described Tables 27 to 56.
Accordingly, the groups which are adjacent to one another in the LDPC codeword interleaved in group units may be written in the same column of the block interleaver 124, and the bits written in the same column may be mapped onto a single specific bit or two specific bits of each modulation symbol by the modulator 130.
For example, it is assumed that the block interleaver 124 includes as many columns as the number of bits constituting a modulation symbol, that is, six (6) columns. In this case, each column of the block interleaver 124 may be divided into a first part including 2520 rows and a second part including 180 rows, as shown in Table 58 or 61.
Accordingly, the group interleaver 122 performs group interleaving such that 2520/360(=7) groups to be written in the first part of each column of the block interleaver 124 from among the plurality of groups are serially arranged to be adjacent to one another. Accordingly, the block interleaver 124 writes the seven (7) groups on the first part of each column and divides the bits included in the other three (3) groups and writes these bits on the second part of each column.
Thereafter, the block interleaver 124 reads the bits written in each row of the first part of the plurality of columns in the row direction, and reads the bits written in each row of the second part of the plurality of columns in the row direction.
That is, the block interleaver 124 may output the bits written in each row of the plurality of columns, from the bit written in the first row of the first column to the bit written in the first row of the sixth column, sequentially like (q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, . . . )
In this case, when the demultiplexer is not used or the demultiplexer outputs serially bits input to the demultiplexer without changing the order of the bits, the LDPC codeword bits output from the block interleaver 124, (q0, q1, q2, q3, q4, q5), (q6, q7, q8, q9, q10, q11), . . . , etc. are modulated by the modulator 130. That is, the LDPC codeword bits output from the block interleaver 124, (q0, q1, q2, q3, q4, q5), (q6, q7, q8, q9, q10, q11), . . . , etc. configure cells (y0,0, y1,0, . . . , y5,0), (y0,1, y1,1, . . . , y5,1), . . . , etc. and the modulator 130 generates a modulation symbol by mapping the cells onto constellation points.
Accordingly, the modulator 130 may map bits output from a same column of the block interleaver 124 onto a single specific bit of bits constituting each modulation symbol. For example, the modulator 130 may map bits included in a group written in the first column of the block interleaver 124, that is, (q0, q6, . . . ), onto the first bit of each modulation symbol, and also, all bits written in the first column may be bits which are determined to be mapped onto the first bit of each modulation symbol according to a codeword characteristic of the LDPC codeword bits and the reliability of the bits constituting the modulation symbol.
As described above, the group interleaver 122 may interleave a plurality of groups of an LDPC codeword in group units such that the groups including bits to be mapped onto a single bit of a specific location of each modulation symbol are written in a specific column of the block interleaver 124.
On the other hand, it is assumed that the block interleaver 124 includes as many columns as half of the number of bits constituting a modulation symbol, that is, three (3) columns. In this case, each column of the block interleaver 124 is not divided into parts as shown in Table 60 and 5400 bits are written in each column.
Accordingly, the group interleaver 122 performs group interleaving such that 5400/360(=15) groups to be written in each column of the block interleaver 124 from among the plurality of groups are serially arranged to be adjacent to one another. Accordingly, the block interleaver 124 writes the 15 groups on each column.
Thereafter, the block interleaver 124 may read bits written in each row of the plurality of columns in the row direction.
That is, the block interleaver 124 may output the bits written in each row of the plurality of columns, from the bit written in the first row of the first column to the bit written in the first row of the third column, sequentially like (q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, . . . )
In this case, the demultiplexer demultiplexes the LDPC codeword bits output from the block interleaver 124 based on Table 63 described above, and output cells likes (y0,0, y1,0, . . . , y5,0)=(q0, q2, q4, q1, q3, q5), (y0,1, y1,1, . . . , y5,1)=(q6, q8, q10, q7, q9, q11) . . . , etc. and the modulator 130 generates a modulation symbol by mapping the cells onto constellation points.
Accordingly, the modulator 130 may map bits output from the same column of the block interleaver 124 onto two specific bits of each modulation symbol. For example, the modulator 130 may map (q0, q6, . . . ) from among the bits (q0, q3, q6, q9, . . . ) included in the group written in the first column in the block interleaver 124 onto the first bit of each modulation symbol, and may map (q3, q9, . . . ) on the fifth bit of each modulation symbol. The bits written in the first column are bits which are determined to be mapped onto the first bit and the fifth bit of each modulation symbol according to the codeword characteristic of the LDPC codeword bits and the reliability of the bits constituting the modulation symbol. Herein, the first bit of the modulation symbol is a bit for determining a sign of the real number component Re(zq) of a constellation point onto which the modulation symbol is mapped, and the fifth bit of the modulation symbol is a bit for determining a relatively small size of the constellation point onto which the modulation symbol is mapped.
As described above, the group interleaver 122 may interleave the plurality of groups of the LDPC codeword in group units such that groups including bits to be mapped onto two bits of specific locations of a modulation symbol are written in a specific column of the block interleaver 124.
Hereinafter, exemplary embodiments will be explained in detail.
First, according to a first exemplary embodiment, it is assumed that the encoder 110 performs LDPC encoding at a code rate of 10/15, 11/15, 12/15 and 13/15 and generates an LDPC codeword formed of 16200 bits (Nldpc=16200), and the modulator 130 uses the non-uniform 16-QAM modulation method corresponding to the code rate based on Table 72.
In this case, the group interleaver 122 may perform group interleaving by using Equation 11 described above and Table 82 presented below:
Table 82 defines π(j) in Equation 11 and is identical to Table 27 described above.
The group interleaver 122 may perform group interleaving by using Equation 12 described above and Table 83 presented below:
Table 83 defines π(j) in Equation 12 and is identical to Table 42 described above.
Herein, a result of group interleaving based on Equation 11 and Table 82 and a result of group interleaving based on Equation 12 and Table 83 are identical to each other. This is because Equation 11 and Equation 12 have an inverse relationship to each other, and Table 82 and Table 83 have an inverse relationship to each other. This is applied to exemplary embodiments presented below.
In these cases, the block interleaver 124 in which the number of columns is four (4), the number of rows of the first part is 3960(=360×11), and the number of rows of the second part is 180 according to Table 57 or 61 may be used.
Accordingly, 11 groups (X7, X17, X33, X31, X26, X10, X32, X41, X28, X8, X24) constituting an LDPC codeword are input to the first part of the first column of the block interleaver 124, 11 groups (X42, X20, X9, X35, X43, X22, X12, X38, X3, X5, X14) are input to the first part of the second column of the block interleaver 124, 11 groups (X37, X40, X19, X16, X27, X39, X25, X4, X21, X1, X23) are input to the first part of the third column of the block interleaver 124, and 11 groups (X18, X36, X0, X6, X11, X34, X2, X29, X15, X30, X13) are input to the first part of the fourth column of the block interleaver 124.
In addition, a group X44 is input to the second part of the block interleaver 124. Specifically, bits constituting the group X44 are input to the rows of the first column of the second part serially, input to the rows of the second column serially, input to the rows of the third column serially, and finally input to the rows of the fourth column serially.
In addition, the block interleaver 124 may output the bits input to the first row to the last row of each column serially, and the bits output from the block interleaver 124 may be input to the modulator 130 serially. In this case, the demultiplexer may be omitted or the demultiplexer may output the input bits serially without changing the order of the bits.
Accordingly, one bit included in each of groups X7, X42, X37 and X18 constitute a single modulation symbol.
According to an exemplary embodiment, one bit included in each of the groups X7, X42, X37 and X18 constitute a single modulation symbol based on group interleaving and block interleaving. In addition to the above-described method, other methods for constituting a single modulation symbol with one bit included in each of the groups X7, X42, X37 and X18 may be included in the inventive concept.
The performance achieved when a method according to a first exemplary embodiment is used is illustrated in
A receiver apparatus to be described later and correspond to the transmitter apparatus 100 which performs the above-described operations may include a demodulator corresponding the modulator 130, a deinterleaver corresponding to the interleaver 120 (that is, the parity interleaver 121, the group interleaver 122 and the block interleaver 124), and a decoder corresponding to the encoder 110. These demodulator, deinterleaver and decoder may correspond to a demodulator, a deinterleaver and a decoder to be explained later in reference to
According to a second exemplary embodiment, it is assumed that the encoder 110 performs LDPC encoding at a code rate of 6/15, 7/15, 8/15 and 9/15 and generates an LDPC codeword formed of 16200 bits (Nldpc=16200), and the modulator 130 uses the non-uniform 64-QAM modulation method corresponding to a code rate based on Tables 73 or 75.
In this case, the group interleaver 122 may perform group interleaving by using Equation 11 described above and Table 84 presented below:
Table 84 defines π(j) in Equation 11 and is identical to Table 29 described above.
The group interleaver 122 may perform group interleaving by using Equation 12 described above and Table 85 presented below:
Table 85 defines π(j) in Equation 12 and is identical to Table 44 described above.
In these cases, the block interleaver 124 in which the number of columns is six (6), the number of rows of the first part is 2520(=360×7), and the number of rows of the second part is 180 according to Table 58 or 61 may be used. In this case, the output of the block interleaver 124 is input to the modulator 133, and the demultiplexer may be omitted or the demultiplexer may output the input bits serially without changing the order of the bits.
The operations of the block interleaver 124 and the modulator 130 are the same as in the first exemplary embodiment, and thus, a detailed description thereof is omitted.
A receiver apparatus to be described later and correspond to the transmitter apparatus 100 which performs the above-described operations may include a demodulator corresponding the modulator 130, a deinterleaver corresponding to the interleaver 120 (that is, the parity interleaver 121, the group interleaver 122 and the block interleaver 124), and a decoder corresponding to the encoder 110. These demodulator, deinterleaver and decoder may correspond to a demodulator, a deinterleaver and a decoder to be explained later in reference to
The performance achieved when a method according to the second exemplary embodiment is used is illustrated in
According to a third exemplary embodiment, it is assumed that the encoder 110 performs LDPC encoding at a code rate of 10/15, 11/15, 12/15, and 13/15 and generates an LDPC codeword formed of 16200 bits (Nldpc=16200), and the modulator 130 uses the non-uniform 256-QAM modulation method corresponding to the code rate based on Tables 76 and 77.
In this case, the group interleaver 122 may perform group interleaving by using Equation 11 described above and Table 86 presented below:
Table 86 defines π(j) in Equation 11 and is identical to Table 31 described above.
The group interleaver 122 may perform group interleaving by using Equation 12 described above and Table 87 presented below:
Table 87 defines π(j) in Equation 12 and is identical to Table 46 described above.
In these cases, the block interleaver 124 in which the number of columns is eight (8), the number of rows of the first part is 1800(=360×5), and the number of rows of the second part is 225 according to Table 58 or 61 may be used. In this case, the output of the block interleaver 124 is input to the modulator 133, and the demultiplexer may be omitted or the demultiplexer may output the input bits serially without changing the order of the bits.
The operations of the block interleaver 124 and the modulator 130 are the same as in the first exemplary embodiment, and thus, a detailed description thereof is omitted.
A receiver apparatus to be described later and correspond to the transmitter apparatus 100 which performs the above-described operations may include a demodulator corresponding the modulator 130, a deinterleaver corresponding to the interleaver 120 (that is, the parity interleaver 121, the group interleaver 122 and the block interleaver 124), and a decoder corresponding to the encoder 110. These demodulator, deinterleaver and decoder may correspond to a demodulator, a deinterleaver and a decoder to be explained later in reference to
According to a fourth exemplary embodiment, it is assumed that the encoder 110 performs LDPC encoding at a code rate of 6/15, 7/15, 8/15 and 9/15 and generates an LDPC codeword formed of 16200 bits (Nldpc=16200), and the modulator 130 uses the non-uniform 1024-QAM modulation method corresponding to the code rate based on Tables 78 to 81.
In this case, the group interleaver 122 may perform group interleaving by using Equation 11 described above and Table 88 presented below:
Table 88 defines π(j) in Equation 11 and is identical to Table 33 described above.
The group interleaver 122 may perform group interleaving by using Equation 12 described above and Table 89 presented below:
Table 89 defines π(j) in Equation 12 and is identical to Table 48 described above.
In these cases, the block interleaver 124 in which the number of columns is 10, the number of rows of the first part is 1440(=360×4), and the number of rows of the second part is 180 according to Table 58 or 61 may be used. In this case, the output of the block interleaver 124 is input to the modulator 133, and the demultiplexer may be omitted or the demultiplexer may output the input bits serially without changing the order of the bits.
The operations of the block interleaver 124 and the modulator 130 are the same as in the first exemplary embodiment, and thus, a detailed description thereof is omitted.
A receiver apparatus to be described later and correspond to the transmitter apparatus 100 which performs the above-described operations may include a demodulator corresponding the modulator 130, a deinterleaver corresponding to the interleaver 120 (that is, the parity interleaver 121, the group interleaver 122 and the block interleaver 124), and a decoder corresponding to the encoder 110. These demodulator, deinterleaver and decoder may correspond to a demodulator, a deinterleaver and a decoder to be explained later in reference to
The performance achieved when a method according to the fourth exemplary embodiment is used is illustrated in
According to a fifth exemplary embodiment, it is assumed that the encoder 110 performs LDPC encoding at a code rate of 6/15, 7/15, 8/15 and 9/15 and generates an LDPC codeword formed of 64800 bits (Nldpc=64800), and the modulator 130 uses the non-uniform 256-QAM modulation method corresponding to the code rate based on Tables 76 and 77.
In this case, the group interleaver 122 may perform group interleaving by using Equation 11 described above and Table 90 presented below:
Table 90 defines π(j) in Equation 11 and is identical to Table 35 described above.
The group interleaver 122 may perform group interleaving by using Equation 12 described above and Table 91 presented below:
Table 91 defines π(j) in Equation 12 and is identical to Table 50 described above.
In these cases, the block interleaver 124 in which the number of columns is 8, the number of rows of the first part is 7920(=360×22), and the number of rows of the second part is 180 according to Table 58 or 61 may be used. In this case, the output of the block interleaver 124 is input to the modulator 133, and the demultiplexer (not shown) may be omitted or the demultiplexer (not shown) may output the input bits serially without changing the order of the bits.
The operations of the block interleaver 124 and the modulator 130 are the same as in the first exemplary embodiment, and thus, a detailed description thereof is omitted.
A receiver apparatus to be described later and correspond to the transmitter apparatus 100 which performs the above-described operations may include a demodulator corresponding the modulator 130, a deinterleaver corresponding to the interleaver 120 (that is, the parity interleaver 121, the group interleaver 122 and the block interleaver 124), and a decoder corresponding to the encoder 110. These demodulator, deinterleaver and decoder may correspond to a demodulator, a deinterleaver and a decoder to be explained later in reference to
In the first to fifth exemplary embodiments, when the grouping interleaving is performed by using Equation 11, a value of π(j) is applied as an index of an input group, and, when the group interleaving is performed by using Equation 12, a value of π(j) is applied as an index of an output group. Therefore, Equation 11 and 12 have an inverse relationship
In addition, the above-described first to fifth exemplary embodiments are merely an example for explaining the above inverse relationship and various tables described in this description may have the same inverse relationship like the first to fifth exemplary embodiments.
The transmitter apparatus 100 may modulate a signal mapped onto a constellation and may transmit the signal to the receiver apparatus (for example, a receiver apparatus 2700 of
According to another exemplary embodiment, the interleaver 120 may interleave an LDPC codeword in other methods, different from the methods described in the exemplary embodiment 1 beginning at paragraph [0127] above, and may map bits included in a predetermined group from among a plurality of groups constituting the interleaved LDPC codeword onto a predetermined bit of a modulation symbol. This will be explained in detail with reference to
Referring to
The group interleaver 122 may divide a parity-interleaved LDPC codeword into a plurality of groups, and may rearrange the order of the plurality of groups.
In this case, the operation of dividing the parity-interleaved LDPC codeword into the plurality of groups is the same as in the exemplary embodiment 1, and thus, a detailed description thereof is omitted.
The group interleaver 122 interleaves an LDPC codeword in group units. That is, the group interleaver 122 may rearrange the order of the plurality of groups in the LDPC codeword in group units by changing locations of the plurality of groups constituting the LDPC codeword.
In this case, the group interleaver 122 may interleave the LDPC codeword in group units by using Equation 13
Y
j
=X
π(j)(0≦j<Ngroup) (13),
where Xj is the jth group before group interleaving, and Yj is the jth group after group interleaving.
In addition, π(j) is a parameter indicating an interleaving order and is determined by at least one of a length of an LDPC codeword, a code rate and a modulation method.
According to an exemplary embodiment, an example of π(j) may be defined as in Tables 92 to 106 presented below.
For example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 16-QAM, π(j) may be defined as in Table 92 or 93 presented below:
In the case of Table 92, Equation 13 may be expressed as Y0=Xπ(0)=X7, Y1=Xπ(1)=X42, Y2=Xπ(2)=X37, . . . , Y43=Xπ(43)=X13, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 7th group to the 0th group, the 42nd group to the 1st group, the 37th group to the 2nd group, . . . , the 13th group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 93, Equation 13 may be expressed as Y0=Xπ(0)=X6, Y1=Xπ(1)=X15, Y2=Xπ(2)=X25, . . . , Y43=Xπ(43)=X27, and Y44=Xπ(44)=X29. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 6th group to the 0th group, the 15th group to the 1st group, the 25th group to the 2nd group, . . . , the 27th group to the 43rd group, and the 29th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 64-QAM, π(j) may be defined as in Table 94 or 95 presented below:
In the case of Table 94, Equation 13 may be expressed as Y0=Xπ(0)=X32, Y1=Xπ(1)=X39, Y2=Xπ(2)=X8, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 32nd group to the 0th group, the 39th group to the 1st group, the 8th group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 95, Equation 13 may be expressed as Y0=Xπ(0)=X32, Y1=Xπ(1)=X4, Y2=Xπ(2)=X23, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 32nd group to the 0th group, the 4th group to the 1st group, the 23th group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 96 or 97 presented below:
In the case of Table 96, Equation 13 may be expressed as Y0=Xπ(0)=X28, Y1=Xπ(1)=X22, Y2=Xπ(2)=X7, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 28th group to the 0th group, the 22nd group to the 1st group, the 7th group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 97, Equation 13 may be expressed as Y0=Xπ(0)=X21, Y1=Xπ(1)=X9, Y2=Xπ(2)=X13, . . . , Y43=Xπ(43)=X28, and Y44=Xπ(44)=X29. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 21st group to the 0th group, the 9th group to the 1st group, the 13th group to the 2nd group, . . . , the 28th group to the 43rd group, and the 29th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 1024-QAM, π(j) may be defined as in Table 98 or 99 presented below:
In the case of Table 98, Equation 13 may be expressed as Y0=Xπ(0)=X16, Y1=Xπ(1)=X24, Y2=Xπ(2)=X32, . . . , Y43=Xπ(43)=X43, and Y44=Xπ(44)=X44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 16th group to the 0th group, the 24th group to the 1st group, the 32nd group to the 2nd group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 99, Equation 13 may be expressed as Y0=Xπ(0)=X16, Y1=Xπ(1)=X34, Y2=Xπ(2)=X8, . . . , Y43=Xπ(43)=X38, and Y44=Xπ(44)=X39. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 16th group to the 0th group, the 34th group to the 1st group, the 8th group to the 2nd group, . . . , the 38th group to the 43rd group, and the 39th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 100 or 101 presented below:
In the case of Table 100, Equation 13 may be expressed as Y0=Xπ(0)=X48, Y1=Xπ(1)=X152, Y2=Xπ(2)=X156, . . . , Y178=Xπ(178)=X178, and Y179=Xπ(179)=X179. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 48th group to the 0th group, the 152nd group to the 1st group, the 156th group to the 2nd group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In the case of Table 101, Equation 13 may be expressed as Y0=Xπ(0)=X48, Y1=Xπ(1)=X4, Y2=Xπ(2)=X15, . . . , Y178=Xπ(178)=X178, and Y179=Xπ(179)=X179. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 48th group to the 0th group, the 4th group to the 1st group, the 15th group to the 2nd group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 102 presented below:
In the case of Table 102, Equation 13 may be expressed as Y0=Xπ(0)=X53, Y1=Xπ(1)=X71, Y2=Xπ(2)=X135, . . . , Y178=Xπ(178)=X26, and Y179=Xπ(179)=X31. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 53rd group to the 0th group, the 71st group to the 1st group, the 135th group to the 2nd group, . . . , the 26th group to the 178th group, and the 31st group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 8/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 103 presented below:
In the case of Table 103, Equation 13 may be expressed as Y0=Xπ(0)=X71, Y1=Xπ(1)=X36, Y2=Xπ(2)=X38, . . . , Y178=Xπ(178)=X16, and Y179=Xπ(179)=X18. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 71st group to the 0th group, the 36th group to the 1st group, the 38th group to the 2nd group, . . . , the 16th group to the 178th group, and the 18th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 104 presented below.
In the case of Table 104, Equation 13 may be expressed as Y0=Xπ(0)=X111, Y1=Xπ(1)=X39, Y2=Xπ(2)=X34, . . . , Y178=Xπ(178)=X85, and Y179=Xπ(179)=X118. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 111th group to the 0th group, the 39th group to the 1st group, the 34th group to the 2nd group, . . . , the 85th group to the 178th group, and the 118th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 105 presented below:
In the case of Table 105, Equation 13 may be expressed as Y0=Xπ(0)=X89, Y1=Xπ(1)=X20, Y2=Xπ(2)=X72, . . . , Y178=Xπ(178)=X27, and Y179=Xπ(179)=X29. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 89th group to the 0th group, the 20th group to the 1st group, the 72nd group to the 2nd group, . . . , the 27th group to the 178th group, and the 29th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 12/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 106 presented below:
In the case of Table 106, Equation 13 may be expressed as Y0=Xπ(0)=X51, Y1=Xπ(1)=X6, Y2=Xπ(2)=X75, . . . , Y178=Xπ(178)=X18, and Y179=Xπ(179)=X25. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 51st group to the 0th group, the 6th group to the 1st group, the 75st group to the 2nd group, . . . , the 18th group to the 178th group, and the 25th group to the 179th group.
As described above, the group interleaver 122 may rearrange the order of the plurality of groups in group units by using Equation 13 and Tables 92 to 106.
On the other hand, since the order of the groups constituting the LDPC codeword is rearranged in group units by the group interleaver 122, and then, the groups are block-interleaved by the block interleaver 124, which will be described below, “Order of bits groups to be block interleaved” is set forth in Tables 19 to 106 in relation to π(j).
In addition, the group interleaver 122 may interleave the LDPC codeword in group units by using Equation 14 presented below:
Y
π(j)
=X
j(0≦j<Ngroup) (14),
where Xj is the jth group before group interleaving, and Yj is the jth group after group interleaving.
In addition, π(j) is a parameter indicating an interleaving order and is determined by at least one of a length of an LDPC codeword, a code rate and a modulation method.
According to an exemplary embodiment, an example of π(j) may be defined as in Tables 107 to 121 presented below.
For example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 16-QAM, π(j) may be defined as in Table 107 or 108 presented below:
In the case of Table 107, Equation 14 may be expressed as X0=Yπ(0)=Y11, X1=Yπ(1)=Y38, X2=Yπ(2)=Y27, . . . , X43=Yπ(43)=Y17, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 11th group, the 1st group to the 38th group, the 2nd group to the 27th group, . . . , the 43rd group to the 17th group, and the 44th group to the 44th group.
In the case of Table 108, Equation 14 may be expressed as X0=Yπ(0)=Y7, X1=Yπ(1)=Y31, X2=Yπ(2)=Y36, . . . , X43=Yπ(43)=Y10, and X44=Yπ(44)=Y34. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 7th group, the 1st group to the 31th group, the 2nd group to the 36th group, . . . , the 43rd group to the 10th group, and the 44th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 64-QAM, π(j) may be defined as in Table 109 or 110 presented below:
In the case of Table 109, Equation 14 may be expressed as X0=Yπ(0)=Y26, X1=Yπ(1)=Y22, X2=Yπ(2)=Y41, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 26th group, the 1st group to the 22nd group, the 2nd group to the 41th group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 110, Equation 14 may be expressed as X0=Yπ(0)=Y18, X1=Yπ(1)=Y31, X2=Yπ(2)=Y41, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 18th group, the 1st group to the 31st group, the 2nd group to the 41st group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 10/15, 11/15, 12/15 and 13/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 111 or 112 presented below:
In the case of Table 111, Equation 14 may be expressed as X0=Yπ(0)=Y32, X1=Yπ(1)=Y26, X2=Yπ(2)=Y14, . . . , X43=Yπ(43)=Y43, X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 32nd group, the 1st group to the 26th group, the 2nd group to the 14th group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 112, Equation 14 may be expressed as X0=Yπ(0)=Y24, X1=Yπ(1)=Y9, X2=Yπ(2)=Y35, . . . , X43=Yπ(43)=Y30, and X44=Yπ(44)=Y6. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 24th group, the 1st group to the 9th group, the 2nd group to the 35th group, . . . , the 43rd group to the 30th group, and the 44th group to the 6th group.
In another example, when the length Nldpc of the LDPC codeword is 16200, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 1024-QAM, π(j) may be defined as in Table 113 or 114 presented below:
In the case of Table 113, Equation 14 may be expressed as X0=Yπ(0)=Y22, X1=Yπ(1)=Y20, X2=Yπ(2)=Y7, . . . , X43=Yπ(43)=Y43, and X44=Yπ(44)=Y44. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 22nd group, the 1st group to the 20th group, the 2nd group to the 7th group, . . . , the 43rd group to the 43rd group, and the 44th group to the 44th group.
In the case of Table 114, Equation 14 may be expressed as X0=Yπ(0)=Y8, X1=Yπ(1)=Y4, X2=Yπ(2)=Y40, . . . , X43=Yπ(43)=Y39, and X44=Yπ(44)=Y13. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 8th group, the 1st group to the 4th group, the 2nd group to the 40th group, . . . , the 43rd group to the 39th group, and the 44th group to the 13th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, 7/15, 8/15 and 9/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 115 or 116 presented below:
In the case of Table 115, Equation 14 may be expressed as X0=Yπ(0)=Y72, X1=Yπ(1)=Y48, X2=Yπ(2)=Y55, . . . , X178=Yπ(178)=Y178, and X179=Yπ(179)=Y179. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 72nd group, the 1st group to the 48th group, the 2nd group to the 55th group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In the case of Table 116, Equation 14 may be expressed as X0=Yπ(0)=Y9, X1=Yπ(1)=Y6, X2=Yπ(2)=Y160, . . . , X178=Yπ(178)=Y178, and X179=Yπ(179)=Y179. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 9th group, the 1st group to the 6th group, the 2nd group to the 160th group, . . . , the 178th group to the 178th group, and the 179th group to the 179th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 6/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 117 presented below:
In the case of Table 117, Equation 14 may be expressed as X0=Yπ(0)=Y72, X1=Yπ(1)=Y104, X2=Yπ(2)=Y165, . . . , X178=Yπ(178)=Y26, and X179=Yπ(179)=Y20. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 72nd group, the 1st group to the 104th group, the 2nd group to the 165th group, . . . , the 178th group to the 26th group, and the 179th group to the 20th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 8/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 118 presented below:
In the case of Table 118, Equation 14 may be expressed as X0=Yπ(0)=Y143, X1=Yπ(1)=Y169, X2=Yπ(2)=Y155, . . . , X178=Yπ(178)=Y172, and X179=Yπ(179)=Y148. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 143rd group, the 1st group to the 169th group, the 2nd group to the 155th group, . . . , the 178th group to the 172nd group, and the 179th group to the 148th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 119 presented below:
In the case of Table 119, Equation 14 may be expressed as X0=Yπ(0)=Y43, X1=Yπ(1)=Y21, X2=Yπ(2)=Y51, . . . , Xr78=Yπ(178)=Y157, and X179=Yπ(179)=Y158. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 43rd group, the 1st group to the 21th group, the 2nd group to the 51st group, . . . , the 178th group to the 157th group, and the 179th group to the 158th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 10/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 120 presented below:
In the case of Table 120, Equation 14 may be expressed as X0=Yπ(0)=Y165, X1=Yπ(1)=Y89, X2=Yπ(2)=Y27, . . . , X178=Yπ(178)=Y22, and X179=Yπ(179)=Y117. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 165th group, the 1st group to the 89th group, the 2nd group to the 27th group, . . . , the 178th group to the 22nd group, and the 179th group to the 117th group.
In another example, when the length Nldpc of the LDPC codeword is 64800, the code rate is 12/15, and the modulation method is 256-QAM, π(j) may be defined as in Table 121 presented below:
In the case of Table 121, Equation 14 may be expressed as X0=Yπ(0)=Y57, X1=Yπ(1)=Y176, X2=Yπ(2)=Y49, . . . , X178=Yπ(178)=Y79, and X179=π(179)=Y103. Accordingly, the group interleaver 122 may rearrange the order of the plurality of groups in group units by changing the 0th group to the 57th group, the 1st group to the 176th group, the 2nd group to the 49th group, . . . , the 178th group to the 79th group, and the 179th group to the 103rd group.
As described above, the group interleaver 122 may rearrange the order of the plurality of groups in group units by using Equation 14 and Tables 107 to 121.
On the other hand, since the order of the groups constituting the LDPC codeword is rearranged in group units by the group interleaver 122, and then the groups are block-interleaved by the block interleaver 124, which will be described below, “Order of bits groups to be block interleaved” is set forth in Tables 107 to 121 in relation to π(j).
When the group interleaving is performed in the above-described method, the order of the groups constituting the group-interleaved LDPC codeword is different from that of exemplary embodiment 1.
This is because the block-row interleaver 125 is used in the present exemplary embodiment instead of the block interleaver 124 in
Specifically, the group interleaver 122 may rearrange the order of the plurality of groups in such that that an arrangement unit, in which at least one group including bits to be mapped onto the same modulation symbol is serially arranged in group units, is repeated.
That is, the group interleaver 122 may serially arrange one of a plurality of first groups including bits to be mapped onto a first specific location of each modulation symbol, one of a plurality of second groups including bits to be mapped onto a second specific location of each modulation symbol, . . . , one of a plurality of nth groups including bits to be mapped onto an nth specific location of each modulation symbol, and may arrange the other groups repeatedly in the same method.
The block-row interleaver 125 interleaves the plurality of groups the order of which has been rearranged. In this case, the block-row interleaver 125 may interleave the plurality of groups the order of which has been rearranged in group units by using at least one row including a plurality of columns. This will be explained in detail below with reference to
First, when Ngroup/m is an integer, the block-row interleaver 125 includes an interleaver 125-1 including m number of rows each including M number of columns as shown in
Herein, Ngroup is the total number of groups constituting an LDPC codeword. In addition, M is the number of bits included in a single group and may be 360, for example. m may be identical to the number of bits constituting a modulation symbol or may be 1/2 of the number of bits constituting a modulation symbol. For example, when a non-uniform QAM is used, performance of the bits constituting a modulation symbol is different, and thus, by setting m to be identical to the number of bits constituting a modulation symbol, a single group can be mapped onto a single bit of the modulation symbol.
Specifically, the block-row interleaver 125 may interleave by writing each of a plurality of groups constituting an LDPC codeword in each row in the row direction in group units, and reading each column of the plurality of rows in which the plurality of groups are written in group units in the column direction.
For example, as shown in
As described above, when the number of groups constituting an LDPC codeword is an integer multiple of the number of rows, the block-row interleaver 125 may interleave by writing as many groups as the number of rows from among a plurality of groups constituting the LDPC codeword serially.
On the other hand, when the number of groups constituting an LDPC codeword is not an integer multiple of the number of rows, the block-row interleaver 125 interleaves by using N number of interleavers (N is an integer greater than or equal to 2) including different number of columns.
For example, as shown in
In this case, the first interleaver 125-2 may be used as many as └Ngroup/m┘ and one second interleaver 125-3 may be used.
Specifically, the block-row interleaver 125 may interleave a plurality of groups constituting an LDPC codeword by writing each of └Ngroup/m┘×m number of groups from among the plurality of groups constituting the LDPC codeword in each row in the row direction in group units, and reading each column of the plurality of rows in which └Ngroup/m ┘×m number of groups are written in group units in the column direction.
For example, as shown in
In addition, in a system where a plurality of antennas are used, m may be the number of bits constituting a modulation method multiplied by the number of antennas.
Thereafter, the block-row interleaver 125 may divide bits included in the other groups except the groups written in the first interleaver 125-2, and may write these bits in each row of the second interleaver 125-3 in the row direction. In this case, the same number of bits are written in each row of the second interleaver 125-3. In other words, a single bit group may be input in a plurality of columns of the second interleaver 125-3.
For example, as shown in
However, according to another exemplary embodiment, as shown in
That is, the block-row interleaver 125 may write the bits in the second interleaver 125-3 in the column direction.
For example, as shown in
In the method shown in
As described above, the block-row interleaver 125 may interleave the plurality of groups of the LDPC codeword by using the methods described above with reference to
According to the above-described method, the output of the block-row interleaver 125 may be the same as the output of the block interleaver 124. Specifically, when the block-row interleaver 125 interleaves as shown in
Specifically, when the group interleaver 122 is used based on Equation 11 and the block interleaver 124 is used, and the output groups of the group interleaver 122 are Y1(0≦i<Ngroup) and when the group interleaver 122 is used based on Equation 13 and the block-row interleaver 125 is used, and the output groups of the group interleaver 122 are Zi(0≦i<Ngroup), a relationship between the output groups Zi and Yi after group interleaving may be expressed as in Equations 15 and 16, and as a result, the same value may be output from the block interleaver 124:
Z
i+m×j
=Y
α×i+j(0≦i<m,0≦j<α) (15)
Z
i
=Y
i(α×m≦i<Ngroup) (16),
where α is └Ngroup/m┘ and is the number of groups written in a single column of the first part when the block interleaver 124 is used, and └Ngroup/m┘ is the largest integer below Ngroup/m. Here, m is identical to the number of bits constituting a modulation symbol or half of the bits constituting a modulation symbol. In addition, m is the number of columns of the block interleaver 124 and m is the number of rows of the block-row interleaver 125.
Accordingly, a case in which the group interleaving is performed by the group interleaver 122 based on Equation 11 and then the block interleaving is performed by the block interleaver 124, and a case in which the group interleaving is performed by the group interleaver 122 based on Equation 12 and then the block interleaving is performed by the block interleaver 124 may have an inverse relationship.
In addition, a case in which the group interleaving is performed by the group interleaver 122 based on Equation 13 and then the block-row interleaving is performed by the block-row interleaver 125, and a case in which the group interleaving is performed by the group interleaver 122 based on Equation 14 and then the block-row interleaving is performed by the block-row interleaver 125 may have an inverse relationship.
Accordingly, the modulator 130 may map the bits output from the block-row interleaver 125 onto a modulation symbol in the same method as when the block interleaver 124 is used.
The bit interleaving method suggested in the exemplary embodiments is performed by the parity interleaver 121, the group interleaver 122, the group twist interleaver 123, and the block interleaver 124 as shown in
For example, when the block interleaver is used and the group interleaving method expressed as in Equation 11 is used, regarding the bit groups Xj(0≦j<Ngroup) defined as in Equation 9 and Equation 10, bits belonging to m number of bit groups, for example, {Xπ(1), X(π(α+i), . . . , Xπ((m-1)×α+i)} (0≦i<α), may constitute a single modulation symbol.
Herein, α is the number of bit groups constituting the first part of the block interleaver, and α=└Ngroup/m┘. In addition, m is the number of columns of the block interleaver and may be equal to the number of bits constituting the modulation symbol or half of the number of bits constituting the modulation symbol.
Therefore, for example, regarding parity-interleaved bits ui, {uπ(i)+j, uπ(α+i)+j, . . . , uπ((m-1)×α+i)+j} (0<i≦m, 0<j≦M) may constitute a single modulation symbol. As described above, there are various methods for constituting a single modulation symbol.
In addition, the bit interleaving method suggested in the exemplary embodiments is performed by the parity interleaver 121, the group interleaver 122, the group twist interleaver 123, and the block-row interleaver 125 as shown in
For example, when the block-row interleaver is used and the group interleaving method expressed as in Equation 13 is used, regarding the bit groups Xj(0≦j<Ngroup) defined as in Equation 9 and Equation 10, bits belonging to m number of bit groups, for example, {Xπ(m×i), Xπ(m×i+1), . . . , Xπ(m×i+(m-1))} (0≦i<α), may constitute a single modulation symbol.
Herein, α is the number of bit groups constituting the first part of the block interleaver, and α=└Ngroup/m┘. In addition, m is the number of columns of the block interleaver and may be equal to the number of bits constituting the modulation symbol or half of the number of bits constituting the modulation symbol.
Therefore, for example, regarding parity-interleaved bits ui, {uπ(m×i)+j, uπ(m×i+1)+j, uπ(m×i+(m+1))+j} (0≦i<m, 0<j≦M) may constitute a single modulation symbol. As described above, there are various methods for constituting a single modulation symbol.
Hereinafter, a method for determining π(j) which is a parameter used for group interleaving according to various exemplary embodiments will be explained.
Hereinafter, a method for designing the group interleaver 122 of
Criteria to be considered first are as follows:
Criteria 1) A different interleaving method is determined according to a modulation method and a code rate.
Criteria 2) A performance characteristic of LDPC codeword bits for each group and a performance characteristic of bits constituting a modulation signal should be considered simultaneously. For example, in the case of an LDPC codeword, the leftmost bits may have high performance, and the leftmost bits constituting the modulation symbol may have high performance. That is, regarding six (6) bits y0, y1, y2, y3, y4, y5 constituting the non-uniform 64-QAM, performance P(yi) for each bit may have a relationship of P(y0)>P(y1)>P(y2)>P(y3)>P(y4)>P(y5).
Therefore, when a code of 64800 is used and the non-uniform 64-QAM (hereinafter, referred to as 64-NUQ) is used, it is determined which bit from among the six (6) bits of 64-NUQ is mapped with 180 LDPC groups, considering characteristics of the LDPC code and the modulation method simultaneously, and a case of the highest estimated performance is determined by using a density evolution method.
That is, many cases in which 180 groups can be mapped onto the six (6) bits are considered, and a theoretically estimated threshold value for each case is calculated by the density evolution method. Herein, the threshold is an SNR value and an error probability is “0” in an SNR region higher than the threshold value when the LDPC codeword is transmitted. Therefore, when the LDPC codeword is transmitted in a method of the case in which the threshold value is small from among many cases for mapping, high performance can be guaranteed. Designing an interleaver based on the density evolution is a theoretical approach. Therefore, an interleaver should be designed by verifying code performance based on an actually designed parity check matrix and based on cycle distribution, as well as the theoretical approach of the density evolution.
Herein, considering the many cases in which 180 groups can be mapped onto the six (6) bits refers to re-grouping the groups into groups related to the rows of the same degree of the parity check matrix and considering how many groups will be mapped onto the six (6) 64 QAM bits.
Hereinafter, a case where 256-QAM is used will be described in detail.
In case of a LDPC codeword, leftmost bits have superior performance, and the performance of the bits forming a modulation symbol and leftmost bits may be superior. In other words, as for eight bits constituting non-uniform 256-QAM, y0, y1, y2, y3, y4, y5, y6, y7, the performance of each bit P(yi) becomes P(y0)>P(y1)>P(y2)>P(y3)>P(y4)>P(y5)>P(y6)>P(y7) In addition, if a code rate is 12/15, there are 26 bit groups corresponding to the column group of which degree is 14 in the parity check matrix, 118 bit groups corresponding to the column group of which degree is 3 in the parity check matrix, and 36 bit groups corresponding to the column group of which degree is 2 in the parity check column, among 180 LDPC codeword bit groups.
As a result of using a density evolution method, there are 26 bit groups corresponding to the column group of which degree is 14 in the parity check matrix, as for the bit groups Xj(0≦j<25) which are defined as shown in Equations 9 and 10, there are 12 groups mapping onto y1, 1 group mapped onto y6, and 9 groups mapped onto y7.
In addition, there are 118 bit groups corresponding to the column group of which degree is 3 in the parity check matrix, as for the bit groups Xj(26≦j<143) which are defined as shown in Equations 9 and 10, there are 22 groups mapping onto y0, 10 groups mapped onto y1, 22 groups mapped onto y2, 22 groups mapped onto y3, 20 groups mapped onto y4, and 22 groups mapped onto y5
Further, there are 36 bit groups corresponding to the column group of which degree is 2 in the parity check matrix, as for the bit groups Xj(144≦j<180) which are defined as shown in Equations 9 and 10, there are 2 groups mapped onto y4, 21 groups mapped onto y6, and 13 groups mapped onto y7.
In this case, the LDPC codeword bit groups which are input and mapped onto the second part of the block interleaver 124 or the second interleaver 125-3 of the block-row interleaver 125 may guarantee the most superior performance when there are four bit groups among the bit groups corresponding to the column group of which degree is 14 in the parity check matrix.
The summary of the above-mentioned contents may be represented as shown in the following table 122.
In other words, in table 41, 22 bit groups {51, 122, 91, 111, 95, 100, 119, 130, 78, 57, 65, 26, 61, 126, 105, 143, 70, 132, 39, 102, 115, 116} are mapped onto y0, and 22 bit groups are selected from the bit groups corresponding to the column group of which degree is 3 in the parity check matrix. The selected bit groups optimize actual BER/FER performance.
In addition, 22 bit groups {6, 14, 3, 21, 71, 134, 2, 0, 140, 106, 7, 118, 23, 35, 20, 17, 50, 48, 112, 13, 66, 5} are mapped onto y1, and 12 bit groups are selected from the bit groups corresponding to the column group of which degree is 14, and 10 bit groups are selected from the bit groups corresponding to the column group of which degree is 3.
Further, 22 bit groups {75, 42, 129, 107, 30, 45, 137, 114, 37, 87, 53, 85, 101, 141, 120, 99, 88, 117, 64, 28, 135, 138} are mapped onto y2, and 22 bit groups are selected from the bit groups corresponding to the column group of which degree is 3.
In addition, 22 bit groups {108, 113, 58, 97, 38, 124, 86, 33, 74, 32, 29, 128, 67, 104, 80, 127, 56, 34, 89, 94, 49, 55} are mapped onto y3 and 22 bit groups are selected from the bit groups corresponding to the column group of which degree is 3.
Further, 22 bit groups {93, 136, 68, 62, 54, 40, 81, 103, 121, 76, 44, 84, 96, 123, 154, 98, 82, 142, 46, 169, 131, 72} are mapped onto y4, and 20 bit groups are selected from the bit groups corresponding to the column group of which degree is 3, and 2 bit groups are selected from the bit groups corresponding to the column group of which degree is 2.
In addition, 22 bit groups {47, 69, 125, 31, 83, 36, 59, 90, 79, 52, 133, 60, 92, 139, 110, 27, 73, 43, 77, 109, 63, 41} are mapped onto y5, and 22 bit groups are selected from the bit groups corresponding to the column group of which degree is 3.
Further, 22 bit groups {168, 147, 161, 165, 175, 162, 164, 158, 157, 160, 150, 171, 167, 145, 151, 153, 9, 155, 170, 146, 166, 149} are mapped onto y6, and one bit group is selected from the bit groups corresponding to the column group of which degree is 14, and 21 bit groups are selected from the bit groups corresponding to the column group of which degree is 2.
In addition, 22 bit groups {15, 159, 11, 176, 152, 156, 144, 148, 172, 178, 24, 22, 179, 4, 163, 174, 173, 19, 10, 177, 12, 16} are mapped onto y7, and 9 bit groups are selected from the bit groups corresponding to the column group of which degree is 14, and 13 bit groups are selected from the bit groups corresponding to the column group of which degree is 2.
Further, 4 bit groups {1, 8, 18, 25} are selected from the bit groups corresponding to the column group of which degree is 14, and the bit groups are input to the second part of the block interleaver or the second interleaver of the block-row interleaver. The bit group X1 is mapped onto y0 or y1, the bit group X8 is mapped onto y2 or y3, the bit group X18 is mapped onto y4 or y5, and the bit group X25 is mapped onto y6 or y7.
In the above-described method, the group interleaver 122 of
The demodulator 2710 receives and demodulates a signal transmitted from the transmitter apparatus 100. Specifically, the demodulator 2710 generates a value corresponding to an LDPC codeword by demodulating the received signal, and outputs the value to the multiplexer 2720. In this case, the demodulator 2710 may use a demodulation method corresponding to a modulation method used in the transmitter apparatus 100.
The value corresponding to the LDPC codeword may be expressed as a channel value for the received signal. There are various methods for determining the channel value, and for example, a method for determining a Log Likelihood Ratio (LLR) value may be the method for determining the channel value.
The LLR value is a log value for a ratio of the probability that a bit transmitted from the transmitter apparatus 100 is 0 and the probability that the bit is 1. In addition, the LLR value may be a bit value which is determined by a hard decision, or may be a representative value which is determined according to a section to which the probability that the bit transmitted from the transmitter apparatus 100 is 0 or 1 belongs.
The multiplexer 2720 multiplexes the output value of the demodulator 2710 and outputs the value to the deinterleaver 2730.
Specifically, the multiplexer 2720 is an element corresponding to a demultiplexer such as the demultiplexer shown in
That is, the multiplexer 2720 converts the output value of the demodulator 2710 into cell-to-bit and outputs an LLR value on a bit basis.
In this case, when the demultiplexer does not change the order of the LDPC codeword bits as shown in
The deinterleaver 2730 deinterleaves the output value of the multiplexer 2720 and outputs the values to the decoder 2740.
Specifically, the deinterleaver 2730 is an element corresponding to the interleaver 120 of the transmitter apparatus 100 and performs an operation corresponding to the interleaver 120. That is, the deinterleaver 2730 deinterleaves the LLR value by performing the interleaving operation of the interleaver 120 inversely.
In this case, the deinterleaver 2730 may include elements as shown in
First, as shown in
The block deinterleaver 2731 deinterleaves the output of the multiplexer 2720 and outputs a value to the group twist deinterleaver 2732.
Specifically, the block deinterleaver 2731 is an element corresponding to the block interleaver 124 provided in the transmitter apparatus 100 and performs the interleaving operation of the block interleaver 124 inversely.
That is, the block deinterleaver 2731 deinterleaves by using at least one row formed of a plurality of columns, that is, by writing the LLR value output from the multiplexer 2720 in each row in the row direction and reading each column of the plurality of rows in which the LLR value is written in the column direction.
In this case, when the block interleaver 124 interleaves by dividing a column into two parts, the block deinterleaver 2731 may deinterleave by dividing a row into two parts.
In addition, when the block interleaver 124 performs writing and reading with respect to a group which does not belong to the first part in the row direction, the block deinterleaver 2731 may deinterleave by writing and reading a value corresponding to the group which does not belong to the first part in the row direction.
Hereinafter, the block deinterleaver 2731 will be described with reference to
Input LLR vi(0≦i<Nldpc) is written in row ri column ci of the block deinterleaver 2731. Herein, ci=(i mod Nc), ri=└i/Nc┘.
Meanwhile, output LLR qi(0≦i<Nc×Nr1) is led from row ci, column r1 of the first part of the block deinterleaver 2731. Herein, ri=(i mod Nr1), ci=└i/Nr1┘.
In addition, output LLR qi(Nc×Nr1≦i<Nldpc) is led from row ci column ri of the second part of the block deinterleaver 2731. Herein, ri=Nr1+{(i−Nc×Nr1) mod Nr2}, ci=└(1−Nc×Nr1)/Nr2┘.
The group twist deinterleaver 2732 deinterleaves the output value of the block deinterleaver 2731 and outputs the value to the group deinterleaver 2733.
Specifically, the group twist deinterleaver 2732 is an element corresponding to the group twist interleaver 123 provided in the transmitter apparatus 100, and may perform the interleaving operation of the group twist interleaver 123 inversely.
That is, the group twist deinterleaver 2732 may rearrange the LLR values of the same group by changing the order of the LLR values existing in the same group. When the group twist operation is not performed in the transmitter apparatus 100, the group twist deinterleaver 2732 may be omitted.
The group deinterleaver 2733 (or the group-wise deinterleaver) deinterleaves an output value of the group twist deinterleaver 2732 and outputs a value to the parity deinterleaver 2734.
Specifically, the group deinterleaver 2733 is an element corresponding to the group interleaver 122 provided in the transmitter apparatus 100 and may perform the interleaving operation of the group interleaver 122 inversely.
That is, the group deinterleaver 2733 may rearrange the order of the plurality of groups in group units. In this case, the group deinterleaver 2733 may rearrange the order of the plurality of groups in group units by applying the interleaving method of Tables 27 to 56 inversely according to a length of the LDPC codeword, a modulation method and a code rate.
As described above, it is possible to rearrange the order of column groups in the parity check matrix having the shape of
The parity deinterleaver 2734 performs parity deinterleaving with respect to an output value of the group deinterleaver 2733 and outputs a value to the decoder 2740.
Specifically, the parity deinterleaver 2734 is an element corresponding to the parity interleaver 121 provided in the transmitter apparatus 100 and may perform the interleaving operation of the parity interleaver 121 inversely. That is, the parity deinterleaver 2734 may deinterleave the LLR values corresponding to the parity bits from among the LLR values output from the group deinterleaver 2733. In this case, the parity deinterleaver 2734 may deinterleave the LLR values corresponding to the parity bits in an inverse method of the parity interleaving method of Equation 8.
However, the parity deinterleaving is performed only when the transmitter apparatus 100 generates the LDPC codeword using the parity check matrix 200 as shown in
Although the deinterleaver 2730 of
For example, if the code rate is 12/15, and the modulation method is 256-QAM, the group deinterleaver 2733 may perform deinterleaving based on Table 41, and in this case, one bit from each of the bit groups X51, X6, X75, X108, X93, X47, X168, X15 constitutes a single modulation symbol. Therefore, the deinterleaver 2730 may perform mapping with the decoded initial value corresponding to the bit groups X51, X6, X75, X108, X93, X47, X168, X15 based on the received modulation symbol.
The deinterleaver 2730 may include a block-row deinterleaver 2735, a group twist deinterleaver 2732, a group deinterleaver 2733 and a parity deinterleaver 2734, as shown in
The block-row deinterleaver 2735 deinterleaves an output value of the multiplexer 2720 and outputs a value to the group twist deinterleaver 2732.
Specifically, the block-row deinterleaver 2735 is an element corresponding to the block-row interleaver 125 provided in the transmitter apparatus 100 and may perform the interleaving operation of the block-row interleaver 125 inversely.
That is, the block-row deinterleaver 2735 may deinterleave by using at least one column formed of a plurality of rows, that is, by writing the LLR values output from the multiplexer 2720 in each column in the column direction and reading each row of the plurality of columns in which the LLR value is written in the column direction.
However, when the block-row interleaver 125 performs writing and reading with respect to a group which does not belong to the first part in the column direction, the block-row deinterleaver 2735 may deinterleave by writing and reading a value corresponding to the group which does not belong to the first part in the column direction.
The group deinterleaver 2733 deinterleaves the output value of the group twist deinterleaver 2732 and outputs the value to the parity deinterleaver 2734.
Specifically, the group deinterleaver 2733 is an element corresponding to the group interleaver 122 provided in the transmitter apparatus 100 and may perform the interleaving operation of the group interleaver 122 inversely.
That is, the group deinterleaver 2733 may rearrange the order of the plurality of groups in group units. In this case, the group deinterleaver 2733 may rearrange the order of the plurality of groups in group units by applying the interleaving method of Tables 92 to 121 inversely according to a length of the LDPC codeword, a modulation method and a code rate.
Meanwhile, the deinterleaver 2730 of
In addition, when transmission is performed from a transmitter based on a block interleaver, a receiver may operate by determining the deinterleaving order in the deinterleaver 2835 based on Equations 15 and 16. In addition, when transmission is performed based on a block-row interleaver from a transmitter, the receiver may operate by determining the interleaving order in the block deinterleaver 2731 based on Equations 15 and 16.
The decoder 2740 may perform LDPC decoding by using the output value of the deinterleaver 2730. To achieve this, the decoder 2740 may include a separate LDPC decoder (not shown) to perform the LDPC decoding.
Specifically, the decoder 2740 is an element corresponding to the encoder 110 of the transmitter apparatus 200 and may correct an error by performing the LDPC decoding by using the LLR value output from the deinterleaver 2730.
For example, the decoder 2740 may perform the LDPC decoding in an iterative decoding method based on a sum-product algorithm. The sum-product algorithm is one example of a message passing algorithm, and the message passing algorithm refers to an algorithm which exchanges messages (e.g., LLR value) through an edge on a bipartite graph, calculates an output message from messages input to variable nodes or check nodes, and updates.
The decoder 2740 may use a parity check matrix when performing the LDPC decoding. In this case, an information word submatrix in the parity check matrix is defined as in Tables 4 to 26 according to a code rate and a length of the LDPC codeword, and a parity submatrix may have a dual diagonal configuration.
In addition, information on the parity check matrix and information on the code rate, etc. which are used in the LDPC decoding may be pre-stored in the receiver apparatus 2700 or may be provided by the transmitter apparatus 100.
First, an LDPC codeword is generated by performing LDPC encoding (S3010). In this case, when the LDPC encoding is performed, a parity check matrix including an information word submatrix defined by Tables 4 to 26 and a parity submatrix having a dual diagonal configuration (that is, the parity check matrix as shown in
Thereafter, the LDPC codeword is interleaved (S3020).
The interleaved LDPC codeword is mapped onto a modulation symbol (S3030). In this case, a bit included in a predetermined group from among a plurality of groups of the LDPC codeword may be mapped onto a predetermined bit of the modulation symbol.
Herein, each of the plurality of groups may be formed of 360 bits.
In operation S3020, parity bits of the LDPC codeword may be interleaved, the parity-interleaved LDPC codeword may be divided into a plurality of groups, the order of the plurality of groups may be rearranged in group units, and the plurality of groups the order of which has been rearranged may be interleaved.
Specifically, the order of the plurality of groups may be rearranged in group units based on Equation 11 described above. In this case, π(j) of Equation 11 may be determined based on at least one of a length of the LDPC codeword, a modulation method and a code rate.
For example, π(j) may be defined as in Table 37 described above when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 6/15.
In another example, π(j) may be defined as in Table 38 described above when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 8/15.
In another example, π(j) may be defined as in Table 39 described above when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 10/15.
In another example, π(j) may be defined as in Table 40 described above when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 10/15.
In another example, π(j) may be defined as in Table 41 described above when the length of the LDPC codeword is 64800, the modulation method is 256-QAM, and the code rate is 12/15.
However, these are merely examples. π(j) may be defined as in Tables 27 to 36 according to the length of the LDPC codeword, the modulation method and the code rate.
In addition, Equation 12 may be used in rearranging the order of the plurality of groups in group units. In this case, π(j) may be defined as in Tables 42 to 56 described above.
The plurality of groups the order of which has been rearranged may be interleaved by writing the plurality of groups in each of the plurality of columns in the column direction in group units, and reading each row of the plurality of columns in which the plurality of groups are written in group units in the row direction.
In this case, from among the plurality of groups, at least some group which can be written in each of the plurality of columns in group units is written in each of the plurality of columns serially, and then, the other groups are divided and written in the other areas which remain in each of the plurality of columns after the at least some group has been written in group units.
In addition, the order of the plurality of groups is rearranged in group units such that groups including bits to be mapped onto the same location of different modulation symbols are serially arranged to be adjacent to one another, and the predetermined group is written in a predetermined column.
In this case, in operation S3030, a modulation symbol may be generated by mapping bits output from the predetermined column onto a predetermined bit of each modulation symbol.
In operation S3020, the interleaving may be performed in other methods in addition to the above-described method.
Specifically, the interleaving may be performed by using Equation 13 and Tables 92 to 106 described above, or may be performed by using Equation 14 and Tables 107 to 121 described above.
In these cases, the order of the plurality of groups may be rearranged in group units such that an arrangement unit, in which groups including bits to be mapped onto the same modulation symbol are serially arranged in group units, is repeated.
When a plurality of groups are interleaved, this interleaving may be performed by writing in each row at least one group including bits to be mapped onto a same modulation symbol from among the plurality of groups the order of which has been rearranged in the row direction, and reading each column of the row in which the at least one group is written in the column direction.
A non-transitory computer readable medium, which stores a program for performing the above signal processing methods according to various exemplary embodiments in sequence, may be provided.
The non-transitory computer readable medium refers to a medium that stores data semi-permanently rather than storing data for a very short time, such as a register, a cache, and a memory, and is readable by an apparatus. Specifically, the above-described various applications or programs may be stored in a non-transitory computer readable medium such as a compact disc (CD), a digital versatile disk (DVD), a hard disk, a Blu-ray disk, a universal serial bus (USB), a memory card, and a read only memory (ROM), and may be provided.
Components, elements or units represented by a block as illustrated in
Although a bus is not illustrated in the block diagrams of the transmitter apparatus and the receiver apparatus, communication may be performed between each element of each apparatus via the bus. In addition, each apparatus may further include a processor such as a Central Processing Unit (CPU) or a microprocessor to perform the above-described various operations.
The foregoing exemplary embodiments and advantages are merely exemplary and are not to be construed as limiting the present inventive concept. The exemplary embodiments can be readily applied to other types of apparatuses. Also, the description of the exemplary embodiments is intended to be illustrative, and not to limit the scope of the inventive concept, and many alternatives, modifications, and variations will be apparent to those skilled in the art.
Number | Date | Country | Kind |
---|---|---|---|
10-2013-0125664 | Oct 2013 | KR | national |
10-2014-0026298 | Mar 2014 | KR | national |
10-2014-0083647 | Jul 2014 | KR | national |
This is a Continuation of U.S. application Ser. No. 14/324,436 filed Jul. 7, 2014 which claims the benefit under 35 U.S.C. §119 from U.S. Provisional Application No. 61/843,114 filed on Jul. 5, 2013, U.S. Provisional Application No. 61/864,758 filed on Aug. 12, 2013, U.S. Provisional Application No. 61/878,707 field on Sep. 17, 2013, U.S. Provisional Application No. 61/882,724 filed on Sep. 26, 2013, U.S. Provisional Application No. 61/886,827 filed on Oct. 4, 2013, and U.S. Provisional Application No. 61/897,480 filed on Oct. 30, 2013, in the United States Patent and Trademark Office, and Korean Patent Application No. 10-2013-0125664 filed on Oct. 21, 2013, Korean Patent Application No. 10-2014-0026298 filed on Mar. 5, 2014, and Korean Patent Application No. 10-2014-0083647 filed on Jul. 4, 2014, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61897480 | Oct 2013 | US | |
61886827 | Oct 2013 | US | |
61882724 | Sep 2013 | US | |
61878707 | Sep 2013 | US | |
61864758 | Aug 2013 | US | |
61843114 | Jul 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14324436 | Jul 2014 | US |
Child | 15264057 | US |