Lattice reduction assisted perturbation additive demapper for multiple-input multiple-output signal detection

By introducing machine learning-based perturbation additive demapper in MIMO signal detection, generating candidate code sets and learning signal parameter distribution, the complexity and flexibility of existing MIMO detectors are solved, and signal demapping is improved accuracy and system performance.

CN119156801APending Publication Date: 2024-12-17QUALCOMM INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202380032871.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-01-17
Filing Date
2023-02-17
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

Existing multi-input multi-output (MIMO) signal detectors have challenges in computing complexity and hardware implementation, especially when dealing with high-dimensional signal constellations and multi-antenna systems, inter-stream interference cannot be effectively considered, resulting in demapping complexity. High and limited flexibility.

Method used

Using machine learning-based perturbation additive demapper, the candidate code set is generated by introducing additive perturbation into the signal constellation diagram, and the parameter distribution of signal values ​​is learned using machine learning technology, reducing the computational complexity and improving the accuracy of demapping Spend.

Benefits of technology

The calculation cost of demapping the signal to points in the signal constellation diagram is reduced, the flexibility and accuracy of the MIMO detector is improved, and the power utilization and retransmission number in wireless communication systems is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119156801A_ABST
    Figure CN119156801A_ABST
Patent Text Reader

Abstract

Certain aspects of the present disclosure provide techniques and apparatus for demapping a signal to points in a signal constellation. One example method generally includes identifying (410) a seed point in a signal constellation from a received signal. A set of candidate codes for the signal is generated (420) based on the seed point and the additive perturbations applied to the seed point. A point in the signal constellation corresponding to a value of the received signal is identified (430) based on a probability distribution generated on the set of candidate codes. Generally speaking, the identified point corresponds to a code of the candidate code set having the highest probability in the probability distribution. The point in the signal constellation is output (440) as the value of the received signal.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to and the benefit of U.S. patent application No. 18 / 155,454, filed on January 17, 2023, entitled “Lattice Reduction-Aided Perturbed Additive Demapperfor Multiple-Input Multiple-Output Signal Detection,” which claims the benefit of and priority to U.S. provisional patent application serial number 63 / 363,031, filed on April 15, 2022, entitled “Lattice Reduction-Aided Perturbed Additive Demapper for Multiple-Input Multiple-Output Signal Detection,” and is assigned to the assignee of this application, and the contents of each of these patent applications are hereby incorporated by reference in their entirety. Background Art

[0003]

[0013] Aspects of the present disclosure relate to signal detection in a wireless communication system.

[0004] Multiple-input, multiple-output (MIMO) systems generally involve the use of multiple antennas at the transmitter and receiver for communication. Generally speaking, MIMO technology generally allows multiple data streams to be sent and received simultaneously by using multiple transmit and receive antennas for communication. By doing so, the capacity and throughput provided by the wireless communication system can be increased relative to a single-input, single-output system. MIMO communication can be performed using various techniques, such as spatial multiplexing, in which different transmit antennas are used to transmit different signals, beamforming (or spatial filtering), in which signals are directionally transmitted from a transmitting device in a specific direction with the highest radiated power, and the like.

[0005] In general, the MIMO signal is recovered by demapping the received signal to a point in a signal constellation, such as a quadrature amplitude modulation (QAM) constellation. The signal constellation typically includes a plurality of points in a multidimensional space, where each point represents a discrete value (e.g., of a bit stream). The received signal may be demapped to one of the points in the multidimensional space, and the bit value of the point to which the received signal is demapped is typically output for further processing.

[0006] Demapping a MIMO signal into points in a signal constellation diagram typically involves a probability estimate of the transmitted bits, which may be corrected using various error correction codes such as low-density parity check (LDPC) codes. Due to the computational cost of computing the probability estimates of the transmitted bits, lower complexity detectors are used to demap received MIMO signals. However, these detectors can still be computationally complex, result in high power consumption, and are implemented using a large amount of area in the processing circuitry. Summary of the invention

[0007] Certain aspects provide a processor-implemented method for demapping a signal to a point in a signal constellation. An example method generally includes: identifying a seed point in a signal constellation from a received signal. Generating a set of candidate codes for the signal based on the seed point and an additive perturbation applied to the seed point. Identifying a point in the signal constellation that corresponds to a value of the received signal based on a probability distribution generated over the set of candidate codes. Generally, the identified point corresponds to a code in the set of candidate codes that has a highest probability in the probability distribution. Outputting the point in the signal constellation as the value of the received signal.

[0008] Other aspects provide: a processing system configured to perform the aforementioned methods and those described herein; a non-transitory computer-readable medium comprising instructions that, when executed by one or more processors of the processing system, cause the processing system to perform the aforementioned methods and those described herein; a computer program product embodied on a computer-readable storage medium, the computer program product comprising code for performing the aforementioned methods and those further described herein; and a processing system comprising components for performing the aforementioned methods and those further described herein.

[0009] The following description and associated drawings set forth in detail certain illustrative features of the one or more aspects. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The accompanying drawings depict certain aspects of the disclosure and therefore are not to be considered limiting of the scope of the disclosure.

[0011] Figure 1 The mapping of the decoded signal to points in the signal constellation diagram is depicted.

[0012] Figure 2 Depicted are examples of regions in a signal constellation diagram from which candidate codes for a received signal may be selected in accordance with aspects of the present disclosure.

[0013] Figure 3 Depicted are example candidate code sets for a received signal in a signal constellation diagram in accordance with aspects of the present disclosure.

[0014] Figure 4 Depicted are example operations for demapping a received signal into points in a signal constellation based on a lattice reduction-assisted perturbed additive demapper in accordance with aspects of the present disclosure.

[0015] Figure 5 Depicted are example implementations of a processing system on which received signals are demapped into points in a signal constellation diagram in accordance with aspects of the present disclosure.

