Decoding method, decoder, electronic equipment, storage medium and program product

By dynamically adjusting the number of decoding iterations in a multi-beam communication system, the problems of resource waste and poor decoding performance caused by a fixed number of iterations are solved, decoding efficiency and quality are improved, and the system can adapt to changes in signal-to-noise ratios and traffic.

CN120729474APending Publication Date: 2025-09-30SICHUAN CHUANGZHI LIANHENG TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511044022.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-28
Publication Date
2025-09-30

AI Technical Summary

Technical Problem

In existing multi-beam communication systems, the number of iterations of the decoding core is fixed and cannot be dynamically adjusted according to the signal-to-noise ratio and traffic of the beam, resulting in poor decoding performance of low-SNR beams and waste of high-SNR beam resources.

Method used

By obtaining the traffic and signal-to-noise ratio of beam data, the target number of decoding iterations in each preset time period is dynamically determined. Combined with the signal-to-noise ratio difference and traffic, the allocation of iterations is optimized. The preset iteration array and priority scheduling are used to ensure the rational allocation and efficient utilization of decoding resources.

Benefits of technology

It improves decoding efficiency, reduces decoding delay, improves decoding resource utilization, enhances decoding quality and adaptability, and adapts to changes in different communication environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120729474A_ABST
    Figure CN120729474A_ABST
Patent Text Reader

Abstract

The invention provides a decoding method, a decoder, electronic equipment, a storage medium and a program product, and the decoding method comprises the steps: obtaining the beam data of a plurality of beams in a preset time period, and the beam flow and the beam signal-to-noise ratio of the beam data in the preset time period; based on the beam flow and the beam signal-to-noise ratio, determining a target decoding iteration number of beam data of the plurality of beams in a preset time period; and inputting the beam data into a decoding kernel, so that the decoding kernel decodes the beam data with the target decoding iteration number. According to the scheme, self-adaptive adjustment of the number of decoding iterations is carried out every preset time interval, and the number of decoding iterations can be optimized according to actual requirements of different beams, so that the decoding process is more efficient, the problem of excessive or insufficient decoding possibly caused by fixed number of iterations is avoided, the average time delay of decoding is reduced, and the decoding efficiency is improved. And the decoding efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of wireless communications, and in particular to a decoding method, a decoder, an electronic device, a storage medium, and a program product. Background Art

[0002] Multibeam technology refers to the simultaneous use of multiple beams in a communication system for data transmission or reception. Each beam can independently transmit or receive data in a different direction or area. Multibeam technology is widely used in modern communication systems to improve system capacity, coverage, and reliability.

[0003] Currently, data from multiple beams enters the decoding core in a fixed order. The number of decoding iterations is determined by preset parameters and is independent of the beam's signal-to-noise ratio (SNR) or traffic volume. Regardless of the beam's SNR, the decoding core performs eight iterative decoding cycles for each beam. This inflexible resource allocation prevents dynamic adjustment of decoding resources based on actual beam demand, resulting in poor decoding performance for beams with low SNRs and wasted resources for beams with high SNRs. Summary of the Invention

[0004] The purpose of the embodiments of the present application is to provide a decoding method, a decoder, an electronic device, a storage medium and a program product to solve the above-mentioned problems.

[0005] In a first aspect, an embodiment of the present application provides a decoding method, comprising: obtaining beam data of multiple beams within a preset time period, as well as beam flow and beam signal-to-noise ratio of the beam data within the preset time period; determining a target number of decoding iterations of the beam data of the multiple beams within the preset time period based on the beam flow and the beam signal-to-noise ratio; and inputting the beam data into a decoding core so that the decoding core decodes the beam data with the target number of decoding iterations.

[0006] During the implementation of the above scheme, the number of decoding iterations is adaptively adjusted once during each preset time period. The number of decoding iterations can be optimized according to the actual needs of different beams, making the decoding process more efficient and avoiding the problem of over- or under-decoding that may be caused by a fixed number of iterations. This helps to reduce the average decoding delay and improve decoding efficiency. On the other hand, by dynamically determining the number of decoding iterations based on beam flow and signal-to-noise ratio, decoding resources can be allocated more accurately, thereby improving the utilization of decoding resources. On the other hand, for beams with low signal-to-noise ratios, appropriately increasing the number of decoding iterations can better recover the signal, reduce the bit error rate, and thus improve the decoding quality. At the same time, for beams with high signal-to-noise ratios, reducing unnecessary iterations will not affect their decoding performance, ensuring that the decoding quality of different beams is well guaranteed. On the other hand, the above scheme can adaptively adjust the decoding strategy according to changes in beam data flow and signal-to-noise ratio, making the above decoding method more adaptable.

[0007] In an implementation of the first aspect, the target decoding iteration number of the beam data of the plurality of beams within the preset time period is determined based on the beam flow and the beam signal-to-noise ratio, including: determining the inter-group priority of a plurality of preset iteration number groups based on the beam signal-to-noise ratio and a preset mapping relationship; wherein the preset iteration number array includes the decoding iteration number of each beam; the plurality of preset iteration number arrays are respectively applicable to the beam signal-to-noise ratio in different intervals; the preset mapping relationship is used to characterize the correspondence between the beam signal-to-noise ratio and the inter-group priority of the plurality of preset iteration number groups; determining each of the preset iteration number arrays based on the beam flow Corresponding demand flow; wherein, the demand flow is used to characterize the total flow required to complete the number of decoding iterations corresponding to each beam in the preset iteration array; based on the demand flow and the supply flow of the decoding core, determine the target preset iteration array; wherein, the supply flow is used to characterize the total flow that the decoding core can provide within the preset time period; the target preset iteration array is the preset iteration array with the highest priority among the groups in the preset iteration array whose demand flow is not greater than the supply flow; based on the target preset iteration array, determine the target number of decoding iterations of the beam data of multiple beams within the preset time period.

[0008] In the implementation process of the above scheme, the beam signal-to-noise ratio and beam flow are comprehensively considered, and the optimal combination of iterations is dynamically selected, so that different beams can obtain appropriate decoding resources, thereby improving the overall decoding quality and efficiency; on the other hand, the optimal combination of iterations is matched according to the demand flow and supply flow to avoid resource waste or shortage, and to achieve accurate allocation of decoding core resources, so that the decoding core can achieve maximum processing capacity under limited resources and improve decoding throughput; on the other hand, the use of multiple preset iteration arrays and corresponding priorities can quickly respond to changes in flow and signal-to-noise ratio, and adjust the decoding strategy in time, which is conducive to improving the flexibility and adaptability of the above decoding method; on the other hand, the target iteration array is determined based on the preset iteration array and mapping relationship, without the need for complex calculations, thereby simplifying the decoder design, reducing the hardware resource requirements and power consumption of the decoder, and making the decoding resources suitable for real-time processing scenarios.

[0009] In an implementation of the first aspect, the determining the inter-group priority of multiple preset iteration number groups based on the beam signal-to-noise ratio and a preset mapping relationship includes: determining a signal-to-noise ratio difference index based on the beam signal-to-noise ratio; wherein the signal-to-noise ratio difference index is used to characterize the degree of signal-to-noise ratio dispersion of all the beams; determining the inter-group priority of multiple preset iteration number groups based on the signal-to-noise ratio difference index and the preset mapping relationship; wherein the preset iteration number array includes the number of decoding iterations of each of the beams; the preset mapping relationship is used to characterize the correspondence between the signal-to-noise ratio difference index and the inter-group priority of multiple preset iteration number groups; the larger the signal-to-noise ratio difference index, the higher the inter-group priority of the preset iteration number group with low complexity; the smaller the signal-to-noise ratio difference index, the higher the inter-group priority of the preset iteration number array with high complexity; the complexity of the preset iteration number group is determined based on the sum of the decoding iteration numbers in the preset iteration number array.

[0010] In the implementation process of the above scheme, by introducing the signal-to-noise ratio difference index, the signal-to-noise ratio dispersion of different beams can be measured more accurately, which helps to reasonably determine the priority of different preset iteration number groups based on the actual signal-to-noise ratio distribution of each beam, thereby achieving more accurate resource allocation. On the other hand, the above scheme can flexibly adjust the priority order according to the differences in beam signal-to-noise ratios in different scenarios, so that the above decoding method can adapt to a variety of different communication environments and changes in beam characteristics, thereby enhancing the flexibility and adaptability of the above decoding method when facing complex and changeable practical applications. On the other hand, determining the priority based on the signal-to-noise ratio difference index can ensure that the most suitable combination of decoding iteration numbers is selected under different signal-to-noise ratio differences, which is conducive to improving the decoding performance of the above decoding method.

[0011] In an implementation of the first aspect, determining a signal-to-noise ratio difference index based on the beam signal-to-noise ratio of each beam includes calculating a difference between a maximum signal-to-noise ratio and a minimum signal-to-noise ratio in the beam signal-to-noise ratio to determine the signal-to-noise ratio difference index.

[0012] In the implementation of the above scheme, the difference between the maximum and minimum signal-to-noise ratios is used as the signal-to-noise ratio difference index. On the one hand, the difference between the maximum and minimum values ​​is a very intuitive and easy-to-calculate indicator. It can be obtained by simply traversing the signal-to-noise ratios of the beams once. The calculation is simple and efficient. In dynamic resource allocation scenarios, rapid calculation of the signal-to-noise ratio difference index helps to timely update the resource allocation strategy, which in turn helps to improve the real-time performance of the above decoding method. On the other hand, the difference between the maximum and minimum values ​​can directly reflect the extreme differences in the signal-to-noise ratios in all beams, and can effectively characterize the signal-to-noise ratio distribution characteristics between beams. Based on the signal-to-noise ratio difference index, decoding resources can be more reasonably allocated, thereby improving the rationality of decoding resource allocation.

