RELATED APPLICATIONS

[0001]
This application claims the benefit of U.S. Provisional Patent Application No. 60/581,356 filed on Jun. 22, 2004, U.S. Provisional patent Application No. 60/582,298 filed on Jun. 24, 2004, U.S. Provisional Patent Application No. 60/601,178 filed on Aug. 13, 2004, Provisional Patent Application No. 60/514,621 filed on Sep. 30, 2004, Provisional Patent Application No. 60/619,461 filed on Oct. 15, 2004 and Provisional Patent Application No. 60/642,697 filed on Jan. 10, 2005, all of which are hereby incorporated by reference in their entirety.
FIELD OF THE INVENTION

[0002]
The invention relates to MIMO (multiple input, multiple output) systems and methods.
BACKGROUND OF THE INVENTION

[0003]
In MIMO (multiple input multiple output) OFDM (orthogonal frequency division multiplexing) systems, there are multiple transmit antennas and multiple receive antennas and a plurality of subcarriers that are available for transmission between the transmit antennas and the receive antennas for either one or multiple users. New advances in MIMO OFDM systems are taught in Applicant's copending application <attorney docket 714931320> entitled “Pilot Design For OFDM Systems With Four transmit Antennas” filed Mar. 15, 2005, and in Applicant's copending application <attorney docket 714931330) entitled “Wireless Communication Methods, Systems, And Signal Structures” filed Apr. 4, 2005, both hereby incorporated by reference in their entirety. With open loop implementations, the transmitter transmits on the multiple transmitter antennas and subcarriers without the benefit of channel information fed back from the receivers.

[0004]
Efforts have been made to facilitate wireless closedloop MIMO communications including broadband closedloop MIMO, which might for example be based on OFDM modulation schemes, and narrowband closedloop MIMO. Broadband closedloop MIMO includes many subbands. Each of these subbands requires MTMO channel feedback for a closedloop implementation. As a result the feedback resources required for broadband closedloop MIMO can become quite large. Narrowband closedloop MIMO, by comparison, includes one or a few subbands and requires a relatively smaller amount of feedback resources. Broadband and narrowband MIMO, therefore, have different applications.
SUMMARY OF THE INVENTION

[0005]
According to one broad aspect, the invention provides a MIMO system comprising: a transmitter having multiple transmit antennas; at least one receiver, each receiver having at least one receive antenna; each receiver being adapted to transmit at least one type of feedback information selected from a group consisting of: information for use in performing beamforming; antenna selection/grouping information.

[0006]
In some embodiments, a transmission format to each receiver is selected from a group of transmission formats consisting of: spatial multiplexing; vector weighted spatial multiplexing; matrix weighted spatial multiplexing; Kstream spatial multiplexing employing more than K transmit antennas; single stream STTD; single stream STTD with proportional weighting and antenna selection; multistream STTD; multistream STUD with layer weighting; multistream STTD with a combination of layer weighting and proportional weighting; and hybrid beamforming and spatial multiplexing.

[0007]
In some embodiments, a defined subset of available formats is made available for a given receiver, and wherein the given receiver feeds back a selection of one of the defined subset of available formats.

[0008]
In some embodiments, each receiver performs respective channel measurements and feeds back information for use in performing beamforming based on the respective channel measurements.

[0009]
In some embodiments, the information for use in performing beamforming is selected from a group consisting of: a) elements of a measured channel matrix; b) elements of a V matrix of a SVD decomposed channel matrix; c) parameters of a Givens decomposition of a V matrix of a SVD decomposed channel matrix; d) parameters of a truncated Givens decomposition of a V matrix of a SVD decomposed channel matrix, where one or more eigenvectors are discarded; e) differentially encoded elements of a measured channel matrix; f) differentially encoded elements of a V matrix of a SVD decomposed channel matrix; g) differentially encoded parameters of a Givens decomposition or truncated Givens decomposition of a V matrix of a SVD decomposed channel matrix; h) Householder decomposition; i) full scalar quantization of any of the information types of a) through h); j) partial scalar quantization of any of the information types a) through g); k) scalar quantization of any one of the information types a) through h) where varying resolution is used to quantize parameters; l) vector quantization of any of the information types of a) through h); m) a combination of scalar quantization and differential quantization for any of the information types a) through h); n) using a Delta Sigma quantizer for any of the information types a) through h); o) binary beamforming weights; p) a differential index into a set of vector quantizations; and q) predefined codebook.

[0010]
In some embodiments beamforming feedback is performed by each receiver as a function of receiver specific criteria.

[0011]
In some embodiments, the receiver specific criteria is selected from a group consisting of: Max SNR; b) Max Shannon capacity; and c) True receiver operational process.

[0012]
In some embodiments, antenna selection/grouping information is at least one information type selected from a group consisting of: a) selection between SM (spatial multiplexing) and STTD (space time transmit diversity) transmission format; b) selection of particular antennas for SM transmission; c) selection and grouping of particular antennas for STTD transmission; and d) eigenmode selection information.

[0013]
In some embodiments, the system further comprises the receiver determining the antenna selection/grouping information by performing a step selected from a group of steps consisting of: performing SVD decomposition and discarding weak eigenmodes; selecting antennas using determinants of subMIMO channel matrices.

[0014]
In some embodiments, feed back and beamforming and/or antenna selection/grouping is performed for subcarriers of a multicarrier system to a resolution selected from a group consisting of: a) for every subcarrier individually; b) for groups of consecutive subcarriers; c) for an entire set of subcarriers; d) for sets of groups of subcarriers.

[0015]
In some embodiments, transmission matrices and feedback are in accordance with one of FIGS. 11 to 14.

[0016]
In some embodiments, the transmitter transmits pilots on each transmit antenna for use in performing channel estimation.

[0017]
In some embodiments, at least some of the pilots are punctured pilots.

[0018]
In some embodiments, at least some of the pilots comprise uncoded pilots for use by multiple receivers.

[0019]
In some embodiments, the pilots comprise user specific precoded pilots for use by particular receivers receivers.

[0020]
In some embodiments, the pilots comprise user specific precoded pilots for use by particular receivers receivers and uncoded pilots for use by multiple receivers.

[0021]
In some embodiments, the pilot patterns are as shown in any one of FIGS. 1723 with generalizations as described.

[0022]
In some embodiments, the pilot patterns are as shown in one of FIGS. 2631 with generalizations as described.

[0023]
In some embodiments, feedback information is transmitted using a feedback channel having the structure of one of FIGS. 46 to 48 with generalizations as described.

[0024]
In some embodiments, at least one receiver has a plurality of receive antennas.

[0025]
In some embodiments, the at least one receiver comprises a plurality of receivers.

[0026]
In some embodiments, subchannels are defined using at least one of; AMC subchannels, where respective adaptive modulation and coding is defined for each AMC subchannel; PUSC subchannels.

[0027]
In another embodiment, a receiver is provided that is adapted to implement receiver functionality as summarized above.

[0028]
In another embodiment, a transmitter is provided that is adapted to implement transmitter functionality as summarized above.

[0029]
Other aspects and features of the present invention will become apparent to those ordinarily skilled in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures.
BRIEF DESCRIPTION OF THE DRAWINGS

[0030]
Preferred embodiments of the invention will now be described with reference to the attached drawings in which:

[0031]
FIG. 1 is a schematic diagram representation of a cellular communication system according to one embodiment of the present invention;

[0032]
FIG. 2 is a block diagram representation of a base station according to one embodiment of the present invention;

[0033]
FIG. 3 is a block diagram representation of a mobile terminal according to one embodiment of the present invention;

[0034]
FIG. 4 is a logical breakdown of an OFDM transmitter architecture according to one embodiment of the present invention;

[0035]
FIG. 5 is a logical breakdown of an OFDM receiver architecture according to one embodiment of the present invention;

[0036]
FIG. 6 is a first example schematic diagram for beamforming spatial multiplexing (SM) transmission using matrix or vector weighting according to an embodiment of the invention;

[0037]
FIG. 7 is a second example schematic diagram for beamforming SM transmission with matrix weighting according to an embodiment of the invention;

[0038]
FIG. 8 is a schematic diagram for use in describing antenna/subchannel selection criteria;

[0039]
FIG. 9 is a graphical comparison of fixed DSTTD (doublespacetime time division) and antenna grouping DSTTD;

[0040]
FIG. 10 is a schematic diagram of subchannel allocation for a 4antenna transmitter and two 2antenna receivers according to an embodiment of the invention;

[0041]
FIG. 11 is a closed loop STC/MIMO 3transmit antenna grouping arrangement in accordance with an embodiment of the invention;

[0042]
FIG. 12 is a closed loop STC/MIMO 3transmit antenna selection arrangement in accordance with an embodiment of the invention;

[0043]
FIG. 13 is a closed loop STC/MIMO 4transmit antenna arrangement in accordance with an embodiment of the invention;

[0044]
FIG. 14 is a closed loop STC/MIMO 4transmit antenna arrangement in accordance with an embodiment of the invention;

[0045]
FIGS. 15 and 16 show binary unitary beamforming matrices in accordance with embodiments of the invention;

[0046]
FIG. 17 is pilot mapping for a pilot allocation for 4antenna BS (base station) for the optional FUSC (full utilization subchannel) and Optional AMC (adaptive modulation and coding) zones in 802.16d in accordance with an embodiment of the invention;

[0047]
FIGS. 18 and 19 are pilot mappings for a pilot allocation for four transmit antennas in which there is no puncturing required in accordance with an embodiment of the invention;

[0048]
FIGS. 20 and 21 are pilot mappings for a pilot allocation for eight transmit antennas in accordance with an embodiments of the invention;

[0049]
FIGS. 22 and 23 are pilot mappings for a pilot allocation for twelve transmit antennas in accordancewith an embodiments of the invention;

[0050]
FIG. 24 is a schematic diagram showing an example of precoding of MIMO pilots in accordance with an embodiment of the invention;

[0051]
FIG. 25 is a schematic diagram showing an example of precoding of MIMO pilots in accordance with an embodiment of the invention suitable for larger antenna arrays;

[0052]
FIG. 26 is a pilot mapping showing a precoded pilot design for a 2antenna basestation (BS) for optional AMC in accordance with an embodiment of the invention;

[0053]
FIG. 27 is a second precoded pilot design for a 2antenna basestation (BS) for optional AMC in accordance with an embodiment of the invention;

[0054]
FIG. 28 is a pilot mapping showing a precoded pilot design for a 3antenna basestation (BS) for optional AMC in accordance with an embodiment of the invention;

[0055]
FIG. 29 is a pilot mapping showing a pilot design for a 4antenna basestation (BS) for optional AMC in accordance with an embodiment of the invention;

[0056]
FIG. 30 is a pilot mapping showing a precoded pilot design for a 2antenna BS for PUSC (partial utilization subchannel) zone in accordance with an embodiment of the invention;

[0057]
FIG. 31 is a pilot mapping showing a precoded pilot design for a 4antenna ES for PUSC zone in accordance with an embodiment of the invention;

[0058]
FIG. 32 is a schematic diagram of a set of closed loop STC/MIMO arrangements with beamformer structures in accordance with an embodiment of the invention;

[0059]
FIGS. 33, 34, 35 and 36 present a comparison of SVD (singular value decomposition) to antenna grouping;

[0060]
FIG. 37 is a block diagram of a system employing a direct differential encoding in accordance with an embodiment of the invention in which MIMO channel and CQI (channel quality indication) are separately fed back;

[0061]
FIG. 38 is a block diagram of a system employing a direct differential encoding in accordance with another embodiment of the invention in which MIMO channel and CQI are jointly fed back;

[0062]
FIG. 39 is a block diagram of a system employing a direct differential encoding in accordance with an embodiment of the invention featuring 1 bit DPCM;

[0063]
FIG. 40 is a block diagram of a system employing a direct differential encoding in accordance with an embodiment of the invention and using a 1 bit AZ modulator;

[0064]
FIG. 41 is a block diagram of a system employing a direct differential encoding in accordance with an embodiment of the invention for multiple users;

[0065]
FIG. 42 contains a table of various direct differential encoding feedback in accordance with embodiments of the invention;

[0066]
FIG. 43 is a block diagram of a system employing an SVD based Givens transform feedback in accordance with an embodiment of the invention;

[0067]
FIG. 44 is another example of an SVD based Givens transform in accordance with an embodiment of the invention in which a further spherical code based quantization is performed;

[0068]
FIG. 45 is a block diagram of a system employing a receiver based Givens transform in accordance with an embodiment of the invention;

[0069]
FIG. 46 is an example of spacetime coding for use on a CQICH (channel quality indication channel) in accordance with an embodiment of the invention suitable for a single input single output application;

[0070]
FIG. 47 is an example of spacetime coding for CQICH in accordance with an embodiment of the invention suitable for supporting STUD;

[0071]
FIG. 48 is an example of spacetime coding for CQICH in accordance with an embodiment of the invention suitable for SM (spatial multiplexing);

[0072]
FIGS. 49 and 50 are a set of tables for concatenation of STC (spacetime coding)/MIMO with a beamformer in accordance with an embodiment of the invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0000]
General Background and Example System Overview The following provides a glossary of some of the terms used in this application:

[0000]
AMC—Adaptive Coding and Modulation

[0000]
BS or BTS—Base Station

[0000]
CL_MIMO—Closed Loop MIMO

[0000]
CQI—Channel Quality Indicator

[0000]
CQICF—CQI channel

[0000]
DFT—Discrete Fourier Transform

[0000]
FB—Feedback

[0000]
FDD—Frequency Duplex

[0000]
FFT—Fast Fourier Transform

[0000]
MIMO—Multiple Input Multiple Output

[0000]
MLD—Maximum Likelihood Detector

[0000]
MSE—Minimum square error

[0000]
MSS—Mobile Subscriber Station

[0000]
PUSC—Partially Utilized SubChannel

[0000]
QoS—Quality of service

[0000]
SISO—Single Input Single Output

[0000]
SVD—Singular Value Decomposition

[0000]
STTD—Space Time Transmit Diversity

[0000]
SM—Spatial Multiplexing

[0000]
SQ—Scalar Quantize

[0000]
TDD—Time Duplex

[0000]
VQ—Vector Quantize

[0073]
For purposes of providing context for the embodiments described below, an example OFDM system will now be described with reference to FIGS. 1 to 5. FIG. 1 shows a base station controller (BSC) 10 which controls wireless communications within multiple cells 12, which cells are served by corresponding base stations (BS) 14. In general, each base station 14 facilitates communications using OFDM with mobile terminals 16, which are within the cell 12 associated with the corresponding base station 14. The movement of the mobile terminals 16 in relation to the base stations 14 results in significant fluctuation in channel conditions. As illustrated, the base stations 14 and mobile terminals 16 may include multiple antennas to provide spatial diversity for communications.

[0074]
An example of a high level overview of the mobile terminals 16 and base stations 14 that may be used with embodiments of the present invention is provided prior to delving into the structural and functional details of the preferred embodiments. Wish reference to FIG. 2, a base station 14 configured according to one embodiment of the present invention is illustrated. The base station 14 generally includes a control system 20, a baseband processor 22, transmit circuitry 24, receive circuitry 26, multiple antennas 28, and a network interface 30. The receive circuitry 26 receives radio frequency signals bearing information from one or more remote transmitters provided by mobile terminals 16 (illustrated in FIG. 3). Preferably, a low noise amplifier and a filter (not shown) cooperate to amplify and remove broadband interference from the signal for processing. Downconversion and digitization circuitry (not shown) will then downconvert the filtered, received signal to an intermediate or baseband frequency signal, which is then digitized into one or more digital streams.

[0075]
The baseband processor 22 processes the digitized received signal to extract the information or data bits conveyed in the received signal. This processing typically comprises demodulation, decoding, and error correction operations. As such, the baseband processor 22 is generally implemented in one or more digital signal processors (DSPs) or applicationspecific integrated circuits (ASICs). The received information is then sent across a wireless network via the network interface 30 or transmitted to another mobile terminal 16 serviced by the base station 14.

[0076]
On the transmit side, the baseband processor 22 receives digitized data, which may represent voice, data, or control information, from the network interface 30 under the control of control system 20, and encodes the data for transmission. The encoded data is output to the transmit circuitry 24, where it is modulated by a carrier signal having a desired transmit frequency or frequencies. A power amplifier (not shown) will amplify the modulated carrier signal to a level appropriate for transmission, and deliver the modulated carrier signal to the antennas 28 through a matching network (not shown). Modulation and processing details are described in greater detail below.

[0077]
With reference to FIG. 3, a mobile terminal 16 configured according to one embodiment of the present invention is illustrated. Similar to the base station 14, the mobile terminal 16 will include a control system 32, a baseband processor 34, transmit circuitry 36, receive circuitry 38, multiple antennas 40, and user interface circuitry 42. The receive circuitry 38 receives radio frequency signals bearing information from one or more base stations 14. Preferably, a low noise amplifier and a filter (not shown) cooperate to amplify and remove broadband interference from the signal for processing. Downconversion and digitization circuitry (not shown) will then downconvert the filtered, received signal to an intermediate or baseband frequency signal, which is then digitized into one or more digital streams.

[0078]
The baseband processor 34 processes the digitized received signal to extract the information or data bits conveyed in the received signal. This processing typically comprises demodulation, decoding, and error correction operations, as will be discussed on greater detail below. The baseband processor 34 is generally implemented in one or more digital signal processors (DSPs) and application specific integrated circuits (ASICs).

[0079]
For transmissions the baseband processor 34 receives digitized data, which may represent voice, data, or control information, from the control system 32, which it encodes for transmission. The encoded data is output to the transmit circuitry 36, where it is used by a modulator to modulate a carrier signal that is at a desired transmit frequency or frequencies. A power amplifier (not shown) will amplify the modulated carrier signal to a level appropriate for transmission, and deliver the modulated carrier signal to the antennas 40 through a matching network (not shown). Various modulation and processing techniques available to those skilled in the art are applicable to the present invention.

[0080]
In OFDM modulation, the transmission band is divided into multiple, orthogonal carrier waves. Each carrier wave is modulated according to the digital data to be transmitted. Because OFDM divides the transmission band into multiple carriers, the bandwidth per carrier decreases and the modulation time per carrier increases. Since the multiple carriers are transmitted in parallel, the transmission rate for the digital data, or symbols, on any given carrier is lower than when a single carrier is used.

[0081]
OFDM modulation typically employs the performance of an Inverse Fast Fourier Transform (IFFT) on the information to be transmitted. For demodulations a Fast Fourier Transform (FFlT) is typically performed on the received signal to recover the transmitted information. In practice, the IFFT and FFT are provided by digital signal processing carrying out an Inverse Discrete Fourier Transform (IDFT) and Discrete Fourier Transform (DFT), respectively. Accordingly, the characterizing feature of OFDM modulation is that orthogonal carrier wave are generated for multiple bands within a transmission channel. The modulated signals are digital signals having a relatively low transmission rate and capable of staying within their respective bands. The individual carrier waves are not modulated directly by the digital signals. Instead, all carrier waves are modulated at once by IFFT processing.

