LDPC decoding method and device for satellite communication

Through the storage of log-likelihood ratio and dynamic iterative control, the problem of low decoding efficiency of existing LDPC is solved, the decoding accuracy and efficiency in satellite-on-board communication is improved, and the calculation power consumption is reduced.

CN118659792BActive Publication Date: 2024-12-13BEIJING RONGWEI TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411140639.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-20
Publication Date
2024-12-13
Estimated Expiration
2044-08-20

AI Technical Summary

Technical Problem

Due to the limitation of preset iterations, the existing LDPC decoding methods have large calculation power consumption and time, low decoding efficiency, and cannot meet the needs of satellite-on-board communication.

Method used

By determining the log-likelihood ratio of the information to be decoded and storing it in a preset storage area, iterative calculation is performed based on the log-likelihood ratio, and whether the iteration result satisfies the judgment condition. If it is satisfied, iterative calculation will be terminated. If it is not satisfied, then iterative calculation will be terminated. Adjust the number of iterations, return for further calculations, ensuring the accuracy and efficiency of the iteration results.

Benefits of technology

It significantly improves the accuracy and efficiency of LDPC decoding, reduces the time required to judge iterative results, especially when the maximum number of iterations is large, the effect is more obvious, and the calculation power consumption is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118659792B_ABST
    Figure CN118659792B_ABST
Patent Text Reader

Abstract

The present invention provides an LDPC decoding method and device for satellite communication. The method comprises the following steps: determining a log-likelihood ratio of information to be decoded for satellite communication, and storing the log-likelihood ratio in a preset storage area; performing iterative calculation of LDPC decoding on the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain an iterative result, and judging the iterative result of the previous iterative calculation to obtain a judgment result; if the judgment result satisfies a preset judgment condition, terminating the iterative calculation; outputting the judgment result and the iterative result corresponding to the judgment result; if the judgment result does not satisfy the preset judgment condition, determining whether the number of iterations of the iterative calculation is equal to the preset number; if not, returning to performing iterative calculation of LDPC decoding on the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain an iterative result, and judging the iterative result of the previous iterative calculation to obtain a judgment result; if yes, terminating the iterative calculation to improve the decoding efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of satellite communication technology, and in particular to an LDPC decoding method and device for satellite-borne communication. Background Art

[0002] In recent years, satellites have shown a trend of becoming smaller and lighter. As one of the core systems of satellites, the power consumption and sensitivity of the satellite-borne communication system are important factors restricting satellite communications. , LDPC (low-density packet loss) is a channel coding method close to the Shannon limit and is in great demand in satellite communication systems. It can bring higher coding gain and effectively improve sensitivity.

[0003] However, the existing LDPC decoding method is affected by the preset number of iterations and needs to perform iterative calculations according to the preset number of iterations, resulting in high computing power consumption and computing time, low decoding efficiency, and failure to meet actual needs. Summary of the invention

[0004] The present invention provides an LDPC decoding method and device for satellite communication, which are used to solve the technical problem of low LDPC decoding efficiency in the prior art.

[0005] In one aspect, the present invention provides an LDPC decoding method for satellite communication, comprising:

[0006] Determining a log-likelihood ratio of information to be decoded for satellite communication, and storing the log-likelihood ratio in a preset storage area;

[0007] Based on the log-likelihood ratio in the preset storage area, iterative calculation of LDPC decoding is performed on the information to be decoded to obtain an iterative result, and a judgment is made on the iterative result of the previous iterative calculation to obtain a judgment result;

[0008] If the judgment result satisfies the preset judgment condition, the iterative calculation is terminated;

[0009] Outputting the judgment result and the iteration result corresponding to the judgment result;

[0010] If the judgment result does not meet the preset judgment condition, determining whether the number of iterations of the iterative calculation is equal to a preset number;

[0011] If not, returning to the log-likelihood ratio in the preset storage area, performing iterative calculation of LDPC decoding on the information to be decoded to obtain an iterative result, and judging the iterative result of the previous iterative calculation to obtain a judgment result;

[0012] If so, the iterative calculation is terminated.

