CN100592639C - Low density parity check coding method, device and parity check matrix generating method - Google Patents
Low density parity check coding method, device and parity check matrix generating method Download PDFInfo
- Publication number
- CN100592639C CN100592639C CN200610076082A CN200610076082A CN100592639C CN 100592639 C CN100592639 C CN 100592639C CN 200610076082 A CN200610076082 A CN 200610076082A CN 200610076082 A CN200610076082 A CN 200610076082A CN 100592639 C CN100592639 C CN 100592639C
- Authority
- CN
- China
- Prior art keywords
- sub
- matrix
- cyclic
- polynomial
- ldpc
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 195
- 238000000034 method Methods 0.000 title claims abstract description 76
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 131
- 230000002441 reversible effect Effects 0.000 claims abstract description 34
- 238000004891 communication Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 5
- 230000001172 regenerating effect Effects 0.000 claims description 2
- 238000012937 correction Methods 0.000 description 4
- 239000013307 optical fiber Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
A LDPC coding method includes confirming number L of cyclic sub-matrix required to generate odd-even calibration matrix according to coding efficiency preset by system, generating L numbers of cyclicsub-matrixes as per code length of LDPC code and confirmed number L, ensuring one of said sub-matrixes to be reversible cyclic sub-matrix, deriving out generating matrix of LDPC code according to generated cyclic sub-matrixes and obtaining bit sequence to be sent by carrying out LDPC coding on information bit to be sent according to said generating matrix. The device used for realizing said methodis also disclosed.
Description
Technical Field
The present invention relates to a channel coding technique in a communication system, and in particular, to a method and an apparatus for coding a Low-Density Parity Check (LDPC) code, and a method for generating a Parity Check matrix of an LDPC code.
Background
The role of a communication system is to transfer information from one place to another over a communication channel. Due to the influence of noise, interference and the like in a communication channel, errors may occur in the information transmission process, so that a receiving end cannot receive the information correctly. In order to improve the transmission performance of the communication system, information errors occurring in the transmission process can be discovered or corrected by adding some redundant information to the transmitted information, so as to recover correct information. The process of adding redundant information to the transmitted information is also called error correction coding, and there are many coding methods for error correction coding, among which, LDPC codes are one of the error correction coding methods found in recent years that have very excellent performance.
An LDPC code is a linear block code and is usually described by using a parity check matrix H corresponding to the LDPC code. The basic characteristic of the LDPC code is the sparsity of the parity check matrix H thereof, that is, the number of non-zero elements in the parity check matrix H of the LDPC code is much smaller than the size of the matrix. The matrix shown in the following formula (1) is a parity check matrix H of an LDPC code.
As can be seen from the parity check matrix H shown in the above equation (1), the code length of the LDPC code corresponding to the parity check matrix H, that is, the number of columns of the parity check matrix H, is n equal to 20, and the LDPC code corresponding to the parity check matrix H includes parity check equations of which n is 20Since k is 10, that is, the number of rows of the parity check matrix H, the coding efficiency of the LDPC code is obtained as (n-k)/n is 0.5. From the parity check matrix H, as with all linear block codes, a generator matrix G of the LDPC code corresponding to the parity check matrix H can be derived, i.e., the condition HG is satisfiedTA matrix G of 0, wherein GTIs the transpose of the generator matrix G. After the generator matrix G is derived, LDPC encoding may be performed by the generator matrix G.
In a communication system, if an information bit sequence x with a length of n-k is to be transmitted, a transmitting end of the communication system needs to perform LDPC encoding on the information bit sequence first. The process of LDPC coding can be abstracted as a matrix multiplication operation of the LDPC code generation matrix G and the information bit sequence x, that is, y is GTx which after operation will result in a bit sequence y of length n to be transmitted in the communication channel. When the bit sequence y after LDPC coding is transmitted in a channel, it may be affected by noise, interference, and other factors to change and generate errors, so that a receiving end needs to perform LDPC decoding on the received bit sequence y, that is, recover correct information bits by using redundant information. If the redundant information is not sufficient to recover the correct information, the decoded information bits may still contain errors, which may result in a certain error rate. Currently, decoding of LDPC codes may use belief propagation iterative decoding algorithms and various simplified algorithms thereof. Due to the sparsity of the parity check matrix of the LDPC code, the iterative decoding algorithm can be completed at a high speed.
The excellent performance of the LDPC code has attracted attention and a great deal of research has been conducted on theoretical analysis, construction methods, encoding and decoding methods, practical applications, and the like. However, these studies have mainly focused on the application of LDPC codes to systems such as mobile communication, satellite communication, and magnetic storage. These studies and their results are difficult to apply to optical fiber communication systems due to the large difference between these systems, especially the special requirements of high speed, high efficiency and low encoding and decoding complexity of optical fiber communication systems.
Disclosure of Invention
In order to solve the above technical problem, the present invention provides an LDPC encoding method, which is suitable for a communication system with high rate, high efficiency and low complexity LDPC encoding requirements.
The invention also provides a coding device of the low-complexity LDCP code, which can realize the LDPC coding at high speed and high efficiency.
In addition, the invention also provides a method for generating the parity check matrix of the LDPC code, so that the minimum circle length of the generated parity check matrix is larger than 4, namely, the circle 4 circulation is avoided, and meanwhile, the maximum minimum Hamming distance can be provided, and the LDPC code generated according to the parity check matrix is ensured to have good coding performance.
According to one aspect of the present invention, the low density parity check LDPC encoding method of the present invention comprises:
A. determining the number L of cyclic sub-matrixes needed by the generated parity check matrix according to the coding efficiency preset by the communication system, wherein L is a natural number;
B. generating L cyclic sub-matrixes according to the code length of the LDPC code and the number L of the cyclic sub-matrixes, and ensuring that at least one cyclic sub-matrix is a reversible cyclic sub-matrix;
C. deducing a generating matrix of the LDPC code according to the L generated cyclic sub-matrixes, and performing LDPC coding on information bits to be transmitted according to the generating matrix to obtain a bit sequence to be transmitted.
Step a, determining the number L of cyclic sub-matrices required by the generated parity check matrix as: let epsilon be the redundancy of LDPC code according to the formulaCalculating the number L of required cyclic sub-matrices, wherein the operatorIndicating a ceiling operation.
The step B of generating L cyclic sub-matrices includes:
b1, determining the cycle length of each cycle sub-matrix according to the code length of the LDPC code and the determined number of the cycle sub-matrices;
b2, setting one of the cyclic sub-matrices as a reversible cyclic sub-matrix, and determining the number of non-zero elements in a polynomial representing the reversible cyclic sub-matrix according to the code length of the LDPC code and the number of the determined cyclic sub-matrices;
b3, constructing a reversible sub-polynomial meeting a distance constraint condition according to the cycle length of each cyclic sub-matrix and the determined number of non-zero elements, and generating a reversible sub-cyclic matrix according to the reversible sub-polynomial;
and B4, sequentially generating other L-1 sub-polynomials meeting the distance constraint condition, and obtaining L-1 sub-cyclic matrices according to the L-1 sub-polynomials.
The step B1 of determining the cycle length of each cyclic sub-matrix includes: and setting the code length of the LDPC code as n, and calculating the cycle length m of each cycle sub-matrix by adopting a formula m as n/L.
Determining the number w of non-zero elements in the polynomial representing the reversible circulant sub-matrix as described above in step B20Comprises the following steps: let the code length of LDPC code be n according to formula
<math>
<mrow>
<mi>L</mi>
<msubsup>
<mi>C</mi>
<mi>w</mi>
<mn>2</mn>
</msubsup>
<mo>≤</mo>
<mi>n</mi>
<mo>/</mo>
<mn>2</mn>
<mi>L</mi>
</mrow>
</math>
Calculating the maximum integer w meeting the requirement of the formula, and if the calculated w is an even number, making w0W + 1; otherwise, let w0=w。
The step B3 of constructing a invertible polynomial satisfying the distance constraint includes:
b31 according to the number w of non-zero elements0Is randomly selected from m-1 integers of 1 to m-101 different integers a1, a22,....,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
B32 calculating the polynomialThe distance between any two non-zero elements is judged, whether the calculated distance is reused or not is judged, if yes, the step B31 is returned, and the polynomial is regenerated; otherwise, step B33 is performed.
B33, judging whether the sub-cyclic matrix obtained by the polynomial cyclic shift is full rank, if so, updating the position record and ending; otherwise, return to step B31 to regenerate the polynomial.
The method further comprises, before the step B31: setting a counter of the number of attempts;
setting the number of attempts counter to 1 when step B31 is first performed;
after the first time, before each time step B31 is executed, adding 1 to the counter of the number of attempts, and judging whether the counter value of the number of attempts exceeds a preset upper limit value, if so, indicating the number w of the non-zero elements0If the requirement (f) is too high, the number w of the non-zero elements is reduced0After said value of (c), said step B31 is performed; otherwise, step B31 is performed directly.
The step B4 of generating other L-1 sub-polynomials satisfying the distance constraint includes:
b41 according to the number w of non-zero elements0According to the available position records, randomly selecting w01 different integers a1, a22,...,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
B42, calculating polynomialThe distance between any two non-zero elements is judged, whether the calculated distance is reused or not is judged, if yes, the step B41 is returned, and the polynomial is regenerated; otherwise, the location record is updated and ended.
The method further comprises, before the step B41: setting a counter of the number of attempts;
setting the number of attempts counter to 1 when step B41 is first performed;
after the first time, before each time step B41 is executed, adding 1 to the counter of the number of attempts, and judging whether the counter value of the number of attempts exceeds a preset upper limit value, if so, indicating the number w of the non-zero elements0If the requirement (f) is too high, the number w of the non-zero elements is reduced0After said value of (c), said step B41 is performed; otherwise, step B41 is performed directly.
The update location record specifically includes: the positions occupied by the generated polynomial are removed from the available position records. The position is the distance between any two non-zero elements in the polynomial.
The step C of deriving a generator matrix of the LDPC code according to the generated L cyclic sub-matrices includes: according to the formula
<math>
<mrow>
<mi>G</mi>
<mo>=</mo>
<mfenced open='[' close=']'>
<mtable>
<mtr>
<mtd>
<mi>I</mi>
</mtd>
<mtd>
<mfenced open='' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mi>G</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>G</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>·</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>·</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>·</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>G</mi>
<mrow>
<mi>L</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</math>
The generator matrix G is calculated, wherein, i denotes an identity matrix, ALFor a generated invertible subcycle matrix, AkTo remove said invertible sub-circulant matrix ALOther L-1 sub-circulant matrices, operators ()TRepresenting a transpose operation of the matrix.
According to another aspect of the present invention, the low density parity check LDPC encoding apparatus comprises:
l-1 cyclic shift registers with the length of m, wherein L and m are both natural numbers;
l-1 m input binary adders in one-to-one correspondence with the cyclic shift registers and connected with the cyclic shift registers;
and an L-1 input binary adder connected to the L-1 m input binary adders having as input the output of the L-1 m input binary adders.
And the connection relation between the m input ends of the L-1 m input binary adders and the m bit output ends of the corresponding cyclic shift registers is determined by a generating matrix of the LDPC code.
Wherein the L-1 m-input binary adders and the L-1 input binary adder are realized by an exclusive-OR logic gate circuit.
According to another aspect of the present invention, the present invention further provides a method for generating a parity check matrix of a low density parity check LDPC code, wherein the parity check matrix consists of L cyclic submatrices, and L is a natural number, the method comprising: and sequentially generating L cyclic sub-matrixes according to the code length of the LDPC code and the number L of the cyclic sub-matrixes, and deducing a parity check matrix of the LDPC code according to the generated L cyclic sub-matrixes, so that the minimum cycle length of the parity check matrix is larger than 4 and the maximum minimum Hamming distance is obtained.
The method for sequentially generating the L cyclic sub-matrixes comprises the following steps:
a. determining the number w of non-zero elements in the polynomial representing the reversible cyclic submatrix according to the code length of the LDPC code and the determined number L of the cyclic submatrix0;
b. According to the number w of non-zero elements0Is randomly selected according to available non-zero element position records01 different integers a1, a22,...,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
c. Calculating polynomialB, judging the distance between any two non-zero elements, judging whether the calculated distance is reused, if so, indicating that the minimum circle length of the parity check matrix is less than or equal to 4, and then returning to the step b to regenerate the polynomial; otherwise, obtaining a cyclic sub-matrix through cyclic shift according to the polynomial generated in the step, then updating the position record according to the position of the nonzero element in the polynomial, and returning to the step b to continue generating the next cyclic sub-matrix until all L cyclic sub-matrices are generated.
In generating a sub-polynomial, further comprising: setting an attempt number counter, and setting the initial value of the attempt number counter to be 1; before each step b, adding 1 to the counter of the number of attempts, judging whether the counter value of the number of attempts exceeds a preset upper limit value, and if so, indicating the number w of the non-zero elements0Is too high, and the number w of the non-zero elements is set0After subtracting 1, executing the step b; otherwise, directly executing step b.
The determination in the step a represents theNumber w of non-zero elements in polynomial of reversible circulant submatrix0The method comprises the following steps: according to the formula
<math>
<mrow>
<mi>L</mi>
<msubsup>
<mi>C</mi>
<mi>w</mi>
<mn>2</mn>
</msubsup>
<mo>≤</mo>
<mi>n</mi>
<mo>/</mo>
<mn>2</mn>
<mi>L</mi>
</mrow>
</math>
Calculating the maximum integer w meeting the requirement of the formula, and if the calculated w is an even number, making w0W + 1; otherwise, let w0=w。
The position is the distance between any two nonzero elements in the polynomial; step c, updating the position record specifically comprises: the distance between any two non-zero elements in the generated polynomial is removed from the available distance record between any two non-zero elements.
The generated L cyclic sub-matrixes comprise at least one reversible cyclic sub-matrix; in the process of generating the reversible cyclic sub-matrix, after the step c determines that the distance between the non-zero elements is not reused, the method further includes: judging whether a sub-cyclic matrix obtained by the polynomial cyclic shift is full rank, if so, obtaining a cyclic sub-matrix through cyclic shift according to the polynomial generated in the step, and then updating the position record of the non-zero element according to the position of the non-zero element in the polynomial; otherwise, returning to the step b, and regenerating the reversible cyclic submatrix.
Therefore, the LDPC coding method and the coding device can obtain the following beneficial effects:
1. the generated LDPC code generating matrix has a pseudo cyclic shift structure, so that LDPC coding can be realized through a shift register without using a complex multiplication operation circuit, thereby meeting the requirements of high speed, high efficiency and low coding complexity;
2. the parity check matrix of the LDPC code constructed by the method and the device of the invention gives consideration to the requirements of the minimum circle length and the minimum Hamming distance, and can obtain larger minimum Hamming distance while avoiding the circle 4 circulation, thereby improving the error rate performance of the code.
Drawings
FIG. 1 is a flow chart of LDPC code encoding according to a preferred embodiment of the present invention;
FIG. 2 is a flow chart of a method for randomly generating a invertible polynomial according to a preferred embodiment of the present invention;
FIG. 3 is a flow chart of a method for randomly generating a sub-polynomial according to a preferred embodiment of the present invention;
FIG. 4 is a schematic diagram of the internal structure of an LDPC code encoding apparatus according to a preferred embodiment of the present invention;
FIG. 5 shows the error rate performance of the LDPC code under belief propagation decoding algorithm and Min-Sum decoding algorithm and the error rate performance of the commonly used RS (255, 239) code calculated under the fiber channel model.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and examples.
The basic requirement of LDPC encoding of information bits to be transmitted is to meet the requirement of error rate performance of application systems, such as communication systems and magnetic storage systems, and also to meet the requirements of coding and decoding complexity, cost, and the like. The error rate performance of the LDPC code is usually affected by a plurality of factors, wherein two important factors are the minimum circle length and the minimum hamming distance of the parity check matrix corresponding to the LDPC code. Therefore, an important aspect of designing an LDPC code is to construct an appropriate parity check matrix H such that its minimum round length and minimum hamming distance satisfy certain requirements. It is known that to achieve correct LDPC decoding, the minimum cycle length of the parity check matrix of an LDPC code is typically required to be greater than 4, while the larger its minimum hamming distance is, the better.
In a preferred embodiment of the present invention, a method for generating a parity check matrix is provided, which ensures that the requirements of minimum circle length and minimum hamming distance can be simultaneously considered when generating the parity check matrix, so as to obtain an LDPC code with very good performance.
First, it is specified that the parity check matrix H of the LDPC code constructed by the method of the present embodiment has a structure as shown in the following formula (2):
H=[A1A2...AL] (2)
the parity check matrix H is characterized in that: it is composed of L cyclic sub-matrixes A with same sizeiWherein i 1.. L, and L is a natural number. The LDPC Code represented by such a parity check matrix H is a pseudo-Cyclic LDPC (QC-LDPC) Code. Wherein each cyclic sub-matrix AiIt has the feature of cyclic shift, that any one row or any one column thereof can be cyclically shifted by the previous row or column. For example, the matrix a of the following formula (3) is a cyclic matrix, each row and each column of which has two and only two non-zero elements, and any row of which can be obtained by cyclic shifting a previous row, and any column of which can be obtained by cyclic shifting a previous column. It is clear that a circulant matrix can be determined completely by cyclic shifting as long as the first row or column of the circulant matrix is known.
For the above reasons, the circulant matrix can also be described by a polynomial method, such as circulant matrix A shown in formula (3), and the polynomial method for the first row thereof can be expressed as x0+x2=1+x2Where the exponential coefficient of x represents the position of the non-zero element, where the non-zero element is in the zeroth and second bits, respectively. According to the characteristics of the circulant matrix, the Dth row of the circulant matrix A can pass through the p-polynomial 1+ x2The cyclic shift is performed to obtain, since the cyclic length is 6, the D-th row of the cyclic matrix a can be represented as xD(1+x2)=xD+xD+2mod(x6-1)。
As can be seen from the above description, since each circulant matrix can be described by means of a polynomial, the parity check matrix H of the QC-LDPC code as shown in formula (2) can be represented by L polynomials, where each polynomial represents the first row of one circulant sub-matrix included in the parity check matrix H.
As described above, in order to ensure the error rate performance of the designed LDPC code, it is necessary to ensure that the minimum circle length and the minimum hamming distance of the parity check matrix H of the LDPC code meet certain requirements.
The basic requirement of the LDPC code for the minimum circle length of its parity check matrix H is to require the minimum circle length to be greater than 4, i.e., to avoid the occurrence of circle 4 cycles. For convenience of description, a distance between any two nonzero elements in a polynomial is first defined as Dist (a, b) ═ min (| a-b |, m- | a-b |), wherein a and b are positions of any two nonzero elements in the polynomial respectively, and m is a cycle length of the polynomial. For example, the circulant polynomial corresponding to the circulant matrix a shown in formula (3) is 1+ x2It has two non-zero elements at positions 0 and 2, respectively, and the polynomial has a cycle length m of 6, so that the distance between these two non-zero elements is found to be 2 by calculation. Those skilled in the art can demonstrateFor all polynomials forming the QC-LDPC code, if the distances between the non-zero elements of the polynomials are not repeated, the QC-LDPC code obtained by cyclic shifting the polynomials can avoid the existence of cycle 4, thereby ensuring that the minimum cycle length of the generated parity check matrix is greater than 4. The constraint that the distances between non-zero elements of all polynomials making up a QC-LDPC code do not repeat is referred to herein as a distance constraint. As can be seen from the above analysis, the parity check matrix H of the LDPC code generated in the preferred embodiment of the present invention must satisfy the above distance constraint condition.
In addition, in order to ensure the error rate performance of the LDPC code, it is required that the greater the minimum hamming distance of the parity check matrix H of the LDPC code, the better, corresponding to the requirement of the minimum hamming distance. If the number of the non-zero elements in the L polynomials forming the parity check matrix H corresponding to the QC-LDPC code is assumed to be wiL, the parity check matrix H may prove that if there are two or more polynomials with a non-zero element number w in the L polynomials included in the parity check matrix H, the minimum hamming distance of the parity check matrix H is less than or equal to 2 w.
As can be seen, the minimum hamming distance of the parity check matrix H can be increased by increasing the number of non-zero elements in the polynomial included in the parity check matrix H. However, as the number of non-zero elements in the polynomial constituting the parity check matrix H increases, more non-repeating distances between non-zero elements will be required, and thus it will be more difficult to satisfy the aforementioned distance constraint. Therefore, while increasing the number of non-zero elements, it is necessary to ensure that the distance constraint described above is satisfied. As can be shown by those skilled in the art, for a polynomial with the number of non-zero elements w, the distance between the non-zero elements of the polynomial is Cw 2And (4) respectively. Thus, if it is required that the distances between non-zero elements of the parity check matrix H shown in formula (2) are not repeated, the following formula (4) must be satisfied, and the constraint of formula (4) is referred to as a minimum hamming distance constraint herein:
where n/2L represents half the length of each cyclic sub-matrix.
From the minimum hamming distance constraint, an upper limit on the number of non-zero elements of the polynomial that can be used in the construction of the QC-LDPC code can be obtained, and thus the upper limit can be used as an initial value for searching for the number of non-zero elements of the sub-polynomial that satisfies the distance constraint.
As can be seen from the above description, in order to ensure the error rate performance of the LDPC code, the distance constraint condition and the minimum hamming distance constraint condition need to be considered when generating the parity check matrix H corresponding to the LDPC code. That is, if the generated parity check matrix H satisfies the above distance constraint condition and has the smallest hamming distance as large as possible, it can be ensured that the designed LDPC code has good error rate performance.
As is apparent from the foregoing description, after a parity check matrix H of an LDPC code is generated, a generator matrix G of the LDPC code corresponding to the parity check matrix H can be derived from the generated parity check matrix H, thereby performing LDPC encoding by the generator matrix G. However, although the generated parity check matrix H is generally sparse, the generated matrix G derived from the parity check matrix H is generally non-sparse, and thus the matrix multiplication operation in LDPC encoding is generally a computationally expensive operation. Therefore, the preferred embodiment of the present invention particularly provides a method for deriving the generator matrix G from the parity check matrix H, which can greatly reduce the complexity of LDPC coding using the generator matrix G.
Assuming that one of the cyclic sub-matrices included in the parity check matrix H defined by equation (2) is invertible, let A beLReversible and its inverse matrix is AL -1Then, the generator matrix G of the QC-LDPC code represented by the parity check matrix H can be calculated by the following formula (5):
wherein, i denotes an identity matrix. By the above method, although from sparse matrix AkThe resulting matrix GkNot necessarily a sparse matrix, but every GkStill all are cyclic matrices, so the multiplication operation of the generated matrix G obtained by formula (5) and the information sequence to be transmitted can be directly realized by a cyclic shift register without a large number of multiplication operations, thereby greatly reducing the calculation amount of the LDPC code and reducing the complexity of the LDPC code.
A preferred embodiment of the present invention provides an LDPC encoding method by the method of generating a parity check matrix given above and the method of deriving a generator matrix from the parity check matrix. The method mainly comprises the following steps as shown in figure 1:
A. determining the number L of cyclic sub-matrixes needed by the generated parity check matrix according to the coding efficiency preset by the communication system;
in this step, the specific method for determining the number of the cyclic submatrices is as follows: according to the requirement of code efficiency 1-epsilon, wherein epsilon is the redundancy of the LDPC code, the number L of the needed cyclic sub-matrixes is calculated so as to meet the conditionWherein the operatorIndicating a ceiling operation. It can be seen that the larger the number of cyclic sub-matrices, the higher the code efficiency, but at the same time, the smaller the minimum hamming distance of the generated parity check matrix.
B. And determining the cycle length m of each cycle sub-matrix according to the code length of the LDPC code and the determined number of the cycle sub-matrices.
The specific method for determining the cycle length m of each cyclic sub-matrix in the step is as follows: and setting the code length of the LDPC code as n, setting the number of the cyclic sub-matrixes as L, and calculating the cyclic length m of each cyclic sub-matrix by adopting a formula m as n/L.
C. Setting one of the cyclic sub-matrices as a reversible cyclic sub-matrix, and determining the number w of non-zero elements in a polynomial representing the reversible cyclic sub-matrix according to the code length of the LDPC code and the determined number of the cyclic sub-matrices0。
In this step, the number w of non-zero elements is determined0The specific method comprises the following steps: calculating the maximum integer w satisfying the requirement of the formula according to the formula (4), and if the calculated w is an even number, making w0W + 1; otherwise, let w0W. Wherein, when the calculated w is even, let w0The reason for w +1 is that it can be proved that when the number of non-zero elements of the polynomial representing one circulant matrix is an even number, the circulant matrix generated by cyclic shift cannot be reversible.
D. According to the cycle length m of each cyclic sub-matrix and the determined number w of non-zero elements0And constructing a reversible sub-polynomial which meets a distance constraint condition, and generating a reversible sub-cyclic matrix according to the reversible sub-polynomial.
The construction of the reversible sub-polynomial meeting the distance constraint condition in the step can be realized by an algebraic method or a random method, and analysis shows that when the minimum circle length of the generated sub-cyclic matrix is 6 and the minimum Hamming distance is the same, the performance difference of the QC-LDPC codes generated by different methods is not large.
In this embodiment, a method for randomly generating a reversible polynomial is specifically described, and with reference to fig. 2, the method mainly includes:
d1, according to the number w of non-zero elements0Is randomly selected from m-1 integers of 1 to m-101 different integers a1, a22,...,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
In this step, an attempt number counter is further set, the attempt number counter is set to 1 when step D1 is executed for the first time, and thereafter, before each execution of step D1, the attempt number counter is first incremented by 1, and it is determined whether the attempt number counter value exceeds a preset upper limit value, and if so, it indicates that the number w of non-zero elements is present0If the requirement (f) is too high, the number w of the non-zero elements is reduced0After the value of (d), i.e. the number w of said non-zero elements0After subtracting 1, the polynomial is reconstructed. It should be noted that, since the sub-circulant matrix generated in step D needs to be a reversible circulant matrix, the number w of non-zero elements0Cannot be an even number.
D2, calculating polynomialThe distance between any two non-zero elements is judged, whether the calculated distance is reused or not is judged, if yes, the step D1 is returned, and the polynomial is regenerated; otherwise, step D3 is performed.
D3, judging whether the sub-cyclic matrix obtained by the polynomial cyclic shift is full rank, if so, updating the position record and ending; otherwise, returning to step D1, the polynomial is regenerated.
The step of updating the location record specifically includes: the positions occupied by the generated polynomial are removed from the available position records. The position may specifically be expressed as a distance between any two non-zero elements in the polynomial. The main purpose of updating the location record is to ensure that the distance between any two non-zero elements in all the generated polynomials is not repeated to satisfy the distance constraint.
In this step, the purpose of determining whether the sub-cyclic matrix obtained by the polynomial cyclic shift is full rank is to determine whether the sub-cyclic matrix is invertible, and if so, it is determined that the sub-cyclic matrix is invertible.
E. And sequentially generating other L-1 sub-polynomials meeting the distance constraint condition, and obtaining L-1 sub-cyclic matrixes according to the L-1 sub-polynomials.
The method for generating the sub-polynomials in this step is similar to the method described in the above steps D1-D3, and the specific method is shown in fig. 3, which mainly includes:
e1 according to the number w of non-zero elements0According to the available position records, randomly selecting w01 different integers a1, a22,...,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
In this step, a counter of the number of attempts is further set, the counter of the number of attempts is set to 1 when step E1 is performed for the first time, thereafter, the counter of the number of attempts is first incremented by 1 before each step E1 is performed, and it is determined whether the counter value of the number of attempts exceeds a preset upper limit value, and if so,then the number w of said non-zero elements is indicated0If the requirement (f) is too high, the number w of the non-zero elements is reduced0After the value of (d), i.e. the number w of said non-zero elements0After subtracting 1, the polynomial is reconstructed.
E2, calculating polynomialThe distance between any two non-zero elements is judged, whether the calculated distance is reused or not is judged, if yes, the step E1 is returned, and the polynomial is regenerated; otherwise, the location record is updated and ended.
F. And D, deducing a generating matrix G of the LDPC code by a formula (5) according to the L subcycles obtained in the steps D and E.
And (3) directly obtaining a parity check matrix H for representing the LDPC code according to the L sub-cyclic matrixes and the formula (2).
H. And performing LDPC coding on the information bit x to be transmitted according to the generating matrix G to obtain a bit sequence y to be transmitted, and transmitting the bit sequence y to a receiving end of a communication system through a communication channel.
The decoding of the bit sequence y at the receiving end of the communication system can be realized by adopting the existing decoding method.
In order to realize the LDPC coding method, the invention also provides an LDPC coding device, and the internal structure of the LDPC coding device is shown in FIG. 4.
The LDPC encoding apparatus described in this embodiment mainly includes: l-1 cyclic shift registers with length m, L-1 m input binary adders in one-to-one correspondence with the cyclic shift registers and connected to the cyclic shift registers, and an L-1 input binary adder connected to the L-1 m input binary adders and taking the output of the L-1 m input binary adders as input. Wherein, each cyclic shift register and m-input binary adder which are in one-to-one correspondence and connected with each other and a sub-cyclic matrix GkL-1, one for one. In addition, the connection relationship between the input ends of the L-1 m-input binary adders and the m-bit output ends of the corresponding cyclic shift registers is determined by the corresponding sub-cyclic matrix GkTo be determined. In particular, by characterizing the cyclic sub-matrix GkIs determined by the position of the non-zero element of the polynomial, i.e. the output of the cyclic shift register is connected to the corresponding input of the m-input binary adder at the position of the corresponding non-zero element; at the position corresponding to the zero element, the connection between the output terminal of the cyclic shift register and the corresponding input terminal of the m-input binary adder does not need to be established. For example, if the circulant sub-matrix G is characterizedkIs 1+ x2Then only the 0 th and 2 nd outputs of the circular shift register need be connected to their corresponding 0 th and 2 nd inputs of the m-input binary adder without further connections.
The LDPC encoding device with the structure can perform LDPC encoding, and the specific encoding process is as follows:
suppose the information sequence to be encoded is XSThe length is m × (L-1). The information sequence is to be used as an input sequence of the LDPC encoding device to be subjected to LDPC encoding, and the bit sequence output by the LDPC encoding device is (X)S,XP) Wherein X isPThe redundant bits generated for encoding have a length of m.
Firstly, the information sequence X is divided intoSDividing the cyclic shift register into L-1 sections, and respectively and simultaneously inputting the sections into the L-1 cyclic shift registers for segmented cyclic shift;
and when each cyclic shift is carried out by one bit, the m input binary adder corresponding to each cyclic shift register outputs a binary sum, the output of the binary sum is directly input into the L-1 input binary adder, and the L-1 input binary adder outputs a redundant bit. When cyclically shifting m bits, namely cyclically shifting one week, the L-1 input binary adder outputs m redundant bits, wherein the m redundant bits are XP。
It can be seen from this that, when LDPC coding is performed by the LDPC coding apparatus, LDPC coding can be realized by only cyclic shift and binary addition, and the binary adder can be realized very simply, for example, by an exclusive or gate. Therefore, the LDPC encoding device can fully embody the advantage of low encoding complexity of the LDPC encoding, thereby meeting the encoding requirements of high speed, high efficiency and low encoding complexity.
To better illustrate the performance of the LDPC coding according to the preferred embodiment of the present invention, the following description is made with reference to the Reed-Solomon (RS, Reed-Solomon) code, which is a forward error correction coding commonly used in the optical fiber communication system. The RS code commonly used in fiber optic communication systems is RS (255, 239), with a code length of 2040 and a coding efficiency of 93.7%. Now, according to the LDPC coding method according to the preferred embodiment of the present invention, a QC-LDPC code with the same coding efficiency is constructed, the code length thereof is 4080, and the parity check matrix thereof has 16 cyclic sub-matrices. Through the design of the method according to the preferred embodiment of the present invention, it can be obtained that the number of non-zero elements of the reversible polynomial in the sub-polynomial of the 16 cyclic sub-matrices included in the parity check matrix is 5, and the number of non-zero elements of other polynomials is 5 or 4, so that the minimum hamming distance of the LDPC code is 8. FIG. 5 shows the error rate performance of the LDPC code calculated under the fiber channel model under the belief propagation decoding algorithm and the Min-Sum decoding algorithm, as shown by the curves with X sign and + sign in FIG. 5, respectively; in addition, fig. 5 also includes the error rate performance of the conventional RS (255, 239) code, as shown by the circled curve in fig. 5. Wherein, the horizontal axis of fig. 5 is a Q value, which is a general parameter used for representing the quality of the received signal in the optical fiber communication system, wherein the larger the Q value is, the better the quality of the received signal is, the lower the error rate is, the smaller the Q value is, the worse the quality of the received signal is, the higher the error rate is; the vertical axis of fig. 5 represents the bit error rate. As can be seen from fig. 5, the LDPC coding method according to the preferred embodiment of the present invention can provide a coding gain of about 2dB compared to the RS (255, 239) code on the premise that the coding efficiency is substantially the same. Although the belief propagation decoding algorithm has better performance, the Min-Sum decoding algorithm can greatly reduce the decoding complexity by sacrificing about 0.2dB of coding gain, and is easier to implement in a circuit.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.
Claims (18)
1. A Low Density Parity Check (LDPC) encoding method, comprising:
A. determining the number L of cyclic sub-matrixes needed by the generated parity check matrix according to the coding efficiency preset by the communication system, wherein L is a natural number;
B. generating L cyclic sub-matrixes according to the code length of the LDPC code and the number L of the cyclic sub-matrixes, and ensuring that at least one cyclic sub-matrix is a reversible cyclic sub-matrix;
C. deducing a generating matrix of the LDPC code according to the L generated cyclic sub-matrixes, and performing LDPC coding on information bits to be transmitted according to the generating matrix to obtain a bit sequence to be transmitted;
wherein, the number L of cyclic sub-matrices required for determining the generated parity check matrix in step a is:
let epsilon be the redundancy of LDPC code according to the formulaCalculating the number L of required cyclic sub-matrices, wherein the operatorRepresents a ceiling operation;
the step B of generating L cyclic sub-matrices includes:
b1, determining the cycle length of each cycle sub-matrix according to the code length of the LDPC code and the determined number of the cycle sub-matrices;
b2, setting one of the cyclic sub-matrixes as a reversible cyclic sub-matrix, and determining the number w of non-zero elements in a polynomial representing the reversible cyclic sub-matrix according to the code length of the LDPC code and the determined number L of the cyclic sub-matrixes0;
B3, determining the number w of non-zero elements according to the cycle length of each cyclic sub-matrix0Constructing a reversible sub-polynomial which meets a distance constraint condition, and generating a reversible sub-cyclic matrix according to the reversible sub-polynomial;
and B4, sequentially generating other L-1 sub-polynomials meeting the distance constraint condition, and obtaining L-1 sub-cyclic matrices according to the L-1 sub-polynomials.
2. LDPC coding method according to claim 1, characterized in that the step of determining the cycle length of each cyclic sub-matrix of step B1 comprises: and setting the code length of the LDPC code as n, and calculating the cycle length m of each cycle sub-matrix by adopting a formula m as n/L.
3. According to claim 1The LDPC encoding method is characterized in that the determination of the number w of non-zero elements in the polynomial representing the reversible cyclic submatrix in step B20Comprises the following steps: let the code length of LDPC code be n according to formulaCalculating the maximum integer w meeting the requirement of the formula, and if the calculated w is an even number, making w0W + 1; otherwise, let w0=w。
4. LDPC coding method according to claim 1, characterized in that the step B3 of constructing a invertible polynomial satisfying a distance constraint comprises:
b31 according to the number w of non-zero elements0Is randomly selected from m-1 integers of 1 to m-101 different integers a1, a 2.., aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
B32 calculating the polynomialThe distance between any two non-zero elements is judged, whether the calculated distance is reused or not is judged, if yes, the step B31 is returned, and the polynomial is regenerated; otherwise, go to step B33;
b33, judging whether the sub-cyclic matrix obtained by the polynomial cyclic shift is full rank, if so, updating the position record according to the position of the nonzero element in the polynomial generated in the step and ending; otherwise, return to step B31 to regenerate the polynomial.
5. LDPC encoding method according to claim 4, further comprising, before step B31: setting a counter of the number of attempts;
setting the number of attempts counter to 1 when step B31 is first performed;
after the first time, before each time step B31 is executed, adding 1 to the counter of the number of attempts, and judging whether the counter value of the number of attempts exceeds a preset upper limit value, if so, indicating the number w of the non-zero elements0Is too high, and the number w of the non-zero elements is reduced0After subtracting 1, the step B31 is executed again; otherwise, step B31 is performed directly.
6. LDPC coding method according to claim 1, characterized in that the step B4 of generating further sub-polynomials fulfilling the distance constraint comprises:
b41 according to the number w of non-zero elements0According to the available position records, randomly selecting w01 different integers a1, a22,...,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
B42, calculating polynomialThe distance between any two non-zero elements is judged, whether the calculated distance is reused or not is judged, if yes, the step B41 is returned, and the polynomial is regenerated; otherwise, the position record is updated according to the position of the nonzero element in the polynomial generated in the step.
7. LDPC encoding method according to claim 6, further comprising, before step B41: setting a counter of the number of attempts;
setting the number of attempts counter to 1 when step B41 is first performed;
after the first time, each time before step B41 is performed, the number of attempts counter is incremented by 1,and judging whether the counter value of the trial times exceeds a preset upper limit value, if so, indicating the number w of the non-zero elements0Is too high, and the number w of the non-zero elements is reduced0After subtracting 1, the step B41 is executed again; otherwise, step B41 is performed directly.
8. LDPC encoding method according to claim 4 or 6, wherein the update location record is in particular: the positions occupied by the generated polynomial are removed from the available position records.
9. LDPC coding method according to claim 8, wherein the position is a distance between any two non-zero elements of the polynomial.
10. LDPC encoding method according to claim 1 wherein the step of deriving a generator matrix of the LDPC code from the generated L cyclic sub-matrices of step C comprises:
11. A low density parity check, LDPC, encoding apparatus comprising:
l-1 cyclic shift registers with the length of m, wherein L and m are both natural numbers;
l-1 m input binary adders in one-to-one correspondence with the cyclic shift registers and connected with the cyclic shift registers;
and an L-1 input binary adder connected to the L-1 m input binary adders having as input the output of the L-1 m input binary adders.
12. The LDPC encoding apparatus of claim 11, wherein the connection relationship between the m input terminals of the L-1 m-input binary adders and the m-bit output terminals of their corresponding cyclic shift registers is determined by a generator matrix of the LDPC code.
13. The LDPC encoding apparatus of claim 11 or 12, wherein the L-1 m-input binary adders and the L-1 input binary adder are implemented by an exclusive or logic gate circuit.
14. A method for generating a parity check matrix of a Low Density Parity Check (LDPC) code, wherein the parity check matrix comprises L cyclic sub-matrices, and L is a natural number, the method comprising:
sequentially generating L cyclic sub-matrixes according to the code length of the LDPC code and the number L of the cyclic sub-matrixes, and deducing a parity check matrix of the LDPC code according to the generated L cyclic sub-matrixes, so that the minimum circle length of the parity check matrix is larger than 4 and the maximum minimum Hamming distance is obtained;
the determination method of L comprises the following steps: let epsilon be the redundancy of LDPC code according to the formulaCalculating the number L of required cyclic sub-matrices, operatorRepresents a ceiling operation;
the method for sequentially generating the L cyclic sub-matrixes comprises the following steps:
a. according to the code length of LDPC code and determined cyclic sub-momentThe number L of the matrix determines the number w of non-zero elements in the polynomial representing the invertible circulant sub-matrix0;
b. According to the number w of non-zero elements0Is randomly selected according to available non-zero element position records01 different integers a1, a22,...,aw0-1 as position of the non-zero element, plus position 0, forming a polynomial
c. Calculating polynomialB, judging the distance between any two non-zero elements, judging whether the calculated distance is reused, if so, indicating that the minimum circle length of the parity check matrix is less than or equal to 4, and then returning to the step b to regenerate the polynomial; otherwise, obtaining a cyclic sub-matrix through cyclic shift according to the polynomial generated in the step, then updating the position record according to the position of the nonzero element in the polynomial, and returning to the step b to continue generating the next cyclic sub-matrix until all L cyclic sub-matrices are generated.
15. The method for generating a parity check matrix of an LDPC code according to claim 14, wherein in generating a sub-polynomial, further comprising:
setting an attempt number counter, and setting the initial value of the attempt number counter to be 1;
before each step b, adding 1 to the counter of the number of attempts, judging whether the counter value of the number of attempts exceeds a preset upper limit value, and if so, indicating the number w of the non-zero elements0Is too high, and the number w of the non-zero elements is set0After subtracting 1, executing the step b; otherwise, directly executing step b.
16. The method for generating parity check matrix of LDPC code according to claim 14, wherein the determining of the number w of non-zero elements in the polynomial representing the reversible cyclic submatrix in step a0The method comprises the following steps: according to the formulaCalculating the maximum integer w meeting the requirement of the formula, and if the calculated w is an even number, making w0W + 1; otherwise, let w0=w。
17. The method of generating a parity check matrix for LDPC codes according to claim 14, wherein the position is a distance between any two non-zero elements in the polynomial;
step c, updating the position record specifically comprises: the distance between any two non-zero elements in the generated polynomial is removed from the available distance record between any two non-zero elements.
18. The method of generating a parity check matrix for LDPC codes according to claim 14, wherein the L cyclic sub-matrices generated include at least one reversible cyclic sub-matrix;
in the process of generating the reversible cyclic sub-matrix, after the step c determines that the distance between the non-zero elements is not reused, the method further includes: judging whether a sub-cyclic matrix obtained by the polynomial cyclic shift is full rank, if so, obtaining a cyclic sub-matrix through cyclic shift according to the polynomial generated in the step, and then updating the position record of the non-zero element according to the position of the non-zero element in the polynomial; otherwise, returning to the step b, and regenerating the reversible cyclic submatrix.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610076082A CN100592639C (en) | 2006-04-27 | 2006-04-27 | Low density parity check coding method, device and parity check matrix generating method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610076082A CN100592639C (en) | 2006-04-27 | 2006-04-27 | Low density parity check coding method, device and parity check matrix generating method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101047391A CN101047391A (en) | 2007-10-03 |
CN100592639C true CN100592639C (en) | 2010-02-24 |
Family
ID=38771674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610076082A Expired - Fee Related CN100592639C (en) | 2006-04-27 | 2006-04-27 | Low density parity check coding method, device and parity check matrix generating method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100592639C (en) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101366284B1 (en) * | 2007-11-13 | 2014-02-20 | 엘지전자 주식회사 | Method for generating block codes from Golay code and coding data, and Apparatus thereof |
CN101453297B (en) * | 2007-12-07 | 2010-12-01 | 中兴通讯股份有限公司 | Encoding method and apparatus for low density generation matrix code, and decoding method and apparatus |
CN101272223B (en) * | 2008-04-30 | 2011-04-20 | 中兴通讯股份有限公司 | Decoding method and device for low-density generating matrix code |
CN102868483A (en) | 2011-07-06 | 2013-01-09 | 北京新岸线无线技术有限公司 | Method and device for data transmission |
WO2013004090A1 (en) * | 2011-07-06 | 2013-01-10 | 北京新岸线无线技术有限公司 | Method and device for transmitting data |
CN107888199B (en) * | 2013-05-16 | 2021-11-09 | 韩国电子通信研究院 | Method and encoder for encoding/decoding input information based on low density parity check |
CN104410426B (en) * | 2014-09-18 | 2017-10-13 | 北京航空航天大学 | A kind of building method of Non-Binary LDPC Coded and coding method |
CN108370254B (en) * | 2016-07-20 | 2021-05-14 | 华为技术有限公司 | Low-density parity check code base matrix generation method and device |
US10998922B2 (en) * | 2017-07-28 | 2021-05-04 | Mitsubishi Electric Research Laboratories, Inc. | Turbo product polar coding with hard decision cleaning |
CN110011755B (en) * | 2018-01-05 | 2021-10-19 | 中兴通讯股份有限公司 | LDPC coding method and device and data sending method and device |
CN111740747B (en) * | 2020-07-16 | 2023-10-31 | 周口师范学院 | Construction method of low-rank cyclic matrix and associated multi-element LDPC code |
CN116383848B (en) * | 2023-04-04 | 2023-11-28 | 北京航空航天大学 | Method, equipment and medium for preventing illegal use in three-party security calculation |
-
2006
- 2006-04-27 CN CN200610076082A patent/CN100592639C/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101047391A (en) | 2007-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100592639C (en) | Low density parity check coding method, device and parity check matrix generating method | |
US8291283B1 (en) | Layered quasi-cyclic LDPC decoder with reduced-complexity circular shifter | |
JP4602418B2 (en) | Parity check matrix generation method, encoding method, decoding method, communication apparatus, encoder, and decoder | |
CN103888148B (en) | A kind of LDPC code Hard decision decoding method of dynamic threshold bit reversal | |
JP5199463B2 (en) | Turbo LDPC decoding | |
CN107370490B (en) | Method and device for encoding and decoding structured LDPC (Low Density parity check) | |
US11784668B2 (en) | Decoding fec codewords using ldpc codes define by a parity check matrix which is defined by rpc and qc constraints | |
US7774689B2 (en) | Encoding and decoding methods and systems | |
US8341489B2 (en) | Permuted accelerated LDPC (Low Density Parity Check) decoder | |
US10103751B2 (en) | Non-concatenated FEC codes for ultra-high speed optical transport networks | |
US20120221914A1 (en) | Non-Concatenated FEC Codes for Ultra-High Speed Optical Transport Networks | |
CN101459430B (en) | Encoding method and apparatus for low density generation matrix code | |
CN105075128A (en) | Design for lifted ldpc codes having high parallelism, low error floor, and simple encoding principle | |
EP1790081A1 (en) | Method and apparatus for encoding and decoding data | |
CN109586732B (en) | System and method for encoding and decoding LDPC codes with medium and short codes | |
CN102394660A (en) | Coding method of block interleaving quasi-cyclic extension parallel coded LDPC (Low Density Parity Check) codes and coder | |
CN107919874A (en) | Basic code check node processing for the decoded syndrome computation of nonbinary LDPC code | |
CN109120374B (en) | Quasi-cyclic low-density parity check code design method and device | |
WO2007092672A2 (en) | Method and apparatus for encoding and decoding data | |
CN110730008A (en) | RS code belief propagation decoding method based on deep learning | |
CN102142929B (en) | Forward error correction method, device and system | |
JP5523064B2 (en) | Decoding apparatus and method | |
EP3526899B1 (en) | Decoding of low-density parity-check convolutional turbo codes | |
US20240120949A1 (en) | Decoding fec codewords using ldpc codes defined by a parity check matrix which is defined by rpc and qc constraints | |
CN116436472A (en) | Coding method and device of low-density parity check code |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100224 Termination date: 20160427 |