Low density parity check code for terrestrial cloud broadcast
10715179 ยท 2020-07-14
Assignee
Inventors
Cpc classification
H03M13/1165
ELECTRICITY
H03M13/116
ELECTRICITY
H03M13/1168
ELECTRICITY
H03M13/1185
ELECTRICITY
International classification
H03M13/00
ELECTRICITY
Abstract
Provided is an LDPC (Low Density Parity Check) code for terrestrial cloud broadcast. A method of encoding input information based on an LDPC (Low Density Parity Check) includes receiving information and encoding the input information with an LDPC codeword using a parity check matrix, wherein the parity check matrix may have a structure obtained by combining a first parity check matrix for an LDPC code having a higher code rate than a reference value with a second parity check matrix for an LDPC code having a lower code rate than the reference value.
Claims
1. A method of decoding an LDPC (Low Density Parity Check) code by an LDPC decoder, the method comprising: receiving a signal corresponding to an LDPC codeword; and performing decoding for the signal, the LDPC codeword corresponding to a parity check matrix, wherein the parity check matrix includes a dual diagonal matrix and an identity matrix, wherein the dual diagonal matrix corresponds to dual diagonal lines and the identity matrix corresponds to a diagonal line.
2. The method of claim 1, wherein an element of the dual diagonal lines is located at the neighboring location of an element of the diagonal line.
3. The method of claim 1, wherein the LDPC codeword includes a systematic part corresponding to input information, a first parity part corresponding to the dual diagonal matrix, and a second parity part corresponding to the identity matrix.
4. The method of claim 3, wherein the LDPC codeword is generated by performing: obtaining the first parity part using accumulation corresponding to the dual diagonal matrix based on the input information; and obtaining the second parity part using the identity matrix based on the calculated first parity part.
5. The method of claim 4, wherein the LDPC codeword is generated by further performing puncturing the LDPC codeword corresponding to predetermined locations of at least one of the first parity part and the second parity part for a target code rate.
6. The method of claim 5, wherein the puncturing corresponds to the identity matrix in the parity check matrix.
7. An LDPC (Low Density Parity Check) decoder comprising: a receiving unit configured to receive a signal corresponding to an LDPC codeword; and a decoding unit configured to performing decoding for the signal, the LDPC codeword corresponding to a parity check matrix, wherein the parity check matrix includes a dual diagonal matrix and an identity matrix, wherein the dual diagonal matrix corresponds to dual diagonal lines and the identity matrix corresponds to a diagonal line.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The embodiments of the present invention will become readily apparent by reference to the following detailed description when considered in conjunction with the accompanying drawings wherein:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
DESCRIPTION OF THE EMBODIMENTS
(14) Embodiments of the present invention will be described in detail with reference to the accompanying drawings to be worked on by those of ordinary skill in the art. However, the present invention may be embodied in various ways and is not limited thereto. What is irrelevant to the present invention has been omitted from the drawings, and similar denotations have been assigned to similar components throughout the specification.
(15) As used herein, when an element includes or comprises another element, the element, unless stated otherwise, may further include or comprise the other element, but not excluding the other element. Further, as used herein, the term unit or part means a basis for processing at least one function or operation, which may be implemented in hardware or software or in a combination of software and hardware.
(16)
(17) In general, the LDPC code is known as an error correction code that is closest to the Shannon limit in an AWGN (Additive White Gaussian Noise) channel and provides asymptotically better performance than that provided by the Turbo code while enabling parallelizable decoding.
(18) Such an LDPC code is defined by a low-density PCM (Parity Check Matrix) that is randomly generated. However, the randomly generated LDPC code needs a lot of memory to store the PCM and requires a long time to access the memory.
(19) To address such a problem with the memory, the QC-LDPC (Quasi-Cyclic LDPC) code has been suggested, and the QC-LDPC code constituted of Zero matrixes or CPMs (Circulant Permutation Matrixes) is defined by PCM(H) as shown in Equation 1:
(20)
(21) Here, P is a CPM having a size of LL and is defined as in Equation 2:
(22)
(23) Further, P.sup.i is a matrix obtained by right-shift i(0i<L) times, an identity matrix I(P.sup.0) having a size of LL, and P.sup. is the zero matrix having a size of LL. Accordingly, in the case of the QC-LDPC code, only exponent i may be stored in order to store P.sup.i, and thus, the memory required for storing PCM is reduced to 1/L.
(24) As an example, the QC-LDPC code used in the DVB system, as shown in
(25)
(26) Referring first to
(27) Thereafter, the LDPC encoder, as shown in
(28) As an example, referring to
(29) In
(30)
(31) Here, is an element matrix and is an identity matrix having a size of LL.
(32) The LDPC codeword that is encoded through the parity check matrix as shown in
(33) The LDPC encoder according to the present invention may calculate the first parity part using the input information and the first parity check matrix (PCM[A B]) and may calculate the second parity part using the second parity check matrix (PCM[C D]) based on the input information and the calculated first parity part.
(34) Specifically, the LDPC encoder according to the present invention may encode input information using Equation 4 as follows:
Hc.sup.T=0[Equation 4]
(35) Here, H is the parity check matrix, and c is the LDPC codeword.
(36) Meanwhile, Equation 4 may be split as shown in Equation 5:
As.sup.T+Bp.sub.1.sup.T=0
C(s, p.sub.1).sup.T+Dp.sub.2.sup.T=0[Equation 5]
(37) Here, s is the systematic part, P.sub.1 is the first parity part, and P.sub.2 is the second parity part.
(38) Since B is a dual diagonal matrix, the encoding process for calculating the first parity part P.sub.1 may be performed by an accumulator of a block type. Further, since D is an identity matrix, the second parity part P.sub.2 may be simply calculated by P.sub.2.sup.T=C(s, p.sub.1).sup.T. As such, the LDPC encoder according to the present invention has an efficient linear time encoding algorithm and thus its complexity is reduced.
(39) As an example, N, K, and g of LDPC codes having a code rate 0.25, which have codeword lengths of 8192, 16384, 32768, and 65536, respectively, are given as in Table 1:
(40) TABLE-US-00001 TABLE 1 N K g 8192 2048 160 16384 4096 320 32768 8192 640 65536 16384 1280
(41) An exemplary method of expressing the PCM of the QC-LDPC code designed as in Table 1 is now described.
(42) Assume that a QC-LDPC code having a code rate of 4/, N=28 and K=16, and that is constituted of a 44 CPM has a PCM as shown in Equation 6:
(43)
The PCM may be represented as follows.
(44) TABLE-US-00002 7 3 Matrix size (# of columns = 7, # of rows = 3) 2 3 1 1 1 1 1 Column weight distribution 0.sup.th column weight = 2, 1.sup.st column weight = 3, 2.sup.nd column weight = 1, 3.sup.rd column weight = 1, 4.sup.th column weight = 1, 5.sup.th column weight = 1, 6.sup.th column weight = 1. 3 3 4 Row weight distribution 0.sup.th row weight = 3, 1.sup.st row weight = 3, 2.sup.nd row weight = 4. Location of non-zero matrix at each row 0 1 4 Non-zero matrix location of 0.sup.th row, row weight = 3 1 3 5 Non-zero matrix location of 1.sup.st row, row weight = 3 0 1 2 6 Non-zero matrix location of 2.sup.nd row, row weight = 4 Exponent value of non-zero matrix at each row 2 3 0 Exponent value of non-zero matrix of 0.sup.th row 1 2 0 Exponent value of non-zero matrix of 1.sup.st row 2 3 0 0 Exponent value of non-zero matrix of 2.sup.nd row
(45) The PCM of the QC-LDPC code with a code rate of 0.25, which operates in a negative SNR environment for a terrestrial cloud broadcast system according to the present invention may be represented in such way, thus resulting in the embodiments in the PA1264-4C_Table.txt file.
(46)
(47) As an example,
(48) Meanwhile,
(49)
(50) The PCM of the LDPC code according to the present invention consists of multiple single parity check codes, and thus, it may be truncated for each of the different code rates, as shown in
(51)
(52) As an example, in
(53) Meanwhile,
(54) TABLE-US-00003 TABLE 2 Shannon Limit Length (N) [SNR, dB] Gap from Limit [dB] 8192 3.804 1.29 16384 3.804 0.99 32768 3.804 0.79 65536 3.804 0.6 DVB (64800) 3.804 1.29
(55) TABLE-US-00004 TABLE 3 Length (N) Number of ones in PCM 8192 36,352 16384 72,736 32768 145,504 65536 291,040 DVB (64800) 194,399
(56) Referring to
(57)
(58) Referring to
(59)
(60) Referring to
(61) The input unit 1212 receives information to be encoded.
(62) The determining unit 1214 determines a code rate of the LDPC code and determines the size of a dual, diagonal matrix depending on the determined code rate.
(63) The encoding unit 1216 encodes the information input through the input unit 1212 with the LDPC codeword by using the parity check matrix having the code rate determined by the determining unit 1214. Here, the parity check matrix may consist of zero matrixes and circulant permutation matrixes.
(64) Meanwhile, the parity check matrix, as an example, may have the structure in which a first parity check matrix for an LDPC code having a higher code rate than a reference value and a second parity check matrix for an LDPC code having a lower code rate than the reference value. Here, the reference value may be, e.g., 0.5. It may include a zero matrix, an identity matrix, and a dual diagonal matrix. Specifically, the parity check matrix may have a structure as shown in
(65) The encoding unit 1216, as an example, may encode the input information with the LDPC codeword by calculating the first parity part using the information input through the input unit 1212 and the first parity check matrix and by calculating the second parity part using the second parity check matrix based on the input information and the calculated first parity part.
(66) The LDPC codeword encoded by the encoding unit 1216 may include the systematic part corresponding to the information input through the input unit 1212, the first parity part corresponding to the dual diagonal matrix, and the second parity part corresponding to the identity matrix.
(67) Meanwhile, the receiving unit 1222 of the decoder 1220 receives the LDPC codeword encoded by the parity check matrix. The LDPC codeword received by the receiving unit 1222 may include the systematic part, the first parity part, and the second parity part.
(68) The decoding unit 1224, as shown in
(69) Although exemplary embodiments of the present invention have been described, the present invention is not limited thereto, and various modifications or variations may be made thereto without departing from the scope of the present invention. The embodiments described herein are not provided to limit the present invention but to describe the invention, and the present invention is not limited thereto. The scope of the present invention should be interpreted within the appended claims and the spirit within the equivalents of the invention should be construed to be included in the scope of the invention.