[0013] In an implementation of the first aspect, the inter-group priorities of multiple preset iteration number groups are determined based on the beam signal-to-noise ratio and a preset mapping relationship, including: obtaining an inter-group priority lookup table; wherein a preset mapping relationship is stored in the inter-group priority lookup table; the preset mapping relationship is used to characterize the correspondence between the beam signal-to-noise ratio and the inter-group priorities of multiple preset iteration number groups; based on the beam signal-to-noise ratio, searching the inter-group priority lookup table for the multiple preset iteration number groups corresponding to the beam signal-to-noise ratio.

[0014] During the implementation of the above scheme, the priority order of different preset iteration groups can be quickly determined through a predefined inter-group priority lookup table. This method avoids complex real-time calculations and directly obtains the optimal iteration combination by looking up the table, thereby improving the efficiency of resource allocation. On the other hand, the table lookup method can complete the priority determination in a very short time, so that the above decoding method can quickly adjust the decoding strategy according to the change of the beam signal-to-noise ratio, so as to better adapt to the needs of the real-time communication environment. On the other hand, the implementation of the table lookup method is relatively simple. It only needs to pre-build the inter-group priority lookup table and store it. In the subsequent maintenance process, if the priority strategy needs to be adjusted, it only needs to update the lookup table without modifying a large amount of core algorithm code, which reduces maintenance costs.

[0015] In an implementation of the first aspect, inputting the beam data into a decoding core so that the decoding core decodes the beam data with the target number of decoding iterations includes: obtaining beam priorities of the plurality of beams; wherein the beam priorities are used to characterize the degree to which the beams need to be decoded first; based on the beam priorities, performing round-robin scheduling on the beam data, and inputting the beam data into the decoding core in turn, so that the decoding core decodes the beam data with the target number of decoding iterations.

[0016] In the implementation process of the above scheme, by assigning priorities to different beams, it can be ensured that high-priority beams obtain decoding resources first, thereby ensuring that the data of these key beams is processed first, which helps to optimize the allocation of decoding resources and avoid resource competition and uneven distribution problems; on the other hand, the priority scheduling mechanism can quickly identify and process the data of high-priority beams, reduce the waiting time for data processing, and significantly improve the processing efficiency of the decoding core, so that the decoding core can operate at a higher throughput, especially in the case of limited resources, and maximize the use of limited decoding resources; on the other hand, priority scheduling can ensure that the data of high-priority beams is quickly processed and transmitted, thereby reducing latency, improving the response speed of the above decoding method, and enhancing user experience.

[0017] In an implementation of the first aspect, the beam data is configured with a beam identifier, and the method further includes: based on the beam identifier, storing the beam data and the decoded data decoded by the decoding core in a cache corresponding to the beam identifier.

[0018] In the implementation of the above scheme, efficient data management can be achieved by configuring a unique beam identifier for each beam and storing the decoded data in the corresponding cache. This mechanism makes data storage and retrieval more orderly and efficient, avoiding the problem of data confusion or erroneous storage; on the other hand, in the subsequent data processing process, the decoded data of a specific beam can be quickly located through the beam identifier, which is conducive to improving the processing efficiency of the above decoding method; on the other hand, the data of different beams are stored separately in their respective caches, making the data organization clearer and more organized, which not only helps to improve the maintainability and scalability of the system, but also facilitates the separate management and optimization of data of different beams.

[0019] In an implementation manner of the first aspect, the method further includes: configuring a beam identifier for the beam data based on a source network element of the beam data and / or a generation stage of the beam data.

[0020] During the implementation of the above scheme, by incorporating the source network element and generation stage information into the beam identifier, the beam data and its corresponding decoded data can be quickly traced, thereby achieving accurate management of the beam data and decoded data; on the other hand, according to the source and stage information in the identifier, different beam data can be stored in corresponding cache areas respectively, so that the above decoding method can be applicable to scenarios of multi-beam and multi-task parallel processing, which is conducive to improving the adaptability of the above decoding method.

[0021] In an implementation of the first aspect, before storing the decoded data in the corresponding cache, the method further includes: verifying the decoded data; and storing the decoded data in the corresponding cache after the verification passes.

[0022] During the implementation of the above scheme, by storing the decoded data in the corresponding cache only after verification, the correctness and integrity of the data in the cache are effectively ensured, and erroneous data is prevented from entering the subsequent processing flow, thereby improving the data quality and reliability of the entire system; on the other hand, it can prevent erroneous data from occupying cache space, so that the cache can more efficiently store valid decoded data, which helps to improve the utilization of storage resources and reduce unnecessary storage overhead; on the other hand, since the erroneous data is intercepted, it will not interfere with subsequent data processing and analysis, thereby reducing the risk of failure caused by erroneous data and enhancing the stability and performance of the above decoding method.

[0023] (In an implementation of the first aspect, the method further includes: determining a remaining flow of the decoding core when verification fails; wherein the remaining flow is used to represent a difference between the supplied flow of the decoding core and the required flow of the target preset iteration number group; determining a number of incremental decoding iterations for the decoding data based on the remaining flow of the decoding core; inputting the decoding data into the decoding core so that the decoding core decodes the decoding data with the number of incremental decoding iterations to obtain incremental decoding data; verifying the incremental decoding data; and storing the incremental decoding data in the corresponding cache after the verification passes.

[0024] During the implementation of the above scheme, by using the remaining traffic of the decoding core to perform incremental decoding iterations after the decoding data verification fails, the probability of successful decoding is increased, thereby ensuring the accuracy and reliability of the data; on the other hand, it can fully utilize the remaining traffic of the decoding core, avoid waste of resources, make more full use of the processing capacity of the decoding core, and improve the overall resource utilization efficiency; on the other hand, the number of decoding iterations is dynamically increased according to the remaining traffic of the decoding core, so that the above decoding method can flexibly respond to different decoding requirements and traffic changes, thereby enhancing the adaptability and flexibility of the above decoding method.

[0025] In an implementation manner of the first aspect, the method further includes: when the number of incremental decoding iterations is zero, or when verification of the incremental decoding data fails, requesting retransmission of the corresponding beam data.

[0026] During the implementation of the above scheme, when the number of incremental decoding iterations reaches zero or the verification fails, retransmission is requested to ensure the accuracy and integrity of the final data and avoid the propagation of erroneous data. On the other hand, through an effective error recovery mechanism, the instability factors caused by continuous error handling are reduced, and the robustness of the above decoding method in complex environments is improved.

[0027] In a second aspect, an embodiment of the present application provides a decoder, comprising: a beam data acquisition module, a target decoding iteration number determination module, a channel decision module, and a decoding core connected in sequence, wherein: The beam data acquisition module is used to acquire beam data of multiple beams within a preset time period and the beam flow and beam signal-to-noise ratio of the beam data within the preset time period; The target decoding iteration number determination module is configured to determine a target decoding iteration number of the beam data of the plurality of beams within the preset time period based on the beam flow rate and the beam signal-to-noise ratio; The channel decision module is configured to input the beam data into a decoding core, so that the decoding core decodes the beam data with the target number of decoding iterations; The decoding core is used to obtain the beam data sent by the channel decision module and decode the beam data according to the target decoding iteration number corresponding to the beam data.

[0028] In a third aspect, an embodiment of the present application provides an electronic device comprising: a processor, a memory, and a communication bus, wherein the processor and the memory communicate with each other through the communication bus; the memory stores computer program instructions that can be executed by the processor, and when the computer program instructions are read and run by the processor, the method provided in the first aspect or any possible implementation of the first aspect is executed.

[0029] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, on which computer program instructions are stored. When the computer program instructions are read and run by a processor, the method provided by the first aspect or any possible implementation of the first aspect is executed.

[0030] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, it implements the method provided by the first aspect or any possible implementation of the first aspect.

[0031] Other features and advantages of the present application will be described in the following description and, in part, will become apparent from the description or be understood by practicing the embodiments of the present application. The objectives and other advantages of the present application can be achieved and obtained through the structures particularly pointed out in the written description, claims, and drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0032] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments of the present application. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without creative work.

[0033] Figure 1 A schematic diagram of the structure of a multi-beam mobile satellite communication system provided in an embodiment of the present application; Figure 2 A flowchart of a decoding method provided in an embodiment of the present application; Figure 3 A flowchart illustrating a decoding method according to an embodiment of the present application for determining a target number of decoding iterations based on beam flow and beam signal-to-noise ratio; Figure 4 A schematic diagram of the structure of a decoder in a certain application scenario provided in an embodiment of the present application; Figure 5 A schematic diagram of the working principle of a decoder in a certain application scenario provided in an embodiment of the present application; Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0034] The following will describe the technical solutions in the embodiments of the present application in conjunction with the accompanying drawings. The following embodiments are only used to more clearly illustrate the technical solutions of the present application and are therefore only examples and cannot be used to limit the scope of protection of the present application.

[0035] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application belongs; the terms used herein are only for the purpose of describing specific embodiments and are not intended to limit this application; the terms "including" and "having" and any variations thereof in the specification and claims of this application and the above-mentioned figure descriptions are intended to cover non-exclusive inclusions.