[0013] According to an LDPC decoding method for satellite communication provided by the present invention, the step of determining a log-likelihood ratio of information to be decoded for satellite communication comprises:

[0014] Determining a ratio between a probability that information to be decoded for satellite communication corresponds to a bit 0 and a probability that a bit 1;

[0015] A log-likelihood ratio of the information to be decoded is determined based on the ratio.

[0016] According to an LDPC decoding method for satellite communication provided by the present invention, the iterative calculation of LDPC decoding of the information to be decoded based on the log-likelihood ratio in the preset storage area includes:

[0017] Based on the log-likelihood ratio in the preset storage area, updating the check node information of the information to be decoded to obtain a check node update result;

[0018] Based on the check node update result, the variable node information of the information to be decoded is updated to obtain the variable node update result.

[0019] According to an LDPC decoding method for satellite communication provided by the present invention, the updating of the check node information of the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain the check node update result includes:

[0020] taking an absolute value of the log-likelihood ratio;

[0021] Compare the absolute values ​​of each row of the log-likelihood ratio after taking the absolute value, determine the minimum value, the second minimum value and the minimum value position in the absolute value of each row, and perform XOR on all sign bits of the log-likelihood ratio to obtain sign information;

[0022] The node information of each row is updated based on the sign information, the minimum value, the second minimum value and the minimum value position information to obtain a check node update result.

[0023] According to an LDPC decoding method for satellite communication provided by the present invention, the formula for determining the log-likelihood ratio of the information to be decoded for satellite communication is as follows:

[0024] in, i Indicates the number of information to be decoded, L (Pi) represents the log-likelihood ratio, P i (0) indicates the probability that the information to be decoded corresponds to bit 0,P i (1) represents the probability that the information to be decoded corresponds to bit 1.

[0025] On the other hand, the present invention also provides an LDPC decoding device for satellite communication, comprising:

[0026] A log-likelihood ratio module, used to determine a log-likelihood ratio of information to be decoded for satellite communication, and store the log-likelihood ratio in a preset storage area;

[0027] An iterative decision module, configured to perform iterative calculation of LDPC decoding on the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain an iterative result, and to make a decision on the iterative result of the previous iterative calculation to obtain a decision result;

[0028] A first judgment module, configured to terminate the iterative calculation if the judgment result satisfies a preset judgment condition;

[0029] An iteration result module, used for outputting the judgment result and the iteration result corresponding to the judgment result;

[0030] An iteration number module, used for determining whether the number of iterations of the iterative calculation is equal to a preset number if the judgment result does not meet the preset judgment condition;

[0031] A second judgment module is used for returning the log-likelihood ratio based on the preset storage area, performing iterative calculation of LDPC decoding on the information to be decoded, obtaining an iterative result, and judging the iterative result of the previous iterative calculation to obtain a judgment result if no;

[0032] The third judgment module is used to terminate the iterative calculation if yes.

[0033] According to an LDPC decoding device for satellite communication provided by the present invention, the log-likelihood ratio module is used for:

[0034] Determining a ratio between a probability that information to be decoded for satellite communication corresponds to a bit 0 and a probability that a bit 1;

[0035] A log-likelihood ratio of the information to be decoded is determined based on the ratio.

[0036] According to an LDPC decoding device for satellite communication provided by the present invention, the iterative decision module is used for:

[0037] Based on the log-likelihood ratio in the preset storage area, updating the check node information of the information to be decoded to obtain a check node update result;

[0038] Based on the check node update result, the variable node information of the information to be decoded is updated to obtain the variable node update result.

[0039] According to an LDPC decoding device for satellite communication provided by the present invention, the iterative decision module is used for:

[0040] taking an absolute value of the log-likelihood ratio;

[0041] Compare the absolute values ​​of each row of the log-likelihood ratio after taking the absolute value, determine the minimum value, the second minimum value and the minimum value position in the absolute value of each row, and perform XOR on all sign bits of the log-likelihood ratio to obtain sign information;

