Title of Invention

A METHOD AND APPARATUS FOR PROCESSING DATA FOR A WIRELESS MULTIPLE-INPUT MULTIPLE-OUTPUT (MIMO) COMMUNICATION SYSTEM

Abstract A user terminal supports multiple spatial multiplexing (SM) modes such as a steered mode and a non-steered mode. For data transmission, multiple data streams are coded and modulated in accordance with their selected rates to obtain multiple data symbol streams. These streams are then spatially processed in accordance with a selected SM mode (e.g., with a matrix of steering vectors for the steered mode and with the identity matrix for the non-steered mode) to obtain multiple transmit symbol streams for transmission from multiple antennas. For data reception, multiple received symbol streams are spatially processed in accordance with the selected SM mode (e.g., with a matrix of eigenvectors for the steered mode and with a spatial filter matrix for the non-steered mode) to obtain multiple recovered data symbol streams. These streams are demodulated and decoded in accordance with their selected rates to obtain multiple decoded data streams.
Full Text

MULTI-MODE TERMINAL IN A WIRELESS MIMO SYSTEM
Claim of Priority under 35 U.S.C §119
[0001] The present Application for Patent claims priority to Provisional Application
Serial No. 60/421,309, entitled "MIMO WLAN System," filed October 25, 2002, assigned to the assignee hereof, and expressly incorporated by reference herein.
BACKGROUND Field
[0002] The present invention relates generally to communication, and more specifically
to a user terminal in a multiple-input multiple-output (MIMO) communication system.
Background
[0003] A MIMO system employs multiple (JVr) transmit antennas and multiple (NR)
receive antennas for data transmission and is denoted as an (Nr, NR) system. A MIMO channel formed by the NT transmit and NR receive antennas may be decomposed into Ns spatial channels, where Ns transmit Ns independent data streams to achieve greater overall throughput. In general, spatial processing may or may not be performed at a transmitter and is normally performed at a receiver to simultaneously transmit and recover multiple data streams.
[0004] A conventional MIMO system typically uses a specific transmission scheme to
simultaneously transmit multiple data streams. This transmission scheme may be selected based on a trade-off of various factors such as the requirements of the system, the amount of feedback from the receiver to the transmitter, the capabilities of the transmitter and receiver, and so on. The transmitter, receiver, and system are then designed to support and operate in accordance with the selected transmission scheme. This transmission scheme typically has favorable features as well as unfavorable ones, which can impact system performance.
[0005] There is therefore a need in the art for a user terminal capable of achieving
improved performance.

SUMMARY
[0006] A user terminal that supports multiple spatial multiplexing (SM) modes for
improved performance and greater flexibility is described herein. Spatial multiplexing refers to the transmission of multiple data streams simultaneously via multiple spatial channels of a MIMO channel. The multiple SM modes may include (1) a steered mode that transmits multiple data streams on orthogonal spatial channels and (2) a non-steered mode that transmits multiple data streams from multiple antennas.
[0007] The terminal selects an SM mode to use for data transmission from among the
multiple supported SM modes. The SM mode selection may be based on various factors such as the calibration status of the terminal, the amount of data to send, the channel conditions, the capability of the other communicating entity, and so on. For data transmission, multiple data streams are coded and modulated in accordance with their selected rates to obtain multiple data symbol streams. These data symbol streams are then spatially processed in accordance with the selected SM mode to obtain multiple transmit symbol streams. The transmit spatial processing is with a matrix of steering vectors for the steered mode and with an identity matrix for the non-steered mode. The transmit symbol streams are transmitted from multiple antennas and via a first communication link (e.g., uplink).
[0008] For data reception, multiple received symbol streams for a second
communication link (e.g., downlink) are spatially processed in accordance with the selected SM mode to obtain multiple recovered data symbol streams. The receive spatial processing may be based on the channel eigenvectors for the steered mode and with a spatial filter matrix for the non-steered mode. The spatial filter matrix may be derived based on various receiver spatial processing techniques, as described below. The recovered data symbol streams are then demodulated and decoded in accordance with their selected rates to obtain multiple decoded data streams for the second link. The terminal also transmits/receives pilots and the selected rates for each link.
[0009] Various aspects, embodiments, and features of the invention are described in
further detail below.
BRIEF DESCRIPTION OF THE DRAWINGS
[0010] FIG. 1 shows a MIMO system;

FIG. 2 shows spatial processing at a transmitter and receiver for the steered and non-steered modes;
FIGS. 3 and 4 show spatial processing at an access point and a user terminal for the steered and non-steered modes, respectively;
FIG. 5 shows a block diagram of the access point and user terminal; and
FIG. 6 shows a process for transmitting and receiving data in the MIMO system.
DETAILED DESCRIPTION
[0011] 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.
[0012] FIG. 1 shows a MMO system 100 with access points (APs) and user terminals
(UTs). For simplicity, only one access point 110 is shown in FIG. 1. An access point is generally a fixed station that communicates with the user terminals and may also be referred to as a base station or some other terminology. A system controller 130 couples to and provides coordination and control for the access points. A user terminal may be fixed or mobile and may also be referred to as a mobile station, a wireless device, or some other terminology. A user terminal may communicate with an access point, in which case the roles of access point and user terminal are established. A user terminal may also communicate peer-to-peer with another user terminal.
[0013] MIMO system 100 may be a time division duplex (TDD) system or a frequency
division duplex (FDD) system. For a TDD system, the downlink and uplink share the same frequency band. For an FDD system, the downlink and uplink use different frequency bands. The downlink is the communication link from the access points to the user terminals, and the uplink is the communication link from the user terminals to the access points. MIMO system 100 may also utilize a single carrier or multiple carriers for data transmission.
[0014] Access point 110 and user terminal 120 each support multiple spatial
multiplexing (SM) modes for improved performance and greater flexibility. A steered SM mode (or simply, a steered mode) can typically achieve better performance but can only be used if the transmitter has sufficient channel state information (CSI) to