[0016] To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. It is contemplated that elements and features of one aspect may be beneficially incorporated in other aspects without further recitation. DETAILED DESCRIPTION

[0017] Aspects of the present disclosure provide techniques and apparatus for demapping received signaling to corresponding points in a signal constellation in a wireless communication system.

[0018] Multiple-input multiple-output (MIMO) technology is often used to achieve high data rates by transmitting signals from multiple antennas for reception by multiple antennas. At the receiver, various demappers may be used to decode the received signal and provide the received signal to an error correction block for further processing. Because computing probability estimates on the transmitted bits for use as input into the error correction block is typically a computationally complex task, a fixed lower complexity detector is used in an attempt to simplify the task of demapping the signal to a point in the signal constellation corresponding to a particular set of bit values.

[0019] In one example, a linear MIMO detector uses zero forcing (ZF) or minimum mean square error (MMSE) techniques to demap received signals into points in a signal constellation. However, these linear MIMO detectors do not consider inter-stream interference, where one stream interferes with other streams, and therefore are generally unable to demap received signals when signals carried on different carriers are highly correlated. In order to address the problem that linear MIMO detectors based on ZF or MMSE cannot consider inter-stream interference, a tree-based MIMO detector is used to iteratively search for candidate values ​​corresponding to the received signal. However, these tree-based methods rely on manually designed heuristics, which results in limited flexibility in optimizing MIMO detectors for various channel statistics (e.g., channel signal strength attributes, etc.) and various error correction procedures. In addition, as the size of these signal constellations increases, and as the number of antennas through which signaling is sent and received increases, the trees used by tree-based MIMO detectors can become increasingly larger (and impractically large), which may further complicate the implementation of these MIMO detectors in hardware.

[0020] Various aspects of the present disclosure provide techniques for demapping a signal using a perturbed additive (e.g., linear) demapper that uses machine learning techniques to learn a parametric distribution of signal values ​​centered on a seed point in a signal constellation. By using machine learning techniques to demap a signal to a point in a signal constellation, various aspects of the present disclosure can reduce the computational complexity of demapping a signal to a corresponding point in a signal constellation. In addition, these machine learning techniques can allow for increased flexibility in implementing a MIMO detector because these machine learning techniques can be used for different sizes of signal constellations (e.g., 64QAM, 128QAM, 256QAM, etc.) and different numbers of antennas involved in a MIMO system. Additionally, these machine learning techniques can improve the accuracy of demapping a received signal to a point in a signal constellation by generating a more reliable log-likelihood ratio (LLR) for subsequent error correction. Because these machine learning techniques can improve the accuracy of demapping a received signal to a point in a signal constellation, more reliable transmission can be achieved, and correspondingly reduce the number of retransmissions required to successfully transmit data in a wireless communication system, reduce power utilization from handling transmissions and retransmissions, and the like.

[0021] Example demapping of a signal to a point in the signal constellation diagram

[0022] Generally speaking, a MIMO system can be a multi-antenna system with M transmit antennas and N ≥ M receive antennas. The decoded bit stream can be mapped to a transmit symbol vector x∈Ω M ,in Serves 2 Q -QAM complex constellation, where α>0 and Q is even, and x j represents the number of bits per symbol. α may be chosen so that the QAM symbol is normalized to unit power per dimension (e.g., so that ). Each symbol vector is in {-1,1} M×Q There are usually corresponding decoded bit values ​​in the j,b is the bth bit in the jth dimension / layer of x.

[0023] When demapping a MIMO signal to a point in a signal constellation, it is usually assumed that the signaling is sent in a flat fading environment with a block fading channel that varies independently from frame to frame (e.g., with a constant gain per frame). Therefore, for any slot in a time-discrete complex baseband model with a noise vector (e.g., additive white Gaussian noise (AWGN)), the resulting vector y in the signal constellation can be represented by the following equation: y = Hx + n. H represents an N × M matrix representing the complex Gaussian fading gain terms with independent and identical distributions (where σ>0) is a Rayleigh fading channel. n represents a zero-mean circularly symmetric complex Gaussian noise vector with constant covariance (i.e., ). In this model, the signal-to-noise ratio (SNR) of each stream can be expressed by the following equation: 10log(1 / σ 2 ), and perfect channel estimation can be assumed at the receiver.

[0024] To detect the value of a signal in a MIMO system using soft output detection, the bit-by-bit LLR can be calculated according to the following equation:

[0025]

[0026] It can be used as input into downstream error correction algorithms. Given the AWGN-based model discussed above, the LLRs can be rewritten according to the following equations:

[0027]

[0028] and

[0029]

[0030] in is the point x with position x j,b = 1, and Represents point x with position x j,b = -1. The bit corresponding to the larger (absolute value) of the two log-likelihoods is called the hypothesis bit, and the smaller is called the counter-hypothesis bit. A large part of the complexity of the soft output demapper lies in computing the counter-hypothesis bit, because although a single hypothesis vector x * All hypothesis bits are included, but the counter-hypothesis bits may be scattered across up to MQ counter-hypothesis vectors.

[0031] To simplify this, The approximate value of can be calculated according to the following expression:

[0032]

[0033] It can be an approximation of the hard output problem defined according to the following equation: y-Hx|| 2 However, even if The approximation of simplifies the process of detecting the value of the signal in a MIMO system, and calculates It may still be an NP-complete problem for which verifying the correctness of a solution can be performed in polynomial time, and a brute force search can be used to find a solution from all possible solutions.

[0034] To demap the received vector, the linear detector can demap the received vector y by left-multiplying y=Hx+n by the linear filter matrix G and then quantizing the result to a point in the signal constellation. To define quantization for a finite set x, for complex scalar variables, the real and imaginary components can be quantized independently; for vectors, each dimension of the vector can be quantized independently.