[0042] The node information of each row is updated based on the sign information, the minimum value, the second minimum value and the minimum value position information to obtain a check node update result.

[0043] According to an LDPC decoding device for satellite communication provided by the present invention, the log-likelihood ratio module is used to determine the log-likelihood ratio of the information to be decoded for satellite communication. The formula is as follows:

[0044] in, i Indicates the number of information to be decoded, L (Pi) represents the log-likelihood ratio, P i (0) indicates the probability that the information to be decoded corresponds to bit 0, P i (1) represents the probability that the information to be decoded corresponds to bit 1.

[0045] On the other hand, the present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the LDPC decoding method for satellite communication as described in any one of the above is implemented.

[0046] The LDPC decoding method and device for satellite communication provided by the present invention can improve the accuracy and efficiency of decoding by determining the log-likelihood ratio of the information to be decoded for satellite communication and storing the log-likelihood ratio in a preset storage area. Based on the log-likelihood ratio in the preset storage area, the information to be decoded is iteratively calculated by LDPC decoding to obtain an iterative result, and the iterative result of the previous iterative calculation is judged to obtain a judgment result. If the judgment result meets the preset judgment condition, the iterative calculation is terminated, which can greatly reduce the time required for judging the iterative result, and significantly improve the decoding efficiency. When the maximum number of iterations is larger, the effect is more obvious. If the judgment result does not meet the preset judgment condition, it is determined whether the number of iterations of the iterative calculation is equal to the preset number. If not, it is returned to the log-likelihood ratio in the preset storage area, the information to be decoded is iteratively calculated by LDPC decoding to obtain an iterative result, and the iterative result of the previous iterative calculation is judged to obtain a judgment result, which is conducive to ensuring the accuracy of the iterative result. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0048] Figure 1 It is a flowchart of an LDPC decoding method for satellite communication provided by an embodiment of the present invention;

[0049] Figure 2 Schematic diagram of the architecture of an LDPC decoding method for satellite communication provided by an embodiment of the present invention;

[0050] Figure 3 1 is a schematic diagram of the structure of an LDPC decoding device for satellite-borne communication provided by an embodiment of the present invention;

[0051] Figure 4 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0052] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0053] Figure 1 The figure is a flow chart of an LDPC decoding method for satellite communication provided by an embodiment of the present invention. The decoding method can be executed by a computer, a mobile phone or other electronic devices, and the decoding method mainly includes the following steps:

[0054] 101. Determine a log-likelihood ratio of information to be decoded for satellite communication, and store the log-likelihood ratio in a preset storage area.

[0055] In this step, the log likelihood ratio (LLR) is a key parameter in channel decoding, which is used to measure the ratio of the probability of a received signal (such as the information to be decoded for satellite communication) corresponding to bit 0 to the probability of a received signal corresponding to bit 1.

[0056] In satellite communication systems, compared with traditional hard decision decoding, the use of LLR in this step can improve the accuracy of decoding, especially in low signal-to-noise ratio environments, the advantage is more obvious.

[0057] The preset storage area may refer to a preset LLR cache, i.e., a log-likelihood ratio cache. The LLR cache is a cache mechanism for storing soft information received from a channel, and is used in a communication system to improve the accuracy and efficiency of data demodulation. For example, the LLR cache improves the efficiency of Quadrature Amplitude Modulation Demodulation (QAM) by caching soft information, which can be quickly accessed when needed. The LLR cache can reduce the need for repeated calculation of soft information and reduce the overall calculation amount of the system.

[0058] 102. Based on the log-likelihood ratio in the preset storage area, perform iterative calculation of LDPC decoding on the information to be decoded to obtain an iterative result, and make a judgment on the iterative result of the previous iterative calculation to obtain a judgment result.

[0059] In some other schemes, when iterative calculation of LDPC decoding is performed on the information to be decoded, iterative calculation is often performed according to the set maximum number of iterations. When the number of iterative calculations reaches the maximum number, the calculation is stopped. Even if the iterative result has met the needs, if the number of iterative calculations has not reached the maximum number, the iterative calculation needs to be continued until the number of iterative calculations equals the maximum number. The above situation easily leads to invalid additional iterative calculations, resulting in more computing power and time required, and lower decoding efficiency.