[0082]
In the preferred embodiment, OFDM is used for at least the downlink transmission from the base stations 14 to the mobile terminals 16. Each base station 14 is equipped with N transmit antennas 28, and each mobile terminal 16 is equipped with M receive antennas 40. Notably, the respective antennas can be used for reception and transmission using appropriate duplexers or switches.

[0083]
With reference to FIG. 4, a logical OFDM transmission architecture is provided according to one embodiment. Initially, the base station controller 10 will send data to be transmitted to various mobile terminals 16 to the base station 14. The base station 14 may use the CQIs associated with the mobile terminals to schedule the data for transmission as well as select appropriate coding and modulation for transmitting the scheduled data. The CQIs may be directly from the mobile terminals 16 or determined at the base station 14 based on information provided by the mobile terminals 16. In either case, the CQI for each mobile terminal 16 is a function of the degree to which the channel amplitude (or response) varies across the OFDM frequency band.

[0084]
The scheduled data 44, which is a stream of bits, is scrambled in a manner reducing the peaktoaverage power ratio associated with the data using data scrambling logic 46. A cyclic redundancy check (CPC) for the scrambled data is determined and appended to the scrambled data using CAC adding logic 48. Next, channel coding is performed using channel encoder logic 50 to effectively add redundancy to the data to facilitate recovery and error correction at the mobile terminal 16. The channel coding for a particular mobile terminal 16 may be based on the CQI. The channel encoder logic 50 uses known Turbo encoding techniques in one embodiment. The encoded data is then processed by rate matching logic 52 to compensate for the data expansion associated with encoding.

[0085]
Bit interleaver logic 54 systematically reorders the bits in the encoded data to minimize the loss of consecutive data bits. The resultant data bits are systematically mapped into corresponding symbols depending on the chosen baseband modulation by mapping logic 56. Preferably, Quadrature Amplitude Modulation (QAM) or Quadrature Phase Shift Key (QPSK) modulation is used. The degree of modulation is preferably chosen based on the CQI for the particular mobile terminal. The symbols may be systematically reordered to further bolster the immunity of the transmitted signal to periodic data loss caused by frequency selective fading using symbol interleaver logic 58.

[0086]
At this point, groups of bits have been mapped into symbols representing locations in an amplitude and phase constellation. Then spatial diversity is desired, blocks of symbols are then processed by spacetime block code (STC) encoder logic 60, which modifies the symbols in a fashion making the transmitted signals more resistant to interference and more readily decoded at a mobile terminal 16. The STC encoder logic 60 will process the incoming symbols and provide N outputs corresponding to the number of transmit antennas 28 for the base station 14. The control system 20 and/or baseband processor 22 will provide a mapping control signal to control STC encoding. At this point, assume the symbols for the N outputs are representative of the data to be transmitted and capable of being recovered by the mobile terminal 16. See A. F. Naguib, N. Seshadri, and A. R. Calderbank, “Applications of spacetime codes and interference suppression for high capacity and high data rate wireless systems,” ThirtySecond Asilomar Conference on Signals, Systems & Computers, Volume 2, pp. 18031810, 1998, which is incorporated herein by reference in its entirety.

[0087]
For the present example, assume the base station 14 has two antennas 2 a (N=2) and the STC encoder logic 60 provides two output streams of symbols. Accordingly, each of the symbol streams output by the STC encoder logic 60 is sent to a corresponding IFFT processor 62, illustrated separately for ease of understanding. Those skilled in the art will recognize that one or more processors may be used to provide such digital signal processing, alone or in combination with other processing described herein. The IFFT processors 62 will preferably operate on the respective symbols to provide aninverse Fourier Transform. The output of the IFFT processors 62 provides symbols in the time domain. The time domain symbols are grouped into frames, which are associated with a prefix by like insertion logic 64. Each of the resultant signals is upconverted in the digital domain to an intermediate frequency and converted to an analog signal via the corresponding digital upconversion (DUC) and digitaltoanalog (D/A) conversion circuitry 66. The resultant (analog) signals are then simultaneously modulated at the desired RF frequency, amplified, and transmitted via the RF circuitry 68 and antennas 28. Notably, pilot signals known by the intended mobile terminal 11 are scattered among the subcarriers. The mobile terminal 16, which is discussed in detail below, will use the pilot signals for channel estimation.

[0088]
Reference is now made to FIG. 5 to illustrate reception of the transmitted signals by a mobile terminal 16. Upon arrival of the transmitted signals at each of the antennas 40 of the mobile terminal 16, the respective signals are demodulated and amplified by corresponding RF circuitry 70. For the sake of conciseness and clarity, only one of the two receive paths is described and illustrated in detail. Analogtodigital (A/D) converter and downconversion circuitry 72 digitizes and downconverts the analog signal for digital processing. The resultant digitized signal may be used by automatic gain control circuitry (AGC) 74 to control the gain of the amplifiers in the RF circuitry 70 based on the received signal level.

[0089]
Initially, the digitized signal is provided to synchronization logic 76, which includes coarse synchronization logic 78, which buffers several OFDM symbols and calculates an autocorrelation between the two successive OFDM symbols. A resultant time index corresponding to the maximum of the correlation result determines a fine synchronization search window, which is used by fine synchronization logic 80 to determine a precise framing starting position based on the headers. The output of the fine synchronization logic 80 facilitates frame acquisition by frame alignment logic 84. Proper framing alignment is important so that subsequent FFT processing provides an accurate conversion from the time to the frequency domain. The fine synchronization algorithm is based on the correlation between the received pilot signals carried by the headers and a local copy of the known pilot data. Once frame alignment acquisition occurs, the prefix of the OFDM symbol is removed with prefix removal logic 86 and resultant samples are sent to frequency offset correction logic 88, which compensates for the system frequency offset caused by the unmatched local oscillators in the transmitter and the receiver. Preferably, the synchronization logic 76 includes frequency offset and clock estimation logic 82, which is based on the headers to help estimate such effects on the transmitted signal and provide those estimations to the correction logic 88 to properly process OFDM symbols.

[0090]
At this point, the OFDM symbols in the time domain are ready for conversion to the frequency domain using FFT processing logic 90. The results are frequency domain symbols, which are sent to processing logic 92. The processing logic 92 extracts the scattered pilot signal using scattered pilot extraction logic 94, determines a channel estimate based on the extracted pilot signal using channel estimation logic 96, and provides channel responses for all subcarriers using channel reconstruction logic 98. In order to determine a channel response for each of the subcarriers, the pilot signal is multiple pilot symbols that are scattered among the data symbols throughout the OFDM subcarriers in a known pattern in both time and frequency. Continuing with FIG. 5, the processing logic compares the received pilot symbols with the pilot symbols that are expected in certain subcarriers at certain times to determine a channel response for the subcarriers in which pilot symbols were transmitted. The results are interpolated to estimate a channel response for most, if not all, of the remaining subcarriers for which pilot symbols were not provided. The actual and interpolated channel responses are used to estimate an overall channel response, which includes the channel responses for most, if not all, of the subcarriers in the OFDM channel.

[0091]
The frequency domain symbols and channel reconstruction information, which are derived from the channel responses for each receive path are provided to an STC decoder 100, which provides STC decoding on both received paths to recover the transmitted symbols. The channel reconstruction information provides equalization information to the STC decoder 100 sufficient to remove the effects of the transmission channel when processing the respective frequency domain symbols

[0092]
The recovered symbols are placed back in order using symbol deinterleaver logic 102, which corresponds to the symbol interleaver logic 58 of the transmitter. The deinterleaved symbols are then demodulated or demapped to a corresponding bitstream using demapping logic 104. The bits are then deinterleaved using bit deinterleaver logic 106, which corresponds to the bit interleaver logic 54 of the transmitter architecture. The deinterleaved bits are then processed by rate dematching logic 108 and presented to channel decoder logic 10 to recover the initially scrambled data and the CRC checksum. Accordingly, CRC logic 112 removes the CRC checksum, checks the scrambled data in traditional fashion, and provides it to the descrambling logic 114 for descrambling using the known base station descrambling code to recover the originally transmitted data 116.

[0093]
In parallel to recovering the data 116, a CQI, or at least information sufficient to create a CQI at the base station 14, is determined and transmitted to the base station 14. As noted above, the CQI in a preferred embodiment is a function of the carriertointerference ratio (CR), as well as the degree to which the channel response varies across the various subcarriers in the OFDM frequency band. For this embodiment, the channel gain for each subcarrier in the OFDM frequency band being used to transmit information are compared relative to one another to determine the degree to which the channel gain varies across the OFDM frequency band. Although numerous techniques are available to measure the degree of variation, one technique is to calculate the standard deviation of the channel gain for each subcarrier throughout the OFDM frequency band being used to transmit data.

[0094]
It is to be understood that the FIGS. 1 through 5 are for the purpose of providing an example system within which the closed loop MIMO embodiments described below can be applied. More generally, they can be applied in any system with multiple transmit antennas and multiple receive antennas, the particular number of transmit antennas and receive antennas being an implementation specific decision. Most of the embodiments are applicable to wideband multicarrier systems such as OFDM. However, they may also be applied to narrow band closed loop MIMO and even to single carrier closed loop MIMO. It is clear from the description that follows which embodiments would be applicable to a single carrier versus a multicarrier context exclusively.

[0095]
The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the invention and illustrate the best mode of practicing the invention. Upon reading the following description in light of the accompanying drawing figures, those skilled in the art will understand the concepts of the invention and will recognize applications of these concepts not particularly addressed herein. It should be understood that these concepts and applications fall within the scope of the disclosure and the accompanying claims. While the embodiments can be applied in a system such as exemplified in FIGS. 1 to 5 described above, embodiments are in no way limited to such application,

[0000]
Transmission Formats for Closed Loop MIMO

[0096]
Various Transmission formats are provided for closed loop MIMO airinterface designs. MIMO transmission formats and signalling apparatus are generalized to allow a variety MIMO schemes to operate using the same airinterface design. According to one aspect of the invention, basic transmission formats include: (1) spatial multiplexing (SM) and (2) spacetime transmit diversity (STTD), with vector or matrix weighted full MIMO or subMIMO transmission based on various transmit antennas configurations. These formats can be used in single or multicarrier configurations. The schemes can also be generalized to cover multiple base station transmission.

[0097]
Some embodiments feature a receiver selecting between various available transmit formats. The particular formats to include in a given system are implementation specific.

[0000]
Spatial Multiplexing (BLAST)

[0098]
BLAST is also called spatial multiplexing (SM). This transmission format allows maximum parallel transmission of data streams and can achieve a theoretical capacity limit.

[0099]
For an open loop M×N MIMO SM transmission (M transmit antennas and N receive antennas), basic transmission matrices are presented below in Table 1 for up to four transmit antennas. It is readily apparent how similar transmission matrices can be constructed for numbers of transmit antennas larger than four.
TABLE 1 


Basic SM matrices 
 2transmit  3transmit  4transmit 
 matrixA  matrixB  matrixC 
 Time k  Time k  Time k 
 
    
 Tx_{1}  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\\ {s}_{4}\end{array}\right]\hspace{1em}$ 
 
 Tx_{2} 
 Tx_{3} 
 Tx_{4} 
 

[0100]
For M transmit antenna SM, there can be N receiver antennas with N≧M. Where N<M for a given receiver, antenna selection can be performed to identify a subset of the M transmit antennas for use in BLAST transmission to the receiver. Mechanisms for performing antenna selection are described below.

[0000]
Vector Weighted Closed Loop SM Transmission

[0101]
For M×N MIMO vector weighted SM transmission according to an embodiment of the invention, the transmission matrices are presented below in Table 2 for up to four transmit antennas. It is readily apparent how vector weighted SM matrices can be extended to handle more than four transmit antennas. With vector weighted closed loop transmission, each symbol is transmitted on a single transmit antenna and a single weight is applied to each such symbol. Other users can then be supported using the remaining antenna(s).
TABLE 2 


Vector weighted SM matrices 
 2transmit  3transmit  4transmit 
 matrixA  matrixB  matrixC 
 Time k  Time k  Time k 
 
    
 Tx_{1}  $\left[\begin{array}{c}{w}_{1}{s}_{1}\\ {w}_{2}{s}_{2}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{w}_{1}{s}_{1}\\ {w}_{2}{s}_{2}\\ {w}_{3}{s}_{3}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{w}_{1}{s}_{1}\\ {w}_{2}{s}_{2}\\ {w}_{3}{s}_{3}\\ {w}_{4}{s}_{4}\end{array}\right]\hspace{1em}$ 
 
 Tx_{2} 
 Tx_{3} 
 Tx_{4} 
 

[0102]
Vector weighted SM allows, for example, per antenna power allocation and balancing, SINR optimization from the receiver, and joint transmitreceive closed loop optimization as a Weiner solution. For M transmit antenna vector weighted SM, there can be N receiver antennas with N≧M, Where N<M for a given receiver, antenna selection can be performed to identify a subset of the M transmit antennas for use in BLAST transmission to the receiver. Mechanisms for performing antenna selection are described below. Other users can then be supported using the remaining antenna(s)

[0000]
Matrix Weighted Closed Loop SM Transmission

[0103]
M×N MIMO matrix weighted SM transmission according to an embodiment of the invention has associated transmission matrices as shown in Table 3, where 2, 3 and 4 transmit antenna matrices are shown. As in the previous examples, it is readily apparent how matrix weighted SM transmission matrices can be extended to handle more than four transmit antennas. With matrix weighted spatial multiplexing, each symbol is represented on multiple transmit antennas with a respective weight. However, depending upon the weight selected, a given symbol may not necessarily be represented on all transmit antennas. Different examples of this are presented below.
TABLE 3 


Matrix weighted SM matrices 
 2transmit  3transmit  4transmit matrix 
 matrixA  matrixB  C 
 Time k  Time k  Time k 
 
   
Tx_{1}  $\left[\begin{array}{c}{w}_{1}{s}_{1}+{w}_{2}{s}_{2}\\ {w}_{3}{s}_{1}+{w}_{4}{s}_{2}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{w}_{1}{s}_{1}+{w}_{2}{s}_{2}+{w}_{3}{s}_{3}\\ {w}_{4}{s}_{1}+{w}_{5}{s}_{2}+{w}_{6}{s}_{3}\\ {w}_{7}{s}_{1}+{w}_{8}{s}_{2}+{w}_{9}{s}_{3}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{w}_{1}{s}_{1}+{w}_{2}{s}_{2}+{w}_{3}{s}_{3}+{w}_{4}{s}_{4}\\ {w}_{5}{s}_{1}+{w}_{6}{s}_{2}+{w}_{7}{s}_{3}+{w}_{8}{s}_{4}\\ {w}_{9}{s}_{1}+{w}_{10}{s}_{2}+{w}_{11}{s}_{3}+{w}_{12}{s}_{4}\\ {w}_{13}{s}_{1}+{w}_{14}{s}_{2}+{w}_{15}{s}_{3}+{w}_{16}{s}_{4}\end{array}\right]\hspace{1em}$ 
Tx_{2} 
Tx_{3} 
Tx_{4} 


[0104]
The matrix weighted M×N SM transmission can be applied to a single user reception application where N≧M or to the multiuser concurrent transmission cases, such as 2×2×1, 4×4×1, 4×2×2, for example. In the above examples, 2×2×1 for example, means two transmit antennas, two users, and each user having one receive antenna. Where N<M for a given receiver, antenna selection can be performed to identify a subset of the M transmit antennas for use in BLAST transmission to the receiver. Mechanisms for performing antenna selection are described below. Other users can then be supported using the remaining antenna(s).

[0105]
Tables 4 to 6 and
FIGS. 6 and 7 below provide illustrative examples of single and multiuser configurations of vector and matrix weighted SM beamformers. Referring first to Table 4, this is a set of example configurations for the two transmit antenna case, i.e., using the 2transmit matrixA of Table 3 describe above. Two different transmissions formats are shown with format1 shown in the first row and format2 shown in the second row. With format1 a single user is assigned to the entire stream mapping. With format2, a first user is assigned to symbol s
_{1 }in the stream mapping and a second user is assigned to a symbol
52 in the stream mapping. Thus, either one user is given both symbols of each pair, or two users are each given a single symbol in each pair. The transmit beamforming that is performed is the same in both cases, however, the weights/feedback information will be different for one user as opposed to two users. The three right hand columns in Table 4 show various options for feeding back channel information. These will be expanded upon in much more detail below. For this example and the other examples below, the feedback options shown consist of feeding back the channel matrix or a portion thereof for a given user, with the form of the channel matrix or portion thereof being shown in the table, or feeding back unitary matrix information, vector information that may be quantized. The symbol “x” simply indicates that this option is available for each of the formats. With the example of Table 4, for format1 the entire channel matrix can be fed back from the single receiver to the transmitter. Format2, a first user would only transmit back a portion of the channel matrix, namely h
_{11}, h
_{12}. The other user would similarly transmit a portion of the channel matrix back, namely h
_{21}, h
_{22}. In the table, the values w
_{1}, w
_{2}, w
_{3 }and w
_{4 }are the weights that are applied in transmit beamforming. These weights are determined as a function of the feedback information received. These weights are described in much more detail below. Note that in a typical implementation, only one of the various feedback options would be implemented. While the table shows three different feedback options, a larger number of feedback options are described below and any of these can be used in a given implementation.
TABLE 4 


Configuration of Matrix weighted SM matrixA 
 User  Stream  Transmit  Channel  Unitary  Compressed 
 Assignment  Mapping  Beamforming  Matrix  Matrix/Vecter  Quantizer 
 
      
FORMAT1  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{w}_{1}{s}_{1}+{w}_{2}{s}_{2}\\ {w}_{3}{s}_{1}+{w}_{4}{s}_{2}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{cc}{h}_{11}& {h}_{12}\\ {h}_{21}& {h}_{22}\end{array}\right]\hspace{1em}$  x  x 
FORMAT2  User1 user2  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{cc}{h}_{11}& {h}_{12}\end{array}\right]\hspace{1em}$ $\left[\begin{array}{cc}{h}_{21}& {h}_{22}\end{array}\right]\hspace{1em}$  x x  x x 


[0106]
FIG. 6 provides an example of beamforming SM transmission of matrix weighted matrixA, wherein a first configuration generally indicated by 100 corresponds to a single user format with matrix weighting and a second configuration generally indicated by 110 corresponds to a multiuser format with matrix weighting.

[0107]
The first configuration 100 is for a single user. The user input is indicated at 102, this consisting of two symbols x_{1}, x_{2 }at a given instant. These two inputs are then multiplied beamforming weights in a beamformer 104 that implements beamforming matrix G_{1 } 104. The output of the beamformer 104 is then fed to a pair of transmit antennas 106. In the event of a matrix weighting, the beamforming matrix corresponds to that of matrixA for Table 3 above. A similar structure exists in the event of vector weighting (not shown), in which case the beamforming matrix would correspond to matrixA of Table 2 described above.

