CN115603761A - LDPC decoding method and device based on check confidence - Google Patents

LDPC decoding method and device based on check confidence Download PDF

Info

Publication number
CN115603761A
CN115603761A CN202211182509.3A CN202211182509A CN115603761A CN 115603761 A CN115603761 A CN 115603761A CN 202211182509 A CN202211182509 A CN 202211182509A CN 115603761 A CN115603761 A CN 115603761A
Authority
CN
China
Prior art keywords
check
decoding
node
target
nodes
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.)
Pending
Application number
CN202211182509.3A
Other languages
Chinese (zh)
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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202211182509.3A priority Critical patent/CN115603761A/en
Priority to PCT/CN2022/131682 priority patent/WO2024065978A1/en
Publication of CN115603761A publication Critical patent/CN115603761A/en
Pending legal-status Critical Current

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

Abstract

The application provides an LDPC decoding method based on check confidence coefficient, which relates to the technical field of information processing, wherein the method comprises the following steps: s1: acquiring check nodes and variable nodes of the LDPC code, initializing the check nodes and the variable nodes, and initializing the iteration times to 0; s2: performing check confidence iteration decoding on the LDPC code to obtain a decoding judgment result, and increasing the iteration times once; s3: checking and verifying according to the decoding judgment result; s4: if the verification passes, ending the decoding, outputting a decoding judgment result as a decoding result, and if the verification fails and the iteration number does not reach the preset iteration number, repeating the steps S2-S4 until the verification passes. By eliminating accumulation and multiplication operations in the LDPC decoding algorithm, the register consumption and decoding resources are reduced, and meanwhile, the decoding efficiency is effectively improved.

Description