[0035] Mathematically, a linear detector can be represented by the following equation:

[0036]

[0037] in Represents the quantization of Gy and its transformation to the constellation diagram Ω M In general, different types of linear detectors may define G in different ways. For example, a ZF detector may use the Moore-Penrose pseudo-inverse matrix of the channel matrix according to the following equation: G ZF =H + =(H H H) -1 H H , while the MMSE detector can use the noise statistics of the channel and define G according to the following equation: G MMSE =(H H H+I) -1 H H In some aspects, the MMSE detector can be represented as a ZF detector on an extended channel, where

[0038]

[0039] Satisfies the identity function:

[0040] G MMSE y= G MMsE y

[0041] in G MMSE and y Indicates that G MMSE A vector in higher dimension than y.

[0042] The above equations usually produce hard outputs, or outputs of a particular vector. To calculate soft outputs (e.g., including some measure of the likelihood that the output is the correct output), the channel model can be rewritten according to the following equation:

[0043]

[0044] where h1,h2,… denote the columns of H, and n j represents a new noise vector that treats layer i≠j as interference. By replacing the symbol x i≠j Marginalization, y|x j h j The new channel may have covariance Therefore, the problem of demapping the signal to a point in the signal constellation can be reduced to a one-dimensional problem by multiplying the equation by the per-channel decorrelation filter w j , which yields the following equation:

[0045]

[0046] In some respects, It can be approximated by a one-dimensional complex Gaussian with matching variance, yielding the following expression:

[0047]

[0048] in is the variance K projected onto w, and is a subset of constellation points with bit b set to ±1. The expressions presented above implement a soft-output ZF detector. To implement a soft-output MMSE detector, ( H , y ) to replace (H,y).

[0049] The columns of H can form the basis of the lattice according to the following equation:

[0050]

[0051] The lattice basis can be non-unique, and transformations between different bases can be performed by right-multiplying H with a unimodular matrix U defined according to the following expression:

[0052]

[0053] in That is, the general linear group over the complex integers is the set of all matrices with complex integer entries and unit determinant. Every element in , and therefore every unimodular matrix, has an inverse that is also unimodular. Due to the unit determinant, right-multiplication by U is volume preserving.

[0054] A unimodular matrix allows changing the basis of the lattice And thus it is possible to reparameterize the channel H as In many cases, the MIMO detector may not be invariant using reparameterization, and therefore, some choices of U may provide higher performance than other choices. If the columns in H are orthogonal, it can be observed that the channel has no inter-stream interference, and therefore, a linear detector may be the best choice for demapping the signal to a point in the signal constellation. Therefore, the optimal U may be a unimodular matrix that approximately orthogonalizes the columns of H, where the orthogonalization is measured in terms of the logarithmic orthogonality defect expressed by the following equation:

[0055]

[0056] The logarithmic orthogonality defect can be a non-negative quantity that decreases as the orthogonality between the columns of H increases, reaching zero when the columns of H are completely orthogonal. Therefore, the lattice reduction implemented by these equations can be used in linear detectors that use channel HU as discussed above. -1 And transform back and bind to the original constellation Ω M Previously quantized to the specification grid In addition, it should be noted that The grid quantization operator of can be efficiently computed using the following equation: in

[0057] Figure 1 An example of a signal constellation diagram is illustrated, wherein received signaling in a MIMO wireless communication system is demapped to points in the signal constellation diagram.

[0058] In constellation diagram 110, the points in the constellation diagram are arranged in a grid defined by vertical lines. In constellation diagrams 120 and 130, the points in the constellation diagram are arranged in a grid with lines drawn at an angle to lines parallel to an axis (vertical axis in constellation diagram 120 and horizontal axis in constellation diagram 130). The center point within the grid box represents a specific bit value of the signal. The points within the grid box can be mapped to the center point within the grid box.

[0059] In constellation diagram 110, the received signal is mapped to seed point 112. Because seed point 112 is located within a grid box having point 114 as its center, the MIMO demapper may map seed point 112 to point 114 and output the bit stream associated with point 114 as the bits carried in the received signal. Similarly, in constellation diagram 120, the received signal is mapped to seed point 122 within a grid box having point 124 as its center, and the MIMO detector may therefore output the bit values ​​associated with point 124 as the bits carried in the received signal. In constellation diagram 130, the received signal is mapped to seed point 132 within a grid box having point 134 as its center, and the MIMO detector may therefore output the bit values ​​associated with point 134 as the bits carried in the received signal.

[0060] In order to improve the efficiency of MIMO demapping, various aspects of the present disclosure provide techniques for applying perturbations to seed points and machine learning techniques for generating a set of candidate codes (or points in a signal constellation) associated with a received signal to determine the value of the received signal. In doing so, the search space on which the received signal is demapped can be reduced from the entire signal constellation to a portion of the signal constellation. Within this portion of the signal constellation, there is generally a high likelihood that the point in the signal constellation corresponds to the received signal. By reducing the search space from the entire signal constellation to a portion of the signal constellation, the computational cost of demapping the received signal to a point in the signal constellation can be reduced, which can reduce the amount of power used to process signaling and communicate in a wireless communication network, and can reduce the amount of circuitry used to implement a signal demapper.

[0061] Usually, calculation The complexity involved is determined by the size of the search space The size of the search space increases exponentially as the number of transmit antennas M increases, and as the number of bits represented by the points in the signal constellation increases, Q. These exponential increases may become impractical as devices implement additional transmit antennas, and as the size of the signal constellation increases to accommodate higher bit rates or other changes in wireless communication systems. To reduce the complexity involved in computing the LLRs at points in the signal constellation, aspects of the present disclosure group each point into Replace with a smaller set of candidates on which LLRs are to be calculated