[0036] References herein to "embodiments" mean that a particular feature, structure, or characteristic described in connection with the embodiments may be included in at least one embodiment of the present application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute an independent or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0037] Currently, the number of decoding iterations performed by the decoding core for each beam's data is generally determined by preset parameters and is unrelated to the beam's signal-to-noise ratio (SNR) or throughput. This situation arises because, in early communication system designs, the decoding core's resource allocation was fixed, likely to simplify system design and implementation. Given the current state of technology, dynamically adjusting decoding resources can present significant technical challenges, including real-time performance and complexity. Therefore, adopting a fixed resource allocation approach can ensure system stability and reliability to a certain extent. Furthermore, dynamic adjustment of decoding resources requires real-time monitoring of parameters such as beam SNR and throughput, which requires additional hardware support and complex control logic. Related technologies may lack effective mechanisms for acquiring these parameters in real time and making rapid dynamic adjustments.

[0038] Therefore, in related technologies, resource allocation (such as the number of iterations) for the decoding core is determined by preset parameters. These parameters are fixed during system design or initialization and do not change during the decoding process. This fixed resource allocation method cannot be dynamically adjusted based on the beam's signal-to-noise ratio or traffic. For example, regardless of the beam's signal-to-noise ratio, the decoding core performs eight iterative decoding iterations for each beam, ignoring differences in signal-to-noise ratio, traffic, and other aspects between beams, and their impact on decoding performance and resource requirements. Since the number of decoding iterations cannot be dynamically adjusted based on the beam's signal-to-noise ratio, the decoding performance of low-SNR beams cannot be optimized, resulting in a higher bit error rate (BER) for the decoding scheme. Meanwhile, the number of decoding iterations for high-SNR beams is the same as for low-SNR beams, resulting in wasted resources.

[0039] In view of this, an embodiment of the present application provides a decoding method, which adaptively adjusts the number of decoding iterations once in each preset time period. The number of decoding iterations can be optimized according to the actual needs of different beams, making the decoding process more efficient, avoiding the problem of over- or under-decoding that may be caused by a fixed number of iterations, and helping to reduce the average decoding delay and improve decoding efficiency. On the other hand, by dynamically determining the number of decoding iterations based on beam flow and signal-to-noise ratio, decoding resources can be allocated more accurately, thereby improving the utilization of decoding resources. On the other hand, for beams with low signal-to-noise ratios, appropriately increasing the number of decoding iterations can better recover the signal, reduce the bit error rate, and thus improve the decoding quality. At the same time, for beams with high signal-to-noise ratios, reducing unnecessary iterations will not affect their decoding performance, ensuring that the decoding quality of different beams can be well guaranteed. On the other hand, the above scheme can adaptively adjust the decoding strategy according to changes in the flow and signal-to-noise ratio of beam data, making the above decoding method more adaptable.

[0040] Before introducing the above decoding method, its application scenario is introduced first: The decoding method can be applied to the receiving end of non-terrestrial network (NTN) systems such as satellite communication systems and high altitude platform station (HAPS) communications. Non-terrestrial network systems include integrated communication and navigation (ICaN) systems and global navigation satellite systems (GNSS).

[0041] Satellite communication systems can be integrated with traditional mobile communication systems. For example, the mobile communication systems may include fourth-generation (4G) communication systems (e.g., long-term evolution (LTE) systems), worldwide interoperability for microwave access (WiMAX) communication systems, fifth-generation (5G) communication systems (e.g., new radio (NR) systems), and future mobile communication systems.

[0042] See also Figure 1 , Figure 1 Schematic diagram of a multi-beam mobile satellite communication system applicable to an embodiment of the present application. Figure 1As shown, the satellite provides communication services to the terminal device through multiple beams. The satellite in this scenario is a non-geostationary earth orbit (NGEO) satellite, and the satellite is connected to the core network equipment. The satellite uses multiple beams to cover the service area, and different beams can communicate through one or more of time division, frequency division and space division. The satellite provides communication and navigation services to the terminal device by broadcasting communication signals and navigation signals. The satellite mentioned in the embodiments of the present application may also be a satellite base station, or a network-side device carried on a satellite.

[0043] For example, satellite communication systems can be divided into the following three types according to the orbital altitude of the satellite: geostationary earth orbit (GEO) satellite communication system, also known as synchronous orbit satellite communication system; medium earth orbit (MEO) satellite communication system and low earth orbit (LEO) satellite communication system. Among them, the orbital altitude of GEO satellite is 35786km. Its main advantage is that it can remain stationary relative to the ground and provide a large coverage area. However, GEO satellite communication also has obvious disadvantages: GEO satellite orbit is far away from the earth, and the free space propagation loss is large, resulting in a tight communication link budget. In addition, in order to increase the transmission or reception gain, the satellite needs to be equipped with a larger diameter antenna; GEO communication transmission delay is large, which can reach a round-trip delay of about 500ms, which cannot meet the needs of low-latency services; GEO orbital resources are also relatively tight, the launch cost is high, and it cannot provide coverage for the earth's polar regions. MEO satellites orbit at altitudes between 2,000 and 35,786 km. Their advantage is that they can achieve global coverage with a relatively small number of satellites. However, their orbits are higher than LEO, and communication transmission latency is still higher than that of LEO satellites. LEO satellites, on the other hand, orbit at altitudes between 300 and 2,000 km. LEO satellites are lower than MEO and GEO orbits, offering advantages such as lower data transmission latency, lower transmission loss, and lower launch costs. Of course, in some specific application scenarios, LEO satellites can be replaced with GEO or MEO satellites, or even a combination of multiple types of satellites.

[0044] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0045] See Figure 2 , an embodiment of the present application provides a decoding method, comprising: Step S110: Obtain beam data of multiple beams within a preset time period, as well as beam flow and beam signal-to-noise ratio of the beam data within the preset time period.

[0046] Exemplarily, the above step S110 can receive beam data of multiple beams through a beam input interface. The beam input interface is generally an entrance for receiving multiple beam data in a communication system, usually connected to an antenna array or an optical fiber receiving module, and is responsible for converting the received beam data into an electrical signal or digital signal suitable for subsequent processing.

[0047] Furthermore, the acquired beam data can be soft bit data. In digital communication systems, soft bit data refers to data received by the receiver from the channel that represents a reliability measure of the bit information sent by the transmitter. Soft bit data quantifies the statistical characteristics of the received signal, indicating the probability that each received bit is 0 or 1. Unlike hard bit data (which directly determines whether it is 0 or 1), soft bit data retains the analog information of the received signal and provides bit reliability information. During channel decoding, soft bit data can provide more information, helping to improve decoding accuracy and performance. This reliability information is particularly crucial for correcting transmission errors under low signal-to-noise ratio conditions. The Log-Likelihood Ratio (LLR) is a common representation of soft bit data and is defined as the logarithmic probability ratio of a bit in the received signal to be 0 or 1. The LLR value can be a continuous real number or quantized to a certain precision (e.g., 8 or 16 bits). Theoretically, the LLR value ranges from negative infinity to positive infinity, but in practice, it is typically constrained to a reasonable range. To facilitate digital signal processing, soft bit data is usually quantized to a certain precision, such as 8 bits or 16 bits. The higher the quantization precision, the more accurate the reliability information that the soft bit data can represent.

[0048] During a preset period, beam data from multiple beams may have different beam signal-to-noise ratios. The main reasons for these differences include: (1) Beams pointing in different directions: In a multi-beam system, different beams point to different areas of the sky. The channel conditions in these areas may be different, resulting in differences in signal-to-noise ratios. For example, some beams may point in directions with more interference sources or more obstacles in the signal propagation path, resulting in a lower signal-to-noise ratio for that beam; while other beams may point in directions with smoother signal propagation and a higher signal-to-noise ratio.

[0049] (2) Different propagation environments in beam coverage areas: Areas covered by different beams may have different propagation environments, such as atmospheric conditions and topography. On rainy or foggy days, atmospheric losses in some beam coverage areas may be greater, resulting in a decrease in the signal-to-noise ratio. Reflections and scattering from buildings in mountainous areas or cities may cause multipath effects on signals in some beams, affecting the signal-to-noise ratio.

[0050] (3) Different frequency configurations of beams: If different beams use different frequencies for transmission, they will be subject to different frequency-selective fading and interference. Some frequencies may be more susceptible to certain types of interference or experience more severe fading under certain environmental conditions, resulting in a different signal-to-noise ratio for the corresponding beam compared to other beams.

[0051] (4) Different power allocation of beams: A multi-beam system may allocate the transmit power of different beams based on different service requirements or channel conditions. A beam with higher power may have a better signal-to-noise ratio at the receiving end, while a beam with lower power may have a relatively lower signal-to-noise ratio.

[0052] (5) Mutual interference between beams: In a multi-beam system, there may be some mutual interference between different beams, such as sidelobe interference. Some beams may be subject to strong interference from adjacent beams, resulting in a lower signal-to-noise ratio; while other beams are subject to relatively less interference and have a higher signal-to-noise ratio.

[0053] After acquiring the beam data in step S110, the beam data can be cached in the LLR data cache module corresponding to the beam. The LLR data cache module is a buffer for storing received LLR data and is typically implemented as on-chip memory (such as BRAM or URAM) in an FPGA or ASIC. The primary function of the LLR data cache module is to temporarily store received beam data so that subsequent modules can read and process this data as needed.

[0054] The beam signal-to-noise ratio (SNR) is the ratio of signal power to noise power, typically expressed in decibels (dB). A higher SNR indicates better signal quality and higher data transmission reliability. During the decoding process, SNR information can be used to dynamically adjust the decoding resource allocation strategy to optimize decoding performance. For example, the beam SNR can be obtained as follows: At the receiving end, the beam SNR is typically estimated by a signal processing module located at the front end of the decoding core (such as the receiving antenna, low-noise amplifier, and channel estimation module). The electronic device performing the above decoding method receives the SNR data transmitted by the front-end module and synchronizes it with the corresponding beam data. The received SNR data is then stored for subsequent processing.