orthogonalize the spatial channels of a MIMO channel via decomposition or some other technique. A non-steered SM mode (or simply, a non-steered mode) requires very little information to simultaneously transmit multiple data streams via the MIMO channel, but performance may not be quite as good as the steered mode. A suitable SM mode may be selected for use based on various factors, as described below.
[0015] Table 1 summarizes some key aspects of the steered and non-steered modes.
Each SM mode has different capabilities and requirements.
[00161 For the steered mode, the transmitter transmits a pilot to allow the receiver to
estimate the MIMO channel, and the receiver sends back sufficient channel state information to allow the transmitter to derive steering vectors. Either the transmitter or receiver decomposes the MIMO channel into eigenmodes, which may be viewed as orthogonal spatial channels. The receiver also sends back the rate to use for each eigenmode. The transmitter and receiver both perform spatial processing in order to transmit data on the eigenmodes, as described below.
[0017] For the non-steered mode, the transmitter transmits a pilot to allow the receiver
to estimate the MIMO channel. The receiver sends back the rate to use for each spatial channel. The transmitter transmits data (e.g., from its antennas) without any spatial processing, and the receiver performs spatial processing to recover the transmitted data. The pilot transmission and spatial processing at the transmitter and receiver for the steered and non-steered modes are described below.


where entry hip for = 1 ... NR and j = 1 ... NT, is the coupling (i.e., complex gain)
between transmit antenna j and receive antenna z. For simplicity, the MIMO channel is assumed to be full rank with NS [0020] Singular value decomposition may be performed on H to obtain Ns eigenmodes
of H, as follows:

H = U2V" , Eq(2)
where U is an (NR x NR) unitary matrix of left eigenvectors of H; 2 is an (NR xNT) diagonal matrix of singular values of H; V is an (NT xNT) unitary matrix of right eigenvectors of H; and " H " denotes the conjugate transpose.
A unitary matrix M is characterized by the property M*M = I, where I is the identity matrix. The columns of a unitary matrix are orthogonal to one another.
[0021] The right eigenvectors of H are also referred to as steering vectors and may be
used for spatial processing by the transmitter to transmit data on the Ns eigenmodes of H. The left eigenvectors of H may be used for spatial processing by the receiver to recover the data transmitted on the Ns eigenmodes. The eigenmodes may be viewed as orthogonal spatial channels obtained through decomposition. The diagonal entries of 2 are the singular values of H, which represent the channel gains for the Ns eigenmodes.
[0022] In a practical system, only an estimate of H can be obtained, and only estimates
of V, 2 and U can be derived. The Ns spatial channels are also typically not
completely orthogonal to one another due to various reasons such as an imperfect
channel estimate. For simplicity, the description herein assumes channel estimation and
decomposition without errors. Furthermore, the term "eigenmode" covers the case
where an attempt is made to orthogonalize the spatial channels using decomposition,
even though the attempt may not be fully successful due to, for example, an imperfect
channel estimate.
[0023] Table 2 summarizes the spatial processing at the transmitter and the receiver for
the steered mode. In Table 2, s is a vector with Ns data symbols to be transmitted on
the Ns eigenmodes of H, xsl is a vector with NT transmit symbols to be sent from the
NT transmit antennas, rst is a vector with NR received symbols obtained from the NR
receive antennas, sst is a vector with Ns recovered data symbols (i.e., ss[ is an estimate
of s), and the subscript "sf" denotes the steered mode. As used herein, a "data symbol"
refers to a modulation symbol for data, and a "pilot symbol" refers to a modulation symbol for pilot.


where A is a diagonal matrix of eigenvalues, which are the squares of the singular values in 2. The transmitter can perform spatial processing with V to obtain xsl, and
the receiver can perform spatial processing with Vw Hw to obtain sst.
2. Non-Steered Mode
[0025] For the non-steered mode, the transmitter can transmit one data symbol stream
from each transmit antenna. A spatial channel for this mode can correspond to one transmit antenna. The receiver performs spatial processing to separate out and recover the transmitted data symbol streams. The receiver can use various receiver processing techniques such as a channel correlation matrix inversion (CCMI) technique (which is also known as a zero-forcing technique), a minimum mean square error (MMSE) technique, a successive interference cancellation (SIC) technique, and so on
[0026] _ Table 3 summarizes the spatial processing at the transmitter and the receiver for the non-steered mode. In Table 3, \ns is a vector with Nr data symbols to be sent from
the Nj transmit antennas, rns is a vector with NR received symbols obtained from the NR
receive antennas, Mccmi is a spatial filter matrix for the CCMI technique, Mmmse is a
spatial filter matrix for the MMSE technique, Dmmse is a diagonal matrix for the MMSE
technique (which contains the diagonal elements of MmmwH), aT*d the subscript "?is" denotes the non-steered mode.


For simplicity, the M3MO channel noise n is assumed to be additive white Gaussian noise (AWGN) with zero mean, a variance of [0027] For the SIC technique, the receiver processes the NR received symbol streams in
Ns successive stages to recover one data symbol stream in each stage. For each stage A, where X= 1 ... Ns, the receiver initially performs spatial processing on NR input symbol
streams for stage X using the CCMI, MMSE, or some other technique and obtains one recovered data symbol stream. The NR received symbol streams are the NR input symbol streams for stage 1. The receiver further processes (e.g., demodulates, deinterleaves, and decodes) the recovered data symbol stream for stage X to obtain a decoded data stream, estimates the interference this stream causes to the other data symbol streams not yet recovered, and cancels the estimated interference from the NR input symbol streams for stage X to obtain NR input symbol streams for stage A.+1. The receiver then repeats the same processing on the NR input symbol streams for stage X+l to recover another data symbol stream.
[0028] For each stage A, the SIC receiver derives a spatial filter matrix MJ|V for that
stage based on a reduced channel response matrix H and using the CCMI, MMSE, or
some other technique. The reduced matrix H is obtained by removing A-1 columns in the original matrix H corresponding to the A-l data symbol streams already
recovered. The matrix MJic has dimensionality of (NT-X+l)xNR. Since H is
different for each stage, Msic is also different for each stage.
[0029] The receiver may also use other receiver spatial processing techniques to recover
the transmitted data symbol streams.

[0030] FIG. 2 shows the spatial processing at the transmitter and receiver for the
steered and non-steered modes. At the transmitter, the data vector s is multiplied with
either the matrix V for the steered mode or the identity matrix I for the non-steered
mode by a unit 220 to obtain the transmit symbol vector X- At the receiver, the
received symbol vector r is multiplied with either the matrix UH for the steered mode or the spatial filter matrix M for the non-steered mode by a unit 260 to obtain a detected symbol vector 5,'which is an unnormalized estimate of s. The matrix M may be derived based on the CCMI, MMSE, or some other technique. The vector ? is
further scaled with either the diagonal matrix 2T1 for the steered mode or a diagonal
matrix D~! for the non-steered mode to obtain the recovered data symbol vector s,
where D"1 = I for the CCMI technique and D1 = D^ for the MMSE technique.
3. Overhead for Steered and Non-Steered Nodes
[0031] The steered and non-steered modes have different pilot and overhead
requirements, as shown in
[0032] Table 1 and described below.
A. Pilot Transmission
[0033] For both the steered and non-steered modes, the transmitter can transmit a
MMO pilot (which is an unsteered pilot) to allow the receiver to estimate the MIMO channel and obtain the matrix H. The MEMO pilot comprises NT orthogonal pilot
transmissions sent from Nj transmit antennas, where orthogonality may be achieved in time, frequency, code, or a combination thereof. For code orthogonality, the Nr pilot transmissions can be sent simultaneously from the Nr transmit antennas, with the pilot transmission from each antenna being "covered" with a different orthogonal (e.g., Walsh) sequence. The receiver "decovers" the received pilot symbols for each receive antenna / with the same Nj orthogonal sequences used by the transmitter to obtain estimates of the complex channel gain between receive antenna i and each of the NT transmit antennas. The covering at the transmitter and the decovering at the receiver are performed in similar manner as for a Code Division Multiple Access (CDMA) system. For frequency orthogonality, the Nr pilot transmissions for the NT transmit antennas can be sent simultaneously on different subbands of the overall system bandwidth. For time

orthogonality, the Nj pilot transmissions for the NT transmit antennas can be sent in
different time slots. In any case, the orthogonality among the NT pilot transmissions
allows the receiver to distinguish the pilot transmission from each transmit antenna.
[0034] For the steered mode, the receiver sends back sufficient channel state
information to allow the transmitter to derive the steering vectors. The receiver may send this information in a direct form (e.g., by sending the entries of V) or in an indirect form (e.g., by transmitting a steered or unsteered pilot).
B. Rate Selection/Control
[0035] The receiver can estimate the received signal-to-noise-and-interference ratio
(SNR) for each spatial channel, which can correspond to an eigenmode for the steered mode or a transmit antenna for the non-steered mode. The received SNR is dependent on the SM mode and spatial processing technique used by the transmitter and receiver.
[0036] Table 4 summarizes the received SNR for the steered and non-steered modes. In
Table 4, Pm is the transmit power used for spatial channel m, a2 is the noise variance, am is the singular value for eigenmode m (i.e., the m-th diagonal element of X), r^-is
the m-th diagonal element of R (which is R = H*H), qmm is the wi-th diagonal element of Q, and ym is the SNR for spatial channel m. The received SNRs for the SIC
- technique are dependent on the spatial processing technique (e,g., CCMI or MMSE) and the order in which the data streams are recovered. An operating SNR can be defined as being equal to the received SNR plus an SNR back-off factor. The SNR back-off factor can be set to a positive value to account for estimation error, SNR fluctuation over time, and so on, but may also be set to zero.


[0037] The MIMO system may support a set of rates. Each non-zero rate is associated
with a particular data rate or spectral efficiency, a particular coding scheme, a particular modulation scheme, and a particular SNR required to achieve a target level of performance (e.g., one percent packet error rate (PER)). The required SNR for each rate may be determined by computer simulation, empirical measurement, and so on, and with an assumption of an AWGN channel. A look-up table (LUT) can store the rates supported by the system and their required SNRs. For each spatial channel, the highest rate in the look-up table with a required SNR that is equal to or less than the operating SNR of the spatial channel is selected as the rate to use for the spatial channel.
[0038] Closed-loop rate control may be used for each spatial channel or a combination
of spatial channels. The receiver can estimate the received SNR for each spatial channel, select the proper rate for the spatial channel, and send back the selected rate. The transmitter can transmit each data symbol stream at the selected rate.
C. Mode Selection
[0039] User terminal 120 can use either the steered or non-steered mode at any given
moment for communication. The mode selection may be made based on various factors such as the following.
[0040] Overhead - The steered mode requires more overhead than the non-steered
mode. For the steered mode, the receiver needs to send back sufficient channel state information as well as the rates for the JV$ eigenmodes. In some instances, the additional CSI overhead cannot be supported or is not justified. For the non-steered mode, the receiver only needs to send back the rates for the spatial channels, which is much less overhead.
[0041] Amount of Data - The steered mode is generally more efficient but also requires
more setup steps (e.g., channel estimation, singular value decomposition, and CSI

feedback). If only a small amount of data needs to be sent, then it may be quicker and more efficient to transmit this data using the non-steered mode.
[0042] Capability - A user terminal may communicate peer-to-peer with another user
terminal that supports only one mode (e.g., either the steered or non-steered mode). In this case, the two terminals can communicate using a common mode supported by both user terminals.
[0043] Channel Conditions - The steered mode may be more easily supported for static
channels, slow varying channels, and channels with a strong line-of-site component (e.g., a Rician channel).
[0044] Receiver SNR - The steered mode provides better performance in low SNR
conditions. A user terminal may elect to use steered mode when the SNR drops below some threshold.
[0045] Calibration Status - The steered mode may be selected for use if the transmitter
and receiver are "calibrated" such that the downlink and uplink channel responses are reciprocal of one another. Reciprocal downlink and uplink can simplify the pilot transmission and spatial processing for both the transmitter and receiver for the steered mode, as described below.
[0046] A user terminal that is not mobile and is communicating with the same access
point may use the steered mode much of the time. A user terminal that is mobile and communicating with different entities (e.g., different access points and/or other user terminals) may use the non-steered mode, until such time that it is more advantageous to use the steered mode. A user terminal may also switch between the steered and non-steered modes, as appropriate. For example, a user terminal may use the non-steered mode for small data bursts (or short data sessions) and at the start of long data bursts (or long data sessions), and may use the steered mode for the remaining portion of the long data bursts. As another example, a user terminal may use the steered mode for relatively static channel conditions and may use the non-steered mode when the channel conditions change more rapidly.
4. TDD MIMO System
[0047] A multi-mode user terminal for an exemplary MIMO wireless local area network
(WLAN) system is described below. The MIMO WLAN system utilizes orthogonal frequency division multiplexing (OFDM), which is a multi-carrier modulation technique

that effectively partitions the overall system bandwidth into multiple (NF) orthogonal subbands. With OFDM, each subband is associated with a respective carrier that may be modulated with data.
[0048] The exemplary MIMO WLAN system is a TDD system. A high degree of
correlation normally exists between the downlink and uplink channel responses for the TDD system since these links share the same frequency band. However, the responses of the transmit/receive chains at the access point are typically not the same as the responses of the transmit/receive chains at the user terminal. The differences can be determined and accounted for via calibration. The overall downlink and uplink channel responses may then be assumed to be reciprocal (i.e., transpose) of each other. The channel estimation and spatial processing for the steered mode can be simplified with reciprocal downlink and uplink.
[00491 FIG. 3 shows the transmit/receive chains at access point 110 and user terminal
120. At access point 110, transmit chain 324 and receive chain 334 are modeled by matrices Tap(&) and Rap(&), respectively, for each subband k. At user terminal 120,
transmit chain 364 and receive chain 354 are modeled by matrices Tm(fc) and Rul(&),
respectively, for each subband k.
[0050] Table 5 summarizes the calibration and singular value decomposition for the
downlink and uplink in the TDD MIMO WLAN system. The "effective" downlink and uplink channel responses, Hedn(fc) and Heup(fc), include the responses of the
appropriate transmit and receive chains. Diagonal correction matrices Kap(&) and
Kul(fc) are obtained by performing calibration with MIMO pilots transmitted by both the access point and user terminal. The "calibrated" downlink and uplink channel responses, HcdD(fc) and Hcup(&), include the correction matrices and are reciprocal of
one another (i.e., Hcup(&) = HcdB(£), where " " denotes the transpose).


[0051] Because Hcup(£) and Hcdn(fc) are reciprocal, the matrices V^(fc) m of left and right eigenvectors of Hcdn(£) are the complex conjugate of the matrices Vut(fc) and Uap(A:) of right and left eigenvectors of H^ik). The matrix Uap(£) can
be used by access point 110 for both transmit and receive spatial processing. The matrix Vm(Jfc) can be used by user terminal 120 for both transmit and receive spatial
processing. [0052] Singular value decomposition may be performed independently for each of the NF subbands. For each subband, the singular values in S(fc) may be ordered from largest
to smallest, and the eigenvectors in V(&) and V(k) may be ordered correspondingly.
A "wideband" eigenmode may be defined as the set of same-order eigenmodes for all Np subbands after the ordering. The decomposition only needs to be performed by either user terminal 120 or access point 110. If performed by user terminal 120, then the matrices Uap(&), for k = 1 ... NF, may be provided to access point 110 in either a
direct form (e.g., by sending entries of Uap(fc)) or an indirect form (e.g., by transmitting
a steered pilot).
[0053] Table 6 summarizes the spatial processing at access point 110 and user terminal
120 for data transmission and reception on the downlink and uplink in the TDD MIMO WLAN system for the steered mode. In Table 6, the subscript "up" denotes the uplink, and the subscript "dn" denotes the downlink.


[0054] For the steered mode, the access point can transmit a MMO pilot on the
downlink. The user terminal can estimate the calibrated downlink channel based on the MIMO pilot, perform singular value decomposition, and transmit a steered pilot on the uplink using the matrix V^ (k). A steered pilot is a pilot transmitted on the eigenmodes using the same steering vectors that are used for data transmission on the eigenmodes. The access point can directly estimate the matrix Uap(fc) based on the uplink steered
pilot. Pilots may also be transmitted in other manners for the steered mode. For example, the user terminal can transmit the MIMO pilot, and the access point can transmit the steered pilot. As another example, the access point and user terminal can both transmit MIMO pilots.
[0055] For the non-steered mode, the transmitter (either the access point or user
ierininal) can transmit a MIMO pilot along with the data transmission. The receiver performs spatial processing (e.g., with CCM1, MMSE, SIC, or some other technique) to recover the data symbol streams, as described above.
[0056] Table 7 summarizes an embodiment of the pilot transmission and spatial
processing for the steered and non-steered modes for the TDD MIMO WLAN system.


[0057] For both the steered and non-steered modes, the receiver (either the access point
or user terminal) can estimate the average received SNR for each wideband spatial channel, for example, by averaging the received SNRs (in dB) for the NF subbands of the wideband spatial channel. A wideband spatial channel can correspond to a wideband eigenmode for the steered mode or a transmit antenna for the non-steered mode. The receiver then computes an operating SNR for each wideband spatial channel as the sum of the average received SNR plus the SNR back-off factor. The receiver then selects the rate for each wideband spatial channel based on the operating SNR and the look-up table of supported rates and their required SNRs.
[0058] FIG. 3 shows the spatial processing at access point 110 and user terminal 120
for downlink and uplink data transmission for the steered mode in the MIMO WLAN system. For the downlink, at access point 110, the data symbol vector s^ik) is
multiplied with the matrix U*p(fc) by a unit 320 and further scaled with the correction
matrix Kap(£) by a unit 322 to obtain the transmit symbol vector Xdn(^) f°r *e

downlink. At user terminal 120, the received symbol vector rdn (k) is multiplied with
the matrix Vt (k) by a unit 360 and further scaled with the matrix Zdn(k) (k) by a unit 362
to obtain the recovered data symbol vector sdn (k) for the downlink.
[0059] For the uplink, at user terminal 120, the data symbol vector sup(k) is multiplied
with the matrix Vm(k) by a unit 390 and further scaled with the correction matrix Ktt(k) by a unit 392 to obtain the transmit symbol vector xup(k) for the uplink. At access point 110, the received symbol vector rup(k) is multiplied with the matrix
U(k) by a unit 340 and further scaled with the matrix Z(k) by a unit 342 to obtain
the recovered data symbol vector sup(k) for the uplink.
[0060] FIG. 4 shows the spatial processing at access point 110 and user terminal 120
for downlink and uplink data transmission for the non-steered mode in the MIMO WLAN system. For the downlink, at access point 110, the data symbol vector sdn(k) is
multiplied with the identity matrix I by a unit 420 to obtain the transmit symbol vector
xdn(k) for the downlink. At user terminal 120, the received symbol vector rdn(k) is
multiplied with a spatial filter matrix Mut(£) by a unit 460 and further scaled with a
diagonal matrix Dut (fc) by a unit 462 to obtain the recovered data symbol vector sdn(k) for the downlink. The matrices Mut(K) and are derived based on the effective downlink channel response matrix Hedn(k) and using the CCMI, MMSE, SIC, or some other technique. [0061] - For the uplink, at user terminal 120, the data symbol vector s (k) is multiplied
with the identity matrix I by a unit 490 to obtain the transmit symbol vector xup(k) for the uplink. At access point 110, the received symbol vector rup(k) is multiplied with a spatial filter matrix Map(k) by a unit 440 and further scaled with a diagonal matrix
(it) by a unit 442 to obtain the recovered data symbol vector s (Jk) for the uplink. The matrices M (k) and Djp(k) are derived based on the effective uplink channel response matrix Hcup(k) and using the CCMI, MMSE, SIC, or some other technique.
[0062] FIG. 5 shows a block diagram of access point 110 and user terminal 120. On
the downlink, at access point 110, a transmit (TX) data processor 514 receives traffic

data from a data source 512 and control data from a controller 530. TX data processor 514 processes (e.g., encodes, interleaves, and symbol maps) each of Ns data streams based on the coding and modulation schemes corresponding to the rate selected for the stream to obtain a data symbol stream. A TX spatial processor 520 receives Ns data symbol streams from TX data processor 514, performs spatial processing (as required) on the data symbols, multiplexes in pilot symbols, and provides Nap transmit symbol streams for the Nap antennas. The processing by TX spatial processor 520 is dependent on whether the steered or non-steered mode is selected for use and may be performed as described above. Each transmitter unit (TMTR) 522 receives and processes (e.g., OFDM modulates and conditions) a respective transmit symbol stream to generate a downlink signal. Nap transmitter units 522a through 522ap provide Nap downlink signals for transmission from Nap antennas 524a through 524ap, respectively.
[0063] At user terminal 120, Nut antennas 552a through 552ut receive the Nap downlink
signals, and each antenna provides a received signal to a respective receiver unit (RCVR) 554. Each receiver unit 554 performs processing (e.g., conditioning and OFDM demodulation) complementary to that performed by transmitter units 522 and provides a stream of received symbols. A receive (RX) spatial processor 560 performs spatial processing on Nttt received symbol streams from Ntll receiver units 554 and provides Ns streams of recovered data symbols. The processing by RX spatial processor 560 is dependent on whether the steered or non-steered mode is selected for use and may be performed as described above. An RX data processor 570 processes (e.g., demaps, deinterleaves, and decodes) the Ns recovered data symbol streams to obtain Ns decoded data streams, which may be provided to a data sink 572 for storage and/or a controller 580 for further processing.
[0064] A channel estimator 578 estimates the downlink channel response based on
received pilot symbols and provides channel estimates, which may include channel gain estimates, SNR estimates, and so on. Controller 580 receives the channel estimates, derives the matrices used by RX spatial processor 560 and a TX spatial processor 590 for spatial processing, and determines a suitable rate for each data symbol stream sent on the downlink. The rates and uplink data are processed by a TX data processor 588, spatially processed (as required) by TX spatial processor 590, multiplexed with pilot symbols, conditioned by Niit transmitter units 554a through 554ut, and transmitted via antennas 552a through 552ut.

[0065] At access point 110, the Nul transmitted uplink signals are received by antennas
524, conditioned and demodulated by receiver units 522, and processed by an RX spatial processor 540 and an RX data processor 542. The rates are provided to controller 530 and used to control data transmission on the downlink.
[0066] Access point 110 and user terminal 120 may perform similar or different
processing for uplink data and pilot transmission.
[0067] Controllers 530 and 580 control the operation of various processing units at
access point 110 and user terminal 120, respectively. SM mode selectors 534 and 584 select the appropriate spatial multiplexing mode to use for access point 110 and user terminal 120, respectively, based on various factors such as those described above. Memory units 532 and 582 store data and program codes used by controllers 530 and 580, respectively.
[0068] FIG- 6 shows a flow diagram of a process 600 for transmitting and receiving
data in the MEMO system. Process 600 may be performed by a user terminal and an access point for data transmission on the downlink and uplink.
[0069] Initially, an SM mode is selected from among multiple supported SM modes,
which may include the steered and non-steered modes described above (step 612). The mode selection may be based on the calibration status of the terminal, the amount of data to send, the SNR and/or channel conditions, the capability of the other communicating entity, and so on. The selected SM mode may also change during a data session.
[0070] For data transmission (block 620), multiple data streams for a first
communication link (e.g., the uplink) are coded and modulated in accordance with their selected rates to obtain multiple data symbol streams for the first link (step 622). These data symbol streams are then spatially processed in accordance with the selected SM mode to obtain multiple transmit symbol streams for transmission from multiple antennas and via the first link (step 624). The transmit spatial processing is with a matrix of steering vectors for the steered mode and with the identity matrix for the non-steered mode.
[0071] For data reception (block 630), multiple received symbol streams, obtained from
the multiple antennas for a second communication link (e.g., the downlink), are spatially processed in accordance with the selected SM mode to obtain multiple recovered data symbol streams (step 632). The receive spatial processing is with a matrix of

eigenvectors for the steered mode and a spatial filter matrix for the non-steered mode. The spatial filter matrix may be derived based on the CCMI, MMSE, SIC, or some other technique. The recovered data symbol streams are then demodulated and decoded in accordance with their selected rates to obtain multiple decoded data streams for the second link (step 634).
[0072] The data transmission in block 620 and the data reception in block 630 may
occur simultaneously or at different times. Pilots and rates are also transmitted and received in order to support data transmission and reception with the selected SM mode.
[0073] The multi-mode terminal and access point and the data transmission/reception
techniques described herein may be implemented by various means. For example, these entities and techniques may be implemented in hardware, software, or a combination thereof. For a hardware implementation, the processing units for these entities and techniques 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 an*ays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described herein, or a combination thereof.
[0074] 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 units 532 and 582 in FIG. 5) and executed by a processor (e.g., controllers 530 and 580). The memory unit may be implemented within the processor or external to the processor, in which case it can be communicatively coupled to the processor via various means as is known in the art.
[0075] 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.
[0076] 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 and novel features disclosed herein.
[0077] WHAT IS CI.AIME