[0062] Candidate Set It can be generated using a perturbed linear model in which the output Gy of the linear receiver is enhanced with a number of small perturbations δ. The perturbed output is quantized back to the signal constellation so that the candidate set is represented by the following equation:

[0063]

[0064] When generating a candidate set, the seed point can be initially selected according to the following equation: Gy = [H + y]. The seed point Gy may be referred to as a Babai point or estimate of the value of the bit stream of the signal vector x carried in the received signal y. The points in can be selected from the set Δ∪0 instead of Δ, where Δ corresponds to the perturbation of the seed point Gy on it, which is selected so that the seed point is always included in the candidate set Then, the set can be filtered into a candidate set for each bit j, b set to ±1, such as In general, for all j and b,

[0065] Based on the seed point Gy, select The points in can be driven by the assumption that the symbol with the highest likelihood corresponding to the signal vector x carried in the received signal y is close to the linear receiver output Gy and can be found in a region centered at Gy and spanning Δ. The counter-hypothesis of the value of the received signal and the points to which the received signal can be mapped can be found in the region around Gy.

[0066] Figure 2 The region in the signal constellation diagram from which a candidate code for a received signal can be selected using a perturbation applied to a seed point Gy according to aspects of the present disclosure is illustrated. As illustrated, various perturbations can be defined as, for example (but not limited to), a quadrilateral 210 (e.g., a square, a rectangle, etc.) centered at the seed point 205, a sphere (or circle 220) centered at the seed point 205, an ellipse 230 centered at the seed point 205, a Gaussian distribution 240 centered at the seed point 205, and the like.

[0067] To generate a candidate set using the perturbations defined within quadrilateral 210 , each perturbation δ can be defined according to the following equation:

[0068] δ e.g. =[0,0,s,0], where s∈QAM

[0069] To generate a candidate set using perturbations defined within circle 220 The disturbance can be defined according to the following equation:

[0070] δ=αru -2Mκ r, where

[0071] To generate a candidate set using the perturbation defined within ellipse 230 , the perturbation can be defined according to the following equation:

[0072] δ=αrG(u -2Mκ r), where

[0073] Finally, to generate the candidate set using the perturbation defined within the Gaussian distribution 240 The disturbance can be defined according to the following equation:

[0074] δ = αrGg, where

[0075] In each of the equations discussed above, α is the minimum separation between QAM constellation points; r>0 is the radius of the complex sphere centered at zero; u is a real uniform random variable in the interval [0,1]; M is the number of transmit antennas; κ>0 is the radial weighting factor; and r is the value from That is, a random vector drawn from a uniform distribution on a complex sphere of dimension M; g is a complex Gaussian vector from a circularly symmetric complex density of unit variance centered at zero; e i is a one-hot vector with one in position i; and Ω K It is the 1DK-QAM constellation diagram.

[0076] In an example where samples are extracted within circle 220, circle 220 may be defined as a sphere with radius ar. If κ=1, the distribution is uniform, and as κ>1 increases, the density of the samples approaches zero.

[0077] In the example where samples are extracted within ellipse 230, samples may be extracted from the distribution within ellipse 230 and passed through G, which makes the distribution of samples elliptical. The dimensions of the samples may be related to G, as with H + With a ZF detector (or other linear detector), the decoded symbol vector may take the form of x=Gy-Gn centered around Gy with additive noise Gn.

[0078] In examples where samples are extracted from within Gaussian distribution 240, a set of Gaussian samples may be defined (e.g., on a density function where parameters of the Gaussian distribution are identified based on Bayesian optimization, as discussed in further detail below) and passed through G.

[0079] exist Figure 2 In each of the illustrated examples, it should be appreciated that, according to various aspects, the generation of perturbations can be parallelized because the values ​​of symbols carried in a signal are generally independent of the values ​​of different symbols carried in the same signal. Therefore, for each symbol whose value is to be recovered, the symbols can be processed independently and in parallel to speed up the process of recovering the values ​​carried in the received signal.

[0080] Generating candidate sets The LLR can then be calculated using the maximum logarithm approximation according to the following equation:

[0081]

[0082] In some aspects, the collection or One of is empty, and the corresponding λ defaults to ∞. Because ∞ may not be an available value, and because LLRs exceeding the set value may not provide optimal information for error correction and decoding, the LLRs may be clipped to the maximum LLR value L max, so that L max The L can be optimized for different signal conditions (e.g., signal-to-noise ratio) and can be stored in a lookup table, where the SNR or range of SNRs is used as the L max A key for any given value.

[0083] Figure 3 An example candidate code set 300 for a received signal in a signal constellation diagram according to aspects of the present disclosure is depicted. As illustrated, the candidate code set It may be generated from a Gaussian distribution 320 centered at a seed point 310 .

[0084] In some aspects, to generate a candidate set The perturbation may be randomly selected within the Gaussian distribution 320. However, in some aspects, the perturbation may be selected based on the parameter L max The disturbance is defined by the parameters r and κ of the disturbance distribution. These parameters can be optimized, for example, using a Bayesian optimization model. Typically, in a Bayesian optimization machine learning model, the parameters r and κ can be optimized globally. For each SNR (or range of SNRs), the bit error rate (BER) L BER The average can be taken over a subset of B instances of the channel defined by y=Hx+n for a given value of the input θ. A Gaussian process can be fitted to the input-output pair {(θ k ,L BER,k )} k The result of this Gaussian process can be A differentiable Bayesian regression estimator for the mapping that can be used to select the next value of θ during the optimization process.

[0085] In some aspects, Bayesian optimization may be performed as an "offline" process to find the optimal value of θ for each SNR (subject to noise and other optimization constraints). During use, given the SNR of the channel on which the received signal is carried, θ may be looked up from a lookup table. θ may generally be selected to optimize end-to-end performance, and may allow the MIMO demapper to be executed more efficiently than performing a grid search on the signal constellation (which may become computationally infeasible).

