Abstract:
Systems and techniques relating to wireless communication are described. A described technique includes transmitting a first signal wirelessly to a wireless communication device in accordance with a first transmit mode that is selected from a plurality of transmit modes; receiving a shortlist from the wireless communication device, the shortlist identifying a subset of the transmit modes, the subset of the transmit modes including two or more modes that are different from the first transmit mode; selecting a second transmit mode from the shortlist; transmitting a second signal wirelessly to the wireless communication device in accordance with the second transmit mode; and selectively cycling through any remaining modes of the shortlist based on a lack of reception of an acknowledgement to the second signal. The wireless communication device can be configured to generate the shortlist based on a channel quality analysis of a received version of the first signal.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of, and claims priority to, U.S. patent application Ser. No. 13/425,350, filed on Mar. 20, 2012, entitled “Data Rate Adaptation In Multiple-In-Multiple-Out Systems” (now U.S. Pat. No. 8,532,081), which is a continuation of U.S. patent application Ser. No. 10/620,024, filed on Jul. 14, 2003, entitled “Data Rate Adaptation in Multiple-In-Multiple-Out Systems” (now U.S. Pat. No. 8,149,810), which claims priority to U.S. Provisional Application No. 60/447,448, filed Feb. 14, 2003, entitled “Data Rate Adaptation in Multiple In Multiple Out (MIMO) Systems”. The application herein claims the benefit of priority of all of the above listed patent applications and hereby incorporates by reference in their entirety the said patent applications. 
    
    
     BACKGROUND 
     Wireless phones, laptops, PDAs, base stations and other systems may wirelessly transmit and receive data. A single-in-single-out (SISO) system may have two transceivers in which one predominantly transmits and the other predominantly receives. The transceivers may use multiple data rates depending on channel quality. 
     An M R ×M T  multiple-in-multiple-out (MIMO) wireless system, such as that shown in  FIG. 1 , uses M T  transmit antennas  104  at a first transceiver  100  and M R  receive antennas  106  at a second transceiver  102 . First and second transceivers  100 ,  102  in  FIG. 1  are designated “transmitter” and “receiver”, respectively, for the purposes of illustration, but both transceivers  100 ,  102  may transmit and receive data. 
     The multiple antennas  104 ,  106  may improve link quality (e.g., achieving a minimum bit error rate (BER)) by using a transmission signaling scheme called “transmit diversity,” where the same data stream (i.e., same signal) is sent on multiple transmit antennas  104 , after appropriate coding. The receiver  102  receives multiple copies of the coded signal and processes the copies to obtain an estimate of the received data. 
     The multiple antennas  104 ,  106  may achieve high data rates by using another transmission signaling scheme called “spatial multiplexing,” where a data bit stream may be demultiplexed into parallel independent data streams. The independent data streams are sent on different transmit antennas  104  to obtain an increase in data rate according to the number of transmit antennas  104  used. 
     SUMMARY 
     The present application relates to a hybrid multiple-in-multiple-out (MIMO) system that may use aspects of link adaptation and cycling through a shortlist of transmit modes. A receiver may receive signals from a transmitter and derive channel quality statistics, such as a mean signal-to-interference-and-noise ratio (SINR). The receiver may compare the derived post-processing mean SINR with pre-determined threshold mean SINRs in a lookup table for an ideal “orthogonal” channel. The receiver may use the lookup table to efficiently find an optimum transmission mode or a shortlist of possible modes. The single lookup table may be relatively small and more efficient to implement than one or more lookup tables that account for multiple channel scenarios. The receiver feeds back the optimum transmission mode or shortlist to the transmitter, which adapts its spatial multiplexing rate s, coding rate r and modulation order m. The receiver may feed the optimum transmission scheme(s) back to the transmitter in a compressed manner, such as lookup table indices. The system may minimize retransmissions and hence improve medium access controller (MAC) throughput. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates a wireless multiple-in-multiple-out (MIMO) communication system, which includes transceivers with multiple antennas. 
         FIG. 2  is a flowchart of a method of using the system of  FIG. 1 . 
         FIG. 3  illustrates an embodiment of the receive portion and transmit portion of the receiver in  FIG. 1 . 
         FIG. 4  illustrates operations of the transmitter in  FIG. 1 . 
         FIG. 5  illustrates another embodiment of the receive portion and transmit portion of the receiver in  FIG. 1 . 
         FIG. 6A  illustrates an example of the lookup table in  FIG. 5 . 
         FIG. 6B  illustrates another example of the lookup table in  FIG. 5 . 
         FIG. 7  illustrates a graph of measured signal-to-interference-and-noise ratio (SINR) as it fluctuates over time. 
         FIG. 8  illustrates a table of time diversity orders and corresponding percentages of time that measured SINR fades 10 dB below the mean SINR in  FIG. 7 . 
         FIG. 9  is a rate vs. distance graph of a 1×1 single-in-single-out (SISO) system and a 3×3 MIMO system. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  illustrates a wireless multiple-in-multiple-out (MIMO) communication system  130 , which includes a first transceiver  100  with multiple antennas  104  and a second transceiver  102  with multiple antennas  106 . In an embodiment, each transceiver has four antennas, forming a 4×4 MIMO system. For the description below, the first transceiver  100  is designated as a “transmitter” because the transceiver  100  predominantly transmits signals to the transceiver  102 , which predominantly receives signals and is designated as a “receiver”. Despite the designations, both “transmitter”  100  and “receiver”  102  may transmit and receive data, as shown by the transmit portions  101 A,  101 B and receive portions  103 A,  103 B in each transceiver. 
     The transmitter  100  and receiver  102  may be part of a MIMO-OFDM (orthogonal frequency division multiplexing) system. OFDM splits a data stream into multiple radiofrequency channels, which are each sent over a subcarrier frequency. The transmitter  100  and receiver  102  are preferably implemented in LANs or WANs. It is also contemplated that such transceivers may be implemented in any type of wireless communication device or system, such as a mobile phone, laptop, personal digital assistant (PDA), a base station, a residence, an office, etc. 
     The number of independent data streams transmitted by the transmit antennas  104  may be called a “multiplexing order” or “spatial multiplexing rate” (s). A spatial multiplexing rate s=1 indicates pure diversity, and a spatial multiplexing rate s=min(M R ,M T ) (minimum number of receive or transmit antennas) indicates pure multiplexing. The MIMO system  130  may use combinations of diversity and spatial multiplexing, i.e., 1≦s≦min(M R ,M T ), depending on a channel scenario. 
     Each data stream may have an independent coding rate (r) and a modulation order (m). The physical (PHY) layer, or raw, data rate may be expressed as R=r×log 2 (m)×s Bps/Hz. A transmitter&#39;s PHY layer chip may support many data rates depending on the values of s, r and m. For example, a 4×4 MIMO system with IEEE 802.11a coding and modulation schemes (8 in number) and 6 spatial multiplexing orders 
             (     s   ∈     [       1   2     ,     3   4     ,   1   ,   2   ,   3   ,   4     ]       )         