CLAIMS
1. A terminal in a wireless multiple-input multiple-output (MIMO)
communication system, comprising:
a mode selector operable to select a spatial multiplexing mode from among a plurality of spatial multiplexing modes supported by the terminal, wherein each of the plurality of spatial multiplexing modes supports simultaneous transmission of multiple data symbol streams via multiple spatial channels of a MEMO channel formed with a plurality of antennas at the terminal;
a transmit spatial processor operable to spatially process a first plurality of data symbol streams in accordance with the selected spatial multiplexing mode to obtain a plurality of transmit symbol streams for transmission from the plurality of antennas and via a first communication link; and
a receive spatial processor operable to spatially process a plurality of received symbol streams, obtained from the plurality of antennas, in accordance with the selected spatial multiplexing mode to obtain a plurality of recovered data symbol streams, which are estimates of a second plurality of data symbol streams sent via a second communication link.
2. The terminal'of claim 1, wherein the plurality of spatial multiplexing
modes include a steered mode and a non-steered mode.
3. The terminal of claim 2, wherein the steered mode supports simultaneous
transmission of multiple data symbol streams via multiple orthogonal spatial channels
of the MIMO channel, and wherein the non-steered mode supports simultaneous
transmission of multiple data symbol streams from the plurality of antennas.

4. The terminal of claim 2, wherein
the transmit spatial processor is operable to multiply the first plurality of data symbol streams with a matrix of steering vectors for the steered mode and with an identity matrix for the non-steered mode, and
the receive spatial processor is operable to multiply the plurality of received symbol streams with a matrix of eigenvectors for the steered mode and with a spatial filter matrix for the non-steered mode.
5. The terminal of claim 4,^^her^omprising:
a channel estimator operable to estimate a channel response of the second communication link; and
a controller operable to derive the spatial filter matrix based on the estimated channel response for the second communication link.
6. The terminal of claim 5, wherein the controller is operable to derive the
spatial filter matrix based on a channel correlation matrix inversion (CCMI) technique
or a minimum mean square error (MMSE) technique.
7. The terminal of claim 5, wherein the controller is operable to derive the spatial filter matrix based on a successive interference cancellation (SIC) technique and using a channel correlation matrix inversion (CCMI) technique or a minimum mean square error (MMSE) technique.
8. The terminal of claim 2,Turther mmprising:
a transmit data processor operable to code and modulate a first plurality of data streams in accordance with a first plurality of rates to obtain the first plurality of data symbol streams for the first communication link; and
a receive data processor operable to demodulate and decode the plurality of recovered data symbol streams in accordance with a second plurality of rates to obtain a plurality of decoded data streams for the second communication link.