[0055] Exemplarily, step S110 may obtain beam flow rates within a preset time period by counting the flow rate (i.e., the number of input data requiring decoding) for each beam within a 125 μs time window, and refreshing the statistics every 125 μs. For example, beam data from a particular beam input into its corresponding LLR data cache module may be received, and the amount of data for that beam may be counted. During the counting process, a built-in timer may be used to limit the time range for flow statistics, with each 125 μs window being a time window. At the end of each time window, the flow rate for that beam may be calculated based on the count results.

[0056] In addition, the above-mentioned preset time period can also be regarded as an adjustment period for the above-mentioned decoding method to dynamically adjust the number of decoding iterations. The number of decoding iterations of the beam data received within the preset time period is dynamically adjusted every preset time period, so as to reasonably allocate decoding core resources.

[0057] Step S120: Determine a target number of decoding iterations for beam data of multiple beams within a preset time period based on the beam throughput and the beam signal-to-noise ratio.

[0058] Exemplarily, the target number of decoding iterations can be obtained in step S120 in at least the following ways: The first implementation method: determining the target number of decoding iterations based on a machine learning algorithm; Machine learning algorithms such as neural networks, decision trees, and support vector machines, among which: The neural network approach to determining the target number of decoding iterations involves training the neural network using beam flow and beam signal-to-noise ratio as input features and the target number of decoding iterations as output labels. The trained neural network can predict the target number of decoding iterations based on beam flow and beam signal-to-noise ratio.

[0059] The decision tree approach to determining the target number of decoding iterations involves using beam flow and signal-to-noise ratio as input features and the target number of decoding iterations as output. The decision tree learns patterns in historical data to determine the optimal number of decoding iterations for different combinations of beam flow and beam signal-to-noise ratio.

[0060] The solution for determining the target number of decoding iterations using a support vector machine (SVM) involves using beam flow and beam signal-to-noise ratio as input features and the target number of decoding iterations as output for classification or regression prediction. The SVM can find the optimal hyperplane, mapping different feature combinations to corresponding numbers of decoding iterations.

[0061] The second implementation method: determining the target number of decoding iterations based on an optimization algorithm; Optimization algorithms include genetic algorithms, simulated annealing algorithms, particle swarm optimization algorithms, etc., among which: The scheme for determining the target number of decoding iterations using a genetic algorithm mainly includes: using beam flow and beam signal-to-noise ratio as constraints, decoding performance (such as bit error rate, decoding delay, etc.) as the objective function, and searching for the optimal number of decoding iterations through a genetic algorithm.

[0062] The scheme of using simulated annealing algorithm to determine the target number of decoding iterations mainly includes: taking beam flow and beam signal-to-noise ratio as state variables, and finding the optimal number of decoding iterations through random search and step-by-step optimization of simulated annealing algorithm.

[0063] The scheme of using particle swarm optimization algorithm to determine the target number of decoding iterations mainly includes: taking beam flow and beam signal-to-noise ratio as the dimensions of particles, and searching for the optimal number of decoding iterations through the group intelligence of particle swarm.

[0064] A third implementation method: using a preset mapping relationship to determine the target number of decoding iterations; See Figure 3 Optionally, the above step S120 may include: Step S121: Based on the beam signal-to-noise ratio and a preset mapping relationship, determine the inter-group priority of multiple preset iteration number groups; wherein the preset iteration number array includes the number of decoding iterations for each beam; the multiple preset iteration number arrays are respectively applicable to beam signal-to-noise ratios in different intervals; the preset mapping relationship is used to characterize the correspondence between the beam signal-to-noise ratio and the inter-group priority of multiple preset iteration number groups.

[0065] Exemplarily, the above-mentioned preset iteration number array can be determined by at least one or more of the following methods: (1) Determination based on experience: Based on the experience gained from past research or practice, the optimal number of decoding iterations for each beam can be determined by parameters such as beam signal-to-noise ratio and beam flow, thereby determining the preset iteration array.

[0066] (2) Setting based on expert experience: Drawing on the experience of experts in the field, determine the optimal number of decoding iterations under different beam signal-to-noise ratio and beam flow combinations, and thus determine the preset iteration array.

[0067] (3) Machine learning prediction: Use machine learning algorithms (such as neural networks, decision trees, etc.) to learn historical data. After training the model, input the beam signal-to-noise ratio and beam flow rate to predict the optimal number of decoding iterations for each beam, thereby determining the preset iteration array.

[0068] (4) Determine through simulation: By establishing a simulation model of the decoder, simulating the decoding process of beams with different beam flows and different beam signal-to-noise ratios under different working conditions, and determining the optimal number of decoding iterations for different beam signal-to-noise ratios and different beam flows based on the simulation results, the preset iteration number array is determined.

[0069] In addition, when setting the preset iteration array, you can also consider the following factors: (1) Beam signal-to-noise ratio: Beams with low signal-to-noise ratios are difficult to decode and may require more iterations to ensure decoding quality, while beams with high signal-to-noise ratios can appropriately reduce the number of iterations.

[0070] (2) Beam traffic: For beams with large traffic, it may be necessary to reduce the number of iterations to reduce the demand for decoding resources and ensure the correctness of the data. For beams with small traffic, the number of iterations can be appropriately increased to make full use of decoding resources.

[0071] (3) Decoding core resource limitation: The processing power and resources of the decoding core are limited. It is necessary to consider how to reasonably allocate the number of iterations of each beam under limited resources to achieve the best overall decoding performance.

[0072] (4) Decoding delay requirements: In some scenarios with high real-time requirements, it is necessary to comprehensively consider the relationship between decoding delay and number of iterations to avoid excessive decoding delay caused by too many iterations.

[0073] (5) Service type: Different types of services have different requirements for data accuracy and latency. For example, voice and video services have high real-time requirements and can tolerate a certain degree of data loss, so the number of iterations can be appropriately reduced. However, text and command services have high accuracy requirements and the number of iterations can be appropriately increased.

[0074] It is understood that the purpose of setting inter-group priorities for different preset iteration order arrays is to optimize the efficiency of channel coding resource allocation in satellite communication systems. Specifically, the goal of setting inter-group priorities is to maximize performance based on the differences between different channel states within the constraints of limited physical layer resources. When the differences between channel states are small, more aggressive high-complexity decoding is used to achieve maximum throughput. When the differences between channels are large, more conservative low-complexity processing combined with a retransmission mechanism is used to ensure communication reliability.

[0075] The complexity of each of the preset iteration count groups can be determined by the sum of the decoding iteration counts in the preset iteration count arrays. Assume there are two preset iteration count arrays, Combination 1 and Combination 2: In Combination 1, the decoding iteration count for beam A is 2, for beam B is 3, and for beam C is 5. In Combination 2, the decoding iteration count for beam A is 5, for beam B is 7, and for beam C is 10.

[0076] For combination 1, the total number of decoding iterations for each beam can be summed: 2 + 3 + 5 = 10. For combination 2, the total number of decoding iterations for each beam is 5 + 7 + 10 = 22. Comparing the total number of iterations for these two combinations, we can see that combination 2 has significantly more iterations than combination 1. This means that combination 2 has a higher complexity. This is because a higher total number of iterations requires more computational effort for the decoder, consuming more resources and time. Therefore, combination 2 has a higher complexity, while combination 1 has a lower complexity.

[0077] The steps for determining priorities between groups may include: (1) Classification based on channel state differences: Evaluate and classify different channel states to determine whether the state differences between channels are small or large. For example, the degree of channel state differences can be determined by analyzing channel parameters such as the signal-to-noise ratio (SNR).

[0078] (2) Determine the correspondence between priority levels and decoding strategies: When the state differences between channels are small, setting a higher inter-group priority corresponds to a more aggressive, high-complexity decoding strategy. This means that when channel conditions are relatively good and the differences are small, decoding combinations requiring more iterations are prioritized to fully utilize the channel capacity and achieve greater data throughput.

[0079] When channel states vary widely, setting a lower inter-group priority corresponds to a more conservative, low-complexity processing strategy. In this scenario, due to the wide variation in channel conditions, decoding combinations requiring fewer iterations are prioritized to ensure communication reliability, and retransmission mechanisms are used to mitigate potential errors.

[0080] (3) Constructing a mapping relationship between channel state differences and inter-group priorities: Constructing a mapping relationship between inter-group priority levels and corresponding channel state differences. When it is necessary to determine the inter-group priorities of a group with a preset number of iterations, the inter-group priorities can be determined directly based on the mapping relationship according to the channel state.

[0081] Optionally, the above-mentioned step 121 may include: obtaining a signal-to-noise ratio difference index based on the beam signal-to-noise ratio; wherein the signal-to-noise ratio difference index is used to characterize the degree of signal-to-noise ratio dispersion of all beams; obtaining the inter-group priority of multiple preset iteration number groups based on the signal-to-noise ratio difference index and a preset mapping relationship; wherein the preset iteration number array includes the number of decoding iterations for each beam; the preset mapping relationship is used to characterize the correspondence between the signal-to-noise ratio difference index and the inter-group priority of multiple preset iteration number groups; the larger the signal-to-noise ratio difference index, the higher the inter-group priority of the preset iteration number group with low complexity; the smaller the signal-to-noise ratio difference index, the higher the inter-group priority of the preset iteration number array with high complexity; the complexity of the preset iteration number group is determined based on the sum of the decoding iteration numbers in the preset iteration number array.

