H04B7/04—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas

H04B7/08—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station

H04B7/0837—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station using pre-detection combining

H04B7/04—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas

H04B7/06—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station

H04B7/0613—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission

H04B7/0667—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of delayed versions of same signal

H04B7/0669—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of delayed versions of same signal using different channel coding between antennas

H04B7/04—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas

H04B7/06—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station

H04B7/0613—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission

H04B7/068—Diversity systems; Multi-antenna systems, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission using space frequency diversity

Abstract

A receiving entity obtains received symbols for a data transmission having at least one data symbol stream sent with space-time transmit diversity (STTD). The receiving entity derives an overall channel response matrix in accordance with the STTD encoding scheme used for the data transmission, derives a spatial filter matrix based on the overall channel response matrix, and performs spatial matched filtering on a vector of received symbols for each 2-symbol interval to obtain a vector of detected symbols for the 2-symbol interval. The receiving entity may perform post-processing (e.g., conjugation) on the detected symbols if needed. Alternatively, the receiving entity derives a spatial filter matrix based on an effective channel response matrix, performs spatial matched filtering on the received symbols for each symbol period to obtain detected symbols for that symbol period, and combines multiple estimates obtained for each data symbol sent with STTD.

The present invention relates generally to communication, and more specifically to techniques for processing data in a multiple-antenna communication system.

II. Background

A multi-antenna communication system employs multiple (NT) transmit antennas and one or more (NR) receive antennas for data transmission. The NT transmit antennas may be used to increase system throughput by transmitting different data from the antennas or to improve reliability by transmitting data redundantly.

In the multi-antenna communication system, a propagation path exists between each pair of transmit and receive antennas. NT·NR different propagation paths are formed between the NT transmit antennas and the NR receive antennas. These propagation paths may experience different channel conditions (e.g., different fading, multipath, and interference effects) and may achieve different signal-to-noise-and-interference ratios (SNRs). The channel responses of the NT·NR propagation paths may thus vary from path to path. For a dispersive communication channel, the channel response for each propagation path also varies across frequency. If the channel conditions vary over time, then the channel responses for the propagation paths likewise vary over time.

Transmit diversity refers to the redundant transmission of data across space, frequency, time, or a combination of these three dimensions to improve reliability for the data transmission. One goal of transmit diversity is to maximize diversity for the data transmission across as many dimensions as possible to achieve robust performance. Another goal is to simplify the processing for transmit diversity at both a transmitter and a receiver.

There is therefore a need in the art for techniques to process data for transmit diversity in a multi-antenna communication system.

SUMMARY

Techniques for transmitting and receiving data using a combination of transmit diversity schemes to improve performance are described herein. In an embodiment, a transmitting entity processes one or more (ND) data symbol streams and generates multiple (NC) coded symbol streams. Each data symbol stream may be sent as a single coded symbol stream or as two coded symbol streams using, e.g., space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD). The transmitting entity may perform spatial spreading on the NC coded symbol streams and generate NT transmit symbol streams. Additionally or alternatively, the transmitting entity may perform continuous beamforming on the NT transmit symbol streams in either the time domain or the frequency domain. These various transmit diversity schemes are described below.

A receiving entity obtains received symbols for the data transmission sent by the transmitting entity. The receiving entity derives an effective channel response matrix, e.g., based on received pilot symbols. This matrix includes the effects of the spatial spreading and/or continuous beamforming, if performed by the transmitting entity. In an embodiment, the receiving entity forms an overall channel response matrix based on the effective channel response matrix and in accordance with the STTD encoding scheme used by the transmitting entity. The receiving entity then derives a spatial filter matrix based on the overall channel response matrix and in accordance with, e.g., a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique. The receiving entity then performs spatial processing on a vector of received symbols for each 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval. The detected symbols are estimates of the transmitted coded symbols. The receiving entity performs post-processing (e.g., conjugation) on the detected symbols, if needed, to obtain recovered data symbols, which are estimates of the transmitted data symbols.

In another embodiment, the receiving entity derives a spatial filter matrix based on the effective channel response matrix. The receiving entity then performs spatial processing on the received symbols for each symbol period with the spatial filter matrix to obtain detected symbols for that symbol period. The receiving entity also performs post-processing on the detected symbols, if needed, to obtain estimates of data symbols. The receiving entity combines multiple estimates obtained for each data symbol sent with STTD and generates a single estimate for the data symbol.

Various aspects and embodiments of the invention are described in further detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a block diagram of a multi-antenna transmitting entity.

FIG. 2 shows a block diagram of a single-antenna receiving entity and a multi-antenna receiving entity.

FIG. 3 shows a block diagram of a receive (RX) spatial processor and an RX STTD processor for the MMSE and CCMI techniques.

FIG. 4 shows a block diagram of an RX spatial processor and an RX STTD processor for the partial-MMSE and partial-CCMI techniques.

FIG. 5 shows a process for receiving data with the MMSE or CCMI technique.

FIG. 6 shows a process for receiving data with the partial-MMSE or partial-CCMI technique.

FIG. 7 shows an exemplary protocol data unit (PDU).

DETAILED DESCRIPTION

The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.

The data transmission and reception techniques described herein may be used for multiple-input single-output (MISO) and multiple-input multiple-output (MIMO) transmissions. A MISO transmission utilizes multiple transmit antennas and a single receive antenna. A MIMO transmission utilizes multiple transmit antennas and multiple receive antennas. These techniques may also be used for single-carrier and multi-carrier communication systems. Multiple carriers may be obtained with orthogonal frequency division multiplexing (OFDM), some other multi-carrier modulation techniques, or some other construct. OFDM effectively partitions the overall system bandwidth into multiple (NF) orthogonal frequency subbands, which are also called tones, subcarriers, bins, and frequency channels. With OFDM, each subband is associated with a respective subcarrier that may be modulated with data.

Transmit diversity may be achieved using various schemes including STTD, SFTD, OTD, spatial spreading, continuous beamforming, and so on. STTD transmits each pair of data symbols from two antennas on one subband in two symbol periods to achieve space and time diversity. SFTD transmits each pair of data symbols from two antennas on two subbands in one symbol period to achieve space and frequency diversity. OTD transmits each pair of data symbols from two antennas on one subband in two symbol periods using two orthogonal codes to achieve space and time diversity. As used herein, a data symbol is a modulation symbol for traffic/packet data, a pilot symbol is a modulation symbol for pilot (which is data that is known a priori by both the transmitting and receiving entities), a modulation symbol is a complex value for a point in a signal constellation for a modulation scheme (e.g., M-PSK or M-QAM), and a symbol is any complex value.

Spatial spreading refers to the transmission of a symbol from multiple transmit antennas simultaneously, possibly with different amplitudes and/or phases determined by a steering vector used for that symbol. Spatial spreading is also called steering diversity, transmit steering, pseudo-random transmit steering, and so on. Spatial spreading may be used in combination with STTD, SFTD, OTD, and/or continuous beamforming to improve performance.

Continuous beamforming refers to the use of different beams across the NF subbands. The beamforming is continuous in that the beams change in a gradual instead of abrupt manner across the subbands. Continuous beamforming may be performed in the frequency domain by multiplying the symbols for each subband with a beamforming matrix for that subband. Continuous beamforming may also be performed in the time domain by applying different cyclic or circular delays for different transmit antennas.

Transmit diversity may also be achieved using a combination of schemes. For example, transmit diversity may be achieved using a combination of either STTD or SFTD and either spatial spreading or continuous beamforming. As another example, transmit diversity may be achieved using a combination of STTD or SFTD, spatial spreading, and continuous beamforming.

