CN111917420A - LDPC self-adaptive decoding method and LDPC self-adaptive decoder - Google Patents

LDPC self-adaptive decoding method and LDPC self-adaptive decoder Download PDF

Info

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
Application number
CN202010867467.1A
Other languages
Chinese (zh)
Other versions
CN111917420B (en
Inventor
孙文鹏
罗倩倩
殷瑭蔓
魏涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou New Generation Chip Technology Co ltd
Original Assignee
Guangdong Communications and Networks Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Communications and Networks Institute filed Critical Guangdong Communications and Networks Institute
Priority to CN202010867467.1A priority Critical patent/CN111917420B/en
Publication of CN111917420A publication Critical patent/CN111917420A/en
Application granted granted Critical
Publication of CN111917420B publication Critical patent/CN111917420B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing 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

LDPC self-adaptive decoding method and LDPC self-adaptive decoder
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,
Figure BDA0002649194980000021
i∈(1,2,...,n),yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,
Figure BDA0002649194980000022
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,
Figure BDA0002649194980000023
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,
Figure BDA0002649194980000051
i∈(1,2,...,n),yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,
Figure BDA0002649194980000052
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,
Figure BDA0002649194980000061
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 is
Figure BDA0002649194980000062
eiRepresenting 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:
Figure BDA0002649194980000071
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,
Figure BDA0002649194980000072
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:
Figure BDA0002649194980000081
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:
Figure BDA0002649194980000082
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
Figure BDA0002649194980000083
Calculating the reliable information of each variable node, wherein the calculation formula is as follows:
Figure BDA0002649194980000084
wherein, KjTo correct the factor so that the condition is satisfied
Figure BDA0002649194980000085
If it is
Figure BDA0002649194980000086
The 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,
Figure BDA0002649194980000091
i∈(1,2,...,n),yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,
Figure BDA0002649194980000101
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,
Figure BDA0002649194980000102
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 is
Figure BDA0002649194980000103
eiRepresenting 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:
Figure BDA0002649194980000111
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,
Figure BDA0002649194980000121
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:
Figure BDA0002649194980000122
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:
Figure BDA0002649194980000123
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
Figure BDA0002649194980000124
Calculating the reliable information of each variable node, wherein the calculation formula is as follows:
Figure BDA0002649194980000125
wherein, KjTo correct the factor so that the condition is satisfied
Figure BDA0002649194980000126
If it is
Figure BDA0002649194980000127
The 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,
Figure FDA0002649194970000011
yirepresenting the log-likelihood ratio of the ith bit in the data to be decoded,
Figure FDA0002649194970000012
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,
Figure FDA0002649194970000021
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.
CN202010867467.1A 2020-08-25 2020-08-25 LDPC self-adaptive decoding method and LDPC self-adaptive decoder Active CN111917420B (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023202541A1 (en) * 2022-04-22 2023-10-26 华为技术有限公司 Information transmission method and apparatus

Citations (16)

* Cited by examiner, † Cited by third party
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

Patent Citations (16)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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