CN113824450A - Decoding method, decoder and storage medium of multi-element LDPC code - Google Patents

Decoding method, decoder and storage medium of multi-element LDPC code Download PDF

Info

Publication number
CN113824450A
CN113824450A CN202010561012.7A CN202010561012A CN113824450A CN 113824450 A CN113824450 A CN 113824450A CN 202010561012 A CN202010561012 A CN 202010561012A CN 113824450 A CN113824450 A CN 113824450A
Authority
CN
China
Prior art keywords
confidence vector
confidence
linear
vector
equal
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
CN202010561012.7A
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.)
Sanechips Technology Co Ltd
Original Assignee
Sanechips Technology Co Ltd
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 Sanechips Technology Co Ltd filed Critical Sanechips Technology Co Ltd
Priority to CN202010561012.7A priority Critical patent/CN113824450A/en
Publication of CN113824450A publication Critical patent/CN113824450A/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
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding

Abstract

The application discloses a decoding method, a decoder and a storage medium of a multi-element LDPC code. The method comprises the following steps: setting the maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→i(ii) a Using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→j(ii) a According to a check matrix HmnChecking the code word sequence; if the verification is passed, outputting a decoding result; if the verification fails, a second confidence vector C2V is utilizedi→jUpdating the first confidence vector V2Cj→iAnd making the current iteration number k equal to k +1, and making the current iteration number k less than the maximum iteration number ImaxThen execution returns according to the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jUntil the current iteration number k is equal to the maximum iteration number ImaxTo date, wherein the first confidence vector V2Cj→iIs updated according to linear adjustment and/or nonlinear adjustmentI is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n. The method and the device can improve an EMS algorithm, improve decoding gain, adapt to different front-end systems, and have good universality and adjustable configurable performance.

Description