[0108]
For the second configuration, generally indicated at 110, there are two separate user inputs indicated at 112, 114 respectively. Each of the two user inputs are multiplied by a respective vector with the first input 112 being multiplied by V_{1 } 113, and the second input being multiplied by V_{2 } 115. The outputs of these vector multiplications are summed on a per element basis in adders 116,118. The output of the first adder 116 is fed to the first transmit antenna 120 and the output of the second adder 118 is fed to the second transmit antenna 122. The two vector multiplications V_{1 } 113, V_{2 } 115 collectively implement the beamforming operation of matrixA of Table 3. Given that it is a multiuser format, it also corresponds to the transmission format2 of Table 4 above.

[0109]
Table 5 below provides similar information to that described in Table 4 above, but for a three transmit antenna case. In other words, this is elaborating the details of transmit formats available for the matrix weighted SM matrixB described above in Table 3. The options available with a three transmit case are to use all three streams for a single user as indicated at format1 in the first row, to use one of the three symbol streams for a first user and the remaining two symbol streams for a second user as shown in format2 in the second row, and to assign a different user to each of the three streams as shown in format3 in the third row. In all cases, the transmit beamforming matrix has the same structure. The feedback options are again listed in the right hand three columns of Table 5.
TABLE 5 


Configuration of Matrix weighted SM matrixB 
 FEEADBACK OPTIONS 
TRANSMISSION FORMATS   Unitary  
 User  Stream  Transmit Beam  Channel  Matrix/  Compressed 
 Assignment  Mapping  forming  Matrix  Vector  Quantizer 
 
      
FORMAT1  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{ccc}{h}_{11}& {h}_{12}& {h}_{13}\\ {h}_{21}& {h}_{22}& {h}_{23}\\ {h}_{31}& {h}_{32}& {h}_{33}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{ccc}{h}_{11}& {h}_{12}& {h}_{13}\\ {h}_{21}& {h}_{22}& {h}_{23}\\ {h}_{31}& {h}_{32}& {h}_{33}\end{array}\right]\hspace{1em}$  x  x 

FORMAT2  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{ccc}{h}_{11}& {h}_{12}& {h}_{13}\end{array}\right]\hspace{1em}$  x  x 

 User2    $\left[\begin{array}{ccc}{h}_{11}& {h}_{12}& {h}_{13}\\ {h}_{21}& {h}_{22}& {h}_{23}\end{array}\right]\hspace{1em}$  x  x 

FORMAT3  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{ccc}{h}_{11}& {h}_{12}& {h}_{13}\end{array}\right]\hspace{1em}$  x  x 

 User2    $\left[\begin{array}{ccc}{h}_{21}& {h}_{22}& {h}_{23}\end{array}\right]\hspace{1em}$ 

 User3    $\left[\begin{array}{ccc}{h}_{31}& {h}_{32}& {h}_{33}\end{array}\right]\hspace{1em}$ 


[0110]
Similarly, the configurations available for a four transmit antenna configuration with matrix weighting are shown in Table 6 below. A single user format is shown in the first row; two user formats are shown in the second and fourth rows, a three user format is shown in the third row, and a four user format is shown in the fifth row. It is to be understood that not all of the potential formats have been exhaustively shown in Table 6. In all cases, the transmit beamforming matrix has the same structure, and the feedback options for the different formats are shown in the right hand three columns of Table 6.
TABLE 6 


Configuration of Matrix weighted SM matrixC 
 FEEDBACK OPTIONS 
TRANSMISSION FORMATS   Unitary  
 User  Stream    Matrix/  Compressed 
 Assignment  Mapping  Transmit Beamforming  Channel Matrix  Vector  Quantizer 

      
FORMAT1  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\\ {s}_{4}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{c}{w}_{1}{s}_{1}+{w}_{2}{s}_{2}+{w}_{3}{s}_{3}+{w}_{4}{s}_{4}\\ {w}_{5}{s}_{1}+{w}_{6}{s}_{2}+{w}_{7}{s}_{3}+{w}_{8}{s}_{4}\\ {w}_{9}{s}_{1}+{w}_{10}{s}_{2}+{w}_{11}{s}_{3}+{w}_{12}{s}_{4}\\ {w}_{13}{s}_{1}+{w}_{14}{s}_{2}+{w}_{15}{s}_{3}+{w}_{16}{s}_{4}\end{array}\right]\hspace{1em}$  $\left[\begin{array}{cccc}{h}_{11}& {h}_{12}& {h}_{13}& {h}_{14}\\ {h}_{21}& {h}_{22}& {h}_{23}& {h}_{24}\\ {h}_{31}& {h}_{32}& {h}_{33}& {h}_{34\text{\hspace{1em}}}\\ {h}_{41}& {h}_{42}& {h}_{43}& {h}_{44}\end{array}\right]\hspace{1em}$  x  x 

FORMAT2  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\\ {s}_{4}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{cccc}{h}_{11}& {h}_{12}& {h}_{13}& {h}_{14}\\ {h}_{21}& {h}_{22}& {h}_{23}& {h}_{24}\end{array}\right]\hspace{1em}$  x  x 

 User2    $\left[\begin{array}{cccc}{h}_{31}& {h}_{32}& {h}_{33}& {h}_{34\text{\hspace{1em}}}\\ {h}_{41}& {h}_{42}& {h}_{43}& {h}_{44}\end{array}\right]\hspace{1em}$  x  x 

FORMAT3  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\\ {s}_{4}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{cccc}{h}_{11}& {h}_{12}& {h}_{13}& {h}_{14}\end{array}\right]\hspace{1em}$  x  x 

 User2    $\left[\begin{array}{cccc}{h}_{21}& {h}_{22}& {h}_{23}& {h}_{24}\end{array}\right]\hspace{1em}$  x  x 

 User3    $\left[\begin{array}{cccc}{h}_{31}& {h}_{32}& {h}_{33}& {h}_{34\text{\hspace{1em}}}\\ {h}_{41}& {h}_{42}& {h}_{43}& {h}_{44}\end{array}\right]\hspace{1em}$  x  x 

FORMAT4  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\\ {s}_{4}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{cccc}{h}_{21}& {h}_{22}& {h}_{23}& {h}_{24}\end{array}\right]\hspace{1em}$  x  x 

 User2     x  x 

FORMAT5  User1  $\left[\begin{array}{c}{s}_{1}\\ {s}_{2}\\ {s}_{3}\\ {s}_{4}\end{array}\right]\hspace{1em}$   $\left[\begin{array}{cccc}{h}_{11}& {h}_{12}& {h}_{13}& {h}_{14}\end{array}\right]\hspace{1em}$  x  x 

 User2    $\left[\begin{array}{cccc}{h}_{21}& {h}_{22}& {h}_{23}& {h}_{24}\end{array}\right]\hspace{1em}$  x  x 

 User3    $\left[\begin{array}{cccc}{h}_{31}& {h}_{32}& {h}_{33}& {h}_{34\text{\hspace{1em}}}\end{array}\right]\hspace{1em}$  x  x 

 User4    $\left[\begin{array}{cccc}{h}_{41}& {h}_{42}& {h}_{43}& {h}_{44}\end{array}\right]\hspace{1em}$  x  x 


[0111]
FIG. 7 shows two examples of beamforming SM transmission of Matrix weighted matrixC. A first configuration, generally indicated at 130, corresponds to format1 of Table 6 above, namely a format in which a single user is transmitting on all four antennas. The single user's data inputs are indicated at 132; these are processed by beamforming matrix G_{1 } 134 the output of which is transmitted on four antennas 136.

[0112]
The second configuration shown in FIG. 2, generally indicated at 140, corresponds to format2 of Table 6 described above, namely a format in which there are two users each of which occupy two of the streams. The first user's input is indicated at 142, and the second user's input is indicated at 144. The entire arrangement indicated at 146 performs a beamforming operation on the two user inputs. This involves multiplying user 1 input by matrix G_{1 } 147 and user 2 input 144 by matrix G_{2 } 148. The output to these two multiplication operations are added in adders 150,152,154,156 and then output on antennas 158,160,162,164. It should be readily apparent how similar the structure can be created for each of the other available formats described above.

[0113]
The above described BLAST vector and weighted transmission configurations are generally applicable for closed loop MIMO systems with 2, 3 and 4 antennas. It should be readily apparent how these can be extended to handle a larger number of antennas.

[0114]
In a multicarrier environment, these transmission configurations can be applied either on a percarrier basis, for blocks of contiguous carriers, sets of non or partiallycontiguous carriers, or for an entire transmit bandwidth. Thus, for the OFDM particular implementations, in some implementations, a different beamforming matrix/user assignment can be applied on a percarrier basis; in other implementations, the available OFDM bandwidth is divided into subbands, and the same beamforming matrix/user assignment is used on each subband; and yet a further available option, the entire OFDM bandwidth is used to transmit with the same beamforming configuration. In yet another option, the entire available OFDM bandwidth divided into small subchannels, with each user being assigned a respective set of such subchannels.

[0000]
Spatial Multiplexing when there are More Transmit Antennas than Receive Antennas

[0115]
When there are extra transmit antennas, antenna selection and signal preprocessing can be used to significantly enhance link level performances. The SNR relation is: where γ_{pp}>γ_{as}>>γ_{fa}, where γ_{pp}, γ_{as}, and γ_{fa }are the SNRs of preprocessing, antenna selection, and fixed antenna configuration (using M fixed transmit antennas from a pool of N). The gain of signal preprocessing over antenna selection is mainly from the use of beamforming. Details of how feedback can be performed for beamforming are given below. The gain of antenna selection over fixed antenna configuration is from two areas: diversity gain and average SNR gain (over STC). Preferably, the waterfilling principle (the principle of using the most energy where conditions are the best) is applied to both antenna selection and beamforming, Antenna selection is the most simple and effective way to achieve diversity and SNR gain.

[0000]
Antenna Selection for Spatial Multiplexing

[0116]
With antenna selection, the receiver analyzes conditions on the channel and selects antennas that are best for that receiver. This antenna selection information is then fed back to the transmitter for use in performing the actual transmissions.

[0000]
Antenna Selection for a Single User With Single Antenna

[0117]
A single stream selective transmit diversity technique is represented in Table 7 below. This example assumes that there are four transmit antennas available to be selected for a single receive antenna user. The four different transmit options are shown in the table to include: the user's symbol s_{1 }being transmitted either using the first transmit antenna Tx_{1}, or the second, third or fourth transmit antenna similarly labelled. In order for the transmitter to know which antenna to use, preferably a feedback signal from the receiver is employed. In the particular example shown, a two bit feedback signal is shown in the first column that can be used to identify one of four different possible transmit antennas. Other formats for the feedback information can be employed. When a single antenna is used, there is no spatial multiplexing.

[0118]
Once again for a multicarrier implementation, antenna selection can take place to any appropriate subcarrier resolution. The particular feedback signalling is one particular example of how to signal back an identity of one of four antennas. An appropriate signalling mechanism can be employed. Furthermore, the antenna selection mechanism can be extended to differing numbers of transmit antennas.
TABLE 7 


SISO selective transmit diversity 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
b_{0}b_{1 }= 00  Time t  s_{1}  0  0  0 
b_{0}b_{1 }= 01  Time t  0  s_{1}  0  0 
b_{0}b_{1 }= 10  Time t  0  0  s_{1}  0 
b_{0}b_{1 }= 11  Time t  0  0  0  s_{1} 

2Stream Spatial Multiplexing for Single User

[0119]
An embodiment of the intention proposes closed loop subMIMO selection for SM. The term “subMIMO” is used to describe the case where there are multiple transmit antennas and a fewer number of receive antennas, and antenna selection is used to select a subset of the transmit antennas for use by the given receiver with the remaining antennas being available for other receivers. This will be described in the context of a 4×2 subMIMO system, in which the channel matrix to a given receiver has the following format:
$H=\left[\begin{array}{cccc}{h}_{11}& {h}_{12}& {h}_{13}& {h}_{14}\\ {h}_{21}& {h}_{22}& {h}_{23}& {h}_{24}\end{array}\right].$
Selecting two of the four antennas results in a smaller 2×2 channel matrix for the given receiver. There are six different possible channel matrices depending upon which of the two of the four transmit antennas are selected. The six possible channel matrices are as follows:
${H}_{12}=\left[\begin{array}{cc}{h}_{11}& {h}_{12}\\ {h}_{21}& {h}_{22}\end{array}\right]$
${H}_{13}=\left[\begin{array}{cc}{h}_{11}& {h}_{13}\\ {h}_{21}& {h}_{23}\end{array}\right]$
${H}_{23}=\left[\begin{array}{cc}{h}_{12}& {h}_{13}\\ {h}_{22}& {h}_{23}\end{array}\right]$
${H}_{14}=\left[\begin{array}{cc}{h}_{11}& {h}_{14}\\ {h}_{21}& {h}_{24}\end{array}\right]$
${H}_{24}=\left[\begin{array}{cc}{h}_{12}& {h}_{14}\\ {h}_{22}& {h}_{24}\end{array}\right]$
${H}_{34}=\left[\begin{array}{cc}{h}_{13}& {h}_{14}\\ {h}_{23}& {h}_{24}\end{array}\right]$
These six potential channel matrices can then be analyzed to determine which subMIMO channel is best, i.e., which of the two four transmit antennas are best for the particular user. Any appropriate way of selecting the two antennas can be implemented. In the particular example that follows, antenna selection is performed on the basis of determinants calculated for the different channel matrices. The particular pair of antennas that is best for a given receiver is determined by selecting the subsystem H_{ij }that satisfies
det(H _{ij})=max{det(H _{12}),det(H _{13}),det(H _{23}),det(H _{14}),det(H _{24}),det(H _{34})}.
This is depicted in FIG. 8 where a transmitter has four transmit antennas 190, and a receiver has two receive antennas 192. The determinant method is employed to select two of the four transmit antennas 190 for transmitting to the receiver.

[0120]
More generally, in a K receive antenna system, K columns from channel matrix II can be selected, where K is the size of the subset antenna group. There are a total of C^{K} _{M }choices. For each possible selection, calculate det(H′H). Finally, select the antenna group with max(det(H′H)).

[0121]
As in previous discussions, for multicarrier applications, antenna selection can be used at whatever frequency resolution may be determined for a given application. The best antenna group may differ for different subcarriers. If no other users are simultaneously being transmitted to, null subcarriers are preferably fed into nonselected antennas. This antenna selection process is typically performed at the receiver. Once the best two transmit antennas have been selected at the receiver, the selection is fed back to the transmitter. An example of how this feedback can be performed is shown in Table 8 below. The transmit contents that are possible are shown for each of the four transmit antennas. It can be seen that there are six different permutations depending upon which two transmit antennas are selected. The first column is used to show how three bits can be used to transmit a selection of two of the six antennas. Other feedback formats are possible. In some implementations feed back is for every subcarrier. If three bits are fed back on a per subcarrier basis, then for L subcarriers, L×3 bits would be required, in some implementations, feed back is for a subchannel of contiguous subcarriers. If three bits are fed back for a contiguous block of subcarriers, under the assumption that channel conditions are substantially constant across the block, obviously fewer feedback bits are required.
TABLE 8 


2Layer SM with Beamforming with antenna selection 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
 b_{0}b_{1}b_{2 }= 000  Time t  w_{1}s_{1}  w_{2}s_{2}  0  0 
 b_{0}b_{1}b_{2 }= 001  Time t  w_{1}s_{1}  0  w_{2}s_{2}  0 
 b_{0}b_{1}b_{2 }= 010  Time t  0  w_{1}s_{1}  w_{2}s_{2}  0 
 b_{0}b_{1}b_{2 }= 011  Time t  w_{1}s_{1}  0  0  w_{2}s_{2} 
 b_{0}b_{1}b_{2 }= 100  Time t  0  w_{1}s_{1}  0  w_{2}s_{2} 
 b_{0}b_{1}b_{2 }= 101  Time t  0  0  w_{1}s_{1}  w_{2}s_{2} 
 

[0122]
In this case, the subMIMO channel selection is based on the subMIMO channel condition and the antenna power allocation for the SM data can be adjusted by the feedback information pertaining to the weights.

[0123]
Antenna group index (illustratively 3 bits), and proportional weighting vector (illustratively 2 real elements (or alternatively complex elements), each element being of 4bits, 6bits, or 8bits) are preferably provided as feedback, signals. It should be appreciated, however, that weights may be derived from feedback information and need not necessarily be directly provided in feedback information.

[0000]
Closed Loop SubMIMO Selection with BeamForming

[0124]
For a DL 4×2 MIMO system, consider six subMIMO systems H_{1,2}, H_{1,3}, M_{1,4}, H_{2,3}, H_{2,4}, and H_{3,4}. Assuming that H_{ij}, H_{ik }and H_{il }are the subMIMO systems that satisfy:
det(H _{ij})+det(H _{ik})+det(H _{il})=max{det(H _{li})+det(H _{lk})+det(H _{ll}),det(H _{lj})+det(H _{jk})+det(H _{jl})}
then by beamforming with the j^{th }and k^{th }columns of H, and setting the weights to
${w}_{j}=\frac{{\mathrm{det}}^{*}\left({H}_{\mathrm{ij}}\right)}{\sqrt{{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)\uf604}^{2}+{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{ik}}\right)\uf604}^{2}+{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)\uf604}^{2}}}$
${w}_{k}=\frac{{\mathrm{det}}^{*}\left({H}_{\mathrm{ik}}\right)}{\sqrt{{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)\uf604}^{2}+{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{ik}}\right)\uf604}^{2}+{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)\uf604}^{2}}}$
${w}_{l}=\frac{{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)}{\sqrt{{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)\uf604}^{2}+{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{ik}}\right)\uf604}^{2}+{\uf603{\mathrm{det}}^{*}\left({H}_{\mathrm{il}}\right)\uf604}^{2}}}$
respectively, where the particular selection of the three determinants maximizes the denominator in the aboveweight calculation we have
det(H _{ij} ^{(jkl)})=√{square root over (det*(H_{ij})^{2}+det*(H_{lk})^{2}+det*(H_{il})^{2})}.

[0125]
Table 9 is an illustrative example of this. A single antenna is used to transmit a stream without any weighting; another antenna is used to transmit the same stream with weighting; and the remaining two antennas are used to transmit the other second stream, both with weighting. The particular antenna used to transmit either the unweighted symbol or the weighted symbols is information that is preferably fed back to the transmitter. The weighting vector or information from which the weights can be derived is also preferably fed back from the receiver to the transmitter. Thus, the illustrated example, this would require the equivalent of three bits to identify one of the six permutations, and additional feedback for the three weights w
_{1}, w
_{2 }and w
_{3}. This format is a hybrid of beamforming and spatial multiplexing. In this example, there are two data streams mapped onto four antennas. Each symbol is transmitted on two different antennas with the weights as shown in the table below. Antenna selection is performed to select which antennas go together to transmit the same symbol, and beam forming is used to apply weights to three of the four antennas. Four weights could be applied alternatively. It should be readily apparent how this concept can be extended to handle larger numbers of antennas overall and/or larger numbers of antennas per stream and/or larger numbers of streams. This approach will be referred to as Klayer SM employing more than K transmit antennas. In the example, we have 2layer SM with four transmit antennas,
TABLE 9 