FIG. 1 shows a block diagram of an embodiment of a multi-antenna transmitting entity 110. For this embodiment, transmitting entity 110 uses a combination of STTD, spatial spreading, and continuous beamforming for data transmission. A transmit (TX) data processor 112 receives and processes ND data streams and provides ND data symbol streams, where ND≧1. TX data processor 112 may process each data stream independently or may jointly process multiple data streams together. For example, TX data processor 112 may format, scramble, encode, interleave, and symbol map each data stream in accordance with a coding and modulation scheme selected for that data stream. A TX STTD processor 120 receives the ND data symbol streams, performs STTD processing or encoding on at least one data symbol stream, and provides NC streams of coded symbols, where NC≧ND. In general, TX STTD processor 120 may process one or more data symbol streams with STTD, SFTD, OTD, or some other transmit diversity scheme. Each data symbol stream may be sent as one coded symbol stream or multiple coded symbol streams, as described below.

A spatial spreader 130 receives and multiplexes the coded symbols with pilot symbols, performs spatial spreading by multiplying the coded and pilot symbols with steering matrices, and provides NT transmit symbol streams for the NT transmit antennas, where NT≧NC. Each transmit symbol is a complex value to be sent on one subband in one symbol period from one transmit antenna. NT modulators (Mod) 132a through 132t receive the NT transmit symbol streams. For an OFDM system, each modulator 132 performs OFDM modulation on its transmit symbol stream and provides a stream of time-domain samples. Each modulator 132 may also apply a cyclic delay for each OFDM symbol. NT modulators 132a through 132t provide NT streams of time-domain samples to NT transmitter units (TMTR) 134a through 134t, respectively. Each transmitter unit 134 conditions (e.g., converts to analog, amplifies, filters, and frequency upconverts) its sample stream and generates a modulated signal. NT modulated signals from NT transmitter units 134a through 134t are transmitted from NT transmit antennas 136a through 136t, respectively.

FIG. 2 shows a block diagram of an embodiment of a single-antenna receiving entity 150x and a multi-antenna receiving entity 150y. At single-antenna receiving entity 150x, an antenna 152x receives the NT transmitted signals and provides a received signal to a receiver unit (RCVR) 154x. Receiver unit 154x performs processing complementary to that performed by transmitter units 134 and provides a stream of received samples to a demodulator (Demod) 156x. For an OFDM system, demodulator 156x performs OFDM demodulation on the received samples to obtain received symbols, provides received data symbols to a detector 158, and provides received pilot symbols to a channel estimator 162. Channel estimator 162 derives an effective channel response estimate for a single-input single-output (SISO) channel between transmitting entity 110 and receiving entity 150x for each subband used for data transmission. Detector 158 performs data detection on the received data symbols for each subband based on the effective SISO channel response estimate for that subband and provides recovered data symbols for the subband. An RX data processor 160 processes (e.g., symbol demaps, deinterleaves, and decodes) the recovered data symbols and provides decoded data.

At multi-antenna receiving entity 150y, NR antennas 152a through 152r receive the NT transmitted signals, and each antenna 152 provides a received signal to a respective receiver unit 154. Each receiver unit 154 processes its received signal and provides a received sample stream to an associated demodulator 156. Each demodulator 156 performs OFDM demodulation on its received sample stream, provides received data symbols to an RX spatial processor 170, and provides received pilot symbols to a channel estimator 166. Channel estimator 166 derives a channel response estimate for the actual or effective MIMO channel between transmitting entity 110 and receiving entity 150y for each subband used for data transmission. A matched filter generator 168 derives a spatial filter matrix for each subband based on the channel response estimate for that subband. RX spatial processor 170 performs receiver spatial processing (or spatial matched filtering) on the received data symbols for each subband with the spatial filter matrix for that subband and provides detected symbols for the subband. An RX STTD processor 172 performs post-processing on the detected symbols and provides recovered data symbols. An RX data processor 174 processes (e.g., symbol demaps, deinterleaves, and decodes) the recovered data symbols and provides decoded data.

Controllers 180x and 180y control the operation at receiving entities 150x and 150y, respectively. Memory units 182x and 182y store data and/or program codes used by controllers 180x and 180y, respectively.

1. Transmitter Processing

Transmitting entity 110 may transmit any number of data symbol streams with STTD and any number of data symbol streams without STTD, depending on the number of transmit and receive antennas available for data transmission. The STTD encoding for one data symbol stream may be performed as follows. For each pair of data symbols sa and sb to be sent in two symbol periods of the data symbol stream, TX STTD processor 120 generates two vectors s1=[sa sb]T and s2=[s*b −s*a]T, where “*” denotes the complex conjugate and “T” denotes the transpose. Alternatively, TX STTD processor 120 may generate two vectors s1=[sa −sb]T and s2=[sb s*a]T for each pair of data symbols sa and sb. For both STTD encoding schemes, each vector st, for t=1, 2, includes two coded symbols to be sent from NT transmit antennas in one symbol period, where NT≧2. Vector s1 is sent in the first symbol period, and vector s2 is sent in the next symbol period. Each data symbol is included in both vectors and is thus sent over two symbol periods. The m-th coded symbol stream is sent in the m-th element of the two vectors s1 and s2. For clarity, the following description is for the STTD encoding scheme with s1=[sa sb] T and s2=[s*b −s*a]T. For this STTD encoding scheme, the first coded symbol stream includes coded symbols sa and s*b, and the second coded symbol stream includes coded symbols sb and −s*a.

Table 1 lists four configurations that may be used for data transmission. An ND×NC configuration denotes the transmission of ND data symbol streams as NC coded symbol streams, where ND≧1 and NC≧ND. The first column identifies the four configurations. For each configuration, the second column indicates the number of data symbol streams being sent, and the third column indicates the number of coded symbol streams. The fourth column lists the ND data symbol streams for each configuration, the fifth column lists the coded symbol stream(s) for each data symbol stream, the sixth column gives the coded symbol to be sent in the first symbol period (t=1) for each coded symbol stream, and the seventh column gives the coded symbol to be sent in the second symbol period (t=2) for each coded symbol stream. The number of data symbols sent in each 2-symbol interval is equal to twice the number of data symbol streams. The eighth column indicates the number of transmit antennas required for each configuration, and the ninth column indicates the number of receive antennas required for each configuration. As shown in Table 1, for each data symbol stream that is sent as one coded symbol stream without STTD, the data symbol sent in the second symbol period (t=2) is conjugated to match the conjugation performed on the data symbols in the STTD encoded data symbol stream.

TABLE 1

Num Data

Num Coded

Data

Coded

Coded Symbol

Coded Symbol

Req Num

Req Num

Symbol Streams

Symbol Streams

Symbol

Symbol

(t = 1)

(t = 2)

TX Ants

RX Ants

Config

ND

NC

Stream

Stream

s1

s2

NT

NR

1 × 2

1

2

1

1

sa

sb*

NT ≧ 2

NR ≧ 1

2

sb

−sa*

2 × 3

2

3

1

1

sa

sb*

NT ≧ 3

NR ≧ 2

2

sb

−sa*

2

3

sc

sd*

2 × 4

2

4

1

1

sa

sb*

NT ≧ 4

NR ≧ 2

2

sb

−sa*

2

3

sc

sd*

4

sd

−sc*

3 × 4

3

4

1

1

sa

sb*

NT ≧ 4

NR ≧ 3

2

sb

−sa*

2

3

sc

sd*

3

4

se

sf*

As an example, for the 2×3 configuration, two data symbol streams are sent as three coded symbol streams. The first data symbol stream is STTD encoded to generate two coded symbol streams. The second data symbol stream is sent without STTD as the third coded symbol stream. Coded symbols sa, sb and sc are sent from at least three transmit antennas in the first symbol period, and coded symbols s*b, −s*a and s*d are sent in the second symbol period. A receiving entity uses at least two receive antennas to recover the two data symbol streams.

Table 1 shows four configurations that may be used for data transmission whereby each configuration has at least one STTD encoded data symbol stream. Other configurations may also be used for data transmission. In general, any number of data symbol streams may be sent as any number of coded symbol streams from any number of transmit antennas, where ND≧1, NC≧ND, NT≧NC, and NR≧ND.

The transmitting entity may process the coded symbols for spatial spreading and continuous beamforming as follows:
xt(k)=B(k)·V(k)·G(k)·st(k), for t=1, 2, Eq (1)
where

st(k) is an NC×1 vector with NC coded symbols to be sent on subband k in symbol period t;