LDPC decoding method and device based on check confidence
Technical Field
The present application relates to the field of information processing technologies, and in particular, to an LDPC decoding method and apparatus based on check confidence.
Background
LDPC (Low Density Parity Check) Code is the latest excellent channel error correction coding technique, has been applied in the 5G mobile communication standard, and is one of the candidate channel coding techniques for future 6G mobile communication. LDPC codes may be defined by a check matrix. For each parity check matrix H, there is a corresponding Tanner (bipartitle Tanner graph). The Tanner graph includes two kinds of nodes, VN (variable node) and CN (check node). Each VN represents a column in H, and each CN represents a row in H; when the element in a row and a column in H is 1, VN and CN in the Tanner graph are connected by a "side".
In the decoding of the LDPC code, a plurality of numbers are needed to carry out summation and product calculation, so that the calculation of each number needs a plurality of data reading operations, and the decoding speed is greatly reduced. Usually, a row processing method and a column processing method are adopted, firstly, the product of the row or the sum of the columns is calculated, then, each element is subtracted, and the confidence coefficient of each element in the row or the column is obtained, so that only 2 time delay units are needed for the calculation and evaluation of each confidence coefficient, and the decoding throughput rate is greatly improved. The decoding method still needs a large number of registers to keep the intermediate calculation values, consumes a great deal of register resources, increases the chip area and improves the power consumption.
Disclosure of Invention
The present application is directed to solving, at least to some extent, one of the technical problems in the related art.
Therefore, a first objective of the present application is to provide an LDPC decoding method based on check confidence, which solves the technical problems of more register resources and higher power consumption of the existing LDPC decoding method, reduces register consumption and decoding resources by eliminating accumulation and multiplication operations in the LDPC decoding algorithm, and meanwhile, has substantially no new year loss, and effectively improves decoding efficiency.
A second objective of the present application is to provide an LDPC decoding apparatus based on check confidence.
A third object of the present application is to propose a non-transitory computer-readable storage medium.
In order to achieve the above object, an embodiment of a first aspect of the present application provides an LDPC decoding method based on check confidence, including: s1: acquiring a check node and a variable node of the LDPC code, initializing the check node and the variable node, and initializing the iteration times to 0; s2: performing check confidence iterative decoding on the LDPC code to obtain a decoding judgment result, and increasing the iteration times once; s3: checking and verifying according to the decoding judgment result; s4: and if the verification passes, finishing decoding, outputting a decoding judgment result as a decoding result, and if the verification fails and the iteration times do not reach the preset iteration times, repeating the steps S2-S4 until the verification passes.
Optionally, in an embodiment of the present application, initializing the check nodes and the variable nodes includes:
initializing the verification confidence of the verification nodes to infinity;
initializing external information of the variable node into channel input soft information;
the information from the check node to the variable node is initialized to 0.
Optionally, in an embodiment of the present application, performing check confidence iterative decoding on the LDPC code to obtain a decoding decision result, where the decoding decision result includes:
and sequentially updating the verification confidence coefficients by taking the verification nodes as target verification nodes until the verification confidence coefficients of all the verification nodes are updated to obtain a decoding judgment result, and updating the verification confidence coefficients of the target verification nodes by updating information from the verification nodes to the verification nodes of the target verification nodes.
Optionally, in an embodiment of the present application, the updating information from check node to check node for the target check node includes:
sequentially taking variable nodes connected with the target check nodes as target variable nodes;
acquiring a latest updated check node connected with the target variable node except the target check node as a first check node, and calculating the confidence from the first check node to the target check node to obtain a decoding decision value of the target variable node;
and recursively calculating the updated check confidence coefficient of the target check node until the confidence coefficient updating of all the information transmitted by the variable nodes is completed.
Optionally, in an embodiment of the present application, calculating a confidence from the first check node to the target check node to obtain a decoding decision value of the target variable node includes:
obtaining updating information from the first check node to the target variable node according to the check confidence coefficient of the first check node and the external information of the target variable node;
calculating to obtain the updated external information of the target variable node according to the external information of the target variable node, the updated information from the first check node to the target variable node and the information from the target check node to the target variable node;
calculating to obtain the updated posterior information of the target variable node according to the updated information and the external information of the target variable node;
and carrying out decoding judgment according to the updated posterior information of the target variable node, wherein if the updated posterior information of the target variable node is more than or equal to 0, the decoding judgment value of the target variable node is 0, otherwise, the decoding judgment value of the target variable node is 1.
Optionally, in an embodiment of the present application, recursively calculating the updated check confidence of the target check node includes:
and performing product operation on the check confidence of the target check node and the updated information of the target variable node to obtain the updated information from the updated information of the target variable node to the target check node, wherein the updated information is used as the update check confidence of the target check node.
Optionally, in an embodiment of the present application, the decoding decision result includes a decoding decision value of a target variable node, and the verifying according to the decoding decision result includes:
if the decoding judgment result meets the check equation, the check verification is passed;
if the decoding judgment result does not meet the check equation, the check verification fails;
wherein the check equation is expressed as:
Figure BDA0003867455980000031
wherein, the first and the second end of the pipe are connected with each other,
Figure BDA0003867455980000032
indicating a decoding decision, H T Representing the transposed form of the LDPC code check matrix.
Optionally, in an embodiment of the present application, after performing verification according to a decoding decision result, the method further includes:
if the verification fails and the iteration times reach the preset iteration times, stopping decoding and outputting decoding failure.
In order to achieve the above object, an embodiment of a second aspect of the present application provides an LDPC decoding apparatus based on check confidence, including:
the initialization module is used for acquiring the check nodes and the variable nodes of the LDPC code, initializing the check nodes and the variable nodes and initializing the iteration times to 0;
the iterative decoding module is used for carrying out check confidence iterative decoding on the LDPC code to obtain a decoding judgment result and increasing the iteration times once;
the verification module is used for verifying and verifying according to the decoding judgment result;
and the output module is used for finishing decoding if the verification passes, outputting a decoding judgment result as a decoding result, and repeatedly calling the iterative decoding module and the verification module until the verification passes if the verification fails and the iteration number does not reach the preset iteration number.
In order to achieve the above object, a non-transitory computer readable storage medium is provided in a third aspect of the present application, and when executed by a processor, instructions in the storage medium can perform an LDPC decoding method based on check confidence.
The LDPC decoding method and device based on the check confidence coefficient and the non-transitory computer readable storage medium solve the technical problems that the existing LDPC decoding method consumes too many register resources and consumes more power, reduce the register consumption and decoding resources by eliminating the accumulation and multiplication operations in the LDPC decoding algorithm, have no new year loss basically and effectively improve the decoding efficiency.
Additional aspects and advantages of the present application will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the present application.
Drawings
The above and/or additional aspects and advantages of the present application will become apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
fig. 1 is a schematic flowchart of an LDPC decoding method based on check confidence provided in an embodiment of the present application;
fig. 2 is an exemplary diagram of performing check node-to-check node information update on a target check node in the LDPC decoding method based on check confidence in the embodiment of the present application;
fig. 3 is a schematic structural diagram of an LDPC decoding apparatus based on check confidence provided in the second embodiment of the present application;
fig. 4 is another schematic structural diagram of an LDPC decoding apparatus based on check confidence according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to the embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the drawings are exemplary and intended to be used for explaining the present application and should not be construed as limiting the present application.
The LDPC decoding method and apparatus based on check confidence according to an embodiment of the present application are described below with reference to the drawings.
Fig. 1 is a schematic flowchart of an LDPC decoding method based on check confidence provided in an embodiment of the present application.
As shown in fig. 1, the LDPC decoding method based on check confidence includes the following steps:
s1: acquiring check nodes and variable nodes of the LDPC code, initializing the check nodes and the variable nodes, and initializing the iteration times to 0;
s2: performing check confidence iteration decoding on the LDPC code to obtain a decoding judgment result, and increasing the iteration times once;
s3: checking and verifying according to the decoding judgment result;
s4: and if the verification passes, finishing decoding, outputting a decoding judgment result as a decoding result, and if the verification fails and the iteration times do not reach the preset iteration times, repeating the steps S2-S4 until the verification passes.
The LDPC decoding method based on the check confidence coefficient of the embodiment of the application comprises the following steps of S1: acquiring a check node and a variable node of the LDPC code, initializing the check node and the variable node, and initializing the iteration times to 0; s2: performing check confidence iteration decoding on the LDPC code to obtain a decoding judgment result, and increasing the iteration times once; s3: checking and verifying according to the decoding judgment result; s4: and if the verification passes, finishing decoding, outputting a decoding judgment result as a decoding result, and if the verification fails and the iteration times do not reach the preset iteration times, repeating the steps S2-S4 until the verification passes. Therefore, the technical problems of more register resources and higher power consumption of the traditional LDPC decoding method can be solved, the register consumption and the decoding resources are reduced by eliminating accumulation and multiplication operations in the LDPC decoding algorithm, meanwhile, the loss in the new year is basically avoided, and the decoding efficiency is effectively improved.
The LDPC decoding method based on the check confidence coefficient completes LDPC decoding through iterative decoding, and completes each iterative decoding through updating the check confidence coefficient of each check node in sequence; updating information from the check nodes to the check nodes through recursion to complete the updating of the check confidence of each check node; after each iterative decoding, checking and verifying the judgment bits so as to determine whether to continue the iteration; wherein, the updating of the check confidence of each check node is completed by recursively updating the information from the check node to the check node, and comprises the steps of firstly calculating the check node cj to the variable nodev a Then calculates the variable node v a Update extrinsic information and complete variable node v a Updating posterior information and judging decoding, and finally finishing calculating variable node v a And updating the external information to the check node ci.
Further, in this embodiment of the present application, initializing the check nodes and the variable nodes includes:
initializing the verification confidence of the verification nodes to infinity;
initializing the external information of the variable node into channel input soft information;
the check node to variable node information is initialized to 0.
Checking confidence of all checking nodes
Figure BDA0003867455980000051
Initialized to ∞ and expressed as:
Figure BDA0003867455980000052
external information of all variable nodes
Figure BDA0003867455980000053
Soft information is initialized to the channel input, represented as:
Figure BDA0003867455980000054
wherein the content of the first and second substances,
Figure BDA0003867455980000055
is a variable node v a The value of the code of (a) is,
Figure BDA0003867455980000056
is a variable node v a Is determined by the received value of (a),
all check nodes ci to variable nodes v a Information of
Figure BDA0003867455980000057
Initialized to 0, expressed as:
Figure BDA0003867455980000058
further, in this embodiment of the present application, performing check confidence iterative decoding on the LDPC code to obtain a decoding decision result, including:
and sequentially updating the verification confidence coefficients by taking the verification nodes as target verification nodes until the verification confidence coefficients of all the verification nodes are updated to obtain a decoding judgment result, and updating the verification confidence coefficients of the target verification nodes by updating information from the verification nodes to the verification nodes of the target verification nodes.
Performing check confidence iterative decoding on the LDPC code, comprising:
s21: initializing a check node ci as a 0 th check node;
s22: updating information from the check node to the check node for the check node ci;
s23: if the information updating of all the check nodes is finished, ending the iterative decoding; otherwise, the check node is added to the next check node, and the process returns to the step S22.
Further, in this embodiment of the present application, the updating information from check node to check node for the target check node includes:
sequentially taking variable nodes connected with the target check nodes as target variable nodes;
acquiring a latest updated check node connected with the target variable node except the target check node as a first check node, and calculating the confidence from the first check node to the target check node to obtain a decoding decision value of the target variable node;
and recursively calculating the updated check confidence coefficient of the target check node until the confidence coefficient updating of all the information transmitted by the variable nodes is completed.
To check node c i Go on to schoolThe information updating from the check node to the check node comprises the following steps:
s221: initializing check node c i Has a verification confidence of
Figure BDA0003867455980000061
S222: initializing variable nodes v connected with check nodes ci a 0 th neighbor node of ci;
s223: find and variable node v a The most recently updated check node cj other than ci that is connected;
s224: calculating the confidence coefficient from the check node cj to the check node ci;
s225: recursively calculating confidence of check nodes ci
Figure BDA0003867455980000062
S226: if the confidence degree updating of all the information of the check node ci transmitted by the adjacent variable nodes is completed, the information is obtained by recursion
Figure BDA0003867455980000063
Wherein, N (c) i ) Representing the number of neighbor nodes of the verification node ci, the confidence calculation of the verification node ci is completed, that is
Figure BDA0003867455980000064
Otherwise, returning to S222 to continue recursive computation of check node c i The verification confidence of (3).
Further, in the embodiment of the present application, calculating a confidence from the first check node to the target check node to obtain a decoding decision value of the target variable node includes:
obtaining updating information from the first check node to the target variable node according to the check confidence of the first check node and the external information of the target variable node;
calculating to obtain the updated external information of the target variable node according to the external information of the target variable node, the updated information from the first check node to the target variable node and the information from the target check node to the target variable node;
calculating to obtain the updated posterior information of the target variable node according to the updated information and the external information of the target variable node;
and carrying out decoding judgment according to the updated posterior information of the target variable node, wherein if the updated posterior information of the target variable node is more than or equal to 0, the decoding judgment value of the target variable node is 0, otherwise, the decoding judgment value of the target variable node is 1.
Computing check node c j To check node c i Includes:
s2241: according to check node c j Check confidence of
Figure BDA0003867455980000065
And variable node v a External information of
Figure BDA0003867455980000066
Calculating to obtain a check node c j To variable node v a Wherein the check node c j To variable node v a The calculation formula of the update information of (2) is expressed as:
Figure BDA0003867455980000067
wherein, the first and the second end of the pipe are connected with each other,
Figure BDA0003867455980000068
represents check node c j To variable node v a Update information of psi - () In order to perform the operation of removing the product,
Figure BDA0003867455980000069
indicating the verification confidence of the verification node ci,
Figure BDA00038674559800000610
representing variable nodes v a The external information of (a) is received,
wherein, the product removing operation is expressed as:
ψ - (x,y)=sgn(x)·sgn(y)·φ(|φ(|x|)-φ(|y|)|),
Figure BDA0003867455980000071
check node c i Check confidence of
Figure BDA0003867455980000072
Excluding variable node v a External information of
Figure BDA0003867455980000073
I.e. check node c j To variable node v a The information of (1).
S2242: node v of variable a External information of (2)
Figure BDA0003867455980000074
Plus check node c j To variable node v a Update information of
Figure BDA0003867455980000075
Then subtract check node c i To variable node v a Information of
Figure BDA0003867455980000076
Calculating to obtain variable node v a Of the variable node v, wherein the variable node v a Is expressed as
Figure BDA0003867455980000077
Wherein the content of the first and second substances,
Figure BDA0003867455980000078
representing variable node v a The update-out information of (a) is,
Figure BDA0003867455980000079
representing variablesNode v a The external information of (a) is received,
Figure BDA00038674559800000710
representing check node c j To variable node v a The update information of (a) is stored in the storage unit,
Figure BDA00038674559800000711
represents check node c i To variable node v a The information of (a).
S2243: according to variable node v a External information of
Figure BDA00038674559800000712
And check node c j To variable node v a Update information of
Figure BDA00038674559800000713
Calculating to obtain variable node v a Is updated, wherein the variable node v a The calculation formula of the updated posterior information of (a) is expressed as:
Figure BDA00038674559800000714
wherein the content of the first and second substances,
Figure BDA00038674559800000715
representing variable nodes v a The updated a-posteriori information of (c),
Figure BDA00038674559800000716
representing variable nodes v a The external information of (a) is provided,
Figure BDA00038674559800000717
representing check node c j To variable node v a The update information of (2).
S2244: according to variable node v a The updated posterior information is decoded and judged if the variable node v a If the updated posterior information is greater than or equal to 0, the variable node v a Is judged by decodingThe decision value is 0 if the variable node v a Is less than 0, then the variable node v a Has a decoding decision value of 1, wherein the node v is based on the variable a The decoding decision of the updated a posteriori information is expressed as:
Figure BDA00038674559800000718
wherein the content of the first and second substances,
Figure BDA0003867455980000081
which represents a decision to decode,
Figure BDA0003867455980000082
representing variable node v a The updated posterior information of (a).
Further, in this embodiment of the present application, recursively calculating the updated check confidence of the target check node includes:
and performing product operation on the check confidence of the target check node and the updated information of the target variable node to obtain the updated information from the updated information of the target variable node to the target check node, wherein the updated information is used as the update check confidence of the target check node.
Recursively calculating check node c i Degree of confidence of
Figure BDA0003867455980000083
The method comprises the following steps:
s2251: partial verification confidence
Figure BDA0003867455980000084
And variable node v a Updating external information
Figure BDA0003867455980000085
Performing product operation to obtain variable node v a Updating extrinsic information
Figure BDA0003867455980000086
To check node c i As update information ofNode c is tested i Check confidence of
Figure BDA0003867455980000087
The calculation formula is expressed as:
Figure BDA0003867455980000088
wherein the content of the first and second substances,
Figure BDA0003867455980000089
represents check node c i Partial verification confidence, psi, with n recursive updates + () The operation of the product is represented by,
Figure BDA00038674559800000810
representing the partial verification confidence for n-1 recursive updates,
Figure BDA00038674559800000811
representing variable node v a Updating extrinsic information, wherein the product operation is expressed as:
ψ + (x,y)=sgn(x)·sgn(y)·φ(φ(|x|)+φ(|y|)),
Figure BDA00038674559800000812
further, in this embodiment of the present application, the decoding decision result includes a decoding decision value of the target variable node, and the verifying according to the decoding decision result includes:
if the decoding judgment result meets the check equation, the check verification is passed;
if the decoding judgment result does not meet the check equation, the check verification fails;
wherein the check equation is expressed as:
Figure BDA00038674559800000813
wherein the content of the first and second substances,
Figure BDA00038674559800000814
represents a decoding decision, H T Representing the transposed form of the LDPC code check matrix.
If the decoding is judged
Figure BDA00038674559800000815
Formed vector of
Figure BDA00038674559800000816
Satisfy the check equation
Figure BDA00038674559800000817
The decoding verification passes; otherwise, the decoding check verification fails.
Further, in the embodiment of the present application, after performing verification according to a decoding decision result, the method further includes:
if the verification fails and the iteration times reach the preset iteration times, stopping decoding and outputting decoding failure.
Fig. 2 is an exemplary diagram of performing check node-to-check node information update on a target check node according to the LDPC decoding method based on check confidence in the embodiment of the present application.
As shown in FIG. 2, a variable node v connected to a check node ci is obtained a (ii) a Find and variable node v a Linked c i Outer most recently updated check node c j (ii) a Calculating to obtain a check node c j To variable node v a Update information of
Figure BDA0003867455980000091
Calculating to obtain variable node v a Update external information of
Figure BDA0003867455980000092
According to variable node v a External information of
Figure BDA0003867455980000093
And check node c j To variable node v a Update information of
Figure BDA0003867455980000094
Calculating to obtain variable node v a Updated posterior information of
Figure BDA0003867455980000095
Check node c i Check confidence of
Figure BDA0003867455980000096
And variable node v a Updating external information
Figure BDA0003867455980000097
Performing product operation to obtain check node c i Check confidence of
Figure BDA0003867455980000098
Fig. 3 is a schematic structural diagram of an LDPC decoding apparatus based on check confidence provided in the second embodiment of the present application.
As shown in fig. 3, the LDPC decoding apparatus based on check confidence includes:
an initialization module 10, configured to obtain check nodes and variable nodes of an LDPC code, initialize the check nodes and the variable nodes, and initialize iteration times to 0;
the iterative decoding module 20 is configured to perform check confidence iterative decoding on the LDPC code to obtain a decoding decision result, and increase the number of iterations once;
the verification module 30 is used for verifying and verifying according to the decoding judgment result;
and the output module 40 is used for finishing decoding if the verification passes, outputting a decoding judgment result as a decoding result, and repeatedly calling the iterative decoding module and the verification module until the verification passes if the verification fails and the iteration number does not reach the preset iteration number.
The LDPC decoding device based on the check confidence coefficient comprises an initialization module, a check confidence coefficient generation module and a decoding module, wherein the initialization module is used for acquiring check nodes and variable nodes of an LDPC code, initializing the check nodes and the variable nodes and initializing iteration times to 0; the iterative decoding module is used for carrying out check confidence iterative decoding on the LDPC code to obtain a decoding judgment result and increasing the iteration times once; the verification module is used for verifying and verifying according to the decoding judgment result; and the output module is used for finishing decoding if the verification passes, outputting a decoding judgment result as a decoding result, and repeatedly calling the iterative decoding module and the verification module until the verification passes if the verification fails and the iteration number does not reach the preset iteration number. Therefore, the technical problems that the existing LDPC decoding method consumes more register resources and consumes more power can be solved, the register consumption and decoding resources are reduced by eliminating accumulation and multiplication operations in the LDPC decoding algorithm, meanwhile, the loss in new years is basically avoided, and the decoding efficiency is effectively improved.
Fig. 4 is another schematic structural diagram of an LDPC decoding apparatus based on check confidence according to an embodiment of the present application.
As shown in FIG. 4, check node c i Corresponding to the ith row of the LDPC code check matrix, the ith row of the check matrix has a plurality of 1, and each 1 corresponds to one variable node. Variable node v a Corresponding to the a-th column of the LDPC code check matrix; check node c if ith row of check matrix, ith column and 1 i Connecting variable nodes v a . Sequentially acquiring and checking nodes c i Connected variable node v a (ii) a Find and variable node v a Most recently updated check node c outside of ci connected j (ii) a The check node c is obtained through B2V module calculation j To variable node v a Update information of
Figure BDA0003867455980000101
Obtaining variable node V through V2C module calculation a Update external information of
Figure BDA0003867455980000102
While according to variable node v a External information of
Figure BDA0003867455980000103
And check node c j To variable node v a Update information of
Figure BDA0003867455980000104
Calculating to obtain variable node v a Updated posterior information of
Figure BDA0003867455980000105
Checking confidence of checking node ci through C2B module
Figure BDA0003867455980000106
And variable node v a Updating external information
Figure BDA0003867455980000107
Performing product operation to calculate the verification confidence of the verification node ci
Figure BDA0003867455980000108
In order to implement the above embodiments, the present application also proposes a non-transitory computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the check confidence based LDPC method of the above embodiments.
In the description of the present specification, reference to the description of "one embodiment," "some embodiments," "an example," "a specific example," or "some examples" or the like means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present application. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or to implicitly indicate the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present application, "plurality" means at least two, e.g., two, three, etc., unless explicitly specified otherwise.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing steps of a custom logic function or process, and alternate implementations are included within the scope of the preferred embodiment of the present application in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present application.
The logic and/or steps represented in the flowcharts or otherwise described herein, e.g., an ordered listing of executable instructions that can be considered to implement logical functions, can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. For the purposes of this description, a "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection (electronic device) having one or more wires, a portable computer diskette (magnetic device), a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disc read-only memory (CDROM). Further, the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
It should be understood that portions of the present application may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, various steps or methods may be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system. If implemented in hardware, as in another embodiment, any one or combination of the following techniques, which are known in the art, may be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application specific integrated circuit having an appropriate combinational logic gate circuit, a Programmable Gate Array (PGA), a Field Programmable Gate Array (FPGA), or the like.
It will be understood by those skilled in the art that all or part of the steps carried by the method for implementing the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, and when the program is executed, the program includes one or a combination of the steps of the method embodiments.
In addition, functional units in the embodiments of the present application may be integrated into one processing module, or each unit may exist alone physically, or two or more units are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium.
The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc. Although embodiments of the present application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present application, and that variations, modifications, substitutions and alterations may be made to the above embodiments by those of ordinary skill in the art within the scope of the present application.