2Layer SM with antenna selection and beamforming 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
 b_{0}b_{1}b_{2 }= 000  Time t  s_{1}  w_{1}s_{2}  w_{2}s_{1}  w_{3}s_{2} 
 b_{0}b_{1}b_{2 }= 001  Time t  s_{1}  w_{2}s_{1}  w_{1}s_{2}  w_{3}s_{2} 
 b_{0}b_{1}b_{2 }= 010  Time t  s_{1}  w_{1}s_{1}  w_{2}s_{2}  w_{3}s_{2} 
 b_{0}b_{1}b_{2 }= 011  Time t  w_{3}s_{2}  s_{1}  w_{1}s_{2}  w_{2}s_{1} 
 b_{0}b_{1}b_{2 }= 100  Time t  w_{3}s_{2}  s_{1}  w_{2}s_{1}  w_{1}s_{2} 
 b_{0}b_{1}b_{2 }= 101  Time t  w_{3}s_{2}  w_{2}s_{1}  s_{1}  w_{1}s_{2} 
 
STTD Transmission Formats

[0126]
The transmission formats described thus far have all been based on the BLAST approach in which there is a single transmitted symbol for each information symbol, or on the BLAST variant described by way of example with reference to Table 9 above in which each Kstream blast is employed on more than K antennas, so at least some of the symbols are transmitted twice. Additional transmission formats are based on STTD (space time transmit diversity) in which there are at least two transmitted symbols based on each information symbol, and typically sets of two information symbols are transmitted using 2×2 Alamouti block. However, other STTD formats are also contemplated.

[0000]
Single Stream Weighted STTD (SSTD) for a Single User with Antenna Selection and Proportional Weighting

[0127]
In another transmission format, for a single data steam, transmit diversity is “proportionally weighted” STTD. This is a middle approach between conventional STTD (no weighting) and antenna switching. One advantage of this scheme is to safeguard against possible feedback error, feedback delay, and possible channel change between feedback updates for the antenna selection. The channel matrix condition (CMC) does not affect STTD when orthogonal codes are used. For quasiorthogonal codes, CMC does affect signal quality.

[0128]
In the case of single stream transmit diversity, we also have the two options of beamforming and antenna selection that can be performed similarly to that described above for the BLAST transmission formats. Beamforming involves applying weights to the elements of the STTD groups, and antenna selection involves selecting a subset of a set of available transmit antennas for transmitting the stream.

[0129]
For an SSTD system with four transmit antennas, a hybrid proportionally weighted STTD approach can be used. In one embodiment, the two antennas with the strongest combined SNR are selected, and proportional weighting on these two selected antennas is then applied. The advantages of this scheme include; diversity and SNR gain due to antenna selection, increased robustness provided by proportional weighting, and the employment of efficient Alamouti codes. An example of SSTD with antenna selection and proportional weighting is given in Table 10, where two antennas out of four are selected and weighted,
TABLE 10 


SSTD with antenna selection and proportional weighting 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
b_{0}b_{1}b_{2 }= 000  Time t  w_{1}s_{1}  w_{2}s_{2}  0  0 
 Time (t + T)  −w_{1}s_{2}*  w_{2}s_{1}*  0  0 
b_{0}b_{1}b_{2 }= 001  Time t  w_{1}s_{1}  0  w_{2}s_{2}  0 
 Time (t + T)  −w_{1}s_{2}*  0  w_{2}s_{1}*  0 
b_{0}b_{1}b_{2 }= 010  Time t  0  w_{1}s_{1}  w_{2}s_{2}  0 
 Time (t + T)  0  −w_{1}s_{2}*  w_{2}s_{1}*  0 
b_{0}b_{1}b_{2 }= 011  Time t  w_{1}s_{1}  0  0  w_{2}s_{2} 
 Time (t + T)  −w_{1}s_{2}*  0  0  w_{2}s_{1}* 
b_{0}b_{1}b_{2 }= 100  Time t  0  w_{1}s_{1}  0  w_{2}s_{2} 
 Time (t + T)  0  −w_{1}s_{2}*  0  w_{2}s_{1}* 
b_{0}b_{1}b_{2 }= 101  Time t  0  0  w_{1}s_{1}  w_{2}s_{2} 
 Time (t + T)  0  0  −w_{1}s_{2}*  w_{2}s_{1}* 


[0130]
In this case, feedback signals preferably include antenna group index (illustratively 3 bits), proportional weighting vector or other information allowing the determination of the weighting vector (illustratively 2 real elements, each element might for example be of 4bits, 6bits, or 8bits). It should be readily apparent how the single stream case can be extended to larger numbers of transmit antennas.

[0000]
Double Stream Transmit Diversity (DSTTD) for a Single User

[0131]
With double stream transmit diversity, two streams are transmitted to a single user with each stream being sent using a respective weighted Alamouti code structure (or some other STTD structure). More generally, with an M transmit antenna system, M/2 STTD subgroups can be formed and transmitted to a different receiver, although multiple or all of the subgroups might be sent to one receiver. This is a hybrid case of STTD and spacemultiplexing (SM). Because of intercode interference, antenna grouping becomes more important. Preferably, layer based waterfilling is employed to provide additional gain to the system. With layerbased waterfilling, more power is transmitted to the layer having the better channel. Thus, with a double STTD system, a respective pair of antennas is assigned to each stream, and the respective “layer” is transmitted on that pair of antennas. Preferably, more power is given to the layer having the better channel conditions.

[0132]
An example of a set of possible layer weighting permutations is shown in Table 11 for the four transmit antenna case. In the first row, transmit antennas
1 and
2 are grouped together, and antenna
3 and
4 are grouped together, to form two constituent STTD codes that can be assigned to respective receivers or to a single receiver. In the example of Table 11 below, symbols s
_{1 }and s
_{2 }are of one layer, while symbols s
_{3 }and s
_{4 }are of a second layer.
TABLE 11 


Double STTD with layer weighting 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
b_{0}b_{1 }= 00  Time t  w_{1}s_{1}  w_{1}s_{2}  w_{2}s_{3}  w_{2}s_{4} 
 Time (t + T)  −w_{1}s_{2}*  w_{1}s_{1}*  −w_{2}s_{4}*  w_{2}s_{3}* 
b_{0}b_{1 }= 01  Time t  w_{1}s_{1}  w_{2}s_{3}  w_{1}s_{2}  w_{2}s_{4} 
 Time (t + T)  −w_{1}s_{2}*  −w_{2}s_{4}*  w_{1}s_{1}*  w_{2}s_{3}* 
b_{0}b_{1 }= 10  Time t  w_{1}s_{1}  w_{2}s_{3}  w_{2}s_{4}  w_{1}s_{2} 
 Time (t + T)  −w_{1}s_{2}*  −w_{2}s_{4}*  w_{2}s_{3}*  w_{1}s_{1}* 


[0133]
The feedback signals in this case are used to select one of the three different permutations, and this can take the form of an antenna group index (2 bits in the example shown), and weights or information relating to weights. In this implementation, there are two STTD waterfilling weights and each can be fed back to an implementation specific resolution, for example, 4bits, 6bits, or 8bits. The waterfilling weights determine the relative amount of power used on the two STTD groups.

[0134]
In summary, the options for STTD transmissions for a single user include a pair of antennas to transmit a single layer, or multiple pairs of transmit antennas each used to transmit a respective layer, in each of these cases each layer being transmitted using STTD. Preferably, for multicarrier applications, antenna selection/grouping is performed on a per subcarrier basis. Alternatively, it can be performed for some other subcarrier breakdown. In the event an entire OFDM band, this would be referred to as “fixed” STTD, while in the event of antenna grouping on a per subcarrier basis, this is referred to as antenna grouping DSTTD, FIG. 9 shows a comparison of the performance of fixed DSTTD and antenna grouping DSTTD for an OFDM system. It can be seen that over a range of subcarriers, the fixed DSTTD will perform similarly to the antenna grouping DSTTD on subcarriers where the particular fixed antennas perform the best. Elsewhere, the antenna grouping DSTTD will perform better. In the example of FIG. 9, on a per subcarrier basis, an antenna grouping has been performed. The feedback required for this implementation would be two bits per subcarrier to choose the antennas. Preferably, weights are also fed back if there is available bandwidth for this.

[0135]
In addition to antenna grouping, antenna selection can also be used to eliminate some of the antennas and only use a single antenna per STTD block. This will make a 4×2 double STTD system degenerate to a 2×2 BLAST system. In fact, this can be viewed as applying antenna selection to each STTD subcode—after the rule of antenna grouping has been applied.

[0136]
For example, if antenna selection is also used with the WSTTD format in the second row of Table 11 to eliminate the first and fourth transmit antennas, the result is something that is effectively equivalent to a 2×2 BLAST system as shown in Table 12 below.
TABLE 12 


Weighted BLAST degenerated from double STTD 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
 Time t  0  w_{2}s_{3}  w_{1}s_{2}  0 
 Time (t + T)  0  −w_{2}s_{4}*  w_{1}s_{1}*  0 
 

[0137]
In another embodiment, proportional weighting is applied to each constituent STTD code after antenna grouping, rather than or in addition to for the STTD codes as a whole as was the case in Table 11 above. An example of weighted double STTD with antenna grouping and proportional weighting is given in Table 13 below. There are two levels of weighting in this design: waterfilling is applied across layers (i.e. across constituent STTD codes), and proportional weighting is applied within each constituent STTD code. In other words, weighting is sued to get the best allocation of the Alamouti pairs among the antennas, and weighting is used to weight the antennas of a given pair differently. In the table below, both of these weights are included within the single weight w
_{i }applied to each symbol. In the example below, antennas
1 and
3 have been grouped to form a first STTD group, and antennas
2 and
4 have been grouped to form a second STTD group.
TABLE 13 


Weighted double STTD with antenna grouping and 
proportional weighting of each element 
 Tx_{1}  Tx_{2}  Tx_{3}  Tx_{4} 
 
 Time t  w_{1}s_{1}  w_{2}s_{3}  w_{3}s_{2}  w_{4}s_{4} 
 Time (t + T)  −w_{1}s_{2}*  −w_{2}s_{4}*  w_{3}s_{1}*  w_{4}s_{3}* 
 

[0138]
Referring now to FIG. 10, shown is a very specific example of how any of the above described transmission formats can be allocated to a pair of users occupying an OFDM band. In this case, there are four transmit antennas 170,172,174,176, and there are two receivers indicated at 178 and 180. Each receiver has a respective pair of receive antennas. With the particular example shown, antenna selection is used to select the first and fourth antennas 170,176 for transmitting to a second receiver 180 and to select the second and third antennas 172,174 for transmission to the first receiver 178. Furthermore, the OFDM subcarriers that are allocated to the two receivers are indicated at 182 for the first receiver and 184 for the second receiver. It can be seen that for this example, the subcarriers are allocated in a nonoverlapping fashion such that a different set of subcarriers are transmitted to each of the two receivers 178,180. In this example, the subcarriers are allocated to antennas in groups of six. However, more generally, subcarrier allocation to particular antennas, and antenna assignment to particular users can be performed on a per subcarrier basis, or to any other desired resolution.

[0139]
Only a subset of antennas/subchannels are selected for transmitting signals to a given receiver. Receivers only need to feedback antennas/subchannels group indexes to the transmitter. In the event weighting is also employed, then this case, weighting information might be fed back for each subcarrier, or for groups of six subcarriers.

[0140]
In multiuser applications, antenna/subchannel selection is based on multiuser diversity; different users may select different antenna groups. Quasiwaterfilling over is preferably employed in selecting antennas/subchannels: transmitting power on good channels and antennas, while avoiding poor channels. Power balancing can be achieved through multiuser diversity. Since different receivers experience different channel environments, their antenna group selection will not necessarily the same. When different receivers select different antenna groups, the average power transmitted by each transmit antenna can be somewhat balanced.

[0000]
Antenna Selection for STTD Formats and SM Formats

[0141]
The above STTD and SM options have all featured weighting, either in the form of waterfilling across different STTD groups/SM antennas and/or proportional weighting within STTD groups. Antenna selection/antenna grouping can be combined with these weighting options. In another embodiment, antenna selection/antenna grouping alone is employed. Several examples of pure antenna selection will now be described.

[0000]
Antenna Selection/Grouping for three Transmit Antennas

[0142]
Example STTD formats for three transmit antenna applications will now be described. In the example of FIG. 11, each 4×3 matrix has three rows and each row is transmitted on a respective transmit antenna. In the first example matrix A_{1}, the first two symbols s_{1}, s_{2 }are transmitted using STC coding on the first two antennas and during two transmit intervals, and the next two symbols s_{3}, s_{4 }are transmitted using space time coding on the first and third antennas during the next two transmit intervals. The matrices A_{2 }and A_{3 }show other permutations for selecting two of the antennas for each STC block. The matrices A_{1}, A_{2 }and A_{3 }are single stream transmission matrices. During four transmission intervals, four symbols s_{1}, s_{2}, s_{3}, s_{4 }are transmitted.

[0143]
Another antenna grouping example is shown in FIG. 11 for matrices B_{1}, B_{2}, B_{3}. This is a two stream example. It can be seen that one of the streams consists of s_{1}, s_{2}, s_{3}, s_{4 }transmitted over the four transmission intervals, and the other stream consists of symbols s_{5}, s_{6}, s_{7}, s_{8 }transmitted over the four symbol transmission intervals. In this case, space time coding is applied for both streams, but diversity is applied for one of the streams but not for the other. The three matrices B_{1}, B_{2}, B_{3 }show different ways of assigning the antennas to the various streams.

[0144]
FIG. 12 shows examples of antenna groupings and antenna selections for closed loop STC/MIMO 3transmit antenna arrangements. Also shown in FIG. 12 is a set of examples of antennas selection feedback for a three antenna system. For a single stream application, the receiver simply selects one of three antennas, and feeds back an identification of the selected antenna. Thus, C_{1 }represents the selection of the first antenna, C_{2 }represents the selection of the second antenna, and C_{3 }represents the selection of the third antenna. The transmission matrix also shows a term “c” which represents the amount of power boosting that can be implemented. In this case, such a single antenna is used for the particular user, the entire power for that user can be applied to that single antenna and no power boosting need be employed. An example of CQICH bits that might be fed back to identify one of the three permutations is also shown.

[0145]
Also shown is a two stream example where the receiver must select two of the three possible antennas, and feedback to the transmitter which two of the three antennas it would like to receive its data on. In this case, a power boosting factor of 1/√{square root over (2)} such that the total amount of power is divided across the two antennas for the given user.

[0000]
Antenna Selection/Grouping for Four Transmit Antennas

[0146]
FIG. 13 shows a set of example antenna groupings for 4transmit closed loop STC/MIMO. Shown are examples for one stream, two streams and four streams. The possible matrices for one stream are indicated at A_{1}, A_{2}, A_{3}. In each of these examples, a stream consisting of s_{1}, s_{2}, s_{3}, s_{4 }is transmitted using all four antennas, with space time coding being applied between s_{1 }and s_{2}, on two antennas and between s_{3}, and s_{4 }over two antennas. The three different antenna groupings represent different selections of antennas for the two STC groups.

[0147]
With the two stream example, the matrices B_{1}, B_{2}, B_{3}, B_{4}, B_{5}, B_{6 }show how two streams consisting of s_{1}, s_{2}, s_{3}, s_{4 }and s_{5}, s_{6}, s_{7}, s_{8 }can be spread across four transmit antennas in six different ways. Space time coding is again employed between sets of two symbols within each stream.

[0148]
FIG. 14 shows antenna selection options for a closed loop STC/MIMO 4transmit antenna arrangement in accordance with an embodiment of the invention. Shown are 1, 2 and 3 stream antenna selection options. With one stream antenna selection option, a single of the four antenna as selection for transmitting a single symbol. The transmission matrices are indicated at C_{1}, C_{2}, C_{3}, C_{4}. A power boosting of c=1 is applied since only a single transmit antenna is employed.

[0149]
For two streams, two of the four antennas are selected, and there are six different options as set out in the table. A power boosting factor of 1/√{square root over (2)} is applied for this case. For a three stream example, there are four different ways to select three of the four antennas as set out in the table. A power boosting factor of 1/√{square root over (3)} is applied. Also shown in the table is an example set of bits that can used to feedback on the channel quality indicator channel selection of an appropriate one of the potential transmission matrices depending upon whether there are 1, 2 or 3 streams.

[0000]
Binary BeamForming

[0150]
It is noted that while the above examples show antenna selection feedback, binary beamforming can be used to similar effect. With binary beamforming, the beamforming weights are binary, meaning that a given antenna is either on or off. This is analogous to selection. Two specific examples of using beamforming to perform antenna selection are provided in FIGS. 15 and 16 for three and four antenna systems respectively. For the four antenna system, assuming the symbol stream can be defined in the form of x=diag[s1, s2, s3, s4] and the transmitted beamformed matrix is C=xW where is listed in FIG. 16. This is the same result as the antenna selection examples of FIG. 14. This allows the unification of antenna selection with beamforming, where W consists of binary weights in this particular case.

[0000]
MIMO Downlink Pilot Designs

[0151]
Referring now to FIGS. 17 through 23, a number of different pilot transmission schemes will now be described for MIMO applications of OFDM. In these examples, it is assumed that a common pilot structure is used for any receivers that might need to rely on it. In order that multiple receivers can make use of the pilots, no receiver specific precoding is performed. In other examples described further below, precoding of pilots for specific receivers is performed. In all of the Figures showing pilot transmission schemes, the horizontal axis represents OFDM subcarriers separated in frequency, and the vertical axis is the time dimension, with each row representing on OFDM symbol transmission interval. In all of the examples, the receiver recovers the transmitted pilots, compares them to known content of the pilots, and determines channel estimates on the basis of this comparison. Channel estimates can be interpolated for the nonpilot subcarrier locations.

