Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
CALIBRATION AND BEAMFORMING IN A WIRELESS COMMUNICATION SYSTEM
Document Type and Number:
WIPO Patent Application WO/2009/046318
Kind Code:
A3
Abstract:
Techniques for performing calibration and beamforming in a wireless communication system are described. In an aspect, a Node B may periodically perform calibration in each calibration interval with a set of UEs to obtain a calibration vector for the Node B. The Node B may apply the calibration vector to account for mismatches in the responses of the transmit and receive chains at the Node B. In another aspect, the Node B may perform beamforming to a UE by taking into account gain imbalance for multiple antennas at the UE. The Node B may determine a precoding matrix for beamforming by taking into account gain imbalance due to (i) different automatic gain control (AGC) gains for receive chains at the UE, (ii) different power amplifier (PA) gains for transmit chains at the UE, and/or (iii) different antenna gains for multiple antennas at the UE.

Inventors:
SARKAR SANDIP (US)
Application Number:
PCT/US2008/078779
Publication Date:
August 13, 2009
Filing Date:
October 03, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
QUALCOMM INC (US)
SARKAR SANDIP (US)
International Classes:
H04B17/00; H04B7/06
Domestic Patent References:
WO1998027669A11998-06-25
Foreign References:
US20060146725A12006-07-06
US20060058022A12006-03-16
US20050111599A12005-05-26
US20070099670A12007-05-03
US20060098754A12006-05-11
Other References:
LOVE D J ET AL: "Multi-mode precoding using linear receivers for limited feedback MIMO systems", COMMUNICATIONS, 2004 IEEE INTERNATIONAL CONFERENCE ON PARIS, FRANCE 20-24 JUNE 2004, PISCATAWAY, NJ, USA,IEEE, vol. 1, 20 June 2004 (2004-06-20), pages 448 - 452, XP010710386, ISBN: 978-0-7803-8533-7
BAHRAMI H R ET AL: "Precoder design based on correlation matrices for MIMO systems", COMMUNICATIONS, 2005. ICC 2005. 2005 IEEE INTERNATIONAL CONFERENCE ON SEOUL, KOREA 16-20 MAY 2005, PISCATAWAY, NJ, USA,IEEE, vol. 3, 16 May 2005 (2005-05-16), pages 2001 - 2005, XP010826222, ISBN: 978-0-7803-8938-0
Attorney, Agent or Firm:
PATEL, Milan I. (5775 Morehouse DriveSan Diego, CA, US)
Download PDF:
Claims:

CLAIMS

1. A method for wireless communication, comprising: periodically performing calibration in each calibration interval to obtain a calibration vector for a Node B; and performing beamforming for at least one user equipment (UE) in each calibration interval and applying the calibration vector obtained for the calibration interval.

2. The method of claim 1, wherein the periodically performing calibration comprises, for each calibration interval, selecting a set of UEs to perform calibration, deriving at least one initial calibration vector for each UE in the selected set, and deriving the calibration vector for the Node B based on initial calibration vectors for all UEs in the selected set.

3. The method of claim 2, wherein the selecting the set of UEs comprises selecting the set of UEs based on channel quality indicators (CQIs) received from the UEs.

4. The method of claim 2, wherein the deriving at least one initial calibration vector for each UE comprises receiving a downlink channel estimate from the UE, receiving at least one sounding reference signal from at least one antenna at the UE, deriving an uplink channel estimate for the UE based on the at least one sounding reference signal received from the UE, and deriving the at least one initial calibration vector for the UE based on the downlink channel estimate and the uplink channel estimate.

5. The method of claim 4, wherein the downlink channel estimate comprises at least one downlink channel vector for the at least one antenna at the UE,

wherein the uplink channel estimate comprises at least one uplink channel vector for the at least one antenna at the UE, and wherein the deriving the at least one initial calibration vector for the UE comprises deriving an initial calibration vector for each antenna at the UE based on a downlink channel vector and an uplink channel vector for the antenna.

6. The method of claim 5, wherein each downlink channel vector comprises multiple first gains for multiple antennas at the Node B, wherein each uplink channel vector comprises multiple second gains for the multiple antennas at the Node B, and wherein the deriving an initial calibration vector for each antenna at the UE comprises determining multiple elements of an unnormalized calibration vector based on ratios of the multiple first gains to the multiple second gains, and scaling the multiple elements of the unnormalized calibration vector by a first element to obtain the initial calibration vector for the antenna at the UE.

7. The method of claim 2, wherein the deriving the calibration vector for the Node B comprises deriving the calibration vector for the Node B based on a function of the initial calibration vectors for all UEs in the selected set, the function being an averaging function or a minimum mean square error (MMSE) function.

8. The method of claim 2, wherein the periodically performing calibration further comprises, for each calibration interval, sending messages to the UEs in the selected set to enter a calibration mode.

9. An apparatus for wireless communication, comprising: at least one processor configured to periodically perform calibration in each calibration interval to obtain a calibration vector for a Node B, and to perform beamforming for at least one user equipment (UE) in each calibration interval and apply the calibration vector obtained for the calibration interval.

10. The apparatus of claim 9, wherein for each calibration interval, the at least one processor is configured to select a set of UEs to perform calibration, to derive at least one initial calibration vector for each UE in the selected set, and to derive the

calibration vector for the Node B based on initial calibration vectors for all UEs in the selected set.

11. The apparatus of claim 10, wherein for each UE in the selected set the at least one processor is configured to receive a downlink channel estimate from the UE, to receive at least one sounding reference signal from at least one antenna at the UE, to derive an uplink channel estimate for the UE based on the at least one sounding reference signal received from the UE, and to derive the at least one initial calibration vector for the UE based on the downlink channel estimate and the uplink channel estimate.

12. An apparatus for wireless communication, comprising: means for periodically performing calibration in each calibration interval to obtain a calibration vector for a Node B; and means for performing beamforming for at least one user equipment (UE) in each calibration interval and applying the calibration vector obtained for the calibration interval.

13. The apparatus of claim 12, wherein the means for periodically performing calibration comprises, for each calibration interval, means for selecting a set of UEs to perform calibration, means for deriving at least one initial calibration vector for each UE in the selected set, and means for deriving the calibration vector for the Node B based on initial calibration vectors for all UEs in the selected set.