Claims (10)

1. An LDPC decoding method based on check confidence is characterized by comprising the following steps:
s1: acquiring check nodes and variable nodes of the LDPC code, initializing the check nodes and the variable nodes, and initializing the iteration times to 0;
s2: performing check confidence iterative decoding on the LDPC code to obtain a decoding judgment result, and increasing the iteration times once;
s3: checking and verifying according to the decoding judgment result;
s4: if the verification passes, ending the decoding, outputting the decoding judgment result as a decoding result, and if the verification fails and the iteration frequency does not reach the preset iteration frequency, repeating the steps S2-S4 until the verification passes.
2. The method of claim 1, wherein the initializing the check nodes and variable nodes comprises:
initializing a check confidence for the check nodes to infinity;
initializing the external information of the variable node into channel input soft information;
initializing the information from the check node to the variable node to 0.
3. The method of claim 2, wherein the iteratively decoding the check confidence of the LDPC code to obtain a decoding decision result comprises:
and sequentially updating the check confidence coefficients by taking the check nodes as target check nodes until the update of the check confidence coefficients of all the check nodes is completed to obtain a decoding judgment result, and updating the check confidence coefficients of the target check nodes by updating the information from the check nodes to the check nodes of the target check nodes.
4. The method of claim 3, wherein said check node to check node information update for said target check node comprises:
sequentially taking variable nodes connected with the target check nodes as target variable nodes;
acquiring a latest updated check node connected with the target variable node except the target check node as a first check node, and calculating a confidence from the first check node to the target check node to obtain a decoding decision value of the target variable node;
and recursively calculating the update check confidence of the target check node until the confidence of all the information transmitted by the variable nodes is updated.
5. The method of claim 4, wherein said calculating the confidence level from the first check node to the target check node to obtain the decoding decision value of the target variable node comprises:
obtaining update information from the first check node to the target variable node according to the check confidence of the first check node and the extrinsic information of the target variable node;
calculating to obtain the updated external information of the target variable node according to the external information of the target variable node, the updated information from the first check node to the target variable node and the information from the target check node to the target variable node;
calculating to obtain the updated posterior information of the target variable node according to the updated information and the external information of the target variable node;
and carrying out decoding judgment according to the updated posterior information of the target variable node, wherein if the updated posterior information of the target variable node is more than or equal to 0, the decoding judgment value of the target variable node is 0, otherwise, the decoding judgment value of the target variable node is 1.
6. The method of claim 5, wherein said recursively calculating an updated check confidence for the target check node comprises:
and performing product operation on the check confidence of the target check node and the updated information of the target variable node to obtain updated information from the updated information of the target variable node to the target check node, wherein the updated information is used as the updated check confidence of the target check node.
7. The method of claim 5, wherein the decoding decision result comprises a decoding decision value of the target variable node, and the performing the verification according to the decoding decision result comprises:
if the decoding judgment result meets a check equation, the check verification is passed;
if the decoding judgment result does not meet the check equation, the check verification fails;
wherein the check equation is expressed as:
Figure FDA0003867455970000021
wherein the content of the first and second substances,
Figure FDA0003867455970000022
represents a decoded decision value, H T Representing the transposed form of the LDPC code check matrix.
8. The method of claim 1, wherein after said performing check verification based on said decoding decision result, further comprising:
and if the verification fails and the iteration times reach preset iteration times, stopping decoding and outputting decoding failure.
9. An LDPC decoding apparatus based on check confidence, comprising:
the initialization module is used for acquiring check nodes and variable nodes of the LDPC code, initializing the check nodes and the variable nodes and initializing the iteration times to 0;
the iterative decoding module is used for carrying out check confidence iterative decoding on the LDPC code to obtain a decoding judgment result and increasing the iteration times once;
the verification module is used for verifying and verifying according to the decoding judgment result;
and the output module is used for finishing decoding if the verification passes, outputting the decoding judgment result as a decoding result, and repeatedly calling the iterative decoding module and the verification module until the verification passes if the verification fails and the iteration times do not reach the preset iteration times.
10. A non-transitory computer readable storage medium having stored thereon a computer program, wherein the computer program, when executed by a processor, implements the method of any one of claims 1-8.
CN202211182509.3A 2022-09-27 2022-09-27 LDPC decoding method and device based on check confidence Pending CN115603761A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211182509.3A CN115603761A (en) 2022-09-27 2022-09-27 LDPC decoding method and device based on check confidence
PCT/CN2022/131682 WO2024065978A1 (en) 2022-09-27 2022-11-14 Check confidence-based ldpc decoding method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211182509.3A CN115603761A (en) 2022-09-27 2022-09-27 LDPC decoding method and device based on check confidence

