CN114337913A - Decoding method, device and decoder - Google Patents

Decoding method, device and decoder Download PDF

Info

Publication number
CN114337913A
CN114337913A CN202111434206.1A CN202111434206A CN114337913A CN 114337913 A CN114337913 A CN 114337913A CN 202111434206 A CN202111434206 A CN 202111434206A CN 114337913 A CN114337913 A CN 114337913A
Authority
CN
China
Prior art keywords
decoding
optimal
iteration number
sequences
maximum iteration
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
CN202111434206.1A
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 Sylincom Technology Co ltd
Original Assignee
Beijing Sylincom 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 Beijing Sylincom Technology Co ltd filed Critical Beijing Sylincom Technology Co ltd
Priority to CN202111434206.1A priority Critical patent/CN114337913A/en
Publication of CN114337913A publication Critical patent/CN114337913A/en
Pending legal-status Critical Current

Links

Images

Abstract

The application provides a decoding method, a decoding device and a decoder, wherein the method comprises the following steps: acquiring the maximum iteration times and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors; performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is smaller than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number; determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as the optimal parameter combination; and decoding according to the optimal parameter combination and the maximum iteration times. The method solves the problem of high block error rate of the decoding method in the prior art.

Description

Decoding method, device and decoder
Technical Field
The present application relates to the field of wireless communication, and in particular, to a decoding method, apparatus, computer-readable storage medium, processor, and decoder.
Background
With the development of wireless communication, the demands of people on high capacity, low delay, high reliability, high speed, high connection number and high-energy-efficiency communication are remarkably increased, and the application scenes not only have wide-area coverage, but also dense hotspots, communication among machines, internet of vehicles, large-scale outdoor gatherings, subways and the like. These applications can be roughly categorized into three major scenarios: enhanced mobile broadband (eMBB), low latency and high reliability (URLLC), and massive Internet of things (mMTC). The channel coding is the most basic technology of the physical layer, and plays a direct and indirect role in various performance indexes of the 5G system, so the 5G system puts high requirements on the channel coding. According to the reliability requirement of the system, for the eMBB, the channel coding needs to have no error floor (error floor) when the BLER is 10-4, and for the URLLC, the channel coding needs to have no error floor when the BLER is 10-5.
LDPC was first proposed in 1963 by Robert Gallager in his doctor's paper. In 2005, quasi-cyclic LDPC codes, i.e., QC-LDPC codes, also called structured LDPC codes, based on cyclic shift matrices of unit arrays were first applied in WiMAX standards, and then, QC LDPC schemes similar to WiMAX LDPC structures were adopted by ieee802.11n and ieee802.11ad. In order to improve the coding efficiency of the 5G NR channel and adapt to the transmission requirements of 5G with large data volume, high reliability and low time delay, the LDPC code is finally adopted by the 3GPP standard in 2016 and 10 months, and becomes a data channel coding scheme of the 5G NR standard.
LDPC codes (Low Density Parity Check codes) are a class of sparse Check matrix-based linear block codes proposed by Gallager in 1962, and are generally described by a Check matrix H. The channel coding method has the advantages of excellent threshold performance, high throughput capacity and low complexity of a decoding algorithm, and is a research hotspot in the field of channel coding in recent years. At present, LDPC codes have been applied to a plurality of transmission standards in the communication and broadcast fields, such as wireless local area network standards IEEE802.16e and IEEE802.11 in the communication field; DVB-S2/T2/C2/NGH, DTMB/DTMBA and ATSC3.0 standards in the broadcast field. In the aspect of research of LDPC decoding algorithm, the hard decision decoding algorithm and the soft decision decoding algorithm are the earliest decoding algorithm. The hard decision decoding algorithm such as BF algorithm decoding is simple to realize but has poor performance, and the soft decision decoding algorithm such as BP algorithm decoding is difficult to realize but has good performance. With respect to the above two algorithms, researchers have proposed many improved algorithms such as log domain (LLR) BP algorithm, Min-Sum (Min-Sum) algorithm, Normalized Min-Sum (Normalized Min-Sum) algorithm, and Offset Min-Sum (Offset Min-Sum) algorithm. Compared with the BP algorithm, the LLR BP algorithm greatly reduces the complexity under the condition of lossless performance, but still needs to consume a large amount of resources when the hardware is realized; the Min-Sum algorithm further reduces the computational complexity and hardware resource consumption but reduces the performance compared with the LLR-BP algorithm.
For the LDPC decoding Algorithm, while the LDPC code is proposed, a Belief Propagation (BP) iterative decoding Algorithm is also proposed accordingly, i.e., Sum-Product Algorithm (SPA). Although the sum-product algorithm has good performance, the tanh operation complexity of the row operation unit involved in the sum-product algorithm is high, and the storage requirement of the operation result is high. In order to reduce the complexity of the Sum-product Algorithm while solving the problem of poor robustness inherent in the Algorithm, a Min-Sum Algorithm (MSA) is proposed. The min-sum algorithm replaces the tanh function adopted in the sum-product algorithm with the min function, reduces the complexity of operation and storage, greatly improves the robustness, but the performance of the min-sum algorithm is obviously deteriorated under an AWGN channel, and the row operation result needs to be corrected. The Normalized Min-Sum algorithm and the Offset Min-Sum algorithm are corrected relative to the Min-Sum algorithm, so that the decoding performance is improved, and the decoding complexity is equivalent. The Normalized Min-Sum algorithm is a mode of scaling the information of the check nodes, is insensitive to amplitude, and is designed by adopting the Normalized Min-Sum algorithm and the Offset Min-Sum algorithm in the realization of a decoder. However, in the 5G LDPC, a large amount of simulation shows that the performance is advantageous when the code rate is high, and the performance is not as good as that of the Offset Min-Sum algorithm when the code rate is low; the Offset Min-Sum algorithm has better performance at low code rate, but is sensitive to amplitude, so that the design of the Offset value needs to be largely simulated and finely designed.
The above information disclosed in this background section is only for enhancement of understanding of the background of the technology described herein and, therefore, certain information may be included in the background that does not form the prior art that is already known in this country to a person of ordinary skill in the art.
Disclosure of Invention
The present application mainly aims to provide a decoding method, an apparatus, a computer-readable storage medium, a processor, and a decoder, so as to solve the problem of a high block error rate of the decoding method in the prior art.
According to an aspect of the embodiments of the present invention, there is provided a decoding method, including: acquiring a maximum iteration number and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors; performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is smaller than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number; determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and decoding according to the optimal parameter combination and the maximum iteration number.
Optionally, performing simulation decoding on the received signal according to each of the parameter combinations and the maximum iteration number to obtain a plurality of decoding sequences, including: calculating a log-likelihood ratio of the received signal; after at least one iteration is updated, first transmission information is calculated, wherein the first transmission information is information transmitted from the check node to the variable node in the kth iteration, and k is a positive integer and is smaller than the maximum iteration number; calculating channel information of the kth iteration according to the log-likelihood ratio and the first transmission information to obtain at least one piece of channel information; determining the optimal iteration times according to at least one piece of channel information; and the check node and the variable node iteratively update the optimal iteration times and output the decoding sequence.
Optionally, determining the optimal number of iterations according to at least one piece of the channel information includes: determining k as the optimal iteration number under the condition that the channel information of the kth iteration is greater than or equal to 0; and determining the maximum iteration number as the optimal iteration number under the condition that all the channel information is less than 0.
Optionally, performing simulation decoding on the received signal according to each of the parameter combinations and the maximum iteration number to obtain a plurality of decoding sequences, further comprising: and after at least one iteration is updated, second transfer information is calculated, and the second transfer information is information transferred from the variable node to the check node in the k iteration.
Optionally, the calculation formula of the channel information, the first transfer information, and the second transfer information is a flooding calculation formula of iterative update or a hierarchical iterative update calculation formula.
Optionally, before performing simulation decoding on the coding sequence according to each of the parameter combinations and the maximum iteration number to obtain a plurality of decoded sequences, the method further includes: performing LDPC coding on the data block to obtain a coding sequence; modulating the coding sequence to obtain a modulated sequence; and receiving the signal of the modulation sequence passing through an additive white Gaussian noise channel to obtain the received signal.
According to another aspect of the embodiments of the present invention, there is also provided a decoding apparatus, including: the device comprises an acquisition unit, a calculation unit and a processing unit, wherein the acquisition unit is used for acquiring the maximum iteration times and a plurality of parameter combinations, and the parameter combinations comprise correction factors and offset factors; the simulation unit is used for performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is smaller than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number; a determining unit, configured to determine the parameter combination corresponding to the decoding sequence with the smallest block error rate as an optimal parameter combination; and the processing unit is used for decoding according to the optimal parameter combination and the maximum iteration times.
According to still another aspect of embodiments of the present invention, there is also provided a computer-readable storage medium including a stored program, wherein the program executes any one of the methods.
According to another aspect of the embodiments of the present invention, there is also provided a processor, configured to execute a program, where the program executes any one of the methods.
According to a further aspect of the embodiments of the present invention, there is also provided a decoder, including a decoding device, configured to execute any one of the methods.
In the embodiment of the present invention, in the decoding method, first, a maximum iteration number and a plurality of parameter combinations are obtained, where the parameter combinations include a correction factor and an offset factor; then, performing simulation decoding on the received signal according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating an optimal iteration number for a check node and a variable node, the optimal iteration number is less than the maximum iteration number, and the product of the code word sequence output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number; then, determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and finally, decoding according to the optimal parameter combination and the maximum iteration times. The method adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this application, illustrate embodiments of the application and, together with the description, serve to explain the application and are not intended to limit the application. In the drawings:
FIG. 1 shows a flow diagram of a decoding method according to an embodiment of the present application;
FIG. 2 shows a schematic diagram of a decoding apparatus according to an embodiment of the present application;
FIG. 3 shows a schematic diagram of a decoder according to an embodiment of the present application;
fig. 4 shows a plot of the block error rate BLER versus the signal-to-noise ratio SNR for a combination of three parameters according to an embodiment of the present application.
Detailed Description
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
In order to make the technical solutions better understood by those skilled in the art, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only partial embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of this application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It should be understood that the data so used may be interchanged under appropriate circumstances such that embodiments of the application described herein may be used. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
As mentioned in the background, the block error rate of the decoding method in the prior art is high, and in order to solve the above problems, in an exemplary embodiment of the present application, a decoding method, an apparatus, a computer-readable storage medium, a processor, and a decoder are provided.
According to an embodiment of the present application, there is provided a decoding method.
Fig. 1 is a flowchart of a decoding method according to an embodiment of the present application. As shown in fig. 1, the method comprises the steps of:
step S101, acquiring maximum iteration times and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors;
step S102, performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is less than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number;
step S103, determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination;
and step S104, decoding according to the optimal parameter combination and the maximum iteration times.
In the decoding method, firstly, the maximum iteration times and a plurality of parameter combinations are obtained, wherein the parameter combinations comprise correction factors and offset factors; then, performing simulation decoding on the received signal according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating an optimal iteration number for a check node and a variable node, the optimal iteration number is less than the maximum iteration number, and the product of the code word sequence output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number; then, determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and finally, decoding according to the optimal parameter combination and the maximum iteration times. The method adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer-executable instructions and that, although a logical order is illustrated in the flowcharts, in some cases, the steps illustrated or described may be performed in an order different than presented herein.
It should be further noted that, the values of the correction factor α are shown in table 1, the values of the offset factor β are shown in table 2, and the granularity of the parameter may be determined according to a balance between performance and implementation complexity.
TABLE 1
Figure BDA0003381034860000051
Figure BDA0003381034860000061
TABLE 2
Figure BDA0003381034860000062
In an embodiment of the present application, before performing simulation decoding on the coding sequence according to each of the parameter combinations and the maximum iteration number to obtain a plurality of decoded sequences, the method further includes: performing LDPC coding on the data block to obtain a coding sequence; modulating the coding sequence to obtain a modulated sequence; and receiving the signal of the modulation sequence passing through an additive white Gaussian noise channel to obtain the received signal. Specifically, a binary sequence with a code block length K × m is randomly generated, a coded code word sequence c is generated through operations such as code block segmentation, LDPC coding, rate matching, and the like, the length of c is N × m, a sequence subjected to BPSK modulation (x ═ 1-2c) is x, and an information sequence y subjected to an additive white gaussian noise channel is x + N. Wherein n is a noise sequence with variance of 2 and mean of 0, and for an additive white Gaussian noise channel, the obedience of the noise sequence is 0 and the variance is sigma2If the information after BPSK modulation and additive white gaussian noise channel is represented as: y is (1-2x) + n.
In an embodiment of the present application, performing simulation decoding on the received signal according to each of the above parameter combinations and the maximum iteration number to obtain a plurality of decoding sequences, includes: calculating a log-likelihood ratio of the received signal; after at least one iteration is updated, first transmission information is calculated, wherein the first transmission information is information transmitted from the check node to the variable node in the kth iteration, and k is a positive integer and is smaller than the maximum iteration number; calculating channel information of the kth iteration according to the log-likelihood ratio and the first transmission information to obtain at least one piece of channel information; determining the optimal iteration number according to at least one piece of channel information; and the check node and the variable node iteratively update the optimal iteration times and output the decoding sequence. In particular, therefore, the probability density function of a channel is
Figure BDA0003381034860000071
So that the log-likelihood ratio of the received signal can be calculated as
Figure BDA0003381034860000072
Of course, if QPSK, 16QAM, 64QAM, 256QAM, or other modulation schemes are adopted, the LLR value can be obtained by the soft demodulation algorithm, and if a flooding iterative update calculation scheme is adopted during check node update, the first transfer information is obtained
Figure BDA0003381034860000073
Figure BDA0003381034860000074
If a calculation mode based on layered iterative update is adopted, the information is transmitted firstly
Figure BDA0003381034860000075
Figure BDA0003381034860000076
Wherein the content of the first and second substances,
Figure BDA0003381034860000077
transmitting information from the check node j to the variable node i for the first iteration, and if a flooding iterative updating calculation mode is adopted during variable node updating, then
Figure BDA0003381034860000078
If a calculation mode of layered iterative update is adopted, then
Figure BDA0003381034860000079
Figure BDA00033810348600000710
Determining the optimal iteration times for the channel information of the first iteration according to at least one piece of the channel information; and the check node and the variable node iteratively update the optimal iteration times and output the decoding sequence.
In an embodiment of the present application, determining the optimal number of iterations according to at least one piece of the channel information includes: determining k as the optimal iteration number when the channel information of the kth iteration is greater than or equal to 0; in all of the above-mentioned lettersAnd under the condition that the channel information is less than 0, determining the maximum iteration times as the optimal iteration times. In particular, the decoded sequence obtained at each iteration
Figure BDA00033810348600000711
Examination of
Figure BDA00033810348600000712
If yes, H is a check matrix, and if yes or the maximum iteration number is reached, a decoding sequence is output
Figure BDA00033810348600000713
Otherwise, the iteration is continued, namely the channel information is obtained
Figure BDA00033810348600000714
And determining the optimal iteration number.
In an embodiment of the present application, performing simulation decoding on the received signal according to each of the above parameter combinations and the maximum iteration number to obtain a plurality of decoding sequences, further includes: and after at least one iteration is updated, second transfer information is calculated, wherein the second transfer information is information transferred from the variable node to the check node in the k iteration. Specifically, if the iterative update calculation mode of flooding is adopted, the second transfer information
Figure BDA00033810348600000715
The information passed from variable node i to check node j for the ith iteration is updated for the variable nodes.
In an embodiment of the application, the calculation formula of the channel information, the first transfer information, and the second transfer information is a flooding calculation formula of iterative update or a hierarchical iterative update calculation formula. Specifically, in practice, a calculation formula of hierarchical iterative update is generally adopted, but a calculation formula of flooding iterative update is also applicable, so that the usability of the decoding method is improved.
The embodiment of the present application further provides a decoding device, and it should be noted that the decoding device of the embodiment of the present application may be used to execute the decoding method provided in the embodiment of the present application. The following describes a decoding apparatus provided in an embodiment of the present application.
FIG. 2 is a diagram of a decoding apparatus according to an embodiment of the present application. As shown in fig. 2, the apparatus includes:
an obtaining unit 10, configured to obtain a maximum iteration number and a plurality of parameter combinations, where the parameter combinations include a correction factor and an offset factor;
a simulation unit 20, configured to perform simulation decoding on a received signal according to each parameter combination and the maximum iteration number to obtain multiple decoding sequences, where the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are codeword sequences output by iteratively updating an optimal iteration number for a check node and a variable node, the optimal iteration number is smaller than the maximum iteration number, a product of the codeword sequence output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number;
a determining unit 30, configured to determine the parameter combination corresponding to the decoding sequence with the smallest block error rate as an optimal parameter combination;
and the processing unit 40 is configured to perform decoding according to the optimal parameter combination and the maximum iteration number.
In the decoding device, an obtaining unit obtains a maximum iteration number and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors; the simulation unit carries out simulation decoding on the received signals according to the parameter combinations and the maximum iteration times to obtain a plurality of decoding sequences, the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration times through check nodes and variable nodes, the optimal iteration times are smaller than the maximum iteration times, the product of the code word sequences output by the optimal iteration times and a check matrix is equal to 0, or the optimal iteration times are equal to the maximum iteration times; a determining unit determines the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and the processing unit decodes according to the optimal parameter combination and the maximum iteration number. The device adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
In an embodiment of the present application, the apparatus further includes an encoding unit, where the encoding unit includes a first processing module, a second processing module, and a receiving module, where the first processing module is configured to perform simulation decoding on an encoding sequence according to each of the parameter combinations and the maximum iteration count, and perform LDPC encoding on a data block to obtain the encoding sequence before obtaining a plurality of decoding sequences; the second processing module is used for modulating the coding sequence to obtain a modulation sequence; the receiving module is used for receiving the signal of the modulation sequence passing through an additive white Gaussian noise channel to obtain the received signal. Specifically, a binary sequence with a code block length K × m is randomly generated, a coded code word sequence c is generated through operations such as code block segmentation, LDPC coding, rate matching, and the like, the length of c is N × m, a sequence subjected to BPSK modulation (x ═ 1-2c) is x, and an information sequence y subjected to an additive white gaussian noise channel is x + N. Wherein n is a noise sequence with variance of 2 and mean of 0, and for an additive white Gaussian noise channel, the obedience of the noise sequence is 0 and the variance is sigma2If the information after BPSK modulation and additive white gaussian noise channel is represented as: y is (1-2x) + n.
In an embodiment of the present application, the simulation unit includes a first calculation module, a second calculation module, a third calculation module, a determination module, and an output module, where the first calculation module is configured to calculate a log likelihood ratio of the received signal; the second calculation module is configured to calculate first transfer information after at least one iteration is updated, where the first transfer information is information transferred from the check node to the variable node in a kth iteration, and k is a positive integer and is smaller than the maximum iteration number;the third calculating module is configured to calculate channel information of a kth iteration according to the log-likelihood ratio and the first transmission information, so as to obtain at least one piece of channel information; the determining module is configured to determine the optimal iteration number according to at least one piece of the channel information; the output module is used for iteratively updating the optimal iteration times by the check nodes and the variable nodes and outputting the decoding sequence. In particular, therefore, the probability density function of a channel is
Figure BDA0003381034860000091
So that the log-likelihood ratio of the received signal can be calculated as
Figure BDA0003381034860000092
Of course, if QPSK, 16QAM, 64QAM, 256QAM, or other modulation schemes are adopted, the LLR value can be obtained by the soft demodulation algorithm, and if a flooding iterative update calculation scheme is adopted during check node update, the first transfer information is obtained
Figure BDA0003381034860000093
If a calculation mode based on layered iterative update is adopted, the information is transmitted firstly
Figure BDA0003381034860000094
Figure BDA0003381034860000095
Wherein the content of the first and second substances,
Figure BDA0003381034860000096
transmitting information from the check node j to the variable node i for the first iteration, and if a flooding iterative updating calculation mode is adopted during variable node updating, then
Figure BDA0003381034860000097
If a calculation mode of layered iterative update is adopted, then
Figure BDA0003381034860000098
For the first iterationDetermining the optimal iteration number according to at least one piece of the channel information; and the check node and the variable node iteratively update the optimal iteration times and output the decoding sequence.
In an embodiment of the present application, the determining module includes a first determining submodule and a second determining submodule, where the first determining submodule is configured to determine k as the optimal iteration number when the channel information of a kth iteration is greater than or equal to 0; the second determining submodule is configured to determine that the maximum iteration count is the optimal iteration count when all the channel information is smaller than 0. In particular, the decoded sequence obtained at each iteration
Figure BDA0003381034860000099
Examination of
Figure BDA00033810348600000910
If yes, outputting the decoding sequence
Figure BDA00033810348600000911
Otherwise, the iteration is continued, namely the channel information is obtained
Figure BDA00033810348600000912
And determining the optimal iteration number.
In an embodiment of the application, the simulation unit further includes a fourth calculation module, where the fourth calculation module is configured to calculate second transfer information after at least one iteration is updated, and the second transfer information is information transferred from the variable node to the check node in a kth iteration. Specifically, if the iterative update calculation mode of flooding is adopted, the second transfer information
Figure BDA00033810348600000913
The information passed from variable node i to check node j for the ith iteration is updated for the variable nodes.
In an embodiment of the application, the calculation formula of the channel information, the first transfer information, and the second transfer information is a flooding calculation formula of iterative update or a hierarchical iterative update calculation formula. Specifically, in practice, a calculation formula of hierarchical iterative update is generally adopted, but a calculation formula of flooding iterative update is also applicable, so that the usability of the decoding method is improved.
An embodiment of the present application further provides a decoder, which includes a decoding apparatus, and the decoding apparatus is configured to execute any one of the above methods.
The decoder comprises a decoding device, an acquisition unit acquires the maximum iteration times and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors; the simulation unit carries out simulation decoding on the received signals according to the parameter combinations and the maximum iteration times to obtain a plurality of decoding sequences, the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration times through check nodes and variable nodes, the optimal iteration times are smaller than the maximum iteration times, the product of the code word sequences output by the optimal iteration times and a check matrix is equal to 0, or the optimal iteration times are equal to the maximum iteration times; a determining unit determines the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and the processing unit decodes according to the optimal parameter combination and the maximum iteration number. The decoder adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
It should be noted that, as shown in fig. 3, the decoder includes a control module and a decoding module, the control module configures the decoding module according to the maximum iteration number, the optimal correction factor, and the optimal offset factor, and may be implemented in soft, FPGA, or ASIC, and the control module may be a CPU or a DSP.
In a specific embodiment of the present application, taking a code length K8448 and a code rate 1/3 as an example, in an AWGN white gaussian noise channel environment, a QPSK modulation method is adopted, a simulation length is 10000 frames, for different algorithms such as NMS, OMS, and DCMS, when α is 1 and β is 0, a decoding algorithm is an MS algorithm, when α is 1 and β is not 0, a decoding algorithm is an OMS algorithm, when α is not 1 and β is not 0, a decoding algorithm is an NMS algorithm, otherwise, a decoding algorithm is a DCMS algorithm, and a simulation result is shown in fig. 4, it can be found that, by performing fine adjustment on a check node, an optimal parameter combination is selected, which is finer than adjustment under NMS and OMS algorithms, and performance is better. The values of the parameter combination correction factor alpha and the offset factor beta in the algorithm are both fixed-point realizable, and are not theoretically or floating-point optimal.
The decoding device comprises a processor and a memory, the acquisition unit, the simulation unit, the determination unit, the processing unit and the like are stored in the memory as program units, and the processor executes the program units stored in the memory to realize corresponding functions.
The processor comprises a kernel, and the kernel calls the corresponding program unit from the memory. The kernel can be set to be one or more than one, and the problem of high block error rate of the decoding method in the prior art is solved by adjusting kernel parameters.
The memory may include volatile memory in a computer readable medium, Random Access Memory (RAM) and/or nonvolatile memory such as Read Only Memory (ROM) or flash memory (flash RAM), and the memory includes at least one memory chip.
An embodiment of the present invention provides a computer-readable storage medium on which a program is stored, which when executed by a processor implements the above-described method.
The embodiment of the invention provides a processor, which is used for running a program, wherein the method is executed when the program runs.
The embodiment of the invention provides equipment, which comprises a processor, a memory and a program which is stored on the memory and can run on the processor, wherein when the processor executes the program, at least the following steps are realized:
step S101, acquiring maximum iteration times and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors;
step S102, performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is less than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number;
step S103, determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination;
and step S104, decoding according to the optimal parameter combination and the maximum iteration times.
The device herein may be a server, a PC, a PAD, a mobile phone, etc.
The present application further provides a computer program product adapted to perform a program of initializing at least the following method steps when executed on a data processing device:
step S101, acquiring maximum iteration times and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors;
step S102, performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is less than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number;
step S103, determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination;
and step S104, decoding according to the optimal parameter combination and the maximum iteration times.
In the above embodiments of the present invention, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
In the embodiments provided in the present application, it should be understood that the disclosed technology can be implemented in other ways. The above-described embodiments of the apparatus are merely illustrative, and for example, the above-described division of the units may be a logical division, and in actual implementation, there may be another division, for example, multiple units or components may be combined or may be integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, units or modules, and may be in an electrical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit may be stored in a computer-readable storage medium if it is implemented in the form of a software functional unit and sold or used as a separate product. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a computer-readable storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned computer-readable storage media comprise: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
From the above description, it can be seen that the above-described embodiments of the present application achieve the following technical effects:
1) in the decoding method, firstly, the maximum iteration times and a plurality of parameter combinations are obtained, wherein the parameter combinations comprise correction factors and offset factors; then, performing simulation decoding on the received signal according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating an optimal iteration number for a check node and a variable node, the optimal iteration number is less than the maximum iteration number, and the product of the code word sequence output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number; then, determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and finally, decoding according to the optimal parameter combination and the maximum iteration times. The method adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
2) In the decoding device, an obtaining unit obtains a maximum iteration number and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors; the simulation unit carries out simulation decoding on the received signals according to the parameter combinations and the maximum iteration times to obtain a plurality of decoding sequences, the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration times through check nodes and variable nodes, the optimal iteration times are smaller than the maximum iteration times, the product of the code word sequences output by the optimal iteration times and a check matrix is equal to 0, or the optimal iteration times are equal to the maximum iteration times; a determining unit determines the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and the processing unit decodes according to the optimal parameter combination and the maximum iteration number. The device adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
3) The decoder comprises a decoding device, an acquisition unit and a control unit, wherein the acquisition unit acquires the maximum iteration times and a plurality of parameter combinations, and the parameter combinations comprise correction factors and offset factors; the simulation unit carries out simulation decoding on the received signals according to the parameter combinations and the maximum iteration times to obtain a plurality of decoding sequences, the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration times through check nodes and variable nodes, the optimal iteration times are smaller than the maximum iteration times, the product of the code word sequences output by the optimal iteration times and a check matrix is equal to 0, or the optimal iteration times are equal to the maximum iteration times; a determining unit determines the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination; and the processing unit decodes according to the optimal parameter combination and the maximum iteration number. The decoder adopts a plurality of parameter combinations consisting of correction factors and offset factors to carry out simulation decoding to obtain a plurality of decoding sequences, determines the decoding sequence with the minimum block error rate as the optimal parameter combination, and adopts the optimal parameter combination and the maximum iteration times to carry out decoding, so that the block error rate can be greatly reduced, the decoding accuracy is improved, and the problem of higher block error rate of the decoding method in the prior art is solved.
The above description is only a preferred embodiment of the present application and is not intended to limit the present application, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (10)