Decoding method, decoder and storage medium of multi-element LDPC code
Technical Field
The present application relates to the field of encoding and decoding, and in particular, to a decoding method, a decoder, and a storage medium for a multi-element LDPC code.
Background
Low Density Parity Check (LDPC) codes are block error correcting codes with sparse Check matrices, applicable to almost all channels. The performance of the LDPC code is very close to Shannon (Shannon) limit, and has the characteristics of low decoding complexity, parallel decoding capability, and the like, and thus, the LDPC code has become a research hotspot in the communication field in recent years. In the existing decoding method of the multi-element LDPC code, the decoding complexity of the Extended-Min-Sum (EMS) algorithm based on the minimum Log Likelihood Ratio (LLR) is low, the space required for storage is small, the hardware implementation is very convenient, and the method has more applications in engineering practice. However, there is some loss in decoding gain in terms of its performance.
Disclosure of Invention
The embodiment of the application mainly aims to provide a decoding method, a decoder and a storage medium of a multi-element LDPC code, which can improve an EMS algorithm, improve decoding gain, adapt to different front-end systems, and have good universality and adjustable configurable performance.
In order to achieve the above object, an embodiment of the present application provides a method for decoding a multi-element LDPC code, including: setting the maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→iWherein the first confidence vector V2Cj→iIs a check matrix HmnEach variable node VNjTo check nodes CNiThe confidence vector of (2);
using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jWherein the second confidence vector C2Vi→jFor each check node CNiTo variable nodes VNjThe confidence vector of (2);
according to the check matrix HmnChecking a sequence of codewords according to the first confidence vector V2Cj→iObtaining;
if the verification is passed, outputting a decoding result;
if the verification fails, the second confidence vector C2V is utilizedi→jUpdating the first confidence vector V2Cj→iAnd making the current iteration number k equal to k +1, and making the current iteration number k less than the maximum iteration number ImaxThen execution returns according to the first confidence vector V2Cj→iUpdating the second confidence vector C2Vi→jUntil the current iteration number k is equal to the maximum iteration number ImaxTo date, wherein the first confidence vector V2Cj→iIs updated according to the linear adjustment and/or the nonlinear adjustment, i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n.
To achieve the above object, an embodiment of the present application provides a decoder, including: the device comprises an initialization module, an updating module, a checking module, a result output module and an iteration processing module;
an initialization module arranged to set a maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→iWherein the first confidence vector V2Cj→iIs a check matrix HmnEach variable node VNjTo check nodes CNiThe confidence vector of (2);
an update module arranged to utilize the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jWherein the second confidence vector C2Vi→jFor each check node CNiTo variable nodes VNjThe confidence vector of (2);
a check module configured to check the matrix HmnChecking a sequence of codewords according to the first confidence vector V2Cj→iObtaining;
the result output module is set to output a decoding result if the verification is passed;
an update module further configured to utilize the second confidence vector C2V if the verification failsi→jUpdating the first confidence vector V2Cj→iWherein the first confidence vector V2Cj→iIs updated according to a linear adjustment and/or a nonlinear adjustment mode, i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n;
the iteration processing module is set to enable the current iteration number k to be k +1 and enable the current iteration number k to be smaller than the maximum iteration number ImaxThen, returning to make the updating module execute according to the first confidenceDegree vector V2Cj→iUpdating the second confidence vector C2Vi→jUntil the current iteration number k is equal to the maximum iteration number ImaxUntil now.
To achieve the above object, an embodiment of the present application further provides a decoder, including: a processor for implementing the method of any of the above embodiments when executing the computer program.
To achieve the above object, the present application provides a computer-readable storage medium storing a computer program which, when executed by a processor, implements the method of any of the above embodiments.
The application provides a decoding method, a decoder and a storage medium of a multi-element LDPC code, which update a first confidence coefficient vector V2C by a linear adjustment and/or a non-linear adjustment modej→i. Thus, the linear adjustment method and the non-linear adjustment method can achieve good performance improvement, and the decoding gain is improved by 0.1dB to 0.2 dB. Therefore, the performance of the traditional minimum expansion and decoding algorithm can be improved, and the decoder adopts dual configuration of linear and nonlinear processing, can be adapted to different front-end systems to deal with different ADC capabilities of different systems, and has good universality and adjustable configurable performance.
With regard to the above embodiments and other aspects of the present application and implementations thereof, further description is provided in the accompanying drawings description, detailed description and claims.
Drawings
Fig. 1 is a flowchart illustrating a decoding method of a multi-element LDPC code according to an embodiment;
FIG. 2 is a block diagram illustrating an embodiment of determining a third confidence vector based on linear adjustment and/or non-linear adjustment
Figure BDA0002546057080000021
A flow diagram of the method;
FIG. 3 is a diagram illustrating simulation results of decoding according to an embodiment;
fig. 4 is a schematic structural diagram of a decoder according to an embodiment;
fig. 5 is a schematic structural diagram of another decoder according to an embodiment.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
In the following description, suffixes such as "module", "component", or "unit" used to denote elements are used only for the convenience of description of the present application, and have no peculiar meaning by themselves. Thus, "module", "component" or "unit" may be used mixedly.
The LDPC code is a grouped error correcting code with a sparse check matrix, the performance of the LDPC code is very close to Shannon (Shannon) limit, and the LDPC code has the characteristics of simple description and implementation, easy theoretical analysis and research, simple decoding, parallel operation implementation, suitability for hardware implementation and the like, and has become a research hotspot in the communication field in recent years. Current research on LDPC codes focuses mainly on two aspects: one is an irregular binary LDPC code, and when the code length is more than 10000, the performance of the code is very close to the Shannon limit; the other is a multi-element LDPC code with medium and short code length. The performance of the multi-element LDPC code is better than that of the binary LDPC code, and the LDPC code with excellent performance is usually an irregular multi-element LDPC code.
Due to the fact that the implementation is relatively simple and the performance is more excellent than that of the error correcting code which is mainstream before, the binary LDPC code is widely applied in practice, such as wire transmission and fifth generation wireless communication systems. It is undeniable that the multi-element LDPC code is a more excellent code, which has the following advantages over the binary LDPC code:
(1) under the condition that the code length is relatively short, the error code performance of the multi-element LDPC code is better: binary LDPC codes usually require very long code lengths (usually over 10000 bits) when reaching shannon limit performance, while multi-element LDPC codes can construct codes with very excellent performance of medium-long code lengths and even short code lengths. This makes the multiple LDPC code more valuable for engineering practice.
(2) Better error correction performance: belief Propagation (BP) decoding algorithm (a message passing algorithm which makes inference on a graph model) is equivalent to maximum a posteriori probability decoding in an acyclic graph, while the existence of a large number of small rings in an acyclic graph can seriously deteriorate the performance of the Belief Propagation decoding algorithm, and the elimination of the small rings is important for the correct convergence of iterative decoding. Since the multiple LDPC code combines a plurality of bits into a multiple symbol, the potential of eliminating a small ring in an LDPC code Tanner graph (representing an LDPC check matrix) is provided, and better error correction performance can be obtained.
(3) The burst error resistance is strong: errors generated in an actual channel are often burst errors or both burst errors and random errors, for example, in a wireless channel and a network channel, errors generated by the channel are often burst, a binary LDPC code does not have a strong capability of resisting burst errors, and a simultaneous Reed-Solomon (RS) code or BCH (Bose-Ray Chaudhuri-Hocquenghem) code concatenation is often required in an actual system. The multiple LDPC code is superior to the binary LDPC code in burst error resistance because it can combine multiple burst bit errors into fewer multiple symbol errors.
(4) Being suitable for high-rate transmission: the multi-element LDPC code is designed based on high-order finite field, so that the multi-element LDPC code is very suitable to be combined with a high-order modulation scheme and a multi-antenna system, thereby providing higher data transmission rate and spectral efficiency. By adopting the multi-element LDPC code, an efficient single/multi-layer coding modulation system can be designed.
In conclusion, the multi-element LDPC code has higher application value and application prospect. At present, the practical application value of the multi-element LDPC code is also explored, such as the combination with a high-order modulation system, the application in a multiple-in multiple-out (MIMO) channel, the application in satellite communication and deep space communication, and the like.
For LDPC decoding, the performance of LDPC code with extra-long code length in the multi-system GF (q) domain is close to Shannon limit, wherein q is the original length of the transferred confidence coefficient vector; meanwhile, the error code performance of the LDPC code with the medium and short code length is improved along with the increase of q, and the cost is that the decoding complexity is increased.
The decoding algorithm of the existing multivariate LDPC code mainly comprisesThe algorithm comprises a BP decoding algorithm, a BP algorithm based on Fast Fourier Transform (FFT) and an EMS algorithm, wherein the complexity of the former two algorithms is high, and particularly the BP decoding algorithm. The BP decoding algorithm based on the graph model is the most basic decoding algorithm of the multi-element LDPC code. The message that the largest difference between the BP decoder of a multi-element LDPC code and the BP decoder of a binary LDPC code is passed between its nodes is q probability metrics or q-1 log-likelihood ratio metrics. Therefore, the computation complexity of each check node is exponential to the value of q, which results in a considerable amount of computation for decoding when the order q of the finite field is large. So, the BP decoder can only be applied in situations where q is not very large. The calculation complexity of the check node can be reduced to O (qlog) by adopting the BP algorithm based on FFT2q), although the complexity of the algorithm is greatly reduced, the algorithm uses exponential operation and multiplication operation of real numbers, which is not beneficial to hardware implementation.
The decoding complexity can be further reduced based on the log domain FFT-BP algorithm, the BP algorithm is simplified based on the EMS algorithm based on the log likelihood ratio, the complexity is reduced more, the space required to be stored is reduced a lot, the hardware implementation is very convenient, the application is more in the engineering practice, but in the performance aspect, certain loss is caused due to the simplification.
In order to solve the above problems, embodiments of the present application provide a decoding method, a decoder, and a storage medium for a multi-element LDPC code, which can improve an EMS algorithm, increase decoding gain, adapt to different front-end systems, and have good versatility and adjustable configurability.
The terms "system" and "network" are often used interchangeably in this application. The following embodiments of the present application may be implemented individually, or in combination with each other, and the embodiments of the present application are not limited specifically.
Hereinafter, a decoding method, a decoder, and a storage medium of a multi-element LDPC code, and technical effects thereof will be described.
The method provided by the embodiment is based on an EMS algorithm. In EMS Algorithm, a confidence vector of the transfer (as mentioned in the examples below)To the first confidence vector V2Cj→iAnd a second confidence vector C2Vi→j) Is reduced from q finite field elements to nmA finite field element (n)mQ), i.e. q is the first confidence vector delivered V2Cj→iAnd a second confidence vector C2Vi→jOf original length nmIs the first confidence vector V2C of the transferj→iAnd a second confidence vector C2Vi→jThe actual length of (c). That is, only n with the smallest value of the log-likelihood ratio (hereinafter, abbreviated as LLR value) is retained in the confidence vector (i.e., the confidence is the highest)mA finite field element.
The embodiment provides a decoding method of a multi-element LDPC code, which comprises the following steps:
setting the maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→iWherein the first confidence vector V2Cj→iIs a check matrix HmnEach variable node VNjTo check nodes CNiThe confidence vector of (2);
using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jWherein the second confidence vector C2Vi→jFor each check node CNiTo variable nodes VNjThe confidence vector of (2);
according to a check matrix HmnChecking the sequence of code words according to a first confidence vector V2Cj→iObtaining;
if the verification is passed, outputting a decoding result;
if the verification fails, a second confidence vector C2V is utilizedi→jUpdating the first confidence vector V2Cj→iAnd making the current iteration number k equal to k +1, and making the current iteration number k less than the maximum iteration number ImaxThen execution returns according to the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jUntil the current iteration number k is equal to the maximum iteration number ImaxTo date, wherein the first confidence vector V2Cj→iIs updated according to the linear adjustment and/or the nonlinear adjustment, i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n.
Specifically, referring to fig. 1, fig. 1 shows a schematic flow chart of a decoding method of a multi-element LDPC code provided in an embodiment, where the method provided in this embodiment is applicable to a decoder, and the method includes the following steps.
S110, setting the maximum iteration number ImaxAnd let the current iteration number k equal to 0.
The code word sequence c ═ c (c) of multi-element LDPC generated by coder0,c1,…,cn-1) After modulation, the transmission is processed to obtain a receiving sequence y (y) at a receiving end (e.g., a decoder)0,y1,…,yn-1) Wherein, yj=(yj,0,yj,1,…,yj,r-1) Is a code character number cjCorresponding channel reception symbol information, cj∈GF(q),q=2rJ is more than or equal to 0 and less than n. For a check matrix H of size mxnmn,HmnEach element h in (1)i,jAre all elements in GF (q). Check matrix HmnEach row in the system corresponds to a check node CNiEach column corresponding to a variable node VNj
Check matrix H using multivariate LDPC codemnThe received sequence y can be checked directly. Before checking, the maximum iteration number I needs to be setmaxAnd let the current iteration number k equal to 0. Maximum number of iterations ImaxThe value of (a) can be set according to actual needs, such as 50 times, 100 times and the like.
S120, initializing each variable node VNjTo check nodes CNiFirst confidence vector V2Cj→i
If hi,jNot equal to 0, the node CN is checkediAnd variable node VNjAre connected with each other and can transmit information with each other. By variable nodes VNjTo connected check nodes CNiIs denoted as V2Cj→iBy check nodes CNiTo connected variable nodes VNjIs denoted as C2Vi→jWherein i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n.
Specifically, a first confidence vector V2C is initializedj→iThe method of (3) may comprise: the decoder is based on the received symbol vector yjComputing a confidence vector L for a received sequencej(ii) a Using confidence vectors L according to variable node initialization rulesjInitializing a first confidence vector V2Cj→i
It will be appreciated that the first confidence vector V2Cj→iIs a node comprising variables VNjTo neighboring check nodes CNiIs a set of vectors.
S130, utilizing the first confidence coefficient vector V2Cj→iUpdating each check node CNiTo variable nodes VNjSecond confidence vector C2Vi→j
Specifically, the second confidence vector C2V is updatedi→jThe method of (3) may comprise: the decoder updates the rule according to the check node using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→j
For each check node CNiReceiving the first confidence vector V2C transmitted by all the variable nodes connected with the variable nodesj→iCalculating a second confidence vector C2Vi→j
Figure BDA0002546057080000051
S140, according to the check matrix HmnAnd checking the code word sequence.
Wherein the codeword sequence is based on the first confidence vector V2Cj→iAnd (4) obtaining the product.
Specifically, the method for checking the codeword sequence may include:
step 1: according to the first confidence vector V2Cj→iObtaining a sequence of codewords
Figure BDA0002546057080000052
Step 2: according to a check matrix HmnCalculating a checksum
Figure BDA0002546057080000053
And step 3: it is determined whether the checksum is 0.
And S150, if the check is passed, outputting a decoding result.
Referring to the description in step S140, if the checksum S is equal to 0, it indicates that the decoding is successful (i.e., the checksum passes), and the codeword sequence is decoded
Figure BDA0002546057080000054
Output as a correct decoding result; otherwise, the following step S160 is continuously executed.
S160, if the verification fails, utilizing a second confidence coefficient vector C2Vi→jUpdating the first confidence vector V2Cj→i
Wherein the first confidence vector V2C is updatedj→iThe method of (3) may comprise: the decoder updates the rule according to the variable node using the second confidence vector C2Vi→jUpdating the first confidence vector V2Cj→i
Illustratively, the first confidence vector V2C is updatedj→iThe method can be realized by the following three steps:
step 1: if the current iteration number k is not equal to 0, determining a third confidence coefficient vector according to a linear adjustment and/or nonlinear adjustment mode
Figure BDA0002546057080000056
Wherein the third confidence vector
Figure BDA0002546057080000055
Is the second confidence vector C2Vi→jQ-n ofmA finite field element, q being a first confidence vector of propagation V2Cj→iAnd a second confidence vector C2Vi→jOf original length nmIs the first confidence vector V2C of the transferj→iAnd a second confidence vector C2Vi→jThe actual length of (c).
Q-n as mentioned abovemOne finite field element is represented by a second confidence vector C2Vi→jDiscarding (also called clipping) q-nmA finite field element, i.e. the q-nmOne finite field element does not participate in the first confidence vector V2Cj→iThe update process of (1).
Step 2: according to the third confidence coefficient vector
Figure BDA0002546057080000057
Computing a first confidence vector V2Cj→i
Wherein, assume C2Vf→jIs a connected check node CNfDelivery to variable node VNjA set of confidence vectors of size nm(nmQ). Using VNjAll confidence vectors received C2Vf→j(f is belonged to M, f is not equal to i), and VN is calculatedjIs transmitted to CNiFirst confidence vector V2Cj→i
Figure BDA0002546057080000061
hi,jIs a check matrix HmnThe elements (A) and (B) in (B),
Figure BDA0002546057080000062
is hi,jIs inverse (i.e. the
Figure BDA0002546057080000063
),C2Vf→jFor checking node CNfDelivery to variable node VNjSet of confidence vectors of size nm
Figure BDA0002546057080000064
Is to use each confidence vector C2Vi→jAdding the values of the log-likelihood ratios of the same elements, LjIn order to receive the confidence vector for the sequence,
Figure BDA0002546057080000065
the elements in the confidence coefficient vector are arranged in ascending order and the top n is selectedmA finite field element, and the first nmThe elements of the finite field are different from each other, Rsj→iIs front nmA vector of finite field elements, Rj→iIs front nmAnd the value vector of the log-likelihood ratio corresponding to each finite field element.
And step 3: determining a first confidence vector V2Cj→iMinimum value LLR of middle log likelihood ratiominAnd the first confidence vector V2Cj→iSubtracting LLR from the value of the log-likelihood ratio of each elementmin
For step 1, the conventional method calculates the third confidence vector
Figure BDA0002546057080000066
The following formula is usually adopted:
Figure BDA0002546057080000067
offset is offset, and is greater than or equal to 0.
From the principle of LLR, the average amplitude of the LLR will tend to increase (towards higher SNR) or decrease (towards lower SNR) with the SNR, and then the addition of the fixed offset constitutes
Figure BDA0002546057080000068
The aggregate approach may bring performance loss (0.1-0.2dB unequal), so the fixed offset cannot give the same decoding performance throughout the whole operating snr interval, where the details have a significant impact on the performance of the minimum-sum algorithm. Therefore, the present application proposes a method for determining a third confidence vector according to a linear adjustment and/or a non-linear adjustment
Figure BDA0002546057080000069
The method can improve the EMS algorithm, improve the decoding gain and adapt to the EMS algorithmThe system is matched with different front-end systems, and has good universality and adjustable and configurable performance.
Specifically, referring to fig. 2, fig. 2 illustrates an embodiment of determining a third confidence vector according to a linear adjustment and/or a non-linear adjustment
Figure BDA00025460570800000610
A schematic flow diagram of a method comprising the following steps.
S210, determining a linear adjustment factorlinearAnd a nonlinear adjustment factornon-linear
S220, according to the linear adjustment factorlinearAdjusting the second confidence vector C2Vi→jAnd the maximum confidence vector in, and the factor according to non-linearitynon-linearAdjusting the offset to obtain an adjusted second confidence vector C2Vi→jThe maximum confidence coefficient vector and the adjusted offset in the process of the second confidence coefficient calculation are used for obtaining a third confidence coefficient vector
Figure BDA00025460570800000611
Wherein the third confidence vector
Figure BDA00025460570800000612
The following formula is used for calculation:
Figure BDA00025460570800000613
wherein, max (C2V)i→j) Is a second confidence vector C2Vi→jThe largest confidence vector in, Foffset(C2Vi→j) Is an offset.
For number of elements nmConfidence vector set of individuals
Figure BDA00025460570800000621
Extraction of
Figure BDA00025460570800000622
Two confidence vectors in a set
Figure BDA00025460570800000614
And
Figure BDA00025460570800000615
its superscript indicates that the element is at the second confidence level vector C2Vi→jIndex position in (2). To find the relative difference
Figure BDA00025460570800000616
Due to the fact that
Figure BDA00025460570800000623
The sets are sorted from small to large according to the confidence coefficient values, so
Figure BDA00025460570800000617
Is the minimum value, the relative difference is always greater than zero, and then the likelihood offset (positive value) is dynamically calculated by the natural logarithm | ln (·) |. Corresponding offset Foffset(C2Vi→j) The following formula is used for calculation:
Figure BDA00025460570800000618
wherein C2Vf→jIs a connected check node CNfDelivery to variable node VNjA set of confidence vectors of size nm(ii) a Optionally, as elements of a decrement
Figure BDA00025460570800000619
Using the last element
Figure BDA00025460570800000620
For the linear adjustment method: with reference to the normalization principle, a linear adjustment factor is introducedlinearParticipate in
Figure BDA0002546057080000071
Assignment processing of collections, i.e. to
Figure BDA0002546057080000072
The maximum value in the set is linearly amplified. By combining a nonlinear real-time adjustment method, the method can be obtained
Figure BDA0002546057080000073
In one embodiment, the linear adjustment factorlinearIs greater than or equal to 1; nonlinear adjustment factornon-linearIs greater than or equal to 0.
Linear adjustment factorlinearIs chosen in view of the implementation application, and takes the value of
Figure BDA0002546057080000074
Where N is a finite number of sets of non-zero positive integers. The specific value is related to a multi-element LDPC check matrix applied in practice and can be obtained through simulation; the processing process is conveniently realized by adopting a shift addition mode, so that compared with the traditional EMS algorithm, excessive complexity increase is not caused; due to the linear characteristic of the algorithm, the performance of the system is relatively stable and uniform in the whole working range, and meanwhile, the performance of an analog-to-digital converter (ADC) of a front-end system is not excessively required.
Nonlinear adjustment factornon-linearThe method is mainly used for controlling the enabling of the nonlinear part, and the typical value is {0,1 }. Nonlinear adjustment factornon-linearThe value of (a) may also be other non-zero positive real numbers, which are used to adjust the correction weight of the nonlinear part, and this application does not specifically limit this.
In one embodiment, the linear adjustment factor is used as the linear adjustment factorlinearValue of 1 and nonlinear adjustment factornon-linearWhen the value of (1) is 1, the linear adjustment is closed, and the nonlinear adjustment is opened;
when the non-linear adjustment factor isnon-linearWhen the value of (1) is 0, the non-linear adjustment is closed, and the linear adjustment is opened.
In addition, by adopting a nonlinear adjustment method, dynamic offset operation can be carried out in real time according to the received LLR, and performance change caused by using offset in different signal-to-noise ratio intervals is avoided. The calculation of the non-linear processing ln (-) can be done in the form of a look-up table.
According to the scheme provided by the application, no matter the linear adjustment method or the nonlinear adjustment method is adopted, good performance improvement is achieved, the decoding gain is improved by 0.1dB to 0.2dB, and the nonlinear adjustment method has better performance in a high signal-to-noise ratio range. Under some unstable transmission scenes, by means of flexible adjustable and configurable characteristics, various modes of linear adjustment, nonlinear adjustment and linear and nonlinear mixed adjustment can be realized.
Compared with the prior art, the performance of the traditional minimum expansion and decoding algorithm can be improved, and the decoder adopts the double configuration of linear and nonlinear processing, can also adapt to different front-end systems to deal with different ADC capabilities of different systems, and has good universality and adjustable configurable performance.
S170, enabling the current iteration number k to be k +1, and judging whether the current iteration number k is smaller than the maximum iteration number Imax
If the checksum s ≠ 0, it indicates a codeword sequence
Figure BDA0002546057080000075
Not correctly decoded information, the iterative decoding needs to be continued. At the moment, adding one to the current iteration times, and judging whether the current iteration times k are less than the maximum iteration times Imax
S180, if the current iteration number k is equal to the maximum iteration number ImaxThen decoding is terminated and decoding failure is declared.
The current iteration number k is equal to the maximum iteration number ImaxIf so, the iterative decoding can not be continued, the decoding is terminated and the decoding failure is declared.
S190, if the current iteration number k is smaller than the maximum iteration number ImaxThen, the process returns to step S130.
Illustratively, the decoding method of the multivariate LDPC code provided by the present application is described with reference to an LDPC code on GF (64) adopted in the beidou system.
In the Beidou system, the B-CNAV2 navigation message is coded by 64-system LDPC (96,48), each code character number of the B-CNAV2 navigation message is also composed of 6 bits, and the B-CNAV2 navigation message is defined by a primitive polynomial p (x) which is 1+ x6Finite field GF (2)6). The mapping of the multi-system symbols and the binary bits adopts a vector representation method, and the high order is in front. The information length is k-48 codeword symbols, i.e., 288 bits. The check matrix is a sparse matrix H of 48 × 9648,96The primitive polynomial is defined as p (x) 1+ x6Finite field GF (2)6) The first 48 × 48 part corresponds to information symbols, the second 48 × 48 part corresponds to check symbols, and the code rate is 1/2.
First, log-likelihood ratio (LLR) values used by a decoder are obtained from received symbols obtained by a receiver. Let the Noise mean of an Additive White Gaussian Noise (AWGN) channel be 0 and the variance be σ2. According to the received symbol vector y corresponding to each code character numberjComputing a confidence vector L for a received sequencej. All q finite field elements x ∈ GF (q) and the corresponding log-likelihood ratios LLR (x) form a confidence vector LjWherein L isjThe first element 0 ≦ l < q is composed of the first finite field symbol x and its LLR value. Confidence vector L for a received sequencejThe log-likelihood ratio of the mid-finite field symbol x is:
Figure BDA0002546057080000081
wherein r is log2(q),
Figure BDA0002546057080000082
Is the order probability P (y) in GF (q)j| x) the largest finite field element, i.e. directly on the received symbol yj=(yj,0,yj,1,...,yj,r-1) And carrying out hard decision bit by bit to obtain elements. Finite field element x and
Figure BDA0002546057080000083
the corresponding bit sequences are x ═ x (x) respectively0,x1,...,xr-1) And
Figure BDA0002546057080000084
confidence vector L of transmission in extended min-sum decoding algorithmjIs reduced from q finite field elements to nmA finite field element (n)mQ). I.e. only the n with the minimum LLR value (i.e. the highest confidence) is kept in the confidence vectormA finite field element. In the present embodiment, nm=16。
1. Setting the maximum number of iterations ImaxLet the current iteration number k be 0, 50.
2. From the received symbol vector yjComputing a confidence vector L for a received sequencej(ii) a Using confidence vectors L according to variable node initialization rulesjInitializing a first confidence vector V2Cj→i
3. Using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→j
4. According to a check matrix HmnChecking the sequence of code words according to a first confidence vector V2Cj→iAnd (4) obtaining the product.
5. And if the check is passed, outputting a decoding result.
6. If the verification fails, a second confidence vector C2V is utilizedi→jUpdating the first confidence vector V2Cj→i
7. Setting the current iteration number k to k +1, and judging whether the current iteration number k is less than the maximum iteration number Imax
8. If the current iteration number k is equal to the maximum iteration number ImaxThen decoding is terminated and decoding failure is declared.
9. If the current iteration number k is less than the maximum iteration number ImaxThen the step 3 is executed.
For 6 above, the first confidence vector V2C is updatedj→iThe step (b) may comprise:
suppose C2Vf→jIs a connected check node CNfDelivery to variable node VNjA set of confidence vectors of size nm(nmQ). Using VNjAll confidence vectors received C2Vf→j(f is belonged to M, f is not equal to i), and VN is calculatedjIs transmitted to CNiConfidence vector V2Cj→i
Figure BDA0002546057080000085
Wherein h isi,jIs a check matrix HmnThe elements (A) and (B) in (B),
Figure BDA0002546057080000086
is hi,jIs inverse (i.e. the
Figure BDA0002546057080000087
),C2Vf→jFor checking node CNfDelivery to variable node VNjSet of confidence vectors of size nm
Figure BDA0002546057080000088
Is to use each confidence vector C2Vi→jAdding the values of the log-likelihood ratios of the same elements, LjIn order to receive the confidence vector for the sequence,
Figure BDA0002546057080000089
the elements in the confidence coefficient vector are arranged in ascending order and the top n is selectedmA finite field element, and the first nmThe elements of the finite field are different from each other, Rsj→iIs front nmA vector of finite field elements, Rj→iIs front nmAnd the value vector of the log-likelihood ratio corresponding to each finite field element.
According to linear adjustment and/orDetermining a third confidence vector in a non-linearly adjusted manner
Figure BDA0002546057080000091
Figure BDA0002546057080000092
Wherein, max (C2V)i→j) Is a confidence vector C2Vi→jThe largest confidence vector in, Foffset(C2Vi→j) In order to be offset in the amount of the offset,
Figure BDA0002546057080000093
for the linear adjustment mode: factorlinear=1.25;factornon-linear=0。
I.e. the third confidence vector
Figure BDA0002546057080000094
For the non-linear adjustment mode: factorlinear=1;factornon-linear=1;k=15。
I.e. the third confidence vector
Figure BDA0002546057080000095
At each confidence vector V2Cj→iAfter the calculation is completed, the confidence vector V2C is determinedj→iMinimum value LLR of middle log likelihood ratiominAnd the confidence vector V2Cj→iSubtracting LLR from the value of the log-likelihood ratio of each elementmin
After the decoding process is performed by the above method, the simulation result is shown in fig. 3. Fig. 3 is a diagram illustrating a decoding simulation result according to an embodiment. It can be seen that the improved gain of more than 0.1dB is obtained by either the linear adjustment method or the nonlinear adjustment method, and meanwhile, the performance curve of the nonlinear mode in the high signal-to-noise ratio interval has better slope performance, and the increased complexity is within an acceptable range.
The embodiment of the application provides a decoding method of a multi-element LDPC code, which comprises the following steps: setting the maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→iWherein the first confidence vector V2Cj→iIs a check matrix HmnEach variable node VNjTo check nodes CNiThe confidence vector of (2); using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jWherein the second confidence vector C2Vi→jFor each check node CNiTo variable nodes VNjThe confidence vector of (2); according to a check matrix HmnChecking the sequence of code words according to a first confidence vector V2Cj→iObtaining; if the verification is passed, outputting a decoding result; if the verification fails, a second confidence vector C2V is utilizedi→jUpdating the first confidence vector V2Cj→iAnd making the current iteration number k equal to k +1, and making the current iteration number k less than the maximum iteration number ImaxThen execution returns according to the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jUntil the current iteration number k is equal to the maximum iteration number ImaxTo date, wherein the first confidence vector V2Cj→iIs updated according to the linear adjustment and/or the nonlinear adjustment, i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n. The method and the device can improve an EMS algorithm, improve decoding gain, adapt to different front-end systems, and have good universality and adjustable configurable performance.
Fig. 4 is a schematic structural diagram of a decoder according to an embodiment, and as shown in fig. 4, the decoder includes: the device comprises an initialization module 10, an updating module 11, a checking module 12, a result output module 13 and an iteration processing module 14.
An initialization module 10 arranged to set a maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→iWherein the first confidence vector V2Cj→iIs a check matrix HmnEach variable of (1)Node VNjTo check nodes CNiThe confidence vector of (2);
an update module 11 arranged to use the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jWherein the second confidence vector C2Vi→jFor each check node CNiTo variable nodes VNjThe confidence vector of (2);
a check module 12 arranged to check the matrix HmnChecking the sequence of code words according to a first confidence vector V2Cj→iObtaining;
a result output module 13 configured to output a decoding result if the verification passes;
the update module 11 is further configured to utilize a second confidence vector C2V if the verification failsi→jUpdating the first confidence vector V2Cj→iWherein the first confidence vector V2Cj→iIs updated according to a linear adjustment and/or a nonlinear adjustment mode, i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n;
the iteration processing module 14 is configured to, if the check fails, make the current iteration number k equal to k +1, and make the current iteration number k less than the maximum iteration number ImaxReturning to having the update module 10 execute a vector based on the first confidence level V2Cj→iUpdate the second confidence vector C2Vi→jUntil the current iteration number k is equal to the maximum iteration number ImaxUntil now.
The decoder provided in this embodiment is a decoding method for implementing the multi-element LDPC code of the above embodiments, and the implementation principle and technical effect of the decoder provided in this embodiment are similar, and are not described herein again.
In an embodiment, the updating module 11 is configured to determine the third confidence vector according to a linear adjustment and/or a non-linear adjustment manner if the current iteration number k ≠ 0
Figure BDA0002546057080000101
Wherein the third confidence vector
Figure BDA0002546057080000102
Is the second confidence vector C2Vi→jQ-n ofmA finite field element, q being a first confidence vector of propagation V2Cj→iAnd a second confidence vector C2Vi→jOf original length nmIs the first confidence vector V2C of the transferj→iAnd a second confidence vector C2Vi→jThe actual length of (d); according to the third confidence coefficient vector
Figure BDA0002546057080000107
Computing a first confidence vector V2Cj→i(ii) a Determining a first confidence vector V2Cj→iMinimum value LLR of middle log likelihood ratiominAnd the first confidence vector V2Cj→iSubtracting LLR from the value of the log-likelihood ratio of each elementmin
In an embodiment, the update module 11 is configured to determine a linear adjustment factorlinearAnd a nonlinear adjustment factornon-linear(ii) a According to the linear adjustment factorlinearAdjusting the second confidence vector C2Vi→jAnd the maximum confidence vector in, and the factor according to non-linearitynon-linearAdjusting the offset to obtain an adjusted second confidence vector C2Vi→jThe maximum confidence coefficient vector and the adjusted offset in the process of the second confidence coefficient calculation are used for obtaining a third confidence coefficient vector
Figure BDA0002546057080000103
In one embodiment, the third confidence vector
Figure BDA0002546057080000104
Equal to linear adjustment factorlinearAnd a second confidence vector C2Vi→jThe product of the largest confidence vector in (1) and the nonlinear adjustment factornon-linearAnd the sum of the products of the offsets.
In one embodiment, the offset Foffset(C2Vi→j) The following formula is used for calculation:
Figure BDA0002546057080000105
wherein the upper landmark indicates that the element is at the second confidence vector C2Vi→jIndex position in (2).
In one embodiment, the linear adjustment factorlinearIs greater than or equal to 1; nonlinear adjustment factornon-linearIs greater than or equal to 0.
In one embodiment, the linear adjustment factorlinearIs taken as
Figure BDA0002546057080000106
Nonlinear adjustment factornon-linearIs {0,1 }; where N is a finite number of sets of non-zero positive integers.
In one embodiment, the linear adjustment factor is used as the linear adjustment factorlinearValue of 1 and nonlinear adjustment factornon-linearWhen the value of (1) is 1, the linear adjustment is closed, and the nonlinear adjustment is opened;
when the non-linear adjustment factor isnon-linearWhen the value of (1) is 0, the nonlinear adjustment is turned off, and the linear adjustment is turned on.
An embodiment of the present application further provides a decoder, including: a processor for implementing a method as provided in any of the embodiments of the present application when executing a computer program. Fig. 5 is a schematic structural diagram of another decoder according to an embodiment, as shown in fig. 5, the decoder includes a processor 60, a memory 61, and a communication interface 62; the number of processors 60 in the decoder may be one or more, and one processor 60 is taken as an example in fig. 5; the processor 60, the memory 61 and the communication interface 62 in the decoder may be connected by a bus or other means, and fig. 5 illustrates the connection by the bus as an example. A bus represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures.
The memory 61, as a computer-readable storage medium, may be configured to store software programs, computer-executable programs, and modules, such as program instructions/modules corresponding to the methods in the embodiments of the present application. The processor 60 executes at least one functional application of the decoder and data processing by executing the software program, instructions and modules stored in the memory 61, so as to implement the decoding method of the multi-element LDPC code.
The memory 61 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the decoder, and the like. Further, the memory 61 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some examples, the memory 61 may include memory located remotely from the processor 60, which may be connected to the transcoder through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The communication interface 62 may be configured for the reception and transmission of data.
Embodiments of the present application further provide a computer-readable storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the method provided in any of the embodiments of the present application.
The computer storage media of the embodiments of the present application may take any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. Computer-readable storage media include (a non-exhaustive list): an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an erasable programmable Read-Only Memory (EPROM), a flash Memory, an optical fiber, a portable Compact Disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, Radio Frequency (RF), etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, Ruby, Go, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of Network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
It will be clear to a person skilled in the art that the term user terminal covers any suitable type of wireless user equipment, such as a mobile phone, a portable data processing device, a portable web browser or a car mounted mobile station.
In general, the various embodiments of the application may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the application is not limited thereto.
Embodiments of the application may be implemented by a data processor of a mobile device executing computer program instructions, for example in a processor entity, or by hardware, or by a combination of software and hardware. The computer program instructions may be assembly instructions, Instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages.
Any logic flow block diagrams in the figures of this application may represent program steps, or may represent interconnected logic circuits, modules, and functions, or may represent a combination of program steps and logic circuits, modules, and functions. The computer program may be stored on a memory. The memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as, but not limited to, Read Only Memory (ROM), Random Access Memory (RAM), optical storage devices and systems (digital versatile disks, DVDs, or CD discs), etc. The computer readable medium may include a non-transitory storage medium. The data processor may be of any type suitable to the local technical environment, such as but not limited to general purpose computers, special purpose computers, microprocessors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Programmable logic devices (FGPAs), and processors based on a multi-core processor architecture.
The preferred embodiments of the present application have been described above with reference to the accompanying drawings, and are not intended to limit the scope of the claims of the application accordingly. Any modifications, equivalents and improvements which may occur to those skilled in the art without departing from the scope and spirit of the present application are intended to be within the scope of the claims of the present application.

Claims (10)

1. A decoding method of a multi-element LDPC code is characterized by comprising the following steps:
setting the maximum number of iterations ImaxAnd with the current iteration number k equal to 0, a first confidence vector V2C is initializedj→iWherein the first confidence vector V2Cj→iIs a check matrix HmnEach variable node VNjTo check nodes CNiThe confidence vector of (2);
using the first confidence vector V2Cj→iUpdate the second confidence vector C2Vi→jWherein the second confidence vector C2Vi→jFor each check node CNiTo variable nodes VNjThe confidence vector of (2);
according to the check matrix HmnChecking a sequence of codewords according to the first confidence vector V2Cj→iObtaining;
if the verification is passed, outputting a decoding result;
if the verification fails, the second confidence vector C2V is utilizedi→jUpdating the first confidence vector V2Cj→iAnd making the current iteration number k equal to k +1, and making the current iteration number k less than the maximum iteration number ImaxThen execution returns according to the first confidence vector V2Cj→iUpdating the second confidence vector C2Vi→jUntil the current stackThe generation number k is equal to the maximum iteration number ImaxTo date, wherein the first confidence vector V2Cj→iIs updated according to the linear adjustment and/or the nonlinear adjustment, i is more than or equal to 0 and less than m, and j is more than or equal to 0 and less than n.
2. The method of claim 1, wherein said updating said first confidence vector V2Cj→iThe method comprises the following steps:
if the current iteration number k is not equal to 0, determining a third confidence coefficient vector according to a linear adjustment and/or nonlinear adjustment mode
Figure FDA0002546057070000011
Wherein the third confidence vector
Figure FDA0002546057070000012
Is the second confidence vector C2Vi→jQ-n ofmA finite field element, q being a first confidence vector of propagation V2Cj→iAnd a second confidence vector C2Vi→jOf original length nmIs the first confidence vector V2C of the transferj→iAnd a second confidence vector C2Vi→jThe actual length of (d);
according to the third confidence coefficient vector
Figure FDA0002546057070000013
Computing the first confidence vector V2Cj→i
Determining the first confidence vector V2Cj→iMinimum value LLR of middle log likelihood ratiominAnd the first confidence vector V2Cj→iSubtracting LLR from the value of the log-likelihood ratio of each elementmin
3. The method according to claim 2, wherein the third confidence vector is determined according to a linear adjustment and/or a non-linear adjustment
Figure FDA0002546057070000014
The method comprises the following steps:
determining a Linear adjustment factorlinearAnd a nonlinear adjustment factornon-linear
According to the linear adjustment factorlinearAdjusting the second confidence vector C2Vi→jAnd according to the non-linear adjustment factor, andnon-linearadjusting the offset to obtain the adjusted second confidence vector C2Vi→jThe third confidence coefficient vector is obtained by the maximum confidence coefficient vector in the confidence coefficient vectors and the adjusted offset
Figure FDA0002546057070000015
4. The method of claim 3, wherein the third confidence vector
Figure FDA0002546057070000016
Is equal to the linear adjustment factorlinearWith the second confidence vector C2Vi→jAnd the product of the largest confidence vector in and the nonlinear adjustment factornon-linearAnd the sum of products of the offsets.
5. Method according to claim 4, characterized in that said offset Foffset(C2Vi→j) The following formula is used for calculation:
Figure FDA0002546057070000017
wherein the upper landmark represents an element at the second confidence vector C2Vi→jIndex position in (2).
6. Method according to claim 3 or 4, characterized in that the linear adjustment factorfactorlinearIs greater than or equal to 1; the nonlinear adjustment factornon-linearIs greater than or equal to 0.
7. The method of claim 6, wherein the linear adjustment factor islinearIs taken as
Figure FDA0002546057070000021
The nonlinear adjustment factornon-linearIs {0,1 }; where N is a finite number of sets of non-zero positive integers.
8. The method of claim 6, wherein the linear adjustment factor is set when the linear adjustment factor is setlinearIs 1 and the nonlinear adjustment factor isnon-linearWhen the value of (1) is 1, the linear adjustment is closed, and the nonlinear adjustment is opened;
when the nonlinear adjustment factor isnon-linearWhen the value of (1) is 0, the nonlinear adjustment is turned off, and the linear adjustment is turned on.
9. A decoder, comprising: a processor for implementing a method of decoding a multivariate LDPC code as claimed in any one of claims 1-8 when executing a computer program.
10. A computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements a method for decoding a multi-element LDPC code according to any one of claims 1 to 8.
CN202010561012.7A 2020-06-18 2020-06-18 Decoding method, decoder and storage medium of multi-element LDPC code Pending CN113824450A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010561012.7A CN113824450A (en) 2020-06-18 2020-06-18 Decoding method, decoder and storage medium of multi-element LDPC code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010561012.7A CN113824450A (en) 2020-06-18 2020-06-18 Decoding method, decoder and storage medium of multi-element LDPC code