[0152]
Referring first to FIG. 17, shown is a pilot transmission scheme in which pilots are allocated for four antennas as indicated at 400,402,406,408. The pilots are allocated in blocks of 2×2 subcarrier locations, with two consecutive subcarriers over two consecutive OFDM symbols. In this example, the location of the pilot for each antenna is the same with each group of four subcarrier locations. Furthermore, note that the pilots 406,408 for antennas 1 and 3 are “punctured pilots”, meaning that these pilots are transmitted in place of data subcarriers such that the receiver must rely on error correction to demodulate and recover correctly the transmitted information in the absence of the punctured data locations. In other words, where in a 2antenna system, data would be transmitted on subcarriers indicated at 409, with the 4antenna system no data is transmitted on the subcarrier locations used for the punctured pilot locations. Each pilot is transmitted only by the respective antenna with null subcarriers inserted in the other antennas. In the illustrated example, pilots are inserted in every pair of two consecutive OFDM symbols, but in some implementations, not every OFDM symbol contains pilots. The location of the 2×2 blocks of pilots is staggered between adjacent pairs of OFDM symbols. In the illustrated example, the staggering is not uniform, but it could be uniform in other implementations.

[0153]
Referring now to FIG. 18, another example of a 4antenna pilot transmission scheme is shown. In this example, four pilots are inserted on a single subcarrier for the four antennas as shown in 410,412,414,416 over four OFDM symbol transmission intervals. Multiple such groups of four pilots are inserted in subcarrier locations that are separated by eight data subcarriers in the example shown. Furthermore, the particular subcarriers used are offset in consecutive sets of four OFDM symbols. It can be seen that half as many pilots are inserted with the example of FIG. 18 as are inserted in the example of FIG. 17. The result is that for a given subcarrier and a given antenna, an accurate channel estimate can be obtained at the receiver half as often. The interpolated channel estimates may therefore be less accurate. This has the potential of effecting the accuracy of data recovery at the receiver.

[0154]
While a particular staggering arrangement has been shown in FIGS. 17 and 18, it is to be understood that other arrangements are possible.

[0155]
Referring now to FIG. 19, shown is another example of a pilot transmission scheme for a 4antenna system. In this system, for groups of four consecutive OFDM symbols, pilots are inserted only for two of the antennas. The group of four OFDM symbols indicated at 420, pilots are inserted for antennas 0 and 1, while for the group of four OFDM symbols 422 pilots are inserted for antennas 1 and 3. For subsequent groups, the set of antennas alternates. Within a given set, pilot pairs are inserted in selected OFDM subcarrier locations over two OFDM symbols. For example, one such pair of pilot symbols is indicated at 424,426, this including one pilot for antenna 0 and one pilot for antenna 2. The subcarriers used for the pilots are offset between the first two OFDM symbols and the second OFDM symbols of the set of four OFDM symbols 420. A similar arrangement is shown for the pilots of antennas 1 and 3 during the second set of four OFDM symbols 422. While a particular offsetting arrangement has been shown, other offsetting arrangements can be implemented.

[0156]
Referring now to FIG. 20, shown is an example of a pilot transmission scheme for an 8antenna system. Groups of eight pilots are inserted in a staggered fashion within the time frequency plane. Each group is two subcarriers by four OFDM symbols, and includes one pilot for each of the eight antennas. One such group of eight is indicated at 430.

[0157]
Referring now to FIG. 21, shown is another example of pilot transmission scheme for an 8antenna system. In this example, alternating sets of four OFDM symbols are used to transmit pilots for respective sets of four antennas. Thus, the first set of four OFDM symbols 440 is used for the first four antennas and the next set of four OFDM symbols 442 is used for the next set of four antennas. For each set of four antennas, the pilots are inserted in blocks of two subcarriers by two OFDM symbols each containing one pilot for each of the four antennas, and the location of the block is offset between consecutive pairs of OFDM symbols.

[0158]
Referring now to FIG. 22, shown is a pilot transmission scheme for a 12antenna system. This example is basically an extension of the example of FIG. 20 but with each group of pilots being inserted having a dimension of two OFDM subcarriers by six OFDM symbols, and each block of OFDM pilots containing one pilot for each of 12 different antennas. One example block is indicated at 450.

[0159]
Referring now to FIG. 23, shown is another example of a pilot transmission scheme for a 12antenna system. In this case, the overall pilot pattern is 12 OFDM symbols in duration. The first four OFDM symbols 452 are used for first four antennas; the next four OFDM symbols 454 are used for the next four antennas, and the last four OFDM symbols 456 are used for the last four antennas. Each set of four OFDM symbols is shown arranged similarly to the sets of four OFDM symbols described previously with reference to FIG. 28 for the eight antenna design.

[0160]
As indicated above, for the example pilot patterns of FIGS. 17 through 23, as described, the pilots are not precoded, and can therefore be used by any receiver to obtain channel estimations for the particular antenna. In another embodiment, for any one of the patterns described thus far, the pilots for at least one antenna are precoded for a particular user. As described above, precoding of pilots for a particular user may enable pilots to be inserted at a lower frequency or for the particular user and thereby save transmission bandwidth. Further examples are given below that involve precoding of pilots for closedloop MIMO subchannel transmissions.

[0000]
Pilot Transmission Schemes with Pilot PreCoding

[0161]
Systems and methods employing precoding of MIMO pilots in accordance with an embodiment of the invention will now be described. In the above described embodiments, it has been assumed that pilot channel information is transmitted without any weights being applied. In this manner, any receiver can look at the transmitted pilot information and recover a respective channel for the particular receiver. In some embodiments, a precoding of the pilot is performed.

[0162]
For a precoded pilot, the equivalent channel measured at the receiver becomes G=HW, where H is the actual channel, and W are the weights applied to the pilots. The feedback beamformer W, or information from which it can be derived, may be computed from the channel H for a particular user, Many examples of how this feedback can be performed are detailed below.

[0163]
In the event precoding of the pilot is performed, the channel can be recovered according to:
H=GW′(WW′)^{−1 }
However, the pilots need to be userspecific for such a case because beamforming weights are receiverspecific. This is in contrast to the case where the pilots are not precoded and the channel can be recovered by each user.

[0164]
FIGS. 24 and 25 compare and contrast the use of nonprecoded pilots as opposed to precoded pilots. In FIG. 24, it is assumed that a set of nonprecoded pilots were transmitted. A distribution of data subcarrier locations 451 and pilot subcarrier locations 453 are shown for the purpose of example only, In this case, the channel H can be used for:

[0165]
1. current H analysis and future feedback; and

[0166]
2. multiple users (possibly including nonMIMO) to assist in channel interpolation.

[0167]
The nonprecoded channel H can be reencoded to coherently demodulate current data for each user.

[0168]
In contrast, with the example of FIG. 25, some of the pilots are dedicated to a particular user, and as such can be precoded while other pilots are for multiple use, and as such are not precoded. The use of precoding for pilots can be constant, or can vary over different time. A distribution of data subcarrier locations 451 and pilot subcarrier locations 453 are shown for the purpose of example only. During time t_{1}, the pilot subcarriers 461 are precoded pilots for a first receiver 465, and during a second time t_{2}, precoded pilots are inserted for a different receiver 467. There may also be pilots that are transmitted for use by both users (not shown).

[0169]
Advantageously, by using precoded pilots, a smaller number of pilots can be used. The number of pilots can be reduced in either the time or frequency dimension. Preferably, for cases in which the receiver is mobile, the density in time is kept the same and the density is reduced in the frequency domain. Furthermore, for band adaptive modulation and coding, it is preferable to select the most flat part of the band or use larger FFT size, and/or to use an interlaced antenna pilot mapping.

[0170]
For the case where a receiver is nomadic, i.e., it is not highly mobile, but does move periodically, it is advantageous to keep the frequency density the same, and to reduce the density in the time domain. In this case, preferably a block antenna pilot mapping is employed.

[0171]
The location of the receiverspecific pilots is an implementation specific decision. For the purpose of completeness, several examples are presented below.

[0172]
FIG. 26 shows an example of precoded pilot design for a 2antenna basestation (BS) in accordance with an embodiment of the invention. In this examples subchannels are defined that are nine subcarriers wide for a given receiver, each subchannel being assigned to a respective receiver. Thus, two subchannels are indicated at 500,502. These subchannels can be continuously allocated for a given mobile station, or they can be allocated in a time division manner. Pilot carriers are inserted as indicated at 504,506 for antenna 0 and antenna 1 respectively and for the first mobile station. These are inserted in the subchannel 500 for the first mobile station. Similarly, pilot carriers 508,510 are inserted in the subchannel for the second receiver for antenna 0 and antenna 1 respectively. Because the pilot subcarriers are dedicated to a particular receiver, preferably they are precoded as discussed above. Precoded pilot subcarriers axe coded for the particular receiver using feedback information received from each receiver.

[0173]
The example of FIG. 26 shows subchannels that consist of a set of subcarriers being allocated to respective mobile stations. This approach can be extended to multiple subchannels, more than simply the two shown. Furthermore, the particular location of the subcarriers used for pilots can vary on an implementation specific basis. Preferably the pilots are somewhat scattered within each subchannel for a given receiver so that better channel information can be interpolated for the remaining data subcarrier locations.

[0174]
Referring now to FIG. 27, shown is another example in which subchannels are divided up in a timewise manner. The subchannel for a first mobile station is transmitted on the first two OFDM symbols as indicated at 520, and the subchannel for a second mobile station is transmitted on the second set of two OFDM symbols as indicated at 522, and then this pattern repeats. The subchannel for a given mobile station may contain fewer or greater number of OFDM symbols than the two shown in FIG. 27. Furthermore, there can be any appropriate number of subchannels defined. In this example, receiver specific pilot carriers are inserted during each of the two subchannels 520,522. The pilots for the first subchannel are indicated at 524,526 and the pilot carriers for the second receiver are indicated at 528,530. In this example, the pilots for antenna 0 are inserted in one OFDM symbol, and the pilots for antenna 1 are inserted in the next OFDM symbol within each subchannel. A particular spacing for the pilot carriers is shown, but of course different spacings and frequencies can alternatively be employed. Once again, since the pilots are dedicated to a particular users they can be precoded for each user.

[0175]
The example of FIG. 26 can be extended to differing numbers of antennas. An example is shown in FIG. 28 where there are three antennas and as such each subchannel has pilot carriers for each of the three antennas. With the example of FIG. 28, the pilots for one of the antennas, in the illustrated example antenna 1, are punctured pilot carriers. This means that data locations would normally have been transmitted there, and as such the receiver must rely on error correction to correctly recover an entire transmitted data stream. Alternatively, pilot locations could be allocated for all three antennas that do no rely on puncturing. Furthermore, it may be that only some of the pilots for a given antenna are puncture locations. A very similar example is shown in FIG. 29 for a four transmit antenna example in which the pilot carriers for two of the antennas, namely antennas 1 and 3 are punctured pilot carriers. In this example and the other examples, zero, one, or multiple pilots may rely on puncturing.

[0176]
In accordance with another embodiment of the invention a precoded pilot design for the PUSC (partial use subcarrier applications) is provided. For PUSC the symbol is first divided into basic clusters of consecutive subcarriers. Pilots and data carriers are allocated within each cluster of subcarriers. According to IEEE 802.162004, a permutation is used when allocating the data carriers to a subchannel, a permutation consisting of a remapping of the a cluster subcarriers into other allocations (that can be almost random). The data carriers in each cluster may be assigned to different MSSs, and therefore, pilots may be used by multiple MSSs. To support the dedicated pilots to closedloop MSSs operating in PUSC mode, the permutation procedure to partition the subcarriers into subchannels is disabled or is allowed to apply to the PUSC subchannel within a single user. Each subchannel includes 48 data carriers from two clusters.

[0177]
FIG. 30 shows a precoded pilot design for a 2antenna BS for a PUSC zone in accordance with an embodiment of the invention, where the pilot design shows the form of the cluster prior to remapping/permutation. In other words, the pattern of FIG. 30 would actually be scrambled across an OFDM bandwidth. In this example, the first four OFDM symbols are used for a subchannel for a first mobile station, and the next four OFDM symbols 542 form a subchannel for another mobile station. In the frequency domain, there may be additional subchannels for other mobile stations, not shown, or the entire bandwidth may be applied for a single wireless station at a time. In this case, pilots are inserted for two antennas, and these can be inserted in a receiver specific manner. Pilot carriers for the first receiver on antenna 0 are indicated at 544, and pilot carriers for the first receiver on the next antenna are indicated at 546. These are inserted in pairs on consecutive subcarrier locations and in every other OFDM symbol at illustrated. The pattern continues with pilots carriers 545,547 inserted during the subchannel 542 for the second receiver, and the pilots are precoded for the respective receivers.

[0178]
Referring now to FIG. 31, shown is another example similar to that of FIG. 30, but in which pilot carriers are inserted for four antennas. In this case, the pilot carrier insertions for antenna 0 and 1 are identical to those of FIG. 30. In addition to this, pilots are inserted in the first OFDM symbol of each subchannel for antennas 2 and 3 as indicated at 550,552. In this case, it is assumed that the pilots for antennas 2 and 3 are inserted in punctured pilot locations. Furthermore, the pilots are inserted half as frequently for the antennas 2 and 3, namely for only one OFDM symbol of each set of four.

[0000]
Closed Loop Feedback Options for MIMO Applications

[0179]
The transmission formats discussed above rely on antenna selection/grouping feed back and/or beamforming weights. FIG. 32 shows a summary of available closed loop STC/MIMO arrangements with beamformer structures in accordance with embodiments of the invention.

[0180]
The first option indicated at 600 is to perform MIMO/STC set up based on closed loop feedback. This may involve selection between SM and STTD, and/or antenna selection and/or antenna grouping, as defined for a given application. Given a set of options that are to be made available to a given receiver, the feedback information allows the receiver to select between the options and inform the transmitter of the selection.

[0181]
The next option indicated at 602 is to perform beams forming based on feedback information. The feedback information may come in a variety of forms described in detail below. The information that is fed back allows a transmitter to generate weights for the particular receiver. The feedback information can be the weights per se, or other information.

[0182]
The next option indicated at 604 involves performing MIMO/STC setup based on feedback and feeding the output of this into a beamformer that might be static in nature.

[0183]
In another embodiment, indicated at 606, the output of a MIMO/STC matrix is input into a beamformer that undergoes beamforming as a function of feedback.

[0184]
Finally, the next option indicated at 608 involves performing MIMO/STC set up based on feedback, and feeding the output of this into a beamformer that also performing beamforming a function of feedback.

[0185]
In summary, the options are to apply feedback for MIMO/STC set up and/or applying feedback to the beamformer The beamformer feedback information may be for a unitary beamformer structure, or some other beamformer. Detailed examples have been given previously as to how MIMO/STC set up information can be fed back, Many options for beamformer feedback are given in the details below.

[0186]
In accordance with various embodiments of the invention there is provided methods of facilitating closed loop MIMO precoding and feedback in a communications network that might, for example be operating in accordance with the IEEE 802.16(e) and IEEE 802.11(n) standards. As will be apparent to one of skill in the art the various embodiments can be implemented in software, firmware or an ASIC (application specific integrated circuit) or any suitable combination of these or other components.

[0000]
Feedback for Antenna Selection/Grouping and Eigenmode Selection

[0000]
SVD Approach

[0187]
SVD (singular value decomposition) is theoretically optimal in terms of the best channel matching transmission and achieving the link level Shannon capacity. However, SVD typically requires a large amount of computing and a large amount of CSI (channel state information) feedback in the FDD (frequency division duplexing) case. With SVD, the Channel matrix H is decomposed according to
H=UΛV
where U and V are unitary, and Λ is a diagonal matrix containing the eigenvalues. Typically, information defining V is fed back (although H could be fed back and the decomposition reexecuted at the transmitter). Then the transmitter sends V^{T}S, where S is the information vector. The receiver receives this, as modified by the channel, i.e.,
Ŝ=HV ^{T} S=UΛVV ^{T} S(+noise).
The receiver multiplies this by U^{1 }(conjugate transpose of U, known at the receiver) to yield
U^{1}ΛVV_{S} ^{T′}=ΛS
due to the properties of unitary matrices. The diagonal matrix Λ is also known at the receiver and S can then be recovered. Various methods of efficiently feeding back V or information allowing the transmitter to reconstruct V are given below.

[0188]
H can be further expressed as follows:
H=λ _{1} u _{1} v _{1}+λ_{2} u _{2} v _{2}+λ_{3} u _{3} v _{3}+λ_{4} u _{4} v _{4 }
the U matrix consists of columns equalling the vectors u1,u2,u3,u4 and the V matrix consists of rows equalling the vectors v1,v2,v3,v4 all the vectors being unitary.

[0189]
Thus, the matrix V^{T }used in the transmitter consists of a set of unitary vectors as columns, each associated with a respective eigenvalue. For example, a 4×4 matrix is [v1,v2,v3,v4] where v1,v2,v3,v4 are unitary vectors in columns of the matrix. Eigenmode selection involves setting one or more of the vectors in V to zero, typically the vectors associated with the weak eigenvalue(s). In some embodiments, eigenmode selection information is fed back to the receiver.

[0000]
Antenna Selection/Grouping

[0190]
Antenna selection/grouping is based on the selection of subset of antennae from a larger set of available antennas by the terminal based on a simple criterion. The terminal generally needs to feedback very little information to the base station, Mechanisms for transmitting this feedback information from the receiver to the transmitter have been presented above.

[0191]
Antenna grouping criterion can be based on determinant as described previously, Antenna grouping can also be based on an eigenvalue approach. This approach may avoid selection being dominated by weak layers. Typically degradation due to antenna selection is smaller when the group size is larger.

[0192]
For a MIMO system, the eigenvalues of the channel matrix are often unevenly distributed. Removing the layers associated with small eigenvalues will have little effects on channel capacity. With a reduced number of layers, more sophisticated MEMO decoders can be used to improve link performance. The power saved from layers that are not used for this a particular receiver can be used by other users on other subbands.
$C=10\sum _{i=1}^{M}\mathrm{lg}\left(1+\frac{P}{M\text{\hspace{1em}}{\beta}_{l}}\right)\u27f6{\beta}_{l}={\sigma}^{2}\sum _{i=1}^{M}\left(\frac{{v}_{\mathrm{ij}}^{2}}{{\lambda}_{j}}\right)\u27f6C=10\sum _{i=1}^{M1}\mathrm{lg}\left(1+\frac{P}{M}\frac{{\lambda}_{i}}{{\sigma}^{2}}\right)$
This expression is for the channel capacity. It can be seen that larger lambdas make a larger contribution to the channel capacity. While a default would be to assign equal power to all eigenvalues, in another embodiment, water filling according to eigenvalue is performed, and/or some eigenvalues are not used at all.

[0193]
The V matrix of an SVD decomposed channel matrix consists of a set of horizontal vectors each of which are multiplied by a respective eigenvalue in the product UDV. In the transmitter, through the use of a beamforming matrix V^{T }a respective stream can be transmitted in association with each eigenvalue/column of V^{T}=row of V. Thus, if V^{T}=[v1,v2,v3,v4], then what is transmitted can be expressed as v1×s1+v2×s2+v3×s3×v4×s4 for a 4×4 system. Transmission using such a vector will be referred to as an “eigenmode”. Different AMC can be applied in the transmitter for each such eigenmode. For example, in a 4×4 system, there will be 4 eigenvalues, and four beamforming vectors each for use with a respective stream. In the event water filling is employed, the power allocated to the streams is not equal, and in some cases one or more of the layers is simply not used at all, and the power that would have been used for that stream is available for the other layers. Feedback in such systems can consist of an index of the eigenmodes to employ, with the remaining eigenmodes shutdown, and/or with channel quality readings for some or all of the selected eigenmodes. In some embodiments, the channel quality defines an associated AMC for use on the eigenmode at the transmitter.