14. The apparatus of claim 13, wherein the means for deriving at least one initial calibration vector for each UE comprises means for receiving a downlink channel estimate from the UE, means for receiving at least one sounding reference signal from at least one antenna at the UE, means for deriving an uplink channel estimate for the UE based on the at least one sounding reference signal received from the UE, and

means for deriving the at least one initial calibration vector for the UE based on the downlink channel estimate and the uplink channel estimate.

15. A computer program product, comprising : a computer-readable medium comprising: code for causing at least one computer to periodically perform calibration in each calibration interval to obtain a calibration vector for a Node B, and code for causing the at least one computer to perform beamforming for at least one user equipment (UE) in each calibration interval and apply the calibration vector obtained for the calibration interval.

16. A method for wireless communication, comprising: determining a precoding matrix at a Node B by taking into account gain imbalance for multiple antennas at a user equipment (UE); and performing beamforming for the UE with the precoding matrix.

17. The method of claim 16, wherein the determining the precoding matrix comprises determining the precoding matrix by taking into account gain imbalance due to different automatic gain control (AGC) gains for multiple receive chains for the multiple antennas at the UE.

18. The method of claim 17, further comprising: receiving at least one gain ratio from the UE, each gain ratio being determined by an AGC gain for an associated antenna and an AGC gain for a reference antenna at the UE, and wherein the determining the precoding matrix comprises determining the precoding matrix based on the at least one gain ratio.

19. The method of claim 18, further comprising: determining a composite channel matrix based on a channel matrix for the UE and a gain matrix formed with the at least one gain ratio, and wherein the determining the precoding matrix comprises determining the precoding matrix based on the composite channel matrix.

20. The method of claim 17, further comprising: receiving sounding reference signals from the multiple antennas at the UE, each sounding reference signal being transmitted by the UE from one antenna at a power level determined based on a gain ratio for the antenna, the gain ratio being determined by an AGC gain for the antenna and an AGC gain for a reference antenna at the UE.

21. The method of claim 16, wherein the determining the precoding matrix comprises determining the precoding matrix by taking into account gain imbalance due to different power amplifier (PA) gains for multiple transmit chains for the multiple antennas at the UE or due to different antenna gains for the multiple antennas.

22. The method of claim 21 , further comprising : receiving at least one gain ratio from the UE, each gain ratio being determined by a PA gain for an associated antenna and a PA gain for a reference antenna at the UE, and wherein the determining the precoding matrix comprises determining the precoding matrix based on the at least one gain ratio.

23. The method of claim 21 , further comprising : receiving sounding reference signals from the multiple antennas at the UE, each sounding reference signal being transmitted by the UE from one antenna at a power level determined based on a gain ratio for the antenna, the gain ratio being determined by a PA gain for the antenna and a PA gain for a reference antenna at the UE.

24. An apparatus for wireless communication, comprising: at least one processor configured to determine a precoding matrix at a Node B by taking into account gain imbalance for multiple antennas at a user equipment (UE), and to perform beamforming for the UE with the precoding matrix.

25. The apparatus of claim 24, wherein the at least one processor is configured to receive at least one gain ratio from the UE, each gain ratio being determined by a gain for an associated antenna and a gain for a reference antenna at the UE, each gain being an automatic gain control (AGC) gain for a receive chain or a

power amplifier (PA) gain for a transmit chain for an antenna at the UE, and to determine the precoding matrix based on the at least one gain ratio.

26. The apparatus of claim 24, wherein the at least one processor is configured to receive sounding reference signals from the multiple antennas at the UE, each sounding reference signal being transmitted by the UE from one antenna at a power level determined based on a gain ratio for the antenna, the gain ratio being determined by a gain for the antenna and a gain for a reference antenna at the UE, each gain being an automatic gain control (AGC) gain for a receive chain or a power amplifier (PA) gain for a transmit chain for an antenna at the UE.

27. A method for wireless communication, comprising: determining gain imbalance for multiple antennas at a user equipment (UE); sending signals or information indicative of the gain imbalance for the multiple antennas to a Node B; and receiving beamformed signals from the Node B, the beamformed signals being generated based on a precoding matrix derived by taking into account the gain imbalance for the multiple antennas at the UE.

28. The method of claim 27, wherein the determining the gain imbalance for the multiple antennas at the UE comprises determining at least one gain ratio for the multiple antennas at the UE, each gain ratio being determined by an automatic gain control (AGC) gain for an associated antenna and an AGC gain for a reference antenna at the UE.

29. The method of claim 27, wherein the determining the gain imbalance for the multiple antennas at the UE comprises determining at least one gain ratio for the multiple antennas at the UE, each gain ratio being determined by a power amplifier (PA) gain for an associated antenna and a PA gain for a reference antenna at the UE.

30. The method of claim 27, wherein the sending signals or information indicative of the gain imbalance for the multiple antennas comprises sending at least one gain ratio indicative of the gain imbalance for the multiple antennas to the Node B.

31. The method of claim 27, wherein the sending signals or information indicative of the gain imbalance for the multiple antennas comprises sending sounding reference signals from the multiple antennas at the UE, each sounding reference signal being sent from one antenna at a power level determined based on a gain ratio for the antenna.

32. An apparatus for wireless communication, comprising: at least one processor configured to determine gain imbalance for multiple antennas at a user equipment (UE), to send signals or information indicative of the gain imbalance for the multiple antennas to a Node B, and to receive beamformed signals from the Node B, the beamformed signals being generated based on a precoding matrix derived by taking into account the gain imbalance for the multiple antennas at the UE.

33. The apparatus of claim 32, wherein the at least one processor is configured to determine at least one gain ratio for the multiple antennas at the UE, and to determine each gain ratio based on a gain for an associated antenna and a gain for a reference antenna at the UE, each gain being an automatic gain control (AGC) gain for a receive chain or a power amplifier (PA) gain for a transmit chain for an antenna at the UE

34. The apparatus of claim 32, wherein the at least one processor is configured to send at least one gain ratio indicative of the gain imbalance for the multiple antennas to the Node B.

35. The apparatus of claim 32, wherein the at least one processor is configured to send sounding reference signals from the multiple antennas at the UE, and to send each sounding reference signal from one antenna at a power level determined based on a gain ratio for the antenna.

Description:

CALIBRATION AND BE AMFORMING IN A WIRELESS COMMUNICATION SYSTEM