[0082] By introducing the signal-to-noise ratio difference index, the above scheme can more accurately measure the degree of signal-to-noise ratio dispersion of different beams, which helps to reasonably determine the inter-group priority of different preset iteration number groups based on the actual signal-to-noise ratio distribution of each beam, thereby achieving more accurate resource allocation; on the other hand, the above scheme can flexibly adjust the priority order according to the differences in beam signal-to-noise ratios in different scenarios, so that the above decoding method can adapt to a variety of different communication environments and changes in beam characteristics, thereby enhancing the flexibility and adaptability of the above decoding method when facing complex and changeable practical applications; on the other hand, determining the priority based on the signal-to-noise ratio difference index can ensure that the most suitable combination of decoding iteration numbers is selected under different signal-to-noise ratio differences, which is conducive to improving the decoding performance of the above decoding method.

[0083] The SNR difference metric is used to characterize the overall dispersion of the beam SNR across all beams, that is, the fluctuation range and degree of SNR variation between beams. It reflects the relative differences in signal quality between different beams and provides a key basis for resource allocation. The SNR difference metric can be implemented in at least the following ways: Implementation method 1: Use the difference between the maximum signal-to-noise ratio and the minimum signal-to-noise ratio as the signal-to-noise ratio difference indicator; Optionally, the step S120 may include calculating a difference between a maximum signal-to-noise ratio and a minimum signal-to-noise ratio in the beam signal-to-noise ratio to obtain a signal-to-noise ratio difference index.

[0084] In the implementation of the above scheme, the difference between the maximum and minimum signal-to-noise ratios is used as the signal-to-noise ratio difference index. On the one hand, the difference between the maximum and minimum values ​​is a very intuitive and easy-to-calculate indicator. It can be obtained by simply traversing the signal-to-noise ratios of the beams once. The calculation is simple and efficient. In dynamic resource allocation scenarios, rapid calculation of the signal-to-noise ratio difference index helps to timely update the resource allocation strategy, which in turn helps to improve the real-time performance of the above decoding method. On the other hand, the difference between the maximum and minimum values ​​can directly reflect the extreme differences in the signal-to-noise ratios in all beams, and can effectively characterize the signal-to-noise ratio distribution characteristics between beams. Based on the signal-to-noise ratio difference index, decoding resources can be more reasonably allocated, thereby improving the rationality of decoding resource allocation.

[0085] Implementation method 2: Use standard deviation as the signal-to-noise ratio difference indicator; The standard deviation measures the dispersion of beam SNR relative to the average SNR. Calculating the standard deviation involves first finding the average SNR for each beam, then calculating the square of the difference between each beam's SNR and the average, averaging the difference, and then taking the square root. A larger standard deviation indicates greater SNR variability and significant inter-beam signal quality differences; a smaller standard deviation indicates more concentrated SNRs and less variability.

[0086] Implementation method three: using variance as the signal-to-noise ratio difference indicator; The variance is the square of the standard deviation. The calculation steps are similar: first, find the average SNR of each beam, then square the difference between the average SNR and the average, and finally find the average. A larger variance indicates greater SNR variation between beams, indicating uneven beam signal quality. A smaller variance indicates closer SNRs between beams, indicating relatively balanced signal quality.

[0087] Implementation method 4: using the mean difference as the signal-to-noise ratio difference indicator; The average difference is the average of the absolute differences between the signal-to-noise ratio of each beam and its average value. The larger the average difference, the greater the difference in signal-to-noise ratio between beams, and vice versa.

[0088] Implementation method five: using multiple parameters to comprehensively calculate the signal-to-noise ratio difference index; Select multiple indicators that reflect the difference in signal-to-noise ratio between beams, such as range, standard deviation, and mean difference. Based on the actual application scenario and requirements, use methods such as expert experience, principal component analysis, and hierarchical analysis to determine the weight of each indicator. Based on the weight of each parameter, perform a weighted calculation to obtain the final signal-to-noise ratio difference indicator.

[0089] Optionally, the above-mentioned step S121 may include: obtaining an inter-group priority lookup table; wherein a preset mapping relationship is stored in the inter-group priority lookup table; the preset mapping relationship is used to characterize the correspondence between the beam signal-to-noise ratio and the inter-group priority of multiple preset iteration number groups; based on the beam signal-to-noise ratio, searching the inter-group priority of multiple preset iteration number groups corresponding to the beam signal-to-noise ratio in the inter-group priority lookup table.

[0090] A lookup table (LUT) is a data structure used to store mappings between data objects. It allows for quick lookup of corresponding output values ​​(keys) based on an input value (key). LUTs are typically implemented as arrays, dictionaries, or hash tables. Their core purpose is to accelerate data lookup and processing by storing predefined mappings.

[0091] It is understandable that the above-mentioned preset mapping relationship can also be stored in a database, configuration file, memory data structure, etc. For the implementation scheme of each storage method, please refer to the relevant technology, and the embodiments of this application will not be repeated.

[0092] The above scheme can quickly determine the priority order of different preset iteration groups through a pre-defined inter-group priority lookup table. This method avoids complex real-time calculations and can directly obtain the optimal iteration combination by looking up the table, thereby improving the efficiency of resource allocation; on the other hand, the table lookup method can complete the priority determination in a very short time, so that the above decoding method can quickly adjust the decoding strategy according to the change of the beam signal-to-noise ratio, so as to better adapt to the needs of the real-time communication environment; on the other hand, the implementation of the table lookup method is relatively simple. It only needs to pre-build the inter-group priority lookup table and store it. In the subsequent maintenance process, if the priority strategy needs to be adjusted, it only needs to update the lookup table without modifying a large amount of core algorithm code, which reduces maintenance costs.

[0093] Step S122: Determine the required flow corresponding to each preset iteration array based on the beam flow; wherein the required flow is used to represent the total flow required to complete the number of decoding iterations corresponding to each beam in the preset iteration array.

[0094] Exemplarily, the required flow corresponding to each preset iteration array can be determined by the following steps: first, calculate the flow required for the corresponding number of iterations of each beam data, and the calculation method is: multiply the input flow of the beam data by the number of iterations; second, calculate the sum of the required flows of all beams to determine the required flow corresponding to the preset iteration array.

[0095] Step S123: Based on the demand flow and the supply flow of the decoding core, determine the target preset iteration array; wherein the supply flow is used to characterize the total flow that the decoding core can provide within the preset time period; the target preset iteration array is the preset iteration array with the highest inter-group priority among the preset iteration arrays whose demand flow is not greater than the supply flow.

[0096] Exemplarily, the supply flow of the above-mentioned decoding core can be obtained based on the hardware performance indicators of the decoding core, for example: by obtaining the hardware design parameters of the decoding core, such as clock frequency, maximum throughput, etc., and then determining the supply flow that the decoding core can provide within a preset time period based on the hardware performance indicators.

[0097] Step S124: Determine a target number of decoding iterations for beam data of the plurality of beams within a preset time period based on a target preset iteration number array.

[0098] The above scheme comprehensively considers the beam signal-to-noise ratio and beam flow, dynamically selects the optimal combination of iterations, and different beams can obtain appropriate decoding resources, thereby improving the overall decoding quality and efficiency; on the other hand, the optimal combination of iterations is matched according to the demand flow and supply flow to avoid waste or shortage of resources, and realize accurate allocation of decoding core resources, so that the decoding core can achieve maximum processing capacity under limited resources and improve decoding throughput; on the other hand, the use of multiple preset iteration arrays and corresponding priorities can quickly respond to changes in flow and signal-to-noise ratio, and adjust the decoding strategy in time, which is conducive to improving the flexibility and adaptability of the above decoding method; on the other hand, the target iteration array is determined based on the preset iteration array and mapping relationship, without the need for complex calculations, thereby simplifying the decoder design, reducing the decoder's hardware resource requirements and power consumption, and making the decoding resources suitable for real-time processing scenarios.

[0099] Step S130: inputting the beam data into the decoding core, so that the decoding core decodes the beam data with a target number of decoding iterations.

[0100] Optionally, the above-mentioned step S130 may include: obtaining beam priorities of multiple beams; wherein the beam priority is used to characterize the degree to which the beam needs to be decoded first; based on the beam priority, performing polling scheduling on the beam data, and inputting the beam data into the decoding core in turn, so that the decoding core decodes the beam data with a target number of decoding iterations.

[0101] For example, the aforementioned beam priorities can be assigned based on the importance and urgency of the beam. Beams with higher priorities will be prioritized over lower-priority beams in resource allocation and processing order to ensure that critical data is processed first. For example, if a beam is expected to be more reliable, the corresponding beam will be assigned a higher priority. High-priority beams will be prioritized for decoding, reducing data processing delays. Beam priorities are typically configured by system administrators based on actual application requirements, and can also be dynamically adjusted based on the actual operating status of the beams using specific algorithms.

[0102] The above scheme can ensure that high-priority beams obtain decoding resources first by assigning priorities to different beams, thereby ensuring that the data of these key beams is processed first, which helps to optimize the allocation of decoding resources and avoid resource competition and uneven distribution problems; on the other hand, the priority scheduling mechanism can quickly identify and process the data of high-priority beams, reduce the waiting time for data processing, and significantly improve the processing efficiency of the decoding core, so that the decoding core can operate at a higher throughput, especially in the case of limited resources, and maximize the use of limited decoding resources; on the other hand, priority scheduling can ensure that the data of high-priority beams is quickly processed and transmitted, thereby reducing latency, improving the response speed of the above decoding method, and enhancing user experience.

[0103] Optionally, the beam data is configured with a beam identifier. The decoding method further includes: based on the beam identifier, storing the beam data and the decoded data decoded by the decoding core in a cache corresponding to the beam identifier.