[0194]
These two approaches are summarized in FIG. 33 for the SVD approach showing the discarding of weak eigenmodes, and FIG. 34 showing deselected antennas turned off/not used for the particular user. The simulation results of FIGS. 35 and 36 show that antenna grouping can achieve very close to SVD performance with significantly lower complexity.

[0195]
SVD generally provides optimal performance when adaptive modulation and coding (AMC) can be performed on each individual layer. When AMC is not layer based, the performance difference is generally smaller due to imbalanced layer SNR distribution. Preferably, therefore, AMC is implemented on per layer basis.

[0196]
In some embodiments, when SVD is used the 4th layer can generally be eliminated meaning only 3 columns of the Vmatrix generally need to be fed back to the transmitter. In systems with larger numbers of antennas, it may be possible to eliminate more layers.

[0000]
Antenna Grouping Algorithms

[0197]
Various antenna grouping algorithms will now be described. Any of these can be employed on a per subcarrier, per block of subcarriers, per group of blocks of subcarriers or for an entire OFDM band. They can be applied for a single or multiple user system.

[0000]
Selection Between STTD and SM

[0198]
An antenna grouping algorithm in accordance with an embodiment of the invention will now be described. With channel estimates from the pilots: the receiver computes criterion for use in selecting between STTD and SM transmission modes as follows, where if the STTD criteria is greater than the SM criteria, then STTD transmission is employed and alternatively, SM is employed. Other criteria can be used.
$\begin{array}{cc}\mathrm{STTD}& \mathrm{SM}\end{array}$
$\sum _{i=1}^{N}\sum _{j=1}^{M}{\uf603{h}_{\mathrm{ij}}\uf604}^{2}>\frac{{{\gamma}_{0}^{M1}}^{2}}{\prod _{i=1}^{M}{\uf605{g}_{i}\uf606}^{2}}\text{\hspace{1em}}\mathrm{where}\text{\hspace{1em}}{\gamma}_{0}=\frac{P}{M\text{\hspace{1em}}{\sigma}^{2}}$
and g_{i }is the row of matrix G, where G=(H′H)^{−1 }H′, and H is the channel matrix. For a MISO arrangement the weights may be provided as follows:
$\begin{array}{cc}\mathrm{Beam}\text{}\mathrm{forming}& \gamma =\frac{1}{{\sigma}^{2}}\sum _{i=1}^{N}{\uf603{h}_{l}\uf604}^{2}\\ \mathrm{Antenna}\text{\hspace{1em}}\mathrm{selection}& \gamma =\frac{1}{{\sigma}^{2}}\mathrm{max}\left\{{\uf603{h}_{1}\uf604}^{2},{\uf603{h}_{2}\uf604}^{2},\dots \text{\hspace{1em}},{\uf603{h}_{N}\uf604}^{2}\right\}\\ \mathrm{STTD}& \gamma =\frac{1}{N\text{\hspace{1em}}{\sigma}^{2}}\sum _{i=1}^{N}{\uf603{h}_{l}\uf604}^{2}\end{array}$

[0199]
According to another embodiment one may exploit the benefits of both. For example, when a channel changes slowly, beamforming provides a SNR gain, while STTD provides diversity gain (on the symbol level) which improves FEC performance (especially for higher code rates). Then, when a channel changes quickly one can degenerate to an STTD system which will preserve protection against fading.

[0000]
Antenna Selection for STTD

[0200]
An antenna grouping algorithm in accordance with an embodiment of the invention will now be described for an STTD mode. The antenna group selection can be based on criterion including the following:
${\mathrm{SS}}_{\mathrm{STTD}}=\underset{\mathrm{SS}}{\text{arg}\mathrm{max}}\sum _{l=1}^{N}\sum _{j=1}^{{M}_{\mathrm{SS}}}{\uf603{h}_{\mathrm{ij}}\uf604}^{2}$
Antenna Selection for SM

[0201]
For the SM mode, the antenna group selection can be based on criterion including the following:
${\mathrm{SS}}_{V\text{}\mathrm{BLAST}}=\underset{\mathrm{SS}}{\text{arg}\mathrm{min}}\prod _{l=1}^{{M}_{\mathrm{SS}}}{\uf605{g}_{i}\uf606}^{2}$
Antenna Selection for STTD, SM, and Switching Criterion

[0202]
An antenna grouping algorithm in accordance with an embodiment of the invention will now be described. For the STTD mode, in accordance with an embodiment of the invention, define
${\xi}_{j}=\sum _{l=1}^{N}{\uf603{h}_{\mathrm{ij}}\uf604}^{2}$
and select a set of antennas according to:
${L}_{K}=\underset{j\in \left\{M\right\}}{\text{arg}\mathrm{min}}\left({\xi}_{j}\right)$
And wherein transmission on an antenna is stopped when:
L_{l}<αL_{K }
In accordance with embodiment of the invention, for the SM mode, if
$Q=\frac{{\lambda}_{\mathrm{max}}}{{\lambda}_{\mathrm{min}}}\ge \beta $
then a new subset of antennas then can be selected according to criterion including maximum determinant criterion:
S _{a}=arg max(det(H _{a} ′H _{a}))
where H_{a }is the channel matrix of the new subMIMO size, and α and β are predefined thresholds, and where λ_{max }and λ_{min }are the largest and smallest eigenvalues respectively.

[0203]
The following is a particular example of an antenna grouping procedure:

[0000]
Step 1: Decide antenna group size for STTD and SM mode;

[0000]
Step 2: Selecttransmit antenna subsets based on selected size;

[0000]
Step 3: Decide transmit rode: STTD vs. SM;

[0000]
Step 4: If SM is selected and the antenna group size is larger than SM layers, then use Matrix B, otherwise, use Matrix C.

[0000]
MultiUser PreCoding

[0204]
A multiuser precoding algorithm in accordance with an embodiment of the invention will now be described. Consider a MIMO broadcast channel transmit antennas to transmit to K users each with N receive antennas. The base band model of this system is defined by:
y _{k} =H _{k} s+w _{h }1≦k≦K
where H_{k}εC^{N×M }denotes the channel matrix from the base station to the k^{th }user, sεC^{M×1 }represents the transmitted vector, and y_{k}εC^{N×1 }signifies received vector by the k^{th }user. The vector w_{k}εC^{N×1 }is white Gaussian noise with zeromean and unitvariance.

[0205]
In the proposed methods the transmitted vector a carries information for M users, defined as follows.
$s=\sum _{j=1}^{M}{\sigma}_{\pi \left(j\right)}{w}_{\pi \left(j\right)}$
where π(j), π(j), j=1 . . . M are the indexes of a subset of users socalled active user v_{π(j)}εC^{M×1}, j=1 . . . M are a set of orthogonal vectors, and d_{π(j) }includes information for the user π(j). In addition, dirtypaper precoding is used on top of the system such that if i>j, the interference of the user π(i) over user π(j) is zero.

[0206]
For demodulation, the user π(j) multiplies the received vector to a normal vector u′_{π(j) }where (.)′ denotes transpose conjugate operation. In the next section, we specify a method to select the set of active users, modulation vectors v_{π(j)}, and demodulation vectors u_{π(j) }for j=1 . . . M.

[0000]
Determination of the Active Users, Modulation, and Demodulation Vectors

[0207]
In this part, it is assumed that the channel state information is available at the transmitter. Later, this algorithm is modified such that only partial channel state information is required.

[0208]
Each stage of the algorithm includes two optimizing operations. First, for each user, finding a direction in which that user has maximum gain. Second, selecting the best user in terms of the larger gain. This optimization is performed in the null space of the former selected coordinates. In the following, the proposed algorithm is presented.

[0000]
1) Set j=1 and the condition matrix G_{eq}=O_{M×M}.

[0000]
2) Find σ^{2} _{π(j) }where
σ^{2} _{π(j)}=max_{r}max_{x} x′H _{r} H′ _{r} x
x′x=1
G_{eq}x=0
set π(j) and v_{π(j) }to be equal to the optimizing parameter r and x, respectively.
3) Set
${u}_{\pi \left(j\right)}=\frac{1}{{\sigma}_{\pi \left(j\right)}}{H}_{\pi \left(j\right)}{v}_{\pi \left(j\right)}$
4) Set g_{j}=v_{π(j)}, where g_{j }is the j^{th }column of the matrix G_{eq}.
5) j←j+1. If j≦M go to step two, otherwise stop.
Modified Algorithm

[0209]
As it has been mentioned before, in this algorithm, a major part of the processing can be accomplished at the receivers. Therefore the perfect channel state information is not required at the transmitter which results a significant decreasing in the rate of feedback.

[0000]
1) Set j=1 and G_{eq}=Q_{M×M}.

[0000]
2) each user calculates σ^{2} _{r}(j), defined as follows:
σ^{2} _{r(j)}max_{x} x′H _{r} H′ _{r} x
x′x=1
G_{eq}x=0
v_{r(j) }represents the optimizing parameter x.
3) Each user calculates
${u}_{r\left(j\right)}=\frac{1}{{\sigma}_{r\left(j\right)}}{H}_{r}{v}_{r\left(j\right)}$
4) Each user sends σ^{2} _{r(j) }and V_{r(j) }to the base station, if σ_{r(j)} ^{2}≧th(j). th(j) is a threshold which is predetermined by the base station.
5) Base station selects the user with the largest σ^{2} _{r(j)}. Let π(j) be the index of the selected user. The corresponding gain and coordinate of that user. The corresponding gain and coordinate of that user are σ^{2} _{π(j) }and v_{π(j)}, respectively.
6) The π(j)^{th }user sends U_{π(j)}H_{π(j)}w_{π(j) }i=1 . . . i−1 to the base station.
7) Base station send v_{π(j) }to all users. All include v_{π(j) }in G_{eq }as the j^{th }column.
8) j←j+1. If j≦M go to step two, otherwise stop.
Feedback MIMO Channel and CQI Separately

[0210]
Referring now to FIG. 37, shown is a block diagram of a system in which MIMO channel information for use in performing beamforming, and MIMO/STC setup information are separately fed back in accordance with an embodiment of the invention. In the illustrated example, the MIMO/STC setup information is fed back on a CQICH (channel quality indication) feedback channel, various permutations of which are available in existing standards definitions, but it is to be understood that in this and the other examples that follow, any appropriate physical/logical channel can be employed to feed back the MIMO/STC setup information as required.

[0211]
At the transmitter, there is a transmit beamformer 202 that uses matrix V^{T }this being the transpose of the matrix v in the singular value decomposition of the channel H. The output of the beamformer is transmitted on M transmit antennas 204. This is received at the receiver by N receive antennas 206, and the MIMO channel H is measured as indicated at 208. There are many existing methods of measuring the channel. This may for example be done using pilot symbols transmitted at known locations in time and/or frequency, possibly using one of the formats introduced previously and performing interpolation if necessary. This may include receiver specific pilots and or generic pilots. Next, block 212 performs a singular value decomposition of the channel matrix H into the matrix product UDV where U and V are unitary matrices and D is a diagonal matrix containing the eigenvalues.

[0212]
At 220, AMC/eigen assignment according to according to eigenvalue is performed for any appropriate frequency resolution, for example for a given subchannel. A subchannel may for example be a contiguous block of subcarriers that have substantially the same eigenvectors/eigenvalues, As discussed previously, weak eigenmodes can be discarded. In some embodiments, all that needs to be fed back is an index of the eigenmodes that are to be used. Then, the receiver, after it reconstructs the H or V matrix from the fed back channel information, can reconstruct the eigenmodes, and use each eigenmode for a respective stream. This information is then sent back to the transmitter on the CQI feedback channel 222 or using some other mechanism.

[0213]
For the channel information, preferably the difference between the new channel matrix H and the previous channel matrix E is measured and a differential is determined between the two most recent channel matrices. This amount is encoded at 210 and transmitted back to the receiver on the MIMO feedback channel 214. Advantageously, the differential of two consecutive channel matrices will have a significantly smaller dynamic range than would the actual channel matrix H or V matrix. This enables the MIMO feedback channel 214 to use fewer bits to transmit back effectively the same amount of channel information.

[0214]
At the transmitter, the channel matrix H is reconstructed at 216 using the fed back channel differential and the previous channel matrix H. Singular value decomposition is performed at 218 to recover the V matrix component of the channel matrix H, and the transpose of this matrix is then used in the beamformer 202. Furthermore, the CQI feedback channel 222 feeds into the per stream AMC function 200 that performs adaptive modulation of coding on each stream using the channel quality information as sent back from the receiver. In the abovedescribed embodiment, a differential of the channel matrix H is fed back. Equivalently, the unitary matrix V or a differential of the unitary matrix V could be fed back. Various detailed methods of feeding back the channel matrix or the unitary matrix V are provided below.

[0215]
The embodiment of FIG. 37 and the other embodiments described generalize to an arbitrary number of transmit antennas and receive antennas. While a particular arrangement of components are shown for each of the various embodiments, it is to be understood that the functionality of these components can be combined or separated differently than shown on an implementation specific basis. Furthermore, FIG. 37 can be thought of representing either a system or a method.

[0000]
Feedback MIMO Channel and CQI Jointly

[0216]
Referring now to FIG. 3B, shown is a system example in which the MIMO channel and the CQI are jointly fed back in accordance with an embodiment of the invention. Shown in the transmit side is a per stream AMC and beamformer V^{T } 240 that has outputs connected to M transmit antennas 242. On the receive side, there are N receive antennas 244 and there is a function that measures the MIMO channel H at 246. The MIMO channel H is differentially encoded at 248. The receiver has knowledge of a set of possible differentially encoded H (or v in which case SVD decomposition is performed at 250) matrices, for example 64 different differential matrices. The receiver determines the candidate differential H matrix that is closest to the actual differential. Each possible H matrix has an associated predetermined adaptive modulation and coding and an associated index. Therefore, by simply feeding back the index from the receiver to the transmitter, the transmitter can determine the proper beamformer V^{T}, and the appropriate per stream adaptive modulation and coding to perform. The transmitter then reconstructs N at 254 and performs singular value decomposition at 256 to recover the unitary matrix V which is then used in the beamformer step. Note that while the illustrated embodiment shows H being differentially encoded and fed back, equivalently the unitary matrix could be differentially encoded and fed back.

[0000]
Differential Scalar Quantizer—Element by Element Quantization

[0217]
The two abovedescribed embodiments employ the feedback of differentials in either the channel matrix H or the unitary matrix V. FIG. 39 shows a block diagram of an example of a differential scalar quantizer that can be used to feedback quantized differentials. In FIG. 39, the input 260 is the new value that needs to be quantized. This can be element in a channel matrix or a unitary matrix for example. Every k frames, this amount is passed through the scalar quantizer 262 and on to the feedback channel 264. This means that every k frames, the receiver feeds back the actual value as opposed to the differential value. This avoids the potential problem of drift that can occur over time due to ongoing differential quantization. For the remaining frames, quantization is performed. In the illustrated example, this consists of +1, −1 quantization 266. The quantization is performed on the basis of a difference between the current input 260 and the “previous input” 268 by difference function 270. The previous input is maintained by updating the value with the actual value every k frames in accumulator 272 and then applying any plus or minus quantizations as determined at the output of the +1, −1 quantizer 266 and storing the result in a delay element 274.

[0218]
While the illustrated example uses +1, −1 quantization, this requiring one bit per element to be transmitted on the feedback channel 264, higher resolution quantization could alternatively be employed. Furthermore, some embodiments may not necessarily feature the scalar quantization step. Note that for a 4×4 channel matrix, each channel element is complex and therefore has an I and Q component. Therefore, to feedback quantized information for a 2×2 channel matrix requires eight bits, two bits per channel element, one bit per I and Q components,

[0000]
ΔΣ Modulation 1bit Quantizer

[0219]
In accordance with another referred embodiment of the invention a ΔΣ modulator 1bit quantizer is employed to determine the information to be fed back. An example of a 1^{st}order ΔΣ modulation encoder is shown in FIG. 40. Referring to FIG. 40, a new channel measurement is input at 280. This might for example be a C/I measurement for a particular channel element. An offset is applied at 282 so as to move the dynamic range of the channel measurement within the range of the ΔΣ signal modulator that follows. A limiter 286 is also shown that limits the dynamic range of the input to prevent ΔΣ overflow. A given implementation may not include either of the offset and limiter features or may include just one of them or both of them as illustrated. The input level is often less than the quantizer step size Δ and hence is denoted by αΔ where α<1 dependent on ΔΣ type. A dither signal may also be applied 289 to the 1^{st}order ΔΣ modulator input to eliminate the limit cycle inherent in the 1^{st}order modulators and in this instance is a sequence (Δ/8, −Δ/8). The remainder of the encoder is a classical ΔΣ modulators with the exception there are no delays in the signal paths, Once again, the output per I or Q component of a channel matrix is a plus or minus one. Again, different resolutions can be implemented if a given application needs the higher resolution. Furthermore, ΔΣ modulation can more generally be applied to any parameter for which feedback is to be implemented.

[0000]
MultiUser Differential Feedback

[0220]
FIG. 41 shows an example of a system that employs differential encoding of the channel matrix H from multiple receivers. This is simply an example to show that for the most part any of the examples given herein can be adapted for use with multiple users. With this example, there are two users each having a respective pair of antennas 300,302. Each user performs a channel measurement 304,306 respectively and differential encoding of the channel matrix 308,310. The channel information is then fed back to the transmitter where a per stream AMC and beamforming is performed as indicated at 314. It is noted that the feedback channel from the users typically has limited capacity. This may be a dedicated channel for each user, or may be a channel that is shared across users in a scheduled fashion.

[0221]
The differential encoder output may be grouped together to map to the existing CQI feedback channel or MIMO feedback channel.

[0000]
Givens Feedback

[0222]
In another embodiment of the invention, the V matrix determined through singular value decomposition is fed back from the receiver to the transmitter using Givens feedback. Unitary matrices have the property that they can be decomposed into a product of Givens matrices. In particular, an n×n V matrix can be decomposed into Givens matrices containing n^{2}−n complex parameters. The parameters can be fed back directly, or differentially and/or quantized to potentially reduce the amount of feedback required. Then, at the transmitter, the Givens matrices can be reconstructed, and then the V matrix reconstructed as the product of the reconstructed Givens matrices.

