M-MIMO RECEIVER
20220393726 · 2022-12-08
Inventors
- Alva Kosasih (Sydney, New South Wales, AU)
- Wibowo Hardjawana (Sydney, New South Wales, AU)
- Branka Vucetic (Sydney, New South Wales, AU)
Cpc classification
H04L2025/03426
ELECTRICITY
H04B7/0854
ELECTRICITY
H04B1/1027
ELECTRICITY
International classification
Abstract
A method for detecting transmitted data in a multiple-input multiple-output (MIMO) receiver, the method comprising: iteratively calculating symbol estimates by: obtaining input symbol estimates and input symbol variances; calculating error values for the input symbol estimates; refining the input symbol estimates to obtain refined symbol estimates, based on the error values, wherein the refined symbol estimates are used as input symbol estimates for the subsequent iteration of the above calculation, and wherein the refined symbol estimates are used as final symbol estimates when the difference between refined symbol estimates from one iteration to the next is below a threshold change.
Claims
1. A method for detecting transmitted data in a multiple-input multiple-output (MIMO) receiver, the method comprising: iteratively calculating symbol estimates by: obtaining input symbol estimates and input symbol variances; calculating error values for the input symbol estimates; and refining the input symbol estimates to obtain refined symbol estimates, based on the error values, wherein the refined symbol estimates are used as input symbol estimates for the subsequent iteration of the above calculation, and wherein the refined symbol estimates are used as final symbol estimates when the difference between refined symbol estimates from one iteration to the next is below a threshold change.
2. The method of claim 1, wherein calculations to obtain the input symbol estimates are free from matrix inversion operations.
3. The method of claim 2, wherein obtaining the input symbol estimates comprises utilising a parallel interference cancellation scheme to remove interference, whereby the use of the parallel interference cancellation scheme avoids using a matrix inversion operation.
4. The method of claim 1, wherein the input symbol estimates are obtained by applying a maximum ratio combining scheme to symbols received by the receiver.
5. The method of any preceding claim claim 1, wherein the calculation of error values comprises: constructing maximum likelihood Gaussian distribution functions based on the input symbol estimates and the input symbol variances; calculating soft symbol estimates based on the likelihood Gaussian distribution functions; and computing error values based on the difference between the input symbol estimates and the soft symbol estimates.
6. The method of claim 1, wherein the refined symbol estimates are calculated by the soft symbol estimates based on the current and previous iterations based on the error values.
7. A method for detecting transmitted data in a multiple-input multiple-output (MIMO) receiver, the method comprising: obtaining, by a symbol observation module, input symbol estimates; calculating, by a symbol estimate module, symbol error values; and calculating, by a decision statistic combining module, refined symbol estimates based on the calculated symbol errors and the input symbol estimates.
8. The method of claim 7, wherein the method is repeated iteratively until the refined symbol estimates from one iteration are sufficiently close to the refined symbol estimates from the previous iteration, whereupon the refined symbol estimates are used as final symbol estimates.
9. The method of claim 7, wherein calculations to obtain the input symbol estimates are free from matrix inversion operations.
10. The method of claim 9, wherein obtaining the input symbol estimates comprises utilising a parallel interference cancellation scheme to remove interference, whereby the use of the parallel interference cancellation scheme avoids using a matrix inversion operation.
11. The method of claim 7, wherein the input symbol estimates are obtained by applying a maximum ratio combining scheme to symbols received by the receiver.
12. The method of claim 7, wherein the calculation of error values comprises: constructing maximum likelihood Gaussian distribution functions based on the input symbol estimates and the input symbol variances; calculating soft symbol estimates based on the likelihood Gaussian distribution functions; and computing error values based on the difference between the input symbol estimates and the soft symbol estimates.
13. The method of claim 7, wherein the refined symbol estimates are calculated by weighting the soft symbol estimates based on the current and previous iterations based on the error values.
14. An apparatus for use in a wireless communication system comprising: a plurality of antennas; at least one processor coupled to the plurality of antennas and configured to perform processing of communications received via the antennas, as claimed in claim 7.
15. An apparatus for use in a wireless communication system comprising: a plurality of antennas to receive signals; a first module to obtain input symbol estimates and input symbol variances from the received signals; a second module to calculate symbol errors for the input symbol estimates; and a third module to calculate refined symbol estimates based on the calculated symbol errors and the input symbol estimates.
16. The apparatus of claim 15, wherein the apparatus is integrated with a polar code decoder.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Embodiments of the invention will now be described by way of example only with reference to the accompanying drawings.
[0051]
[0052]
[0053]
DETAILED DESCRIPTION
[0054] In an embodiment of the present invention, there is provided an iterative M-MIMO receiver 100 referred to as linear Bayesian learning (LBL) receiver 100 to cater for higher reliability and lower latency requirements in URLLC traffic, by numerous users 200.
[0055] The developed LBL receiver 100 consists of three modules: [0056] a Bayesian symbol observation (BSO) module 110; [0057] a Bayesian symbol estimate (BSE) module 120; and [0058] a decision statistic combining (DSC) module 130.
[0059] The function of each module will be described in more detail in subsequent paragraphs. However, as a general overview: [0060] the BSO module 110 applies a maximum ratio combining scheme to received signals, to obtain observed symbols. For each observed symbol, a parallel interference cancellation (PIC) scheme is then used to remove its interference. The symbol variance is also calculated. [0061] the BSE module 120 takes the observed symbols and the symbol variances, and constructs maximum likelihood Gaussian distribution functions, which are used to calculate soft symbol estimates. The symbol error between the observed symbols and the soft symbol estimates can then be calculated. [0062] the DSC module 130 takes the value of symbol errors, and uses them to calculate refined symbol estimates. The process is repeated iteratively, where the DSC module refines the symbol estimates by using the outputs from the BSE module 120, and returns the refined estimates to the BSO module 110. In producing refined estimates, the DSC module 130 in this embodiment uses the symbol error values from current and previous iterations of the process.
[0063] There are some particular advantages that may be provided by this embodiment of the invention 100. In particular, the BSO module 110 uses a PIC scheme to remove interference. This allows this embodiment of the invention to avoid matrix inversion operations or approximations, which are computationally very expensive, and thereby reduce latency compared to prior art receivers.
[0064] In addition, this embodiment of the invention derives learning parameters directly from the symbol errors between estimations and observations in different iterations, in contrast to prior trial and error approaches.
Notations
[0065] Further details of the invention are described in more detail below. However, to provide a guide to understanding the description, the following notations are used.
[0066] I denotes a proper size identity matrix. For any matrix A, A.sup.T is the transpose of A, A.sup.H is the conjugate transpose of A, and tr(A) denotes the traces of A. ∥q∥ denotes the Frobenius norm of vector q. q* denotes the complex conjugate of a complex number q.E[x] is the mean of random vector x and Var[x]=E(x−E[x]).sup.2 is its variance. N(x.sub.k,c.sub.k1.Math.v.sub.k) represents a complex single variate Gaussian distribution of random variable x.sub.k with mean c.sub.k and variance v.sub.k. By letting x=[x.sub.1, .Math. .Math. .Math. , x.sub.K].sup.T, c=[c.sub.1, .Math. .Math. .Math. , c.sub.K].sup.T, the multivariate Gaussian distribution of random vector x is denoted as N(x; c; Σ.sup.(t)), where Σ.sup.(t) is a covariance matrix.
System Model
[0067]
[0068] Consider an M-MIMO receiver (at a base station) that receives uplink signals from K users, each with a single antenna, as depicted in
y[θ]=H[θ]x[θ]+ε[θ], (1)
[0069] where x[θ]=[x.sub.1[θ], . . . , x.sub.k[θ]].sup.T, y[θ]=[y.sub.1[θ], . . . , y.sub.k[θ]].sup.T, H[θ]=[h.sub.1[θ], . . . , h.sub.k[θ]].sup.T∈C.sup.N×K is the coefficients of complex memoryless Rayleigh wireless channels between K transmit antennas (froim K users) and N receove antennas (at M-MIMO receiver), 1≤θ≤Θ, h.sub.k[θ] is the k-th column vector of matrix H[θ] that denotes wireless channel coefficients between receiver antennas and user k. ε[θ]∈C.sup.N denotes the additive white Gaussian noise (AWGN) with a zero mean and covariance matrix σ.sup.2. I. The SNR of the system is defined as
where E.sub.s is the energy per transmit antenna. We normalize the total transmit energy such that KE.sub.s=1. The channels between all transmit-receive antenna pairs are assumed to be independent memoryless Rayleigh fading channels. Transmitted vectors x[θ], 1≤θ≤Θ, are uncorrelated in case of uncoded transmission, which allows us to omit the symbol time θ hereafter for notational simplicity.
[0070] Given a received vector y ∈C.sup.N, the optimal detector, realised using the MAP decision rule, finds
[0071] However, the computational comlexity of the optimal detector in (2) grows exponentially with the number of users, which causes practical implementation difficultes in M-MIMO systems. Previously, a MMSE detector is used to relax the computational complexity of the optimal detectors wherein the symbols are approximated as
{circumflex over (x)}≈(H.sup.HH+σ.sup.2I).sup.−1H.sup.Hy, (3)
[0072] However, the matrix inversion operation used in (3) is still costly as its compexity increases polynomially with the number of recceive antennas.
[0073] In contrast to the MMSE scheme, the iteratve matched filter based PIC scheme can be used to avoid the matrix inversion operations by using the matched filter and PIC concepts. Specifically, the estimation of the symbol of user k in iteration t, x.sub.PIC,k.sup.(t) is given as
[0074] where
x.sub.PIC,k.sup.(t−1)=[x.sub.PIC,1.sup.(t−1), . . . ,x.sub.PIC,k−1.sup.(t−1), 0,x.sub.PIC,k+1.sup.(t−1), . . . ,x.sub.PIC,K.sup.(t−1)].sup.T
[0075] are the estimated symbols in the (t−1)-th iteration.
M-MIMO Receiver 100 of the Present Invention
[0076] The present invention provides a novel Bayesian PIC-DSC detector referred to as a B-PIC-DSC detector (for LBL receiver) to be employed in an uplink M-MIMO system, illustrated in
BSO Module 110
[0077] In the BSO module, x in (1) is treated as a random vector. According to Bayesian rule, the posterior probability of the transmitted symbols x given the received signals y can be expressed as follows
where p(y|x)=N(y;Hx; σ.sup.2I). Since the transmitted symbols are uniformly distributed, p(x|y) in (5) can be simplified as
p(x|y)∝(y,Hx; σ.sup.2I). (6)
[0078] Obtaining symbol estimates by using MAP criterion (2) with p(xjy) from (6) is an NP hard problem. However, we can approximate p(x|y) by using a Bayesian posterior approximation
where x.sub.PIC,k.sup.(t) is the t-th approximation of the mean of x.sub.k which is given in (4) as we use the matched filter based PIC scheme to detect the symbols and Σ(t) k is the variance of the k-th symbol, derived as
[0079] Here, s.sub.j=Σ.sub.n=1.sup.Nh.sub.n,k*h.sub.n,j, j≠k and V.sub.j.sup.(t−1) is the variance of the Bayesian symbol estimator in iteration t−1, discussed later in this specification. We set V.sub.j.sup.(0)=1 since the PIC scheme is inactive at the first iteration. The approximations of the posteriori distributions, {circumflex over (p)}.sup.(t)(x.sub.k|y)=(x.sub.k,x.sub.PIC,k.sup.(t);Σ.sub.k.sup.(t)), k=1, . . . , K are then forwarded to the the BSE module, as shown in
BSE Module 120
[0080] The BSE module 120 computes the soflt symbol estimate, {circumflex over (x)}.sub.k.sup.(t) and of the k-th user by using {circumflex over (p)}.sup.(t)(x.sub.k|y) where its mean and variance are given in (4) and (8), respectively. Since {circumflex over (p)}.sup.(t)(x.sub.k|y) is the PDF of an i.i.id. Gaussian distribution, we can decompose the MAP criterian, given in (2), using (7) as
[0081] Note that Note that with the Bayesian framework, we can approximate the computationally complex MAP criterion in (2) with the expression in (9) which has a linear computational complexity. The Bayesian symbol estimate and its variance which maximizes {circumflex over ( )}p(t)(xkjy) in (9) are respectively
where {circumflex over (p)}.sup.(t)(x.sub.k|y)={circumflex over (p)}.sup.(t)(x.sub.k|y)/Σ.sub.x.sub.
DSC Module 130
[0082] In the DSC module 130, shown in
[0083] {circumflex over (x)}.sub.k.sup.(t−1) is low when t is small.
[0084] Such a feature can be exploited to increase the diversity of symbol estimates by forming decision statistics. The decision statistics consist of a linear combination of the symbol estimates in two consecutive iterations:
x.sub.DSC,k.sup.(t)=(1−ρ.sub.DSC,k.sup.(t)){circumflex over (x)}.sub.k.sup.(t−1)+ρ.sub.DSC,k.sup.(t){circumflex over (x)}.sub.k.sup.(t) (12)
V.sub.DSC,k.sup.(t)=(1−ρ.sub.DSC,k.sup.(t))V.sub.k.sup.(t−1)+ρ.sub.DSC,k.sup.(t)V.sub.k.sup.(t) (13)
[0085] As illustrated in
[0086] This helps avoid the need for trial and error for finding optimal learning parameters, in contrast to other Bayesian learning iterative receivers. In this embodiment of the invention, the DSC concept is leveraged to avoid the trial and error processes. Specifically, the weighting coefficients in the linear combinations are determined by maximising the SINR. In the iteration t, the k-th coefficient is given as
where e.sub.k.sup.(t) is defined as the instantaneous square error of the k-th symbol estimate which can be computed by using a linear filter such as matched or zero forcing (ZF) filter. That is
e.sub.k.sup.(t)=∥w.sub.k.sup.H(y−H{circumflex over (x)}.sup.(t))∥.sup.2 (15)
where w.sub.k is the k-th column vector of the linear filter for user k.
[0087] For the B-PIC-DSC detector, we use the matched filter,
[0088] The iterative process will stop if the following condition is satisfied,
∥x.sub.DSC,k.sup.(t)−x.sub.DSC,k.sup.(t−1)∥≤ζ or t=T.sub.max, (16)
where ζ is the threshold defining the minimum acceptable difference of x.sub.DSC,k.sup.(t) in two consecutive iterations, and T.sub.max is the maximum namber of iterations. We then use x.sub.DSC,k.sup.(t) and V.sub.k.sup.(t) as the input of the BSO module in the next iteration,
x.sub.PIC,k.sup.(t)=x.sub.DSC,k.sup.(t),and V.sub.k.sup.(t)=V.sub.DSC,k.sup.(t)=1, . . . ,K. (17)
[0089] The complexity of the above described embodiment of the invention (the LBL receiver 100) only increases linearly with the number of antennas (N) and users (K) by avoiding matrix inversion operations. This is in contrast to many conventional receivers where the computational complexity grows exponentially with N and/or K. Therefore, the LBL receiver 100 is likely to have significantly lower processing latency, and thus is likely to be more suitable for URLLC data traffic.
[0090]
[0091] In
[0092] Accordingly, it is anticipated that the LBL receiver 100 of the present inventions provides advantages of several existing classical and advance iterative receivers. It is anticipated that the BER performance of LBL receiver 100 will be close to that of a maximum likelihood receiver, while maintaining linear latency processing time in contrast to other existing schemes used in other receivers.
[0093] The above embodiment of the invention constitutes an iterative M-MIMO receiver/detector that is developed by using a Bayesian concept and a parallel interference cancellation (PIC) scheme. The simulation results show that the bit-error-rate (BER) and latency processing performances of the above M-MIMO receiver outperform conventional systems for various M-MIMO system configurations.
[0094] Embodiments of the present invention provide lower processing time (latency) compared to many conventional M-MIMO receivers, as there is no matrix inversion. Embodiments of the invention may also provide higher reliability, near to the optimal receiver (maximum likelihood).
[0095] The present invention may be used as a detection technique in current 4G/5G networks as well as future 6G networks. It may be suitable to address the low latency (due to the reduction in transmission processing time requirements in 5/6G cellular networks) and high reliability needed to support industrial automation, not addressed by current receiver designs.
Improvements and Optimisations
[0096] In the first iteration, the proposed B-PIC-DSC detector relies on the matched filter to produce the symbol observations. To improve the performance of the B-PIC-DSC detector, one option is to provide an improved B-PIC-DSC (IB-PIC-DSC) detector that applies the MMSE scheme only in the first iteration. Specifically, in the first iteration, the detected symbols in the IB-PIC-DSC detector are obtained from the MMSE scheme
x.sub.PIC.sup.(0)=(H.sup.HH+σ.sup.2I).sup.−1H.sup.Hy =W.sup.Hy. (18)
[0097] The k-th row of MMSE matrix W.sup.H denoted by w.sub.k.sup.H is then used to calculate the approximation of instantaneous errors. For t≥1, the IB-PIC-DSC detector performs identical computations as the B-PIC-DSC detector. It is worth noting that the IB-PIC-DSC detector performs the inverse matrix operation only in the first iteration. This is different from the EP and MMSE-SIC detectors which calculate the inverse matrix operation in every iteration.
Polar Coded M-MIMO Receiver
[0098] With reference to
[0099] Referring to
[0100] A received signal block y[θ] corresponding to transmitted block x[θ] is described by (1), where the MIMO channel at the θ-th time slot is characterized by the N×K matrix H[θ]. The signal blocks y[θ], 1≤θ≤Θ are independently processed by the B-PIC-DSC detector, which is illustrated in
where 1≤k≤K, 1≤q≤m and Ω.sub.q.sup.(0) and Ω.sub.q.sup.(1) are the subsets of Ω consisting of the constellation points corresponding to user's symbols with the q-th bit equal to 0 and 1, respectively. The LLRs {tilde over (r)}[θ]=({tilde over (r)}[θ], . . . , {tilde over (r)}.sub.K.Math.m[θ]), 1≤θ≤Θ are combined into a single sequence and deinterleaved. The resulting sequence r consisting of m.Math.K.Math.Θ LLRs is sent to a polar code decoder to compute an estimate {circumflex over ( )}b of the original information vector b.
[0101] A (η=2.sup.μ, κ) polcar code is a linear block code generated by k rows of the matrix B.sub.η.Math.G.sub.2.sup..Math.μ, where
denotes μ-times Kronecker product of a matrix with itself and B.sub.n is an n×n bit reversal permutation matrix. Any codeword of a polar code can be represented as c=u.Math.B.sub.η.Math.G.sub.2.sup..Math.μ, where u=(u.sub.1, . . . ,u.sub.n) is an input sequence, such that u.sub.i=0, i ∈, where
⊂ {1, . . . , η} is the set of n−k indices of frozen bits. The remaining k elements of u are set to the information bits.
Sequential Decoding of Polar Codes and Integration
[0102] A channel between the polar code encoder and decoder can be denoted as W.sup.η:{0,1}.sup.η.fwdarw..sup.η. Given a polar code C and a received vector r, the decoding problem consists in finding ĉ=argmax.sub.c∈CW.sup.η(c|r). This problem is equivalent to finding û=argmax.sub.uW.sup.η(u|r) since c=u.Math.B.sub.η.Math.G.sub.2.sup..Math.μ, where maximisation is performed over the set of vectors u∈{0,1}.sup.η satisfying constraints imposed by F.
[0103] Recursive structure of polar codes enables low-complexity decoding using an SC algorithm, and list/stack variations such as a sequential decoding algorithm. These algorithms keep one or several of the most probable paths u.sub.1.sup.i≙(u.sub.1, . . . , u.sub.i)∈{0,1}.sup.i within the code tree and sequentially make decisions on input bits u.sub.i for i=1, . . . , n, where each path is associated with the corresponding score characterising its probability. Similarly to SCS, the sequential algorithm keeps the paths in a stack (priority queue). At each iteration, the decoder selects for extension path u.sub.1.sup.i with the largest score, and computes the score for path (u.sub.1.sup.i, 0) and, if (i+1).Math., also for path (u.sub.1.sup.i, 1), then puts the path(s) into the stack.
[0104] Once the decoder constructs L paths of length i, all paths shorter than i are eliminated in order to keep the size of the stack limited. Parameter L is called the list size.
[0105] Decoding terminates as soon a path of length n appears at the top of the stack, or the stack becomes empty. Hence, the worst case complexity of such decoding is given by O(L.Math.η.Math.log η). Average decoding complexity depends on how path scores are defined.
[0106] The sequential decoding algorithm potentially achieves complexity reduction compared to SCS by redefining the score function: simplifying recursive calculation and introducing a bias function to estimate the conditional probability of the most likely codeword of a polar code.
[0107] In accordance with a sequential decoding algorithm, a path u.sub.0.sup.i is associated with the following score
{circumflex over (T)}(u.sub.1.sup.i, r)=R(u.sub.1.sup.i, r){circumflex over (Ω)}(i),
where
where P.sub.j, is the j-th subchannel error probability, provided that exact values of all previous bits u.sub.j′, j′<j. are available.
[0108] Computation of probability R(u.sub.1.sup.i, r) for code of length n reduces to computation of two probabilities for codes of length n/2, i.e.
where u.sub.1,o.sup.i and u.sub.1,e.sup.i are subsequences of u.sub.1.sup.i consisting of elements with odd and even indices,respectively. The initial values for these recursive expressions are defined by r.
[0109] The bias function {circumflex over (Ω)}(i) is equal to the mean value of probability that frozen symbols in the remaining part of input sequence u.sub.i+1.sup.ηare equal to 0. It depends only on n, F (i.e. the code being considered), channel properties and phase i. This approach enables one to compare paths u.sub.1.sup.i of different lengths, and prevent the decoder from switching frequently between different paths.
[0110] For any given channel, probabilities P.sub.j for the bias function {circumflex over (Ω)}(i) can be pre-computed offline using density evolution. Min-sum density evolution provides a tradeoff between high accuracy and low-complexity.
[0111] It can be seen that W.sup.η(r|c)={tilde over (W)}.sup.η(({tilde over (r)}[1], . . . ,{tilde over (r)}[Θ])|({tilde over (c)}[1], . . . , {tilde over (c)}[Θ])) is a channel between the interleaver and the deinterleaver. Blocks {tilde over (c)}[Θ]|, 1≤θ≤Θ, are transmitted independently through a memoryless channel and that η=Θ.Math.m.Math.K. Thus, channel {tilde over (W)}.sup.η can be decomposed into Θ independent parallel channels {tilde over (W)}.sup.m.Math.K, more specifically, {tilde over (W)}.sup.η(({tilde over (r)}[1], . . . , {tilde over (r)}[Θ])|({tilde over (c)}[1]. . . . , {tilde over (c)}[Θ]))=Π.sub.θ=1.sup.Θ{tilde over (W)}.sup.m.Math.K ({tilde over (r)}[θ]|{tilde over (c)}[θ]).
[0112] Since we consider an M-MIMO scenario in which the numbers of antennas and users are large, we can employ an approximation {tilde over (W)}.sup.m.Math.K ({tilde over (r)}[θ]|{tilde over (c)}[θ])≈Π.sub.1.sup.Kp(x.sub.PIC,k.sup.(T)[θ]|x.sub.k[θ]), where p(x.sub.PIC,k.sup.(T)[θ]|x.sub.k[θ])=(x.sub.PIC,k.sup.(T)[θ],x.sub.k[θ]; v.sup.(T)). The obtained noise and interference variance v.sup.(T) can be employed to compute the probabilities P.sub.j. The probabilities P.sub.j j are further substituted into the bias function for the sequential decoder.
[0113] Although various embodiments and improvements within the scope of the invention have been described above, the present invention can also be implemented in numerous ways, including as processes, apparatus, systems, or (non-transitory) computer readable media.
[0114] Throughout this specification and the claims that follow unless the context requires otherwise, the words ‘comprise’ and ‘include’ and variations such as ‘comprising’ and ‘including’ will be understood to imply the inclusion of a stated integer or group of integers but not the exclusion of any other integer or group of integers.