[0086] In some aspects, it should be noted that perturbations are used to generate a set of candidate points for a given received signal. The use of lattice reduction need not be involved. Grid reduction generally allows identification of hypotheses of sufficient quality around which perturbations can be defined (e.g., identification of seed points that can be assumed to be close to actual points in the signal constellation corresponding to the received signal). When lattice reduction is used, HU -1Replace the channel H, and the quantization operation can be defined similarly. Because lattice reduction is generally a computationally complex problem, an approximation algorithm such as involving several Gram-Schmidt iterations (e.g., defined as where M corresponds to the number of transmit antennas as described above) to calculate U. In general, U can be calculated once for each H, and the cost of calculating U and performing the grid reduction can be amortized over multiple channels, where H is assumed to be constant.

[0087] In some aspects, where lattice reduction is used to process received signals, lattice reduction may be performed on each subcarrier. However, lattice reduction may be shared across multiple subcarriers. For example, lattice reduction performed on one subcarrier may be applied to other subcarriers within a coherence bandwidth defined for the wireless communication system where signaling is received. The coherence bandwidth may include, for example, frequencies over which the channel is constant (e.g., where the signals may have comparable or related fading characteristics).

[0088] Example operations for demapping a signal to points in a signal constellation diagram

[0089] Figure 4 Example operations 400 are illustrated for demapping a received signal into points in a signal constellation diagram based on a lattice reduction-assisted scrambling additive demapper in accordance with aspects of the present disclosure. Operations 400 may be performed, for example, by a receiving wireless device in a wireless communication system, such as, but not limited to, a user equipment (UE) in, but not limited to, a 5G cellular telecommunication system, a wireless station in a Wi-Fi (802.11) network, etc.

[0090] As illustrated, operation 400 includes, at block 410, identifying a seed point in a signal constellation from a received signal. In some aspects, the seed point may be identified by demapping the received signal based on a linear transformation. The linear transformation may include matrix reparameterization and demapping based on the reparameterized matrix. The matrix may be reparameterized based on a lattice reduction using a unimodular matrix, and the received signal may be demapped based on the reparameterized matrix and a symbol vector representing the received signal. A unimodular matrix (e.g., a square matrix where each entry has a value of -1, 0, or 1) may be a matrix from a set of matrices having complex integer entries and a unit determinant in a general linear group over the set of complex integer entries. When reparameterizing the matrix representing the channel, the matrix may be transformed from H to HU -1 .

[0091] At block 420, the operations 400 continue with generating a set of candidate codes for the signal based on the seed point and the additive perturbation applied to the seed point.

[0092] In some aspects, the set of candidate codes may be generated by selecting points in the signal constellation diagram that include points within a quadrilateral defined with the seed point as the center point of the quadrilateral. In some aspects, the set of candidate codes may be generated by selecting points in the signal constellation diagram as a uniform distribution within a circle defined based on a radius from the seed point. In some aspects, the set of candidate codes may be generated by selecting points in the signal constellation diagram as a uniform distribution within an ellipse defined with the seed point as the center point of the ellipse.

[0093] In some aspects, generating the set of candidate codes may include selecting points in a signal constellation based on a Gaussian distribution calculated from a density function. The Gaussian distribution may also use a seed point as the center point of the Gaussian distribution, and the selected point in the signal constellation may be identified relative to the seed point based on parameters identified according to Bayesian optimization. These parameters may include, for example, perturbation distribution parameters r and κ, where r corresponds to a radius from the seed point from which a code in the candidate set is to be selected, and κ corresponds to a sample density. These parameters may be learned based on a mapping between an input θ and an average bit error rate over several inputs for a given signal-to-noise ratio.

[0094] At block 430, the operation 400 continues by identifying a point in the signal constellation corresponding to a value of the received signal based on the probability distribution generated over the set of candidate codes. The identified point typically corresponds to a code in the set of candidate codes having the highest probability in the probability distribution.

[0095] In some aspects, to identify a point in the signal constellation corresponding to a value of the received signal, a log-likelihood ratio over a set of candidate codes may be calculated. The log-likelihood ratio may be calculated based on clipping to a maximum LLR value associated with a signal-to-noise ratio of the received signal, which may be retrieved from a lookup table keyed by the signal-to-noise ratio value, or may be identified based on Bayesian optimization.

[0096] At block 440, operation 400 continues by outputting a point in the signal constellation diagram as a value of the received signal. The point may be output in a forward error correction component of the wireless transceiver along with one or more points from one or more other signals. The forward error correction component may correct bit errors in a bit stream generated from the signal and one or more other signals using, for example, a low density parity check (LDPC) algorithm or other error correction algorithm.

[0097] In some aspects, operation 400 may include performing communications in a wireless communication network based on points in a signal constellation diagram. The wireless communication network may include a cellular wireless communication network (e.g., a 5G network), an IEEE 802.11 wireless communication network, or other wireless communication network in which data may be sent and received over a wireless channel. The communications may include voice communications and / or data communications carried in the wireless communication network.

[0098] Example processing system for demapping a signal into points in a signal constellation

[0099] Figure 5 Describes the use of such as in this article, for example Figure 4 The example processing system 500 for demapping a received signal into points in a signal constellation diagram.

[0100] Processing system 500 includes a central processing unit (CPU) 502, which in some examples may be a multi-core CPU. Instructions executed at CPU 502 may be loaded, for example, from a program memory associated with CPU 502, or may be loaded from memory 524.

[0101] The processing system 500 also includes additional processing components customized for specific functions, such as a graphics processing unit (GPU) 504 , a digital signal processor (DSP) 506 , a neural processing unit (NPU) 508 , a multimedia processing unit 510 , and a wireless connectivity component 512 .