[0001] The present application claims priority to provisional U.S. Application Serial No. 60/977,359, entitled "METHOD AND APPARATUS FOR CALIBRATION AND BEAMFORMING," filed October 3, 2007, assigned to the assignee hereof and incorporated herein by reference.

BACKGROUND

I. Field

[0002] The present disclosure relates generally to communication, and more specifically to transmission techniques in a wireless communication system.

II. Background

[0003] Wireless communication systems are widely deployed to provide various communication content such as voice, video, packet data, messaging, broadcast, etc. These wireless systems may be multiple-access systems capable of supporting multiple users by sharing the available system resources. Examples of such multiple-access systems include Code Division Multiple Access (CDMA) systems, Time Division Multiple Access (TDMA) systems, Frequency Division Multiple Access (FDMA) systems, Orthogonal FDMA (OFDMA) systems, and Single-Carrier FDMA (SC- FDMA) systems.

[0004] A wireless communication system may include a number of Node Bs that can support communication for a number of user equipments (UEs). A Node B may communicate with a UE via the downlink and uplink. The downlink (or forward link) refers to the communication link from the Node B to the UE, and the uplink (or reverse link) refers to the communication link from the UE to the Node B. The Node B may utilize multiple antennas to transmit data to one or more antennas at the UE. It is desirable to transmit data in a manner to achieve good performance.

SUMMARY

[0005] Techniques for performing calibration and beamforming in a wireless communication system are described herein. In an aspect, a Node B may periodically perform calibration in each calibration interval with a set of UEs to obtain a calibration vector for the Node B. The Node B may apply the calibration vector to account for mismatches in the responses of the transmit and receive chains at the Node B. [0006] In one design, in each calibration interval, the Node B may select a set of UEs to perform calibration, e.g., UEs with good channel qualities. The Node B may send messages to the selected UEs to enter a calibration mode. The Node B may receive a downlink channel estimate from each selected UE and may also receive at least one sounding reference signal from at least one antenna at the UE. The Node B may derive an uplink channel estimate for each selected UE based on the sounding reference signal(s) received from the UE. The Node B may derive at least one initial calibration vector for each selected UE based on the downlink and uplink channel estimates for the UE. The Node B may then derive a calibration vector for itself based on the initial calibration vectors for all selected UEs. The Node B may apply the calibration vector until it is updated in the next calibration interval. [0007] In another aspect, the Node B may perform beamforming to a UE by taking into account gain imbalance for multiple antennas at the UE. The gain imbalance may be due to variable gains in the receive and/or transmit chains at the UE. In one scenario, the Node B may determine a precoding matrix by taking into account gain imbalance due to different automatic gain control (AGC) gains for receive chains for the multiple antennas at the UE. In another scenario, the Node B may determine the precoding matrix by taking into account gain imbalance due to (i) different power amplifier (PA) gains for transmit chains for the multiple antennas at the UE and/or (ii) different antenna gains for the multiple antennas.

[0008] In one design, the Node B may receive at least one gain ratio from the UE, with each gain ratio being determined by a gain for an associated antenna and a gain for a reference antenna at the UE. Each gain may comprise an AGC gain, a PA gain, an antenna gain, etc. The Node B may determine a composite channel matrix based on a channel matrix for the UE and a gain matrix formed with the at least one gain ratio. In another design, the Node B may receive sounding reference signals from the multiple

antennas at the UE. Each sounding reference signal may be transmitted by the UE from one antenna at a power level determined based on the gain ratio for that antenna. The Node B may obtain a composite channel matrix based on the sounding reference signals. For both designs, the Node B may determine the precoding matrix based on the composite channel matrix, which may have captured the gain imbalance at the UE. The Node B may then perform beamforming for the UE with the precoding matrix. [0009] Various aspects and features of the disclosure are described in further detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010] FIG. 1 shows a wireless communication system.

[0011] FIG. 2 shows transmit and receive chains at a Node B and a UE.

[0012] FIG. 3 shows a Node B and multiple UEs for calibration.

[0013] FIG. 4 shows data reception without and with calibration.

[0014] FIG. 5 shows a UE with gain imbalance for multiple antennas.

[0015] FIG. 6 shows a process for performing calibration by a Node B.

[0016] FIG. 7 shows a process for performing calibration in a calibration interval.

[0017] FIG. 8 shows an apparatus for performing calibration.

[0018] FIG. 9 shows a process for performing beamforming by a Node B.

[0019] FIG. 10 shows an apparatus for performing beamforming.

[0020] FIG. 11 shows a process for receiving beamformed data by a UE.

[0021] FIG. 12 shows an apparatus for receiving beamformed data.

[0022] FIG. 13 shows a block diagram of a Node B and a UE.

DETAILED DESCRIPTION

[0023] The techniques described herein may be used for various wireless communication systems such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA and other systems. The terms "system" and "network" are often used interchangeably. A CDMA system may implement a radio technology such as Universal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA. cdma2000 covers IS-2000, IS-95 and IS-856 standards. A TDMA system may implement a radio technology such as Global System for Mobile

Communications (GSM). An OFDMA system may implement a radio technology such as Evolved UTRA (E-UTRA), Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, Flash-OFDM®, etc. UTRA and E-UTRA are part of Universal Mobile Telecommunication System (UMTS). 3GPP Long Term Evolution (LTE) is an upcoming release of UMTS that uses E-UTRA, which employs OFDMA on the downlink and SC-FDMA on the uplink. UTRA, E-UTRA, UMTS, LTE and GSM are described in documents from an organization named "3rd Generation Partnership Project" (3GPP). cdma2000 and UMB are described in documents from an organization named "3rd Generation Partnership Project 2" (3GPP2). For clarity, certain aspects of the techniques are described below for LTE, and LTE terminology is used in much of the description below.

[0024] FIG. 1 shows a wireless communication system 100, which may be an LTE system. System 100 may include a number of Node Bs 110 and other network entities. A Node B may be a fixed station that communicates with the UEs and may also be referred to as an evolved Node B (eNB), a base station, an access point, etc. Each Node B 110 provides communication coverage for a particular geographic area. To improve system capacity, the overall coverage area of a Node B may be partitioned into multiple (e.g., three) smaller areas. Each smaller area may be served by a respective Node B subsystem. In 3GPP, the term "cell" can refer to the smallest coverage area of a Node B and/or a Node B subsystem serving this coverage area.