may have up to 8×6=48 different data “transmission modes” or “transmission schemes,” each with its own data rate.
 
     A “transmission mode” or “transmit mode” refers to a set of transmission parameters, such as transmission signaling scheme (spatial multiplexing, transmit diversity or some combination), data rate R, coding rate r, modulation order m and modulation level, e.g., 8PSK (phase shift keying), GMSK (Gaussian minimum shift keying), BPSK (binary PSK), QPSK (quaternary PSK), 16-QAM (16-quadrature amplitude modulation, 64-QAM, etc. 
     The optimum data rate and transmission mode that achieve a target bit error rate (BER) may vary, depending on user locations and channel characteristics, which may cause time-selective fading, frequency-selective fading and space-selective fading. 
     The current IEEE 802.11 modem of a single-in-single-out (SISO) transmitter starts transmission at the highest possible data rate. If the transmitter modem receives an acknowledgement (ACK) signal from a SISO receiver, then the modem uses the highest possible data rate for further transmissions. Otherwise, the modem lowers the data rate and cycles through all possible data rates until the transmitter receives an ACK signal from the receiver. For a 4×4 MIMO system with 48 possible data rates, the cycle-through method may waste a significant amount of real-time bandwidth. 
     “Link adaptation” (also referred to as “adaptive modulation”) may be a more efficient mechanism to select an optimum data transmission rate. Link adaptation has been studied for SISO systems. A receiver (a) measures a channel quality characteristic (also called channel quality condition or channel state information (CSI)) (e.g., signal-to-noise ratio (SNR) or signal-to-interference-and-noise ratio (SINR)), (b) converts the channel characteristic into BER information for each transmit mode, (c) selects an optimum transmit mode (from a plurality of modes) based on the channel characteristic and a target BER, and (d) feeds the channel characteristic or selected mode back to the transmitter. The transmitter receives the fed back channel characteristics or selected mode and adjusts its transmit mode and data rate accordingly. 
     Link adaptation exploits variations of a wireless channel over time, frequency and/or space due to changing environmental and interference conditions by dynamically adjusting transmission parameters. Link adaptation may select the most efficient mode for spectral efficiency over varying channel conditions based on a mode selection criterion, e.g., maximum data rate, for each link. Since each transmit mode has a unique data rate and minimum SNR needed to activate the mode, different transmit modes are suited for optimal use in different channel quality regions. 
     For example, the receiver may estimate a SINR for each channel realization and choose a transmit mode (data rate, transmission coding rate r, and modulation order m). In an ideal link adaptation system, the receiver receives a packet and instantaneously sends feedback indicating the chosen transmit mode to the transmitter. Fast feedback is not always possible or desired because feedback consumes bandwidth. For systems with a limited feedback rate (e.g., slower than the “channel coherence time”, which is the time duration when channel impulse responses remain strongly correlated), the receiver may receive a plurality of packets during a time window and obtain SINR “statistics” (e.g., mean SINR, variance, etc.) from the packets. The transmitter may use the SINR “statistics” to adapt the transmit mode. 
     A SISO receiver may create a plurality of lookup tables for a plurality of channel scenarios. Each channel scenario may be characterized by SINR variance across time (σ t   2 ) and variance across frequency (σ f   2 ). The receiver may index the lookup tables according to σ t   2  and σ f   2 . Each lookup table has a plurality of entries for a plurality of different transmit modes and their mean threshold SINRs (  μ   r,m ). The mean threshold SINR is the minimum SINR required for a given transmit mode to operate at a target BER. 
     For each time window, which can span several received packets, the receiver computes the mean SINR (μ) and SINR variances σ t   2 , σ f   2 . The receiver uses the SINR variances to select an appropriate lookup table. Within the selected lookup table, the receiver uses the mean SINR (μ) to select a transmit mode (data rate, transmission coding rate r, and modulation order m) that maximizes the data rate while operating at the target BER or packet error rate (PER). In other words, 
               r   *     ,       m   *     =       argmax     r   ,   m       ⁡     [       sgn   ⁡     (     μ   -       μ     r   ,   m       _       )       ×   s   ×     log   2     ⁢   m   ×   r     ]               
where s−×log 2 m×r is the data rate as described above. The BER may be extracted from the cyclic redundancy check (CRC) information at the link layer. If multiple transmit modes yield the same data rate, then the receiver or transmitter may select the transmit mode with the highest SINR margin
 
     
       
         
           
             
               ( 
               
                 μ 
                 - 
                 
                   
                     μ 
                     
                       r 
                       , 
                       m 
                     
                   
                   _ 
                 
               
               ) 
             
             . 
           
         
       
     
     A similar link adaptation scheme may be implemented in a MIMO system. However, such an approach may be difficult to implement since MIMO channel scenarios and transmit modes are much larger than in a SISO system. The channel scenarios may be larger due to dependencies on properties like LOS (line-of-sight) matrix, polarization, correlation, etc. For example, assuming 10 different channel scenarios and 48 transmit modes for a 4×4 IEEE 802.11 MIMO system, the MIMO system may require in a large lookup table with 48×10=480 entries (or 10 lookup tables each with 48 entries). If any transmission scheme is changed or added, all 480 entries may have to be recomputed. Computing the lookup table entries via numerical simulation or measurements for each channel scenario may be difficult and time-consuming. 
     Link Adaptation and Cycling Through a Shortlist 
     In an embodiment, the MIMO system  130  in  FIG. 1  may use a hybrid scheme that combines aspects of link adaptation and cycling through a subset of available transmit modes, e.g., a shortlist of best transmit modes determined at the receiver  102 . The hybrid scheme may address the MIMO link adaptation problems described above. 
       FIG. 2  is a flowchart of an exemplary method of link adaptation and cycling through a shortlist, which may be used by the system  130 . The transmit portion  101 A ( FIG. 1 ) of the transmitter  100  sends signals/packets  150  which are received by the receive portion  103 B of the receiver  102  at  202  ( FIG. 2 ).  FIG. 3  illustrates an embodiment of the receive portion  103 B and transmit portion  101 B of the receiver  102 . A channel quality circuit  130  in the receive portion  103 B of the receiver  102  may determine one or more channel quality statistics from the received signals  150  at  204 . A subset selection module  114  in the receive portion  103 B compares the channel quality statistics to entries in a lookup table  108  at  206 . For example, each entry in the lookup table  108  may store a transmit mode and its corresponding channel quality statistic, e.g., a threshold post-processing mean SINR 
               μ     s   ,   r   ,   m       _         
(described below). The subset selection module  114  selects a shortlist or subset of transmit modes from the lookup table  108  with channel quality statistics that are close to the measured channel quality statistics at  208 . The transmit portion  101 B of the receiver  102  sends the shortlist to the receive portion  103 A of the transmitter  100  at  210 . The shortlist feedback may be a part of an acknowledge/no acknowledge (ACK/NACK) packet.
 
       FIG. 4  illustrates operations of the transmitter  100  in  FIG. 1 . The receive portion  103 A of the transmitter  100  receives the shortlist of modes at  402 . The transmitter  100  selects a transmit mode in the shortlist at  404  and finds a corresponding data rate in a lookup table stored in the transmitter  100  at  406 . The transmit portion  101 A of the transmitter  100  initiates further transmission at the found data rate (e.g., highest data rate selected from the shortlist of modes) at  408 . If the transmitter  100  receives an ACK from the receiver  102  within a pre-determined time period at  410 , then further transmissions from the transmitter  100  may occur at this data rate at  412 . Otherwise, the transmitter  100  lowers the data rate and cycles through the shortlist of modes at  414  until an ACK is received from the receiver  102  at  410 . 
     If the transmitter  100  has tried every mode and its corresponding date rate in the shortlist  108 , an alternative strategy may be used. For example, the transmitter may use a low data rate until the receiver  102  sends another shortlist at  416 . In alternative embodiments, the transmitter may try other data rates or request a new shortlist from the receiver  100 . 
     In an embodiment, the receiver  102  may store pre-configured operating modes in a memory such as a non-volatile memory  109 , which may include the lookup table  108 , as shown in  FIG. 5 . The lookup table  108  may have entries for a plurality of transmission modes (e.g., 48 modes) and corresponding mean threshold receive “post-processing” SINRs 
               (       μ     s   ,   r   ,   m       _     )     .         
A “post-processing” SINR refers to SINR derived after data from multiple antennas are combined, as opposed to a “pre-processing” SINR derived from data at each antenna. A mean threshold receive post-processing SINR
 
             (       μ     s   ,   r   ,   m       _     )         
is the minimum post-processing mean SINR required for a given transmit mode (i.e., set of spatial multiplexing rate s, coding rate r, and modulation order m values) to operate at a target BER.
 
       FIG. 6A  illustrates an example of the lookup table  108  in  FIG. 5 .  FIG. 6B  illustrates another example of the lookup table  108  in  FIG. 5 , in which the available modes are separated by different spatial multiplexing rates, e.g., s=1, 2, etc. (described below). 
     In contrast to the proposed MIMO link adaptation scheme with multiple channel scenarios described above (which used 10×48=480 entries), the receiver  102  may store a relatively small lookup table  108  (e.g., 48 entries) by assuming a selected ideal or generalized reference channel, such as an “orthogonal channel” or an Independent and Identically Distributed (IID) channel. An IID channel may use a random MIMO matrix, where each element of the MIMO matrix is a complex, normal and distributed mean of zero and a variance of one. An IID channel accounts for fading margins. An “orthogonal” channel does not account for fading margins and may be equivalent to an additive white Gaussian noise (AWGN) channel for a SISO system. An orthogonal channel may be relatively easy to simulate. The receiver  102  may simulate both an IID channel and an orthogonal channel to see which one provides better results. The lookup table  108  based on a selected ideal or generalized reference channel may be relatively easy to generate and save. Thus, the receiver  102  does not have to save lookup tables for a plurality of channel scenarios. 
     For example, in a 4×4 MIMO system, the lookup table  108  based on an orthogonal channel may have 48 entries for 48 modes and their threshold post-processing mean SINRs 
               (       μ     s   ,   r   ,   m       _     )     ,         
as opposed to 480 entries for the MIMO link adaptation scheme described above.
 
     The receiver  102  may receive a plurality of packets  150  from the transmitter  100  during a time window, which may span several packets. The packets  150  may undergo processing, such as demodulation, and reach a channel estimator  120  and a noise and interference estimator  128 . For each time window, the channel estimator  120  estimates a channel response, and the noise and interference estimator  128  estimates noise and interference. Various techniques may be used for channel estimation and noise and interference estimation. For example, in an embodiment, each transmit antenna transmits a known training sequence that is orthogonal to the training sequences transmitted by the other transmitters. The channel estimator  120  uses the received training sequence and known transmit sequence to estimate the channel element for each transmit-receive antenna pair. For noise and interference estimation, the transmitter transmits null-sequences (e.g., zero tones or empty packets). During this period, the receiver records signals for each receive antenna. These signals are attributed to receiver noise and interference. The noise variance (σ 2 ) is the variance of the noise (and interference) signal. 
     A channel quality indicator derivation module  111  derives a channel quality indicator, such as post-processing SINR, based on outputs of the channel estimator  120  and noise and interference estimator  128 . The post-processing SINR may be referred to as instantaneous or derived at a particular instant in time. 
     For each time window, a channel quality statistics computation module  113  computes channel quality statistics, such as a post-processing mean SINR μ s  and a “margin SINR”. The margin SINR is an increase in mean SINR desired to guard against channel fades. The margin SINR may include a “fading margin” and a “frequency diversity gain,” as described below. If the channel has no fades, then margin SINR=0. If the channel has severe fading, then margin SINR may be a relatively large number. The statistics computation module  113  at the receiver  102  may generate the mean receive post-processing SINR μ s  and margin SINR for each spatial multiplexing rate s using the MIMO channel estimate from the channel estimator  122  and noise and interference power estimate from the noise and interference power estimator  128  at the receiver  102 . 
     The statistics computation module  113  may then compute an “outage SINR,” which is mean SINR+margin SINR. The subset selection module  114  uses the post-processing mean SINR or preferably the outage SINR to find entries in the lookup table  108  that have a threshold post processing mean SINR close to the currently estimated mean SINR or outage SINR. The subset selection module  114  may select a particular number of entries (e.g., one to five), and send a shortlist of modes from the selected entries back to the transmitter  100  via the transmit portion  101 B. 
     The transmitter  100  may try sending data using the mode from the shortlist with the highest data rate at  406  in  FIG. 4 , and check for an acknowledgement (ACK) signal from the receiver  102  at  410 . If the transmitter  100  does not receive an ACK signal or receives a no-acknowledgement (NACK) signal, the transmitter  100  tries the next highest data rate of another mode in the shortlist at  414 ,  404 . The transmitter  100  may eventually cycle through all data rates in all modes of the shortlist at  416 . 
     There are at least two advantages of this system. The shortlist sent as feedback from the receiver  102  to the transmitter  100  saves channel bandwidth because only a limited number of modes are sent instead of 48 modes or other channel information that may require a number of feedback messages. In addition, the transmitter  100  saves time and resources by cycling through a limited number transmit modes and does not have to cycle through 48 transmit modes. 
     In an embodiment, the subset selection module  114  generates a shortlist with three transmit modes. If the transmitter  100  tries all three transmit modes and does not receive an ACK signal (e.g., because the receiver  102  did not estimate a mean SINR or margin SINR accurately or the channel conditions suddenly change), the receiver  102  may repeat the process of estimating a mean SINR and Margin SINR, finding three closest entries in the lookup table  108 , and sending another shortlist to the transmitter  100  at  210  in  FIG. 2 . The transmitter  100  may switch to a low data rate at  416  in  FIG. 4  until the receiver  102  sends another shortlist. Alternatively, the transmitter may try other data rates or request a new shortlist from the receiver  100 , as described above. 
     The receiver  102  may be modified to provide instantaneous feedback to the transmitter  100  without estimating the margin and mean SINR. The tradeoff is between feedback rate and performance. Feedback based on SINR statistics (mean SINR and/or Margin SINR) may transmit at a lower data rate to guard against fluctuations in channel quality (as long as the fluctuations were present in the time window of packets used to estimate SINR statistics). Instantaneous feedback of an optimum data rate may use up more “feedback” bandwidth but may transmit at the optimum rate depending on the exact channel state. 
     The lookup table  108  may have a plurality of entries with threshold post-processing mean SINRs 
               (       μ     s   ,   r   ,   m       _     )     ,         
which are the minimum SINRs required for available transmit modes. Each transmit mode may include a spatial multiplexing rate (e.g., 1, 2, 3, 4), a coding rate r (e.g., the same as used by IEEE 802.11), and a modulation order m (e.g., 4QAM, 16 QAM, 64QAM, etc.). The description below describes how the receiver  102  derives a post-processing mean SINR measurement, a fading margin or Margin SINR, a frequency diversity gain α r , and from these quantities, the outage SINR and “total Outage SINR.” The subset selection module  114  may then compare the outage SINR or total outage SINR with the lookup table entries to determine the shortlist of modes with their transmission rates.
 
     Time-Selective Fading 
       FIG. 7  illustrates a graph of measured instantaneous SINR  702  as it fluctuates over time. The instantaneous post-processing SINRs will fade in time across packets. The mean SINR μ s    704  indicates the average SINR across time. A fading margin f s  indicates how much the SINR will fade below the mean SINR μ s , for a given x % of a time window. If there is no fading, then f s =0. If the channel is fast-fading, then f s  may be a relatively large number, e.g., 10 dB. There may be a number of ways for the statistics computation module  113  to compute a fading margin f s  to account for fading. A specific method of measuring this fading margin f s  is described below. The statistics computation module  113  or receiver software may compute the fading margin. 
     The statistics computation module  113  computes a probability expressed as P(SINR&lt;μ s −γ)=x %+/−ε% for each instantaneously measured post-processing SINR, a derived mean SINR μ s  (see  FIG. 7 ) for multiple packets received in a time window, a target x %, e.g., 10%, a desired ε% indicating tolerance for measurement error, e.g., 1% or 2%, and different values of a variable γ=[0 . . . fs . . . MAX_VALUE] dB to find an appropriate fading margin f s . For example, the statistics computation module  113  may try 3 dB, 6 dB, 9 dB, and 12 dB for γ in the equation above. As another example, the module  113  may try 2 dB, 4 dB, 6 dB, and 8 dB for γ in the equation above. The statistics computation module  113  may use a histograph. Whichever value of γ that provides a probability P closest x %+/−ε% is selected as the fading margin fs. If the probability is ≈x % for a certain value of γ, then that γ is selected as the fading margin f s . For example, in one application, MAX_VALUE can be 20 dB, x=10%, ε=2%. 
     There may be different fading margins f s  for different multiplexing rates s. Each multiplexing rate s can exhibit an independent diversity order d s , which may represent how much the post processing SINR will fade in time due to channel fades. For a 4×4 MIMO system  130  with four spatial multiplexing rates s=1, 2, 3, 4, the statistics computation module  113  may determine four corresponding fading margins f s , one fading margin f s  for each multiplexing rate s. 
       FIG. 8  illustrates a table of time-diversity orders d s  and corresponding percentages of time (x %) that measured SINR fades γ=10 dB (a selected and fixed value) below the mean SINR μ s    704  in  FIG. 7 . The second column in  FIG. 8  represents the “x” % variable described above. For example, a “first-order” time-diversity describes a post processing SINR that fades in time by γ=10 dB below the mean SINR μ s  x=10% of the time. 
     The “Outage SINR” may be expressed as:
 
 G   s =μ s   +fs  
 
     G s  represents a desired goal of estimated outage SINR and may be used by the subset selection module  114  to find one or more entries in the lookup table  108 . G s  is equal to the receive post-processing mean SINR μ s  plus the fading margin f s . The fading margin f s  represents how much the mean SINR μ s  will probably fade or fluctuate over time, and G s  is intended to account for this fading. If the fading margin f s  is large, then G s  will be large. 
     Another method of obtaining the fading margin f s  uses a known expression 
             (       f   s     =       10     d   s       ⨯       log   10     ⁡     (     x   /   100     )           )         
relating outage probability and diversity order d s  at high SINRs. The value “x” is a reliability factor (the second column in  FIG. 8 ) obtained according to an expression
 
                 P   b     ≤     0.5   ⨯     x   100         ,         
where P b  is the target BER of the receiver  102 . This equation assumes that for (100-x) % of the time, G s  (x % outage SINR) will be greater than a threshold post-processing mean SINR
 
               μ     s   ,   r   ,   m       _         
and have zero BER. While x % of the time, the received mean post-processing SINR μ s    110  will be smaller than the threshold post-processing mean SINR
 
               μ     s   ,   r   ,   m       _         
and have 50% BER. For P b =5×10 −3 , the above expression yields x=1%, providing 99% reliability.
 
     The diversity order d s  may be computed by a number of methods. One method for deriving diversity order d s  assumes a Rayleigh fading channel. “Rayleigh fading” refers to a transmitted signal that spreads out, scatters and takes multiple paths of different lengths to arrive at a receiver antenna at different times. The ensemble of signals reflected by the ground, bodies of water, atmosphere, etc., arrive at the receiver antenna and create standing waves. Multipath fading occurs. The method can approximate the receiver post-processing instantaneous SINR to be a chi-square random variable with 2d s  degrees of freedom. It is known that for Rayleigh fading channels, an M R ×M T  system with spatial multiplexing rate s≧1 has a diversity order of d s =(M R −s+1)×(M T −s+1). Theoretically, the receive post-processing instantaneous SINR is then a chi-square random variable with d s =2×(M R −s+1)×(M T −s+1) degrees of freedom. However, in practice, channel properties such as correlation, etc, can lead to a smaller diversity order, i.e., d s &lt;2×(M R −s+1)×(M T −s+1). Assuming that the instantaneous SINR can still be approximately modeled as a chi-square random variable with 2d s  degrees of freedom. The statistics computation module  113  may compute 
                 d   s     =         μ   s       σ   s           ,         
where of is a variance of receive post-processing instantaneous SINR in time.
 
     Frequency-Selective Fading 
     The receive post-processing instantaneous SINR may experience frequency-selective fading caused by a multipath channel. In such a case, the outer forward error correction (FEC) codes in packets transmitted from the transmitter  100  may extract a “frequency diversity gain α r ” depending on the coding rate r. Frequency diversity gain α r  may be understood as follows. In a multipath or frequency-selective fading channel, some tones of the OFDM system can be in a fade, while others may not. The FEC can recover or correct for the bits transmitted on the tones in a fade and improve the system performance. This improvement is called frequency diversity gain α r . This gain is measured by a decrease in Outage SINR required to obtain a target system BER. Typically, the lower the target BER, the higher the frequency diversity gain α r . The frequency diversity gains α r  provided by different FECs on a multipath channel at a certain BER, are well-understood. With more frequency-selectivity, there will be more frequency diversity gain α r . For a flat-fading channel, the frequency diversity gain α r  is 0. 
     The frequency diversity gain α r  can be computed by the statistics computation module  113  via numerical simulations and stored in a lookup table separate from the lookup table  108  in  FIG. 5 . For example, a frequency diversity gain lookup table may comprise coding rates of ½, ⅔ and ¾ and corresponding frequency diversity gains of 3 dB, 2 dB and 1 dB, respectively. 
     Using the Lookup Table 
     As stated above, the outage SINR may be expressed as G s =μ s +f s , where μ s  is the derived post-processing mean SINR and f s  is the derived fading margin. The statistics computation module  113  may combine (a) the outage SINR G s  (for each spatial multiplexing rate s, e.g., s=1, 2, etc.) over time, with (b) the frequency diversity gain α r  (for each coding rate r) to obtain a “total Outage SINR” expressed as G s,r =G s +α r . The table look-up module  114  may use the total Outage SINR G s,r  to find one or more entries in the lookup table  108  with comparable post-processing mean threshold SINRs 
               μ     s   ,   r   ,   m       _         
to obtain one or more acceptable or optimum transmission modes. This may be expressed as finding an acceptable or optimum coding rate r and modulation order m for a given spatial multiplexing rate s:
 
               s   *     ,     r   *     ,       m   *     =       argmax     s   ,   r   ,   m       ⁡     [         sgn   ⁡     (       G     s   ,   r       -       μ     s   ,   r   ,   m       _       )       ⨯   s   ⨯     log   2       ⁢     m   ⨯   r       ]         ,         
where “max” means maximum value, “sgn” means signum, and R=r×log 2 (m)×s is the physical layer (raw) data rate (R s,r,m ) in Bps/Hz. If
 
                 sgn   ⁡     (       G     s   ,   r       -       μ     s   ,   r   ,   m       _       )       =     +   1       ,     i   .   e   .     ,       G     s   ,   r       &gt;       μ     s   ,   r   ,   m       _       ,         
then s, r, m represent an acceptable mode for a shortlist. If
 
                 sgn   ⁡     (       G     s   ,   r       -       μ     s   ,   r   ,   m       _       )       =     -   1       ,     i   .   e   .     ,       G     s   ,   r       &lt;       μ     s   ,   r   ,   m       _       ,         
then s, r, m represent an unacceptable mode for a shortlist.
 
     If multiple transmission modes yield the same data rate, then the subset selection module  114  may choose the mode leading to the highest margin 
     
       
         
           
             
               G 
               
                 s 
                 , 
                 r 
               
             
             - 
             
               
                 
                   μ 
                   
                     s 
                     , 
                     r 
                     , 
                     m 
                   
                 
                 _ 
               
               . 
             
           
         
       
     
     Values Depend on Spatial Multiplexing Rate 
     In the channel quality statistics computation module  113  in  FIG. 5 , different spatial multiplexing rates s=1, 2, etc. may be associated with different receiver types. If one stream of data is received (s=1), one type of receiver may be used. If two streams of data are received (s=2), two different types of receivers may be used. For a 4×4 MIMO system, there may be 4 or 6 spatial multiplexing rates (e.g., s=½, ¾, 1, 2, 3, 4). The statistics computation module  113  may be configured to determine a unique set of post-processing mean SINR μ s , margin SINR (including fading margin f s  and frequency diversity gain α r ), and a total outage SINR G s,r  depending on which spatial multiplexing rate s is used by the transmitter  100 . 
     For example, if the transmitter  100  uses spatial multiplexing rate s=1, then the statistics computation module  113  may determine a first post-processing mean SINR μ s , a first margin SINR (including a first fading margin f s  and a first frequency diversity gain α r ), and a first total outage SINR G s,r . If the transmitter  100  uses another spatial multiplexing rate s=2, then the statistics computation module  113  may determine a second post-processing mean SINR μ s  a second margin SINR (including a second fading margin f s  and a second frequency diversity gain α r ), and a second total outage SINR G s,r . The subset selection module  114  then uses the first or second (s=1 or 2) total outage SINR G s,r  to access the lookup table  108 , which may also have threshold mean SINRs and transmit modes categorized by s=1, s=2, etc., as shown in  FIG. 6B . 
     The subset selection module  114  may use the computed outage SINR or total outage SINR to select a few transmission modes from the look-up table  108 , in decreasing order of data rate, to be in a shortlist and sent back to the transmitter  100 . 
     The transmit portion  101 B of the receiver  102  may send the transmitter  100  a signal indicating the transmit modes in the shortlist, which may adapt the data transmission rate, coding rate r and modulation order m of new data packets accordingly ( FIG. 5 ). The transmit portion  101 A of the transmitter  100  may indicate a new transmit mode in a preamble or header of a packet to send to the receiver  102 , which notifies the receiver  102  that the transmitter  100  will use the new transmit mode. The receiver  102  may then switch to the new transmit mode. 
     The signal may identify the transmit modes in the shortlist explicitly, or may include indices to a table or addresses in a memory in which the transmit modes are stored. For example, The transmit portion  101 B of the receiver  102  may send transmit mode indices (s*, r*, m*) to the transmitter  100 . The indices indicate entries in a lookup table  108 , which is also stored in the transmit or receive portions  101 A,  103 A of the transmitter  100  or elsewhere in the transmitter  100 . The transmit portion  101 A of the transmitter  100  puts the indices (s*, r*, m*) in a preamble or header of a packet to send to the receiver  102 , which notifies the receiver  102  that the transmitter  100  will use new s*, r*, and m*. The receiver  102  switches to the new s*, r*, and m*. 
     The methods above may be a high data rate extension of IEEE 802.11a. These methods may be an efficient mechanism to select a large number of data rates. For example, if there are 4 transmit antennas, each with 50 Mbits/s, the transmitter may select from a large number of different data rates from 6 Mbits/s to 200 Mbits/s. 
       FIG. 9  is a rate vs. distance graph of a 1×1 SISO system and a 3×3 MIMO system. Compared to the SISO system, the MIMO system provides a higher data rate at a given distance, a farther distance for communication at a given data rate, and more system and network capacity. Furthermore, more users can use the MIMO system. 
     In alternative embodiments, the receiver  102  may transmit prohibited transmit modes, i.e., transmit modes other than those determined to be optimal. The prohibited modes may include all modes other than those determined to be optimal based on the channel quality statistics, or may include transmit modes determined to be the worst transmit modes based on the channel quality statistics. The prohibited transmit modes may be transmitted as, e.g., transmit modes, indices to a table, or memory addresses. After receiving the prohibited transmit modes, the transmitter  100  may transmit signals using transmit modes other than the prohibited modes, e.g., by cycling through available modes in the lookup table  108 . 
     In alternative embodiments, the techniques described above may be implemented on other types of communication systems, such as, for example, SISO, SIMO (single-in multiple-out), and MIMO (multiple-in multiple-out) systems. 
     A number of embodiments have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the application. For example, a 3×3 MIMO system may be used. Accordingly, other embodiments are within the scope of the following claims.