Multi-threaded spherical decoding method with geometric guidance and task adaptation and related apparatuses

By employing a multi-threaded spherical decoding method with geometric guidance and task self-adaptation, the search radius and optimal solution are dynamically updated, and the search path and task allocation are optimized. This solves the problems of unbalanced load and insufficient resource utilization in large-scale MIMO systems, achieving higher search efficiency and shorter search time.

CN121967126BActive Publication Date: 2026-06-26XI AN JIAOTONG UNIV

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
XI AN JIAOTONG UNIV
Filing Date
2026-04-02
Publication Date
2026-06-26

Smart Images

  • Figure CN121967126B_ABST
    Figure CN121967126B_ABST
Patent Text Reader

Abstract

The application discloses a kind of geometric guidance and task self-adapting multithreaded spherical decoding method and related device, belong to wireless communication technical field, including: the channel matrix of system model is obtained, the channel matrix of system model is carried out QR decomposition, and the result of QR decomposition is obtained;Search tree is constructed based on the result of QR decomposition;The search radius and optimal solution of search tree are dynamically updated, and the geometric threshold value is determined;According to the search radius and optimal solution of updated search tree and the geometric threshold value determined, the search tree is searched by multithreading according to SE order, and the symbol vector of transmitting antenna in system model is obtained, and the geometric guidance and task self-adapting multithreaded spherical decoding is completed, the method and related device can improve search efficiency, shorten search time simultaneously, reduce the cost of search task scheduling and synchronization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of wireless communication technology and relates to a geometrically guided and task-adaptive multi-threaded spherical decoding method and related apparatus. Background Technology

[0002] With the development of 6G mobile communication systems, mobile services are increasingly demanding higher requirements for spectrum efficiency, system capacity, and link reliability. Multiple-input multiple-output (MIMO) technology, by configuring multiple antennas simultaneously at the transmitter and receiver, enables the parallel transmission of multiple spatial data streams on the same frequency band. This significantly improves system capacity and peak data rate without additional spectrum resource consumption, and has become one of the key technologies in cellular mobile communication, the Internet of Things (IoT), and other systems.

[0003] For the uplink, the receiving base station needs to estimate the symbol vector transmitted by the transmitter given the channel matrix and the received signal. This process is known as MIMO (Multiple-Input Multiple-Output) detection. Theoretically, ML (Maximum Likelihood) detection can find the symbol vector that minimizes the Euclidean distance between the received signal and the reconstructed signal by traversing all possible symbol combinations, thus achieving optimal bit error rate performance. However, the computational complexity of ML detection increases exponentially with the number of transmit antennas and the constellation order, making it difficult to meet real-time requirements in large-scale antenna and high-order modulation scenarios. Therefore, it is rarely used directly in practical systems.

[0004] SD (Sphere Decoding) is a class of detection methods that reduces complexity while maintaining the performance of ML. These methods typically use QR decomposition (orthogonal triangular decomposition) to transform the channel matrix into an upper triangular form. A search tree is then performed on the equivalent upper triangular system, combined with the Schnorr-Euchner algorithm for sequential enumeration of candidate symbols. Pruning is achieved through gradual shrinking of the search radius, resulting in an average complexity far lower than exhaustive search.

[0005] With the widespread application of massive MIMO, single-core processing power is insufficient to meet the real-time requirements of spherical decoding under high throughput and low latency conditions. To address this, the industry has proposed parallel spherical decoding schemes using multiple processing units. Examples include: dividing the search tree at a certain level into several subtrees, with each subtree assigned to a different processing unit for independent searching; configuring multiple Euclidean distance calculation units in hardware, with a scheduler allocating branch tasks; or using a general parallel framework to perform task-level parallelism on the sequential enumeration of the search engine (SE). These methods improve throughput to some extent, but still have shortcomings in load balancing and complexity control, specifically:

[0006] Parallelism is coarse-grained, resulting in highly uneven load distribution. Many parallel spherical decoding methods only perform simple pre-splitting at the bottom few levels of the search tree, evenly distributing a limited number of root nodes to various processes or threads. Because the depth and expansion of the subtree corresponding to each root node vary greatly, the actual number of nodes accessed is highly uneven: some processes need to traverse a large number of nodes, becoming system bottlenecks; while other processes quickly complete their tasks and remain idle, multi-core resources cannot be fully utilized, limiting the overall speedup.