Publications (1)

Publication Number Publication Date
CN113824450A true CN113824450A (en) 2021-12-21

Family

ID=78911859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010561012.7A Pending CN113824450A (en) 2020-06-18 2020-06-18 Decoding method, decoder and storage medium of multi-element LDPC code

Country Status (1)

Country Link
CN (1) CN113824450A (en)

Similar Documents

Publication Publication Date Title
Vangala et al. A comparative study of polar code constructions for the AWGN channel
US7401283B2 (en) Amplifying magnitude metric of received signals during iterative decoding of LDPC (Low Density Parity Check) code and LDPC coded modulation
US7395487B2 (en) Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder
KR101021465B1 (en) Apparatus and method for receiving signal in a communication system using a low density parity check code
US8209579B2 (en) Generalized multi-threshold decoder for low-density parity check codes
US7409628B2 (en) Efficient design to implement LDPC (Low Density Parity Check) decoder
US8683303B2 (en) Operational parameter adaptable LDPC (low density parity check) decoder
US7587659B2 (en) Efficient front end memory arrangement to support parallel bit node and check node processing in LDPC (Low Density Parity Check) decoders
US9806743B2 (en) System and method of belief propagation decoding
US7350130B2 (en) Decoding LDPC (low density parity check) code with new operators based on min* operator
US10498363B2 (en) Low density parity check decoder using binary logarithm and decoding method thereof
KR100804793B1 (en) Method for updating Check Node in Low Density Parity Check Decoder
US8880973B1 (en) Detector-decoder interface for GF(q) iterative decoding
KR20080053346A (en) Method and apparatus for a low-density parity-check decoder
US10560120B2 (en) Elementary check node processing for syndrome computation for non-binary LDPC codes decoding
US9337868B2 (en) Iterative decoding for cascaded LDPC and TCM coding
CN102460977A (en) Iterative decoding of ldpc codes with iteration scheduling
CN101707485A (en) LDPC decoding method combining bit flipping (BF) and majority logic (MLG)
US7383485B2 (en) Fast min*- or max*-circuit in LDPC (low density parity check) decoder
CN110417512B (en) Joint iterative decoding method for CPM communication system
CN110730008A (en) RS code belief propagation decoding method based on deep learning
US7447985B2 (en) Efficient design to implement min**/min**- or max**/max**- functions in LDPC (low density parity check) decoders
KR100666399B1 (en) Receiver and signal processing method thereof
CN101106383A (en) A low density checksum decoding method
CN113824450A (en) Decoding method, decoder and storage medium of multi-element LDPC code

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