[0025] UEs 120 may be dispersed throughout the system, and each UE may be stationary or mobile. A UE may also be referred to as a mobile station, a terminal, an access terminal, a subscriber unit, a station, etc. A UE may be a cellular phone, a personal digital assistant (PDA), a wireless modem, a wireless communication device, a handheld device, a laptop computer, a cordless phone, etc.

[0026] The system may support beamforming for data transmission on the downlink and/or uplink. For clarity, much of the description below is for beamforming on the downlink. Beamforming may be used for a multiple-input single-output (MISO) transmission from multiple transmit antennas at a Node B to a single receive antenna at a UE. Beamforming for a MISO transmission may be expressed as:

x = v s , Eq (I)

where s is a vector of data symbols, v is a precoding vector for beamforming, and x is a vector of output symbols.

[0027] The precoding vector v may also be referred to as a beamforming vector, a steering vector, etc. The precoding vector v may be derived based on a channel response vector h for a MISO channel from the multiple transmit antennas at the Node B to the single receive antenna at the UE. In one design, the precoding vector v may be derived based on pseudo eigen-beamforming using the channel response vector h for one column of a channel response matrix. Beamforming may provide higher signal-to- noise-and-interference ratio (SINR), which may support higher data rate. [0028] Beamforming may also be used for a multiple-input multiple-output (MIMO) transmission from multiple transmit antennas at a Node B to multiple receive antennas at a UE. The beamforming may send data on multiple eigenmodes of a MIMO channel formed by the multiple transmit antennas at the Node B and the multiple receive antennas at the UE. A MIMO channel matrix H may be diagonalized with singular value decomposition, as follows:

H = U D V , Eq (2)

where U is a unitary matrix of left eigenvectors of H,

V is a unitary matrix of right eigenvectors of H, and D is a diagonal matrix of singular values of H.

[0029] Beamforming for a MIMO transmission, which may also be referred to as eigen-beamforming, may be expressed as:

x = V s . Eq (3)

[0030] As shown in equation (3), the right eigenvector matrix V may be used as a precoding matrix for beamforming. The precoding matrix may also be referred to as a beamforming matrix, a steering matrix, etc. A beamformed transmission may provide noticeable gain over a non-beamformed transmission, especially when the number of layers (or rank) transmitted is less than the number of transmit antennas at the Node B. This may often be the case in asymmetric antenna scenarios, with the number of

transmit antennas at the Node B being larger than the number of receive antennas at the UE.

[0031] The system may support various reference signals for the downlink and uplink to facilitate beamforming and other functions. A reference signal is a signal generated based on known data and may also be referred to as pilot, preamble, training, sounding, etc. A reference signal may be used by a receiver for various purposes such as channel estimation, coherent demodulation, channel quality measurement, signal strength measurement, etc. Table 1 lists some reference signals that may be transmitted on the downlink and uplink and provides a short description for each reference signal. A cell-specific reference signal may also be referred to as a common pilot, a broadband pilot, etc. A UE-specific reference signal may also be referred to as a dedicated reference signal.

Table 1

[0032] The system may utilize time division duplexing (TDD). For TDD, the downlink and uplink share the same frequency spectrum or channel, and downlink and uplink transmissions are sent on the same frequency spectrum. The downlink channel response may thus be correlated with the uplink channel response. A reciprocity principle may allow a downlink channel to be estimated based on transmissions sent via the uplink. These uplink transmissions may be reference signals or uplink control channels (which may be used as reference symbols after demodulation). The uplink transmissions may allow for estimation of a space-selective channel via multiple antennas.

[0033] In the TDD system, channel reciprocity may be valid only for a wireless channel, which may also be referred to as a physical propagation channel. There may be noticeable differences between the responses or transfer characteristics of the transmit and receive chains at a Node B and the responses of the transmit and receive chains at a UE. An effective/equivalent channel may be composed of both the transmit and receive chains as well as the wireless channel. The effective channel may not be reciprocal due to differences in the responses of the transmit and receive chains at the Node B and the UE.

[0034] FIG. 2 shows a block diagram of the transmit and receive chains at a Node B 110 and a UE 120, which may be one of the Node Bs and one of the UEs in FIG. 1. For the downlink, at the Node B, output symbols (denoted as X D ) may be processed by a transmit chain 210 and transmitted via an antenna 212 and over a wireless channel having a response of A. At the UE, the downlink signal may be received by an antennas 252 and processed by a receive chain 260 to obtain received symbols (denoted as yo). The processing by transmit chain 210 may include digital-to-analog conversion, amplification, filtering, frequency upconversion, etc. The processing by receive chain 260 may include frequency downconversion, amplification, filtering, analog-to-digital conversion, etc.

[0035] For the uplink, at the UE, output symbols (denoted as xu) may be processed by a transmit chain 270 and transmitted via antennas 252 and over the wireless channel. At the Node B, the uplink signal may be received by antennas 212 and processed by a receive chain 220 to obtain received symbols (denoted as yu). [0036] For the downlink, the received symbols at the UE may be expressed as:

y D = σ - h - τ - x D = h D - x D , Eq (4)

where ris a complex gain for transmit chain 210 at the Node B, σ is a complex gain for receive chain 260 at the UE, and h D = σ - h - τ is an effective downlink channel from the Node B to the UE.

[0037] For the uplink, the received symbols at the Node B may be expressed as:

y u = p - h - π - x u , Eq (5)

where π is a complex gain for transmit chain 270 at the UE, p is a complex gain for receive chain 220 at the Node B, and h jj = p h π is an effective uplink channel from the UE to the Node B.

[0038] As shown in equations (4) and (5), the wireless channel h may be assumed to be reciprocal for the downlink and uplink. However, the effective uplink channel may not be reciprocal with the effective downlink channel. It is desirable to know the responses of the transmit and receive chains and their influence on the accuracy of the reciprocity assumption for the effective downlink and uplink channels. Furthermore, the Node B and/or the UE may be equipped with an antenna array, and each antenna may have its own transmit/receive chains. The transmit/receive chains for different antennas may have different responses, and antenna array calibration may be performed to account for the different responses.

[0039] In general, calibration may be performed to address two kinds of mismatches associated with antenna arrays:

• Mismatches due to physical antenna system/structure - these mismatches include the effects of mutual coupling, tower effects, imperfect knowledge of the antenna locations, amplitude and phase mismatches due to antenna cabling, etc., and

