U.S. patent application number 11/850837 was filed with the patent office on 2008-10-30 for efficient computaton of soft scaling factors for linear multi-user detector.
This patent application is currently assigned to Telefonaktlebolaget LM Ericsson (publ). Invention is credited to Gregory E. Bottomley, Douglas A. Cairns, Karl J. Molnar.
Application Number | 20080267262 11/850837 |
Document ID | / |
Family ID | 40429583 |
Filed Date | 2008-10-30 |
United States Patent
Application |
20080267262 |
Kind Code |
A1 |
Cairns; Douglas A. ; et
al. |
October 30, 2008 |
Efficient Computaton of Soft Scaling Factors for Linear Multi-User
Detector
Abstract
A symbol detector converts initial symbol estimates of received
symbols to soft estimates for decoding. The symbol detector
computes spreading waveform correlations between a spreading
waveform for a symbol of interest and spreading waveforms for one
or more interfering symbols. Interference rejection terms are
computed by scaling the spreading waveform correlations by
corresponding signal powers and compensating for noise. A soft
scaling factor for the symbol of interest is computed from the
interference rejection terms. The soft scaling factors are then
applied to the initial symbol estimates to generate the soft
estimates.
Inventors: |
Cairns; Douglas A.; (Durham,
NC) ; Bottomley; Gregory E.; (Cary, NC) ;
Molnar; Karl J.; (Cary, NC) |
Correspondence
Address: |
COATS & BENNETT, PLLC
1400 Crescent Green, Suite 300
Cary
NC
27518
US
|
Assignee: |
Telefonaktlebolaget LM Ericsson
(publ)
Stockholm
SE
|
Family ID: |
40429583 |
Appl. No.: |
11/850837 |
Filed: |
September 6, 2007 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11739126 |
Apr 24, 2007 |
|
|
|
11850837 |
|
|
|
|
Current U.S.
Class: |
375/148 |
Current CPC
Class: |
H04B 1/71055 20130101;
H04B 1/7115 20130101; H04B 2201/709727 20130101 |
Class at
Publication: |
375/148 |
International
Class: |
H04B 1/10 20060101
H04B001/10; H04B 7/216 20060101 H04B007/216 |
Claims
1. A method of detecting a symbol of interest in a received signal,
said method comprising: determining initial estimates for a symbol
of interest and one or more interfering symbols; computing
spreading waveform correlations between a spreading waveform for
the symbol of interest and spreading waveforms for one or more
interfering symbols; computing interference rejection terms by
scaling said spreading waveform correlations by corresponding
signal powers and compensating for noise; computing a soft scaling
factor for said symbol of interest based on said interference
rejection terms; and determining a soft estimate from said initial
estimate for said symbol of interest by applying said scaling
factor to said initial estimate for said symbol of interest.
2. The method of claim 1 wherein determining initial estimates for
the symbol of interest and one or more interfering symbols
comprises despreading the received signal to generate despread
values, combining said despread values to generate RAKE combined
values, and processing said RAKE combined values to generate said
initial estimates.
3. The method of claim 1 wherein said initial symbol estimates
comprise normalized symbol estimates.
4. The method of claim 1 wherein said initial symbol estimates
comprise Minimum Mean Squared Error (MMSE) symbol estimates.
5. The method of claim 1 wherein said soft scaling factors are
computed by iteratively solving a system of linear equations.
6. The method of claim 1 wherein said soft scaling factors are
computed by inverting a matrix of said interference rejection
terms.
7. The method of claim 6 further comprising storing the inverted
matrix computed for a first code of interest and applying said
stored matrix to compute soft scaling factors for a second code of
interest.
8. The method of claim 6 wherein inverting a matrix of said
interference rejection terms comprises one of LU decomposition, QR
decomposition, or Cholesky factorization.
9. A symbol detector for a receiver comprising: an initial symbol
estimator to determine an initial estimate for a symbol of
interest; a correlation estimator to compute spreading waveform
correlations between a spreading waveform for the symbol of
interest and spreading waveforms for one or more interfering
symbols; an interference estimator to compute interference
rejection terms by scaling said spreading waveform correlations by
corresponding signal powers and compensating for noise; a scaling
factor estimator to compute a soft scaling factor for said symbol
of interest based on said interference rejection terms; and a
scaling unit to apply said scaling factor to said initial estimate
to determine a soft symbol estimate for decoding.
10. The symbol detector of claim 9 further comprising a RAKE
receiver to despread a received signal to generate despread values
and to combine said despread values to generate RAKE combined
values for input to said initial symbol estimator.
11. The symbol detector of claim 9 wherein said initial symbol
estimator generates normalized symbol estimates.
12. The symbol detector of claim 9 wherein said initial symbol
estimator generates Minimum Mean Squared Error (MMSE) symbol
estimates.
13. The symbol detector of claim 9 wherein said scaling factor
estimator computes soft scaling factors by iteratively solving a
system of linear equations.
14. The symbol detector of claim 9 wherein said scaling factor
estimator computes soft scaling factors by inverting a matrix of
said interference rejection terms.
15. The symbol detector of claim 14 wherein said symbol detector
further comprises memory to store said inverted matrix computed for
a first code of interest to use in computing soft scaling factors
for a second code of interest.
16. The symbol detector of claim 14 wherein said scaling factor
estimator inverts a matrix of said interference rejection terms
using one of LU decomposition, QR decomposition, or Cholesky
factorization.
Description
RELATED APPLICATIONS
[0001] This application claims priority under 35 U.S.C. .sctn.120
as a continuation-in-part of the pending U.S. patent application
filed on 24 Apr. 2007 and assigned U.S. patent application Ser. No.
11/739,126, which is entitled "Robust Multicode Detector for HSDPA"
and incorporated by reference herein.
BACKGROUND
[0002] Interference is one of the biggest challenges to obtaining
high data transmission rates in Code Division Multiple Access
(CDMA) systems, such as Wideband CDMA and cdma2000. Interference
arises in two main ways. First, in dispersive channels, multiple
echoes of the transmitted signal arrive at the receiver with
different delays. Such dispersion results in Intersymbol
Interference (ISI) and Multiple Access Interference (MAI) due to
loss of orthogonality between different spreading codes. Second,
neighboring cells contribute interference even in non-dispersive
channels because the base station long scrambling codes are not
orthogonal. In addition to interference, a receiver must contend
with noise. The combination of interference and noise, referred to
herein as receiver impairment or impairment, degrades performance
at the receiver and limits the data rates that can be realized.
[0003] Generalized RAKE (G-RAKE) receivers have been developed for
suppressing interference and noise. Interference suppression is
achieved in a G-RAKE receiver by treating ISI and MAI as colored
Gaussian noise. The noise correlation across fingers is then
exploited by adapting the finger delays and combining weights. In
this way, the orthogonality between user signals may be partially
restored. Recently, further improvements in G-RAKE receivers have
been proposed for the High Speed Downlink Packet Access (HSDPA)
mode of WCDMA that take into account code cross-correlations.
[0004] Multi-user detection techniques have also been used to
suppress MAI and ISI due to channel dispersion. Various types of
multi-user detectors are known. The optimal multi-user detector is
a Maximum Likelihood Sequence Estimation (MLSE) detector. However,
the complexity of an MLSE detector grows exponentially with the
number of users and is therefore not practical to implement.
Therefore, there is interest in developing suboptimal detectors
that obtain good performance with low complexity.
[0005] One suboptimal multi-user detector is the linear Minimum
Mean Squared Error (MMSE) detector. Co-pending application Ser. No.
11/739,126 filed 24 Apr. 2007 and titled "Robust Multicode Detector
for HSDPA" describes an exemplary MMSE detector for generating MMSE
estimates of the received symbols. For proper decoding, it is
desirable to scale the MMSE estimates or other initial symbol
estimates of the received symbols to yield maximum likelihood (ML)
estimates.
SUMMARY
[0006] The present invention relates generally to a method and
apparatus for computing soft scaling factors to convert initial
symbol estimates of received symbols to soft estimates for
decoding. The method comprises computing spreading waveform
correlations between a spreading waveform for a symbol of interest
and spreading waveforms for one or more interfering symbols,
computing interference rejection terms by scaling the spreading
waveform correlations by corresponding signal powers and
compensating for noise, and computing a soft scaling factor for the
symbol of interest based on the interference rejection terms. A
robust interference model is used to compute the soft scaling
factors that avoid numerical problems associated with other known
methods. The soft scaling factors are applied to the initial symbol
estimates to generate the soft estimates. In some exemplary
embodiments, normalized symbol estimates or MMSE symbol estimates
are scaled to produce maximum likelihood estimates for
decoding.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] FIG. 1 illustrates an exemplary multicode receiver
[0008] FIG. 2 illustrates an exemplary RAKE receiver for a
multicode receiver.
[0009] FIG. 3 illustrates an exemplary multicode detector for a
multicode receiver.
[0010] FIG. 4 illustrates an exemplary method for computing soft
symbol estimates.
[0011] FIG. 5 illustrates an exemplary method for computing soft
scaling factors,
[0012] FIG. 6 illustrates an exemplary method for computing ML
symbol estimates from MMSE symbol estimates using an iterative
approach.
[0013] FIG. 7 illustrates an exemplary method for computing ML
symbol estimates from normalized symbol estimates using an
iterative approach.
[0014] FIG. 8 illustrates an exemplary method for computing ML
symbol estimates from MMSE symbol estimate using a matrix inversion
approach.
[0015] FIG. 9 illustrates an exemplary method for computing ML
symbol estimates from MMSE symbol estimate using a matrix inversion
approach.
DETAILED DESCRIPTION
[0016] Referring now to the drawings, FIG. 1 illustrates a block
diagram of a multicode receiver 10 according to one exemplary
embodiment for jointly detecting signals in a composite received
signal r(t) that has been transmitted on different spreading codes.
Receiver 10 comprises a multicode RAKE receiver 12, a multicode
detector 30, parameter estimator 50, and memory 35. The multicode
RAKE receiver 12 despreads the composite received signal r(t) to
generate a vector z of combined values corresponding to each
spreading code. The multicode detector 30 jointly detects symbols
transmitted on the codes of interest. As will be described more
fully below, the multicode detector 30 generates initial symbol
estimates of the symbols of interest and scales the initial symbol
estimates to obtain soft estimates s.sub.SOFT for decoding. The
initial symbol s.sub.INITIAL estimates may, for example, comprise
normalized symbol estimates s.sub.NORMAL or MMSE symbol estimates
s.sub.MMSE. The soft estimates may comprise Maximum Likelihood (ML)
estimates. The parameter estimator 50 estimates parameters used by
the multicode detector 30 to generate symbol estimates. The
exemplary embodiment of the receiver 10 described is configured for
the High Speed Packet Access (HSPA) mode in a Wideband Code
Division Multiple Access (WCDMA) system. The receiver 10 may be
deployed in a base station or a mobile terminal. Memory 35 may
temporarily store computed values as hereinafter described to
reduce the computational load on the multicode detector 30.
[0017] FIG. 2 illustrates the multicode RAKE receiver 12 in more
detail. The multicode RAKE receiver 12 may be viewed as a plurality
of single code RAKE receivers 14, one for each spreading code. RAKE
receivers 14 may comprise conventional RAKE receivers or
generalized RAKE (G-RAKE) receivers. Each RAKE receiver 14
comprises a plurality of RAKE fingers 16 and a RAKE combiner 18.
The RAKE fingers 16 process different time shifts or multi-path
echoes of the received signal r(t). Typically, each RAKE finger 16
comprises a delay element 22 and a correlator or despreader 24.
Delay elements 22 delay the received signal r(t) to time align the
multi-path echoes processed by each RAKE finger 16. Correlators 24
correlate the delayed signals with a spreading code to extract the
assigned multi-path echoes from the received signal r(t). Despread
values from correlators 24 are combined in combiner 18. When
correlating to multiple scrambled Walsh codes, the correlators 24
associated with a particular delay may be replaced by a shared
descrambling operation and a Fast Walsh Transform (FWT).
[0018] Combiner 18 typically includes a plurality of weighting
elements 26 and a summer 28. Weighting elements 26 weight the
despread signals output from respective fingers 16 using combining
weights computed by a RAKE processor 20. The combining weights
computed by the RAKE processor 20 may comprise conventional RAKE
combining weights computed based on the channel coefficients, or
G-RAKE combining weights computed based on the channel coefficients
and an impairment correlation matrix. The weighted multi-path
echoes are summed symbol-by-symbol by summer 28 to form a RAKE
combined value during each symbol period. Each RAKE combined value
represents a symbol of interest or an interfering symbol. It should
be noted that the symbols of interest may interfere with one
another. Therefore, when a given symbol of interest is considered,
the other symbols of interest may be considered as interfering
symbols.
[0019] Although the present invention is described in the context
of a multicode RAKE receiver, those skilled in the art will
recognize that other forms of multicode reception can be used, such
as chip equalization.
[0020] FIG. 3 illustrates an exemplary multicode detector 30. This
exemplary embodiment comprises a sliding window detector. The
symbols for Kusers are jointly detected over 2N+1 symbol periods
(K'=(2N+1)K). The "middle" K symbols are of interest to the
receiver 10, from which the symbols of interest are extracted and
decoded.
[0021] The multicode detector 30 comprises a sliding window
selector 32, initial symbol estimator 34, symbol extractor 36, soft
scaling factor estimator 38, and scaling unit 40. The sliding
window selector 32 selects symbols for processing by the initial
symbol estimator 34. The initial symbol estimator 34 generates
initial symbol estimates of the received symbols, which may include
both symbols of interest and interfering symbols. The initial
symbol estimator 34 may comprise a conventional Linear Multi-User
Detector (LMUD), such as a Minimum Mean Squared Error (MMSE)
detector. The symbol extractor 38 extracts initial symbol estimates
for the symbols of interest for a current symbol period and outputs
the initial symbol estimates to a scaling unit 40. The soft scaling
factor estimator 38 computes soft scaling factors that are applied
by the scaling unit 40 to scale the initial symbol estimates to
generate soft symbol estimates s.sub.SOFT for decoding.
[0022] The multicode receiver 10 operates as follows. The RAKE
receiver 12 despreads the received signal to generate a vector of
RAKE combined values z. The vector z of RAKE combined values may be
modeled as:
z=RAs+n, Eq. (1)
where s=(s.sub.0, . . . , s.sub.K-1).sup.T is a vector of symbols
to be considered for joint detection, and A=diag (A.sub.0, . . . ,
A.sub.K-1) is a diagonal matrix with the k.sup.th element
corresponding to the received amplitude for s.sub.k, R is a
waveform correlation matrix, and n is a vector of the noise. The
vector z includes both symbols of interest and interfering symbols.
The elements of R are the cross-correlations of the effective
spreading waveforms of the symbols in s with each other and with
themselves. The element in R relating the combined value z.sub.u
with the symbol s.sub.v is given by:
R ( u , v ) = .intg. - .infin. .infin. f u H ( t ) f v ( t ) t , Eq
. ( 2 ) ##EQU00001##
where f.sub.u(t)=[f.sub.u,0(t), f.sub.u,1(t), . . . ,
f.sub.u,1(t)].sup.T is the effective waveform for symbol s.sub.u,
with each element corresponding to each receive antenna q. The
number of receive antennas equals Q. The effective spreading
waveform considered is a combination of the transmit waveform,
radio channel impulse response, and receive filtering, which
includes receive chip filtering, despreading, and RAKE combining.
It can be demonstrated that .sigma..sup.2R is the covariance of the
noise vector n, where .sigma..sup.2 is the noise variance at the
input of the RAKE receiver 12.
[0023] The vector of RAKE combined values z is input to the
multicode detector 30. Given vector z, the initial symbol estimator
34 generates MMSE symbol estimates s.sub.MMSE or normalized symbol
estimates s.sub.NORMAL. MMSE symbol estimates s.sub.MMSE are given
by:
s.sub.MMSE=AT.sup.-1z, Eq. (3)
where the matrix T comprises a matrix of interference rejection
terms given by:
T=RA.sup.2+.sigma..sup.2I. Eq. (4)
The matrix A represents a diagonal matrix having signal amplitudes
on the diagonal and .sigma..sup.2 represents the noise power.
Alternatively, the initial symbol estimates s.sub.INITIAL may
comprise normalized symbol estimates s.sub.NORMAL given by:
s.sub.NORMAL=T.sup.-1z. Eq. (5)
The matrix A, waveform correlation matrix R, and interference
rejection matrix T are computed by the parameter estimator 50 and
input to the multicode detector 30.
[0024] Maximum Likelihood (ML) symbol estimates s.sub.ML may be
determined from the MMSE symbol estimates s.sub.MMSE according
to:
s.sub.ML=Bs.sub.MMSE, Eq. (6)
where B=diag(B.sub.0, B.sub.1, . . . , B.sub.K-1).sup.T is a
diagonal matrix with elements given by:
B k = 1 1 - A k 2 r k H ( RA 2 R + .sigma. 2 R ) - 1 r k . Eq . ( 7
) ##EQU00002##
The vector r.sub.k is the k.sup.th column of matrix R given by
Eq.(2), and ( ).sup.H indicates the conjugate transpose of a
matrix/vector. Eqs. (6) and (7) assume a sliding window receiver
approach.
[0025] Eq. (7) may be simplified in two steps. In the first step,
the term (RA.sup.2R+.sigma..sup.2R).sup.-1 is rewritten as
R.sup.-1(RA.sup.2+.sigma..sup.2I).sup.-1=R.sup.-1T.sup.-1 to
give:
B k = 1 1 - A k 2 r k H R - 1 T - 1 r k . Eq . ( 8 )
##EQU00003##
There are two ways in which Eq. (8) may be further simplified.
First, it may be observed that
r.sub.k.sup.HR.sup.-1T.sup.-1r.sub.k, may be reduced to
u.sub.k.sup.Hr.sub.k, where u.sub.k.sup.H is the k.sup.th row of
matrix U=T.sup.-1. Applying this simplification in a second step,
the diagonal elements of the B matrix become:
B k = 1 1 - A k 2 u k H r k . Eq . ( 9 ) ##EQU00004##
Alternatively, a portion of Eq. (8) may be recast in terms of a
system of linear equations of the form Px=b as a second
simplification step. Using this framework, define
Tt.sub.k=r.sub.k, Eq. (10)
so that Eq. (8) may be written as:
B k = 1 1 - A k 2 r k H R - 1 t k . Eq . ( 11 ) ##EQU00005##
It may be observed that the term r.sub.k.sup.HR.sup.-1 in Eq. (11)
is simply a row vector filled with zeros except for a 1 in the
k.sup.th position. Using this fact, Eq. (11) simplifies to:
B k = 1 1 - A k 2 t k , k , Eq . ( 12 ) ##EQU00006##
where t.sub.k,k indicates the k.sup.th element of vector
t.sub.k.
[0026] The soft scaling factor estimator 38 computes the soft
scaling factors. Several different approaches may be employed to
compute B in Eq. (6). A first approach, referred to herein as the
inversion approach, relies on the ability to invert the
interference rejection matrix T to obtain u.sub.k.sup.H in Eq. (9).
This inversion may be performed using LU decomposition, QR
decomposition, Cholesky factorization, or other standard means.
Note that the inversion approach is also applicable to Eqs. (11)
and (12) since t.sub.k=T.sup.-1r.sub.k.
[0027] A second approach to computing soft scaling factors is
referred to herein as the iterative approach. This approach relies
on the fact that Px=b may be efficiently solved using iterative
linear systems solvers like Gauss-Seidel, Gauss-Jordan, and/or
conjugate gradient iterations provided that matrix P has certain
properties. Thus, the soft scaling factor B.sub.k for the symbol
estimate associated with the k.sup.th code may be computed by
iteratively solving Eq. (10) for t.sub.k and substituting the
result into either Eq. (11) or (12).
[0028] FIG. 4 illustrates an exemplary procedure 100 for computing
ML symbol estimates s.sub.ML. First, initial symbol estimates
s.sub.INITIAL are computed (block 102). Next, soft scaling factors
are computed as described in further detail below. Finally, the
soft scaling factors are used to scale the initial symbol estimates
s.sub.INITIAL to obtain soft symbol estimates s.sub.SOFT according
to Eq. (6) (block 106).
[0029] The initial symbol estimates s.sub.INITIAL may comprise
normalized symbol estimates s.sub.NORMAL or MMSE symbol estimates
s.sub.MMSE. Normalized symbol estimates s.sub.NORMAL may be
computed according to:
Ts.sub.NORMAL=z. Eq. (13)
Eq. (13) may be solved iteratively for s.sub.NORMAL using linear
systems solvers like Gauss-Seidel, Gauss-Jordan, and/or conjugate
gradient algorithms. If MMSE symbol estimates are desired, the MMSE
symbol estimates s.sub.MMSE may be computed from the normalized
symbol estimates s.sub.NORMAL according to:
s.sub.MMSE=As.sub.NORMAL. Eq. (14)
[0030] FIG. 5 illustrates an exemplary procedure 150 for computing
soft scaling factors (block 104 in FIG. 4). The procedure 150 shown
in FIG. 5 applies to both the iterative and matrix inversion
approaches. First, spreading waveform correlations (elements in
matrix R) are computed according to Eq. (2) (block 152). The
spreading waveform correlation matrix R is then used to compute
interference rejection terms (elements in matrix T) according to
Eq. (4) (block 154). The interference rejection matrix T is
computed according to Eq. (4) by scaling the spreading waveform
correlations in R by corresponding signal powers (elements in
A.sup.2) and compensating for noise. The interference rejection
terms are then used to compute the soft scaling factors B.sub.k for
the symbols of interest (block 156). For either soft scaling
computation approach, the soft scaling factors may be computed
according to Eq. (10) and either Eq. (11) or (12). Alternatively,
the soft scaling factors may be computed according to Eq. (9) using
the matrix inversion approach.
[0031] In some embodiments of the invention, the computation of
MMSE symbol estimates s.sub.MMSE from normalized symbol estimates
s.sub.NORMAL may be combined with the computation of soft scaling
factors. Eq. (14) gives the relationship between MMSE symbol
estimates s.sub.MMSE and normalized symbol estimates s.sub.NORMAL.
The matrices A in Eq. 14 and B in Eq. (6) are both diagonal
matrices. Thus, ML symbol estimates s.sub.ML may be computed
directly from normalized symbol estimates s.sub.NORMAL according
to:
s.sub.ML=Ds.sub.NORMAL, Eq. (15)
where the diagonal elements of the matrix Dare given by:
D K = A K 1 - A K 2 t k , k . Eq . ( 16 ) ##EQU00007##
It may be observed that D.sub.K in Eq. (16) equals a scaled form of
B.sub.K in Eq. (12).
[0032] FIG. 6 illustrates an exemplary procedure 200 for computing
ML symbol estimates s.sub.ML from MMSE symbol estimates s.sub.MMSE
using the iterative approach for computing soft scaling factors.
Normalized symbol estimates are computed from Eq. (13) (block 202)
and then MMSE symbol estimates s.sub.MMSE are computed from Eq.
(14) (block 204). The MMSE symbol estimates s.sub.MMSE are used as
initial symbol estimates. The soft scaling factors (diagonal
elements of B ) are computed by solving Eq. (10) and then selecting
the appropriate elements of t.sub.k to use in solving Eq. (12)
(block 206). This step is performed for each code of interest. For
example, if a given user of interest is assigned 5 codes, block 206
would be performed 5 times; once for each code assigned to the
user. Finally, the MMSE symbol estimates s.sub.MMSE are converted
to ML symbol estimates s.sub.ML according to Eq. (6) (block
208).
[0033] FIG. 7 illustrates an exemplary procedure 250 for computing
ML symbol estimates s.sub.ML from normalized symbol estimates
s.sub.NORMAL using the iterative approach for computing soft
scaling factors. Normalized symbol estimates are computed from Eq.
(13) (block 252). The normalized symbol estimates s.sub.NORMAL are
used as initial symbol estimates s.sub.INITIAL. The matrix D is
then computed by solving Eq. (10) for t.sub.k and then selecting
the appropriate elements t.sub.k,k in t.sub.k to use in solving Eq.
(16) (block 254). This step is performed for each code of interest.
Finally, the normalized symbol estimates s.sub.NORMAL are converted
to ML symbol estimates s.sub.ML according to Eq. (15) (block
256).
[0034] FIG. 8 illustrates an exemplary procedure 300 for computing
ML symbol estimates s.sub.ML from MMSE symbol estimates s.sub.MMSE
using the matrix inversion approach for computing soft scaling
factors. Normalized symbol estimates s.sub.NORMAL are computed from
Eq. (5) (block 302) and then MMSE symbol estimates s.sub.MMSE are
computed from Eq. (14) (block 304). The MMSE symbol estimates
s.sub.MMSE are used as initial symbol estimates. The soft scaling
factors (diagonal elements of B) are computed by solving Eq. (9)
(block 306). This involves inverting matrix T and storing the
inverse in memory 35 to reuse with different codes of interest.
This step is performed for each code of interest. Finally, the MMSE
symbol estimates s.sub.MMSE are converted to ML symbol estimates
s.sub.ML according to Eq. (6) (block 308).
[0035] FIG. 9 illustrates an exemplary procedure 350 for computing
ML symbol estimates s.sub.ML from normalized symbol estimates
s.sub.NORMAL using the matrix inversion approach for computing soft
scaling factors. Normalized symbol estimates are computed from Eq.
(5) (block 352). The normalized symbol estimates s.sub.NORMAL are
used as initial symbol estimates s.sub.INITIAL. The soft scaling
factors (matrix D) are then computed by computing the elements
t.sub.k,k for each code of interest (block 354) using
t.sub.k=T.sup.-1r.sub.k and Eq. (16). This involves inverting
matrix T and storing the inverse in memory to reuse with different
codes of interest. Finally, the normalized symbol estimates
s.sub.NORMAL are converted to ML symbol estimates s.sub.ML
according to Eq. (15) (block 356).
[0036] The present invention may, of course, be carried out in
other ways than those specifically set forth herein without
departing from essential characteristics of the invention. The
present embodiments are to be considered in all respects as
illustrative and not restrictive, and all changes coming within the
meaning and equivalency range of the appended claims are intended
to be embraced therein.
* * * * *