[0007] The radius update strategy is simplistic. In existing spherical decoding, the search radius is typically initialized with the residual energy based on linear detection. When a better leaf solution is found, the search radius is simply updated to the metric of that leaf. This strategy only utilizes information from the current single optimal solution, ignoring the geometric distribution characteristics of multiple leaf nodes in the symbol space. It fails to leverage the geometric features of the leaf set to reposition the search center. As a result, a large number of paths far from the true optimal solution are still retained during radius shrinkage, leading to insufficient search space shrinkage, high average complexity, and prolonged search time.

[0008] The task scheduling strategy is simplistic and ignores the internal structure of the algorithm. General task scheduling or task-stealing algorithms typically rely mainly on external metrics such as the number of tasks and queue length for load balancing, failing to distinguish between high-value and low-value tasks. As a result, a large number of low-value intermediate node tasks may be distributed to the shared queue, increasing the cost of task scheduling and synchronization, and also affecting the search efficiency of other processing units. Summary of the Invention

[0009] The purpose of this invention is to overcome the shortcomings of the prior art and provide a geometrically guided and task-adaptive multi-threaded spherical decoding method and related apparatus. This method and related apparatus can improve search efficiency, shorten search time, and reduce the cost of search task scheduling and synchronization.

[0010] To achieve the above objectives, this invention discloses a geometry-guided and task-adaptive multi-threaded spherical decoding method, comprising:

[0011] Obtain the channel matrix of the system model, and perform QR decomposition on the channel matrix of the system model to obtain the QR decomposition result;

[0012] A search tree is constructed based on the results of the QR decomposition.

[0013] Dynamically update the search radius and optimal solution of the search tree, and determine the geometric threshold;

[0014] Based on the search radius and optimal solution of the updated search tree and the determined geometric threshold, the search tree is searched in a multi-threaded manner according to the SE order to obtain the symbol vector of the transmitting antenna in the system model, thus completing the multi-threaded spherical decoding of geometric guidance and task self-adaptation.

[0015] The process of dynamically updating the search radius and optimal solution of the search tree is as follows:

[0016] The global leaf library is dynamically updated during the multi-threaded search of the search tree in SE order.

[0017] When a new leaf is added to the global leaf library, and this new leaf is appearing for the first time, or when the global leaf library increases by [number], [the following occurs]. When there are 1 leaf, several candidate geometric centers are determined;

[0018] From the candidate geometric centers, select the candidate geometric center with the smallest metric. ;

[0019] Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius?

[0020] When the candidate geometric center with the smallest metric measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution;

[0021] The process of determining the geometric threshold is as follows:

[0022] Determine the current search radius r;

[0023] Set span ;

[0024] Based on the current search radius r and span Calculate geometric threshold .

[0025] Furthermore, the process of dynamically updating the global leaf library during the multi-threaded search of the search tree in SE order is as follows:

[0026] When the thread reaches the bottom layer of the search tree and obtains the complete symbol vector When that happens, calculate the complete path metric for that thread. ,Will Add it as a leaf element to the global leaf library;

[0027] when When the optimal solution is updated, the complete symbol vector is then used. Update the current global search radius to the full path metric for this thread. ,in, This is the current search radius;

[0028] Sort the leaves in the global leaf library according to the complete path metric from smallest to largest, and retain the top leaves in the global leaf library. A leaf.

[0029] Furthermore, the candidate geometric centers include the zero-forcing detection results of the system model. The geometric center of all leaves The optimal solution after the last update The weighted result of the current optimal solution and the geometric center of the leaf. And the weighted result of the search radius and the geometric center of all leaves after the last update. .

[0030] Furthermore, the geometric threshold for:

[0031]

[0032] in, For empirical parameters, the current optimal metric .

[0033] Furthermore, during the multi-threaded search of the search tree in SE order, a geometric threshold is used... Determine if the current node to be expanded has any value for expansion. If the current node to be expanded does not have any value for expansion, then encapsulate the current node to be expanded as a task and push it to the tail of the global task queue.

[0034] Once the thread reaches the bottom of the search tree, it extracts tasks from the global task queue in sequence and executes the extracted tasks until all tasks in the global task queue have been executed, thus obtaining the symbol vector of the transmitting antenna in the system model.

[0035] This invention discloses a geometry-guided and task-adaptive multi-threaded spherical decoding system, comprising:

[0036] The acquisition module is used to acquire the channel matrix of the system model, perform QR decomposition on the channel matrix of the system model, and obtain the QR decomposition result.

[0037] The construction module is used to construct a search tree based on the results of the QR decomposition;

[0038] The update module is used to dynamically update the search radius and optimal solution of the search tree and determine the geometric threshold;