9. The terminal of claim 8, wherein the first plurality of rates are for a plurality of eigenmodes of the MIMO channel for the steered mode and are for the plurality of antennas for the non-steered mode.
10. The terminal of claim 2, wherein the mode selector is operable to select the steered mode if the terminal is calibrated and the non-steered mode if the terminal is not calibrated, and wherein channel response of the second communication link is reciprocal of channel response of the first communication link if the terminal is calibrated.
11. The terminal of claim 2. wherein the mode selector is operable to select the steered mode or the non-steered mode based on an amount of data to send, channel conditions, capability of an entity in communication with the terminal, or a combination
thereof.
12. The terminal of claim 2, wherein the mode selector is operable to select the non-steered mode for a first portion of a data session and to select the steered mode for a remaining portion of the data session.
13. The terminal of claim 2, wherein the mode selector is operable to select the steered mode or the non-steered mode based on received signal-to-noise-and-interference ratio (SNR).
14. The terminal of claim 2, wherein the transmit spatial processor is further operable to multiplex a steered pilot for the steered mode and an unsteered pilot for the non-steered mode, wherein the steered pilot is transmitted on eigenmodes of the MIMO channel, and wherein the unsteered pilot comprises a plurality of orthogonal pilot transmissions from the plurality of antennas.
15. The terminal of claim 2, wherein the transmit spatial processor is further operable to multiplex an unsteered pilot for both the steered and non-steered modes, and wherein the unsteered pilot comprises a plurality of orthogonal pilot transmissions from the plurality of antennas.