1. A decoding method, comprising:
acquiring a maximum iteration number and a plurality of parameter combinations, wherein the parameter combinations comprise correction factors and offset factors;
performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, wherein the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is smaller than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number;
determining the parameter combination corresponding to the decoding sequence with the minimum block error rate as an optimal parameter combination;
and decoding according to the optimal parameter combination and the maximum iteration number.
2. The method of claim 1, wherein the step of performing simulation decoding on the received signal according to each of the parameter combinations and the maximum number of iterations to obtain a plurality of decoded sequences comprises:
calculating a log-likelihood ratio of the received signal;
after at least one iteration is updated, first transmission information is calculated, wherein the first transmission information is information transmitted from the check node to the variable node in the kth iteration, and k is a positive integer and is smaller than the maximum iteration number;
calculating channel information of the kth iteration according to the log-likelihood ratio and the first transmission information to obtain at least one piece of channel information;
determining the optimal iteration times according to at least one piece of channel information;
and the check node and the variable node iteratively update the optimal iteration times and output the decoding sequence.
3. The method of claim 2, wherein determining the optimal number of iterations based on at least one of the channel information comprises:
determining k as the optimal iteration number under the condition that the channel information of the kth iteration is greater than or equal to 0;
and determining the maximum iteration number as the optimal iteration number under the condition that all the channel information is less than 0.
4. The method of claim 2, wherein the step of performing simulation decoding on the received signal according to each of the parameter combinations and the maximum number of iterations to obtain a plurality of decoded sequences further comprises:
and after at least one iteration is updated, second transfer information is calculated, and the second transfer information is information transferred from the variable node to the check node in the k iteration.
5. The method of claim 4, wherein the calculation formula of the channel information, the first transfer information, and the second transfer information is a flooding iterative update calculation formula or a hierarchical iterative update calculation formula.
6. The method of claim 1, wherein before the step of performing the simulation decoding on the encoded sequence according to each of the parameter combinations and the maximum number of iterations to obtain a plurality of decoded sequences, the method further comprises:
performing LDPC coding on the data block to obtain a coding sequence;
modulating the coding sequence to obtain a modulated sequence;
and receiving the signal of the modulation sequence passing through an additive white Gaussian noise channel to obtain the received signal.
7. A decoding apparatus, comprising:
the device comprises an acquisition unit, a calculation unit and a processing unit, wherein the acquisition unit is used for acquiring the maximum iteration times and a plurality of parameter combinations, and the parameter combinations comprise correction factors and offset factors;
the simulation unit is used for performing simulation decoding on the received signals according to each parameter combination and the maximum iteration number to obtain a plurality of decoding sequences, the decoding sequences correspond to the parameter combinations one by one, the decoding sequences are code word sequences output by iteratively updating the optimal iteration number for check nodes and variable nodes, the optimal iteration number is smaller than the maximum iteration number, the product of the code word sequences output by the optimal iteration number and a check matrix is equal to 0, or the optimal iteration number is equal to the maximum iteration number;
a determining unit, configured to determine the parameter combination corresponding to the decoding sequence with the smallest block error rate as an optimal parameter combination;
and the processing unit is used for decoding according to the optimal parameter combination and the maximum iteration times.
8. A computer-readable storage medium, characterized in that the computer-readable storage medium comprises a stored program, wherein the program performs the method of any one of claims 1 to 6.
9. A processor, characterized in that the processor is configured to run a program, wherein the program when running performs the method of any of claims 1 to 6.
10. A decoder comprising decoding means, characterized in that said decoding means are adapted to perform the method of any of claims 1 to 6.
CN202111434206.1A 2021-11-29 2021-11-29 Decoding method, device and decoder Pending CN114337913A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111434206.1A CN114337913A (en) 2021-11-29 2021-11-29 Decoding method, device and decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111434206.1A CN114337913A (en) 2021-11-29 2021-11-29 Decoding method, device and decoder