[0039] The search module is used to search the search tree in a multi-threaded manner according to the SE order based on the search radius of the updated search tree, the optimal solution, and the determined geometric threshold, to obtain the symbol vector of the transmitting antenna in the system model and complete the multi-threaded spherical decoding for geometric guidance and task self-adaptation.

[0040] The process of dynamically updating the search radius and optimal solution of the search tree is as follows:

[0041] The global leaf library is dynamically updated during the multi-threaded search of the search tree in SE order.

[0042] When a new leaf is added to the global leaf library, and this new leaf is appearing for the first time, or when the global leaf library increases by [number], [the following occurs]. When there are 1 leaf, several candidate geometric centers are determined;

[0043] From the candidate geometric centers, select the candidate geometric center with the smallest metric. ;

[0044] Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius?

[0045] When the candidate geometric center with the smallest metric measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution;

[0046] The process of determining the geometric threshold is as follows:

[0047] Determine the current search radius r;

[0048] Set span ;

[0049] Based on the current search radius r and span Calculate geometric threshold .

[0050] The present invention discloses a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the geometric guidance and task self-adaptation multi-threaded spherical decoding method.

[0051] This invention discloses a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the geometry-guided and task-adaptive multi-threaded spherical decoding method.

[0052] The present invention has the following beneficial effects:

[0053] The geometrically guided and task-adaptive multi-threaded spherical decoding method and related apparatus of this invention dynamically updates the search radius and optimal solution of the search tree during operation, determines the geometric threshold, and searches the search tree in a multi-threaded manner according to the SE order based on the updated search tree's search radius, optimal solution, and determined geometric threshold to obtain the symbol vector of the transmitting antenna in the system model. By dynamically updating the search radius and optimal solution, the search sphere quickly shrinks to the most likely region, significantly reducing the expansion of invalid paths far from the optimal solution. At the same time, the geometric threshold directs the search path towards high-value local expansion, effectively compressing the search tree, improving search efficiency, shortening search time, and reducing the cost of search task scheduling and synchronization, making it highly practical. Attached Figure Description

[0054] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments of this application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0055] Figure 1 This is a schematic diagram of the search path performed in the SE order in this invention;

[0056] Figure 2 This is a schematic diagram illustrating the updating of the search radius and the optimal solution in this invention;

[0057] Figure 3 This is a flowchart of the method of the present invention;

[0058] Figure 4A comparison of the average number of search nodes for three algorithms using 64QAM (Quadrature Amplitude Modulation) with 8 transmit and 8 receive nodes.

[0059] Figure 5 A comparison chart of the average running time of three algorithms for 64QAM, 8 transmit and 8 receive;

[0060] Figure 6 A comparison chart of the average number of search nodes for three algorithms with 16QAM, 14 transmit and 14 receive;

[0061] Figure 7 A comparison chart of the average running time of three algorithms for 16QAM, with 14 transmits and 14 receives;

[0062] Figure 8 This is a system structure diagram of the present invention. Detailed Implementation

[0063] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. The components of the embodiments of the present invention described and shown in the accompanying drawings can generally be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the claimed invention, but merely to illustrate selected embodiments of the invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without inventive effort are within the scope of protection of the present invention.

[0064] The accompanying drawings illustrate various structural schematic diagrams according to embodiments disclosed in this invention. These drawings are not to scale, and some details have been enlarged for clarity, and some details may have been omitted. The shapes of the various regions and layers shown in the drawings, as well as their relative sizes and positional relationships, are merely exemplary and may deviate from reality due to manufacturing tolerances or technical limitations. Furthermore, those skilled in the art can design regions / layers with different shapes, sizes, and relative positions as needed.

[0065] Example 1

[0066] refer to Figure 1 , Figure 2 and Figure 3 The geometrically guided and task-adaptive multi-threaded spherical decoding method of the present invention includes the following steps:

[0067] 1) Obtain the channel matrix of the system model, and perform QR decomposition on the channel matrix of the system model to obtain the QR decomposition result;

[0068] The specific operation of step 1) is as follows:

[0069] 11) Construct the uplink MIMO system model and symbols;

[0070] The uplink MIMO system model is as follows:

[0071]

[0072] in, For the channel matrix, Indicates the number of receiving antennas. Indicates the number of transmitting antennas. Represents the first element in the channel matrix H. Column vectors, For the emission symbol vector, for Constellation Collection For constellation order, It is a complex Gaussian noise vector.

[0073] set up For the receive vector, the overall path metric of the uplink MIMO system model is... for:

[0074]