[0060] In this step, based on the log-likelihood ratio in the preset storage area, the LDPC decoding is iteratively calculated for the information to be decoded, and while obtaining the iterative result, the iterative result of the previous iterative calculation is judged to obtain the judgment result, and the judgment result is also used as the basis for whether to continue the iterative calculation, which is conducive to reducing the number of iterative calculations and improving the decoding efficiency. In addition, in this step, the iterative calculation and the judgment of the iterative result of the previous iterative calculation are performed simultaneously, for example, while performing the second iterative calculation, the iterative result of the first iterative calculation is also judged; while performing the third iterative calculation, the iterative result of the second iterative calculation is also judged; while performing the fourth iterative calculation, the iterative result of the third iterative calculation is also judged.

[0061] For some other schemes where iterative calculation and judgment of iterative results are not performed synchronously, for example, after the first iterative calculation is completed, the iterative result of the first iterative calculation is judged; after the second iterative calculation is completed, the iterative result of the second iterative calculation is judged; after the third iterative calculation is completed, the iterative result of the third iterative calculation is judged; after the fourth iterative calculation is completed, the iterative result of the fourth iterative calculation is judged. By comparison, it can be seen that the scheme of this step can greatly reduce the time required for judging the iterative results, significantly improve the decoding efficiency, and the effect of this step is more obvious when the maximum number of iterations is larger.

[0062] 103. If the judgment result meets the preset judgment condition, the iterative calculation is terminated.

[0063] In this step, the preset decision condition generally refers to a preset bit error rate, and the specific preset bit error rate can be set, for example, the preset bit error rate ber=1E-5 is set. Of course, the preset bit error rate can also be set to other values, which are not specifically limited here. In this step, even if the number of iterative calculations does not reach the maximum number, if the judgment result meets the preset decision condition, the iterative calculation is terminated, which further improves the decoding efficiency.

[0064] 104. Output the judgment result and the iteration result corresponding to the judgment result.

[0065] In this step, there can be multiple ways of output, for example, code can be added in the final stage of the decoding program to output the judgment result and the corresponding iteration result. Specifically, in the MATLAB implementation, the judgment result and the corresponding iteration result can be printed or returned at the end of the algorithm. Of course, this step can also output more information, for example, output the specific number of iterative calculations performed, so as to further analyze the corresponding relationship between the judgment result satisfying the preset judgment condition and the specific number of iterative calculations, so as to help set a more reasonable preset maximum number of iterations and improve decoding efficiency.

[0066] 105. If the judgment result does not meet the preset judgment condition, determine whether the number of iterations of the iterative calculation is equal to the preset number.

[0067] In this step, determining whether the number of iterations of the iterative calculation is equal to the preset number can also be performed simultaneously with step 102, that is, while judging the iterative result of the previous iterative calculation, it is also possible to determine whether the number of iterations of the iterative calculation is equal to the preset number. As long as one of the two is met, the iterative calculation is terminated.

[0068] 106. If not, return to the log-likelihood ratio in the preset storage area, perform iterative calculation of LDPC decoding on the information to be decoded, obtain an iterative result, and make a judgment on the iterative result of the previous iterative calculation to obtain a judgment result.

[0069] In this step, if the number of iterations of the iterative calculation is not equal to the preset number, that is, less than the preset number, and the judgment result does not meet the preset judgment condition, then return to step 102 for loop processing.

[0070] 107. If so, terminate the iterative calculation.