Publications (1)

Publication Number Publication Date
CN115603761A true CN115603761A (en) 2023-01-13

Family

ID=84845734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211182509.3A Pending CN115603761A (en) 2022-09-27 2022-09-27 LDPC decoding method and device based on check confidence

Country Status (2)

Country Link
CN (1) CN115603761A (en)
WO (1) WO2024065978A1 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102545913B (en) * 2012-02-07 2015-05-27 中兴通讯股份有限公司 Iterative decoding method and iterative decoding system
CN109302267A (en) * 2018-09-26 2019-02-01 西安科技大学 Interpretation method, equipment and the storage medium of mimo system based on LDPC
CN111245444B (en) * 2020-03-20 2022-03-29 清华大学 Normalized minimum sum LDPC decoding method and decoder
CN111865335B (en) * 2020-09-24 2021-01-22 浙江三维通信科技有限公司 Decoding method and device of packet error correcting code, storage medium and electronic device
CN112953554B (en) * 2021-01-27 2022-12-13 武汉梦芯科技有限公司 LDPC decoding method, system and medium based on layered confidence propagation
CN112953553B (en) * 2021-01-27 2023-04-07 武汉梦芯科技有限公司 Improved multi-system LDPC decoding method, device and medium in GNSS system

Also Published As

Publication number Publication date
WO2024065978A1 (en) 2024-04-04