[0075] Then maximum likelihood detection is equivalent to solving:

[0076]

[0077] in, For the estimated value of the transmitted signal, the channel matrix is... Performing QR decomposition yields:

[0078]

[0079] in, It is a unitary matrix that satisfies , for The identity matrix, Given an upper triangular matrix, multiply both sides of the equation for the uplink MIMO system model. ,get:

[0080]

[0081] in, To receive the equivalent signal, For equivalent noise, due to It is a unitary matrix and If it is an upper triangular matrix, then the overall path metric of the uplink MIMO system model is obtained. for:

[0082]

[0083] For MIMO detection, the criterion for maximum likelihood is to minimize... Using an upper triangular matrix The upper triangle property, The Middle layer value for:

[0084]

[0085] in, For equivalent received signal The One element, It is an upper triangular matrix The Line number Column elements, For the emission symbol vector The One element, It is an intermediate variable.

[0086] 2) Construct a search tree based on the results of the QR decomposition;

[0087] 21) Construct the search tree;

[0088] because It is an upper triangular matrix. During spherical decoding, the symbol of the bottom-level transmit antenna is determined first, and then sequentially upwards. In the spherical decoding process, starting from the last transmit antenna... Start by selecting symbols. After each symbol is selected, calculate the value for that layer. Then from the previous transmitting antenna By selecting symbols, a search tree structure is naturally formed. The first level of the search tree corresponds to the first level of the transmitting antenna. Root antenna.

[0089] Suppose that the number of... When the transmitting antenna is rooted, The Middle layer to the first European distance for:

[0090]

[0091] Among them, when Euclidean distance corresponding to time Therefore, when determining the first symbol of the root transmitting antenna At that time, once the corresponding Euclidean distance Exceeding the current radius squared Then pruning is performed, that is, after determining the symbol Under the condition that the index is less than The symbols of the antenna nodes no longer need to be searched.

[0092] 22) Initialize the search tree;

[0093] Using zero-forcing detection solution The initial solution and initial radius for the transmit antenna estimate are as follows:

[0094]

[0095] in, For quantization function, The distance to the equivalent received signal is determined by the ZF (Zero-Forcing) solution, and a globally optimal solution is set. Global search radius Global geometric center The upper right corner indicator represents the 0th update, i.e., the initial value.

[0096] 24) Pre-expansion and allocation of root nodes;

[0097] To improve parallelism, a fixed-depth node pre-expands at the bottom of the search tree, named preDepth. When the modulation order is 4, the nodes of the first two layers are searched, i.e., preDepth=2; otherwise, only the first layer is searched, i.e., preDepth=1.

[0098] because It is an upper triangular matrix, so the symbol needs to be determined starting from the bottom layer of the transmitting antenna, which is the first layer of the search tree corresponding to the first symbol. The number of transmitting antennas corresponds to the second level of the search tree. There are one transmitting antenna, and so on. The correspondence between the symbols of each layer of the search tree and the symbols of the antenna layer is as follows:

[0099]

[0100] Let the symbol vectors be arranged from the bottom to the top of the search tree as follows: When preDepth=1, enumerate the symbols of the first level of the search tree. The residual vector of the first level of the search tree for:

[0101]

[0102] set up For the search tree The symbol for the layer, when the Euclidean distance of the first layer of the search tree is... Less than or equal to the global search radius When, then the first The transmitting antenna is used as the node to be expanded, and the record is... The symbol corresponding to each transmit antenna and the index of the next expansion layer. When the Euclidean distance of the first level of the search tree Greater than the global search radius If the current symbol is discarded, then discard it.

[0103] When preDepth = 2, enumerate the first two levels of symbol groups. And calculate the residual vectors of the first two levels of the search tree. and :

[0104]

[0105] when , will the Each transmitting antenna serves as a node to be expanded, recording the symbol of the node to be expanded and the index of the next layer to be expanded. .

[0106] Finally, all nodes to be expanded are obtained. These nodes are then sorted in ascending order of Euclidean distance and distributed evenly among the threads in a round-robin fashion to ensure the initial task is as balanced as possible. For example, if there are 8 nodes to be expanded in sequence... With 3 threads, the first thread processes the node. The second thread processes The third process .

[0107] 25) SE sequential enumeration;

[0108] For each thread, let the search reach the [number]th node in the search tree. The first layer is the front of the search tree. Layer symbol All have been determined, then the first search tree... Estimated value of the transmit antenna symbol of the layer for:

[0109]

[0110] The search tree's first Click on all constellations in the layer Distance sorting:

[0111]

[0112] in, Representing the The layer contains all constellation points sorted by Euclidean distance, and , The superscript indicates the ranking, in the order of . When selecting constellation points for a layer, they are sorted by Euclidean distance, with priority given to constellation points with smaller distances. If the constellation point selected for the current layer is... When, then the search tree is in its first stage. The residual vector of the layer for:

[0113]

[0114] The Euclidean distance of the search tree layer above is Then the Euclidean distance of the current layer for:

[0115]

[0116] when If the enumeration of the transmit antenna symbols in the current layer ends, the search tree returns to the previous layer to continue enumerating transmit antennas; otherwise, the search tree continues to explore the next layer.

[0117] 3) Dynamically update the search radius and optimal solution of the search tree, and determine the geometric threshold;

[0118] 31) Dynamically update the search radius and optimal solution of the search tree;

[0119] When the thread reaches the bottom layer of the search tree And obtain the complete symbol vector At this time, the complete path metric for:

[0120]

[0121] when Then execute: Update global radius Update the optimal solution ;

[0122] Will Add it as a leaf element to the global leaf library and measure it by the complete path. Sort all leaves in the global leaf library from smallest to largest, and retain only the top leaves. There are a total of [number] leaves in the global leaf library. leaf vectors The geometric center of the global leaf library is:

[0123]

[0124] When a new leaf is added to the global leaf library, and the first occurrence or every additional leaf is satisfied... When there are 1 leaf node, a geometric update is performed; specifically, candidate geometric centers are constructed. :

[0125] ZF solution .

[0126] Geometric center of all leaf nodes .

[0127] Geometric center at the last update .

[0128] The weighted result of the current optimal solution and the geometric center of the leaf node .

[0129] The weighted result of the geometric center and the geometric centers of all leaf nodes at the time of the last update. .

[0130] For candidate geometric centers Calculate the measurement And find the candidate geometric center with the smallest metric. :

[0131]

[0132] When the metric is minimum When that happens, update the optimal solution and radius. , The geometric center of the global leaf library is updated iteratively using a decreasing step size. Let the number of updates be... Decreasing step size for:

[0133]

[0134] in, , It is a constant. and If both are 0.5, then the new geometric center of the global leaf library is updated as follows: Through the above steps, the search center gradually converges towards the vicinity of the optimal solution, accelerating the radius shrinkage.

[0135] 3) Determine the geometric threshold;

[0136] In the search tree Layer, corresponding to the first layer of the transmitting antenna For symbol vectors And its Euclidean distance, let the geometric distance g in the remaining dimensions be:

[0137]

[0138] in, The current global optimal solution is at the th Dimensional components For the symbol vector at the th The components in the dimension, let the overall priority measure be:

[0139]

[0140] For the weighting coefficients, take... Let the current optimal metric be ZF metric is Set span for:

[0141]

[0142] Constructing geometric thresholds for:

[0143]

[0144] in, For empirical parameters, take .

[0145] 4) The search tree is searched in a multi-threaded manner according to the SE order to obtain the symbol vector of the transmitting antenna in the system model, thus completing the multi-threaded spherical decoding for geometric guidance and task self-adaptation.

[0146] For the current node to be expanded, when If a node is deemed valuable, the current thread will continue a depth-first search for that node. If the value of the node to be expanded is low, the node to be expanded is encapsulated as a task and pushed to the tail of the global task queue.

[0147] If the current thread reaches the bottom of the search tree, it retrieves a task from the global task queue and executes it until all tasks in the global task queue have been completed. Finally, it outputs the symbol vector of the transmitting antenna in the system model. .

[0148] In its implementation, this invention uses the C++ standard library to implement multiple threads and uses a double-ended queue protected by a mutex lock as the global task queue to ensure the safety of multiple threads when reading and writing to the queue.

[0149] To balance decoding complexity and parallel overhead under different signal-to-noise ratio (SNR) conditions, this invention adaptively configures the number of threads and the trigger interval for geometric updates at the receiving end based on the current SNR. Specifically:

[0150] When the signal-to-noise ratio is less than 5dB, set the number of threads. ,Every Each leaf updates the geometric center once;

[0151] When the signal-to-noise ratio is greater than or equal to 5dB and less than 10dB, set the number of threads. ,Every Each leaf updates the geometric center once;

[0152] When the signal-to-noise ratio is greater than or equal to 10dB and less than 15dB, set the number of threads. ,Every Each leaf updates the geometric center once;

[0153] When the signal-to-noise ratio is greater than or equal to 15dB and less than 25dB, set the number of threads. ,Every Each leaf updates the geometric center once;

[0154] When the signal-to-noise ratio is greater than or equal to 25dB, set the number of threads. If the geometric center is not updated, then no update will be performed.

[0155] Through the aforementioned adaptive configuration mechanism, this invention can fully utilize the benefits of multi-threaded parallelism and geometric guidance when the signal-to-noise ratio is low to medium and the search complexity is high. When the signal-to-noise ratio is high and the search complexity is low, it can automatically reduce the number of threads or even degenerate into a single thread, avoiding the additional overhead caused by parallel scheduling and synchronization, thereby achieving better overall performance under different channel conditions.

[0156] Confirmatory test

[0157] To verify the performance and complexity advantages of this invention in medium and large-scale MIMO and high-order modulation scenarios, this embodiment conducts comparative simulations in the MATLAB environment on two configurations: 8×8 64QAM and 14×14 16QAM. The comparison objects include the following three algorithms:

[0158] 1. The serial SESD algorithm, also known as the traditional SE-order spherical decoder, uses QR decomposition and radius shrinkage to traverse the search tree in depth-first order under a single thread; there is only one search process, and there is no parallel execution or inter-thread interaction.

[0159] 2. The parallel shared radius SESD algorithm introduces 8 parallel threads on the basis of the traditional SESD algorithm. Each thread starts from a pre-divided part of the root nodes and performs tree search independently. Multiple threads share the global optimal radius and the current optimal solution, but do not perform geometric guidance or task allocation, and the threads do not share subtrees with each other.

[0160] 3. Algorithm of this invention: Based on the QR decomposition and SE sequential search framework, it combines geometric center guidance, dynamic radius update, task queue and task self-adaptation mechanism; in the initial stage, more threads are used to fully enable parallel search when the signal-to-noise ratio is low to medium; as the signal-to-noise ratio increases and the search complexity decreases, the number of threads is adaptively reduced according to the signal-to-noise ratio, and the geometric update interval is adjusted to dynamically balance the parallel overhead and search benefits.

[0161] Simulation scenario and parameter settings:

[0162] Assuming the channel is a flat Rayleigh fading channel, and each complex element of the channel matrix is ​​an independent and identically distributed zero-mean complex Gaussian random variable; the modulation schemes include 8×8 MIMO, 64QAM modulation; and 14×14 MIMO, 16QAM modulation. The noise is additive white Gaussian noise (AWGN), which is added to the received signal according to the set signal-to-noise ratio Es / N0.

[0163] The signal-to-noise ratio (SNR) Es / N0 was set to 5 dB, 10 dB, 15 dB, 20 dB, and 25 dB. For each SNR point and each MIMO configuration, 2000 independent time slots were simulated, with a new channel matrix and transmit symbol vector randomly generated each time. After decoding of each time slot, the number of search nodes and the running time were totaled for this run. After all simulations were completed, the average total number of search nodes and the average running time were obtained.

[0164] Figure 4 and Figure 5 They are 64QAM respectively. The graph compares the total number of search nodes and running time of the three algorithms. Figure 6 and Figure 7 They are 16QAM respectively. The graph compares the number of search nodes and running time of the three algorithms. From the perspective of the number of search nodes, this invention significantly outperforms both serial SESD and simple parallel SESD in this metric, especially in the low to medium signal-to-noise ratio (SNR) range, where the complexity is reduced by nearly an order of magnitude. In terms of average running time, the time advantage of this invention is mainly reflected in the high-complexity low to medium SNR range: on the same hardware platform, it can significantly compress the running time for both 8×864QAM and 14×14 16QAM, showing a clear acceleration effect compared to both serial SESD and simple parallel SESD; while in the case of high SNR and a small search tree, this invention, through adaptive parallel configuration, ensures that it is not slower than traditional algorithms.

[0165] Example 2

[0166] refer to Figure 8 The geometrically guided and task-adaptive multi-threaded spherical decoding system of the present invention includes:

[0167] The acquisition module is used to acquire the channel matrix of the system model, perform QR decomposition on the channel matrix of the system model, and obtain the QR decomposition result.

[0168] The construction module is used to construct a search tree based on the results of the QR decomposition;

[0169] The update module is used to dynamically update the search radius and optimal solution of the search tree and determine the geometric threshold;

[0170] The search module is used to search the search tree in a multi-threaded manner according to the SE order based on the search radius of the updated search tree, the optimal solution, and the determined geometric threshold, to obtain the symbol vector of the transmitting antenna in the system model and complete the multi-threaded spherical decoding for geometric guidance and task self-adaptation.