[0104] The beam identifier is a label or tag used to uniquely identify each beam. It is used to distinguish different beams in a multi-beam communication system to ensure that the data of each beam can be correctly processed and managed. The beam identifier plays an important role in the entire communication and decoding process. The functions of the beam identifier may include: (1) Distinguishing different beams: In a multi-beam communication system, multiple beams may transmit data at the same time. The beam identifier is used to distinguish the data of these different beams to ensure that the data of each beam can be processed and managed independently. (2) Facilitating data storage and retrieval: When the decoded data needs to be stored, the beam identifier can be used as a storage index to store the data of different beams in the corresponding cache or storage unit. In addition, in addition to decoding data, after receiving the beam data, the corresponding beam data can also be stored in the corresponding cache based on the beam identifier assigned to the beam. When data needs to be retrieved, the beam identifier can be used to quickly locate the data of the corresponding beam, thereby improving data retrieval efficiency. (3) Error handling and feedback: When an error or anomaly is detected, the beam identifier can help the system quickly locate the problematic beam, facilitating error handling and feedback. For example, when data verification of a certain beam fails, error feedback information can be sent through the beam identifier to request retransmission or take other remedial measures.

[0105] Exemplarily, the above-mentioned beam identification can be implemented in the form of digital identification, character identification, combination identification of numbers and characters, etc.

[0106] The above scheme can achieve efficient data management by configuring a unique beam identifier for each beam and storing the decoded data in the corresponding cache. This mechanism makes data storage and retrieval more orderly and efficient, avoiding the problem of data confusion or erroneous storage; on the other hand, in the subsequent data processing process, the decoded data of a specific beam can be quickly located through the beam identifier, which is conducive to improving the processing efficiency of the above decoding method; on the other hand, the data of different beams are stored separately in their respective caches, making the data organization clearer and more organized, which not only helps to improve the maintainability and scalability of the system, but also facilitates the separate management and optimization of data of different beams.

[0107] Optionally, the above decoding method also includes: configuring a beam identifier for the beam data based on the source network element of the beam data and / or the generation stage of the beam data.

[0108] For example, the beam identifier can be designed as a structured identifier containing multiple fields. For example, the following fields are set in the structured identifier of the beam data: (1) Beam number field: used to distinguish different beams. For example, in a satellite communication system, each beam can be assigned a unique number, such as 001, 002, etc.

[0109] (2) Source NE field: used to identify the type of NE from which the beam data comes. For example, one or more characters can be used to represent different NE types, such as "SAT" for satellite, "GS" for ground station, "RLY" for repeater, etc.

[0110] (3) Generation stage field: used to identify the processing stage of the beam data. For example, short codes can be used to represent different stages, such as "FR" for front-end reception, "PP" for pre-processing, "DC" for data acquisition, and "EC" for pre-decoding.

[0111] (4) Timestamp field: used to record the time when the beam data is generated. It can be a relative time (such as the number of milliseconds from a certain start time) or an absolute time (such as a standard date and time format).

[0112] The above scheme can quickly trace the beam data and its corresponding decoded data by incorporating the source network element and generation stage information into the beam identifier, thereby realizing accurate management of the beam data and decoded data; on the other hand, according to the source and stage information in the identifier, different beam data can be stored in the corresponding cache area respectively, so that the above decoding method can be applied to multi-beam, multi-task parallel processing scenarios, which is conducive to improving the adaptability of the above decoding method.

[0113] Optionally, before storing the decoded data in the corresponding cache, the above decoding method may further include: verifying the decoded data; and storing the decoded data in the corresponding cache after the verification passes.

[0114] Exemplarily, the above solution can verify the decoded data output by the decoding core by at least one or more of the following methods: The first method: using cyclic redundancy check (CRC) to verify the decoded data; CRC is a checksum based on division and remainder. At the data transmitter, a CRC calculation is performed on the data to be transmitted, and the resulting remainder (the CRC checksum) is appended to the data before it is transmitted. At the receiver, the received data (including the original data and the CRC checksum) undergoes the same CRC calculation again, and the resulting remainder is compared with the received CRC checksum. If the two CRC calculation results match, the data transmission was error-free and can be considered correct, and the decoded data is output. If the two CRC calculation results disagree, it indicates an error during the data transmission or decoding process. In this case, the packet should be discarded to prevent the erroneous data from entering subsequent processing.

[0115] The second method: using Hamming Code to verify the decoded data; Hamming code is a linear error-correcting code that adds redundant bits to data to detect and correct single-bit errors. It does this by inserting parity bits between data bits to form a specific pattern, thereby verifying the data. At the decoder, the decoded data is subjected to Hamming code verification. If uncorrectable errors are detected (e.g., multiple errors exceeding the correction capability of the Hamming code), the data is deemed erroneous and discarded. If the error is within the correction range of the Hamming code, the error is automatically corrected and the correct data is output, improving data transmission reliability.

[0116] The third method: using parity check to verify the decoded data; Parity checking is a simple verification method that adds a parity bit after the data bits to ensure that the number of "1" bits in the entire data is odd or even. The receiving end performs the same parity check on the received data. If the parity matches the agreed parity, the data is considered correct; otherwise, the data is considered incorrect. If the parity check result is correct, the data is output normally. If the parity check result is incorrect, the data is discarded and needs to be retransmitted.

[0117] The fourth method: verifying the decoded data based on the forward error correction code (FEC); FEC is a coding method that adds redundant information at the transmitter. The receiver uses this redundant information to detect and correct errors. Common FEC codes include Reed-Solomon codes and Low-Density Parity-Check codes (LDPC). For LDPC codes, the decoding process determines whether the data is correct based on the parity check matrix. If the data passes the parity check within a specified number of decoding iterations, it is considered correct and output; otherwise, the data is considered undecodeable and discarded. Reed-Solomon codes detect and correct errors through polynomial calculations. If the number of errors is within the code's error correction capability, the errors are corrected and the correct data is output; otherwise, the data is discarded.

[0118] The fifth method: verifying the decoded data based on the content checksum; The sender performs a specific calculation (such as a summation or modulo operation) on the data to generate a checksum and appends it to the data before sending it. Upon receiving the data, the receiver performs the same calculation on the data and compares the result with the received checksum. If the calculated checksum matches the received checksum, the data is correct and output. If they do not match, the data is considered incorrect and the packet is discarded.

[0119] The above scheme effectively ensures the correctness and integrity of the data in the cache by storing the decoded data in the corresponding cache only after verification, avoids erroneous data from entering the subsequent processing flow, and thus improves the data quality and reliability of the entire system; on the other hand, it can prevent erroneous data from occupying cache space, so that the cache can more efficiently store valid decoded data, which helps to improve the utilization of storage resources and reduce unnecessary storage overhead; on the other hand, since the erroneous data is intercepted, it will not interfere with subsequent data processing and analysis, thereby reducing the risk of failure caused by erroneous data and enhancing the stability and performance of the above decoding method.

[0120] Optionally, the above decoding method may further include: determining the remaining flow of the decoding core when the verification fails; wherein the remaining flow is used to characterize the difference between the supply flow of the decoding core and the required flow of the target preset iteration array; based on the remaining flow of the decoding core, determining the number of incremental decoding iterations of the decoding data; inputting the decoding data into the decoding core so that the decoding core decodes the decoding data with the incremental decoding iteration number to obtain incremental decoding data; verifying the incremental decoding data; after the verification passes, storing the incremental decoding data in the corresponding cache.

[0121] The remaining flow can be understood as the flow not allocated to the decoding core within the current preset time period. It can be represented by the supplied flow of the decoding core minus the required flow of the target preset iteration array. The number of incremental decoding iterations can be determined by the ratio of the remaining flow of the decoding core to the beam flow of the corresponding beam data. Assume that the supplied flow of the decoding core is 100 units and the required flow of the target preset iteration array is 80 units. During the decoding process of the current preset time period, the decoded data verification of a certain beam data fails. In this case, the remaining flow is calculated to be 20 units. Based on the remaining flow, the number of incremental decoding iterations is determined to be 5 (assuming that each unit of flow supports 0.25 iterations, then 20 units of flow can support 5 iterations). The decoded data that failed verification is re-input into the decoding core and incremental decoding is performed for 5 iterations. The obtained incremental decoded data is then verified again. If the verification passes, the incremental decoded data is stored in the cache. If the verification fails, other error recovery strategies are considered.

[0122] The above scheme increases the probability of successful decoding and ensures the accuracy and reliability of the data by using the remaining traffic of the decoding core to perform incremental decoding iterations after the decoding data verification fails. On the other hand, it can fully utilize the remaining traffic of the decoding core, avoid waste of resources, make more full use of the processing capacity of the decoding core, and improve the overall resource utilization efficiency. On the other hand, the number of decoding iterations is dynamically increased according to the remaining traffic of the decoding core, so that the above decoding method can flexibly respond to different decoding requirements and traffic changes, thereby enhancing the adaptability and flexibility of the above decoding method.

[0123] Optionally, the above decoding method may further include: when the number of incremental decoding iterations is zero, or when the verification of the incremental decoding data fails, requesting retransmission of corresponding beam data.

[0124] It is understandable that in the above solution, if one of the following two situations occurs, the corresponding beam data is requested to be retransmitted: (1) The number of incremental decoding iterations is zero: When the remaining traffic is insufficient to support any incremental decoding iterations, it means that the error cannot be corrected through incremental decoding, and a retransmission request is required.

[0125] (2) Incremental decoding data verification failure: If the data after incremental decoding still fails to pass the verification, it indicates that the current decoding attempt has failed to successfully recover the data and a retransmission is required to obtain new beam data.

[0126] In the above scheme, when the number of incremental decoding iterations reaches zero or the verification fails, retransmission is requested, which ensures the accuracy and integrity of the final data and avoids the propagation of erroneous data. On the other hand, through an effective error recovery mechanism, the instability factors caused by continuous error processing are reduced, and the robustness of the above decoding method in complex environments is improved.

[0127] Based on the same inventive concept, an embodiment of the present application further provides a decoder, comprising: a beam data acquisition module, a target decoding iteration number determination module, a channel decision module, and a decoding core, which are connected in sequence, wherein: A beam data acquisition module is used to acquire beam data of multiple beams within a preset time period, as well as beam flow and beam signal-to-noise ratio of the beam data within the preset time period; A target decoding iteration number determination module is used to determine a target decoding iteration number of beam data of multiple beams within a preset time period based on beam flow and beam signal-to-noise ratio; a channel decision module, configured to input beam data into a decoding core, so that the decoding core decodes the beam data with a target number of decoding iterations; The decoding core is used to obtain the beam data sent by the channel decision module and decode the beam data according to the target decoding iteration number corresponding to the beam data.

[0128] See Figure 4 To facilitate understanding, the following provides an application scenario of the decoder 200. In this scenario, the decoder can support a maximum of four beams (x in the following solution is 0, 1, 2, and 3, representing four beams, respectively). The decoder mainly includes: The beam data acquisition module 201 is configured to acquire beam data of multiple beams within a preset time period, as well as beam flow and beam signal-to-noise ratio of the beam data within the preset time period.

[0129] The beam priority configuration module 202 is used to configure the beam priority for each beam; wherein, the beam priority can be configured in 8 types, namely 1 to 8, when configured as 1, the priority is the highest, and when configured as 8, the priority is the lowest.

[0130] A priority determination module 203 is configured to schedule beams according to their priorities; The channel polling module 204 is used to perform polling scheduling when the beam priorities are the same; The first data buffer module 205 is configured to buffer the soft bit data of beam x. It is understandable that each beam corresponds to one or more first data buffer modules 205 .

[0131] The traffic statistics module 206 is used to monitor the traffic of the beam. It can be understood that each beam corresponds to a traffic statistics module 206, that is, the traffic statistics module 206 of beam x is used to perform traffic statistics on the data in the first data cache module 205 corresponding to beam x. Traffic refers to the number of data that needs to be decoded input within 125μs, and is refreshed every 125μs. The purpose of counting the traffic input of each beam is to find the total traffic under each possible combination of the eight combinations, and then find the optimal combination based on the traffic that the decoding core can process within 125μs. The traffic of a beam at a certain number of iterations is equal to the input traffic multiplied by the number of iterations. For example, if a beam iterates 3 times, the traffic required for this beam is the traffic counted by the traffic statistics module multiplied by 3.

[0132] Beam SNR extraction module 207 is used to detect the beam SNR of the beam. It is understood that the beam SNR is generally acquired by a module located at the front end of the decoding core. The front end module then synchronously inputs the LLR data and the beam SNR into the decoder. In other words, when the external module inputs the LLR data, it also inputs the corresponding beam SNR. Beam SNR extraction module 207 first stores the externally input beam SNR.

[0133] The iteration array query module 208 is used to query the table to obtain 8 possible combinations of iteration numbers. The 8 combinations of iteration numbers are shown in Table 1: Table 1 Eight optional combinations of iteration times

[0134] The table lookup rule is to first sort the beams by SNR from high to low, then look up the table to obtain and output the possible number of iterations. The eight combinations are then prioritized. The sorting rule is as follows: First, the SNR difference between the four beams is determined. If the SNR difference is less than 2dB, the eight combinations are prioritized in descending order: combination 4, combination 3, combination 2, combination 6, combination 8, combination 7, combination 5, combination 1. If the SNR difference between the four beams is greater than 2dB but less than 4dB, the eight combinations are prioritized in descending order: combination 4, combination 6, combination 3, combination 2, combination 7, combination 5, combination 8, combination 1. If the SNR difference between the four beams is greater than 4dB, the eight combinations are prioritized in descending order: combination 4, combination 6, combination 8, combination 7, combination 3, combination 5, combination 2, combination 1.

[0135] Among the above 8 combinations of iteration numbers, each combination is applicable to different scenarios. For example, combination 1 is suitable for the scenario where the total input traffic is close to the LDPC processing traffic; combination 2 is suitable for the scenario where the total input traffic is close to one-third of the LDPC processing traffic and the signal-to-noise ratio of the four beams is close; combination 3 is suitable for the scenario where the total input traffic is close to one-fifth of the LDPC processing traffic and the signal-to-noise ratio of the four beams is close; combination 4 is suitable for the scenario where the total input traffic is much less than the LDPC processing traffic; combination 5 is suitable for the scenario where the total input traffic is less than one-third of the LDPC processing traffic and the signal-to-noise ratio of the four beams changes by 2dB; combination 6 is suitable for the scenario where the total input traffic is less than one-seventh of the LDPC processing traffic and the signal-to-noise ratio of the four beams changes by 2dB; combination 7 is suitable for the scenario where the total input traffic is less than one-quarter of the LDPC processing traffic and the signal-to-noise ratio of the four beams changes by 4dB; combination 8 is suitable for the scenario where the total input traffic is less than one-seventh of the LDPC processing traffic and the signal-to-noise ratio of the four beams changes by 4dB.

[0136] The demand flow calculation module 209 is used to calculate the total demand flow under each combination; The optimal iteration combination determination module 210 is used to determine the optimal iteration combination. This module selects the optimal combination based on the maximum flow rate that the decoding core can process, that is, the flow rate supplied to the decoding core. The module uses a table lookup to determine the inter-group priority of the eight possible iteration combinations. The module then determines, from the beginning to the end, whether the flow rate demanded by each combination exceeds the flow rate supplied by the decoding core. If the flow rate demanded by a combination is less than the flow rate supplied by the decoding core, the combination is considered the optimal iteration combination and no further evaluation is performed on the subsequent combinations. If the flow rates demanded by the first seven combinations exceed the flow rate supplied by the decoding core, the final iteration combination is selected.

[0137] The channel decision module 211 is used to select the beam to be processed currently and send the beam data to the decoding core.

[0138] The data reading module 212 is used to read out data and send it to the channel decision module 211 when the channel decision module 211 selects beam x for decoding.

[0139] The LDPC decoding core 213 is configured to perform decoding operations on the beam data.

[0140] The label adding module 214 is configured to add beam labels to different beams.

[0141] The verification module 215 is used to determine whether the decoded data is correct, and output the decoded data if it is correct, and discard the decoded data if it is incorrect.

[0142] The label determination module 216 is used to determine the beam to which the data belongs based on the beam label and send the data to the corresponding module.

[0143] The second data buffer module 217 is used to decode data and output the decoded data to the subsequent module. It is understood that each beam corresponds to one or more second data buffer modules 217.

[0144] See Figure 5 , the following describes the main working steps of the above decoder in combination with its structure: Step 1: beam data caching, signal-to-noise ratio detection, and beam traffic statistics; The beam data acquisition module 201 is used to acquire beam data for multiple beams, and then the beam data is cached by the first data cache module 205. When caching the data, the beam signal-to-noise ratio extraction module 207 can be used to obtain the beam signal-to-noise ratio of the beam, and then the beam traffic of each beam can be counted by the traffic statistics module 206.

[0145] In addition, after the beam data is acquired, the label adding module 214 may be used to add beam labels to the beam data of different beams.

[0146] Step 2: Beam priority configuration; The beam priority configuration module 202 is used to configure the beam priority for each beam.

[0147] Step 3: Determine the number of iterations and calculate the required time; The iteration array query module 208 is used to obtain the inter-group priorities of the eight iteration number combinations by looking up the table, and then the demand flow calculation module 209 is used to calculate the total demand flow under each combination.

[0148] Step 4: Determine the optimal combination of iteration times; The optimal iteration number combination determination module 210 is used to determine the optimal iteration number combination.

[0149] Step 6: Channel decision and data reading; The channel decision module 211 selects the beam that needs to be processed currently, and the data reading module 212 reads the corresponding beam data, and then sends the beam data to the LDPC decoding core 213.

[0150] It is understandable that when selecting the beam that currently needs to be processed, the priority judgment module 203 can be used to make a judgment based on the beam priority. When the beam priorities are the same, the channel polling module 204 can be used to perform polling scheduling.

[0151] Step 7: LDPC decoding and error detection; The LDPC decoding core 213 performs a decoding operation, and then the verification module 215 verifies the decoded data output by the LDPC decoding core 213 .

[0152] Step 8: Label judgment and data output; The decoded input is stored in the corresponding second data buffer module 217 through the label determination module 216. The second data buffer module 217 buffers the decoded data and outputs it to the subsequent module.

[0153] It is understandable that Figure 5 Only two beams, namely the processing flow of beam 0 and beam 1, are shown in FIG. 1 , but it should be understood that Figure 5 This is only an illustration and does not mean that the decoder provided in the embodiment of the present application can only process two beams.

[0154] Please refer to Figure 6 , Figure 6This is a block diagram of the structure of an electronic device provided in an embodiment of the present application. The electronic device 300 includes: at least one processor 310, at least one communication interface 320, at least one memory 330, and at least one communication bus 340. Among them, the communication bus 340 is used to realize direct connection and communication between these components, the communication interface 320 is used to communicate signaling or data with other node devices, and the memory 330 stores machine-readable instructions executable by the processor 310. When the electronic device 300 is running, the processor 310 and the memory 330 communicate via the communication bus 340, and the above-mentioned decoding method is executed when the machine-readable instructions are called by the processor 310.