[0102] An NPU, such as NPU 508, is typically a dedicated circuit configured to implement control and arithmetic logic for executing machine learning algorithms, such as algorithms for processing artificial neural networks (ANNs), deep neural networks (DNNs), random forests (RFs), etc. An NPU is sometimes alternatively referred to as a neural signal processor (NSP), a tensor processing unit (TPU), a neural network processor (NNP), an intelligence processing unit (IPU), a vision processing unit (VPU), or a graphics processing unit.

[0103] NPUs such as NPU 508 are configured to accelerate the execution of common machine learning tasks such as image classification, machine translation, object detection, and various other predictive models. In some examples, multiple NPUs may be instantiated on a single chip such as a system on a chip (SoC), while in other examples, multiple NPUs may be part of a dedicated neural network accelerator.

[0104] The NPU can be optimized for training or inference, or in some cases configured to balance performance between the two. For NPUs that can perform both training and inference, the two tasks can generally still be performed independently.

[0105] NPUs designed to accelerate training are generally configured to accelerate the optimization of new models, which is a highly computationally intensive operation that involves inputting an existing data set (usually labeled or tagged), iterating on the data set, and then adjusting model parameters (such as weights and biases) to improve model performance. Generally speaking, optimization based on error predictions involves passing back through the layers of the model and determining the gradient to reduce the prediction error.

[0106] NPUs designed to accelerate inference are generally configured to operate on complete models. Thus, such NPUs can be configured to input new data slices and quickly process them through the trained model to generate model outputs (e.g., inferences).

[0107] In one specific implementation, the NPU 508 is part of one or more of the CPU 502 , the GPU 504 , and / or the DSP 506 .

[0108] In some examples, wireless connectivity component 512 may include, for example, subcomponents for third generation (3G) connectivity, fourth generation (4G) connectivity (e.g., 4G LTE), fifth generation connectivity (e.g., 5G or NR), Wi-Fi connectivity, Bluetooth connectivity, and other wireless data transmission standards. Wireless connectivity component 512 is further coupled to one or more antennas 514.

[0109] The processing system 500 may also include one or more sensor processing units 516 associated with any manner of sensors, one or more image signal processors (ISPs) 518 associated with any manner of image sensors, and / or a navigation component 520, which may include a satellite-based positioning system component (e.g., GPS or GLONASS) and an inertial positioning system component.

[0110] The processing system 500 may also include one or more input and / or output devices 522, such as a screen, a touch-sensitive surface (including a touch-sensitive display), physical buttons, speakers, microphones, and the like.

[0111] In some examples, one or more of the processors of processing system 500 may be based on the ARM or RISC-V instruction set.

[0112] Processing system 500 also includes memory 524, which represents one or more static and / or dynamic memories, such as dynamic random access memory (DRAM), flash-based static memory, etc. In this example, memory 524 includes computer-executable components that are executable by one or more of the aforementioned processors of processing system 500.

[0113] Specifically, in this example, memory 524 includes a seed point identification component 524A, a candidate set generation component 524B, a point identification component 524C, a point output component 524D, and a machine learning model 524E. The depicted components and other undepicted components may be configured to perform various aspects of the methods described herein.

[0114] Generally speaking, the processing system 500 and / or its components may be configured to perform the methods described herein.

[0115] It is worth noting that in other aspects of the present disclosure, such as where the processing system 500 is a server computer, etc., various elements of the processing system 500 may be omitted. For example, in other aspects, the multimedia processing unit 510, the wireless connectivity component 512, the sensor processing unit 516, the ISP 518, and / or the navigation component 520 may be omitted. In addition, various elements of the processing system 500 may be distributed, such as training a model and using the model to generate inferences.

[0116] Sample Clauses

[0117] Specific implementation details for each aspect are described in the following numbered clauses.

[0118] Clause 1: A method performed by a wireless device in a wireless communication network, the method comprising: identifying a seed point in a signal constellation diagram from a received signal; generating a set of candidate codes for the received signal based on the seed point and an additive perturbation applied to the seed point; identifying a point in the signal constellation diagram corresponding to a value of the received signal based on a probability distribution generated over the candidate code set, wherein the identified point corresponds to a code in the candidate code set having a highest probability in the probability distribution; and outputting the point in the signal constellation diagram as the value of the received signal.

[0119] Clause 2: The method of clause 1, wherein identifying the seed point comprises demapping the received signal based on a linear transformation.

[0120] Clause 3: A method according to clause 2, wherein demapping the received signal comprises: reparameterizing a matrix representing a channel on which the received signal is received based on a lattice reduction using a single-mode matrix; and demapping the received signal based on the reparameterized matrix and a symbol vector representing the received signal.

[0121] Clause 4: A method according to any one of clauses 1 to 3, wherein generating the set of candidate codes comprises selecting a point in the signal constellation diagram that includes a point within a quadrilateral, the quadrilateral being defined with the seed point as the center point of the quadrilateral.

[0122] Clause 5: The method of any one of clauses 1 to 4, wherein generating the set of candidate codes comprises selecting points in the signal constellation as a uniform distribution within a circle, the circle being defined based on a radius from the seed point.

[0123] Clause 6: A method according to any one of clauses 1 to 5, wherein generating the set of candidate codes comprises selecting points in the signal constellation diagram as a uniform distribution within an ellipse, the ellipse being defined with the seed point as the center point of the ellipse.

[0124] Clause 7: The method of any of clauses 1 to 6, wherein generating the set of candidate codes comprises selecting points in the signal constellation based on a Gaussian distribution calculated from a density function.

[0125] Clause 8: The method of clause 7, wherein the parameters of the Gaussian distribution comprise parameters identified based on Bayesian optimization.

[0126] Clause 9: A method as described in any of clauses 1 to 8, wherein identifying the point in the signal constellation corresponding to the value of the received signal comprises calculating a log-likelihood ratio over the set of candidate codes.

[0127] Clause 10: The method of clause 9, wherein the log likelihood ratio is calculated based on clipping to a maximum value associated with a signal-to-noise ratio of the received signal.

[0128] Clause 11: The method of clause 10, further comprising: retrieving the maximum value from a lookup table keyed by signal-to-noise ratio value.

[0129] Clause 12: The method of clause 10 or 11, further comprising: identifying the maximum value based on Bayesian optimization.

[0130] Clause 13: The method of any one of clauses 1 to 12, further comprising: performing communications in the wireless communication network based on the point in the signal constellation diagram.

[0131] Clause 14: A method as described in any of clauses 1 to 13, wherein the wireless communication network is a 5G network.

[0132] Clause 15: The method of clause 13 or 14, wherein the communications comprise voice communications in the wireless communications network.

[0133] Clause 16: The method of any of clauses 13 to 15, wherein the communication comprises data communication in the wireless communication network.

[0134] Clause 17: The method of any of clauses 1 to 16, wherein outputting the point comprises outputting the point for processing in a forward error correction component of a wireless transceiver along with one or more other points from one or more other signals.

[0135] Clause 18: A processing system, the processing system comprising: a memory, the memory comprising computer-executable instructions; and one or more processors, the one or more processors configured to execute the computer-executable instructions and cause the processing system to perform a method according to any one of clauses 1 to 17.

[0136] Clause 19: A processing system comprising: means for performing the method according to any one of clauses 1 to 17.

[0137] Clause 20: A non-transitory computer readable medium comprising: computer executable instructions that, when executed by one or more processors of a processing system, cause the processing system to perform the method of any one of clauses 1 to 17.

[0138] Clause 21: A computer program product embodied on a computer readable storage medium, the computer program product comprising: code for performing the method according to any one of clauses 1 to 17.

[0139] Additional considerations

[0140] The foregoing description is provided to enable any person skilled in the art to practice the various aspects described herein. The examples discussed herein are not limited to the scope, applicability or aspects set forth in the claims. Various modifications to these aspects will be apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. For example, without departing from the scope of the present disclosure, the functions and arrangements of the elements discussed may be changed. Various examples may omit, replace or add various processes or components as appropriate. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted or combined. In addition, the features described with respect to some examples may be combined in some other examples. For example, any number of aspects set forth herein may be used to implement a device or practice method. In addition, the scope of the present disclosure is intended to cover such devices or methods practiced using other structures, functionality, or structures and functionality other than the various aspects of the present disclosure set forth herein or different from the various aspects of the present disclosure set forth herein. It should be understood that any aspect of the disclosure disclosed herein may be embodied by one or more elements of the claims.

[0141] As used herein, the word “exemplary” means “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects.

[0142] As used herein, a phrase referring to "at least one of" a list of items refers to any combination of those items (including single members). As an example, "at least one of a, b, or c" is intended to cover: a, b, c, ab, ac, bc, and abc, as well as any combination with multiple identical elements (e.g., aa, aaa, aab, aac, abb, acc, bb, bbb, bbc, cc, and ccc, or any other ordering of a, b, and c).

[0143] As used herein, the term "determining" encompasses a wide variety of actions. For example, "determining" may include calculating, computing, processing, deriving, investigating, searching (e.g., searching in a table, database, or other data structure), ascertaining, and the like. Furthermore, "determining" may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), and the like. Furthermore, "determining" may include resolving, selecting, choosing, establishing, and the like.

[0144] The method disclosed herein includes one or more steps or actions for implementing the method. The steps and / or actions of the method can be interchangeable with each other without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order and / or use of specific steps and / or actions can be modified without departing from the scope of the claims. In addition, the various operations of the method described above can be performed by any suitable component capable of performing the corresponding function. The component may include various hardware and / or software components and / or modules, including but not limited to circuits, application specific integrated circuits (ASICs) or processors. Generally speaking, in the case of the operations illustrated in the accompanying drawings, those operations may have corresponding corresponding components with similar numbers plus functional components.

[0145] The following claims are not intended to be limited to the various aspects shown herein, but should be given the full scope consistent with the language of the claims. Within the claims, unless explicitly stated, reference to an element in the singular form is not intended to mean "one and only one", but "one or more". Unless otherwise specifically stated, the term "some" refers to one or more. Any claim element should not be interpreted according to the provisions of 35 U.S.C. § 112 (f), unless the phrase "parts for..." is used to expressly state the element, or in the case of a method claim, the phrase "step for..." is used to state the element. All structural and functional equivalents of the elements of the various aspects described throughout the present disclosure that are known or will be known later to a person of ordinary skill in the art are expressly incorporated herein by reference and are intended to be covered by the claims. In addition, regardless of whether such disclosure is explicitly stated in the claims, anything disclosed herein is not intended to be disclosed to the public.

Claims

1. A method of wireless communication performed by a wireless device in a wireless communication network, the method comprising: identifying a seed point in a signal constellation diagram from the received signal; generating a set of candidate codes for the received signal based on a seed point and an additive perturbation applied to the seed point; identifying a point in the signal constellation corresponding to a value of the received signal based on a probability distribution generated over the set of candidate codes, wherein the identified point corresponds to a code in the set of candidate codes having a highest probability in the probability distribution; as well as The identified point in the signal constellation diagram is output as the value of the received signal. 2 . The method of claim 1 , wherein identifying the seed point comprises demapping the received signal based on a linear transformation.

3. The method of claim 2, wherein demapping the received signal comprises: reparameterizing a matrix representing a channel over which the received signal was received based on a lattice reduction using a unimodular matrix; as well as The received signal is demapped based on the reparameterized matrix and a symbol vector representing the received signal.