Similar Documents

Publication Publication Date Title
JP5306342B2 (en) Shuffle LDPC decoding
US8495453B1 (en) Circulant processing scheduler for layered LDPC decoder
CN113032178B (en) Memory controller and access method of flash memory
US5802116A (en) Soft decision Viterbi decoding with large constraint lengths
JP2002033670A (en) Method and device for decoding general-purpose code in probability dependent graph
US20090319861A1 (en) Using damping factors to overcome ldpc trapping sets
CN101064591B (en) Decoding method for low density parity check code and its check node refreshing circuit
KR20060068168A (en) Apparatus for decoding ldpc with low computational complexity algorithms and method thereof
US10848182B2 (en) Iterative decoding with early termination criterion that permits errors in redundancy part
US20060274772A1 (en) Apparatus and methods for message passing decoding using simultaneous memory accesses
JP5723975B2 (en) Method, system, and program for decoding of LDPC code
RU2246751C2 (en) High-speed module for adding/comparing/selecting for use with witterby decoder
CN113037299A (en) LDPC code sparse check matrix reconstruction method and device based on iterative decoding
CN110730008B (en) RS code belief propagation decoding method based on deep learning
CN115549694A (en) LDPC code minimum code repetition detection method and device
KR101631128B1 (en) Ldpc decoder with a variable node updater which uses a scaling constant
US9590658B1 (en) High-speed low-power LDPC decoder design
CN107872231B (en) LDPC decoding method and device
CN115603761A (en) LDPC decoding method and device based on check confidence
TWI641233B (en) Method and decoder for decoding low density parity check data to deocde codeword
CN103190079B (en) Decoding apparatus and coding/decoding method
CN110708077B (en) LDPC code large number logic decoding method, device and decoder
US8347167B2 (en) Circuits for implementing parity computation in a parallel architecture LDPC decoder
US8706792B1 (en) Low-complexity q-ary LDPC decoder
CN111917420A (en) LDPC self-adaptive decoding method and LDPC self-adaptive 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