[0223]
An example of a system employing Givens feedback is shown FIG. 43. Shown is a transmit beamformer 320 with transmit antennas 322. At the receiver, receive antennas 324 receive signals, and the channel measurement is performed at 326. This produces the channel matrix which is then SVD decomposed at 328. Next, the V matrix is decomposed by the Givens transform 330 to produce a series of matrices G_{1}, G_{2}, . . . , the number of matrices being required being a function of the size of the channel matrix. Each such Givens matrix can then be uniquely represented by two parameters θ and C. These parameters are selected at 332 and differentially quantized at 334.

[0224]
Then, the quantized parameters θ and C are fed back over the MIMO feedback channel 336, this requiring two parameters to be sent back for each Givens matrix. At the transmitter, the fed back parameters θ and C are reconstructed at 338, and then the beamforming matrix V is reconstructed by determining the product of the Givens matrices generated using the reconstructed parameters, at 340. Finally, the transpose of the matrix V is used by the beamformer 320. The parameters may be directly fed back or differentially fed back.

[0225]
Preferably, at the same time AMC/eigen assignment is performed on the basis of eigenvalues of the channel matrix of the SVD composition performed at 328 as described previously. This step is indicated at 332. The AMC/eigen assignment information is fed back over the CQI channel at 342. This information is fed back to the transmitter where per stream AMC is performed is indicated at 344.

[0226]
Advantageously, for V matrix feedback, the base station is able to verify the integrity of the received matrix V by exploiting the orthogonality of the matrix.

[0227]
By decomposing the SVDbased unitary V matrix into Givens matrices, the V matrix can be represented by n^{2}−n independent complex parameters.

[0228]
In accordance with an embodiment of the invention, 2(n^{2}−n) bits (one bit for I and Q of each parameter) are used for the differential quantization of the unitary V matrix, although other methods of feeding back the parameters can be used.

[0229]
In accordance with this embodiment an n stream CQI channel may also be used, preferably 4 bits each. Combining the Given's feedback and the CQI yields the total amount for the unitary matrix feedback of 2n^{2}+2n bits. However, for the direct differential encoding approach the total feedback used is 2n^{2 }including the CQI information, since it is embedded in H. FIG. 42 shows an example set of feedback requirements for N by N MIMO systems, in which a comparison is made between the number of bits fed back for the unitary matrix, fed back using Givens feedback and CQI channel information, as opposed to the direct H matrix feedback. It can be seen that the complexity becomes increasingly comparable as a number of transmit antennas increases.

[0000]
2Antenna Givens Transform

[0230]
The following is an SVD based Givens transform algorithm in accordance with an embodiment of the invention suitable for 2Transmit Antennas. With 2antenna Givens transformation, 2^{2}−2=2 complex parameters are required to feedback the V matrix. There are multiple known formats for Given transformations any of which can be used. The Givens rotation for 2 transmit antennas (FormatA) includes:
$G=\left[\begin{array}{cc}\hat{c}& \uf603\hat{s}\uf604{e}^{j\hat{\theta}}\\ \uf603\hat{s}\uf604{e}^{j\hat{\theta}}& \hat{c}\end{array}\right]$
The parameter space includes θ={−π+π} and c={0,1} s−(1−c^{2})^{1/2}.

[0231]
An alternative format is the following Givens rotation for 2 transmit antenna (FormatB) that takes the form:
$G=\left[\begin{array}{cc}\mathrm{cos}\left(\eta \right)& {e}^{\mathrm{j\theta}}\mathrm{sin}\left(\eta \right)\\ {e}^{\mathrm{j\theta}}\mathrm{sin}\left(\eta \right)& \mathrm{cos}\left(\eta \right)\end{array}\right]$

[0232]
The parameter space includes π={−π+π} and η={−π+π}

[0000]
3Antenna Givens Transform

[0233]
An SVD based Givens transform algorithm in accordance with an embodiment of the invention will now be described for 3Transmit Antennas. With 3antenna Givens transforms, n^{2}−n=6 complex parameters can be used to completely represent the V matrix. These can be represented in the following Givens rotation for 3 transmit antenna (FormatA) includes G=G_{1}G_{2}G_{3 }represented as follows where each of the three matrices has a respective parameter c (c_{1}, c_{2}, c_{3}) and s (θ_{1}, θ_{2}, θ_{3}) which differs between the three matrices although this is not shown.
$G=\left[\begin{array}{ccc}c& s& 0\\ {s}^{*}& c& 0\\ 0& 0& 1\end{array}\right]\left[\begin{array}{ccc}c& 0& s\\ 0& 1& 0\\ {s}^{*}& 0& c\end{array}\right]\left[\begin{array}{ccc}1& 0& 0\\ 0& c& s\\ 0& {s}^{*}& c\end{array}\right]$

[0234]
The parameter space includes
θ_{1}{−π,+π} and c_{1}={0,1} for G_{1 }
θ_{2}{−π,+π} and c_{2}={0,1} for G_{2 }
θ_{3}{−π,+π} and c_{3}={0,1} for G_{3 }
Preferably, these are quantized as follows:
θ_{1}→2 bit and c_{1}→1 bit
θ_{2}→2 bit and c_{2}→1 bit
θ_{3}→2 bit and c_{3}→1 bit

[0235]
It can be seen in the above example, the quantization performed for the parameter θ is more precise than that performed for the parameter C. It is generally the case that different quantization accuracies may be performed for the different parameters being fed back using given speed back. Through experimentation, it has been found that acceptable performance can be achieved with a less accurate C parameter. In some embodiments described below, certain C parameters can be ignored.

[0000]
4Antenna Givens Transform

[0236]
An SVD based Givens transform SQ algorithm in accordance with an embodiment of the invention will now be described for 4Transmit Antennas. 4antenna Givens transformation requires 4^{2}−412 complex parameters. These can be represented in the Givens rotation for 4 transmit antenna (FormatA) as G=G_{1}G_{2}G_{3}G_{4}G_{5}G_{6 }represented as follows where each of the six matrices has a respective parameter c (c_{1}, c_{2}, c_{3}, c_{4}, c_{5}, c_{6}) and s (θ_{1}, θ_{2}, θ_{3}, θ_{4}, θ_{5}, θ_{6}):
$G=\left[\begin{array}{cccc}c& s& 0& 0\\ {s}^{*}& c& 0& 0\\ 0& 0& 1& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& s& 0\\ 0& 1& 0& 0\\ {s}^{*}& 0& c& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& 0& s\\ 0& 1& 0& 0\\ 0& 0& 1& 0\\ {s}^{*}& 0& 0& c\end{array}\right]\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& c& s& 0\\ 0& {s}^{*}& c& 0\\ 0& 0& 0& 1\end{array}\right]\hspace{1em}\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& c& 0& s\\ 0& 0& 1& 0\\ 0& {s}^{*}& 0& c\end{array}\right]\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& 1& 0& 0\\ 0& 0& c& s\\ 0& 0& {s}^{*}& c\end{array}\right]$
The parameter space includes
θ_{1}={−π+π} and c_{1}={0,1} for G_{1 }
θ_{2}={−π+π} and c_{2}={0,1} for G_{2 }
θ_{3}={−π+π} and C_{3}={0,1} for G_{3 }
θ_{4}={−π+π} and C_{4}={0,1} for G_{1 }
θ_{5}={−π+π} and C_{5}={0,1} for G_{2 }
θ_{6}={−π+π} and C_{6}={0,1} for G_{3 }
The scalar quantizers can be implemented as follows;
θ_{1}→2 bit and c_{1}→1 bit
θ_{2}→2 bit and c_{2}→1 bit
θ_{3}→2 bit and c_{3}→1 bit
θ_{4}→2 bit and c_{4}→1 bit
θ_{5}→2 bit and c_{5}→1 bit
θ_{6}→2 bit and c_{6}→1 bit
Givens Transform—General Case

[0237]
An SVD based Givens transform algorithm in accordance with an embodiment of the invention will now be described for nTransmit Antennas. The Givens rotation for n transmit antennas (FormatA) includes:
$V=\prod _{k=1}^{n1}\prod _{i=1}^{nk}G\left(k,i\right)$
$G\left(k,i\right)=\left[\begin{array}{ccccccc}1& \cdots & 0& \cdots & 0& \cdots & 0\\ \vdots & \u22f0& \vdots & \u22f0& \vdots & \u22f0& \vdots \\ 0& \cdots & c& \cdots & s& \cdots & 0\\ \vdots & \u22f0& \vdots & \u22f0& \vdots & \u22f0& \vdots \\ 0& \cdots & {s}^{*}& \cdots & c& \cdots & 0\\ \vdots & \u22f0& \vdots & \u22f0& \vdots & \u22f0& \vdots \\ 0& \cdots & 0& \cdots & 0& \cdots & 1\end{array}\right]$
Preferably, scalar quantization is performed for each of the parameters as discussed previously.
Truncation of Givens Expansion

[0238]
An SVD based Givens transform algorithm in accordance with an embodiment of the invention will now be described that employs truncation of the Givens expansion. Preferably, weak eigenmodes may be discarded with application of water filling in the eigen domain. Each Given matrix is associated with one or more eigenmodes and respective eigenvalue. As such, if a given weak eigenvalue is to be discarded, then the associated Givens matrices can be discarded. In the receiver, the V matrix is regenerated, and then only the selected eigenmodes used to transmit streams as in the above example for eigenmodes selection.

[0239]
For example, where the full Givens expansion for the 3×3 case is as follows:
$G=\left[\begin{array}{ccc}c& s& 0\\ {s}^{*}& c& 0\\ 0& 0& 1\end{array}\right]\left[\begin{array}{ccc}c& 0& s\\ 0& 1& 0\\ {s}^{*}& 0& c\end{array}\right]\left[\begin{array}{ccc}1& 0& 0\\ 0& c& s\\ 0& {s}^{*}& c\end{array}\right]$
this can be truncated by dropping the “weakest” eigenmode. For example if the third matrix corresponds to the weakest eigenmode, the truncated expansion is:
$G=\left[\begin{array}{ccc}c& s& 0\\ {s}^{*}& c& 0\\ 0& 0& 1\end{array}\right]\left[\begin{array}{ccc}c& 0& s\\ 0& 1& 0\\ {s}^{*}& 0& c\end{array}\right]$
The full expansion above corresponds to all three eigenvectors of the channel. In contrast, the truncated expansion corresponds to only a single eigenvector. The correspondence of eigenvector to Givens matrices is a known math property of Givens expansions.

[0240]
The following is another example of truncation of Givens expansion for a 4antenna case. The Givens expansion for eigenvector #1 of a 4×4 channel matrix is as follows:
$G=\left[\begin{array}{cccc}c& s& 0& 0\\ {s}^{*}& c& 0& 0\\ 0& 0& 1& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& s& 0\\ 0& 1& 0& 0\\ {s}^{*}& 0& c& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& 0& s\\ 0& 1& 0& 0\\ 0& 0& 1& 0\\ {s}^{*}& 0& 0& c\end{array}\right]$
The Givens expansion for eigenvectors 1 and 2 for a 4×4 system is as follows:
$G=\left[\begin{array}{cccc}c& s& 0& 0\\ {s}^{*}& c& 0& 0\\ 0& 0& 1& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& s& 0\\ 0& 1& 0& 0\\ {s}^{*}& 0& c& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& 0& s\\ 0& 1& 0& 0\\ 0& 0& 1& 0\\ {s}^{*}& 0& 0& c\end{array}\right]\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& c& s& 0\\ 0& {s}^{*}& c& 0\\ 0& 0& 0& 1\end{array}\right]\hspace{1em}\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& c& 0& s\\ 0& 0& 1& 0\\ 0& {s}^{*}& 0& c\end{array}\right]$
The Givens expansion for all four eigenvectors of the 4×4 system is as follows:
$G=\left[\begin{array}{cccc}c& s& 0& 0\\ {s}^{*}& c& 0& 0\\ 0& 0& 1& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& s& 0\\ 0& 1& 0& 0\\ {s}^{*}& 0& c& 0\\ 0& 0& 0& 1\end{array}\right]\left[\begin{array}{cccc}c& 0& 0& s\\ 0& 1& 0& 0\\ 0& 0& 1& 0\\ {s}^{*}& 0& 0& c\end{array}\right]\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& c& s& 0\\ 0& {s}^{*}& c& 0\\ 0& 0& 0& 1\end{array}\right]\hspace{1em}\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& c& 0& s\\ 0& 0& 1& 0\\ 0& {s}^{*}& 0& c\end{array}\right]\left[\begin{array}{cccc}1& 0& 0& 0\\ 0& 1& 0& 0\\ 0& 0& c& s\\ 0& 0& {s}^{*}& c\end{array}\right]$

[0241]
It can be seen that discarding two eigenmodes reduces the Givens expansion by one of the six matrices while discarding three of the four eigenmodes will reduce the Givens expansion by three of the six matrices. Given that each matrix requires two parameters to be fed back, a corresponding reduction in the quantity of feedback information that needs to be transmitted is realized. Generally, it can be seen that in an arbitrary n×n case, a Givens expansion can be employed, and the amount of feedback can be optionally reduced by discarding one or more eigenmodes.

[0000]
Bit Allocation for Givens Feedback—Full Scalar Quantization

[0242]
An SVD based Givens transform algorithm in accordance with an embodiment of the invention will now be described in which full scalar quantization is performed. As discussed above, it can be advantageous to use different quantizations for the various parameters being fed back using Givens feedback. Based on the precoding QoS requirement, the bit allocation may provide a tradeoff between performance and feedback penalty.

[0243]
For the Givens parameter in FormatA, θ is uniformly distributed resulting in more bits being needed for accurate feedback, whereas C is nonuniformly distributed resulting in less bits being needed. In some implementations, some C have only minimum impact on performance and can be treated as constant without a substantial performance penalty.

[0244]
Using a LloydMAX quantizer the following bit allocations can be employed to realize a full scalar quantizer.
 
 
 # of Transmit Antennas 
 2  3  4 
 Givens matrix 
 G1  G1  G2  G3  G1  G2  G3  G4  G5  G6 
 
Bits to represent  2  2  2  2  2  2  2  2  2  2 
theta 
Bits to represent C  2  1  1  1  1  1  1  1  1  1 
Total bit allocation  4  3  3  3  3  3  3  3  3  3 
to Givens 

Bit Allocation for Givens Feedback  Partial Scalar Quantization 

[0245]
An SVD based Givens transform algorithm in accordance with an embodiment of the invention will now be described in which partial scalar quantization is performed. With partial scalar quantization, a differential is not fed back for each and every parameter. In an example solution, a 1 bit or 0 bit is used for each parameter c and a differential 1bit is used for each parameter theta. Another approach includes using less bits or zero bits for the nonsignificant Givens parameters.

[0246]
The following is an example of bit allocation with partial scalar quantization for 2, 3 and 4 antennas. It can be seen that in a particular example, for the 3antenna case for example, the C parameter is only fed back for the first of three Givens matrices, and a three bit value is sent back for theta for the first of the three matrices, and a one bit differential is used for theta for the other two matrices. This has the potential of reducing the number of feedback bits required from nine bits from the full quantization example given above to five bits for the example in the table.
 
 
 # of transmit 
 2  3  4 
 Givens matrix 
 G1  G1  G2  G3  G1  G2  G3  G4  G5  G6 
 
Theta  2  2  1  1  2  2  1  1  1  1 
C  2  1  0  0  1  1  0  0  0  0 
Bit allocation to  4  3  1  1  3  3  1  1  1  1 
Givens 


[0247]
The following table shows an example set of feedback allocations for different MIMO configurations using Givens feedback with full scalar quantization versus partial scalar quantization with a 1bit differential for theta and 1bit for c. It can be seen that the savings in the number of bits required for feedback increase as the complexity of the MIMO configuration increases. Also shown in the table are the number of bits required for a Hausholder based feedback mechanism.
 
 
 MIMO CONFIGURATION 
 2x2  3x1  3x2  3x3  4x1  4x2  4x3  4x4 
 
#of spatial  2  1  2  3  1  2  3  4 
streams 
#of parameters  1  2  3  3  3  5  6  6 
Full Scalar  4  3  9  9  9  15  18  18 
1bit  2  2  6  6  6  10  12  12 
differential 
theta 
1bit for c 
Hausholder  4  4  9  9  11  11  15  15 


[0248]
The table below shows examples of the feedback allocations for various MIMO configurations comparing full scalar feedback to partial feedback in which a 1bit differential for theta is employed, and 1bit or zero bits are used for each c parameter. Again, the requirements for Hausholder feedback are also shown for the sake of comparison.
 
 
 MIMO Configuration 
 2x2  3x1  3x2  3x3  4x1  4x2  4x3  4x4 
 
#of spatial  2  1  2  3  1  2  3  4 
streams 
#of parameters  1  2  3  3  3  5  6  6 
Full Scalar  4  3  9  9  9  15  18  18 
1bit  2  2  4  4  5  7  9  9 
differential 
theta 
1bit or zero bit 
for c 
Hausholder  4  4  9  9  11  11  15  15 

Grassman Subspace Packing—Vector Quantization

[0249]
With scalar quantization, be it full scalar or partial scalar, each feedback element pertains to one parameter of interest. This parameter can be a Givens parameter, or a channel matrix parameter from H or V for example, or some other value. In another embodiment, vector quantization is performed, in which each element fed back represents a vector, either in absolute terms or differential terms, and in respect of a set of parameters of interest. Each potential state for the output of the vector quantization operation is represented by a code word identifier/index which is fed back, and used by the transmitter to look up the vector. The vectors thus looked up are then used to generate the beam former in the transmitter. The vector might be a vector of a channel matrix, a vector of a V matrix (this would be a unitary vector), or a set of Givens parameters for example.

[0250]
In one embodiment, an SVD based Givens transform vector quantization algorithm is provided that employs Grassmann Subspace Packing. However, other forms of vector quantization may alternatively be employed.

[0251]
Each individual Givens matrix is a unitary matrix. The product of Givens matrices is a unitary matrix. The partial product of two or more Givens matrices is a unitary matrix. After determining a truncated or full Givens expansion, the resulting of unitary matrix may be quantized by using Grassmann subspace packing (see for example D. J. Love, R. W. Heath Jr., and T. Strohmer, “Grassmannian Beamforming for MultipleInput MultipleOutput Wireless Systems,” IEEE Transactions on Information Theory, vol. 49, pp. 27352747, October 2003). In this case, the code book for quantization of a unitary matrix may be considered as subspace packing in a Grassmann manifold.

[0252]
Two codebooks that might be used include the uniform distributed Grassmann space, and Block circulant DFT, but other codebooks may alternatively be employed.

