CN111917420A - LDPC self-adaptive decoding method and LDPC self-adaptive decoder - Google Patents
LDPC self-adaptive decoding method and LDPC self-adaptive decoder Download PDFInfo
- Publication number
- CN111917420A CN111917420A CN202010867467.1A CN202010867467A CN111917420A CN 111917420 A CN111917420 A CN 111917420A CN 202010867467 A CN202010867467 A CN 202010867467A CN 111917420 A CN111917420 A CN 111917420A
- Authority
- CN
- China
- Prior art keywords
- bit
- decoded
- check
- hard decision
- data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 59
- 239000011159 matrix material Substances 0.000 claims abstract description 59
- 230000003044 adaptive effect Effects 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 11
- 239000000126 substance Substances 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 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
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
The invention discloses an LDPC self-adaptive decoding method and an LDPC self-adaptive decoder. The LDPC self-adaptive decoding method comprises the following steps: determining a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded, and calculating an error accompanying pattern according to the hard decision sequence and a check matrix; counting the number of check equations which are not satisfied by each bit according to the error accompanying pattern and the check result of each bit and the check equation; when the maximum number of the unsatisfied check equations is smaller than the preset threshold value, decoding the data to be decoded by adopting a hard decision decoding algorithm; and when the number of the maximum unsatisfied check equations is larger than or equal to the preset threshold value, decoding the data to be decoded by adopting a soft decision decoding algorithm. The invention can adaptively switch the decoding algorithm according to channels with different qualities, and gives consideration to the decoding computation amount and the decoding performance, thereby improving the decoding efficiency.
Description
Technical Field
The invention relates to the technical field of mobile communication, in particular to an LDPC self-adaptive decoding method and an LDPC self-adaptive decoder.
Background
LDPC (Low Density Parity Check Code) is a linear block Code based on a sparse matrix, and its corresponding Check matrix contains mostly 0 and rarely 1. The LDPC code follows the decoding process of iterative information transfer, and the decoding algorithm is mainly divided into hard decision and soft decision. The hard decision decoding algorithm has low operation complexity and low decoding performance, and the soft decision decoding algorithm has high operation complexity and high decoding performance. In practical application, it is often necessary to select a suitable decoding method for channels of different qualities, and once the channel quality changes with the change of the channel environment, the selected LDPC decoding method may be difficult to adapt to the channels of different qualities, which limits the decoding efficiency.
Disclosure of Invention
In order to overcome the defects of the prior art, the invention provides an LDPC self-adaptive decoding method and an LDPC self-adaptive decoder, which can adaptively switch decoding algorithms according to channels with different qualities and give consideration to both decoding operand and decoding performance, thereby improving the decoding efficiency.
In order to solve the above technical problem, in a first aspect, an embodiment of the present invention provides an LDPC adaptive decoding method, including:
determining a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded, and calculating an error accompanying pattern according to the hard decision sequence and a check matrix;
counting the number of check equations which are not satisfied by each bit according to the error accompanying pattern and the check result of each bit and the check equation;
when the maximum number of the unsatisfied check equations is smaller than a preset threshold value, decoding the data to be decoded by adopting a hard decision decoding algorithm;
and when the number of the maximum unsatisfied check equations is larger than or equal to the preset threshold value, decoding the data to be decoded by adopting a soft decision decoding algorithm.
Further, the determining a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded specifically includes:
and calculating the log-likelihood ratio of each bit in the data to be decoded, setting the value of the element corresponding to the hard decision sequence to be 0 when the log-likelihood ratio of the bit is greater than 0, and setting the value of the element corresponding to the hard decision sequence to be 1 when the log-likelihood ratio of the bit is less than or equal to 0.
Further, the hard decision sequence is z ═ (z)1,z2,...,zn);
Wherein the content of the first and second substances,i∈(1,2,...,n),yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,Sirepresenting the data to be coded, ciRepresenting the ith bit, P (c), in said data to be decodedi=0|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 0, P (c)i=1|Si) And the probability that the ith bit in the data to be decoded is judged to be 1 is represented.
Further, the calculating an error accompanying pattern according to the hard decision sequence and the check matrix specifically includes:
and multiplying the hard decision sequence and the check matrix to obtain the error accompanying pattern.
Further, the error accompanying pattern is j ═ (j)1,j2,...,jn)=z*H;
Wherein z represents the hard decision sequence, and z ═ z (z)1,z2,...,zn) And H represents the check matrix,m∈(1,2,...,n),jmrepresenting an error map sample, jm1 denotes the hard decision sequenceColumns not satisfying the mth of said check equation, jm0 means that the hard decision sequence satisfies the mth check equation.
Further, when the maximum number of the unsatisfied check equations is smaller than a preset threshold value, decoding the data to be decoded by using a hard decision decoding algorithm, specifically:
turning over the value of the bit corresponding to the maximum number of the unsatisfied check equations to obtain new data to be decoded, and calculating a new error accompanying pattern according to the new data to be decoded;
and stopping decoding when the new error adjoint pattern is equal to 0 or the current iteration times reach the maximum iteration times, otherwise, calculating the error adjoint matrix again according to the hard decision sequence and the check matrix.
Further, when the maximum number of the unsatisfied check equations is greater than or equal to the preset threshold value, decoding the data to be decoded by using a soft-decision decoding algorithm, specifically:
initializing variable nodes, and calculating reliable information transmitted by check nodes to adjacent variable nodes and reliable information transmitted by variable nodes to adjacent check nodes in an iteration process so as to calculate the reliable information of each variable node;
and determining an estimated value corresponding to the bit according to the reliable information of the variable node, stopping decoding when the estimated value of the bit meets a parity check equation or the current iteration times reaches the maximum iteration times, and calculating the error adjoint matrix again according to the hard decision sequence and the check matrix if the estimated value of the bit does not meet the parity check equation or the current iteration times reaches the maximum iteration times.
In a second aspect, an embodiment of the present invention provides an LDPC adaptive decoder, including:
the error accompanying pattern calculation module is used for determining a hard decision sequence according to the log likelihood ratio of each bit in the data to be decoded and calculating an error accompanying pattern according to the hard decision sequence and the check matrix;
the check equation number counting module is used for counting the number of the check equations which are not satisfied by each bit according to the error accompanying pattern and the check result of each bit and the check equations;
the hard decision decoding module is used for decoding the data to be decoded by adopting a hard decision decoding algorithm when the maximum number of the unsatisfied check equations is smaller than a preset threshold value;
and the soft decision decoding module is used for decoding the data to be decoded by adopting a soft decision decoding algorithm when the maximum number of the unsatisfied check equations is greater than or equal to the preset threshold value.
Further, the determining a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded specifically includes:
and calculating the log-likelihood ratio of each bit in the data to be decoded, setting the value of the element corresponding to the hard decision sequence to be 0 when the log-likelihood ratio of the bit is greater than 0, and setting the value of the element corresponding to the hard decision sequence to be 1 when the log-likelihood ratio of the bit is less than or equal to 0.
Further, the calculating an error accompanying pattern according to the hard decision sequence and the check matrix specifically includes:
and multiplying the hard decision sequence and the check matrix to obtain the error accompanying pattern.
The embodiment of the invention has the following beneficial effects:
the method comprises the steps of determining a hard decision sequence according to the log-likelihood ratio of each bit in data to be decoded, calculating an error adjoint pattern according to the hard decision sequence and a check matrix, counting the number of check equations which are not satisfied by each bit according to the error adjoint pattern and the check result of each bit and the check equations, decoding the data to be decoded by adopting a hard decision decoding algorithm when the number of the check equations which are not satisfied maximally is smaller than a preset threshold value, decoding the data to be decoded by adopting a soft decision decoding algorithm when the number of the check equations which are not satisfied maximally is larger than or equal to the preset threshold value, and finally realizing the self-adaptive switching decoding algorithm. Compared with the prior art, the embodiment of the invention screens the maximum value from the number of the unsatisfied check equations corresponding to all the bits, namely the number of the unsatisfied check equations, selects to adopt a hard decision decoding algorithm or a soft decision decoding algorithm according to the comparison result of the number of the unsatisfied check equations and the preset threshold value, can adaptively switch the decoding algorithm according to channels with different qualities, and gives consideration to the decoding computation amount and the decoding performance, thereby improving the decoding efficiency.
Drawings
FIG. 1 is a flow chart of an LDPC adaptive decoding method according to a first embodiment of the present invention;
FIG. 2 is another flow chart of an LDPC adaptive decoding method according to a first embodiment of the present invention;
fig. 3 is a schematic structural diagram of an LDPC adaptive decoder according to a second embodiment of the present invention.
Detailed Description
The technical solutions in the present invention will be described clearly and completely with reference to the accompanying drawings, and it is obvious that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It should be noted that, the step numbers in the text are only for convenience of explanation of the specific embodiments, and do not serve to limit the execution sequence of the steps.
The first embodiment:
as shown in fig. 1-2, a first embodiment provides an LDPC adaptive decoding method, including steps S1 to S4:
s1, determining a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded, and calculating an error accompanying pattern according to the hard decision sequence and the check matrix;
s2, counting the number of check equations which are not satisfied by each bit according to the error accompanying pattern and the check result of each bit and the check equations;
s3, when the number of the maximum unsatisfied check equations is smaller than a preset threshold value, decoding data to be decoded by adopting a hard decision decoding algorithm;
and S4, when the number of the maximum unsatisfied check equations is larger than or equal to a preset threshold value, decoding the data to be decoded by adopting a soft-decision decoding algorithm.
Illustratively, in step S1, data to be decoded input by the decoder at the receiving end is obtained, a hard decision sequence is determined according to the log-likelihood ratio of each bit in the data to be decoded, meanwhile, a check matrix generated at the transmitting end is calculated, and an error accompanying pattern is calculated according to the hard decision sequence and the check matrix.
In a preferred embodiment, the hard decision sequence is determined according to the log-likelihood ratio of each bit in the data to be decoded, specifically: and calculating the log-likelihood ratio of each bit in the data to be decoded, setting the value of the element corresponding to the hard decision sequence to be 0 when the log-likelihood ratio of the bit is greater than 0, and setting the value of the element corresponding to the hard decision sequence to be 1 when the log-likelihood ratio of the bit is less than or equal to 0.
In a preferred implementation of this embodiment, the hard decision sequence is z ═ (z ═ z)1,z2,...,zn) (ii) a Wherein the content of the first and second substances,i∈(1,2,...,n),yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,Sirepresenting data to be decoded, ciRepresenting the ith bit, P (c), in the data to be decodedi=0|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 0, P (c)i=1|Si) Indicating the probability that the ith bit in the data to be decoded is judged to be 1.
In a preferred embodiment, the error accompanying pattern is calculated according to the hard decision sequence and the check matrix, specifically: and multiplying the hard decision sequence by the check matrix to obtain an error accompanying pattern.
In a preferred embodiment of this embodiment, the error accompaniment mapIs j ═ j (j)1,j2,...,jn) Z × H; wherein z represents a hard decision sequence, and z ═ z (z)1,z2,...,zn) And H represents a check matrix, H represents,m∈(1,2,...,n),jmrepresenting an error map sample, jm1 means that the hard decision sequence does not satisfy the mth check equation, jm0 means that the hard decision sequence satisfies the mth check equation.
Illustratively, in step S2, the number of the parity equations that are not satisfied for each bit is counted according to the error accompany pattern and the parity check result of each bit and the parity check equations, so as to screen the maximum value from the number of the non-satisfied parity check equations corresponding to all bits as the maximum number of the non-satisfied parity check equations. Wherein the statistical formula iseiRepresenting the number of unsatisfied check equations corresponding to the ith bit in the data to be decoded, ciRepresenting the ith bit, j, of the data to be decodedmRepresenting an error map sample.
Illustratively, in step S3, the number e of check equations when the maximum is not satisfiedmaxAnd when the threshold value is smaller than the preset threshold value, decoding the data to be decoded by adopting a hard decision decoding algorithm. The preset threshold value can be set according to a large number of simulation and actual test results. The basic idea of the hard decision decoding algorithm is as follows: if the number of the check equations which are not satisfied by a certain bit is the largest, the larger the error probability of the bit is, the bit is turned over, namely 0 is changed into 1, 1 is changed into 0, and then decoding is continued until all decoding succeeds or the maximum number of iteration is reached.
In an embodiment, when the number of the maximum unsatisfied check equations is smaller than a preset threshold, a hard decision decoding algorithm is used to decode data to be decoded, specifically: turning over the value of a bit corresponding to the number of the maximum unsatisfied check equations to obtain new data to be decoded, and calculating a new error accompanying pattern according to the new data to be decoded; and stopping decoding when the new error adjoint pattern is equal to 0 or the current iteration times reach the maximum iteration times, otherwise, calculating the error adjoint matrix again according to the hard decision sequence and the check matrix.
It can be understood that the number e of check equations when the maximum is not satisfiedmaxWhen the number of the check equations is less than the preset threshold value, the number e of the check equations which are not satisfied with the maximum value is calculatedmaxAnd the corresponding bit value is turned, namely 0 is changed into 1, 1 is changed into 0, new data to be decoded is obtained, a new error accompanying pattern j is z H is calculated according to the new data to be decoded, when the new error accompanying pattern is equal to 0, namely j is z H is 0, the decoding is judged to be successful, the decoding is stopped, or when the current iteration times reaches the maximum iteration times, the decoding is stopped, otherwise, an error accompanying matrix is calculated again according to the hard decision sequence and the check matrix until the current error accompanying pattern is equal to 0 or the current iteration times reaches the maximum iteration times.
Illustratively, in step S4, the number e of check equations when the maximum is not satisfiedmaxAnd when the threshold value is larger than or equal to the preset threshold value, decoding the data to be decoded by adopting a soft decision decoding algorithm. The basic idea of the soft-decision decoding algorithm is as follows: each row of the LDPC check matrix represents a parity check equation, each variable node transmits reliable information to all check nodes adjacent to the variable node, namely a value transmitted by a channel, then each check node processes the reliable information and returns new reliable information to the adjacent variable node, and finally whether the parity check equation is met is judged, so that an information transmission and iteration process is completed, when the decoding is judged to be successful at a certain time or the current iteration number reaches the maximum iteration number, the decoding is stopped, otherwise, the next iteration process is carried out.
In an embodiment, when the number of the check equations that are not satisfied maximally is greater than or equal to a preset threshold, a soft-decision decoding algorithm is used to decode data to be decoded, specifically: initializing variable nodes, and calculating reliable information transmitted by check nodes to adjacent variable nodes and reliable information transmitted by variable nodes to adjacent check nodes in an iteration process so as to calculate the reliable information of each variable node; and determining the estimated value of the corresponding bit according to the reliable information of the variable node, stopping decoding when the estimated value of the bit meets a parity check equation or the current iteration times reaches the maximum iteration times, and otherwise, calculating the error adjoint matrix again according to the hard decision sequence and the check matrix.
It can be understood that, the probability of initializing the variable node j defines the reliable information that the variable node j passes to the check node i as follows:
wherein, P (c)i=1|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 1, P (c)i=0|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 0,denotes the prior probability that the ith bit of the transmitted sequence is 1, qij (0)(0) Indicating the prior probability that the ith bit of the transmitted sequence is 0, and the superscript (0) indicates the number of iterations.
And calculating reliable information transmitted to the adjacent variable node j by the check node i in an iteration process, wherein the calculation formula is as follows:
wherein N (i) represents a set of check nodes i, the check nodes i in the set are all adjacent to the variable node j, and the superscripts (l) and (l-1) both represent iteration times.
In the iteration process, reliable information transmitted to an adjacent check node i by a variable node j is calculated, and the calculation formula is as follows:
wherein, M (j) tableAnd showing a set of variable nodes j, wherein the variable nodes j in the set are all adjacent to the check node i. KijTo correct the factor so that the condition is satisfied
Calculating the reliable information of each variable node, wherein the calculation formula is as follows:
If it isThe estimated value of the corresponding bit is ci1, otherwise, ci0. And stopping decoding when the estimated value of the bit meets the parity check equation or the current iteration number reaches the preset maximum iteration number, or calculating the error adjoint matrix again according to the hard decision sequence and the check matrix until the current estimated value meets the parity check equation or the current iteration number reaches the maximum iteration number.
In the embodiment, a hard decision sequence is determined according to a log-likelihood ratio of each bit in data to be decoded, an error adjoint pattern is calculated according to the hard decision sequence and a check matrix, then the number of check equations which are not satisfied by each bit is counted according to the error adjoint pattern and a check result of each bit and the check equations, when the number of the check equations which are not satisfied maximally is smaller than a preset threshold value, the data to be decoded is decoded by adopting a hard decision decoding algorithm, and when the number of the check equations which are not satisfied maximally is larger than or equal to the preset threshold value, the data to be decoded is decoded by adopting a soft decision decoding algorithm, so that the self-adaptive switching decoding algorithm is finally realized. In this embodiment, a maximum value, that is, the maximum number of unsatisfied check equations is selected from the number of unsatisfied check equations corresponding to all bits, and a hard decision decoding algorithm or a soft decision decoding algorithm is selected and adopted according to a comparison result between the maximum number of unsatisfied check equations and a preset threshold, so that a decoding algorithm can be adaptively switched according to channels of different qualities, and the decoding computation amount and the decoding performance are both considered, thereby improving the decoding efficiency.
Second embodiment:
a second embodiment provides an LDPC adaptive decoder, comprising: an error accompanying pattern calculation module 21, configured to determine a hard decision sequence according to a log likelihood ratio of each bit in the data to be decoded, and calculate an error accompanying pattern according to the hard decision sequence and the check matrix; a check equation number counting module 22, configured to count the number of check equations that each bit does not satisfy according to the error accompanying pattern and the check result of each bit and the check equation; the hard decision decoding module 23 is configured to decode the data to be decoded by using a hard decision decoding algorithm when the number of the maximum unsatisfied check equations is smaller than a preset threshold value; and the soft-decision decoding module 24 is configured to decode the data to be decoded by using a soft-decision decoding algorithm when the number of the maximum unsatisfied check equations is greater than or equal to a preset threshold value.
Illustratively, the error accompanying pattern calculation module 21 receives input data to be decoded, determines a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded, calculates a check matrix generated at the transmitting end, and calculates an error accompanying pattern according to the hard decision sequence and the check matrix.
In a preferred embodiment, the hard decision sequence is determined according to the log-likelihood ratio of each bit in the data to be decoded, specifically: and calculating the log-likelihood ratio of each bit in the data to be decoded, setting the value of the element corresponding to the hard decision sequence to be 0 when the log-likelihood ratio of the bit is greater than 0, and setting the value of the element corresponding to the hard decision sequence to be 1 when the log-likelihood ratio of the bit is less than or equal to 0.
In a preferred implementation of this embodiment, the hard decision sequence is z ═ (z ═ z)1,z2,...,zn) (ii) a Wherein the content of the first and second substances,i∈(1,2,...,n),yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,Sirepresenting data to be decoded, ciRepresenting the ith bit, P (c), in the data to be decodedi=0|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 0, P (c)i=1|Si) Indicating the probability that the ith bit in the data to be decoded is judged to be 1.
In a preferred embodiment, the error accompanying pattern is calculated according to the hard decision sequence and the check matrix, specifically: and multiplying the hard decision sequence by the check matrix to obtain an error accompanying pattern.
In a preferred embodiment of this embodiment, the error accompanying pattern is j ═ j (j)1,j2,...,jn) Z × H; wherein z represents a hard decision sequence, and z ═ z (z)1,z2,...,zn) And H represents a check matrix, H represents,m∈(1,2,...,n),jmrepresenting an error map sample, jm1 means that the hard decision sequence does not satisfy the mth check equation, jm0 means that the hard decision sequence satisfies the mth check equation.
Illustratively, the number of the check equations that are not satisfied for each bit is counted by the check equation number counting module 22 according to the error accompany pattern and the check result of each bit and the check equation, so as to screen the maximum value from the number of the unsatisfied check equations corresponding to all bits as the maximum number of the unsatisfied check equations. Wherein the statistical formula iseiRepresenting the number of unsatisfied check equations corresponding to the ith bit in the data to be decoded, ciRepresenting the ith ratio in the data to be decodedTe, jmRepresenting an error map sample.
Illustratively, the number e of check equations that are not satisfied at maximum is decoded by the hard-decision decoding block 23maxAnd when the threshold value is smaller than the preset threshold value, decoding the data to be decoded by adopting a hard decision decoding algorithm. The preset threshold value can be set according to a large number of simulation and actual test results. The basic idea of the hard decision decoding algorithm is as follows: if the number of the check equations which are not satisfied by a certain bit is the largest, the larger the error probability of the bit is, the bit is turned over, namely 0 is changed into 1, 1 is changed into 0, and then decoding is continued until all decoding succeeds or the maximum number of iteration is reached.
In an embodiment, when the number of the maximum unsatisfied check equations is smaller than a preset threshold, a hard decision decoding algorithm is used to decode data to be decoded, specifically: turning over the value of a bit corresponding to the number of the maximum unsatisfied check equations to obtain new data to be decoded, and calculating a new error accompanying pattern according to the new data to be decoded; and stopping decoding when the new error adjoint pattern is equal to 0 or the current iteration times reach the maximum iteration times, otherwise, calculating the error adjoint matrix again according to the hard decision sequence and the check matrix.
It can be understood that the number e of check equations when the maximum is not satisfiedmaxWhen the number of the check equations is less than the preset threshold value, the number e of the check equations which are not satisfied with the maximum value is calculatedmaxAnd the corresponding bit value is turned, namely 0 is changed into 1, 1 is changed into 0, new data to be decoded is obtained, a new error accompanying pattern j is z H is calculated according to the new data to be decoded, when the new error accompanying pattern is equal to 0, namely j is z H is 0, the decoding is judged to be successful, the decoding is stopped, or when the current iteration times reaches the maximum iteration times, the decoding is stopped, otherwise, an error accompanying matrix is calculated again according to the hard decision sequence and the check matrix until the current error accompanying pattern is equal to 0 or the current iteration times reaches the maximum iteration times.
Illustratively, the number e of check equations that are not satisfied at maximum is decoded by the soft-decision decoding module 24maxWhen the threshold value is larger than or equal to the preset threshold value, soft decision decoding is adoptedThe code algorithm decodes the data to be decoded. The basic idea of the soft-decision decoding algorithm is as follows: each row of the LDPC check matrix represents a parity check equation, each variable node transmits reliable information to all check nodes adjacent to the variable node, namely a value transmitted by a channel, then each check node processes the reliable information and returns new reliable information to the adjacent variable node, and finally whether the parity check equation is met is judged, so that an information transmission and iteration process is completed, when the decoding is judged to be successful at a certain time or the current iteration number reaches the maximum iteration number, the decoding is stopped, otherwise, the next iteration process is carried out.
In an embodiment, when the number of the check equations that are not satisfied maximally is greater than or equal to a preset threshold, a soft-decision decoding algorithm is used to decode data to be decoded, specifically: initializing variable nodes, and calculating reliable information transmitted by check nodes to adjacent variable nodes and reliable information transmitted by variable nodes to adjacent check nodes in an iteration process so as to calculate the reliable information of each variable node; and determining the estimated value of the corresponding bit according to the reliable information of the variable node, stopping decoding when the estimated value of the bit meets a parity check equation or the current iteration times reaches the maximum iteration times, and otherwise, calculating the error adjoint matrix again according to the hard decision sequence and the check matrix.
It can be understood that, the probability of initializing the variable node j defines the reliable information that the variable node j passes to the check node i as follows:
wherein, P (c)i=1|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 1, P (c)i=0|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 0,denotes the prior probability that the ith bit of the transmitted sequence is 1, qij (0)(0) Indicating the prior probability that the ith bit of the transmitted sequence is 0, and the superscript (0) indicates the number of iterations.
And calculating reliable information transmitted to the adjacent variable node j by the check node i in an iteration process, wherein the calculation formula is as follows:
wherein N (i) represents a set of check nodes i, the check nodes i in the set are all adjacent to the variable node j, and the superscripts (l) and (l-1) both represent iteration times.
In the iteration process, reliable information transmitted to an adjacent check node i by a variable node j is calculated, and the calculation formula is as follows:
wherein, m (j) represents a set of variable nodes j, and the variable nodes j in the set are all adjacent to the check node i. KijTo correct the factor so that the condition is satisfied
Calculating the reliable information of each variable node, wherein the calculation formula is as follows:
If it isThe estimated value of the corresponding bit is ci1, otherwise, ci0. When the estimated value of the bit satisfies the parity check equation, or is presentAnd stopping decoding when the iteration times reach the preset maximum iteration times, or calculating the error adjoint matrix again according to the hard decision sequence and the check matrix until the current estimated value meets the parity check equation or the current iteration times reach the maximum iteration times.
In this embodiment, a hard decision sequence is determined according to a log-likelihood ratio of each bit in data to be decoded by an error accompanying pattern calculation module 21, an error accompanying pattern is calculated according to the hard decision sequence and a check matrix, then, the number of check equations which are not satisfied by each bit is counted according to the error accompanying pattern and a check result of each bit and the check equations by a check equation number counting module 22, when the number of the check equations which are not satisfied at the maximum is smaller than a preset threshold value by a hard decision decoding module 23, the data to be decoded is decoded by a hard decision decoding algorithm, when the number of the check equations which are not satisfied at the maximum is larger than or equal to the preset threshold value by a soft decision decoding module 24, the data to be decoded is decoded by a soft decision decoding algorithm, and finally, an adaptive switching decoding algorithm is realized. In this embodiment, a maximum value, that is, the maximum number of unsatisfied check equations is selected from the number of unsatisfied check equations corresponding to all bits, and a hard decision decoding algorithm or a soft decision decoding algorithm is selected and adopted according to a comparison result between the maximum number of unsatisfied check equations and a preset threshold, so that a decoding algorithm can be adaptively switched according to channels of different qualities, and the decoding computation amount and the decoding performance are both considered, thereby improving the decoding efficiency.
In summary, the embodiment of the present invention has the following advantages:
the method comprises the steps of determining a hard decision sequence according to the log-likelihood ratio of each bit in data to be decoded, calculating an error adjoint pattern according to the hard decision sequence and a check matrix, counting the number of check equations which are not satisfied by each bit according to the error adjoint pattern and the check result of each bit and the check equations, decoding the data to be decoded by adopting a hard decision decoding algorithm when the number of the check equations which are not satisfied maximally is smaller than a preset threshold value, decoding the data to be decoded by adopting a soft decision decoding algorithm when the number of the check equations which are not satisfied maximally is larger than or equal to the preset threshold value, and finally realizing the self-adaptive switching decoding algorithm. The embodiment of the invention screens the maximum value from the number of the unsatisfied check equations corresponding to all the bits, namely the number of the unsatisfied check equations, selects to adopt a hard decision decoding algorithm or a soft decision decoding algorithm according to the comparison result of the number of the unsatisfied check equations and the preset threshold value, can adaptively switch the decoding algorithm according to the channels with different qualities, and gives consideration to the decoding operation amount and the decoding performance, thereby improving the decoding efficiency.
While the foregoing is directed to the preferred embodiment of the present invention, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention.
It will be understood by those skilled in the art that all or part of the processes of the above embodiments may be implemented by hardware related to instructions of a computer program, and the computer program may be stored in a computer readable storage medium, and when executed, may include the processes of the above embodiments. The storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.
Claims (10)
1. An LDPC adaptive decoding method, comprising:
determining a hard decision sequence according to the log-likelihood ratio of each bit in the data to be decoded, and calculating an error accompanying pattern according to the hard decision sequence and a check matrix;
counting the number of check equations which are not satisfied by each bit according to the error accompanying pattern and the check result of each bit and the check equation;
when the maximum number of the unsatisfied check equations is smaller than a preset threshold value, decoding the data to be decoded by adopting a hard decision decoding algorithm;
and when the number of the maximum unsatisfied check equations is larger than or equal to the preset threshold value, decoding the data to be decoded by adopting a soft decision decoding algorithm.
2. The LDPC adaptive decoding method according to claim 1, wherein the determining a hard decision sequence according to a log-likelihood ratio of each bit in data to be decoded specifically comprises:
and calculating the log-likelihood ratio of each bit in the data to be decoded, setting the value of the element corresponding to the hard decision sequence to be 0 when the log-likelihood ratio of the bit is greater than 0, and setting the value of the element corresponding to the hard decision sequence to be 1 when the log-likelihood ratio of the bit is less than or equal to 0.
3. The LDPC adaptive decoding method of claim 1 or 2, wherein the hard decision sequence is z ═ z (z ═ z)1,z2,...,zn);
Wherein the content of the first and second substances,yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,Sirepresenting the data to be coded, ciRepresenting the ith bit, P (c), in said data to be decodedi=0|Si) Represents the probability that the ith bit in the data to be decoded is judged to be 0, P (c)i=1|Si) And the probability that the ith bit in the data to be decoded is judged to be 1 is represented.
4. The LDPC adaptive decoding method of claim 1, wherein the calculating an error companion pattern according to the hard decision sequence and the check matrix specifically comprises:
and multiplying the hard decision sequence and the check matrix to obtain the error accompanying pattern.
5. The LDPC adaptive decoding method of claim 1 or 4, wherein the error accompanying pattern is j ═ (j)1,j2,...,jn)=z*H;
Wherein z represents the hard decision sequence, and z ═ z (z)1,z2,...,zn) And H represents the check matrix,jmrepresenting an error map sample, jm1 means that the hard decision sequence does not satisfy the mth check equation, jm0 means that the hard decision sequence satisfies the mth check equation.
6. The LDPC adaptive decoding method according to claim 1, wherein when the maximum number of the unsatisfied check equations is smaller than a preset threshold, the data to be decoded is decoded by using a hard-decision decoding algorithm, specifically:
turning over the value of the bit corresponding to the maximum number of the unsatisfied check equations to obtain new data to be decoded, and calculating a new error accompanying pattern according to the new data to be decoded;
and stopping decoding when the new error adjoint pattern is equal to 0 or the current iteration times reach the maximum iteration times, otherwise, calculating the error adjoint matrix again according to the hard decision sequence and the check matrix.
7. The LDPC adaptive decoding method according to claim 1, wherein when the maximum number of the unsatisfied check equations is greater than or equal to the preset threshold, a soft-decision decoding algorithm is used to decode the data to be decoded, specifically:
initializing variable nodes, and calculating reliable information transmitted by check nodes to adjacent variable nodes and reliable information transmitted by variable nodes to adjacent check nodes in an iteration process so as to calculate the reliable information of each variable node;
and determining an estimated value corresponding to the bit according to the reliable information of the variable node, stopping decoding when the estimated value of the bit meets a parity check equation or the current iteration times reaches the maximum iteration times, and calculating the error adjoint matrix again according to the hard decision sequence and the check matrix if the estimated value of the bit does not meet the parity check equation or the current iteration times reaches the maximum iteration times.
8. An LDPC adaptive decoder, comprising:
the error accompanying pattern calculation module is used for determining a hard decision sequence according to the log likelihood ratio of each bit in the data to be decoded and calculating an error accompanying pattern according to the hard decision sequence and the check matrix;
the check equation number counting module is used for counting the number of the check equations which are not satisfied by each bit according to the error accompanying pattern and the check result of each bit and the check equations;
the hard decision decoding module is used for decoding the data to be decoded by adopting a hard decision decoding algorithm when the maximum number of the unsatisfied check equations is smaller than a preset threshold value;
and the soft decision decoding module is used for decoding the data to be decoded by adopting a soft decision decoding algorithm when the maximum number of the unsatisfied check equations is greater than or equal to the preset threshold value.
9. The LDPC adaptive decoder according to claim 8, wherein the determining a hard decision sequence according to a log-likelihood ratio of each bit in the data to be decoded specifically comprises:
and calculating the log-likelihood ratio of each bit in the data to be decoded, setting the value of the element corresponding to the hard decision sequence to be 0 when the log-likelihood ratio of the bit is greater than 0, and setting the value of the element corresponding to the hard decision sequence to be 1 when the log-likelihood ratio of the bit is less than or equal to 0.
10. The LDPC adaptive decoder according to claim 8, wherein the calculating an error companion pattern according to the hard decision sequence and the check matrix specifically comprises:
and multiplying the hard decision sequence and the check matrix to obtain the error accompanying pattern.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010867467.1A CN111917420B (en) | 2020-08-25 | 2020-08-25 | LDPC self-adaptive decoding method and LDPC self-adaptive decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010867467.1A CN111917420B (en) | 2020-08-25 | 2020-08-25 | LDPC self-adaptive decoding method and LDPC self-adaptive decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111917420A true CN111917420A (en) | 2020-11-10 |
CN111917420B CN111917420B (en) | 2023-07-04 |
Family
ID=73278663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010867467.1A Active CN111917420B (en) | 2020-08-25 | 2020-08-25 | LDPC self-adaptive decoding method and LDPC self-adaptive decoder |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111917420B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023202541A1 (en) * | 2022-04-22 | 2023-10-26 | 华为技术有限公司 | Information transmission method and apparatus |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070089024A1 (en) * | 2005-10-03 | 2007-04-19 | Xiaoyong Yu | Method and apparatus for a low-density parity-check decoder |
CN101132252A (en) * | 2007-09-26 | 2008-02-27 | 东南大学 | Quantified minimizing and coding method for low-density parity code |
CN101345602A (en) * | 2008-08-21 | 2009-01-14 | 上海交通大学 | Early termination method of low density check code iteration decoding |
CN101976584A (en) * | 2010-10-27 | 2011-02-16 | 记忆科技(深圳)有限公司 | Quasi-cyclic low density parity-check code (QC-LDPC) decoder and decoding method |
CN102130695A (en) * | 2010-01-15 | 2011-07-20 | 中兴通讯股份有限公司 | Decoding method and device of concatenated codes |
CN103269229A (en) * | 2013-05-24 | 2013-08-28 | 上海交通大学 | Mixed iterative decoding method for LDPC-RS two-dimensional product code |
WO2015152922A1 (en) * | 2014-04-03 | 2015-10-08 | Empire Technology Development Llc | Memory device with speculated bit flip threshold |
CN105790774A (en) * | 2016-02-25 | 2016-07-20 | 北京邮电大学 | Improved LDPC decoding method and device |
US9432053B1 (en) * | 2014-07-07 | 2016-08-30 | Microsemi Storage Solutions (U.S.), Inc. | High speed LDPC decoder |
CN109379084A (en) * | 2018-09-08 | 2019-02-22 | 天津大学 | A kind of interpretation method for burst error |
US20190158116A1 (en) * | 2017-11-22 | 2019-05-23 | Samsung Electronics Co., Ltd. | Method of decoding low density parity check (ldpc) code, decoder and system performing the same |
CN109981112A (en) * | 2018-09-26 | 2019-07-05 | 东南大学 | A kind of sequencing statistical decoding method of partial cyclic redundancy check auxiliary |
CN110166056A (en) * | 2019-05-13 | 2019-08-23 | 武汉纺织大学 | A kind of Hard decision decoding method of the LDPC code based on match tracing |
CN110380738A (en) * | 2019-07-19 | 2019-10-25 | 广东省新一代通信与网络创新研究院 | The configurable RS encoder IP core circuit structure of parametric software and its coding method |
US20200162108A1 (en) * | 2018-11-19 | 2020-05-21 | SK Hynix Inc. | Ldpc decoder, semiconductor memory system, and operating method thereof |
CN111416628A (en) * | 2020-04-09 | 2020-07-14 | 重庆邮电大学 | BCH soft decision channel code decoding device based on random representation |
-
2020
- 2020-08-25 CN CN202010867467.1A patent/CN111917420B/en active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070089024A1 (en) * | 2005-10-03 | 2007-04-19 | Xiaoyong Yu | Method and apparatus for a low-density parity-check decoder |
CN101132252A (en) * | 2007-09-26 | 2008-02-27 | 东南大学 | Quantified minimizing and coding method for low-density parity code |
CN101345602A (en) * | 2008-08-21 | 2009-01-14 | 上海交通大学 | Early termination method of low density check code iteration decoding |
CN102130695A (en) * | 2010-01-15 | 2011-07-20 | 中兴通讯股份有限公司 | Decoding method and device of concatenated codes |
CN101976584A (en) * | 2010-10-27 | 2011-02-16 | 记忆科技(深圳)有限公司 | Quasi-cyclic low density parity-check code (QC-LDPC) decoder and decoding method |
CN103269229A (en) * | 2013-05-24 | 2013-08-28 | 上海交通大学 | Mixed iterative decoding method for LDPC-RS two-dimensional product code |
WO2015152922A1 (en) * | 2014-04-03 | 2015-10-08 | Empire Technology Development Llc | Memory device with speculated bit flip threshold |
US9432053B1 (en) * | 2014-07-07 | 2016-08-30 | Microsemi Storage Solutions (U.S.), Inc. | High speed LDPC decoder |
CN105790774A (en) * | 2016-02-25 | 2016-07-20 | 北京邮电大学 | Improved LDPC decoding method and device |
US20190158116A1 (en) * | 2017-11-22 | 2019-05-23 | Samsung Electronics Co., Ltd. | Method of decoding low density parity check (ldpc) code, decoder and system performing the same |
CN109379084A (en) * | 2018-09-08 | 2019-02-22 | 天津大学 | A kind of interpretation method for burst error |
CN109981112A (en) * | 2018-09-26 | 2019-07-05 | 东南大学 | A kind of sequencing statistical decoding method of partial cyclic redundancy check auxiliary |
US20200162108A1 (en) * | 2018-11-19 | 2020-05-21 | SK Hynix Inc. | Ldpc decoder, semiconductor memory system, and operating method thereof |
CN110166056A (en) * | 2019-05-13 | 2019-08-23 | 武汉纺织大学 | A kind of Hard decision decoding method of the LDPC code based on match tracing |
CN110380738A (en) * | 2019-07-19 | 2019-10-25 | 广东省新一代通信与网络创新研究院 | The configurable RS encoder IP core circuit structure of parametric software and its coding method |
CN111416628A (en) * | 2020-04-09 | 2020-07-14 | 重庆邮电大学 | BCH soft decision channel code decoding device based on random representation |
Non-Patent Citations (1)
Title |
---|
VANESSA B. OLIVATTO: "Simplified Method for Log-Likelihood Ratio Approximation in High-Order Modulations Based on the Voronoi Decomposition", 《IEEE TRANSACTIONS ON BROADCASTING 》, pages 583 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023202541A1 (en) * | 2022-04-22 | 2023-10-26 | 华为技术有限公司 | Information transmission method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN111917420B (en) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100703271B1 (en) | Decoding Method and Apparatus of Low Density Parity Code Using Unified processing | |
USRE44421E1 (en) | Decoding apparatus for low-density parity-check codes using sequential decoding, and method thereof | |
CN108462558B (en) | Method and device for decoding polarization code SCL and electronic equipment | |
CN107612560B (en) | Polarization code early iteration stopping method based on partial information bit likelihood ratio | |
CN110995278B (en) | Improved polarity code serial elimination list bit overturning decoding method and system | |
US8219890B2 (en) | Denoising and error correction for finite input, general output channel | |
JP2009100222A (en) | Device and method for decoding low density parity check code | |
CN110492974B (en) | Parallel polar code decoding method and device | |
US10848182B2 (en) | Iterative decoding with early termination criterion that permits errors in redundancy part | |
KR20060032464A (en) | Efficient decoding method and apparatus of low density parity code | |
CN110798228A (en) | Polarization code turning decoding method and system based on deep learning | |
CN114070331B (en) | Self-adaptive serial offset list flip decoding method and system | |
CN114157309A (en) | Polar code decoding method, device and system | |
CN112332864A (en) | Polar code decoding method and system for self-adaptive ordered mobile pruning list | |
CN111917420B (en) | LDPC self-adaptive decoding method and LDPC self-adaptive decoder | |
US20070083802A1 (en) | Broadcast message passing decoding of low density parity check codes | |
CN111130567B (en) | Polarization code belief propagation list decoding method added with noise disturbance and bit inversion | |
CN109672498B (en) | Decoding method and device | |
CN110190857B (en) | CRC (Cyclic redundancy check) auxiliary check polarization code decoding method and intelligent terminal | |
KR100362912B1 (en) | Apparatus for stopping recursive decoding and turbo decoder comprising it | |
CN101707486A (en) | LDPC decryption method of multi-state belief propagation (BP) iteration with unidirectional rectification | |
CN111835363B (en) | LDPC code decoding method based on alternate direction multiplier method | |
CN113131950A (en) | Self-adaptive continuous elimination priority decoding method for polarization code | |
CN102164023A (en) | Method for decoding adaptive dynamic quantitative low density parity-check codes (LDPC) | |
US8706792B1 (en) | Low-complexity q-ary LDPC decoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231226 Address after: Building A, Runhui Science and Technology Park, No. 18 Shenzhou Road, Huangpu District, Guangzhou City, Guangdong Province, 510663 (self numbered 301, 3rd floor) Patentee after: Guangzhou New Generation Chip Technology Co.,Ltd. Address before: 510000 Room 201, 88 Haiyun Road, Science City, Guangzhou hi tech Industrial Development Zone, Guangdong Province Patentee before: GUANGDONG NEW GENERATION COMMUNICATION AND NETWORK INNOVATION INSTITUTE |
|
TR01 | Transfer of patent right |