16. The terminal of claim 1 and operable to communicate with an access point in the MMO system.
17. The terminal of claim 1 and operable to communicate peer-to-peer with another tenrdnal in the MMO system.
18. The terminal of claim 1, wherein the M1MO system utilizes orthogonal frequency division multiplexing (OFDM), and wherein the transmit and receive spatial processors are operable to perform spatial processing for each of a plurality of subbands.
19. The terminal of claim 1, wherein the MIMO system is a time division duplex (TDD) system.
20. A method of processing data in a wireless multiple-input multiple-output
(MMO) communication system, comprising:
selecting a spatial multiplexing mode from among a plurality of spatial multiplexing modes, wherein each of the plurality of spatial multiplexing modes supports simultaneous transmission of multiple data symbol streams via multiple spatial channels of a MIMO channel;
spatially processing a first plurality of data symbol streams in accordance with the selected spatial multiplexing mode to obtain a plurality of transmit symbol streams for transmission from a plurality of antennas and via a first communication link; and
spatially processing a plurality of received symbol streams, obtained from the plurality of antennas, in accordance with the selected spatial multiplexing mode to obtain a plurality of recovered data symbol streams, which are estimates of a second plurality of data symbol streams sent via a second communication link.

21. The method of claim 20, wherein the plurality of spatial multiplexing modes include a steered mode and a non-steered mode, the steered mode supporting simultaneous transmission of multiple data symbol streams via multiple orthogonal spatial channels of the MIMO channel, and the non-steered mode supporting simultaneous transmission of multiple data symbol streams from the plurality of antennas.
22. The method of claim 21, wherein the first plurality of data symbol streams are multiplied with a matrix of steering vectors for the steered mode and with an identity matrix for the non-steered mode, and wherein the plurality of received symbol streams are multiplied with a matrix of eigenvectors for the steered mode and with a spatial filter matrix for the non-steered mode.
23. The method of claim 22 further comprising:
estimating a channel response of the second communication link; and deriving the spatial filter matrix based on the estimated channel response for the second communication link.
24. The method of claim 23? wherein the spatial filter matrix is derived based
on a channel correlation matrix inversion (CCMI) technique, a minimum mean square
error (MMSE) technique, or a successive interference cancellation (SIC) technique.