[0253]
An example of encoding using shape and gain quantizer according to an embodiment of the invention is shown in FIG. 44. The input to the shape and gain quantizer is a vector to be quantized. Preferably, this vector is a column of a unitary V matrix, but it may not necessarily be so. For example, it may be a set of Givens parameters that are not necessarily unitary, or a vector of the channel matrix H. The vector is normalized at 352. Please note however that this step is only required if the input is not a unit length vector. V should consist of unitary columns and rows and as such this step can be skipped if the input is a column/row of the V matrix. At step 356, shape quantization is performed. This involves determining from a codebook the closest codeword/vector in the codebook to the input vector. In the event the input vector is not unitary, the magnitude can be taken at 354 and this quantized with gain quantizer 358. Then, the shape and gain can be together fed back at 360. Once again, the gain quantization step is not needed if the input is unitary. For example, if a four element input vector is used, then a “codebook” of different four element vectors is developed to define the overall feedback space. The shape quantizer then determines which of the defined potential four element feedback vectors is closest to the input, and then all that needs to be fed back is the identity of this vector. This can then be looked up at the transmitter and used to regenerate the vector. In effect each vector is rounded off to the nearest vector in the code book. In a system in which there are 16 different codewords, the codeword can be uniquely identified by 4bits. Thus, each column of the V matrix could be represented by 4bits with this approach.

[0000]
Spherical Codebook Quantizer

[0254]
An SVD based Givens transform vector quantization algorithm in accordance with an embodiment of the invention will now be described that employs a Spherical Code Based Quantizer. This method begins with putting the Givens parameters into a vector and then encoding the vector using a spherical code based quantizer. The following steps are performed:
 1. Given k element vector form the vector X←R^{k }
 2. Compute g=X and S=X/g
 3. Use the gain codebook to quantize g as g
 4. Find i such that α_{i}=<sin−^{1}x_{k}<α_{i+1 }and compute
h _{i}(s)=X/∥X∥(∥ X _{L} ^{j} ∥−∥X _{L} −X∥)
 5. Find the nearest neighborhood h _{i}(S) to h_{i}(S)
 6. Compute h_{i} ^{−1}(h_{i}(S)) to identify the quantized shape S
 7. Compute the index gS and transmit
In accordance with an embodiment, Leech Lattice is used as a codebook. Alternatively, a trelliscoded quantizer can also be employed.
Feedback Setup Using Receiver Criteria

[0262]
A receiver based Givens transform in accordance with an embodiment of the invention will now be described in which search criteria axe established in the receiver.

 In accordance with this embodiment of the invention channel filling is based on criteria including the receiver criteria. Based on the QoS requirements, the receiver determines the minimum feedback needed adaptively. The process may include the following:

[0264]
determining the Givens truncation level;

[0265]
based on the Scalar quantizer structure assigning parameter values; and/or

[0266]
performing combinatorial searches of combinations.
One example search criterion may include receiver MSE. Others may include Max SNR, Max Shannon capacity, or True receiver operational process defining as follows:
${l}^{\mathrm{opt}}=\text{arg}\underset{l\in \left\{1,2,\text{\hspace{1em}}\dots \text{\hspace{1em}},L\right\}}{\mathrm{min}}\mathrm{MSE}\left\{\frac{{E}_{s}}{{N}_{o}}{\mathrm{tr}\left({I}_{M}+\frac{{E}_{s}}{{N}_{o}{N}_{r}}{P}_{l}^{H}{H}^{H}{\mathrm{HP}}_{l}\right)}^{1}\right\}$

[0267]
Based on the receiver criterion, exhaustive search the code book and maximize the given received based criterion to determine the best precode matrix. These equations represent exhaustively computing beamforming weights to see which one is the best for a given criteria.
$\begin{array}{c}{\mathrm{SNR}}_{n,i}^{r}={\left({h}_{n,i}^{r}\right)}^{H}{\left({{h}_{n,l}^{r}\left({h}_{n,l}^{r}\right)}^{H}+{\sigma}^{2}I\right)}^{l}{h}_{n,i}^{r}i,j=2,i\ne j\\ {V}_{n}^{\mathrm{opt}}=\mathrm{arg}\text{\hspace{1em}}\underset{l}{\mathrm{max}}\left(\underset{i}{\mathrm{max}}\left({\mathrm{SNR}}_{n,i}^{r}\right)\right)\end{array}$

[0268]
Referring now to FIG. 45, shown is an example of a system in which the receiver sets up criteria for searching. Much of this example is similar to the Givens feedback system of described above, and this material in common will not be repeated. After constructing the Givens matrices at 328, the set up receiver criteria 360 are used to search for a minimum. Examples of receiver criteria have been set out above, but other examples can alternatively be employed. The searching involves performing hypotheses testing against a set or dictionary of theta, c permutations 362 using the search minimum step 364. Once the minimum has been found, the parameters representing the minimum are selected at 366 and fed back on the MTMO channel 336 as before.

[0269]
In any of the examples above, the Givens decomposition can be computed using any appropriate method. Iterative approaches may for example be employed such as Cholsky factorization and reverse order multiplication. These methods are known in the art and will not be described further here. It is noted that Givens decomposition is about 10% of the complexity of SVD computing complexity. This can be seen from the following table comparing the complexity of SVD versus Givens as a function of the number of transmit antennas, and the complexity is measured in terms of multiply and add operations.
 
 
 COMPLEXITY 
 ANTENNAS  SVD  GIVENS  GIVENS/SVD 
 
 1  21  0  
 2  168  12  7.14% 
 3  567  54  9.52% 
 4  1344  14  10.71% 
 5  2625  300  11.43% 
 6  4536  540  11.90% 
 7  7203  882  12.24% 
 8  10752  1344  12.50% 
 

[0270]
The following table shows a comparison of the complexity of Givens based feedback as opposed to Hausholder based feedback as a function of the number of the transmit antennas. It can be see that the Hausholder approach is significantly more complex.


# of  Givens  Hausholder 
transmit  Complex  Complex  Complex   Complex  Complex  Comple 
antennas  Division  Multiply  Add  Comparison  Multiply  Add  Storag 

3  3  30  30  32  259  160  32 
4  4  56  56  64  771  672  64 
6  6  132  132  256  3843  3744  256 
8  8  240  240  1024  20227  20128  1024 
12  12  552  552  16384  413443  413344  16384 

Example of Codebook Construction for Vector PreCoding

[0271]
An example of Vector Precoding (codebook construction) for purposes of context and comparison will now be described. The crosscorrelation of the codeword in this example has a block circulant structure. The diagonal rotation matrix Q is defined as:
$Q=\left[\begin{array}{ccc}{e}^{j\frac{2\pi}{L}{u}_{1}}& \text{\hspace{1em}}& 0\\ \text{\hspace{1em}}& \u22f0& \text{\hspace{1em}}\\ 0& \text{\hspace{1em}}& {e}^{j\frac{2\pi}{L}{u}_{L}}\end{array}\right]{u}_{1}\Rightarrow U\left[\begin{array}{ccc}{u}_{1}& \cdots & {u}_{L}\end{array}\right]$
Matrix P, is selected from submatrixes of DET matrix as
${P}_{1}=\left[\begin{array}{ccc}{d}_{{c}_{1}}& \cdots & {d}_{{c}_{{N}_{1}}}\end{array}\right]$
${\left({D}_{{N}_{l}}\right)}_{m\times n}={\left[{e}^{j\frac{2\pi}{{N}_{l}}\left(m1\right)\left(n1\right)}\right]}_{m\times n}\Rightarrow D=\left[\begin{array}{ccc}{d}_{1}& \cdots & {d}_{{N}_{l}}\end{array}\right]$
The codebook can be constructed as:
P_{l}=Q^{l}P_{l }l=2,3 . . . L

[0272]
The codebook can be optimized by choosing rotation matrix Q indexes
c=└c_{1 }. . . c_{M} _{ 1 }┘
The code book can be optimized by choosing rotation matrix Q indexes
u=└u_{1 }. . . c_{N} _{ 1 }┘
By exhaustive search of the codebook we have
${l}^{\mathrm{opt}}=\text{arg}\underset{l\in \left\{1,2,\text{\hspace{1em}}\dots \text{\hspace{1em}},L\right\}}{\mathrm{min}}\mathrm{MSE}\left\{\frac{{E}_{s}}{{N}_{o}}{\mathrm{tr}\left({I}_{M}+\frac{{E}_{s}}{{N}_{o}{N}_{r}}{P}_{l}^{H}{H}^{H}{\mathrm{HP}}_{l}\right)}^{1}\right\}$
Examples of Codebook Construction for Matrix PreCoding

[0273]
An overview of Matrix Precoding (column by column vector quantize channel1) for purposes of context and comparison will now be described. Preferably, the V matrix is quantized column by column and recursively.
STEP0: Denote the beamforming matrix as
$V=\left[\begin{array}{ccc}{v}_{11}& {v}_{12}& {v}_{12}\\ {v}_{21}& {v}_{22}& {v}_{23}\\ {v}_{31}& {v}_{32}& {v}_{33}\\ {v}_{41}& {v}_{42}& {v}_{43}\end{array}\right]$
STEP1: Quantize the first column of V denoted as v_{1 }as follows. {circumflex over (v)}=arg max_{uε} _{ 1 }∥u^{H}v_{1}∥
where C_{1 }is a codebook containing unit 4vectors for quantization. {circumflex over (v)}_{1 }has the maximum inner product among all unit vectors in the codebook.
STEP2: Compute Hausholder reflection matrix as follows
${F}_{1}=I\frac{2}{{\uf605{w}_{1}\uf606}^{2}}{w}_{1}{w}_{1}^{H}$
where φ_{1 }is the phase of v_{11}
${F}_{1}V=\left[\begin{array}{ccc}{e}^{{\mathrm{j\varphi}}_{1}}& 0.0& 0.0\\ 0.0& {\hat{v}}_{11}& {\hat{v}}_{12}\\ 0.0& {\hat{v}}_{21}& {\hat{v}}_{22}\\ 0.0& {\hat{v}}_{31}& {\hat{v}}_{32}\end{array}\right]\text{\hspace{1em}}\mathrm{where}\text{\hspace{1em}}{v}_{2}=\left[\begin{array}{cc}{\hat{v}}_{11}& {\hat{v}}_{12}\\ {\hat{v}}_{21}& {\hat{v}}_{22}\\ {\hat{v}}_{31}& {\hat{v}}_{32}\end{array}\right]$
where two properties are employed to get the result, i.e. {circumflex over (v)}_{11 }is real and the unitary property of V Since both F_{1 }and V are unitary, V_{2 }is unitary. From STEP2, we see that the size of V_{2 }is 3 by 2 and it is reduced from that of V_{1 }by one on both the row and column dimensions.
STEP3: Quantize the first column of V_{2 }denoted as v_{2}, using another codebook of unit 3vectors, whose first element of each codeword is real.
STEP4: Construct a Hausholder reflection matrix F_{2 }
STEP5: Multiply F_{2 }with V_{2 }as follows.
${F}_{2}{V}_{2}=\left[\begin{array}{cc}{e}^{{\mathrm{j\varphi}}_{2}}& 0.0\\ 0.0& {\stackrel{~}{v}}_{11}\\ 0.0& {\stackrel{~}{v}}_{21}\end{array}\right]\text{\hspace{1em}}\mathrm{where}\text{\hspace{1em}}{v}_{3}=\left[\begin{array}{c}{\stackrel{~}{v}}_{11}\\ {\stackrel{~}{v}}_{21}\end{array}\right]$
The reconstruction of the beamforming matrix V is as follows:
STEP0; Two vectors, v_{3 }and v_{2}, are reconstructed using the feedback quantization indexes and the corresponding 2vector and 3vector codebooks.
STEP1: Compute a Hausholder matrix using the reconstructed V_{2 }as
${F}_{2}=I\frac{2}{{\uf605w\uf606}^{2}}{\mathrm{ww}}^{H}$
where w={circumflex over (v)}_{2}−e_{1 }and {circumflex over (v)}_{2 }is the reconstructed 3vector; F_{2 }can be stored beforehand to reduce computation.
STEP2: V_{2 }can be reconstructed as
${\hat{V}}_{2}={F}_{2}\left[\begin{array}{cc}1& 0\\ 0& \text{\hspace{1em}}\\ 0& {\hat{v}}_{3}\end{array}\right]$
STEP3; we reconstruct the first column of V using the quantization index and compute a Hausholder matrix as
${F}_{1}=I\frac{2}{{\uf605w\uf606}^{2}}{\mathrm{ww}}^{H}$
where w={circumflex over (v)}_{1}−e_{1 }and {circumflex over (v)}_{1 }is the reconstructed first column of V.
STEP4 the beamforming matrix V is given by
$\hat{V}={F}_{1}\left[\begin{array}{ccc}1& 0& 0\\ 0& \text{\hspace{1em}}& \text{\hspace{1em}}\\ 0& \text{\hspace{1em}}& {\hat{V}}_{2}\\ 0& \text{\hspace{1em}}& \text{\hspace{1em}}\end{array}\right]$

[0274]
The codebook is constructed such that the codeword vectors distribute on the ndimension complex unit sphere uniformly. Additionally, the firs: element of each codeword is set to be real for the next step.

[0275]
The Hausholder matrix can be computed and stored beforehand for small codebooks. Even in the case that there is no quantization error, the reconstructed matrix could be different from the original V by a global phase on each column and this is fine with closed loop MIMO.

[0000]
Example of 2Transmit Antenna Codebook for Givens Feedback

[0276]
Predesign the rotation matrix for 2 transmit antennas, and then the rotation matrix is parameterized. A set of parameterized rotation matrixes serves as codebook.
${V}_{{n}_{1},{n}_{2}}^{l}=\left[\begin{array}{cc}{e}^{{\mathrm{j\varphi}}_{{n}_{2}}}\mathrm{cos}\text{\hspace{1em}}{\theta}_{{n}_{1}}& {e}^{{\mathrm{j\varphi}}_{{n}_{2}}}\mathrm{sin}\text{\hspace{1em}}{\theta}_{{n}_{1}}\\ \mathrm{sin}\text{\hspace{1em}}{\theta}_{{n}_{1}}& \mathrm{cos}\text{\hspace{1em}}{\theta}_{{n}_{1}}\end{array}\right]$
${\varphi}_{{n}_{2}}=\frac{2\pi \text{\hspace{1em}}{n}_{2}}{{N}_{2}},{n}_{2}=0,1\text{\hspace{1em}}\dots \text{\hspace{1em}}{N}_{2}1$
${\theta}_{{n}_{1}}=\frac{2\pi \text{\hspace{1em}}{n}_{1}}{{N}_{1}},{n}_{1}=0,1\text{\hspace{1em}}\dots \text{\hspace{1em}}{N}_{1}1$
Feedback Differential Codebook Index

[0277]
According to an embodiment of the invention a differential index feedback is provided as illustrated pictorially in FIG. 48. The differential index is representative of the subspace searching. According to this embodiment the channel will not change very fast. Therefore, the indices of consecutive feedbacks will not be far from the previous feedback.

[0000]
Avoiding the Impact of Ageing

[0278]
A MIMO feedback channel ageing algorithm in accordance with an embodiment of the invention will now be described, in which receiver ageing beamformer correction is utilized.

[0279]
For a mobile MIMO channel the channel matrix may be timevarying:
Time0→H_{0}=U_{0}D_{0}V_{0}′
Time 1→H_{1}=U_{1}D_{1}V_{1}′
The beam forming matrix V_{0 }sent to the transmitter may already be old by the time it is utilized for transmission. However, the receiver may still be able to compute the latest receiver beam forming matrix U_{0 }as follows:
U _{1} ′y=U _{1} ′U _{1} D _{1} V _{1} ′V _{0} ′s+U _{1} ′n=D _{1} V _{1} ′V _{0} s+n
This may prevent the ageing impact at receiver side, the ageing impact potentially causing the interantenna interference. In the above example, at the receiver the received sequence y has been multiplied by the latest beamforming matrix U_{1}, rather than use U_{0 }that would have been used with the channel information at time 0. In the result, the product V_{1}′V_{0 }or likely be close to the identity matrix and can be ignored; alternatively given that both V_{1}′ and V_{0 }are known at the receiver, the effect of this can also be divided out at the receiver. This would increase the complexity however.
Physical Layer Design

[0280]
A CQICH Support of Differential Encoding Algorithm in accordance with an embodiment of the invention will now be described. For OFDM systems, preferably differential encoding is used to cross multiple subcarriers to feedback the vector index or other feedback information. The following is an example of a minitile modulation scheme for sending back a vector index of zero or one. Preferably this would be transmitted on two subcarriers. In this case, two different phases are transmitted for vector index zero, and a different arrangement of the same phases is sent for vector index one.
 
 
 Vector index  M_{n,8, }M_{n,θm+1} 
 
 0  P0, P1 
 1  P1 ,P0 
 

$P\text{\hspace{1em}}0=\mathrm{exp}\text{\hspace{1em}}j\text{\hspace{1em}}\frac{\pi}{4}$ 
$P\text{\hspace{1em}}1=\mathrm{exp}\text{\hspace{1em}}j\text{\hspace{1em}}\frac{3\pi}{4}$ 

[0281]
Another example is shown in FIG. 46, this being a feedback approach that allows the transmission of one of eight different vector indexes can be used to transmit up to 3bits of information. The vector index might for example be an index of codebook, or alternatively the raw bits might be used to indicated feedback Information, be it channel feedback or Givens feedback or unitary matrix feedback. In the example shown, a tile generally indicated at 370 is four subcarriers by three symbols, and the four corner subcarrier locations in the tile are used for transmitting pilot information. The remaining eight subcarrier locations over the three symbols are used to transmit the vector index. The encoding used for the index is indicated in the table generally indicated at 372. In this example, four different phases are used, and a codeword consisting of eight phases is used to represent each of the potential vector indices. The receiver of the feedback information can then recover the phase information and perform a correlation to identify the transmitted vector index and thereby recover the feedback information.

[0282]
Another example is shown in FIG. 47 for the case where a receiver has two antennas. In this case, pilot symbols are sent in different locations for the two antennas, but identical feedback information is sent on the remaining eight subcarriers, the same as in FIG. 46. For a given antennae is transmitting its pilot symbols.

[0283]
In yet another example, shown in FIG. 48, two different users are feeding back the two patterns indicated at 380,382 respectively. Similar to the two antenna case of FIG. 47, each of the two users transmits pilots in different locations within the tile so as to not interfere with the other users pilots. In this case, each user transmits eight subcarrier locations containing the vector index. The data transmitted by the two users will be different, and the receiver of the feedback information will need to distinguish between the two. According to an embodiment of the invention STTD antenna assignment with power weighting may be used. This reduces intercode interference and reduces the feedback bandwidth required.

[0284]
FIGS. 49 and 50 shows a concatenation of STC/MIMO with a beamformer in accordance with an embodiment of the invention.

[0285]
Each embodiment is generalizable to an arbitrary number of subcarriers and/or an arbitrary number of transmit antennas/receive antennas as will be apparent to one skilled in the art. Embodiments provide transmitters adapted to generate signals containing the disclosed transmit codesets/subcarrier allocations methods of transmitting such signals, receivers adapted to receive such transmissions, and methods of receiving and decoding such signals.

[0286]
Numerous modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practised otherwise than as specifically described herein.