[0171] The process of dynamically updating the search radius and optimal solution of the search tree is as follows:

[0172] The global leaf library is dynamically updated during the multi-threaded search of the search tree in SE order.

[0173] When a new leaf is added to the global leaf library, and this new leaf is appearing for the first time, or when the global leaf library increases by [number], [the following occurs]. When there are 1 leaf, several candidate geometric centers are determined;

[0174] From the candidate geometric centers, select the candidate geometric center with the smallest metric. ;

[0175] Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius?

[0176] When the candidate geometric center with the smallest metric measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution;

[0177] The process of determining the geometric threshold is as follows:

[0178] Determine the current search radius r;

[0179] Set span ;

[0180] Based on the current search radius r and span Calculate geometric threshold .

[0181] The module division in this embodiment is illustrative and represents only one logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional modules in each embodiment of this application can be integrated into a single processor, exist as separate physical entities, or be integrated into a single module. The integrated modules described above can be implemented in hardware or as software functional modules.

[0182] Example 3

[0183] A computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of a geometry-guided and task-adaptive multi-threaded spherical decoding method. For example, the method includes: obtaining the channel matrix of a system model; performing QR decomposition on the channel matrix of the system model to obtain the QR decomposition result; constructing a search tree based on the QR decomposition result; dynamically updating the search radius and optimal solution of the search tree; determining a geometric threshold; and searching the search tree in a multi-threaded manner according to the SE order based on the updated search radius, optimal solution, and determined geometric threshold to obtain the symbol vectors of the transmit antennas in the system model, thus completing the geometry-guided and task-adaptive multi-threaded spherical decoding. The process of dynamically updating the search radius and optimal solution of the search tree is as follows: during the multi-threaded search of the search tree in the SE order, a global leaf library is dynamically updated; when a new leaf is added to the global leaf library, and this new leaf appears for the first time or when the global leaf library increases by a certain amount... When there are 1 leaf, several candidate geometric centers are determined; from these candidate geometric centers, the candidate geometric center with the smallest metric is selected. Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius; when the candidate geometric center with the smallest metric is found. measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution; the process of determining the geometric threshold is as follows: determine the current search radius r; set the span. Based on the current search radius r and span Calculate geometric threshold The memory may include main memory, such as high-speed random access memory, or it may also include non-volatile memory, such as at least one disk storage device. The processor, network interface, and memory are interconnected via an internal bus, which may be an industry standard architecture bus, a peripheral component interconnection standard bus, an extended industry standard architecture bus, etc. The bus may be divided into address bus, data bus, control bus, etc.

[0184] Example 4

[0185] A computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of a geometry-guided and task-adaptive multi-threaded spherical decoding method. For example, the method includes: obtaining the channel matrix of a system model; performing QR decomposition on the channel matrix of the system model to obtain the QR decomposition result; constructing a search tree based on the QR decomposition result; dynamically updating the search radius and optimal solution of the search tree; determining a geometric threshold; and, based on the updated search radius, optimal solution, and determined geometric threshold, searching the search tree in a multi-threaded manner according to the SE order to obtain the symbol vectors of the transmit antennas in the system model, thus completing the geometry-guided and task-adaptive multi-threaded spherical decoding. The process of dynamically updating the search radius and optimal solution of the search tree is as follows: during the multi-threaded search of the search tree in the SE order, a global leaf library is dynamically updated; when a new leaf is added to the global leaf library, and this new leaf appears for the first time or when the global leaf library increases by a certain amount... When there are 1 leaf, several candidate geometric centers are determined; from these candidate geometric centers, the candidate geometric center with the smallest metric is selected. Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius; when the candidate geometric center with the smallest metric is found. measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution; the process of determining the geometric threshold is as follows: determine the current search radius r; set the span. Based on the current search radius r and span Calculate geometric threshold Specifically, the computer-readable storage medium includes, but is not limited to, volatile memory and / or non-volatile memory.

[0186] Other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and disclosure of the invention. This application is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein.

[0187] It should be understood that the present invention is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.

[0188] The above description is merely a preferred embodiment of the present invention and does not constitute any limitation on the present invention. Any simple modifications, alterations, or equivalent structural changes made to the above embodiments based on the technical essence of the present invention shall still fall within the protection scope of the present invention.

Claims

