U.S. patent application number 12/157275 was filed with the patent office on 2008-11-13 for fourier-transform based linear equalization for mimo cdma downlink.
This patent application is currently assigned to Nokia Corporation. Invention is credited to Yuanbin Guo, Giridhar Mandyam, Jianzhong Zhang.
Application Number | 20080279091 12/157275 |
Document ID | / |
Family ID | 35463186 |
Filed Date | 2008-11-13 |
United States Patent
Application |
20080279091 |
Kind Code |
A1 |
Zhang; Jianzhong ; et
al. |
November 13, 2008 |
Fourier-transform based linear equalization for MIMO CDMA
downlink
Abstract
In the reception of a downlink MIMO CDMA signal, the receiving
unit performs a simplified process of linear equalization that
eliminates the need for inverting the correlation matrix. The
correlation matrix is approximated to a good degree by a
circulation matrix that is diagonalized by FFT operations, thus
substituting two FFTs and one IFFT having a complexity of O ( L F (
N .DELTA. ) 3 + ( N .DELTA. ) 2 + 2 ( N .DELTA. ) 2 L F log 2 L F )
##EQU00001## for the direct matrix inversion having a complexity of
O(L.sub.F.sup.3).
Inventors: |
Zhang; Jianzhong; (Irving,
TX) ; Mandyam; Giridhar; (Plano, TX) ; Guo;
Yuanbin; (Richardson, TX) |
Correspondence
Address: |
HARRINGTON & SMITH, PC
4 RESEARCH DRIVE
SHELTON
CT
06484-6212
US
|
Assignee: |
Nokia Corporation
|
Family ID: |
35463186 |
Appl. No.: |
12/157275 |
Filed: |
June 9, 2008 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10861288 |
Jun 4, 2004 |
7420916 |
|
|
12157275 |
|
|
|
|
10436618 |
May 13, 2003 |
6873596 |
|
|
10861288 |
|
|
|
|
Current U.S.
Class: |
370/210 ;
370/342; 375/142 |
Current CPC
Class: |
H04L 25/0256 20130101;
H04L 25/03038 20130101; H04L 25/03159 20130101; H04L 2025/0342
20130101; H04L 2025/03522 20130101; H04L 25/0206 20130101; H04B
7/0845 20130101; H04L 25/0244 20130101; H04L 2025/03426 20130101;
H04L 2025/03605 20130101; H04L 25/0242 20130101; H04L 25/021
20130101; H04L 25/0204 20130101 |
Class at
Publication: |
370/210 ;
370/342; 375/142 |
International
Class: |
H04J 11/00 20060101
H04J011/00; H04B 7/216 20060101 H04B007/216; H04L 25/03 20060101
H04L025/03; H04B 1/00 20060101 H04B001/00 |
Claims
1-36. (canceled)
37. A method comprising: estimating a channel correlation matrix R
of a received signal vector r(i); generating a filter matrix w
without inverting the channel correlation matrix R; applying the
generated filter matrix w to the received signal vector r(i) to
find an estimated chip d(i); and outputting one of an audio signal
or data from the estimated chip d(i).
38. The method of claim 37, wherein generating the filter matrix w
without inverting the channel correlation matrix R comprises:
converting the channel correlation matrix R to a block circulant
matrix S; and obtaining an inverse of the block circulant matrix S
via Fourier transform operations.
39. The method of claim 38, wherein converting the channel
correlation matrix R to the block circulant matrix S comprises
adding corner matrices to the channel correlation matrix R.
40. The method of claim 39, wherein the corner matrices are
Hermitian conjugates of one another.
41. The method of claim 38, wherein obtaining the inverse of the
block circulant matrix S via Fourier transform operations comprises
executing an inverse discrete Fourier transform on only one column
of the block circulant matrix S multiplied by a discrete Fourier
transform of a chip-level channel impulse vector h.
42. The method of claim 38, wherein obtaining the inverse of the
block circulant matrix S via Fourier transform operations comprises
executing an inverse discrete Fourier transform on only one column
of the block circulant matrix S and multiplying the result by a
fast Fourier transform of a chip-level channel impulse vector
h.
43. The method of claim 38, wherein obtaining the inverse of the
block circulant matrix S via Fourier transform operations comprises
executing an inverse discrete Fourier transform on an inverted form
of a first column of the block circulant matrix S and applying the
result as frequency domain filter taps of the generated filter
matrix w.
44. The method of claim 43, further comprising adding a noise floor
to the block circulant matrix S as a unit matrix multiplied by a
constant.
45. The method of claim 38, wherein obtaining the inverse of the
block circulant matrix S via Fourier transform operations comprises
increasing filter length of the filter w while performing the
Fourier transform operations in the frequency domain and truncating
the increased filter length after an inverse Fourier transform
operation.
46. The method of claim 37, wherein the received signal vector r(i)
is received over M antennas where M is an integer greater than one,
and wherein generating the filter matrix w without inverting the
channel correlation matrix R comprises: converting the channel
correlation matrix R to a block circulant matrix S; cyclically
shifting at least a block column of the block circulant matrix S;
and obtaining an inverse of the cyclically shifted block circulant
matrix S via Fourier transform operations that are executed
separately on each of M dimensions of the received signal.
47. A storage medium tangibly embodying a program of
machine-readable instructions that are executable by a computer
processor to perform actions directed toward processing a received
signal according to actions comprising: estimating a channel
correlation matrix R of a received signal vector r(i); generating a
filter matrix w without inverting the channel correlation matrix R;
applying the generated filter matrix w to the received signal
vector r(i) to find an estimated chip d(i); and outputting one of
an audio signal or data from the estimated chip d(i).
48. The storage medium of claim 47, wherein generating the filter
matrix w without inverting the channel correlation matrix R
comprises: converting the channel correlation matrix R to a block
circulant matrix S; and obtaining an inverse of the block circulant
matrix S via Fourier transform operations.
49. The storage medium of claim 48, wherein converting the channel
correlation matrix R to the block circulant matrix S comprises
adding corner matrices to the channel correlation matrix R.
50. The storage medium of claim 49, wherein the corner matrices are
Hermitian conjugates of one another.
51. The storage medium of claim 48, wherein obtaining the inverse
of the block circulant matrix S via Fourier transform operations
comprises executing an inverse discrete Fourier transform on only
one column of the block circulant matrix S multiplied by a discrete
Fourier transform of a chip-level channel impulse vector h.
52. The storage medium of claim 48, wherein obtaining the inverse
of the block circulant matrix S via Fourier transform operations
comprises executing an inverse discrete Fourier transform on only
one column of the block circulant matrix S and multiplying the
result by a fast Fourier transform of a chip-level channel impulse
vector h.
53. The storage medium of claim 48, wherein obtaining the inverse
of the block circulant matrix S via Fourier transform operations
comprises executing an inverse discrete Fourier transform on an
inverted form of a first column of the block circulant matrix S and
applying the result as frequency domain filter taps of the
generated filter matrix w.
54. The storage medium of claim 43, the actions further comprising
adding a noise floor to the block circulant matrix S as a unit
matrix multiplied by a constant.
55. The storage medium of claim 48, wherein obtaining the inverse
of the block circulant matrix S via Fourier transform operations
comprises increasing filter length of the filter w while performing
the Fourier transform operations in the frequency domain and
truncating the increased filter length after an inverse Fourier
transform operation.
56. The storage medium of claim 47, wherein the received signal
vector r(i) is received over M antennas where M is an integer
greater than one, and wherein generating the filter matrix w
without inverting the channel correlation matrix R comprises:
converting the channel correlation matrix R to a block circulant
matrix S; cyclically shifting at least a block column of the block
circulant matrix S; and obtaining an inverse of the cyclically
shifted block circulant matrix S via Fourier transform operations
that are executed separately on each of M dimensions of the
received signal.
57. A device comprising: a channel estimator configured to estimate
a channel correlation matrix R of a received signal vector r(i); an
equalizer configured to generate a filter matrix w without
inverting the channel correlation matrix R, and for applying the
generated filter matrix w to the received signal vector r(i) to
output an estimated chip d(i)
58. The device of claim 57, wherein the channel estimator is
configured to generate the filter matrix w without inverting the
channel correlation matrix R by: converting the channel correlation
matrix R to a block circulant matrix S; and obtaining an inverse of
the block circulant matrix S via Fourier transform operations.
59. The device of claim 58, wherein the channel estimator is
configured to convert the channel correlation matrix R to the block
circulant matrix S by adding corner matrices to the channel
correlation matrix R.
60. The device of claim 59, wherein the corner matrices are
Hermitian conjugates of one another.
61. The device of claim 38, wherein the channel estimator is
configured to obtain the inverse of the block circulant matrix S
via Fourier transform operations by executing an inverse discrete
Fourier transform on only one column of the block circulant matrix
S multiplied by a discrete Fourier transform of a chip-level
channel impulse vector h.
62. The device of claim 58, wherein the channel estimator is
configured to obtain the inverse of the block circulant matrix S
via Fourier transform operations by executing an inverse discrete
Fourier transform on only one column of the block circulant matrix
S and multiplying the result by a fast Fourier transform of a
chip-level channel impulse vector h.
63. The method of claim 58, wherein the channel estimator is
configured to obtain the inverse of the block circulant matrix S
via Fourier transform operations by executing an inverse discrete
Fourier transform on an inverted form of a first column of the
block circulant matrix S and applying the result as frequency
domain filter taps of the generated filter matrix w.
64. The device of claim 63, wherein the channel estimator is
further configured to add a noise floor to the block circulant
matrix S as a unit matrix multiplied by a constant.
65. The device of claim 58, wherein the channel estimator is
configured to obtain the inverse of the block circulant matrix S
via Fourier transform operations by increasing filter length of the
filter w while performing the Fourier transform operations in the
frequency domain and truncating the increased filter length after
an inverse Fourier transform operation.
66. The device of claim 57, wherein the received signal vector r(i)
is received over M antennas where M is an integer greater than one,
and wherein the channel estimator is configured to generate the
filter matrix w without inverting the channel correlation matrix R
by: converting the channel correlation matrix R to a block
circulant matrix S; cyclically shifting at least a block column of
the block circulant matrix S; and separately executing on each of M
dimensions of the received signal the Fourier transform operations
so as to obtain the inverse of the cyclically shifted block
circulant matrix S.
Description
RELATED APPLICATIONS
[0001] This application is a Continuation in Part of U.S.
application Sequence Ser. No. 10/436,618, filed on May 13, 2003,
assigned to the assignee hereof and incorporated herein by
reference.
FIELD OF THE INVENTION
[0002] The invention relates to a MIMO reception method in mobile
CDMA telephone systems wherein a desired signal is separated from
other interfering signals by means of a linear equalization
algorithm that avoids matrix inversion.
BACKGROUND OF THE INVENTION
[0003] A central problem in designing and implementing a data
transmission system is simultaneous transmission and reception of
signals from several simultaneous users such that the signals
interfere with one another as little as possible. Because of this
and the transmission capacity used, various transmission protocols
and multiple access methods have been used, the most common
especially in mobile phone traffic being FDMA (Frequency Division
Multiple Access) and TDMA (Time Division Multiple Access), and
recently CDMA (Code Division Multiple Access).
[0004] CDMA is a multiple access method based on a spread spectrum
technique, and it has been recently put into use in cellular radio
systems in addition to previously used FDMA and TDMA. CDMA has many
advantages over the prior methods, such as simplicity of frequency
planning, and spectrum efficiency.
[0005] In a CDMA method, a narrow-band data signal of a user is
multiplied to a relatively broad band by a spreading code having a
much broader band than the data signal. Band widths used in known
test systems include e.g. 1.25 MHz, 10 MHz and 25 MHz. The
multiplication spreads the data signal over the entire band to be
used. All the users transmit simultaneously on the same frequency
band. A different spreading code is used on each connection between
a base station and a mobile station, and the signals of the users
can be distinguished from one another in the receivers on the basis
of the spreading code of the user. If possible, the spreading codes
are selected in such a way that they are mutually orthogonal, i.e.
they do not correlate with one another.
[0006] Correlators in conventionally implemented CDMA receivers are
synchronized with a desired signal, which they recognize on the
basis of the spreading code. In the receiver the data signal is
restored to the original band by multiplying it by the same
spreading code as in the transmission step. Ideally, the signals
that have been multiplied by some other spreading code do not
correlate and are not restored to the narrow band. In view of the
desired signal, they thus appear as noise. The object is to detect
the signal of the desired user from among a number of interfering
signals. In practice, the spreading codes do correlate to some
extent, and the signals of the other users make it more difficult
to detect the desired signal by distorting the received signal.
This interference caused by the users to one another is called
multiple access interference.
[0007] The situation is especially problematic when one or several
users transmit with a considerably greater signal strength than the
other users. These users employing greater signal strength
interfere considerably with the connections of the other users.
Such a situation is called a near-far problem, and it may occur for
example in cellular radio systems when one or several users are
situated near the base station and some users are further away,
whereupon the users that are situated closer blanket the signals of
the other users in the base station receiver, unless the power
control algorithms of the system are very fast and efficient.
[0008] The reliable reception of signals is problematic especially
in asynchronous systems, i.e. systems where the signals of the
users are not synchronized with one another, since the symbols of
the users are disturbed by the several symbols of the other users.
In conventional receivers, filters matched with the spreading
codes, and sliding correlators, which are both used as detectors,
do not function well in near-far situations, however. Of the known
methods the best result is provided by a decorrelating detector,
which eliminates multiple access interference from the received
signal by multiplying it by the cross-correlation matrix of the
spreading codes used. The decorrelating detector is described in
greater detail in Lupas, Verdu, `Linear multiuser detectors for
synchronous code-division multiple access channels`, IEEE
Transactions on Information Theory, Vol. 35, No. 1, pp. 123-136,
January 1989; and Lupas, Verdu, `Near-far resistance of multiuser
detectors in asynchronous channels`, IEEE Transactions on
Communications, Vol. 38, April 1990. These methods, however, also
involve many operations, such as matrix inversion operations, that
require a high calculating capacity and that are especially
demanding when the quality of the transmission channel and the
number of the users vary constantly, as for example in cellular
radio systems.
[0009] Channel equalization is a promising means of improving the
downlink receiver performance in a frequency selective CDMA
downlink. Current research encompasses two types of linear
equalization, namely non-adaptive linear equalization and adaptive
linear equalization. Non-adaptive linear equalizers usually assume
"piece-wise" stationarity of the channel and design the equalizer
according to some optimization criteria such as LMMSE (Least
Mininum Mean Squared Error) or zero-forcing, which in general leads
to solving a system of linear equations by matrix inversion. This
can be computationally expensive, especially when the coherence
time of the channel is short and the equalizers have to be updated
frequently. On the other hand, adaptive algorithms solve the
similar LMMSE or zero-forcing optimization problems by means of
stochastic gradient algorithms and avoid direct matrix inversion.
Although computationally more manageable, the adaptive algorithms
are less robust since their convergence behavior and performance
depend on the choices of parameters such as step size.
[0010] Multiple transmit, multiple receive systems have been
employed in various contexts and it has been shown that in an
independent flat-fading environment, the capacity of an MIMO system
increases linearly with the number of antennas.
[0011] Applying a MIMO configuration to the CDMA downlink presents
a significant challenge to the receiver designer because the
receiver has to combat both inter-chip interference (ICI) and
co-channel interference (CCI) in order to achieve reliable
communication.
[0012] The art still has need of an equalization procedure that is
robust and does not consume a great deal of computation power.
SUMMARY OF THE INVENTION
[0013] The purpose of the present invention is to provide an
equalization method for downlink MIMO CDMA signals that avoids a
computationally intense matrix inversion.
[0014] A feature of the invention is a linear filter process using
only FFTs and IFFTs as steps in the filter coefficient generation
process.
[0015] A feature of the invention is the approximation of the
correlation matrix with a block circulant matrix that is
diagonalized by a DFT operation.
BRIEF DESCRIPTION OF THE DRAWINGS
[0016] FIG. 1 shows a block diagram of a receiver for the general
case.
[0017] FIG. 2 shows various equations used in the analysis of the
invention.
[0018] FIG. 3 shows an overall view of a MIMO system according to
the invention.
[0019] FIG. 4 shows a counterpart figure to FIG. 1 for the MIMO
case.
[0020] FIG. 5 shows a comparison of an exact solution with a
solution according to the invention for a QPSK example.
[0021] FIG. 6 shows a comparison of an exact solution with a
solution according to the invention for a 16QAM example.
[0022] FIG. 7 shows a flow chart of the processing steps according
to the invention.
BEST MODE OF CARRYING OUT THE INVENTION
[0023] In a preliminary discussion covering both single
input/single output (SISO) and multiple input/multiple output
(MIMO), consider the case of a CDMA downlink with at least one (M)
antenna and J active users each of which is assigned a number of
codes Kj; for j=1 - - - J. Let K be the total number of active
spreading codes (summed over K.sub.j). Note that in our discussion,
we use spreading code index, rather than user index, to simplify
the notation. At the transmitter, the chip-level signal
representation is given by Eq (1) in FIG. 2, where i, m and k are
chip, symbol and spreading code indices. The base station
scrambling code is denoted by c(i). Meanwhile, ak stands for the
power assigned to spreading code k, bk is the information symbol
sequence for spreading code k and sk(i) is the spreading code
k.
[0024] Let h=[hO; :::hL] be the composite chip-level channel
impulse vector of spreading code k. Note h includes the
contributions from transmit pulse shaper, the wireless propagation
channel and the receive filter, so that it will change as the
environment changes. Also note that since we only consider
spreading code k throughout our discussion, we use h instead of hk
for clarity. The matrix-vector representation of the received
signal is given in equation 2 in FIG. 2. To facilitate the
discussion of linear equalization, we stack F+1 chips in the
received vector r so that r(i)=[r(i+F); :::; r(i); :::,
r(i-F)].=H(i)d(i)+n(i), where d(i)=E[d(i)d.sup.H(i)] is the
transmitted chip power and h(i) is the (F+1)th column in H(i). The
solution in this form is not desirable, since it depends on the
chip index i and is time-varying. However, the dependence on i can
be removed if the following two assumptions hold: [0025] a) The
channel vector h(i) is stationary over a block of chips. This
condition is satisfied by choosing the block size such that the
time span of the block is a small fraction of the channel coherence
time. With this condition, the dependence on i is removed from h(i)
and H(i). [0026] b) The chip-level transmitted signal d(i) is white
and wide sense stationary. It can be shown that this condition is
strictly satisfied if the system is fully loaded, i.e, when K=G,
and each spreading code is assigned equal power. Otherwise, this
condition holds reasonably well except for very lightly loaded
systems, i.e, when K<<G. The following solution is thus
counterintuitive, since it is better at small signal to noise
ratios than when the conditions are conventionally "better"; i.e. a
signal stands out cleanly from the background.
[0027] Removing the dependence on time, the solution to the filter
vector w becomes Equation 4 in FIG. 2, where sigma is a constant
representing the transmitted power, and R is the correlation matrix
from Eq 3. Those skilled in the art will be aware that the
estimated data after equalization are represented by
d(i)=w.sup.Hr(i), where r is the received signal in Equation 2 and
w is relatively slowly varying. It has been observed that, as shown
in Eq 5, that R is banded Toeplitz in form, with individual
elements given by Eq 6 that depend on the channel impulse vector h
and some constants.
[0028] Those skilled in the art are aware that the analytic
solution for w to the previous problem (expressing w in terms of
other observed parameters) requires inverting the correlation
matrix R. The inversion calculation requires computational
resources and time. Providing the required computation resources in
a mobile telephone handset is difficult, as is performing the
calculations with limited hardware resources quickly enough to
provide a satisfactory solution. Thus, the invention is well
adapted to use in the receiver of a mobile handset in a CDMA
cellular system.
[0029] The complexity of the matrix inversion is of the order of
L.sub.F.sup.3, where L.sub.F=2F+1 is the filter length. Further,
the matrix inversion operation can be numerically unstable and
inaccurate in the frequent case of fixed-point implementations.
[0030] It is an advantageous feature of the invention that matrix
inversion is avoided by a process in which matrix inversion is
replaced by Fourier transforms. In the preferred embodiment of the
invention, the inversion of the correlation matrix is replaced by
two FFTs (Fast Fourier Transform) and an inverse FFT.
[0031] If L.sub.F>2L, we can convert R into a circulant matrix S
by the addition of a matrix C according to Eq 7, where C is an
upper triangular "corner" matrix defined in Eq 2. The purpose of
this change is to take advantage of the property that every
circulant matrix can be diagonalized by a DFT (Discrete Fourier
Transform) matrix, i.e. S=D.sup.H(.LAMBDA.) D, where D is defined
in Eq 9 and A is a diagonal matrix that is obtained by taking a DFT
on the first column of S.
[0032] Defining V according to Eq 10, those skilled in the art will
appreciate that the problem of inverting the L.sub.F.times.L.sub.F
matrix R has been reduced to inverting the 2L.times.2L matrix
J.sub.2L-VS.sup.-1V.sup.H, where J.sub.2L is a 2L.times.2L
"exchange" matrix (ones on anti-diagonals).
[0033] Further, if the filter length is much longer than the
channel correlation length, i.e. L.sub.F>>2L, then adding the
two corners to the correlation matrix R does not significantly
change the eigenstructure of the matrix. Accordingly, the inverse
of R is approximately equal to the inverse of S. Therefore no
direct matrix inversion is necessary since the inverse of S can be
obtained with some FFT and IFFT operations.
[0034] Returning to the problem of isolating the desired signal,
the solution becomes w=S.sup.-1h=D.sup.H(.LAMBDA.).sup.-1Dh, where
the D and D.sup.H operations represent DFT and IDFT operations,
respectively. As yet another simplification, the DFT operations can
be replaced by computationally simpler FFT operations.
[0035] The signal recognition process then becomes:
Estimate the correlation matrix R from the received signal; Convert
R to the circulant matrix S by adding the two corner matrices; Take
FFT(s), where s is the first column of S and generate .LAMBDA.;
Calculate Dh=Fft(h) and (.LAMBDA.).sup.-1Dh, and
[0036] Transform back into the time domain where w=D.sup.H
(.LAMBDA.).sup.-1Dh=IFFT((.LAMBDA.).sup.-1Dh); Apply the resulting
w to the received vector r to calculate the estimated chip d.
[0037] The elements of the quantity (.LAMBDA.).sup.-1Dh will also
be referred to as the frequency domain filter taps. The estimated
chip d is then processed conventionally to generate the analog
voice signal (or data).
[0038] Since the filter is unchanged for a block of N chips, the
calculation load per chip is normalized by N. N may be,
illustratively, 1024. The overall per-chip complexity then becomes
of order (L.sub.F+(3L.sub.F/2N) log 2L.sub.F), which compares
favorably with the complexity of order (L.sub.F+(1/N)L.sub.F.sup.3)
for the direct matrix inversion method.
[0039] Referring now to FIG. 1, there is shown a block diagram of a
generalized receiver, illustratively a mobile handset in a cellular
CDMA system, in which antenna 105 receives incoming signals, which
pass to channel estimator 110, which generates an initial estimate
for parameters used in the calculations, and also passes to
equalizer 120, which represents the circuits that perform the
various calculations discussed below. in this algorithm, the
process of estimating the correlation matrix elements is performed
according to any convenient conventional method such as illustrated
in the book "Statistical Signal Processing" by Louis Scharf,
Addison Wesley. The calculations may be carried out in a
special-purpose device, including a digital signal processor chip
and/or a general purpose device such as a microprocessor. The
instructions for carrying out the process may be stored in any
convenient medium, e.g. a read-only memory chip readable by a
machine.
[0040] The function of the equalizer is to partially or largely
restore the orthogonality of the separate spreading codes
representing the various "channels", one for each user.
[0041] After the equalizer, a conventional code correlator, as
known to those skilled in the art, such as that shown in the book
"Digital Communications" by John Proakis, McGraw Hill,
[g1]separates out the power associated with the particular code
that is carrying the data of interest. A conventional deinterleaver
selects the particular data of interest. Box 150, labeled Audio,
represents schematically the conventional circuits that convert the
digital signals processed up to this point to analog audio, (or in
the case of data, pass the data on to the next step). For
convenience in expressing the claims, the signal leaving the
deinterleaver 140 will be referred to as the output signal and the
processes represented by box 150 (summing a block of data,
performing digital to analog conversion, smoothing, amplifying,
etc.) will be referred to as processing the output signal.
Numerical Calculation Techniques
[0042] Two calculation techniques have been found to improve the
accuracy of the approximation used and the stability of the
results. Adding an artificial noise floor to the matrix S by adding
a unit matrix multiplied by a small constant prevents dividing by a
small number when the eigenvalues of the matrix are used as
divisors in the FFT. This is equivalent to assuming that the noise
is worse than it really is.
[0043] In addition, since the length of the impulse vector h is a
constant fixed by the channel profile, we can improve the accuracy
of the approximation by increasing the filter length L.sub.F. This
has the effect of reducing inaccuracies introduced by adding in the
corner matrix CL when the eigenvalues are calculated. Since
increasing the filter length means higher filter complexity, a
better tradeoff is provided by using a double length (2L.sub.F)
vector while performing calculations in the frequency domain. The
initial set of chips in the received vector is expanded to length
2L.sub.F. This expanded vector is transformed to the Fourier domain
and used for calculations. After the inverse Fourier Transform, the
extra L.sub.F/2 taps on the two sides are truncated and only the
L.sub.F taps in the center are used.
Multi-Channel Diversity
[0044] Multi-channel diversity reception is an important means of
improving receiver performance. The benefit of diversity reception
is two-fold: first, the outage probability is reduced since the
chance that all the diversity branches experience deep fade is
smaller; second, the added diversity branches provide additional
signal dimension that can be used in enhancing the SNR, suppressing
the ISI and MAI, etc.
[0045] Multi-channel diversity reception manifests itself in many
forms. Among them, oversampling, multiple receive antennas, and
antenna polarization are the most commonly used.
[0046] The performance of these methods critically depend on the
statistical correlation between different diversity branches. In
general, the smaller the correlation between different diversity
branches the better the overall receiver performance.
[0047] In this section, we extend our FFT based linear equalization
method to single-antenna systems with diversity receptions. The
following treatment does not distinguish between different
diversity methods since they all share the same mathematical form.
To this end, let M denote the total number of diversity branches
(typically 2 or 4) and we extend the received signal model of Eq 2
by substituting a small vector h.sub.i for the scalar h.sub.i of
the previous discussion.
[0048] The correlation matrix is again banded block Toeplitz, with
the change that the elements are now small matrices, as shown in eq
11 and 12. The problem of solving the matrix equation for the
signal vector w is made more complex because the correlation matrix
R is now ML.sub.F.times.ML.sub.F and correspondingly more difficult
to invert directly.
[0049] The procedure of the previous section is followed by
approximating the block Toeplitz matrix R with a block circulant
matrix S. In order to invert S, we introduce a cyclic shift matrix
P according to Eq 13, where I is the identity matrix. S, then, can
be represented as Eq 14, where the symbol {circle around (x)}
denotes a Kronecker product and E.sub.0 - - - E.sub.LF-1 form the
first "block" column in matrix S. Proceeding analogously to the
previous discussion, P may be diagonalized by a DFT P=D.sup.HWD,
where D is the DFT matrix and W is diagonal of the form W=diag (1,
W.sub.LF.sup.-1, . . . , W.sub.LF.sup.-(LF-1)), with
W.sub.LF=e.sub.j(2pi/LF). After some substitution, S may be
expressed as Eq 15, where the expression 15-1 denotes
dimension-wise IDFT and expression 15-3 denotes dimension-wise DFT,
meaning that the DFT or IDFT is applied on each of the M diversity
dimensions. The central expression 15-2 is a block diagonal matrix
whose diagonal blocks are the element-wise Dft of the array of
matrices E.sub.0, . . . , E.sub.LF-1, as expressed in eq 16, where
F is an M.times.M matrix defined by eq 17. The inverse of S is
therefore given by Eq 18. The inversion of F reduces to the
inversion of L.sub.F small M.times.M matrices, since F is block
diagonal.
[0050] The procedure for multi-dimensional transmission can be
summarized as:
Estimate the correlation matrix R from the received signal. Convert
to the block circulant matrix S by adding two "corners" [0051] 3)
Take an "element-wise" FFT on the first "block" column of S and
form F, invert and get F.sup.-1 [0052] 4) Calculate
"dimension-wise" FFT of h, or (D{circle around (x)}I)h and
F.sup.-1(D{circle around (x)}I)h [0053] 5) Calculate
"dimension-wise" IFFT of F.sup.-1(D{circle around (x)}I) to get the
weight vector w=(D.sup.H{circle around (x)}I)F.sup.-1(D{circle
around (x)}I)h
[0054] This algorithm involves one "dimension-wise" FFT and IFFT on
a vector of size ML.sub.F.times.1 (equivalent to M FFT/IFFTs of
length L.sub.F), one "element-wise" FFT on a matrix of size
M.times.M (which is equivalent to M.sup.2 FFTs of length L.sub.F)
and L.sub.F matrix inversions of size M.times.M. The complexity of
this algorithm is of the order
(L.sub.FM.sup.3+(M.sup.2+2M)/2L.sub.F log 2LF), compared with the
much higher complexity of order (ML.sub.F).sup.3 of a direct matrix
inversion of R.
[0055] Multiple transmit, multiple receive antenna MIMO systems
offer potential for realizing high spectral efficiency of a
wireless communications system.
[0056] Applying MIMO configuration to the CDMA downlink presents
significant challenge to the receiver design, as the receiver has
to combat both the inter-chip interference (ICI) and the CCI in
order to achieve reliable communication. Those skilled in the art
are aware that both the conventional LMMSE algorithm and the Kalman
filter algorithm can be extended to the MIMO system. Attempts to
combine the non-linear decision feedback interference cancellation
with the LMMSE equalization are also found in the literature.
However, these algorithms perform the decision feedback directly at
the received signal, and thus require the impractical assumption
that all the active Walsh codes are known at the mobile receiver in
order to reconstruct the transmitted chip sequences.
[0057] Consider an M transmit antenna, N receive antenna MIMO CDMA
system as illustrated in FIG. 3. The input data enter on line 302
and are converted from serial to parallel in unit 310. We have
assumed a rather simple "serial to parallel split" transmit
multiplexing, in order to make our receiver solutions general
enough for all possible MIMO transmit multiplexing methods. The
modulated symbol streams are split in units 310-1 to 310-M at the
transmitter into M sub-streams before being transmitted across the
M transmit antennas 315.
[0058] Input antennas 325 pick up the signals that are detected by
detectors 330-I and processed by unit 350.
[0059] As shown in FIG. 4, the signal model at the m.sub.th
transmit antenna is given as follows, assuming K active Walsh codes
in the system:
d m ( i ) = c ( i ) k = 1 K m .alpha. k a k , m ( j ) s k ( i - j G
) ( 1 ) ##EQU00002##
where i,j,m and k are chip, symbol, transmit antenna and spreading
code indices. The base station scrambling code is denoted by c(i).
Meanwhile, .alpha..sub.k stands for the power assigned to spreading
code k (same for all antennas), .alpha..sub.k,m is the information
symbol sequence for spreading code k at antenna m and s.sub.k is
the k.sub.th spreading code. Note that in this model we have
implicitly assumed that the same set of Walsh codes are used across
all the transmit antennas.
[0060] The transmitted signals propagate through the MIMO multipath
fading channel denoted by H.sub.0, . . . , H.sub.L, where each
matrix H.sub.I is of dimension N.DELTA..times.M, where .DELTA.
denotes number of samples per chip.
[0061] The signal model at the receive antennas are thus given by
the following equation, after stacking up the received samples
across all the receive antennas for the i.sup.th chip interval.
y i = l = 0 L H l d i - l + n i . ( 2 ) ##EQU00003##
[0062] Note that y.sub.i=[y.sub.i,l.sup.T, . . . ,
y.sub.i,N.sup.T].sup.T is of length N.DELTA., and each small vector
y.sub.i,n includes all the temporal samples within the i.sup.th
chip interval. Meanwhile, L is the channel memory length,
d.sub.i-l=[d.sub.1(i-l), . . . , d.sub.M(i-l)].sup.T is the
transmitted chip vector at time i-l, and n.sub.i is the
(N.DELTA.).times.1 dimensional white Gaussian noise vector with
n.sub.i.about.N(0, .sigma..sup.2I). Note that .sigma..sup.2 denotes
noise variance and I is the identity matrix. Furthermore, in order
to facilitate the discussion on the LMMSE receiver, we stack up a
block of 2F+1 received vectors:
y.sub.i+F:i-F=Hd.sub.i+F:i-F-L+n.sub.i+F:i-F (3)
where 2F+1 is the length of the LMMSE equalizing filter and
y i + F : i - F = [ y i + F T , , y i - F T ] T , ( ( 2 F + 1 ) N
.DELTA. .times. 1 ) ##EQU00004## n i + F : i - F = [ n i + F T , ,
n i - F T ] T , ( ( 2 F + 1 ) N .DELTA. .times. 1 ) ##EQU00004.2##
d i + F : i - F - L = [ d i + F T , , d i - F - L T ] T , ( ( 2 F +
L + 1 ) M .times. 1 ) ##EQU00004.3## H = [ H 0 H L H 0 H L ] , ( (
2 F + 1 ) N .DELTA. .times. ( 2 F + L + 1 ) M ) ##EQU00004.4##
where the dimensions of the matrices are given next to them. Note
that to keep the notation more intuitive, we keep the subscripts at
a "block" level. For instance, y.sub.i+F:i-F is the vector that
contains blocks y.sub.i+F, . . . , y.sub.i-F where each block is a
vector of size N.DELTA..times.1.
[0063] The block diagram of the MIMO receiver with chip-level
equalizer is shown in FIG. 4. The signals are received on antennas
405-1 through 405-N. Channel estimator 410 proceeds analogously to
estimator 110 in FIG. 1 and estimates the parameters for the
multiple channels. The chip-level equalizer 420 processes the raw
signals in the light of input from the estimator after which, the
orthogonality of the Walsh code is partially re-installed.
Descrambler 430 detects the desired symbols from each transmit
antenna which correlates to the desired spreading code. Note the
descrambling process is also included in the code correlator. 430
Lastly, unit 440 performs the functions of deinterleaving and
decoding.
[0064] All of these blocks operate on the N input signals from the
N receive antennas. For example, the single lines in the diagram
represent a set of lines that carry the signals in parallel.
[0065] Defining an error vector of z=d.sub.i-W.sup.Hy.sub.i+F:i-F
and an error covariance matrix R.sub.zz=E[zz.sup.H], the MIMO LMMSE
chip-level equalizer W is the solution of the following
problem:
W opt = arg min W Trace ( R zz ) = arg min W E d i - W H y i + F :
i - F 2 , ( 6 ) ##EQU00005##
[0066] whose optimal solution is given by:
w.sup.opt=.sigma..sub.d.sup.2R.sup.-1H.sub.i:i. (7)
where R=E[y.sub.i+F:i-Fy.sub.i+F:i-F.sup.H] is the correlation
matrix of the received signal, .sigma..sub.d.sup.2 is the
transmitted chip power. Meanwhile, although H is fixed for a given
channel realization and is not a function of symbol index i, here
we use the notation H.sub.i+F:i+1, H.sub.i:i and H.sub.i-1:i-F-L to
represent the sub-matrices of H that are associated with
d.sub.i+F:i+1, d.sub.i and d.sub.i-1:i-F-L in the expansion of the
matrix-vector product:
Hd i + F : i - F = .DELTA. [ H i + F : i + 1 H i : i H i - 1 : i -
F - L ] [ d i + F : i + 1 d i d i - 1 : i - F - L ] = H i + F : i +
1 d i + F : i + 1 + H i : i d i + H i - 1 : i - F - L d i - 1 : i -
F - L . ( 10 ) ##EQU00006##
[0067] The MIMO LMMSE solution involves the inversion of the
correlation matrix of received signal R, which has a complexity of
O((L.sub.FN.DELTA.).sup.3) where L.sub.F=(2F+1) is the temporal
length of the filter. This complexity grows rapidly as the filter
length increases, rendering the direct LMMSE method impractical,
especially for fast-fading channel situations that require frequent
filter update. To reduce the complexity of the LMMSE algorithm, an
FFT based method was proposed in the parent case to avoid the
direct matrix inversion in the SISO/SIMO LMMSE equalization. We
show here that this FFT-based low complexity approach can be
extended to our MIMO system of interest, and name the overall
algorithm MIMO LMMSE-FFT.
[0068] We start by stating that for the quasi-stationary received
signal of interest, the correlation matrix assumes the following
block Toeplitz structure:
R = [ E 0 E L H 0 E L E L H 0 E L E 0 ] ( 11 ) ##EQU00007##
where in case of white noise, each E.sub.l is a small
N.DELTA..times.N.DELTA. matrix given by
E l = .sigma. d 2 i = 0 L H i H i - l H + .delta. l .sigma. n 2 I ,
l = 0 , , L ##EQU00008##
[0069] We are again interested in solving
W=.sigma..sub.d.sup.2R.sup.-1H.sub.i:i. Note that R is a
(L.sub.FN.DELTA.).times.(L.sub.FN.DELTA.) matrix. Although the
direct inversion of such a large matrix is difficult, we show that
with the circulant approximation and help of FFT operations, we are
able to reduce this complex problem of inverting an
(L.sub.FN.DELTA.).times.(L.sub.FN.DELTA.) matrix into a much
simpler problem of inverting L.sub.F small matrices of size
N.DELTA..times.N.DELTA..
[0070] Following a procedure similar to that for the SISO case, we
can approximate the block Toeplitz matrix R by a block circulant
matrix S. Furthermore, in order to invert S, we define cyclic shift
matrix P of size L.sub.F.times.L.sub.F:
P = [ 0 1 I 0 ] . ( 12 ) ##EQU00009##
[0071] Where I is the identity matrix. With this definition, it can
be shown that S admits the following polynomial representation:
S=I{circle around (x)}E.sub.0+P{circle around (x)}E.sub.1+ . . .
+P.sup.L.sup.F.sup.-1{circle around (x)}E.sub.L.sub.F.sub.-1.
(13)
[0072] Note that {circle around (x)} denotes Kronecker product and
E.sub.0, . . . , E.sub.L.sub.-1 form the first "block" column in
matrix S. Since P is a circulant matrix, it is well-known that P
admits the following form of diagonalization:
P=D.sup.HUD (14)
where D is the DFT matrix and U is diagonal. Furthermore, for this
special case it can be shown that U=diag(1,U.sup.-1.sub.L.sub.F,
U.sup.-(L.sup.F.sup.-1).sub.L.sub.F with
U.sub.L.sub.F=e.sup.j(2.pi./L.sup.F.sup.). Substituting (14) into
(13) we get:
S = i = 0 L F - 1 ( D H UD ) i E i = i = 0 L F - 1 ( D H U i D ) E
i = ( D H I ) ( i = 0 L F - 1 U i E i ) ( D I ) . ( 15 )
##EQU00010##
[0073] Note that we have used the identity (A{circle around
(x)}B)(D{circle around (x)}G)=(AD){circle around (x)}(BG). In (15),
D{circle around (x)}I and D.sup.H{circle around (x)}I define
dimension-wise DFT and IDFT, respectively, meaning the DFT or IDFT
is applied on each of the M diversity dimensions. On the other
hand, .SIGMA..sub.i=0.sup.L.sup.F.sup.-1U.sup.i{circle around
(x)}E.sub.i is a block diagonal matrix whose diagonal blocks are
the element-wise DFT of the array of matrices E.sub.0, . . . ,
E.sub.L.sub.F.sub.-1. Or mathematically,
F .ident. i = 0 L F - 1 U i E i = [ F 0 0 0 F L F - 1 ] ( 16 )
##EQU00011##
where F.sub.k (k=0, . . . L.sub.F-1) is a N.DELTA..times.N.DELTA.
matrix defined by:
F k = i = 0 L F - 1 U - i k E i , k = 0 , , L F - 1. ( 17 )
##EQU00012##
[0074] Finally, the inverse of S is given by:
S.sup.-1=(D.sup.H{circle around (x)}I)F.sup.-1(D{circle around
(x)}I) (18)
with the help of the identity (N{circle around
(x)}M).sup.-1=N.sup.-1{circle around (x)}M.sup.-1. Note in this
case, the inversion of F boils down to the inversion of L.sub.F
small N.DELTA..times.N.DELTA. matrices since it is block diagonal.
Finally, the optimal filter matrix W.sup.opt is given by
W opt = .sigma. d 2 R - 1 H i : i .apprxeq. .sigma. d 2 S - 1 H i :
i = .sigma. d 2 ( D H I ) F - 1 ( D I ) H i : i . ( 19 )
##EQU00013##
[0075] The overall filter design algorithm for the multi-channel
system may be summarized in FIG. 7 as:
[0076] Estimate correlation matrix R from the received signal.
[0077] Convert to the block circulant matrix S by adding the two
"corners".
[0078] Take element-wise FFT on the first "block" column of S and
form F, invert and get F.sup.-1.
[0079] Calculate "dimension-wise" FFT of H.sub.i:i, or (D{circle
around (x)}I)H.sub.i:i and furthermore F.sup.-1(D{circle around
(x)}I)H.sub.i:i.
[0080] Finally, calculate "dimension-wise" IFFT of
F.sup.-1(D{circle around (x)}I)H.sub.i:i to get the weight vector
W=.sigma..sub.d.sup.2(D.sup.H{circle around (x)}I)F.sup.-1(D{circle
around (x)}I)H.sub.i:i.
[0081] The algorithm stated above involves one "dimension-wise" FFT
and IFFT on a vector of size N.DELTA.L.sub.F.times.1 (which is
equivalent to N.DELTA. FFT/IFFTs of length L.sub.F) one
"element-wise" FFT on matrix of size N.DELTA..times.N.DELTA. (which
is equivalent to (N.DELTA.).sup.2 FFTs of length L.sub.F), and
L.sub.F matrix inversions of size N.DELTA..times.N.DELTA.. The
complexity of this algorithm is
O ( L F ( N .DELTA. ) 3 + ( N .DELTA. ) 2 + 2 ( N .DELTA. ) 2 L F
log 2 L F ) , ##EQU00014##
compared with the much higher complexity of
O((N.DELTA.L.sub.F).sup.3) of a direct matrix inversion of R.
Simulation of MIMO Results
TABLE-US-00001 [0082] ParameterName QPSK Case 16 QAM Case System
CDMA CDMA 1X/EVDV Spreading Length 32 32 Channel Profile Vehicular
A Vehicular A Mobile Speed 50 km/hr 50 km/hr Filter Length 32 32
Number of Tx/Rx Antennas 2/2 2/2 Modulation Format QPSK 16 QAM
Information Data Rate 312 kbps 163.2 kbps Turbo Code Rate 0.6771
0.5313 Geometry 6 10 Number of Walsh Codes 3 1 Assigned to the user
Total Number of Walsh 25 25 Codes in the System
[0083] Although the invention has been described with respect to a
limited number of embodiments, those skilled in the art will
appreciate that other embodiments may be constructed within the
spirit and scope of the following claims.
* * * * *