• Mismatches due to hardware elements in the transmit/receive chains for each antenna - these mismatches include analog filters, I and Q imbalance, phase and gain mismatches of low noise amplifier (LNA) in the receive chains and/or power amplifier (PA) in the transmit chains, different non-linearity effects, etc.

[0040] Calibration may be performed so that the channel for one link may be estimated by measuring a reference signal sent on the other link. Calibration may also be performed to address uplink antenna switching, which may be employed to obtain uplink transmit diversity when a UE is equipped with two antennas, two receive chains, but only one transmit chain. Uplink antenna switching may be used for time switched transmit diversity (TSTD) or selection transmit diversity (STD). Uplink signals may be sent (i) alternately via the two antennas with TSTD or (ii) via the better antenna with STD. For STD, the UE may send a sounding reference signal (SRS) alternately via the two antennas to allow the Node B to select the better antenna. A radio frequency (RF)

switch can support TSTD or STD by connecting a PA output to either one of the two antennas at any given moment.

[0041] Beamforming in the TDD system may be supported as follows. UEs operating in a beamformed mode may be configured to send sounding reference signals on the uplink. In symmetric scenarios with reciprocal downlink and uplink, the Node B may derive a precoding matrix to use for beamforming for each UE based on the sounding reference signals received from the UE. Hence, the UEs do not need to send precoding information to the Node B, which may avoid feedback errors. The Node B may send a UE-specific reference signal on the downlink to each UE. The Node B may precode the UE-specific reference signal with the same precoding matrix used for data and may send the precoded reference signal in each resource block used for transmission. A UE may use the precoded reference signal for demodulation and may not need to know the precoding matrix used by the Node B. This may avoid the need to send a precoding matrix indicator (PMI) on the downlink to the UE. [0042] Beamforming may be simplified for symmetric and asymmetric scenarios with reciprocal downlink and uplink. Calibration may be performed to determine a calibration vector that can account for differences in the responses of the transmit and receive chains, so that the downlink channel is reciprocal of the uplink channel. [0043] A calibration procedure may be initiated by a Node B and assisted by a set of UEs. The following description assumes that the transmit and receive chains at the Node B and the UEs have flat responses over a number of consecutive subcarriers per transmit antenna, with the coherence bandwidth being equal to the number of subcarriers assigned to each transmit antenna for sounding. A channel response may thus be obtained based on a reference signal.

[0044] FIG. 3 shows a block diagram of the Node B and N UEs 1 through N for calibration. The Node B has M transmit/receive chains 310a through 310m for M antennas 312a through 312m, respectively. In general, each UE may have one or more antennas. For calibration purposes, each antenna of a given UE may be considered as a separate UE. In FIG. 3, each UE has transmit/receive chains 360 for one antenna 352. [0045] An effective mismatch β t may be defined for each antenna i at the Node B, as follows:

for z = l, ..., M , Eq (6)

A

where T 1 is a complex gain for the transmit chain for antenna i at the Node B, and P 1 is a complex gain for the receive chain for antenna i at the Node B.

[0046] An effective mismatch a } may be defined for UEy, as follows:

a = ^- , for 7 = 1, ..., N , Eq (7)

where π t is a complex gain for the transmit chain for UEy, and G 1 is a complex gain for the receive chain for UEy.

[0047] A downlink channel from Node B antenna i to UEy may be denoted as h ® . An uplink channel from UE j to Node B antenna i may be denoted as h μ u . By reciprocity of a TDD channel, h μ u = h° for all values of i andy .

[0048] The effective mismatches β \ through β^ for the M Node B antennas may be estimated to calibrate the Node B. It may not be necessary to calibrate the UEs. However, the UEs should properly transmit sounding reference signals for calibration and beamforming, as described below.

[0049] An effective downlink channel h°' ejf from Node B antenna i to UEy may be expressed as:

h^ = τ, - hξ - σ] . Eq (8)

UE j may estimate the effective downlink channel based on a cell-specific reference signal sent from each Node B antenna on the downlink.

[0050] An effective uplink channel h μ u>eff from UE j to Node B antenna i may be expressed as:

h p u * = π r h p u - . Eq (9)

The Node B may estimate the effective uplink channel based on a sounding reference signal sent by UEy on the uplink. [0051] A calibration factor c l} for Node B antenna i and UEy may be expressed as:

τ, -hi c = - h ^u f - F f = ' υ π J = * β,- . Eq (IO)

* ■ • " -π ] , --Kh ]l --PP 11 C aC } ,

Equation (10) assumes reciprocity of the wireless channel, so that h^ = h° . [0052] A calibration vector C, may be obtained for UEy, as follows:

C j = [C 1J C 2J ... c M j ] = [β ι /a J P 2 Ia 1 ... βja^ . Eq (I l)

[0053] The Node B may be calibrated up to a scaling constant. A calibration vector C j may then be defined as follows:

C 7 = C 7 -^ = [I β 2 l β λ ... P M IP 1 ] . Eq (12)

A

[0054] As shown in equation (12), elements of the calibration vector C 7 are independent of index j even though they are derived based on measurements for UE j. This means that the calibration vector applied at the Node B does not need to account for mismatches at the UE. The Node B may obtain N calibration vectors C 1 through C N for the N UEs. The Node B may derive a final calibration vector C as follows:

C = f(C v C 2 , ..., C N ) , Eq (13)

where /( ) may be a simple averaging function of the N calibration vectors or a function that combines the N calibration vectors using minimum mean square error (MMSE) or some other techniques. If the channel gain hf } or h fl u is too small, then the calibration may not be accurate due to noise enhancement. An MMSE estimator may be used to better combine N calibration vectors with different noise characteristics. [0055] In one design, calibration may be performed as follows:

1. The Node B decides to perform calibration and selects N UEs with strong channel quality indicators (CQIs) and relatively low Doppler for calibration.

2. The Node B sends messages to the N UEs to enter a calibration mode.

3. Each UE measures the cell-specific reference signal from each Node B antenna to obtain an effective downlink channel estimate for that antenna. The UE may choose the cell-specific reference signal that is closest to the next transmission of the sounding reference signal by the UE, accounting for processing time at the UE.

4. Each UE sends back the effective downlink channel estimate for each Node B antenna using a sufficient number of bits (e.g., 6-bit real/imaginary quantization) and also sends a sounding reference signal at the same time.