[0071] In this embodiment, the log-likelihood ratio of the information to be decoded for satellite communication is determined, and the log-likelihood ratio is stored in a preset storage area, which can improve the accuracy and efficiency of decoding. Based on the log-likelihood ratio in the preset storage area, the information to be decoded is iteratively calculated by LDPC decoding to obtain an iterative result, and the iterative result of the previous iterative calculation is judged to obtain a judgment result. If the judgment result meets the preset judgment condition, the iterative calculation is terminated, which can greatly reduce the time required for judging the iterative result, and significantly improve the decoding efficiency. When the maximum number of iterations is larger, the effect is more obvious. If the judgment result does not meet the preset judgment condition, it is determined whether the number of iterations of the iterative calculation is equal to the preset number. If not, it is returned to the log-likelihood ratio in the preset storage area, the information to be decoded is iteratively calculated by LDPC decoding to obtain an iterative result, and the iterative result of the previous iterative calculation is judged to obtain a judgment result, which is conducive to ensuring the accuracy of the iterative result.

[0072] In one embodiment of the present specification, determining a log likelihood ratio of information to be decoded for satellite communication includes:

[0073] Determining a ratio between a probability that information to be decoded for satellite communication corresponds to a bit 0 and a probability that a bit 1;

[0074] A log-likelihood ratio of the information to be decoded is determined based on the ratio.

[0075] In this embodiment, the ratio between the probability that the information to be decoded for satellite communication corresponds to bit 0 and the probability that the information to be decoded corresponds to bit 1 is determined, and the log likelihood ratio of the information to be decoded is determined based on the ratio, so as to improve the accuracy of decoding. The formula for determining the log likelihood ratio of the information to be decoded for satellite communication is as follows:

[0076]

[0077] in i Indicates the number of information to be decoded, L (Pi) represents the log-likelihood ratio, P i (0) indicates the probability that the information to be decoded corresponds to bit 0, P i (1) represents the probability that the information to be decoded corresponds to bit 1.

[0078] In one embodiment of the present specification, based on the log-likelihood ratio in the preset storage area, iterative calculation of LDPC decoding of the information to be decoded includes:

[0079] Based on the log-likelihood ratio in the preset storage area, update the check node information of the information to be decoded to obtain a check node update result;

[0080] Based on the check node update result, the variable node information is updated for the information to be decoded to obtain the variable node update result.

[0081] In this embodiment, based on the log-likelihood ratio in the preset storage area, the check node information is updated for the information to be decoded to obtain the check node update result. The formula of the check node update result is as follows:

[0082]

[0083] Wherein, k represents the number of iterative calculations, and here it represents the kth iterative calculation; Indicates that variable node i receives the message transmitted by check node j; Indicates that check node j receives the message transmitted by variable node i; N(j) represents the set of all variable nodes connected to check node j, and N(j) / i represents the set of all variable nodes connected to check node j except variable node i; Indicates that check node j receives variable node The message sent.

[0084] Based on the check node update result, the variable node information is updated for the information to be decoded to obtain the variable node update result. The formula for the variable node update result is as follows:

[0085]

[0086] Wherein, M(i) represents the set of all check nodes connected to variable node i; M(i) / j represents the set of all check nodes connected to variable node i except check node j; Indicates that variable node i receives the check node The message sent.

[0087] In one embodiment of the present specification, based on the log-likelihood ratio in the preset storage area, the check node information is updated for the information to be decoded to obtain the check node update result, including:

[0088] taking an absolute value of the log-likelihood ratio;

[0089] Compare the absolute values ​​of each row of the log-likelihood ratio after taking the absolute value, determine the minimum value, the second minimum value and the minimum value position in the absolute value of each row, and perform XOR on all sign bits of the log-likelihood ratio to obtain sign information;

[0090] The node information of each row is updated based on the sign information, the minimum value, the second minimum value and the minimum value position information to obtain the check node update result.

[0091] In this embodiment, it can be understood that the second smallest value is a value just greater than the minimum value, that is, the second smallest value. After taking the absolute value of the log-likelihood ratio, each row may include multiple absolute values, and for each row, the magnitudes of the absolute values ​​in the row are compared to determine the minimum value, the second smallest value, and the minimum value position in the absolute values ​​of the row.

[0092] In addition, based on the check node update result, updating the variable node information of the information to be decoded to obtain the variable node update result may include: adding the check node update result and the log-likelihood ratio in the preset storage area to obtain the variable node update result.

[0093] In some other embodiments of this specification, the formula for decision decoding is as follows:

[0094]

[0095] The formula of the decision code is as follows:

[0096]

[0097] in, represents the i-th variable node; Represents decision decoding, that is, the update result of the variable node. Indicates the decision code, When it is less than 0, it takes the value 1. If it is greater than or equal to 0, it takes the value 0.

[0098] Figure 2 This is the architectural intent of the LDPC decoding method for satellite communications provided by an embodiment of the present invention. Figure 2 , the present invention is introduced. LDPC can be 7 / 8LDPC of CCSDS standard. The main function of the log-likelihood ratio cache (LLR cache for short) is to cache soft information (log-likelihood ratio information, LLR information for short) received from the channel, and the soft information can be regarded as input. The CCSDS variable node parallelism is 112, so the storage (RAM) of the log-likelihood ratio cache is 112 dual-port RAMs with a depth of 73, which are used to store 8176 soft information. Specifically, for example, there are 112 ways between the log-likelihood ratio cache and the variable node update module and the decoding decision module. There are also 112 ways between the decoding decision module and the decoding information cache and the variable node information cache. There are 112 ways between the variable node update module and the check node update module and the variable node information cache. There are 14 ways between the variable node update module and the check node information cache. There are 14 ways between the check node update module and the check module, the variable node information cache, and the check node information cache.

[0099] The check node update module reads the soft information (log-likelihood ratio) from the LLR cache to complete the update of the check node information. The variable node update module calculates the initial input LLR information and the updated output information of the check node update module to update the variable node information. The updated data output by the variable node update module after the update is stored in the variable node information cache and the check node information cache respectively. During each iterative calculation process, the verification module also verifies the updated data output by the variable node update module to obtain the verification result. If the verification result meets the preset conditions, the iterative calculation ends.

[0100] If the verification result does not meet the preset conditions, the iterative calculation continues, and the updated data output by the variable node update module is verified at the same time. When the number of iterative calculations reaches the set maximum number of iterations, or the verification result meets the preset conditions, the decoding ends. The decoding decision module performs the decoding decision, and the decision result is stored in the decoding information cache and output. This architecture can control the number of iterative calculations, ensure the accuracy of the LDPC decoding results, ensure that the result performance is not damaged, and improve the decoding efficiency, which is of great significance for reducing satellite costs and improving satellite reception performance.

[0101] For example, assuming that the maximum number of iterations is set to 10, when working near the working point ber=1E-5, 1000 frames of LDPC codewords are simulated. According to the LDPC decoding iteration results, it can be determined that 163 frames of LDPC codewords can achieve relatively good decoding results after 2 iterations, 701 frames of LDPC codewords can achieve relatively good decoding results after 3 iterations, 113 frames of LDPC codewords can achieve relatively good decoding results after 4 iterations, 16 frames of LDPC codewords can achieve relatively good decoding results after 5 iterations, 5 frames of LDPC codewords can achieve relatively good decoding results after 6 iterations, and 2 frames of LDPC codewords can achieve relatively good decoding results after 10 iterations. That is, about 90% are concentrated around 3 iterations, and only 0.2% reach the maximum number of iterations.

[0102] According to the power consumption analysis data of the FPGA project involved in the iterative calculation, LDPC decoding requires about 0.645W of power consumption when all 10 iterations are calculated. According to the above analysis, using the dynamic iterative control of the present invention, the power consumption will be reduced to 70.1%×30%×0.645+16.3%×20%×0.645+11.3%×40%×0.645+1.6%×50%×0.645+0.5%×60%×0.645+0.2%×100%×0.645=0.1942. The power consumption is reduced by about (0.645-0.1942) / 0.654=69.89%. In some scenarios where more maximum iterations are required, the effect will be more obvious.

[0103] Based on the same general inventive concept, the present invention also protects an LDPC decoding device for satellite communication, such as Figure 3 As shown. The LDPC decoding device for satellite communication provided by the present invention is described below. The LDPC decoding device for satellite communication described below and the LDPC decoding method for satellite communication described above can be referred to each other. The LDPC decoding device for satellite communication includes a log-likelihood ratio module 201, an iterative decision module 202, a first decision module 203, an iterative result module 204, an iterative number module 205, a second decision module 206 and a third decision module 207.