25. An apparatus in a wireless multiple-input multiple-output (MEMO)
communication system, comprising:
means for selecting a spatial multiplexing mode from among a plurality of spatial multiplexing modes, wherein each of the plurality of spatial multiplexing modes supports simultaneous transmission of multiple data symbol streams via multiple spatial channels of a MIMO channel;
means for spatially processing a first plurality of data symbol streams in accordance with the selected "spatial multiplexing mode to obtain a plurality of transmit symbol streams;
means for transmitting the plurality of transmit symbol streams from a plurality of antermas-and via a first communication link;
means for receiving a plurality of received symbol streams from the plurality of antennas for a second communication link; and
means for spatially processing the plurality of received symbol streams in accordance with the selected spatial multiplexing mode to obtain a plurality of recovered data symbol streams, which are estimates of a second plurality of data symbol streams sent via the second communication link.
26. The apparatus of claim 25, wherein the plurality of spatial multiplexing
modes include steered mode and a non-steered mode, the steered mode supporting
simultaneous transmission of multiple data symbol streams via multiple orthogonal
spatial channels of the MEMO channel, and the non-steered mode supporting
simultaneous transmission of multiple data symbol streams from the plurality of
antennas.
27. The apparatus of claim 26, wherein the first plurality of data symbol
streams are multiplied with a matrix of steering vectors for the steered mode and with an
identity matrix for the non-steered mode, and wherein the plurality of received symbol
streams are multiplied with a matrix of eigenvectors for the steered mode and with a
spatial filter matrix for the non-steered mode.