5. The Node B measures the sounding reference signal from each UE antenna to obtain an effective uplink channel estimate for the UE antenna and computes the calibration factor c l} for each Node B antenna, as shown in equation (10). The Node B may also obtain c y with MMSE estimation.

6. The Node B determines the calibration vector C 7 for each UE, as shown in equation (12).

7. The Node B computes the calibration vector C for itself based on calibration vectors C for all UEs, as shown in equation (13).

8. The Node B exits the calibration mode when satisfied with the calibration.

[0056] A UE may also perform calibration to obtain a calibration vector for itself. The UE may perform calibration with one Node B at different times and/or with different Node Bs in order to improve the quality of the calibration vector. [0057] A station (e.g., a Node B or a UE) may obtain a calibration vector by performing calibration and may apply a suitable version of the calibration vector on the transmit side or the receive side. With the calibration vector applied, the channel response for one link may be estimated based on a reference signal received via the other link. For example, a Node B may estimate the downlink channel response based on a sounding reference signal received from a UE on the uplink. The Node B may then perform beamforming based on precoding vector(s) derived from the estimated downlink channel response. The calibration vector should simplify channel estimation and should not adversely impact data transmission performance.

[0058] FIG. 4 shows data transmission with beamforming and data reception with and without calibration. For simplicity, FIG. 4 assumes that a transmitter (e.g., a Node B or a UE) has no transmit/receive mismatches and applies identity/no calibration. [0059] The top half of FIG. 4 shows a receiver (e.g., a UE or a Node B) without calibration. The data symbols from the transmitter are precoded by a beamforming matrix V and transmitted via a MIMO channel having a channel matrix H. The received symbols at the receiver may be expressed as:

y = H V s + n , Eq (14)

where s is a vector of data symbols sent by the transmitter, y is a vector of received symbols at the receiver, and n is a noise vector.

[0060] The receiver may perform MIMO detection with a spatial filter matrix W, as follows:

S = W y = WH V S t W n , Eq (15)

where s is a vector of detected symbols and is an estimate of s.

[0061] The spatial filter matrix W may be derived based on MMSE as follows:

W = V^ H^ [ H H^ + ψ r 1 , Eq (16)

where ψ = E [ n n H ] is a noise covariance matrix at the receiver, E[ ] denotes an expectation operation, and " H " denotes a conjugate transpose.

[0062] The bottom half of FIG. 4 shows a receiver with calibration. The received symbols at the receiver may be as shown in equation (14). The receiver may perform MIMO detection with a spatial filter matrix W c , as follows:

s c = W C y = W c C H V s + W C n , Eq (17)

where C is a calibration matrix at the receiver, and s c is an estimate of s. The calibration matrix C is a diagonal matrix, and the diagonal elements of C may be equal to the elements of a calibration vector for the receiver.

[0063] The spatial filter matrix W c may be derived based on MMSE as follows:

W^ V^ H^ H H^ + ψ l ' C 1 . Eq (18)

[0064] As shown in equations (17) and (18), the MMSE spatial filter matrix W c attempts to undo a composite channel H c = C H having a colored noise covariance matrix σ = C ψ C H . The detected symbols from the receiver with calibration are equal to the detected symbols from the receiver without calibration when an MMSE detector is used at the receiver.

[0065] The phases at the received antennas do not affect the performance of a beamformed transmission. However, beamforming should take into account relative transmit powers of different antennas at a UE as well as gain imbalance in the receive chains at the UE.

[0066] FIG. 5 shows a block diagram of a UE 110 with K antennas 552a through 552k, where K may be any value greater than one. K receive chains 560a through 560k are coupled to the K antennas 552a through 552k, respectively. K transmit chains 570a through 570k are also coupled to the K antennas 552a through 552k, respectively. [0067] The UE may perform AGC for each receive chain 560 and may adjust the gain for each receive chain such that the noise variances of all K receive chains are approximately equal. The UE may obtain AGC gains of g \ through g κ for the K receive chains 560a through 560k, respectively. The AGC gains may be different for different antennas and may change periodically. The UE may be able to accurately measure the AGC gain for each antenna based on a received signal strength measurement for that antenna.

[0068] In one design, the UE may determine a receive gain ratio for each antenna k, as follows:

S 1 rk = for k = l, ..., K , Eq (19) Si

where n is a receive gain ratio for antenna k at the UE.

[0069] In one design, the UE may send the receive gain ratios to the Node B, which may take the receive gain ratios into account when performing beamforming. For example, the Node B may determine a composite downlink MIMO channel matrix H D as follows:

H n = RH , Eq (20)

where R is a diagonal matrix containing the K receive gain ratios r \ through r κ along the diagonal. The Node B may perform singular value decomposition of the composite downlink MIMO channel matrix H D (instead of the downlink MIMO channel matrix H) to obtain the precoding matrix V.

[0070] In another design, the UE may apply appropriate gains in the transmit chains when transmitting the sounding reference signals so that the Node B can obtain an estimate of the composite downlink MIMO channel matrix H D instead of the downlink MIMO channel matrix H. The UE may scale the gain of the transmit chain for each antenna k by the receive gain ratio rt for that antenna. For example, if the receive gain ratio for a given antenna is 1.5, then the UE may scale the gain of the transmit chain for that antenna by a factor of 1.5.

[0071] As shown in FIG. 5, the UE may have PA gains of/?i through /?κ for the K transmit chains 570a through 570k, respectively. The UE may have known gain imbalance in the transmit chains and/or the antennas. For example, one transmit chain may have a smaller PA than another transmit chain. As another example, the gains of two antennas may be different, e.g., due to different types of antenna. The UE may determine a transmit gain ratio for each antenna k, as follows:

t k = ξLi£L , fov k = \, ..., K , Eq (21) a x - p x

where a t is an antenna gain for antenna k at the UE,

P k is a PA gain for the transmit chain for antenna k at the UE, and t k is a transmit gain ratio for antenna k at the UE.

The transmit gain ratio tu is typically equal to 1 but may also be different from 1 when there is gain imbalance in the transmit chains and/or the antennas at the UE.

[0072] In one design, the UE may report the known gain imbalance to the Node B, e.g., during a capability discovery phase. The Node B may then take into account the known gain imbalance at the UE when performing calibration and beamforming. For example, the Node B may obtain a composite uplink MIMO channel matrix Hu from the sounding reference signals received from the UE. This matrix Hu may be expressed as:

H υ = H H T , Eq (22)

where T is a diagonal matrix containing the K transmit gain ratios t \ through fe along the diagonal. The Node B may then remove the matrix T to obtain the MIMO channel matrix H.

[0073] In another design, the UE may apply appropriate gains in the transmit chains when transmitting the sounding reference signals so that the Node B can obtain an estimate of the uplink MIMO channel matrix H instead of the composite uplink MIMO channel matrix Hu. The UE may scale the gain of the transmit chain for each antenna k by the inverse of the transmit gain ratio tt for that antenna. For example, if the transmit gain ratio for a given antenna is 2.0, then the UE may scale the gain of the transmit chain for that antenna by a factor of 0.5.

[0074] In general, the Node B and/or the UE may account for AGC gain differences between different receive chains, PA gain differences between different transmit chains, and/or antenna gain differences between different antennas at the UE. Transmission of the sounding reference signals at lower power may degrade channel estimation performance. For a small PA, it may not be possible to transmit at higher power due to backoff requirements. In these cases, the UE may send the receive and/or transmit gain ratios to the Node B instead of accounting for them at the UE. [0075] In one design, beamforming may be performed as follows.

1. The Node B calibrates itself as often as necessary (e.g., in each calibration interval of an hour or more) using the calibration procedure described above to obtain a calibration vector for the Node B.

2. For a given UE, the Node B weighs the gain for each UE antenna by the transmit gain ratio tt for that antenna (if available) to account for known gain imbalance at the UE.

3. The UE applies the receive gain ratios rt when sending sounding reference signals via its antennas for beamforming feedback. Alternatively, the UE may report the receive gain ratios to the Node B, which may account for these ratios.

4. The Node B uses the calibration vector and possibly the receive and/or transmit gain ratios to perform beamforming to the UE.

[0076] The precoding vectors for beamforming may be valid till the next AGC gain change at the UE. The UE may send information indicating gain imbalance in the receive chains, the transmit chains, and/or the antennas at the UE, possibly along with CQI, when the gain imbalance changes.

[0077] FIG. 6 shows a design of a process 600 for performing calibration by a Node B. The Node B may periodically perform calibration in each calibration interval to obtain a calibration vector for itself (block 612). A calibration interval may be any suitable duration, e.g., one hour or more. The Node B may perform beamforming for at least one UE in each calibration interval and may apply the calibration vector obtained for that calibration interval (block 614).

[0078] FIG. 7 shows a design of a process 700 for performing calibration in each calibration interval by the Node B. Process 700 may be used for block 612 in FIG. 7. The Node B may select a set of UEs to perform calibration, e.g., based on CQIs received from the UEs (block 712). The Node B may send messages to the UEs in the selected set to enter a calibration mode (block 714). The Node B may receive a downlink channel estimate from each UE (block 716) and may also receive at least one sounding reference signal from at least one antenna at the UE (block 718). The Node B may derive an uplink channel estimate for each UE based on the at least one sounding reference signal received from that UE (block 720). The Node B may derive at least one initial calibration vector for each UE based on the downlink and uplink channel estimates for that UE (block 722). The Node B may then derive a calibration vector for itself based on initial calibration vectors for all UEs in the selected set (block 724). [0079] For each UE, the downlink channel estimate may comprise at least one downlink channel vector for at least one antenna at the UE. The uplink channel estimate may comprise at least one uplink channel vector for the at least one antenna at the UE. Each downlink channel vector may comprise multiple first gains (e.g., h ® ' eff )

for multiple antennas at the Node B. Each uplink channel vector may comprise multiple second gains (e.g., h"'^ ) for the multiple antennas at the Node B.

[0080] An initial calibration vector C } may be derived for each UE antenna based on the downlink and uplink channel vectors for that UE antenna as follows. Multiple elements (e.g., c y ) of an unnormalized calibration vector C 1 for UE antenna j may be determined based on ratios of the multiple first gains in the downlink channel vector to the multiple second gains in the uplink channel vector for UE antenna j, e.g., as shown in equation (10). The multiple elements of the unnormalized calibration vector may be scaled by the first element to obtain the initial calibration vector C for UE antenna j, e.g., as shown in equation (12). The calibration vector for the Node B may be derived based on a function of the initial calibration vectors for all UEs in the selected set. The function may be an averaging function, an MMSE function, etc.

[0081] FIG. 8 shows a design of an apparatus 800 for performing calibration. Apparatus 800 includes a module 812 to periodically perform calibration in each calibration interval to obtain a calibration vector for a Node B, and a module 814 to perform beamforming for at least one UE in each calibration interval and apply the calibration vector obtained for the calibration interval.

[0082] FIG. 9 shows a design of a process 900 for performing beamforming by a Node B. The Node B may determine a precoding matrix by taking into account gain imbalance for multiple antennas at a UE (block 912). The Node B may perform beamforming for the UE with the precoding matrix (block 914).

[0083] In one scenario, the Node B may determine the precoding matrix by taking into account gain imbalance due to different AGC gains for multiple receive chains for the multiple antennas at the UE. In general, an AGC gain may include any variable gain in a receive chain. In one design, the Node B may receive at least one gain ratio n from the UE, with each gain ratio being determined by an AGC gain gk for an associated antenna and an AGC gain g \ for a reference antenna at the UE. The Node B may determine a composite channel matrix H D based on a channel matrix H for the UE and a gain matrix R formed with the at least one gain ratio. The Node B may then determine the precoding matrix based on the composite channel matrix. In another design, the Node B may receive sounding reference signals from the multiple antennas at the UE.

Each sounding reference signal may be transmitted by the UE from one antenna at a power level determined based on the gain ratio rt for that antenna. [0084] In another scenario, the Node B may determine the precoding matrix by taking into account gain imbalance due to (i) different PA gains for multiple transmit chains for the multiple antennas at the UE and/or (ii) different antenna gains for the multiple antennas. In general, a PA gain may include any variable gain in a transmit chain. In one design, the Node B may receive at least one gain ratio tu from the UE, with each gain ratio being determined by a PA gain pu for an associated antenna and a PA gain p \ for a reference antenna at the UE. The Node B may then determine the precoding matrix based on the at least one gain ratio. In another design, the Node B may receive sounding reference signals from the multiple antennas at the UE. Each sounding reference signal may be transmitted by the UE from one antenna at a power level determined based on the gain ratio tt for that antenna.

[0085] FIG. 10 shows a design of an apparatus 1000 for performing beamforming. Apparatus 1000 includes a module 1012 to determine a precoding matrix at a Node B by taking into account gain imbalance for multiple antennas at a UE, and a module 1014 to perform beamforming for the UE with the precoding matrix.

[0086] FIG. 11 shows a design of a process 1100 for receiving beamformed data by a UE. The UE may determine gain imbalance for multiple antennas at the UE (block 1112). The UE may send signals or information indicative of the gain imbalance for the multiple antennas to a Node B (block 1114). The UE may thereafter receive beamformed signals from the Node B, with the beamformed signals being generated based on a precoding matrix derived by taking into account the gain imbalance for the multiple antennas at the UE (block 1116).

[0087] In one scenario, the UE may determine at least one gain ratio n for the multiple antennas at the UE, with each gain ratio being determined by an AGC gain for an associated antenna and an AGC gain for a reference antenna at the UE. In another scenario, the UE may determine at least one gain ratio tu for the multiple antennas at the UE, with each gain ratio being determined by a PA gain for an associated antenna and a PA gain for the reference antenna at the UE. For both scenarios, in one design, the UE may send the at least one gain ratio to the Node B. In another design, the UE may send sounding reference signals from the multiple antennas at the UE, with each sounding

reference signal being sent from one antenna at a power level determined based on the gain ratio for that antenna.

[0088] FIG. 12 shows a design of an apparatus 1200 for receiving beamformed data. Apparatus 1200 includes a module 1212 to determine gain imbalance for multiple antennas at a UE, a module 1214 to send signals or information indicative of the gain imbalance for the multiple antennas to a Node B, and a module 1216 to receive beamformed signals from the Node B, with the beamformed signals being generated based on a precoding matrix derived by taking into account the gain imbalance for the multiple antennas at the UE.

[0089] The modules in FIGS. 8, 10 and 12 may comprise processors, electronics devices, hardware devices, electronics components, logical circuits, memories, etc., or any combination thereof.

[0090] FIG. 13 shows a block diagram of a design of a Node B 110 and a UE 120, which may be one of the Node Bs and one of the UEs in FIG. 1. Node B 110 is equipped with multiple (T) antennas 1334a through 1334t. UE 120 is equipped with one or more (R) antennas 1352a through 1352r.

[0091] At Node B 110, a transmit processor 1320 may receive data for one or more UEs from a data source 1312, process (e.g., encode and modulate) the data for each UE based on one or more modulation and coding schemes for that UE, and provide data symbols for all UEs. Transmit processor 1320 may also generate control symbols for control information/signaling. Transmit processor 1320 may further generate reference symbols for one or more reference signals, e.g., cell-specific reference signals. A MIMO processor 1330 may perform precoding for the data symbols, the control symbols, and/or the reference symbols and may provide T output symbol streams to T modulators (MOD) 1332a through 1332t. Each modulator 1332 may process its output symbol stream (e.g., for OFDM) to obtain an output sample stream. Each modulator 1332 may further condition (e.g., convert to analog, filter, amplify, and upconvert) its output sample stream and generate a downlink signal. T downlink signals from modulators 1332a through 1332t may be transmitted via antennas 1334a through 1334t, respectively.

[0092] At UE 120, R antennas 1352a through 1352r may receive the T downlink signals from Node B 110, and each antenna 1352 may provide a received signal to an associated demodulator (DEMOD) 1354. Each demodulator 1354 may condition (e.g.,

filter, amplify, downconvert, and digitize) its received signal to obtain samples and may further process the samples (e.g., for OFDM) to obtain received symbols. Each demodulator 1354 may provide received data symbols and received control symbols to a MIMO detector 1360 and may provide received reference symbols to a channel processor 1394. Channel processor 1394 may estimate the downlink channel from Node B 110 to UE 120 based on the received reference symbols and may provide a downlink channel estimate to MIMO detector 1360. MIMO detector 1360 may perform MIMO detection on the received data symbols and the received control symbols based on the downlink channel estimate and provide detected symbols. A receive processor 1370 may process (e.g., demodulate and decode) the detected symbols, provide decoded data to a data sink 1372, and provide decoded control information to a controller/ processor 1390.

[0093] UE 120 may estimate the downlink channel quality and generate CQI and/or other feedback information. The feedback information, data from a data source 1378, and one or more reference signals (e.g., sounding reference signals) may be processed (e.g., encoded and modulated) by a transmit processor 1380, precoded by a MIMO processor 1382, and further processed by modulators 1354a through 1354r to generate R uplink signals, which may be transmitted via antennas 1352a through 1352r. At Node B 110, the R uplink signals from UE 120 may be received by antennas 1334a through 1334t and processed by demodulators 1332a through 1332t. A channel processor 1344 may estimate the uplink channel from UE 120 to Node B 110 and may provide an uplink channel estimate to a MIMO detector 1336. MIMO detector 1336 may perform MIMO detection based on the uplink channel estimate and provide detected symbols. A receive processor 1338 may process the detected symbols, provide decoded data to a data sink 1339, and provide decoded feedback information to a controller/processor 1340. Controller/processor 1340 may control data transmission to UE 120 based on the feedback information.

[0094] Controllers/processors 1340 and 1390 may direct the operation at Node B 110 and UE 120, respectively. Controller/processor 1340 at Node B 110 may perform or direct process 600 in FIG. 6, process 700 in FIG. 7, process 900 in FIG. 9 and/or other processes for the techniques described herein. Controller/processor 1390 at UE 120 may perform or direct process 1100 in FIG. 11 and/or other processes for the techniques described herein. Memories 1342 and 1392 may store data and program

codes for Node B 110 and UE 120, respectively. A scheduler 1346 may select UE 120 and/or other UEs for data transmission on the downlink and/or uplink based on the feedback information received from the UEs. Scheduler 1346 may also allocate resources to the scheduled UEs.

[0095] Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.

[0096] Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

[0097] The various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein may be implemented or performed with a general- purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general- purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.

[0098] The steps of a method or algorithm described in connection with the disclosure herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.

[0099] In one or more exemplary designs, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers.

Combinations of the above should also be included within the scope of computer- readable media.

[00100] The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Thus, the disclosure is not intended to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

[00101] WHAT IS CLAIMED IS: