Claims
1 . A method of receiving data signals over an antenna array having a plurality of antenna elements, the method comprising:
constructing an interference correction signal using jointly detected data for each antenna element; producing an interference cancelled result for each antenna element; and converting the produced interference cancelled result into hard symbols.
2 . The method of claim 1 further comprising:
demodulating a radio frequency (RF) signal to produce baseband signals.
3 . The method of claim 2 further comprising:
providing channel information based on training sequence components in the baseband signals.
4 . The method of claim 1 further comprising:
receiving a plurality of bursts; and
ordering the bursts based on a combined received power over all of the antenna elements.
5 . The method of claim 4 further comprising:
dividing the bursts into a plurality of groups, each group having bursts of similar power.
6 . The method of claim 5 further comprising:
determining soft symbols of a first group using a multiuser block equalizer (BLE).
7 . The method of claim 6 further comprising:
converting the soft symbols of the first group into hard symbols using hard decisions.
8 . The method of claim 7 further comprising:
using the hard symbols to determine a contribution of the first group onto a received sequence of each antenna element.
9 . An apparatus for receiving data signals over an antenna array having a plurality of antenna elements, the apparatus configured to:
construct an interference correction signal using jointly detected data for each antenna element; produce an interference cancelled result for each antenna element; and convert the produced interference cancelled result into hard symbols.
10 . The apparatus of claim 9 wherein the apparatus is configured to
demodulate a radio frequency (RF) signal to produce baseband signals.
11 . The apparatus of claim 10 wherein the apparatus is configured to provide channel information based on training sequence components in the baseband signals.
12 . The apparatus of claim 9 wherein the apparatus is configured to receive a plurality of bursts, and order the bursts based on a combined received power over all of the antenna elements.
13 . The apparatus of claim 12 wherein the apparatus is configured to divide the bursts into a plurality of groups, each group having bursts of similar power.
14 . The apparatus of claim 13 wherein the apparatus is configured to determine soft symbols of a first group using a multiuser block equalizer (BLE).
15 . The apparatus of 13 wherein the apparatus is configured to convert the soft symbols of the first group into hard symbols using hard decisions.
16 . The apparatus of claim 15 wherein the apparatus is configured to use the hard symbols to determine a contribution of the first group onto a received sequence of each antenna element.
17 . The apparatus of claim 9 wherein the apparatus is a receiver.
18 . The apparatus of claim 9 wherein the apparatus is a base station.
19 . The apparatus of claim 9 wherein the apparatus is a wireless transmit/receive unit (WTRU).
20 . The apparatus of claim 9 wherein the apparatus is a transmitter.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. patent application Ser. No. 12/329,985, filed Dec. 8, 2008, which is a continuation of U.S. patent application Ser. No. 11/897,456, filed Aug. 30, 2007, which issued as U.S. Pat. No. 7,463,694 on Dec. 9, 2008, which is a continuation of U.S. patent application Ser. No. 10/622,306, filed Jul. 18, 2003, which issued as U.S. Pat. No. 7,266,168 on Sep. 4, 2007, which claims the benefit of U.S. Provisional Application No. 60/397,361, filed Jul. 19, 2002, the content of which is incorporated herein by reference in its entirety.
FIELD OF INVENTION
[0002] The invention generally relates to wireless communication systems. In particular, the invention relates to joint detection of multiple user signals in a wireless communication system.
BACKGROUND
[0003] FIG. 1 is an illustration of a wireless communication system 10 . The communication system 10 has base stations 12 1 to 12 5 which communicate with wireless transmit/receive units (WTRUs) 14 1 to 14 3 . Each base station 12 1 has an associated operational area where it communicates with WTRUs 14 1 to 14 3 in its operational area.
[0004] In some communication systems, such as code division multiple access (CDMA) and time division duplex using code division multiple access (TDD/CDMA), multiple communications are sent over the same frequency spectrum. These communications are typically differentiated by their chip code sequences. To more efficiently use the frequency spectrum, TDD/CDMA communication systems use repeating frames divided into time slots for communication. A communication sent in such a system will have one or multiple associated codes and time slots assigned to it based on the communication's bandwidth.
[0005] Since multiple communications may be sent in the same frequency spectrum and at the same time, a receiver in such a system must distinguish between the multiple communications. One approach to detecting such signals is matched filtering. In matched filtering, a communication sent with a single code is detected. Other communications are treated as interference. To detect multiple codes, a respective number of matched filters are used. Another approach is successive interference cancellation (SIC). In SIC, one communication is detected and the contribution of that communication is subtracted from the received signal for use in detecting the next communication.
[0006] In some situations, it is desirable to be able to detect multiple communications simultaneously in order to improve performance. Detecting multiple communications simultaneously is referred to as joint detection. Some joint detectors use Cholesky decomposition to perform a minimum mean square error (MMSE) detection or zeroforcing block equalizers (ZFBLEs). Other joint detection receivers use fast Fourier transform based implementations to reduce the complexity further.
[0007] Accordingly, it is desirable to have alternate approaches to multiuser detection.
SUMMARY
[0008] A plurality of data signals are received over an antenna array having a plurality of antenna elements. The data signals are transmitted over a shared spectrum in a wireless communication system. A signal having each of the data signals is received over each antenna element. The plurality of data signals are grouped into a plurality of groups. The received signals of the antenna elements are matched filtered for a first group of the plurality of groups, producing a matched filtered result. Data is jointly detected of the first group using the matched filtered result. An interference correction signal is constructed using the detected data for each antenna element. The interference cancelled result is subtracted from the received signal of each antenna element, producing an interference cancelled result for each antenna element. Data is successively detected for remaining groups using the interference cancelled result for each antenna element.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] FIG. 1 is a simplified illustration of a wireless communication system.
[0010] FIG. 2 is a simplified block diagram of a transmitter and a joint detection group successive interference canceller receiver having multiple antenna elements.
[0011] FIG. 3 is an illustration of a communication burst.
[0012] FIG. 4 is a flow chart for joint detection group successive interference canceling for a receiver having multiple antenna elements.
[0013] FIG. 5 is a simplified block diagram of a joint detection group successive interference canceller.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0014] Hereafter, a wireless transmit/receive unit (WTRU) includes but is not limited to a user equipment, mobile station, fixed or mobile subscriber unit, pager, or any other type of device capable of operating in a wireless environment. When referred to hereafter, a base station includes but is not limited to a base station, NodeB, site controller, access point or other interfacing device in a wireless environment.
[0015] FIG. 2 illustrates a simplified transmitter 26 and receiver 28 using an adaptive combination of joint detection (JD) and groupwise successive interference cancellation (GSIC), “GSICJD”, where reception diversity is used. In a typical system, a transmitter 26 is in each WTRU 14 1 to 14 3 and multiple transmitting circuits 26 sending multiple communications are in each base station 12 1 to 12 5 . A base station 12 1 will typically require at least one transmitting circuit 26 for each actively communicating WTRU 14 1 to 14 3 . The GSICJD receiver 28 may be at a base station 121 , WTRUs 14 1 to 14 3 or both, although the more common implementation is at a base station, where the use of multiple antenna elements is more common. The GSICJD receiver 28 receives communications from multiple transmitters 26 or transmitting circuits 26 .
[0016] Although GSICJD is described in conjunction with the preferred application to a slotted CDMA system, such as TDD/CDMA or time division synchronous CDMA (TDSCDMA), it can be applied to any wireless system where multiple communications share the same frequency band, such as frequency division duplex (FDD)/CDMA and CDMA 2000.
[0017] Each transmitter 26 sends data over a wireless radio channel 30 . A data generator 32 in the transmitter 26 generates data to be communicated over a reference channel to a receiver 28 . Reference data is assigned to one or multiple codes and/or time slots based on the communication's bandwidth requirements. A modulation and spreading device 34 spreads the reference data and makes the spread reference data timemultiplexed with a training sequence in the appropriate assigned time slots and codes, for slotted systems. In nonslotted systems, the reference signal may not be timemultiplexed, such as an almost continuous global pilot. The resulting sequence is referred to as a communication burst. The communication burst is modulated by a modulator 36 to radio frequency. An antenna 38 radiates the RF signal through the wireless radio channel 30 to an antenna array 40 of the receiver 28 . The type of modulation used for the transmitted communication can be any of those known to those skilled in the art, such as direct phase shift keying (DPSK), quadrature phase shift keying (QPSK) or Mary quadrature amplitude modulation (QAM).
[0018] In slotted systems, a typical communication burst 16 has a midamble 20 , a guard period 18 and two data fields 22 , 24 , as shown in FIG. 3 . The midamble 20 separates the two data fields 22 , 24 and the guard period 18 separates the communication bursts to allow for the difference in arrival times of bursts transmitted from different transmitters. The two data fields 22 , 24 contain the communication burst's data and are typically the same symbol length. The midamble 20 contains a training sequence.
[0019] The antenna array 40 of the receiver 28 receives various radio frequency signals. The antenna array 40 has P antenna elements 41 1 to 41 P . The received signals are demodulated by demodulators 42 1 to 42 P to produce baseband signals. The baseband signals are processed, such as by a channel estimation device 44 and a GSICJD device 46 , in the time slots and with the appropriate codes assigned to the communication bursts of the corresponding transmitters 26 . The channel estimation device 44 uses the training sequence component in the baseband signals to provide channel information, such as channel impulse responses. The channel information is used by the GSICJD device 46 to estimate the transmitted data of the received communication bursts as either hard or soft symbols.
[0020] FIG. 4 is a simplified diagram of a GSICJD device 46 . For the following, sequences, vectors, and matrices are in boldface and (•) H denotes the complex conjugate transpose operation and (•) T denotes the real transposition.
[0021] K signal bursts are simultaneously active in the same frequency band of width B. The K bursts are separated by their different codes. In a UMTS TDD/CDMA system, the codes may consist of a cell specific scrambling code and a single or multiple channelization codes. The finite transmitted data symbol sequence, d (k) , of length N is per Equation 1.
[0000] d (k) =( d 1 (k) d 2 (k) . . . d N (k) ) T , d n (k) εV
[0000] i. where k= 1,2 , . . . ,K and n= 1,2 , . . . ,N Equation 1
[0022] Each data symbol d n (k) has a duration T b and each data symbols d n (k) is taken from a complex Mary set, V, having M potential values per Equation 2.
[0000] a. V={ν 1 ν 2 . . . ν M } Equation 2
[0023] Each data symbol sequence, d (k) , is spread by the code c (k) . c (k) is per Equation 3.
[0000] a. c (k) =( c 1 (k) c 2 (k) . . . c Q (k) ) T , where k= 1,2 , . . . ,K and q= 1,2 , . . . ,Q Equation 3
[0024] Each code, c (k) , consists of Q complex chips c q (k) of duration T c , where T b =T c /Q. Each data field of each burst is filled by a chip sequence of length N×Q. Q is the spreading factor. Although the following discussion uses a uniform spreading factor for all the K bursts, it is also readily extendable for variable spreading factors for the bursts. After modulating the data with their respective codes, the bursts are typically passed through a transmitter (TX) filter for pulse shaping. The receiving antenna array has P antenna elements.
[0025] The K signal bursts pass through K×P linearly independent radio channels having timevariant complex impulse responses, {tilde over (h)} (k,p) , where k=1, 2, . . . , K and p=1, 2, . . . , P. {tilde over (h)} (k,p) represents the connection of a transmitter k with an antenna element p. These channel output sequences of K bursts are superposed into P received sequences at each antenna element. Each superposed sequence is filtered by the receiver (RX) filter for band limitation and noise suppression and sampled at the chip rate 1/T c . The discrete channel impulse responses h (k,p) for each transmitter and each antenna element is represented as a vector per Equation 4.
[0000] a. h (k,p) =( h 1 (k,p) h 2 (k,p) . . . h W (k,p) ) T ,
[0000] b. where k= 1,2, . . . , K, p= 1,2 , . . . ,P and w= 1,2 , . . . ,W c. Equation 4
[0026] W is the length of the impulse response. Each of the W complex samples, h w (k,p) , is taken at the chip rate 1/Tc, where W>T b . However, this approach can be readily extended to multiple chip rate sampling. Since W may be greater than T b , intersymbol interference (ISI) may be present. Typically, the channel impulse responses, h (k,p) , is estimated using a reference sequence, such as a midamble sequences. The symbol responses b (k,p) for each burst and each antenna are per Equation 5.
[0027] b (k,p) =( b 1 (k,p) b 2 (k,p) . . . b Q+w1 (k,p) ≡h (k,p) c (k) ,
[0000] a. where k= 1,2 , . . . ,K, p= 1,2 , . . . ,P and l= 1,2 , . . . ,Q+W− 1 b. Equation 5
[0028] The symbol responses, b (k,p) , have a length of Q+W−1 chips and represent the tail of chips left by a unit symbol.
[0029] Prior to processing each data field, the effect of the midamble on the data field is canceled using a midamble cancellation algorithm. At each antenna element, the received sequence, r (p) , where p=1, 2, . . . , P, is of length (N Q+W−1). Each r (p) is effectively a sum of the K bursts and a noise sequence per Equation 6.
[0000] a. n (p) =( n 1 (p) n 2 (p) n NQ+W1 (p) ) T ,
[0000] b. where p= 1,2 , . . . ,P and i= 1,2, . . . ,( NQ+W− 1) c. Equation 6
[0030] The zero mean and covariance matrix is per Equation 7.
[0000] R n (p)(p) =E{n (p) n (p) H }, where p= 1,2 , . . . ,P Equation 7
[0031] The transfer system matrix for each burst as received over each antenna element is A (k,p) and is of size (N Q+W−1)×N. The transfer system matrix, A (k,p) , is a convolution of the transmitted burst with the channel response, h (k,p) . Each element of the transfer system matrix, (A i j (k,p) ), is per Equation 8.
[0000]
a
.
A
(
k
,
p
)
=
(
A
ij
(
k
,
p
)
)
,
where
k
=
1
,
2
,
…
,
K
,
p
=
1
,
2
,
…
,
P
,
b
.
i
=
1
,
2
,
…
,
(
NQ
+
W

1
)
and
j
=
1
,
2
,
…
,
N
c
.
where
A
q
(
n

1
)
+
l
,
n
(
k
,
p
)
=
{
b
l
(
k
,
p
)
for
k
=
1
,
2
,
…
,
K
p
=
1
,
2
,
…
P
l
=
1
,
2
,
…
,
Q
+
W

1
n
=
1
,
2
,
…
,
N
0
otherwise
d
.
Equation
8
[0032] The (N Q+W−1)×KN transfer system matrix A (p) for antenna p is per Equation 9.
[0000] a. A (p) =[A (1,p) A (2,p) . . . A (k,p) ], where k= 1,2 , . . . ,K and p= 1,2 , . . . ,P b. Equation 9
[0033] The P (N Q+W−1)×N transfer system matrix A (k) for burst k is per Equation 10.
[0000]
A
(
k
)
=
[
A
(
k
,
1
)
T
A
(
k
,
2
)
T
…
A
(
k
,
P
)
T
]
T
,
where
k
=
1
,
2
,
…
,
K
and
p
=
1
,
2
,
…
,
P
Equation
10
[0034] The received sequence r (p) at antenna p is per Equation 11.
[0000]
r
(
p
)
=
(
r
1
(
p
)
r
2
(
p
)
…
r
NQ
+
W

1
(
p
)
)
T
=
A
(
p
)
d
+
n
(
p
)
=
∑
k
=
1
K
A
(
k
,
p
)
d
(
k
)
+
n
(
p
)
Equation
11
[0035] The overall data symbol vector is per Equation 12.
[0000]
d
=
(
d
(
1
)
T
d
(
2
)
T
…
d
(
K
)
T
)
T
=
(
d
1
d
2
…
d
KN
)
T
Equation
12
[0036] The components of d are per Equation 13.
[0000] d N(K1)+n =d n (k) , where k= 1,2 , . . . ,K and n= 1,2 , . . . ,N. Equation 13
[0037] The P (NQ+W−1)×KN overall transfer system matrix A is per Equation 14.
[0000] a. A =( A (l) T A (2) T . . . A (P) T b. Equation 14
[0038] The overall noise vector n is per Equation 15.
[0000]
n
=
(
n
(
1
)
T
n
(
2
)
T
…
n
(
P
)
T
)
T
=
(
n
1
n
2
…
n
P
(
NQ
+
W

1
)
)
T
Equation
15
[0039] The components of n are per Equation 16.
[0000] n (NQ+W1)(P1)+i =n i (P) , where p= 1,2 , . . . ,P and i= 1,2, . . . ,( NQ+W− 1) Equation 16
[0040] The covariance matrix of the total noise vector n is per Equation 17.
[0000]
R
n
=
E
{
n
n
H
}
=
[
R
n
(
1
)
(
1
)
R
n
(
1
)
(
2
)
…
R
n
(
1
)
(
P
)
R
n
(
2
)
(
1
)
R
n
(
2
)
(
2
)
…
R
n
(
2
)
(
P
)
⋮
⋮
⋱
⋮
R
n
(
P
)
(
1
)
R
n
(
P
)
(
2
)
…
R
n
(
P
)
(
P
)
]
a
.
where
R
n
(
i
)
(
j
)
=
E
{
n
(
i
)
n
(
j
)
H
}
,
where
i
=
1
,
2
,
…
,
P
and
j
=
1
,
2
,
…
,
P
b
.
Equation
17
[0041] The overall received sequence is represented per Equation 18.
[0000]
r
=
(
r
(
1
)
T
r
(
2
)
T
…
r
(
P
)
T
)
T
=
(
r
1
r
2
…
r
P
(
NQ
+
W

1
)
)
T
=
A
d
+
n
Equation
18
[0042] The components of r are per Equation 19.
[0000] r (NQ+W1)(P1)+i =r i (P) , where p= 1,2 , . . . ,P and i= 1,2, . . . ,( NQ+W− 1) Equation 19
[0043] The overall received sequence r is per Equation 20.
[0000]
r
=
∑
k
=
1
K
r
(
k
)
+
n
=
∑
k
=
1
K
A
(
k
)
d
(
k
)
+
n
Equation
20
[0044] r (k) =A (k) d (k) represents the contribution of user k's signal in the received sequence. The overall received vector r is preferably processed by a GSIC using the block linear equalizer in order to determine the continuous valued estimates {circumflex over (d)}, per Equation 21.
[0000]
d
^
=
(
d
^
(
1
)
T
d
^
(
2
)
T
…
d
^
(
K
)
T
)
T
=
(
d
^
1
d
^
2
…
d
^
KN
)
T
Equation
21
[0045] Two approaches to using GSIC use block linear equalizers with reception diversity, although others may be used. One approach uses a zero forcing (ZF) criterion and another uses a minimum mean squared error (MMSE) criterion.
[0046] For the following, the additive noise is assumed to be spatially and temporally white and the covariance matrix of the overall noise vector is R n =σ 2 I. σ 2 is the variance of the additive noise and I is the identity matrix with size K N×K N. With reception diversity, the ZFBLE can be derived by minimizing the quadratic cost function J({circumflex over (d)} ZF ), per Equation 22.
[0000] J ( {circumflex over (d)} ZF )=( r−A{circumflex over (d)} ZF ) H ( r−A{circumflex over (d)} ZF ) Equation 22
[0047] {circumflex over (d)} ZF is the continuous valued estimates of d and “−1” denotes the matrix inverse. The minimum of J({circumflex over (d)} ZF ) leads to the continuous valued and unbiased estimate {circumflex over (d)} ZF , per Equation 23.
[0000]
d
^
ZF
=
(
A
H
A
)

1
A
H
r
=
d
+
(
A
H
A
)

1
A
H
n
Equation
23
[0048] The MMSEBLE minimizes the quadratic cost function J({circumflex over (d)} MMSE ), per Equation 24.
[0000] J ( {circumflex over (d)} MMSE )= E {( {circumflex over (d)} MMSE −d ) H ({circumflex over (d)} MMSE −d )} Equation 24
[0049] {circumflex over (d)} MMSE is the continuous valued estimates of {circumflex over (d)}. With the covariance matrix of data symbols R d =E{dd H }=I and the covariance matrix of the overall background noise vector R n =σ 2 I, the minimum of J({circumflex over (d)} MMSE ) leads to the continuous valued estimate {circumflex over (d)} MMSE , per Equation 25A.
[0000] {circumflex over (d)} MMSE =( A H A+σ 2 I ) −1 A H r Equation 25A
[0050] I denotes the K N×K N identity matrix. Since A H A is a banded block Toeplitz matrix, one approach to solve for the data vector uses an approximate Cholesky formulation. The Cholesky formulation reduces the complexity with negligible loss in performance as compared to an exact solution.
[0051] Preferably, to reduce the complexity and to remove ISI and multiple access interference (MAI), simultaneously, BLEs and GSIC are combined (GSICBLE). In GSICBLE, K bursts are divided into a small group, preferably, according to the received power. Typically, bursts having roughly the same received power get grouped together. Bursts of roughly the same power are bursts that have a combined power as received over the P antenna elements of equivalent power.
[0052] In each interference cancellation stage, GSICBLE considers the ISI and MAI of only a subset (group) of the K bursts, and jointly detects the data symbols of this group. The detected symbols of this group are used to generate MAI that this group imparts on the other groups for subsequent stages. This MAI is removed using interference cancellation. If the group size is chosen to be K, the GSICBLE becomes a single user BLE. All of the data is determined in one step.
[0053] As a result, the grouping threshold provides a tradeoff between complexity and performance. In the extreme, each K burst can be assigned its own stage. This approach provides the lowest complexity. Conversely, all K bursts can be assigned to a single stage, having the highest complexity.
[0054] FIG. 4 is a flow chart of GSICBLE with reception diversity. In GSICBLE with reception diversity, preferably, all bursts are ordered by the strength of their received power or amplitude, with burst 1 being the strongest, step 50 . Such an ordering can be based upon either an apriori knowledge at the receiver or by other estimation schemes commonly employed in the context of SIC or MUD receivers, such as burstspecific channel estimation from a burstspecific training sequence, bank of matched filters, etc. In one implementation, using the known channel, the descending order can be decided per Equation 25B.
[0000]
∑
p
=
1
p
h
(
k
,
p
)
H
h
(
k
,
p
)
,
where
k
=
1
,
2
,
…
,
K
Equation
25
B
[0055] Using the list of order, GSICBLE divides bursts that have roughly the same power, i.e., within a certain threshold of each other, into G groups, step 52 . The groups are arranged in descending order of their received power. The order can be represented as i=1 • • • G. n i is the number of bursts in the i th group, such as
[0000]
∑
i
=
1
G
n
i
=
K
.
[0000] The receiver consists of G stages. Initially, a joint detection is started with group, i=1.
[0056] For each group, one groupwise BLE matrix is per Equation 26 for a ZFBLE.
[0000] M g,ZF (i) =( A g (i) H A g (i) ) −1 A g (i) H , where i= 1,2 , . . . ,G Equation 26
[0057] The second groupwise BLE matrix is per Equation 27 for MMSEBLE.
[0000]
M
g
,
MMSE
(
i
)
=
(
A
g
(
i
)
H
A
g
(
i
)
+
σ
2
I
N
)

1
A
g
(
i
)
H
=
W
g
(
i
)
M
g
,
ZF
(
i
)
,
where
i
=
1
,
2
,
…
,
G
Equation
27
[0058] The wiener estimator of the i th group, Q g (i) , i=1 • • • G, is per Equation 28.
[0000]
W
g
(
i
)
=
(
I
N
+
σ
g
2
(
A
g
(
i
)
H
A
g
(
i
)
)

1
)

1
Equation
28
[0059] I N is identity matrix of size N×N where N is the number of symbols in each data field of each burst.
[0060] In the first stage, the transfer system matrix of the first group A g (1) is determined. A g (1) is akin to the overall transfer system matrix A, except that it only contains the symbol responses corresponding to bursts in the first group. In the first stage, the input sequence for the group 1 is given by the overall received sequence per Equation 29.
[0000] x g (1) =r Equation 29
[0061] To remove the ISI, MAI, and the nearfar effect of bursts in the first group, a multiuser BLE (ZFBLE or MMSEBLE) with A g (1) is performed. The soft decision symbols for the group 1 d g,soft (1) are obtained per Equation 30, step 54 .
[0000] {circumflex over (d)} g,soft (1) =M g (1) r Equation 30
[0062] where M g (i) , i=1, 2, . . . , G, can be either M g,ZF (i) or M g,MMSE (i) .
[0063] {circumflex over (d)} g,soft (1) is a continuous valued estimator of d g (i) that represents the sequence of information bearing symbols carried by all bursts in the first group. Based on a {circumflex over (d)} g,soft (1) , hard decisions are performed to form {circumflex over (d)} g,hard (1) , step 56 . Using the hard decision variable {circumflex over (d)} g,soft (1) , the contribution {circumflex over (r)} g (1) of the first group to r is estimated per Equation 31, step 58 .
[0000]
r
^
g
(
1
)
=
[
r
^
g
(
1
,
1
)
T
r
^
g
(
1
,
2
)
T
…
r
^
g
(
1
,
P
)
T
]
T
=
A
g
(
1
)
d
^
g
,
hard
(
1
)
Equation
31
[0064] {circumflex over (r)} g (1,p) p=1, 2, . . . , P, is the contribution of the first group to the received sequence at antennap. For the second stage, the interferencecorrected input sequence is obtained by canceling out this MAI from the overall received sequence, per Equation 32.
[0000]
x
g
(
2
)
=
[
r
~
g
(
2
,
1
)
T
r
~
g
(
2
,
2
)
T
…
r
~
g
(
2
,
P
)
T
]
T
=
x
g
(
1
)

r
^
g
(
1
)
=
(
I
g

Φ
g
(
1
)
)
r
Equation
32
[0065] Φ g (i) is per Equation 33 for a ZFBLE.
[0000] φ g (i) ≡A g (i) ( A g (i) H A g (i) ) −1 A g (i) H Equation 33
[0066] φ g (i) is per Equation 34 for a MMSEBLE.
[0000] φ g (i) ≡A g (i) ( A g (i) H A g (i) +σ 2 I ) −1 A g (i) H Equation 34
[0067] I g is an identity matrix of size (NQ+W−1)×(NQ+W−1). {tilde over (r)} g (2,p) is a new interferencecorrected input sequence for antenna p by subtracting {circumflex over (r)} t (1,p) from the interferencecorrected vector {tilde over (r)} g (1,p) of the first stage input sequence for antenna p (the received sequence at antenna p).
[0068] For subsequent stages, such as an i th stage, a new interferencecorrected input sequence is determined by subtracting the MAI of the previous group from the interferencecorrected input sequence of the previous stage, x g (i1) , per Equation 35.
[0000]
x
g
(
i
)
=
x
g
(
i

1
)

r
^
g
(
i

1
)
=
(
I
g

Φ
g
(
i

1
)
)
x
g
(
i

1
)
=
[
∏
j
=
1
i

1
(
I
g

Φ
g
(
j
)
)
]
r
Equation
35
[0069] The product matrices are per Equation 36.
[0000]
∏
j
=
a
b
X
i
=
{
X
b
X
b

1
…
X
a
+
1
X
a
,
if
a
≤
b
I
if
a
>
b
Equation
36
[0070] Similar to the first stage, x g (i) consists of {tilde over (r)} g (i,p) , p=1, 2, . . . , P for each antenna. Single user or multiuser BLE is performed to get rid of the MAI, ISI and the nearfar problem of the i th group itself. The soft decision symbols are represented as per Equation 37, step 60 .
[0000] {circumflex over (d)} g,soft (i) =M g (i) x g (i) Equation 37
[0071] Using the soft decision symbols, hard decision symbols {circumflex over (d)} g,hard (i) hard are produced by making hard decisions, step 62 . The hard symbols are used to generate the contribution {circumflex over (r)} g (i) of the i th group in r, per Equation 38, step 64 .
[0000] {circumflex over (r)} g (i) =A g (i) {circumflex over (d)} g,soft (i) Equation 38
[0072] Similar to the first stage, {circumflex over (r)} g (i) consists of {circumflex over (r)} g (i,p) , p=1, 2, . . . , P for each antenna. For the next stage, the interferencecorrected input sequence is obtained by subtracting this MAI from the i th input sequence, as per Equation 39, step 66 .
[0000]
x
g
(
i
+
1
)
=
x
g
(
i
)

r
^
g
(
i
)
=
[
∏
j
=
1
i
(
I
g

Φ
g
(
j
)
)
]
r
Equation
39
[0073] In the last stage, the input sequence becomes Equation 40.
[0000]
x
g
(
G
)
=
x
g
(
G

1
)

r
^
g
(
G

1
)
=
[
∏
j
=
1
i
(
I
g

Φ
g
(
j
)
)
]
r
Equation
40
[0074] By performing single or multiuser BLE, the soft decision symbol is obtained as per Equation 41.
[0000] {circumflex over (d)} g,soft (G) =M g (G) x g (G) Equation 41
[0075] The hard decision symbols {circumflex over (d)} g,hard (G) of the final stage are obtained from these soft decision symbols using hard decisions. By considering each stage as a linear filtering of the received sequence, the linear filter e g (i) , i=1 . . . G for each stage is per Equation 42.
[0000]
e
g
(
i
)
=
[
∏
j
=
1
i
(
I
g

Φ
g
(
j
)
)
]
H
M
g
(
i
)
H
Equation
42
[0076] The soft decision symbol at each stage is per Equation 43.
[0000]
d
^
g
,
soft
(
i
)
=
M
g
(
i
)
[
∏
j
=
1
i
(
I

Φ
g
(
j
)
)
]
r
=
e
g
(
i
)
H
r
=
diag
(
e
g
(
i
)
H
A
)
d
+
diag
_
(
e
g
(
i
)
H
A
)
d
+
e
g
(
i
)
H
n
Equation
43
[0077] diag(X) represents a diagonal matrix containing only the diagonal elements of the matrix X. diag (X) represents a matrix with zero diagonal elements, containing all but the diagonal elements of X.
[0078] In Equation 43, the first term represents the desired symbols of the i th group, the second term represents the ISI and MAI term of the i th group, and the last term is the background noise term at the output of the i th stage. The first term is a vector whose j th component is the j th component of the transmitted data symbol vector of the i th group d g (i) , multiplied by a scalar. The second term due to the MAI and ISI is a vector whose j th component is a weighted sum of all other transmitted symbols in the overall transmitted data symbol vector d. The correlation of the background noise term is given by its covariance matrix e g (i) H R n e g (i) , where R n is the covariance of the additive noise in the overall received sequence. The SINR (Signal to Interference and Noise Ratio) per data symbol at the output of each stage is per Equation 44.
[0000]
γ
n
(
k
)
=
E
{
d
n
(
k
)
2
}
(
[
F
g
(
i
)
]
j
,
j
)
2
[
F
g
(
i
)
R
d
F
g
(
i
)
H
]
j
,
j

Re
{
[
F
g
(
i
)
R
d
]
j
,
j
}
[
F
g
(
i
)
]
j
,
j
+
E
{
d
n
(
k
)
2
}
(
[
F
g
(
i
)
]
j
,
j
)
2
+
[
e
g
(
i
)
R
n
e
g
(
i
)
H
]
j
,
j
,
a
.
where
F
g
(
i
)
=
e
g
(
i
)
H
A
b
.
j
=
n
+
N
(
k

1
)
,
i
=
1
,
2
,
…
,
G
,
k
=
1
,
2
,
…
,
n
i
,
n
=
1
,
2
,
…
,
N
c
.
Equation
44
[0079] Re{ } denotes the real part. [X] j,j denotes the element in the j th row and the j th column of the matrix X. R d =E{d d H } is the covariance matrix of d.
[0080] In simulations, full BLEs FBLEs (BLEs having only a single stage) show better performance than GSICBLEs. When considering the coding gain for a 1% to 10% uncoded Bit Error Rate (BER), the performance of GSICBLE is close to the FBLEs.
[0081] The GSICBLE is also suited for the multicode scenario where some or all users transmit multiple codes. Multicodes from the same user can be grouped together and multiuser BLE is performed on each group. The MAI between groups is canceled by SIC. GSICBLE achieves better performance than conventional SIC in two ways. First, unlike conventional SIC, it maintains performance in the absence of a nearfar effect by performing multiuser BLE of bursts received with similar power. Second, unlike conventional RAKEbased SIC receivers, it better accounts for the ISI of each burst via multiuser BLE of each group. The optimal mitigation of ISI leads to a more effective cancellation of MAI between groups, especially in channels with large delay spreads.
[0082] GSICBLE typically achieves a complexity that varies linearly with the number of bursts, K, which is substantially less than that of FBLE. Since this case accounts for the ISI in each burst, it potentially leads to a better performance than SIC receivers based on a RAKE. This performance advantage increases in channels with large delay spreads, i.e., when the ISI is significant. Even for large delay spread channels, a nearfar effect of the order of 0 to 2 dB between bursts appears to be enough to achieve a performance comparable to FBLE.
[0083] FIG. 5 is a simplified block diagram of a GSICBLE for use with receive diversity. The received vector, {tilde over (r)} g (1,1) to {tilde over (r)} g (1,P) , from each of the P antenna elements are input into the GSICBLE. A group 1 matched filter 70 match filters, A g (1) H x g (1) , the received vectors for group 1 . A result of the matched filtering, y g (1) , is processed by a BLE, such as a ZF, (A g (1) H A g (1) ) −1 y g (1) , or MMSE, (A g (1) H A g (1) +σ 2 I) −1 y g (1) . A result of the BLE 72 , {circumflex over (d)} soft (1) , is converted to hard symbols, {circumflex over (d)} hard (1) , by a soft to hard decision device 74 . An interference correction device 76 uses the hard symbols, {circumflex over (d)} hard (1) , to produce a vector, {circumflex over (r)} g (1,1) to {circumflex over (r)} g (1,P) , for each antenna representing the contribution of group 1 to that antenna's received vector. For each antenna, a subtractor 92 1 to 92 P subtracts the contribution from group 1 , {circumflex over (r)} g (1,1) to {circumflex over (r)} g (1,P) , from the received vectors, {tilde over (r)} g (1,1) to {tilde over (r)} g (1,P) to produce an interference cancelled vector, {tilde over (r)} g (2,1) to {tilde over (r)} g (2,P) , for each antenna.
[0084] A group 2 matched filter 78 match filters, A g (2) H x g (2) , the interference cancelled vectors. A result of the matched filtering, y g (2) , is processed by a BLE 80 , such as a ZF, (A g (2) H A g (2 ) −1 y g (2) , or MMSE, (A g (2) H A g (2) +σ 2 I) −1 y g (2) . A result of the BLE, {circumflex over (d)} soft (2) , is converted to hard symbols, {circumflex over (d)} hard (2) , by a soft to hard decision device 82 . An interference correction device 84 uses the hard symbols, {circumflex over (d)} hard (2) , to produce a vector, {circumflex over (r)} g (2,1) to {circumflex over (r)} g (2,P) , for or each antenna representing the contribution of group 2 to that antenna's received vector. For each antenna, a subtractor 94 i to 94 p subtracts the contribution from group 2 , {circumflex over (r)} g (2,1) to {circumflex over (r)} g (2,P) , from the received vectors, {tilde over (r)} g (2,1) to {tilde over (r)} g (2,P) , to produce an interference cancelled vector, {tilde over (r)} g (3,1) to {tilde over (r)} g (3,P) , for each antenna.
[0085] The estimation of data for the remaining groups, groups 3 to G−1, and interference cancellation is successively performed until the final group G. For group G, a group G matched filter 86 match filters, A g (G) H x g (G) , the interference cancelled vectors. A result of the matched filtering, y g (G) , is processed by a BLE 88 , such as a ZF, (A g (G) H A g (G) ) −1 y g (G) , or MMSE, (A g (G) H A g (G) +σ 2 I) −1 y g (G) . A result of the BLE, {circumflex over (d)} soft (G) , is converted to hard symbols, {circumflex over (d)} hard (G) , by a soft to hard decision device 90 .