[0104] The log-likelihood ratio module 201 is used to determine the log-likelihood ratio of the information to be decoded for satellite communication, and store the log-likelihood ratio in a preset storage area;

[0105] The iterative decision module 202 is used to perform iterative calculation of LDPC decoding on the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain an iterative result, and to make a decision on the iterative result of the previous iterative calculation to obtain a decision result;

[0106] The first judgment module 203 is used to terminate the iterative calculation if the judgment result meets the preset judgment condition;

[0107] The iteration result module 204 is used to output the judgment result and the iteration result corresponding to the judgment result;

[0108] The iteration number module 205 is used to determine whether the number of iterations of the iterative calculation is equal to the preset number if the judgment result does not meet the preset judgment condition;

[0109] The second judgment module 206 is used to return the iterative calculation of LDPC decoding on the information to be decoded based on the log-likelihood ratio in the preset storage area if no, to obtain an iterative result, and to judge the iterative result of the previous iterative calculation to obtain a judgment result;

[0110] The third judgment module 207 is used to terminate the iterative calculation if the answer is yes.

[0111] In one embodiment of the present specification, the log-likelihood ratio module 201 is used to:

[0112] Determining a ratio between a probability that information to be decoded for satellite communication corresponds to a bit 0 and a probability that a bit 1;

[0113] A log-likelihood ratio of the information to be decoded is determined based on the ratio.

[0114] In one embodiment of the present specification, the iterative decision module 202 is used to:

[0115] Based on the log-likelihood ratio in the preset storage area, update the check node information of the information to be decoded to obtain a check node update result;

[0116] Based on the check node update result, the variable node information is updated for the information to be decoded to obtain the variable node update result.

[0117] In one embodiment of the present specification, the iterative decision module 202 is used to:

[0118] taking an absolute value of the log-likelihood ratio;

[0119] Compare the absolute values ​​of each row of the log-likelihood ratio after taking the absolute value, determine the minimum value, the second minimum value and the minimum value position in the absolute value of each row, and perform XOR on all sign bits of the log-likelihood ratio to obtain sign information;

[0120] The node information of each row is updated based on the sign information, the minimum value, the second minimum value and the minimum value position information to obtain the check node update result.

[0121] In one embodiment of the present specification, the formula used by the log-likelihood ratio module 201 to determine the log-likelihood ratio of the information to be decoded for satellite communication is as follows:

[0122]

[0123] in i Indicates the number of information to be decoded, L (Pi) represents the log-likelihood ratio, P i (0) indicates the probability that the information to be decoded corresponds to bit 0, P i (1) represents the probability that the information to be decoded corresponds to bit 1.

[0124] Figure 4 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention.

[0125] like Figure 4 As shown, the electronic device may include: a processor 610, a communication interface 620, a memory 630 and a communication bus 640, wherein the processor 610, the communication interface 620 and the memory 630 communicate with each other through the communication bus 640. The processor 610 may call the logic instructions in the memory 630 to execute the LDPC decoding method for satellite communication.

[0126] In addition, the logic instructions in the above-mentioned memory 630 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0127] On the other hand, the present invention also provides a computer program product, which includes a computer program. The computer program can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the LDPC decoding method for satellite communication provided by the above methods.

[0128] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to execute the LDPC decoding method for satellite communication provided by the above-mentioned methods.

[0129] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.

[0130] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0131] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. An LDPC decoding method for satellite communication, characterized in that: include: Determining a log-likelihood ratio of information to be decoded for satellite communication, and storing the log-likelihood ratio in a preset storage area; Based on the log-likelihood ratio in the preset storage area, iterative calculation of LDPC decoding is performed on the information to be decoded to obtain an iterative result, and a judgment is made on the iterative result of the previous iterative calculation to obtain a judgment result; If the judgment result satisfies the preset judgment condition, the iterative calculation is terminated; Outputting the judgment result and the iteration result corresponding to the judgment result; If the judgment result does not meet the preset judgment condition, determining whether the number of iterations of the iterative calculation is equal to a preset number; If not, returning to the log-likelihood ratio in the preset storage area, performing iterative calculation of LDPC decoding on the information to be decoded to obtain an iterative result, and judging the iterative result of the previous iterative calculation to obtain a judgment result; If yes, then terminate the iterative calculation; Wherein, determining the log-likelihood ratio of the information to be decoded for satellite communication includes: Determining a ratio between a probability that information to be decoded for satellite communication corresponds to a bit 0 and a probability that a bit 1; Determining a log-likelihood ratio of the information to be decoded based on the ratio; The iterative calculation of LDPC decoding of the information to be decoded based on the log-likelihood ratio in the preset storage area includes: Based on the log-likelihood ratio in the preset storage area, updating the check node information of the information to be decoded to obtain a check node update result; Based on the check node update result, update the variable node information of the information to be decoded to obtain the variable node update result; The updating of the check node information of the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain the check node update result includes: taking an absolute value of the log-likelihood ratio; Compare the absolute values ​​of each row of the log-likelihood ratio after taking the absolute value, determine the minimum value, the second minimum value and the minimum value position in the absolute value of each row, and perform XOR on all sign bits of the log-likelihood ratio to obtain sign information; Based on the sign information, the minimum value, the second minimum value and the minimum value position information, the node information of each row is updated to obtain a check node update result; The formula for determining the log-likelihood ratio of the information to be decoded for satellite communication is as follows: in, i Indicates the number of information to be decoded, L (Pi) represents the log-likelihood ratio, P i (0) indicates the probability that the information to be decoded corresponds to bit 0, P i (1) represents the probability that the information to be decoded corresponds to bit 1.

2. An LDPC decoding device for satellite communication, characterized in that: include: A log-likelihood ratio module, used to determine a log-likelihood ratio of information to be decoded for satellite communication, and store the log-likelihood ratio in a preset storage area; An iterative decision module, configured to perform iterative calculation of LDPC decoding on the information to be decoded based on the log-likelihood ratio in the preset storage area to obtain an iterative result, and to make a decision on the iterative result of the previous iterative calculation to obtain a decision result; A first judgment module, configured to terminate the iterative calculation if the judgment result satisfies a preset judgment condition; An iteration result module, used for outputting the judgment result and the iteration result corresponding to the judgment result; An iteration number module, used for determining whether the number of iterations of the iterative calculation is equal to a preset number if the judgment result does not meet the preset judgment condition; A second judgment module is used for returning the log-likelihood ratio based on the preset storage area, performing iterative calculation of LDPC decoding on the information to be decoded, obtaining an iterative result, and judging the iterative result of the previous iterative calculation to obtain a judgment result if no; A third judgment module, configured to terminate the iterative calculation if yes; Wherein, the log-likelihood ratio module is used for: Determining a ratio between a probability that information to be decoded for satellite communication corresponds to a bit 0 and a probability that a bit 1; Determining a log-likelihood ratio of the information to be decoded based on the ratio; The iterative decision module is used for: Based on the log-likelihood ratio in the preset storage area, updating the check node information of the information to be decoded to obtain a check node update result; Based on the check node update result, update the variable node information of the information to be decoded to obtain the variable node update result; The iterative decision module is used for: taking an absolute value of the log-likelihood ratio; Compare the absolute values ​​of each row of the log-likelihood ratio after taking the absolute value, determine the minimum value, the second minimum value and the minimum value position in the absolute value of each row, and perform XOR on all sign bits of the log-likelihood ratio to obtain sign information; Based on the sign information, the minimum value, the second minimum value and the minimum value position information, the node information of each row is updated to obtain a check node update result; The log-likelihood ratio module is used to determine the log-likelihood ratio of the information to be decoded for satellite communication. The formula is as follows: in, i Indicates the number of information to be decoded, L (Pi) represents the log-likelihood ratio, P i (0) indicates the probability that the information to be decoded corresponds to bit 0, P i (1) represents the probability that the information to be decoded corresponds to bit 1.