G(k) is an NC×NC diagonal matrix with NC gain values along the diagonal for the NC coded symbols in st(k) and zeros elsewhere;

V(k) is an NT×NC steering matrix for spatial spreading for subband k;

B(k) is an NT×NT diagonal matrix for continuous beamforming for subband k; and

xt(k) is an NT×1 vector with NT transmit symbols to be sent from the NT transmit antennas on subband k in symbol period t.

Vector s1 contains NC coded symbols to be sent in the first symbol period, and vector s2 contains NC coded symbols to be sent in the second symbol period. Vectors s1 and s2 may be formed as shown in Table 1 for the four configurations. For example, s1=[sa sb sc]T and s2=[s*b −s*a s*d]T for the 2×3 configuration.

The gain matrix G(k) determines the amount of transmit power to use for each of the NC coded symbol streams. The total transmit power available for transmission may be denoted as Ptotal. If equal transmit power is used for the NC coded symbol streams, then the diagonal elements of G(k) have the same value, which is √{square root over (Ptotal/NC)}. If equal transmit power is used for the ND data symbol streams, then the diagonal elements of G(k) may or may not be equal depending on the configuration. The NC gain values in G(k) may be defined to achieve equal transmit power for the ND data symbol streams being sent simultaneously. As an example, for the 2×3 configuration, the first data symbol stream is sent as two coded symbol streams and the second data symbol stream is sent as one coded symbol stream. To achieve equal transmit power for the two data symbol streams, a 3×3 gain matrix G(k) may include gain values of √{square root over (Ptotal/4)}, √{square root over (Ptotal/4)}, and √{square root over (Ptotal/2)} along the diagonal for the three coded symbol streams. Each coded symbol in the third coded symbol stream is then scaled by √{square root over (Ptotal/2)} and is transmitted with twice the power as the other two coded symbols sent in the same symbol period. The NC coded symbols for each symbol period may also be scaled to utilize the maximum transmit power available for each transmit antenna. In general, the elements of G(k) may be selected to utilize any amount of transmit power for the NC coded symbol streams and to achieve any desired SNRs for the ND data symbol streams. The power scaling for each coded symbol stream may also be performed by scaling the columns of the steering matrix V(k) with appropriate gains.

A given data symbol stream (denoted as {s}) may be sent as one coded symbol stream (denoted as {{tilde over (s)}}) in other manners. In one embodiment, the gain matrix G(k) contains ones along the diagonal, and coded symbol stream {{tilde over (s)}} is transmitted at the same power level as the other coded symbol streams. For this embodiment, data symbol stream {s} is transmitted at lower transmit power than an STTD encoded data symbol stream and achieves a lower received SNR at the receiving entity. The coding and modulation for data symbol stream {s} may be selected to achieve the desired performance, e.g., the desired packet error rate. In another embodiment, each data symbol in data symbol stream {s} is repeated and transmitted in two symbol periods. As an example, for the 2×3 configuration, data symbol sc is sent in two symbol periods, then data symbol sd is sent in two symbol periods, and so on. Similar received SNRs for all ND data symbol streams may simplify processing (e.g., encoding) at both the transmitting and receiving entities.

The steering matrix V(k) spatially spreads the NC coded symbols for each symbol period such that each coded symbol is transmitted from all NT transmit antennas and achieves spatial diversity. Spatial spreading may be performed with various types of steering matrices, such as Walsh matrices, Fourier matrices, pseudo-random matrices, and so on, which may be generated as described below. The same steering matrix V(k) is used for the two vectors s1(k) and s2(k) for each subband k. The same or different steering matrices may be used for different subbands. Different steering matrices may be used for different time intervals, where each time interval spans an integer multiple of two symbol periods for STTD.

The matrix B(k) performs continuous beamforming in the frequency domain. For an OFDM system, a different beamforming matrix may be used for each subband. The beamforming matrix for each subband k may be a diagonal matrix having the following form:

B_⁡(k)=[b1⁡(k)0⋯00b2⁡(k)⋯0⋮⋮⋰⋮00⋯bNT⁡(k)],for⁢⁢k=1⁢⁢…⁢⁢NF,Eq⁢⁢(2)
where bi(k) is a weight for subband k of transmit antenna i. The weight bi(k) may be defined as:
bi(k)=e−j2π·ΔT(i)·l(k)·Δf, for i=1 . . . NT and k=1 . . . NF, Eq (3)
where

ΔT(i) is the time delay on transmit antenna i; and

l(k)·Δf is the actually frequency that corresponds to subband index k.
For example, if NF=64, then subband index k goes from 1 to 64, and l(k) may map k to −32 to +31, respectively. Δf denotes the frequency spacing between adjacent subbands. For example, if the overall system bandwidth is 20 MHz and NF=64, then Δf=20 MHz/64=3.125 kHz. l(k)·Δf provides the actual frequency (in Hertz) for each value of k. The weights bi(k) shown in equation (3) correspond to a progressive phase shift across the NF total subbands of each transmit antenna, with the phase shift changing at different rates for the NT transmit antennas. These weights effectively form a different beam for each subband.

Continuous beamforming may also be performed in the time domain as follows. For each symbol period, an NF-point inverse discrete Fourier transform (IDFT) is performed on NF transmit symbols for each transmit antenna i to generate NF time-domain samples for that transmit antenna. The NF time-domain samples for each transmit antenna i are then cyclically or circularly delayed with a delay of Ti. For example, Ti may be defined as: Ti=ΔT·(i−1), for i=1 . . . NT, where ΔT may be equal to one sample period, a fraction of a sample period, or more than one sample period. The time-domain samples for each antenna are thus cyclically delayed by a different amount.

For simplicity, the following description is for one subband, and the subband index k is dropped from the notations. The receiver spatial processing for each subband may be performed in the same manner, albeit with a spatial filter matrix obtained for that subband. The gain matrix G(k) does not affect the receiver spatial processing and is omitted from the following description for clarity. The gain matrix G(k) may also be viewed as being incorporated in the vectors s1 and s2.

2. Single-Antenna Receiver Processing

A single-antenna receiving entity may receive a data transmission sent using the 1×2 configuration. The received symbols from the single receive antenna may be expressed as:
rt=h·xt+nt=h·B·V·st+nt=heff·st+nt, for t=1, 2, Eq (4)
where

heff is a 1×2 effective channel response row vector for the 1×2 configuration, which is heff=h·B·V=[heff,1 heff,2]; and

nt is the noise for symbol period t.
The MISO channel response h is assumed to be constant over the two symbol periods for vectors s1 and s2.

The single-antenna receiving entity may derive estimates of the two data symbols sa and sb, as follows:

s^a=h^eff,1*·r1-h^eff,2·r2*β′=sa+na′,and⁢⁢s^b=h^eff,2*·r1+h^eff,1·r2*β′=sb+nb′,Eq⁢⁢(5)
where

ĥeff,m is an estimate of heff,m, for m=1, 2;

β′=|ĥeff,1|2+|ĥeff,2|2; and

n′a and n′b are post-processed noise for detected symbols ŝa and ŝb, respectively.
The receiving entity may also derive the detected symbols using MMSE processing described below.

3. Multi-Antenna Receiver Processing

A multi-antenna receiving entity may receive a data transmission sent using any of the configurations supported by the number of receive antennas available at that receiving entity, as shown in Table 1. The received symbols from the multiple receive antennas may be expressed as:
rt=H·xt+nt=H·B·V·st+nt=Heff·st+nt, for t=1, 2, Eq (6)
where

rt is an NR×1 vector with NR received symbols for symbol period t;

H is an NR×NT channel response matrix;

Heff is an NR×NC effective channel response matrix; and

nt is a noise vector for symbol period t.
The receiving entity can typically obtain an estimate of H based on a pilot received from the transmitting entity. The receiving entity uses Heff to recover st.

The effective channel response matrix Heff may be expressed as:
Heff=H·B·V, Eq (7)
and has the following form:

H_eff=[heff,1,1heff,1,2⋯heff,1,NCheff,2,1heff,2,2⋯heff,2,NC⋮⋮⋰⋮heff,NR,1heff,NR,2⋯heff,NR,NC],Eq⁢⁢(8)
where heff,j,m is the channel gain for coded symbol stream m at receive antenna j. The effective channel response matrix Heff is dependent on the configuration used for data transmission and the number of receive antennas. The MIMO channel response matrix H and the effective channel response matrix Heff are assumed to be constant over two symbol periods for vectors s1 and s2.

For the 1×2 configuration, the effective channel response matrix is an NR×2 matrix that may be given as: Heff=H·B·V=[heff,1 heff,2], where heff,m is an effective channel response vector for coded symbol stream m. The multi-antenna receiving entity may derive estimates of the two data symbols sa and sb, as follows:

s^a=h_^eff,1H·r_1-r_2H·h_^eff,2β″=sa=na″,and⁢⁢s^b=h_^eff,2H·r_1+r_2H·h_^eff,1β″=sb=nb″,Eq⁢⁢(9)
where

ĥeff,m is an estimate of heff,m, for m=1, 2;

β″=∥ĥeff,1∥2+∥ĥeff,2∥2;

“H” denotes the conjugate transpose; and

n″a and n″b are post-processed noise for detected symbols ŝa and ŝb, respectively.
The data symbols sa and sb may also be recovered using other receiver spatial processing techniques, as described below.

To facilitate the receiver spatial processing, a single data vector s may be formed for the 2ND data symbols included in vectors s1 and s2 sent in two symbol periods. A single received vector r may also be formed for the 2NR received symbols included in vectors r1 and r2 obtained in two symbol periods. The received vector r may then be expressed as:
r=Hall·s+nall, Eq (10)
where

r is a 2NR×1 vector with 2NR received symbols obtained in two symbol periods;

s is a 2ND×1 vector with 2ND data symbols sent in two symbol periods;

Hall is a 2NR×2ND overall channel response matrix observed by the data symbols in s; and

nall is a noise vector for the 2ND data symbols.
The overall channel response matrix Hall contains twice the number of rows as the effective channel response matrix Heff and includes the effects of STTD, spatial spreading, and continuous beamforming performed by the transmitting entity. The elements of Hall are derived based on the elements of Heff, as described below.

For the 2×3 configuration, the transmitting entity generates vectors s1=[sa sb sc]T and s2=[s*b −s*a s*d]T for four data symbols sa, sb, sc and sd to be sent in two symbol periods for two data symbol streams, as shown in Table 1. Each vector st contains three coded symbols to be sent from the NT transmit antennas in one symbol period, where NT≧3 for the 2×3 configuration.

If the receiving entity is equipped with two receive antennas (NR=2), then rt is a 2×1 vector with two received symbols for symbol period t, H is a 2×NT channel response matrix, and Heff is a 2×3 effective channel response matrix. The effective channel response matrix for the 2×3 configuration with two receive antennas, which is denoted as Heff2/2×3, may be expressed as:

The received symbols for the first symbol period are denoted as r1=[r1,1 r2,1]T, and the received symbols for the second symbol period are denoted as r2=[r1,2 r2,2]T, where rj,t is the received symbol from receive antenna j in symbol period t. These four received symbols may be expressed as:
r1,1=+heff,1,1·sa+heff,1,2·sb+heff,1,3·sc+n1,1, Eq (12a)
r2,1=+heff,2,1·sa+heff,2,2·sb+heff,2,3·sc+n2,1, Eq (12b)
r1,2=−heff,1,2·s*a+heff,1,1·s*b+heff,1,3·s*d+n1,2, and Eq (12c)
r2,2=−heff,2,2·s*a+heff,2,1·s*b+heff,2,3·s*d+n2,2. Eq (12d)

For the 2×3 configuration with two receive antennas, the data vector s may be formed as s=[sa sb sc sd]T, the received vector r may be formed as r=[r1,1 r2,1 r*1,2 r*2,2]T, and the overall channel response matrix Hall2/2×3 may be expressed as:

H_all2/2×3=[heff,1,1heff,1,2heff,1,30heff,2,1heff,2,2heff,2,30-heff,1,2*heff,1,1*0heff,1,3*-heff,2,2*heff,2,1*0heff,2,3*].Eq⁢⁢(13)
With the above formulation, r may be expressed based on Hall2/2×3 and s, as shown in equation (10). The matrix Hall2/2×3 is formed from equation set (12) and using the property: r=h·s*

r*=h*·s. As shown in equation (13), the first two rows of Hall2/2×3 contain all of the elements of Heff2/2×3, and the last two rows of Hall2/2×3 contain the elements of Heff2/2×3 but rearranged and transformed (i.e., conjugated and/or inverted) due to the STTD encoding on the data symbols.

For the 2×4 configuration, the transmitting entity generates vectors s1=[sa sb sc sd] and s2=[s*b −s*a s*d −s*c]T for two pairs of data symbols (sa and sb) and (sc and sd) to be sent in two symbol periods for two data symbol streams. Each vector st includes four coded symbols to be sent from the NT transmit antennas in one symbol period, where NT≧4 for the 2×4 configuration.

If the receiving entity is equipped with two receive antennas (NR=2), then rt is a 2×1 vector with two received symbols for symbol period t, H is a 2×NT channel response matrix, and Heff is a 2×4 effective channel response matrix. The effective channel response matrix for the 2×4 configuration with two receive antennas, which is denoted as Heff2/2×4, may be expressed as:

The received symbols from the two receive antennas in two symbol periods may be expressed as:
r1,1=+heff,1,1·sa+heff,1,2·sb+heff,1,3·sc+heff,1,4·sd+n1,1, Eq (15a)
r2,1=+heff,2,1·sa+heff,2,2·sb+heff,2,3·sc+heff,2,4·sd+n2,1, Eq (15b)
r1,2=−heff,1,2·s*a+heff,1,1·s*b−heff,1,4·s*c+heff,1,3·s*d+n1,2, and Eq (15c)
r2,2=−heff,2,2·s*a+heff,2,1·s*b−heff,2,4·s*c+heff,2,3·s*d+n2,2. Eq (15d)

For the 2×4 configuration with two receive antennas, the data vector s may be formed as s=[sa sb sc sd]T the received vector r may be formed as r=[r1,1 r2,1 r*1,2 r*2,2]T and the overall channel response matrix Hall2/2×4 may be expressed as:

H_all2/2×4=[heff,1,1heff,1,2heff,1,3heff,1,4heff,2,1heff,2,2heff,2,3heff,2,4-heff,1,2*heff,1,1*-heff,1,4*heff,1,3*-heff,2,2*heff,2,1*-heff,2,4*heff,2,3*].Eq⁢⁢(16)
As shown in equation (16), the first two rows of Hall2/2×4 are equal to Heff2/2×4, and the last two rows of Hall2/2×4 contain rearranged and transformed elements of Heff2/2×4.

In general, the received vector r for all configurations may be expressed as:
r=[r1,1 . . . rNR,1 r*1,2 . . . r*NR,2]T. Eq (17)
The data vector s is dependent on the configuration used for data transmission. The overall channel response matrix Hall is dependent on the configuration and the number of receive antennas.

For the 1×2 configuration, the vector s and the matrix Hall may be expressed as:

The multi-antenna receiving entity can derive estimates of the transmitted data symbols using various receiver spatial processing techniques. These techniques include an MMSE technique, a CCMI technique (which is also commonly called a zero-forcing technique or a decorrelation technique), a partial-MMSE technique, and a partial-CCMI technique. For the MMSE and CCMI techniques, the receiving entity performs spatial matched filtering on 2NR received symbols obtained in each 2-symbol interval. For the partial-MMSE and partial-CCMI techniques, the receiving entity performs spatial matched filtering on NR received symbols obtained in each symbol period.

A. MMSE Receiver

For the MMSE technique, the receiving entity derives a spatial filter matrix as follows:

M_mnse=[H^_allH·H^_all+φ_nn]-1·H^_allH,=[H^_allH·H^_all+σn2⁢I_]-1·H^_allH,Eq⁢⁢(26)
where

Ĥall is a 2NR×2ND matrix that is an estimate of Hall;

φnn is an autocovariance matrix of the noise vector nall in equation (10); and

Mmmse is a 2ND×2NR MMSE spatial filter matrix.

The receiving entity may derive Ĥall in different manners depending on how pilot symbols are sent by the transmitting entity. For example, the receiving entity may obtain Ĥeff, which is an estimate the effective channel response matrix Heff, based on received pilot symbols. The receiving entity may then derive Ĥall based on Ĥeff, as shown in equation (19), (21), (23) or (25) for the four configurations given in Table 1. The receiving entity may also estimate the overall channel response matrix Hall directly based on received pilot symbols. In any case, the second equality in equation (26) assumes that the noise vector nall is AWGN with zero mean and variance of σn2. The spatial filter matrix Mmmse minimizes the mean square error between the symbol estimates from the spatial filter matrix and the data symbols.

The receiving entity performs MMSE spatial processing as follows:

s^_mmse=D_·M_mmse·r_,=D_·M_mmse·[H_all·s_+n_all],=D_·Q_·s_+n_mmse,Eq⁢⁢(27)
where

ŝmmse is a 2ND×1 vector with 2ND detected symbols obtained for a 2-symbol interval with the MMSE technique;

Q=Mmmse·Hall;

D=[diag [Q]]−1 is a 2ND×2ND diagonal matrix; and

nmmse is the MMSE filtered noise.
The symbol estimates from the spatial filter matrix Mmmse are unnormalized estimates of the data symbols. The multiplication with the scaling matrix D provides normalized estimates of the data symbols.

B. CCMI Receiver

For the CCMI technique, the receiving entity derives a spatial filter matrix as follows:
Mccmi=[ĤallH·Ĥall]−1·ĤallH={circumflex over (R)}all−1·ĤallH, Eq (28)
where Mccmi is a 2ND×2NR CCMI spatial filter matrix.

The receiving entity performs CCMI spatial processing as follows:

s^_ccmi=M_ccmi·r_,=R^_all-1·H^_allH·[H_all·s_+n_all],=s_+n_ccmi,Eq⁢⁢(29)
where

ŝccmi is a 2ND×1 vector with 2ND detected symbols obtained for a 2-symbol interval with the CCMI technique; and

nccmi is the CCMI filtered noise.

C. Partial-MMSE Receiver

For the partial-MMSE and partial-CCMI techniques, the receiving entity performs spatial matched filtering on the NR received symbols for each symbol period based on a spatial filter matrix for that symbol period. For each STTD encoded data symbol stream, the receiving entity obtains two estimates in two symbol periods for each data symbol sent in the stream and combines these two estimates to generate a single estimate for the data symbol. The partial-MMSE and partial-CCMI techniques may be used if the receiving entity is equipped with at least NC receive antennas, or NR≧NC. There should be at least as many receive antennas as the number of coded symbols transmitted at each symbol period, which is shown in Table 1.

For the partial-MMSE technique, the receiving entity derives a spatial filter matrix as follows:

M_p-mmse=[H^_effH·H^_eff+φ_nn]-1·H^_effH,=[H^_effH·H^_eff+σn2⁢I_]-1·H^_effH,Eq⁢⁢(30)
where

Ĥeff is an NR×NC matrix that is an estimate of Heff; and

Mp-mmse is an NC×NR MMSE spatial filter matrix for one symbol period.
The effective channel response matrix Heff is dependent on the configuration used for data transmission and has the form shown in equation (8).

The receiving entity performs MMSE spatial processing for each symbol period as follows:

s^_mmse,t=D_p-mmse·M_p-mmse·r_t,=D_p-mmse·M_p-mmse·[H_eff·s_t+n_t],=D_p-mmse·Q_p-mmse·s_t+n_mmse,t,⁢⁢for⁢⁢t=1,2,Eq⁢⁢(31)
where

ŝmmse,t is an NC×1 vector with NC detected symbols obtained in symbol period t with the partial-MMSE technique;

Qp-mmse=Mp-mmse·Heff;

Dp-mmse=[diag [Qp-mmse]]−1 is an NC×NC diagonal matrix; and

nmmse,t is the MMSE filtered noise for symbol period t.

The partial-MMSE processing provides two vectors ŝmmse,1 and ŝmmse,2 for the first and second symbol periods, respectively, which are estimates of vectors s1 and s2, respectively. The detected symbols in vector ŝmmse,2 are conjugated and/or negated, as needed, to obtain estimates of the data symbols included in vector s2. As an example, for the 2×3 configuration, ŝmmse,1=[ŝa ŝb ŝc]T and ŝmmse,2=[ŝ*b −ŝ*a ŝ*d]T. For vector ŝmmse,2, ŝ*b is conjugated to obtain a second estimate of sb, −ŝ*a is negated and conjugated to obtain a second estimate of sa, and ŝ*d is conjugated to obtain an estimate of sd.

For each STTD encoded data symbol stream, the partial-MMSE processing provides two detected symbols in two symbol periods for each data symbol sent in that stream. In particular, the partial-MMSE processing provides two estimates of sa and two estimates of sb for all four configurations in Table 1 and further provides two estimates of sc and two estimates of sd for the 2×4 configuration. The two estimates of each data symbol may be combined to generate a single estimate of that data symbol.

The two estimates of a data symbol sm may be combined using maximal ratio combining (MRC), as follows:

s^m=γm,1·s^m,1+γm,2·s^m,2γm,1+γm,2,Eq⁢⁢(32)
where

ŝm,t is an estimate of data symbol sm obtained in symbol period t;

γm,t is the SNR of ŝm,t; and

ŝm is a final estimate of data symbol sm.

The estimate ŝm,1 is obtained from coded symbol stream m1 in symbol period t=1, and the estimate ŝm,2 is obtained from coded symbol stream m2 in symbol period t=2. The SNR of ŝm,t for the partial-MMSE technique may be expressed as:

γm,t=qmt,mt1-qmt,mt,for⁢⁢t=1,2,Eq⁢⁢(33)
where

mt is the coded symbol stream from which ŝm,t was obtained; and

qmt,mt is the mt-th diagonal element of Qp-mmse defined above for equation (31).

The two estimates of data symbol Sm may also be linearly combined, as follows:

s^m=s^m,1+s^m,22.Eq⁢⁢(34)
Equation (34) provides the same performance as the MRC technique if the SNRs of the two estimates ŝm,1 and ŝm,2 are equal but provides sub-optimal performance if the SNRs are not equal.

D. Partial-CCMI Receiver

For the partial-CCMI technique, the receiving entity derives a spatial filter matrix for one symbol period as follows:
Mp-ccmi=[ĤeffH·Ĥeff]−1·ĤeffH={circumflex over (R)}eff−1·ĤeffH, Eq (35)
where Mp-ccmi is an NC×NR CCMI spatial filter matrix for one symbol period.

The receiving entity performs CCMI spatial processing for each symbol period as follows:

s_^ccmi,t=M_p-ccmi·r_t,=R_^eff-1·H_^effH·[H_eff·s_t+n_t],⁢for⁢⁢t=1,2,=s_t+n_ccmi,t,Eq⁢⁢(36)
where

ŝccmi,t is an NC×1 vector with NC detected symbols obtained in symbol period t with the partial-CCMI technique; and

nccmi,t is the CCMI filtered noise for symbol period t.

The receiving entity may combine two estimates of a given data symbol using MRC, as shown in equation (32). In this case, the SNR of detected symbol ŝm,t for the CCMI technique may be expressed as:

γm,t=1rmt,mt·σn2,⁢⁢for⁢⁢t=1,2,Eq⁢⁢(37)
where rmt,mt is the mt-th diagonal element of {circumflex over (R)}eff−1.

The partial-MMSE and partial-CCMI techniques may reduce delay (or latency) for data symbol streams sent without STTD. The partial-MMSE and partial-CCMI techniques may also reduce complexity of the spatial matched filtering since the spatial filter matrix for each symbol period has dimension of NC×NR whereas the spatial filter matrix for each 2-symbol period interval has dimension of 2ND×2NR.