28. The apparatus of claim 27, further comprising:
means for estimating a channel response of the second communication link; and means for deriving the spatial filter matrix based on the estimated channel response for the second communication link.
29. The apparatus of claim 28, wherein the spatial filter matrix is derived
based on a channel correlation matrix inversion (CCMI) technique, a minimum mean
square error (MMSE) technique, or a successive interference cancellation (SIC)
technique.
30. An access point in a wireless multiple-input multiple-output (MMO)
communication system, comprising:
a mode selector operable to select a spatial multiplexing mode from among a plurality of spatial multiplexing modes supported by the access point, wherein each of the plurality of spatial multiplexing modes supports simultaneous transmission of multiple data symbol streams via multiple spatial channels of a MIMO channel formed with a plurality of antennas at the access point;
a transmit spatial processor operable to spatially process a first plurality of data symbol streams in accordance with the selected spatial multiplexing mode to obtain a plurality of transmit symbol streams for transmission from the plurality of antennas and via a first communication link; and
_. a receive spatial processor operable to spatially process a plurality of received symbol streams, obtained from the plurality of antennas, in accordance with the selected spatial multiplexing mode to obtain a plurality of recovered data symbol streams, which are estimates of a second plurality of data symbol streams sent via a second communication link.
31. The access point of claim 30, wherein the plurality of spatial
multiplexing modes include a steered mode and a non-steered mode.