1. A geometrically guided and task-adaptive multi-threaded spherical decoding method, characterized in that, include: Obtain the channel matrix of the system model, and perform QR decomposition on the channel matrix of the system model to obtain the QR decomposition result; A search tree is constructed based on the results of the QR decomposition. Dynamically update the search radius and optimal solution of the search tree, and determine the geometric threshold; Based on the search radius and optimal solution of the updated search tree and the determined geometric threshold, the search tree is searched in a multi-threaded manner according to the SE order to obtain the symbol vector of the transmitting antenna in the system model, thus completing the multi-threaded spherical decoding of geometric guidance and task self-adaptation. The process of dynamically updating the search radius and optimal solution of the search tree is as follows: The global leaf library is dynamically updated during the multi-threaded search of the search tree in SE order. When a new leaf is added to the global leaf library, and this new leaf is appearing for the first time, or when the global leaf library increases by [number], [the following occurs]. When there are 1 leaf, several candidate geometric centers are determined; From the candidate geometric centers, select the candidate geometric center with the smallest metric. ; Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius? When the candidate geometric center with the smallest metric measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution; The process of determining the geometric threshold is as follows: Determine the current search radius r; Set span ; Based on the current search radius r and span Calculate geometric threshold .

2. The multi-threaded spherical decoding method with geometric guidance and task self-adaptation according to claim 1, characterized in that, The process of dynamically updating the global leaf library during the multi-threaded search of the search tree in SE order is as follows: When the thread reaches the bottom layer of the search tree and obtains the complete symbol vector When that happens, calculate the complete path metric for that thread. ,Will Add it as a leaf element to the global leaf library; Sort the leaves in the global leaf library according to the complete path metric from smallest to largest, and retain the top leaves in the global leaf library. A leaf.

3. The multi-threaded spherical decoding method with geometric guidance and task self-adaptation according to claim 1, characterized in that, The candidate geometric centers include the zero-forcing detection results of the system model. The geometric center of all leaves The optimal solution after the last update The weighted result of the current optimal solution and the geometric center of the leaf. And the weighted result of the search radius and the geometric center of all leaves after the last update. .

4. The multi-threaded spherical decoding method with geometry guidance and task self-adaptation according to claim 1, characterized in that, The geometric threshold for: in, For empirical parameters, the current optimal metric .

5. The multi-threaded spherical decoding method with geometry guidance and task self-adaptation according to claim 1, characterized in that, During the multi-threaded search of the search tree in SE order, based on geometric thresholds... Determine if the current node to be expanded has any value for expansion. If the current node to be expanded does not have any value for expansion, then encapsulate the current node to be expanded as a task and push it to the tail of the global task queue. Once the thread reaches the bottom of the search tree, it extracts tasks from the global task queue in sequence and executes the extracted tasks until all tasks in the global task queue have been executed, thus obtaining the symbol vector of the transmitting antenna in the system model.

6. A geometrically guided and task-adaptive multi-threaded spherical decoding system, characterized in that, include: The acquisition module is used to acquire the channel matrix of the system model, perform QR decomposition on the channel matrix of the system model, and obtain the QR decomposition result. The construction module is used to construct a search tree based on the results of the QR decomposition; The update module is used to dynamically update the search radius and optimal solution of the search tree and determine the geometric threshold; The search module is used to search the search tree in a multi-threaded manner according to the SE order based on the search radius of the updated search tree, the optimal solution, and the determined geometric threshold, to obtain the symbol vector of the transmitting antenna in the system model and complete the multi-threaded spherical decoding for geometric guidance and task self-adaptation. The process of dynamically updating the search radius and optimal solution of the search tree is as follows: The global leaf library is dynamically updated during the multi-threaded search of the search tree in SE order. When a new leaf is added to the global leaf library, and this new leaf is appearing for the first time, or when the global leaf library increases by [number], [the following occurs]. When there are 1 leaf, several candidate geometric centers are determined; From the candidate geometric centers, select the candidate geometric center with the smallest metric. ; Determine the candidate geometric center with the smallest metric. measurement Is it smaller than the current search radius? When the candidate geometric center with the smallest metric measurement If the radius is smaller than the current search radius, then the candidate geometric center with the smallest metric will be selected. measurement As the updated search radius, the candidate geometric center with the smallest metric is selected. As the updated optimal solution; The process of determining the geometric threshold is as follows: Determine the current search radius r; Set span ; Based on the current search radius r and span Calculate geometric threshold .

7. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the geometric guidance and task self-adaptation multi-threaded spherical decoding method as described in any one of claims 1-5.

8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the multi-threaded spherical decoding method for geometry guidance and task self-adaptation as described in any one of claims 1-5.