4. Alternate STTD Encoding Scheme

For clarity, the description above is for the case in which a pair of data symbols sa and sb is STTD encoded into two vectors s1=[sa sb]T and s2=[s*b −s*a]T. As noted above, the pair of data symbols sa and sb may also be STTD encoded into two vectors is s1=[sa −s*b]T and s2=[sb s*a]T. The various vectors and matrices described above may be different for this alternate STTD encoding scheme.

As an example, for the 2×4 configuration, the transmitting entity may generate vectors is s1=[sa −s*b sc −s*d]T and s2=[sb s*a sd s*c]T for two pairs of data symbols (sa and sb) and (sc and sd) to be sent in two symbol periods for two data symbol streams. The data vector s may be given as s=[sa s*b sc s*d]T, the received vector r may be given as r=[r1,1 . . . rNR,1 r*1,2 . . . r*NR,2]T, and the overall channel response matrix Hall may be expressed as:

H_all2×4=[heff,1,1-heff,1,2heff,1,3-heff,1,4heff,2,1-heff,2,2heff,2,3-heff,2,4⋮⋮⋮⋮heff,NR,1-heff,NR,2heff,NR,3-heff,NR,4heff,1,2*heff,1,1*heff,1,4*heff,1,3*heff,2,2*heff,2,1*heff,2,4*heff,2,3*⋮⋮⋮⋮heff,NR,2*heff,NR,1*heff,NR,4*heff,NR,3*].Eq⁢⁢(38)
The vectors s1, s2 and s and the matrix Hall for the other configurations may be derived in similar manner as described above for the 2×4 configuration.

For the alternate STTD encoding scheme, the receiving entity uses the matrix Hall defined for the alternate STTD encoding scheme, instead of the matrix Hall defined for first STTD encoding scheme, to derive an MMSE spatial filter matrix or a CCMI spatial filter matrix. For the 2×4 configuration, the matrix Hall shown in equation (38) is used instead of the matrix Hall shown in equation (23). The receiving entity then performs spatial matched filtering on the received vector r with the spatial filter matrix to obtain ŝ, which is an estimate of s for the alternate STTD encoding scheme. The receiving entity then conjugates the symbols in ŝ, as needed, to obtain the recovered data symbols.

In general, the overall channel response matrix Hall is dependent on the manner in which the STTD encoding is performed by the transmitting entity and any other spatial processing performed by the transmitting entity. The receiving entity performs MMSE or CCMI processing in the same manner, albeit with the overall channel response matrix derived in the proper manner.

The effective channel response matrix Heff is the same for both STTD encoding schemes and is shown in equation (8). The receiving entity uses Heff to derive a partial-MMSE spatial filter matrix or a partial-CCMI spatial filter matrix. The receiving entity then performs spatial matched filtering on the received vector rt for each symbol period with the spatial filter matrix to obtain ŝt, which is an estimate of st for the alternate STTD encoding scheme. The receiving entity then conjugates the detected symbols in ŝt as needed and further combines estimates as appropriate to obtain the recovered data symbols.

5. Receiver Processing

FIG. 3 shows a block diagram of an RX spatial processor 170a and an RX STTD processor 172a, which can implement the MMSE or CCMI technique. RX spatial processor 170a and RX STTD processor 172a are one embodiment of RX spatial processor 170 and RX STTD processor 172, respectively, for multi-antenna receiving entity 150y in FIG. 2. Channel estimator 166 derives the effective channel response estimate Ĥeff based on received pilot symbols, as described below. Matched filter generator 168 forms the overall channel response estimate Ĥall based on Ĥeff and derives an MMSE or CCMI spatial filter matrix M for a 2-symbol interval based on Ĥall, as shown in equation (26) or (28).

Within RX spatial processor 170a, a pre-processor 310 obtains the received vector rt for each symbol period, conjugates the received symbols for the second symbol period of each 2-symbol interval, and forms the received vector r for each 2-symbol interval, as shown in equation (17). A spatial processor 320 performs spatial matched filtering on the received vector r with the spatial filter matrix M and provides vector ŝ, as shown in equation (27) or (29). Within RX STUD processor 172a, an STTD post-processor 330 conjugates the symbols in vector ŝ, as needed, and provides 2ND recovered data symbols for each 2-symbol interval. A demultiplexer (Demux) 340 demultiplexes the recovered data symbols from STUD post-processor 330 onto ND recovered data symbol streams and provides these streams to RX data processor 174.

Within RX spatial processor 170b, a spatial processor 420 performs spatial matched filtering on the received vector rt for each symbol period with the spatial filter matrix Mp for that symbol period and provides vector ŝt, as shown in equation (31) or (36). Within RX STTD processor 172b, an STTD post-processor 430 conjugates the detected symbols in vector ŝt, as needed, and provides NC data symbol estimates for each symbol period. A combiner 432 combines two estimates for each data symbol sent with STTD, e.g., as shown in equation (32) or (34), and provides a single estimate for that data symbol. A demultiplexer 440 demultiplexes the recovered data symbols from combiner 432 onto ND recovered data symbol streams and provides these streams to RX data processor 174.

FIG. 5 shows a process 500 for receiving a data transmission with the MMSE or CCMI technique. Received symbols are obtained for the data transmission, which includes at least one STTD encoded data symbol stream (block 510). An effective channel response matrix is obtained, e.g., based on received pilot symbols (block 512). An overall channel response matrix is formed based on the effective channel response matrix and in accordance with the STUD encoding scheme used for the data transmission (block 514). A spatial filter matrix is derived based on the overall channel response matrix and in accordance with, e.g., the MMSE or CCMI technique (block 516). A vector of received symbols is formed for each 2-symbol interval (block 518). Spatial processing is performed on the vector of received symbols for each 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval (block 520). Post-processing (e.g., conjugation) is performed on the detected symbols, if needed, to obtain recovered data symbols (block 522).

FIG. 6 shows a process 600 for receiving a data transmission with the partial-MMSE or partial-CCMI technique. Received symbols are obtained for the data transmission, which includes at least one STTD encoded data symbol stream (block 610). An effective channel response matrix is obtained, e.g., based on received pilot symbols (block 612). A spatial filter matrix is derived based on the effective channel response matrix and in accordance with, e.g., the MMSE or CCMI technique (block 614). Spatial processing is performed on the received symbols for each symbol period with the spatial filter matrix to obtain detected symbols for the symbol period (block 616). Post-processing (e.g., conjugation) is performed on the detected symbols, if needed, to obtain estimates of data symbols (block 618). Multiple estimates of each data symbol sent with STTD are combined to obtain a single estimate for the data symbol (block 620).

6. SFTD and Spatial Spreading

The transmitting entity may also use a combination of SFTD, spatial spreading, and possibly continuous beamforming. For each configuration shown in Table 1, the transmitting entity may generate two vectors s1 and s2 for 2ND data symbols to be sent on two subbands in one symbol period for ND data symbol streams. The transmitting entity may spatially spread and send vector s1 on one subband in one symbol period and spatially spread and send vector s2 on another subband in the same symbol period. The two subbands are typically adjacent subbands. The receiving entity may derive the overall channel response matrix Hall as described above, except that the first NR rows of Hall are for the first subband (instead of the first symbol period) and the last NR rows of Hall are for the second subband (instead of the second symbol period). The receiving entity may perform MMSE, CCMI, partial-MMSE, or partial-CCMI processing in the manner described above.

7. Steering Matrices for Spatial Spreading

Various types of steering matrices may be used for spatial spreading. For example, the steering matrix V may be a Walsh matrix, a Fourier matrix, or some other matrix. A 2×2 Walsh matrix W2×2 be expressed as

W_2×2=[1⁢11-1].
A larger size Walsh matrix W2N×2N may be formed from a smaller size Walsh matrix WN×N, as follows:

W_2⁢N×2⁢N=[W_N×NW_N×NW_N×N⁢-W_N×N].Eq⁢⁢(39)
An N×N Fourier matrix DN×N has element dn,m in the n-th row of the m-th column, which may be expressed as:

dn,m=ⅇ-jπ⁢(n-1)⁢(m-1)N,⁢for⁢⁢n=1⁢⁢…⁢⁢N⁢⁢and⁢⁢m=1⁢⁢…⁢⁢N.Eq⁢⁢(40)
Fourier matrices of any square dimension (e.g., 2, 3, 4, 5, and so on) may be formed.

A Walsh matrix WN×N, a Fourier matrix DN×N, or any other matrix may be used as a base matrix BN×N to form other steering matrices. For an N×N base matrix, each of rows 2 through N of the base matrix may be independently multiplied with one of M different possible scalars. MN−1 different steering matrices may be obtained from MN−1 different permutations of the M scalars for the N−1 rows. For example, each of rows 2 through N may be independently multiplied with a scalar of +1, −1, +j, or −j, where j=√{square root over (−1)}. For N=4, 64 different steering matrices may be generated from a base matrix B4×4 with the four different scalars. Additional steering matrices may be generated with other scalars, e.g., e±j3π/4, e±jπ/4, e±jπ/8, and so on. In general, each row of the base matrix may be multiplied with any scalar having the form ejθ, where θ may be any phase value. N×N steering matrices may be generated from the N×N base matrix as V(i)=gN·BN×Ni, where gN=1/√{square root over (N)} and BN×Ni is the i-th steering matrix generated with the base matrix BN×N. The scaling by gN=1/√{square root over (N)} ensures that each column of V(i) has unit power.

The steering matrices may also be generated in a pseudo-random manner. The steering matrices are typically unitary matrices having columns that are orthogonal to one another. The steering matrices may also be orthonormal matrices having orthogonal columns and unit power for each column, so that VH·V=I, and I is the identity matrix. A steering matrix of a dimension that is not square may be obtained by deleting one or more columns of a square steering matrix.

Different steering matrices may be used for different time intervals. For example, different steering matrices may be used for different symbol periods for SFTD and for different 2-symbol intervals for STTD and OTD. For an OFDM system, different steering matrices may be used for different subbands for STTD and OTD and for different pairs of subbands for SFTD. Different steering matrices may also be used for different subbands and different symbol periods. The randomization provided by spatial spreading (across time and/or frequency) with the use of different steering matrices can mitigate deleterious effects of a wireless channel.

8. Frame Structure and MIMO Pilot

FIG. 7 shows an exemplary protocol data unit (PDU) 700 that supports MISO and MIMO transmissions. PDU 700 includes a section 710 for a MIMO pilot and a section 720 for data. PDU 700 may also include other sections, e.g., for a preamble, signaling, and so on. A MIMO pilot is a pilot that is sent from all transmit antennas used for data transmission and allows a receiving entity to estimate the MISO or MIMO channel used for data transmission. The MIMO pilot may be transmitted in various manners.

In an embodiment, the transmitting entity transmits a “clear” MIMO pilot (i.e., without spatial spreading) from all NT transmit antennas, as follows:
xpilotns(k,t)=W(t)·p(k), for t=1 . . . L, Eq (41)
where

p(k) is an NT×1 vector with NT pilot symbols sent on subband k;

W(t) is an NT×NT diagonal Walsh matrix for symbol period t; and

xpilotns (k,t) is an NT×1 vector with NT spatially processed symbols for the clear MIMO pilot for subband k in symbol period t.
The NT transmit antennas may be assigned NT different Walsh sequences of length L, where L≧NT. Each Walsh sequence corresponds to one diagonal element of W(t). Alternatively, the transmitting entity may generate the clear MIMO pilot as: xpilotns(k,t)=w(t)·p(k), where p(k) is a scalar for a pilot symbol, and w(t) is an NT×1 vector with the Walsh sequences assigned to the NT transmit antennas. For simplicity, the continuous beamforming is not shown in equation (41) but is typically performed in the same manner, if at all, for both pilot and data transmission. The MIMO channel is assumed to be constant over the length of the Walsh sequences.

The received pilot symbols obtained by the receiving entity for the clear MIMO pilot may be expressed as:
rpilotns(k,t)=H(k)·W(t)·p(k)+n(k), for t=1 . . . L, Eq (42)
where rpilotns(k,t) is an NR×1 vector with NR received pilot symbols for the clear MIMO pilot for subband k in symbol period t.

The receiving entity may derive an estimate of the MIMO channel matrix H(k) based on the clear MIMO pilot. Each column of H(k) is associated with a respective Walsh sequence. The receiving entity may obtain an estimate of hj,i(k), which is the channel gain between the i-th transmit antenna and the j-th receive antenna, as follows. The receiving entity first multiplies the j-th element of rpilotns(k,1) through rpilotns(k,L) by the L chips of Walsh sequence Wi assigned to the i-th transmit antenna and obtains a sequence of L recovered symbols. The receiving entity then removes the modulation used for pilot symbol pi(k), which is the i-th element of p(k), from the L recovered symbols. The receiving entity then accumulates the L resultant symbols to obtain the estimate of hj,i(k), which is the element in the j-th row and the i-th column of H(k). The process is repeated for each of the elements of H(k). The receiver entity may then derive an estimate of Heff(k) based on Ĥ(k) and the known steering matrices used by the transmitting entity. The receiving entity may use Ĥ(k) for receiver spatial processing, as described above.

V(k) is an N×NC steering matrix for spatial spreading for subband k; and

xpilotss(k,t) is an NT×1 vector with NT spatially processed symbols for the spatially spread MIMO pilot for subband k in symbol period t.
The Walsh sequences have length of L, where L≧NC for the spatially spread MIMO pilot. Alternatively, the transmitting entity may generate the spatially spread MIMO pilot as: xpilotss(k,t)=V(k)·w(t)·p(k), where p(k) and w(t) are described above.

The received pilot symbols obtained by the receiving entity for the spatially spread MIMO pilot may be expressed as:
rpilotss(k,t)=H(k)·V(k)·W(t)·p(k)+n(k), Eq (44)
where rpilotss(k,t) is an NR×1 vector with NR received pilot symbols for the spatially spread MIMO pilot for subband k in symbol period t.

The receiving entity may derive an estimate of the effective MIMO channel Heff(k) based on the received pilot symbols in rpilotss(k,t), e.g., as described above for the clear MIMO pilot. In this case, the receiving entity removes p(k) and W(t) and obtains Ĥeff(k), which is an estimate of H(k)·V(k). Alternatively, the transmitting entity may generate a spatially spread MIMO pilot as: xpilotss(k,t)=W(t)·p(k) or xpilotss(k,t)=w(t)·p(k), where W(t) or w(t) performs the spatial spreading. In this case, the receiving entity may form Ĥeff(k), which is an estimate of H(k)·W(k), directly based on the received pilot symbols without any extra processing. In any case, the receiving entity may use Ĥeff(k) for receiver spatial processing.

In another embodiment, the transmitting entity transmits a clear or spatially spread MIMO pilot using subband multiplexing. With subband multiplexing, only one transmit antenna is used for each subband in each symbol period. The Walsh matrix W(t) is not needed.

The data transmission and reception techniques described herein may be implemented by various means. For example, these techniques may be implemented in hardware, software, or a combination thereof. For a hardware implementation, the processing units at a transmitting entity may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described herein, or a combination thereof. The processing units at a receiving entity may also be implemented within one or more ASICs, DSPs, and so on.

For a software implementation, the techniques described herein may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory unit (e.g., memory unit 142 in FIG. 1, or memory unit 182x or 182y in FIG. 2) and executed by a processor (e.g., controller 140 in FIG. 1, or controller 180x or 180y in FIG. 2). The memory unit may be implemented within the processor or external to the processor.

Headings are included herein for reference and to aid in locating certain sections. These headings are not intended to limit the scope of the concepts described therein under, and these concepts may have applicability in other sections throughout the entire specification.

The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (52)

1. A method of receiving data in a wireless communication system, comprising:

obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD);