4. The method of claim 1, wherein generating the set of candidate codes comprises selecting a point in the signal constellation diagram that includes a point within a quadrilateral defined with the seed point as a center point of the quadrilateral.

5. The method of claim 1, wherein generating the set of candidate codes comprises selecting points in the signal constellation as a uniform distribution within a circle, the circle being defined based on a radius from the seed point.

6. The method of claim 1, wherein generating the set of candidate codes comprises selecting points in the signal constellation diagram as a uniform distribution within an ellipse, the ellipse being defined with the seed point as a center point of the ellipse.

7. The method of claim 1, wherein generating the set of candidate codes comprises selecting points in the signal constellation based on a Gaussian distribution calculated from a density function. The method of claim 7 , wherein the parameters of the Gaussian distribution include parameters identified based on Bayesian optimization.

9. The method of claim 1, wherein identifying the point in the signal constellation diagram corresponding to the value of the received signal comprises computing a log-likelihood ratio over the set of candidate codes.

10. The method of claim 9, wherein the log likelihood ratio is calculated based on clipping to a maximum value associated with a signal-to-noise ratio of the received signal.

11. The method according to claim 10, further comprising: The maximum value is retrieved from a lookup table keyed by the signal-to-noise ratio value.

12. The method according to claim 10, further comprising: The maximum value is identified based on Bayesian optimization.

13. The method according to claim 1, further comprising: Communicating in the wireless communication network is performed based on the identified points in the signal constellation diagram.

14. The method of claim 1, wherein the wireless communication network is a 5G network.

15. The method of claim 1, wherein outputting the identified point comprises outputting the identified point for processing in a forward error correction component of a wireless transceiver along with one or more other points from one or more other signals.

16. A processing system, the processing system comprising: a memory having computer-executable instructions stored thereon; and a processor configured to execute the computer executable instructions to cause the processing system to: identifying a seed point in a signal constellation diagram from the received signal; generating a set of candidate codes for the received signal based on a seed point and an additive perturbation applied to the seed point; identifying a point in the signal constellation corresponding to a value of the received signal based on a probability distribution generated over the set of candidate codes, wherein the identified point corresponds to a code in the set of candidate codes having a highest probability in the probability distribution; as well as The identified point in the signal constellation diagram is output as the value of the received signal.

17. The processing system of claim 16, wherein to identify the seed point, the processor is configured to cause the processing system to demap the received signal based on a linear transformation.

18. The processing system of claim 17, wherein to demap the received signal, the processor is configured to cause the processing system to: reparameterizing a matrix representing a channel over which the received signal was received based on a lattice reduction using a unimodular matrix; and The received signal is demapped based on the reparameterized matrix and a symbol vector representing the received signal.

19. The processing system of claim 16, wherein to generate the set of candidate codes, the processor is configured to cause the processing system to select a point in the signal constellation diagram that includes a point within a quadrilateral, the quadrilateral being defined with the seed point as a center point of the quadrilateral.

20. The processing system of claim 16, wherein to generate the set of candidate codes, the processor is configured to cause the processing system to select points in the signal constellation as a uniform distribution within a circle, the circle being defined based on a radius from the seed point.

21. The processing system of claim 16, wherein to generate the set of candidate codes, the processor is configured to cause the processing system to select points in the signal constellation diagram as a uniform distribution within an ellipse, the ellipse being defined with the seed point as a center point of the ellipse.

22. The processing system of claim 16, wherein to generate the set of candidate codes, the processor is configured to cause the processing system to select points in the signal constellation based on a Gaussian distribution calculated from a density function.

23. The processing system of claim 22, wherein the parameters of the Gaussian distribution include parameters identified based on Bayesian optimization.

24. The processing system of claim 16, wherein to identify the point in the signal constellation diagram corresponding to the value of the received signal, the processor is configured to cause the processing system to calculate a log-likelihood ratio over the set of candidate codes.

25. The processing system of claim 24, wherein the log likelihood ratio is calculated based on clipping to a maximum value associated with a signal-to-noise ratio of the received signal.

26. The processing system of claim 25, wherein the processor is further configured to cause the processing system to retrieve the maximum value from a lookup table keyed by a signal-to-noise ratio value.

27. The processing system of claim 16, wherein the processor is further configured to cause the processing system to perform communications in a wireless communication network based on the identified points in the signal constellation diagram.

28. The processing system of claim 16, wherein to output the identified point, the processor is configured to cause the processing system to output the identified point for processing in a forward error correction component of a wireless transceiver along with one or more other points from one or more other signals.

29. A processing system for wireless communication, the processing system comprising: means for identifying a seed point in a signal constellation diagram from a received signal; means for generating a set of candidate codes for the received signal based on a seed point and an additive perturbation applied to the seed point; means for identifying a point in the signal constellation corresponding to a value of the received signal based on a probability distribution generated over the set of candidate codes, wherein the identified point corresponds to a code in the set of candidate codes having a highest probability in the probability distribution; and Means for outputting said identified point in said signal constellation as said value of said received signal.

30. A non-transitory computer readable medium, the non-transitory computer readable medium comprising: Computer executable instructions that, when executed by one or more processors of a processing system, cause the processing system to perform operations including: identifying a seed point in a signal constellation diagram from the received signal; generating a set of candidate codes for the received signal based on a seed point and an additive perturbation applied to the seed point; identifying a point in the signal constellation corresponding to a value of the received signal based on a probability distribution generated over the set of candidate codes, wherein the identified point corresponds to a code in the set of candidate codes having a highest probability in the probability distribution; as well as The identified point in the signal constellation diagram is output as the value of the received signal.

Citation Information

Patent Citations

  • Lattice reduction-aided perturbed additive demapper for multiple-input multiple-output signal detection

    US20230336220A1