32. The access point of claim 31, wherein
the transmit spatial processor is operable to multiply the first plurality of data symbol streams with a matrix of steering vectors for the steered mode and with an identity matrix for the non-steered mode, and
the receive spatial processor is operable to multiply the plurality of received symbol streams with a matrix of eigenvectors for the steered mode and with a spatial filter matrix for the non-steered mode.




Documents:

718-chenp-2005 amended pages of specification 21-06-2011.pdf

718-CHENP-2005 AMENDED PAGES OF SPECIFICATION 14-06-2011.pdf

718-CHENP-2005 AMENDED CLAIMS 14-06-2011.pdf

718-CHENP-2005 CORRESPONDENCE OTHERS 21-06-2011.pdf

718-chenp-2005 form-1 14-06-2011.pdf

718-chenp-2005 form-3 14-06-2011.pdf

718-CHENP-2005 OTHER PATENT DOCUMENT 14-06-2011.pdf

718-CHENP-2005 POWER OF ATTORNEY 14-06-2011.pdf

718-CHENP-2005 CORRESPONDENCE OTHERS 08-07-2010.pdf

718-CHENP-2005 EXAMINATION REPORT REPLY RECEIVED 14-06-2011.pdf

718-chenp-2005-abstract.pdf

718-chenp-2005-claims.pdf

718-chenp-2005-correspondnece-others.pdf

718-chenp-2005-description(complete).pdf

718-chenp-2005-drawings.pdf

718-chenp-2005-form 1.pdf

718-chenp-2005-form 26.pdf

718-chenp-2005-form 3.pdf

718-chenp-2005-form 5.pdf

718-chenp-2005-form18.pdf

718-chenp-2005-pct.pdf


Patent Number 248185
Indian Patent Application Number 718/CHENP/2005
PG Journal Number 26/2011
Publication Date 01-Jul-2011
Grant Date 27-Jun-2011
Date of Filing 25-Apr-2005
Name of Patentee QUALCOMM INCORPORATED
Applicant Address 5775 MOREHOUSE DRIVE, SAN DIEGO, CALIFORNIA 92121, USA
Inventors:
# Inventor's Name Inventor's Address
1 HOWARD, STEVEN, J 75 HERITAGE AVENUE, ASHLAND, MA 01721, USA
2 WALTON, J, RODNEY 85 HIGHWOODS LANE, CARLISLE, MA 01741, USA
3 KETCHUM, JOHN, W 37 CANDLEBERRY LANE, HARVARD, MA 01451, USA
4 WALLACE, MARK, S 4 MODEL LANE, BEDFORD, MA 01730, USA
PCT International Classification Number H04L 1/60
PCT International Application Number PCT/US03/34565
PCT International Filing date 2003-10-24
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 60/421,309 2002-10-25 U.S.A.
2 10/693,535 2003-10-23 U.S.A.