obtaining an effective channel response matrix for the data transmission;

deriving a spatial filter matrix with the effective channel response matrix; and

performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.

forming the spatial filter matrix based on the overall channel response matrix and in accordance with a channel correlation matrix inversion (CCMI) technique.

8. The method of claim 1, further comprising:

forming a vector of received symbols for the 2-symbol interval, and

wherein the performing spatial processing on the received symbols comprises performing spatial processing on the vector of received symbols for the 2-symbol interval to obtain a vector of detected symbols for the 2-symbol interval.

forming the spatial filter matrix based on the effective channel response matrix and in accordance with a channel correlation matrix inversion (CCMI) technique.

11. The method of claim 1, wherein the performing spatial processing on the received symbols comprises

performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.

12. The method of claim 1, further comprising:

combining multiple detected symbols obtained for each data symbol sent with STTD.

13. The method of claim 1, further comprising:

performing maximal ratio combining of multiple detected symbols obtained for each data symbol sent with STTD.

14. The method of claim 1, further comprising:

performing post-processing on the detected symbols in accordance with an STTD encoding scheme used for the data transmission to obtain estimates of data symbols sent for the data transmission.

15. The method of claim 14, wherein the performing post-processing on the detected symbols comprises

conjugating the detected symbols, as needed, in accordance with the STTD scheme used for the data transmission.

16. The method of claim 14, further comprising:

demultiplexing the data symbol estimates onto one or more data symbol streams sent for the data transmission.

17. A method of receiving data in a wireless communication system, comprising:

obtaining received symbols for a data transmission comprising multiple data symbol streams with at least one data symbol stream being sent with space-time transmit diversity(STTD);

obtaining an effective channel response matrix for the data transmission; Deriving a spatial filter matrix with the effective channel response matrix; and

performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols for the plurality of data symbol streams.

18. The method of claim 17, wherein the obtaining the received symbols comprises

obtaining the received symbols for the data transmission comprising the multiple data symbol streams with at least one data symbol stream being sent with STTD and at least one data symbol stream being sent without STTD.

19. The method of claim 17, wherein the obtaining the received symbols comprises

obtaining the received symbols for the data transmission comprising the multiple data symbol streams with at least two data symbol streams being sent with STTD.

estimating channel gains for each of the multiple data symbol streams at a plurality of receive antennas, and

forming the effective channel response matrix with the estimated channel gains for the multiple data symbol streams and the plurality of receive antennas.

21. The method of claim 17, wherein the performing spatial processing on the received symbols comprises

performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the plurality of data symbol streams in the symbol period.

22. An apparatus in a wireless communication system, comprising:

at least one demodulator configured to obtain received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD);

a channel estimator configured to obtain an effective channel response matrix for the data transmission;

a matched filter generator configured to derive a spatial filter matrix with the effective channel response matrix; and

a spatial processor configured to perform spatial processing on the received symbols; based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.

23. The apparatus of claim 22, wherein the effective channel response matrix includes effects of spatial processing performed for the data transmission.

24. The apparatus of claim 22, wherein the matched filter generator is configured to form an overall channel response matrix based on the effective channel response matrix and in accordance with an STTD encoding scheme used for the data transmission.

25. The apparatus of claim 24, wherein the matched filter generator is configured to form the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.

26. The apparatus of claim 22, wherein the spatial processor is configured to form a vector of received symbols for the 2-symbol interval and performs spatial processing on the vector of received symbols to obtain a vector of detected symbols for the 2-symbol interval.

27. The apparatus of claim 22, wherein the matched filter generator is configured to form the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.

28. The apparatus of claim 22, wherein the spatial processor is configured to perform spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.

29. The apparatus of claim 22, further comprising:

a combiner configured to combine multiple detected symbols obtained for each data symbol sent with STTD.

30. The apparatus of claim 22, further comprising:

a post-processor to configured to perform post-processing on the detected symbols in accordance with an STTD encoding scheme used for the data transmission to obtain estimates of data symbols sent for the data transmission.

31. An apparatus in a wireless communication system, comprising:

means for obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD);

means for obtaining an effective channel response matrix for the data transmission;

means for deriving a spatial filter matrix with the effective channel response matrix; and

means for performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.

32. The apparatus of claim 31, further comprising:

means for forming an overall channel response matrix based on the effective channel response matrix and in accordance with an STTD encoding scheme used for the data transmission.

33. The apparatus of claim 32, wherein the means for deriving the spatial filter matrix comprises

means for forming the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.

34. The apparatus of claim 31, further comprising:

means for forming a vector of received symbols for the 2-symbol interval, and

wherein the means for performing spatial processing on the received symbols comprises means for performing spatial processing on the vector of received symbols for the 2-symbol interval to obtain a vector of detected symbols for the 2-symbol interval.

35. The apparatus of claim 31, wherein the means for deriving the spatial filter matrix comprises

means for forming the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.

forming the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSL) technique or a channel correlation matrix inversion (CCMI) technique.

40. A method of receiving data in a wireless communication system, comprising:

obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD);

obtaining an effective channel response matrix for the data transmission;

deriving a spatial filter matrix based on the effective channel response matrix;

performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period; and

combining multiple detected symbols obtained for each data symbol sent with STTD.

forming the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSL) technique or a channel correlation matrix inversion (CCMI) technique.

42. A method of receiving data in a wireless communication system, comprising:

obtaining received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission;

obtaining an effective channel response matrix for the data transmission and including effects of the spatial spreading;

deriving a spatial filter matrix with the effective channel response matrix; and

performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.

43. The method of claim 42, further comprising:

forming a vector of received symbols for the 2-symbol interval, and

wherein the performing spatial processing on the received symbols comprises performing spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval.

44. A method of receiving data in a wireless communication system, comprising:

obtaining received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission;

obtaining an effective channel response matrix for the data transmission and including effects of the spatial spreading;

performing spatial processing on the received symbols with the spatial filter matrix to obtain detected symbols; and

forming a vector of received symbols for each pair of frequency subbands;

wherein the performing spatial processing on the received symbols comprises performing spatial processing on the vector of received symbols for the pair of frequency subbands with the spatial filter matrix to obtain a vector of detected symbols for the pair of frequency subbands.

45. The method of claim 42, wherein the performing spatial processing on the received symbols comprises performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.

forming the spatial filter matrix with the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.

47. An apparatus in a wireless communication system, comprising:

at least one demodulator configured to obtain received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission;

a channel estimator configured to obtain an effective channel response matrix for the data transmission and including effects of the spatial spreading;

a matched filter generator configured to derive a spatial filter matrix with the effective channel response matrix; and

a spatial processor configured to perform spatial processing on the received symbols; based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.

48. The apparatus of claim 47, wherein the spatial processor is configured to form a vector of received symbols for the 2-symbol interval and performs spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval.

49. The apparatus of claim 47, wherein the spatial processor is configured to perform spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.

50. An apparatus in a wireless communication system, comprising:

means for obtaining received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission;

means for obtaining an effective channel response matrix for the data transmission and including effects of the spatial spreading;

means for deriving a spatial filter matrix with the effective channel response matrix; and

means for performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.

51. The apparatus of claim 50, further comprising:

means for forming a vector of received symbols for 2-symbol interval, and

wherein the means for performing spatial processing on the received symbols comprises means for performing spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval

52. The apparatus of claim 50, wherein the means for performing spatial processing on the received symbols comprises means for performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.

Code division multiple access communication system, base station communication system for connection to remote users, local communication system and method for generation of multiple-beam of code division multiple access signals in communication system

MC-CDMA downlink beamforming method with the weights applied to every element of the antenna array being different for every user and every frequency bin, the weights being adapted to maximise the signal to interference and noise ratio

Patent Citations (153)

Code division multiple access communication system, base station communication system for connection to remote users, local communication system and method for generation of multiple-beam of code division multiple access signals in communication system

MC-CDMA downlink beamforming method with the weights applied to every element of the antenna array being different for every user and every frequency bin, the weights being adapted to maximise the signal to interference and noise ratio