[0155] As an embodiment, the electronic device 300 may be a terminal, and different terminals may be connected to each other via wired or wireless means. The terminal can be widely used in various scenarios, such as Near Field Communications (NFC), Device-to-Device (D2D), Vehicle-to-Everything (V2X) communication, Machine-type Communication (MTC), Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grid, smart furniture, smart office, smart wearables, smart transportation, smart cities, etc.

[0156] The terminal may also be referred to as a mobile station (MS), terminal, or terminal equipment, and may also include a subscriber unit (SU), a cellular phone, a smart phone, a wireless data card, a personal digital assistant (PDA), a computer, a tablet computer, a wireless modem (Modem), a handheld device (Handheld device), a laptop computer, a cordless phone (Cordless Phone), or a wireless local loop (WLL) station, a machine type communication (MTC) terminal, etc. For ease of description, in all embodiments of the present application, the above-mentioned devices are collectively referred to as terminals.

[0157] The aforementioned terminal may also include an antenna and a transceiver. The transceiver conditions (e.g., performs analog-to-analog conversion, filtering, amplification, and upconversion) the output samples and generates an uplink signal, which is transmitted via the antenna to the network device. On the downlink, the antenna receives the downlink signal transmitted by the network device, and the transceiver conditions (e.g., performs filtering, amplification, downconversion, and digitization) the signal received from the antenna and provides input samples. The processor 310 is configured to execute the decoding method described in the above embodiment. The embodiments of this application do not limit the specific technology or device form used in the terminal.

[0158] The processor 310 includes one or more processors, which can be an integrated circuit chip with signal processing capabilities. The processor 310 can be a general-purpose processor, including a central processing unit (CPU), a microcontroller unit (MCU), a network processor (NP), or other conventional processors; it can also be a special-purpose processor, including a neural network processing unit (NPU), a graphics processing unit (GPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. Furthermore, when there are multiple processors 310, some of them can be general-purpose processors, and others can be special-purpose processors.

[0159] The memory 330 includes one or more, which may be, but is not limited to, random access memory (RAM), read only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), etc.

[0160] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer program instructions. When the computer program instructions are executed by a computer, the computer is caused to perform the functions or steps in the above-mentioned decoding method embodiment.

[0161] The embodiment of the present application further provides a computer program product, which, when executed on a computer, enables the computer to execute the various functions or steps in the above-mentioned decoding method embodiment.

[0162] In the embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interface, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0163] In addition, the units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0164] Furthermore, the functional modules in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0165] It should be noted that if the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the existing technology, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, and other media that can store program code.

[0166] In this document, relational terms such as first and second, etc. are used merely to distinguish one entity or operation from another entity or operation, but do not necessarily require or imply any actual relationship or order between these entities or operations.

[0167] The above description is merely an embodiment of the present application and is not intended to limit the scope of protection of the present application. For those skilled in the art, various modifications and variations of the present application are possible. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A decoding method, characterized in that: The method comprises: Acquire beam data of a plurality of beams within a preset time period and beam flow and beam signal-to-noise ratio of the beam data within the preset time period; determining, based on the beam flow and the beam signal-to-noise ratio, a target number of decoding iterations for the beam data of the plurality of beams within the preset time period; The beam data is input into a decoding core, so that the decoding core decodes the beam data with the target number of decoding iterations.

2. The decoding method according to claim 1, wherein: The determining, based on the beam flow and the beam signal-to-noise ratio, a target number of decoding iterations of the beam data of the plurality of beams within the preset time period includes: Determining, based on the beam signal-to-noise ratio and a preset mapping relationship, inter-group priorities of a plurality of preset iteration number groups; wherein the preset iteration number array includes a number of decoding iterations for each of the beams; the plurality of preset iteration number arrays are respectively applicable to the beam signal-to-noise ratio in different intervals; and the preset mapping relationship is used to characterize a correspondence between the beam signal-to-noise ratio and the inter-group priorities of the plurality of preset iteration number groups; Determining, based on the beam flow, a required flow corresponding to each of the preset iteration arrays; wherein the required flow is used to represent the total flow required to complete the number of decoding iterations corresponding to each of the beams in the preset iteration array; Determining a target preset iteration array based on the required flow rate and the supplied flow rate of the decoding core; wherein the supplied flow rate is used to represent the total flow rate that the decoding core can provide within the preset time period; and the target preset iteration array is the preset iteration array with the highest inter-group priority among the preset iteration arrays whose required flow rate is not greater than the supplied flow rate; Based on the target preset iteration number array, a target number of decoding iterations of the beam data of the plurality of beams within the preset time period is determined.

3. The decoding method according to claim 2, wherein: The determining, based on the beam signal-to-noise ratio and the preset mapping relationship, the inter-group priorities of the plurality of groups with preset iteration times includes: Determining a signal-to-noise ratio difference index based on the beam signal-to-noise ratio; wherein the signal-to-noise ratio difference index is used to characterize the dispersion degree of the signal-to-noise ratios of all the beams; Based on the signal-to-noise ratio difference index and a preset mapping relationship, determine the inter-group priority of multiple preset iteration number groups; wherein the preset iteration number array includes the number of decoding iterations for each of the beams; the preset mapping relationship is used to characterize the correspondence between the signal-to-noise ratio difference index and the inter-group priority of multiple preset iteration number groups; the larger the signal-to-noise ratio difference index, the higher the inter-group priority of the preset iteration number group with low complexity; the smaller the signal-to-noise ratio difference index, the higher the inter-group priority of the preset iteration number group with high complexity; the complexity of the preset iteration number group is determined based on the sum of the decoding iteration numbers in the preset iteration number array.

4. The decoding method according to claim 2, wherein: The determining a signal-to-noise ratio difference index based on the beam signal-to-noise ratio of each beam includes: The difference between the maximum signal-to-noise ratio and the minimum signal-to-noise ratio in the beam signal-to-noise ratio is calculated to determine a signal-to-noise ratio difference index.

5. The decoding method according to claim 2, wherein: The determining, based on the beam signal-to-noise ratio and the preset mapping relationship, the inter-group priorities of the plurality of groups with preset iteration times includes: Obtaining an inter-group priority lookup table; wherein the inter-group priority lookup table stores a preset mapping relationship; the preset mapping relationship is used to characterize the correspondence between the beam signal-to-noise ratio and the inter-group priority of the plurality of groups of the preset number of iterations; Based on the beam signal-to-noise ratio, the inter-group priorities of the plurality of preset iteration number groups corresponding to the beam signal-to-noise ratio are searched in the inter-group priority lookup table.

6. The decoding method according to any one of claims 1 to 5, characterized in that: Inputting the beam data into a decoding core so that the decoding core decodes the beam data with the target number of decoding iterations includes: Obtaining beam priorities of the plurality of beams; wherein the beam priorities are used to represent the degree to which the beams need to be decoded first; Based on the beam priority, the beam data is polled and scheduled, and the beam data is sequentially input into a decoding core, so that the decoding core decodes the beam data with the target number of decoding iterations.

7. The decoding method according to any one of claims 2 to 5, characterized in that: The beam data is configured with a beam identifier, and the method further includes: Based on the beam identifier, the beam data and the decoded data decoded by the decoding core are stored in a cache corresponding to the beam identifier.

8. The decoding method according to claim 7, wherein: The method further comprises: A beam identifier is configured for the beam data based on a source network element of the beam data and / or a generation stage of the beam data.

9. The decoding method according to claim 7, wherein: Before storing the decoded data into the corresponding cache, the method further includes: verifying the decoded data; After the verification is passed, the decoded data is stored in the corresponding cache.

10. The decoding method according to claim 9, characterized in that: The method further comprises: When the verification fails, determining the remaining flow of the decoding core; wherein the remaining flow is used to represent the difference between the supply flow of the decoding core and the required flow of the target preset iteration number group; determining a number of incremental decoding iterations for the decoded data based on the remaining flow of the decoding core; Inputting the decoded data into the decoding core, so that the decoding core decodes the decoded data with the number of incremental decoding iterations to obtain incremental decoded data; verifying the incremental decoded data; After passing the verification, the incremental decoding data is stored in the corresponding cache.

11. The decoding method according to claim 10, wherein: The method further comprises: When the number of incremental decoding iterations is zero or verification of the incremental decoding data fails, requesting retransmission of the corresponding beam data.

12. A decoder, characterized in that: include: The beam data acquisition module, the target decoding iteration number determination module, the channel decision module and the decoding core are connected in sequence, where: The beam data acquisition module is used to acquire beam data of multiple beams within a preset time period and the beam flow and beam signal-to-noise ratio of the beam data within the preset time period; The target decoding iteration number determination module is configured to determine a target decoding iteration number of the beam data of the plurality of beams within the preset time period based on the beam flow rate and the beam signal-to-noise ratio; The channel decision module is configured to input the beam data into a decoding core, so that the decoding core decodes the beam data with the target number of decoding iterations; The decoding core is used to obtain the beam data sent by the channel decision module and decode the beam data according to the target decoding iteration number corresponding to the beam data.

13. An electronic device, characterized in that: include: A processor, a memory and a communication bus, wherein the processor and the memory communicate with each other via the communication bus; The memory stores program instructions that can be executed by the processor, and the processor can execute the method according to any one of claims 1 to 11 by calling the program instructions.

14. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions, and when the computer instructions are executed by a computer, the computer is caused to perform the method according to any one of claims 1 to 11.

15. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 11 is implemented.