Publications (1)

Publication Number Publication Date
CN114337913A true CN114337913A (en) 2022-04-12

Family

ID=81047299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111434206.1A Pending CN114337913A (en) 2021-11-29 2021-11-29 Decoding method, device and decoder

Country Status (1)

Country Link
CN (1) CN114337913A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859013A (en) * 2006-06-09 2006-11-08 东南大学 Low density odd-even check code iterative sequencing statistical decoding method
CN103064093A (en) * 2012-12-22 2013-04-24 山东大学 Low density parity check (LDPC) code auxiliary iteration carrier synchronization method of global position system (GPS) receiver
CN108092673A (en) * 2018-02-10 2018-05-29 中国传媒大学 A kind of BP iterative decoding method and system based on dynamic dispatching
CN109302267A (en) * 2018-09-26 2019-02-01 西安科技大学 Interpretation method, equipment and the storage medium of mimo system based on LDPC
CN110022159A (en) * 2019-03-12 2019-07-16 西北工业大学 A kind of LDPC code decoding algorithm of fast convergence
CN111416626A (en) * 2020-02-21 2020-07-14 中国科学院微电子研究所 L DPC code decoding method, device, equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859013A (en) * 2006-06-09 2006-11-08 东南大学 Low density odd-even check code iterative sequencing statistical decoding method
CN103064093A (en) * 2012-12-22 2013-04-24 山东大学 Low density parity check (LDPC) code auxiliary iteration carrier synchronization method of global position system (GPS) receiver
CN108092673A (en) * 2018-02-10 2018-05-29 中国传媒大学 A kind of BP iterative decoding method and system based on dynamic dispatching
CN109302267A (en) * 2018-09-26 2019-02-01 西安科技大学 Interpretation method, equipment and the storage medium of mimo system based on LDPC
CN110022159A (en) * 2019-03-12 2019-07-16 西北工业大学 A kind of LDPC code decoding algorithm of fast convergence
CN111416626A (en) * 2020-02-21 2020-07-14 中国科学院微电子研究所 L DPC code decoding method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
CN110800216B (en) Method and apparatus for rate matching for communication and broadcast systems
US7395495B2 (en) Method and apparatus for decoding forward error correction codes
US10511327B2 (en) Apparatus and method for decoding LDPC code
CN110622425B (en) Method and apparatus for performing Low Density Parity Check (LDPC) decoding
RU2369008C2 (en) Device and method for coding/decoding block code for low density parity check with variable block length
AU2016351377A1 (en) Puncturing for structured low density parity check (LDPC) codes
US10419027B2 (en) Adjusted min-sum decoder
KR20100022023A (en) Memory-efficient ldpc decoding
JP2012239240A (en) Method for generating parity-check matrices of low-density parity-check codes
KR20110031322A (en) Reduced complexity ldpc decoder
CN114270710A (en) Data decoding method and apparatus in communication or broadcast system
CN109923787B (en) Early termination for layered LDPC decoder
KR20110071469A (en) Fast stochastic decode method for low density parity check code
Maunder A vision for 5G channel coding
CN111357218B (en) Method and apparatus for encoding and decoding channel in communication or broadcasting system
CN110830050B (en) LDPC decoding method, system, electronic equipment and storage medium
CN111130563B (en) Method and device for processing information
US11483011B2 (en) Decoding method, decoding device, and decoder
CN114337913A (en) Decoding method, device and decoder
CN101150378A (en) Interleaving scheme of 32APSK system for low-density checksum coding
KR20090093778A (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
CN110663190B (en) Method and apparatus for channel encoding and decoding in a communication or broadcasting system
CN101150550A (en) Interweaving scheme of 16APSK system for low-density checksum coding
CN112737600A (en) Decoding method and decoder
WO2020052754A1 (en) Simplified check node processing for ldpc decoding

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