# Patent

## Title
Communication overhead reduction apparatus, systems, and methods

## Abstract

An apparatus and a system, as well as a method and article, may operate to transmit a first number of training symbols corresponding to a first number of communication chains to solicit a response including a second number of training symbols corresponding to a second number of communication chains. The first and second number of communication chains may form a portion of a multiple-input, multiple-output (MIMO) system.

## Background
RELATED APPLICATIONS
This application is a continuation of U.S. patent application Ser. No. 13/758,823, filed Feb. 4, 2013, which is a continuation of U.S. patent application Ser. No. 10/751,001, filed on Dec. 30, 2003, now issued as U.S. Pat. No. 8,369,790, each of which is incorporated herein by reference in its entirety.
This disclosure is related to U.S. patent application Ser. No. 10/749,904, titled “ANTENNA SUBSYSTEM CALIBRATION APPARATUS AND METHODS IN SPATIAL-DIVISION MULTIPLE-ACCESS SYSTEMS”, by Qinghua Li and Xintian E. Lin, filed on Dec. 29, 2003, now issued as U.S. Pat. No. 7,206,550, and is assigned to the assignee of the embodiments disclosed herein, Intel Corporation.


TECHNICAL FIELD
Various embodiments described herein relate to communications generally, including apparatus, systems, and methods used to transmit and receive information, such as space-time communications systems.
BACKGROUND INFORMATION
Spatial multiplexing communications system performance, including SDMA (space division, multiple access) and MIMO (multiple-input, multiple-output) systems, may be improved by the activities of training and calibration. Training may include transmitting known signals to a receiver to increase the reliability of estimating channel state information. While longer training sequences may provide increased reception accuracy, the use of such sequences may also reduce the advantage to be gained by using spatial multiplexing in the first place (i.e., high data rates). Similarly, while calibrating transmitter power and receiver gains can contribute to improved data transmission rates, the additional time required for periodic calibration may decrease the ultimate system capability to communicate large amounts of data in a short time span.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of apparatus and a system operating according to various embodiments;
FIG. 2 is a block diagram of apparatus and a system operating according to various embodiments;
FIG. 3 is a block diagram of apparatus and a system operating according to various embodiments;
FIGS. 4A, 4B and 4C are block diagrams of exemplary packet formats that can be utilized by the apparatus and system of FIG. 3;
FIGS. 5A and 5B are a block diagram of an apparatus operating according to various embodiments, as well as an exemplary packet format which may be implemented thereby, respectively;
FIG. 6 is a flow chart illustrating several training and calibration methods according to various embodiments;
FIG. 7 is a flow chart illustrating several alternative training and calibration methods according to various embodiments; and
FIG. 8 is a block diagram of an article according to various embodiments.



DETAILED DESCRIPTION
MIMO system techniques can multiply the data rate of a wireless local area network (WLAN) by nearly as many times as the number of antennas employed by an access point (AP) without the need for increased spectrum usage. MIMO systems exploiting channel state information (CSI) at the transmitter have the potential to reduce receiver complexity while achieving increased channel capacity. Common examples of such techniques include transmit beamforming (e.g., singular value decomposition or SVD), adaptive bit loading (ABL), and power allocation (e.g., tone puncturing). Sometimes relevant CSI cannot be obtained directly via training, because training symbol measurements are the aggregate response of several components, including the transmit chain response of the transmitting device, the wireless channel response, and the receive chain response of the receiving device. Therefore, accurate measurements of training symbols may be assisted by calibration.
CSI at the transmitter may be obtained by having the transmitter send training symbols to a receiver, and then feeding back receiver measurements of the received channel response to the transmitter. Unfortunately, this time-consuming feedback process does not lend itself to situations where high throughput is desired, such as when various forms of the Institute of Electrical and Electronics Engineers (IEEE) 802.11 protocols are employed, including those considered by the High Throughput (HT) Study Group. For example, the round-trip channel responses of 2-by-2 and 4-by-4 MIMO systems using such feedback typically require 62 μs and 247 μs, respectively, at a 54 Mbps channel data rate. For more information on the IEEE 802.11 standards, please refer to “IEEE Standards for Information Technology—Telecommunications and Information Exchange between Systems—Local and Metropolitan Area Network—Specific Requirements—Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY), ISO/IEC 8802-11: 1999” and related amendments.
Thus, in many embodiments of the invention, mechanisms are disclosed that do not require CSI feedback from the receiver. In some embodiments, calibration schemes attempt to provide a ratio of transmit chain gain to corresponding receive chain gain that is substantially constant for each antenna, at both the transmitter and the receiver. In some embodiments, calibration on one side (i.e., a transmitter or receiver) and channel estimation on the other side (i.e., the corresponding receiver or transmitter) can be accomplished in a substantially simultaneous fashion using the same sets of symbols, or preambles. Backward-compatible protocols using existing RTS/CTS (request-to-send/clear-to-send) symbols or messages may be used (e.g., IEEE 802.11 and related amendments). Thus, in many embodiments of the invention, calibration and training, including channel estimation, at both the transmitter and receiver may be accomplished during an exchange of RTS/CTS symbols without explicit CSI feedback. For the purposes of this document, a “symbol” or “training symbol” may include any character, symbol, or message known to a receiver, including, for example, preambles, such as the long and short preambles defined with respect to an IEEE 802.11a standard packet.
FIG. 1 is a block diagram of apparatus 100 and a system 102 operating according to various embodiments. In the system 102, a first device 104, such as an access point (AP) or station (STA) may communicate with a second device 108, such as a STA or AP. The first device 104 may have a plurality of antennas 112 (e.g., three antennas 112), with one or more transmit chains 114 and one or more receive chains 116 coupled to each antenna 112. Each transmit chain 114-receive chain 116 pair may be included in a communication chain 118. The second device 108 may also have a plurality of antennas 120 (e.g., two antennas 120), where each antenna 120 also may be coupled to one or more transmit chains 124 and/or one or more receive chains 126. Each transmit chain 124-receive chain 126 pair may be included in a communication chain 128. Each transmit chain 114, 124 in one device 104, 108, respectively, may send training and calibration symbols to all receive chains 126, 116 included in another device 108, 104, respectively. For the purposes of this disclosure, the term “transceiver” (e.g., a device including a transmitter and a receiver) may be used in place of either “transmitter” or “receiver” throughout this document, and a transceiver may be included in a transmit chain and/or a receive chain.
Some communication systems may employ CSI, which may be acquired by receiving symbols, including preambles. However, as noted previously, the measurements of received preambles may include more than just the response of the wireless channel. For example, such measurements may include the combined responses of the transmit chains sending the preambles, the wireless channel, and the receive chain receiving the preambles. Thus, in some MIMO downlinks, the beamforming matrix can be affected by the combined responses of the transmit chains of the AP, the wireless channel, and the receive chains of the STA. In some cases, the chain responses of the STA may not be available to the AP.
In some embodiments, based on the preambles sent by the station, the device 104 can estimate the aggregate channel matrix from the input of the device 108 transmit chains 124 to the output of the device 104 receive chains 116 for the n-th subcarrier as shown in Equation (1):




  
    
      
        
          H
          u
        
        =
        
          
            
              [
              
                
                  
                    
                      β
                      
                        A
                        ⁢
                        
                          
                        
                        ⁢
                        1
                      
                    
                  
                  
                    0
                  
                  
                    0
                  
                
                
                  
                    0
                  
                  
                    
                      β
                      
                        A
                        ⁢
                        
                          
                        
                        ⁢
                        2
                      
                    
                  
                  
                    0
                  
                
                
                  
                    0
                  
                  
                    0
                  
                  
                    
                      β
                      
                        A
                        ⁢
                        
                          
                        
                        ⁢
                        3
                      
                    
                  
                
              
              ]
            
            ⁡
            
              [
              
                
                  
                    
                      h
                      11
                    
                  
                  
                    
                      h
                      12
                    
                  
                
                
                  
                    
                      h
                      21
                    
                  
                  
                    
                      h
                      22
                    
                  
                
                
                  
                    
                      h
                      31
                    
                  
                  
                    
                      h
                      32
                    
                  
                
              
              ]
            
          
          ⁡
          
            [
            
              
                
                  
                    a
                    
                      S
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                  
                
                
                  0
                
              
              
                
                  0
                
                
                  
                    a
                    
                      S
                      ⁢
                      
                        
                      
                      ⁢
                      2
                    
                  
                
              
            
            ]
          
        
      
    
    
      
        (
        1
        )
      
    
  




where H is the wireless channel matrix for the uplink; βA1, βA2 and βA3 are the responses of the device 104 receive chains 116; and αS1 and αS2 are the responses of the transmit chains for the device 108. The subcarrier index, n, has been omitted for simplicity. It should be noted that H may not be observed by the device 104, although it may be contained within Hu, where Hu is the measurement of the received training symbols (e.g., preambles). However, even when H is not available directly, in some embodiments, the matrix Hu may be used without further processing.

For example, consider the prior art, where transmit beamforming (including techniques such as SVD and SDMA) may utilize explicit feedback from the receiver. For medium size packets, including those having about 500 bytes, feedback overhead can reduce physical layer efficiency by more than 40%. Thus, in various embodiments, reducing or removing feedback can significantly improve physical layer efficiency. To effect such a mechanism, several backward compatible protocols will be described, employing the exchange of existing RTS/CTS symbols, as well as various calibration techniques, some of which operate to adjust transmit/receive chain power and gain levels so that the ratio of a transmit gain to the corresponding receive gain comprises two constants (one for each device 104 antenna 112, and the other for each device 108 antenna 120).
Given the parameters established in Equation (1), the signals received at the device 108 from the device 104 in the downlink of FIG. 1 may be illustrated by Equation (2) below:




  
    
      
        
          [
          
            
              
                
                  y
                  
                    S
                    ⁢
                    
                      
                    
                    ⁢
                    1
                  
                
              
            
            
              
                
                  y
                  
                    S
                    ⁢
                    
                      
                    
                    ⁢
                    2
                  
                
              
            
          
          ]
        
        =
        
          
            
              
                
                  [
                  
                    
                      
                        
                          β
                          
                            S
                            ⁢
                            
                              
                            
                            ⁢
                            1
                          
                        
                      
                      
                        0
                      
                    
                    
                      
                        0
                      
                      
                        
                          β
                          
                            S
                            ⁢
                            
                              
                            
                            ⁢
                            2
                          
                        
                      
                    
                    
                      
                        0
                      
                      
                        0
                      
                    
                  
                  ]
                
                ⁡
                
                  [
                  
                    
                      
                        
                          h
                          11
                        
                      
                      
                        
                          h
                          21
                        
                      
                      
                        
                          h
                          31
                        
                      
                    
                    
                      
                        
                          h
                          12
                        
                      
                      
                        
                          h
                          22
                        
                      
                      
                        
                          h
                          32
                        
                      
                    
                  
                  ]
                
              
              ⁡
              
                [
                
                  
                    
                      
                        α
                        
                          A
                          ⁢
                          
                            
                          
                          ⁢
                          1
                        
                      
                    
                    
                      0
                    
                    
                      0
                    
                  
                  
                    
                      0
                    
                    
                      
                        α
                        
                          A
                          ⁢
                          
                            
                          
                          ⁢
                          2
                        
                      
                    
                    
                      0
                    
                  
                  
                    
                      0
                    
                    
                      0
                    
                    
                      
                        α
                        
                          A
                          ⁢
                          
                            
                          
                          ⁢
                          3
                        
                      
                    
                  
                
                ]
              
            
            
              }
              
                H
                d
              
            
          
          ⁡
          
            [
            
              
                
                  
                    x
                    
                      A
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                  
                
              
              
                
                  
                    x
                    
                      A
                      2
                    
                  
                
              
              
                
                  
                    x
                    
                      A
                      ⁢
                      
                        
                      
                      ⁢
                      3
                    
                  
                
              
            
            ]
          
        
      
    
    
      
        (
        2
        )
      
    
  




where yS1 and yS2 signify the received signal at the output of the device 108 receive chains 126; xA1, xA2, and xA3 are the symbols sent to the device 108; αA1, αA2 and αA3 are the device 104 transmit chain 114 gains; and βS1 and βS2 are the device 108 receive chain 126 gains. As a matter of contrast, the signals received at the device 104 from the device 108 in the uplink may be illustrated by Equation (3) below:





  
    
      
        
          [
          
            
              
                
                  y
                  
                    A
                    ⁢
                    
                      
                    
                    ⁢
                    1
                  
                
              
            
            
              
                
                  y
                  
                    A
                    ⁢
                    
                      
                    
                    ⁢
                    2
                  
                
              
            
            
              
                
                  y
                  
                    A
                    ⁢
                    
                      
                    
                    ⁢
                    3
                  
                
              
            
          
          ]
        
        =
        
          
            
              
                
                  [
                  
                    
                      
                        
                          β
                          
                            A
                            ⁢
                            
                              
                            
                            ⁢
                            1
                          
                        
                      
                      
                        0
                      
                      
                        0
                      
                    
                    
                      
                        0
                      
                      
                        
                          β
                          
                            A
                            ⁢
                            
                              
                            
                            ⁢
                            2
                          
                        
                      
                      
                        0
                      
                    
                    
                      
                        0
                      
                      
                        0
                      
                      
                        
                          β
                          
                            A
                            ⁢
                            
                              
                            
                            ⁢
                            3
                          
                        
                      
                    
                  
                  ]
                
                ⁡
                
                  [
                  
                    
                      
                        
                          h
                          11
                        
                      
                      
                        
                          h
                          12
                        
                      
                    
                    
                      
                        
                          h
                          21
                        
                      
                      
                        
                          h
                          22
                        
                      
                    
                    
                      
                        
                          h
                          31
                        
                      
                      
                        
                          h
                          32
                        
                      
                    
                  
                  ]
                
              
              ⁡
              
                [
                
                  
                    
                      
                        α
                        
                          S
                          ⁢
                          
                            
                          
                          ⁢
                          1
                        
                      
                    
                    
                      0
                    
                  
                  
                    
                      0
                    
                    
                      
                        α
                        
                          S
                          ⁢
                          
                            
                          
                          ⁢
                          2
                        
                      
                    
                  
                
                ]
              
            
            
              }
              
                H
                u
              
            
          
          ⁡
          
            [
            
              
                
                  
                    x
                    
                      S
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                  
                
              
              
                
                  
                    x
                    
                      S
                      ⁢
                      
                        
                      
                      ⁢
                      2
                    
                  
                
              
            
            ]
          
        
      
    
    
      
        (
        3
        )
      
    
  




where xS1 and xS2 are the symbols sent to the device 104; yA1, yA2, and yA3 are the signals received at the output of the device 104 receive chains 116; αS1 and αS2 are the device 108 transmit chain 124 gains; and βA1, βA2 and βA3 are the device 104 receive chain 116 gains.

Two aggregate channels, Hd and Hu, may be defined as shown in Equations (2) and (3). If the aggregate channels Hd and Hu maintain reciprocity, (i.e., Hd=HuT), the estimated aggregate channel may be employed without decomposition to perform transmit beamforming.
A sufficient condition for reciprocity may be shown in Equations (4) and (5) as follows:




  
    
      
        
          
            α
            
              A
              ⁢
              
                
              
              ⁢
              1
            
          
          
            β
            
              A
              ⁢
              
                
              
              ⁢
              1
            
          
        
        =
        
          
            
              α
              
                A
                ⁢
                
                  
                
                ⁢
                2
              
            
            
              β
              
                A
                ⁢
                
                  
                
                ⁢
                2
              
            
          
          =
          
            
              
                α
                
                  A
                  ⁢
                  
                    
                  
                  ⁢
                  3
                
              
              
                β
                
                  A
                  ⁢
                  
                    
                  
                  ⁢
                  3
                
              
            
            =
            
              c
              n
            
          
        
      
    
    
      
        (
        4
        )
      
    
  
  
    
      
        
          
            α
            
              S
              ⁢
              
                
              
              ⁢
              1
            
          
          
            β
            
              S
              ⁢
              
                
              
              ⁢
              1
            
          
        
        =
        
          
            
              α
              
                S
                ⁢
                
                  
                
                ⁢
                2
              
            
            
              β
              
                S
                ⁢
                
                  
                
                ⁢
                2
              
            
          
          =
          
            b
            n
          
        
      
    
    
      
        (
        5
        )
      
    
  




where cn and bn are two constants for the n-th subcarrier. To satisfy the condition of reciprocity exactly, cn may be set equal to bn. However, in many embodiments, it may be sufficient that Hd=knHuT, where Hd and HuT differ by the product of a scalar kn. To satisfy the conditions set by Equations (4) and (5) then, calibration and compensation may be effected at device 104 and device 108. Two exemplary schemes that may be used to achieve these conditions are described next.

FIG. 2 is a block diagram of apparatus 200 and a system 202 operating according to various embodiments. Each device 204, 208 (which may be similar to or identical to devices 104, 108, respectively, as shown in FIG. 1, and may include an AP and/or a STA) may have multiple transmit power control (TPC) levels and multiple receive gain control levels, including automatic gain control (AGC) levels, for each of the included communication chains. Further, transmit and receive responses, α and β, may vary with selected TPC and AGC settings. Thus, implementing a series of training exchanges for each possible combination of TPC and AGC (e.g., when there is no prior information about the desired setting) may be time-consuming if there are a large number of combinations. However, as explained hereinbelow, in various embodiments, desired combinations of TPC and AGC settings may be established relatively quickly with respect to the devices 204, 208, such that calibration can occur rapidly.
In a first scheme, one device 204 may send one or more symbols 230, such as a request to transmit (e.g., a legacy RTS symbol or message) to the device 208 using a default TPC. Then, after the device 208 receives the transmitted symbol(s) (e.g., the RTS) 230, the device 208 may determine a set of desired AGC and TPC settings for the link to the device 204.
At this point, the device 208 may send a symbol 234 in response, such as a clear to transmit response (e.g., a legacy CTS symbol or message) and Nr training symbols 238, where Nr is the number of receive antennas (or RF chains) employed by the device 208, which may use the same Nr antennas to receive one or more MIMO modulated data packets. The Nr symbols 238, which may be used for training, can be sent in turn by each one of the Nr antennas, perhaps using one symbol per antenna.
After the device 204 receives the response 234 (e.g., the CTS symbol), the device 204 may determine a set of desired AGC and TPC settings for the link to the device 208. Reception of the Nr training symbols 238 may be used by the device 204 to estimate the Nt×Nr channel, which may be a MIMO channel, where Nt is the number of transmit antennas (or RF chains) included in the device 204. The device 204 may use the same Nt antennas for channel estimation and data transmission, including MIMO data transmission. The Nr training symbols 238 received by the device 208 may also be used to calibrate the communication chains (e.g., chains 128 shown in FIG. 1) included in the device 208 for the newly determined set of TPC and AGC settings.
The device 204 may subsequently transmit Nt training symbols 240 and data 244, including MIMO modulated data, to the device 208. The Nt training symbols 240 may be sent by Nt antennas (or RF chains), perhaps using one symbol per antenna at a desired TPC setting. The device 204 may receive the Nt training symbols 240 at a desired AGC setting and calibrate the communication chains included in the device 204 (e.g., chains 118 in FIG. 1). The communication chains included in the device 208 may likewise be calibrated after transmission of the Nt training symbols 240. Beamforming, perhaps as a form of MIMO system modulation, may be performed by the device 204 with respect to data sent by the device 204 to the device 208 using the channel information obtained as a result of receiving the response 234 from the device 208.
During reception of the Nt training symbols 240, the device 208 may set a desired AGC level and perform channel estimation. The resulting channel estimates may permit the device 208 to demodulate beamformed data provided by the device 204. After all data 244 has been received from the device 204, an acknowledgment 248 (e.g., a legacy ACK response) may be sent from the device 208 to the device 204 at a desired TPC setting.
FIG. 3 is a block diagram of apparatus 300 and a system 302 operating according to various embodiments. Each device 304, 308 may be similar to or identical to devices 104, 108, respectively, shown in FIG. 1, and may include an AP and/or a STA. FIG. 4 is a block diagram of exemplary packet formats that can be utilized by the apparatus and system of FIG. 3.
In a second scheme, advantage is taken of the fact that, according to some implementations of the IEEE 802.11 standards, RTS and CTS symbols can be transmitted in such a way as to protect long data packets from collision. Thus, the Nt and Nr training symbols may be attached directly to the request to transmit (e.g., legacy RTS) symbol and the clear to transmit response (e.g., legacy CTS) symbol, respectively, where Nt and Nr are the number of antennas at the devices (or the number of communication chains), as described previously. In each case, the training symbols may be used to both calibrate the transmitter and enable the channel estimation of the receiver in one or more of the communication chains included in the apparatus 300.
Referring now to FIGS. 3 and 4, it can be seen that a device prepared to send data, for example, device 304, may transmit a symbol 330, 430 or packet, such as a legacy RTS packet, to another device, such as device 308. Nt training symbols 340 may be attached to the end of the packet 330, where Nt can be the number of transmit chains included in the device 304. The length field 448 in the packet 330, 430 may be set to protect up to the end of the pad bits 450, as specified in the IEEE 802.11 standard for legacy RTS packets. Thus, a legacy device may receive the RTS packet 330, 430 correctly and perform collision avoidance operations as needed.
The Nt symbols 340 may be sent in turn by the Nt communication chains included in the device 304. A calibration algorithm may be performed as the Nt symbols 340 are sent to calibrate both the transmit and the receive chains of the device 304. The device 308 receiving the Nt symbols 340, 440 and the symbol 330, 430 may estimate the associated channels and compute demultiplexing matrices to enhance data reception, as is known to those of ordinary skill in the art.
In some embodiments, calibration of M transmit/receive or communication chains at either of the devices 304, 308 may occur in such a way as to satisfy the criterion set by Equation (4). First, a training symbol x0 for the n-th sub-carrier may be sent using a first transmit chain (e.g., transmit chain #1), and the output of a second receive chain (e.g., receive chain #2) may be measured. The measured output may be characterized by t12=αA1C12βA2x0, where C12 is the response from the input of a first antenna (e.g., antenna #1 coupled to transmit chain #1) to the output of a second antenna (e.g., antenna #2 coupled to receive chain #2).
Second, a training symbol x0 for the n-th sub-carrier may be sent using a second transmit chain (e.g., transmit chain #2), and the output of a first receive chain (e.g., receive chain #1) may be measured. The measured output may be characterized by t21=αA2C21βA1x0, where C21 is the response from the input of the second antenna to the output of the first antenna.
Third, the variables αA1, αA2, βA1 and βA2 may be adjusted so as to render t12=t21. In some cases, this may be accomplished by changing only the variable βA2. The adjustments of the chain gains can be implemented in the digital domain, if desired. After compensation is effected in this manner, the result should be:

αA1C12βA2x0=αA2C21βA1x0  (6)

Equation (6) may be simplified as follows, since C12=C21 due to reciprocity:





  
    
      
        
          
            α
            
              A
              ⁢
              
                
              
              ⁢
              1
            
          
          
            β
            
              A
              ⁢
              
                
              
              ⁢
              1
            
          
        
        =
        
          
            α
            
              A
              ⁢
              
                
              
              ⁢
              2
            
          
          
            β
            
              A
              ⁢
              
                
              
              ⁢
              2
            
          
        
      
    
    
      
        (
        7
        )
      
    
  




At this point, a loop may be executed with respect to the remaining communication chains, that is, for i=3, . . . , M. Each execution of the loop may involve sending a training symbol x0 for the n-th sub-carrier using the first transmit chain and measuring the output of receive chain i. The measured output, characterized by t1i=αA1C1iβAix0, where C1i may be seen as the response from the input of the first antenna to the output of antenna i. Then loop execution may involve sending a training symbol x0 for the n-th sub-carrier using transmit chain i, and measuring the output of the first receive chain. The measured output may be characterized as ti1=αAiCi1βA1x0, where Ci1 can be seen as the response from the input of antenna i to the output of the first antenna.
Finally, the variables αAi and βAi may be adjusted so as to render t1i=ti1. Again, in some cases, this may be accomplished by changing only the variable βAi. The adjustments of the communication chain gains may be implemented in the digital domain, if desired. After compensation is effected in this manner, the result may be:

αA1C1iβAix0=αAiCi1βA1x0  (8)

Since C1i=Ci1 due to reciprocity, Equation (8) may be simplified as follows:





  
    
      
        
          
            α
            
              A
              ⁢
              
                
              
              ⁢
              1
            
          
          
            β
            
              A
              ⁢
              
                
              
              ⁢
              1
            
          
        
        =
        
          
            α
            Ai
          
          
            β
            Ai
          
        
      
    
    
      
        (
        9
        )
      
    
  




The loop may be repeated for each value of i in this manner until all of the chains M have been calibrated.

The device 308 receiving the symbol 330 may respond by sending another symbol (or symbols, and/or packets, such as a legacy CTS symbol). This transmission may occur if the status of a network allocation vector (NAV) indicates the channel is idle. Nr training symbols 338, 438 may be attached to the end of the symbol or packet 334, 434, where Nr is the number of the receive chains included in the device 308. The Nr symbols 338, 438 may be sent in turn by Nr antennas coupled to the receive chains included in the device 308 to receive data packets 344, 444. As noted above, the length field 454 in the packet 334, 434 may be set to protect up to the end of the pad bits 458, as specified in the IEEE 802.11 standard for legacy CTS packets. Thus, a legacy device may receive the CTS packet 334, 434 correctly and perform collision avoidance operations as needed.
As described above, a calibration algorithm may be performed as the Nr symbols 338, 438 are sent, in order to calibrate the transmit and the receive chains included in the device 308. In turn, the device 304 receiving the Nr symbols 338, 438 and the response symbol 334, 434 (e.g., a legacy CTS packet) may estimate the associated channels and determine beamforming matrices for transmission of the data 344, 444.
The device 304 may then send the data 344, 444 using transmit beamforming, adaptive bit loading, and/or power allocation techniques, as is known to those of skill in the art. A symbol of acknowledgment (e.g., a legacy ACK symbol or packet) 348 may be received by the device 304 after the data 344, 444 is sent.
Upon reading this disclosure, those of skill in the art will realize that the device 308 receiving the request to send 330, 430 symbol or packet may estimate the channel matrix (e.g., for each orthogonal frequency division multiplexing (OFDM) tone) and form a corresponding demultiplexing matrix (e.g., the “U” matrix in SVD techniques) by exploiting the attached training symbols 340, 440. Since channel estimation and matrix computation are completed beforehand, the preambles at the beginning of the data packet 344, 444 may be used only for synchronization, and may not be needed for channel estimation. Thus, since the preambles of the data 344, 444 are used only for synchronization, they may be shortened. Similarly, upon reading this disclosure, those of skill in the art will realize that the device 304 receiving the clear to send response 334, 434 symbol or packet may also estimate the associated channel and compute a beamforming matrix (e.g., the “V” matrix in SVD techniques) by exploiting the attached training symbols 338, 438.
Thus, referring now to FIGS. 1, 2, and 3, it can be seen that an apparatus 100, 200, 300 may be similar to or identical to the devices 104, 108, 204, 208, and 304, 308, including devices such as an AP and/or STA. Such apparatus 100, 200, 300 may therefore include a device 104, 204, 304 having a first number of communication chains 118 to transmit to a second apparatus 100, 200, 300 or device 108, 208, 308 a first number of training symbols corresponding to the first number of communication chains 118 and to solicit a response from the second apparatus 100, 200, 300 or device 108, 208, 308 including a second number of training symbols corresponding to a number of communication chains 128 included in the second device 108, 208, 308.
The first number of communication chains 118 may correspond to a number of transmit chains 114, and the second number of communication chains 128 may correspond to a number of receive chains 126. Similarly, the first number of communication chains 118 may correspond to a number of receive chains 116, and the second number of communication chains 128 may correspond to a number of transmit chains 124. The apparatus 100, 200, 300 may include a calibration module 160 to calibrate the transmit chains 114, 124 and/or the receive chains 116, 126. The apparatus 100, 200, 300 may also include an estimation module 162 to estimate one or more channels associated with the number of receive chains 116, 126.
A system 102, 202, 302 may include a first apparatus 100, 200, 300 or device 104, 204, 304, similar to or identical to those described previously. The system 102, 202, 302 may also include a second apparatus 100, 200, 300 or device 108, 208, 308, similar to or identical to those described previously. The first apparatus 100, 200, 300 or device 104, 204, 304 may include a number of communication chains 118 to transmit a number of training symbols corresponding to the number of communication chains 118 to the second device 108, 208, 308. In turn, the second apparatus 100, 200, 300 or device 108, 208, 308 may include a number of communication chains 128 to receive the training symbols from the first device 104, 204, 304, and may respond by transmitting to the first device 104, 204, 304 a number of training symbols corresponding to the number of communication chains 128.
The system 102, 202, 302 may include a first number of antennas 112 corresponding to a first number of communication chains 118, and a second number of antennas 120 corresponding to a second number of communication chains 128. The system 102, 202, 302 may also include one or more calibration modules 160 to calibrate the communication chains 118, 128, as well as one or more estimation modules to estimate one or more channels associated with the communication chains 118, 128. In some embodiments, the communication chains 118, 128 may be capable of being coupled to a number of antennas 112, 120 to form a portion of a multiple-input, multiple-output (MIMO) system.
FIGS. 5A and 5B are a block diagram of an apparatus 500 operating according to various embodiments, as well as an exemplary packet format which may be implemented thereby, respectively. Calibration of the apparatus 100, 200, 300 and devices 104, 108, 204, 208, 304, 308 may be accomplished in many ways other than those described with respect to the first and second schemes explicitly described herein. For example, with respect to the second scheme outlined above, since some apparatus 500 (which may be similar to or identical to apparatus 100, 200, 300 and/or devices 104, 204, 304 and devices 108, 208, 308) periodically operate in a sleep mode, calibration may sometime be accomplished during this mode, such as after the apparatus 500 announces an upcoming sleep period. The apparatus 500 may include a communication chain 518.
In such circumstances, calibration may begin with sending a symbol or packet 530 from the apparatus 500 to the apparatus 500 itself (i.e., self-calibration). Then calibration and/or training symbols 540 can also be sent from and to itself. This type of calibration can be accomplished using antennas 512 and on-air signals 566, or via an internal switching network 570. On-air calibration may provide increased accuracy, but it may also generate interference. Use of the switching network 570 may reduce accuracy due to mismatch among switches.
Transmit gains (βAi and βSi) may vary with the TPC setting 572. Similarly, receive gains (αAi and αSi) may vary with the gain control setting 574, such as the AGC setting. Therefore, calibration may be used to find a set of values for one chain (typically a number of receive gain settings) for each pair of TPC and AGC settings on other chains. Assuming there are NT and NR levels for TPC and AGC respectively, then a compensation and calibration algorithm may step through all NT×NR settings. Gains may be selected independently of actual transmit and receive signal magnitudes.
To accomplish compensation and calibration in the sleep mode, then, an apparatus 500 may begin by announcing a coming sleep period. This announcement may be asserted by setting a value in an associated power management field of a frame. Then, for i=1, . . . , NT a loop involving the following activities may be entered: set the TPC to level i for all transmit chains, then loop j times for j=1, . . . , NR, setting the AGC to level j for all receive chains except chain i, sending training symbols (e.g., OFDM training symbols) having a magnitude to optimize the received signal-to-noise ratio (SNR) without saturation in the receive chains while minimizing interference with other devices. These activities may be followed with calibrating as described for the second scheme above.
As shown in FIG. 5B, the training symbols 540 may be sent in a packet format to prevent nearby devices (e.g., other AP or STA devices) from interfering with calibration for the apparatus 500. For example, the packet length field in the physical layer convergence protocol (PLCP) header 578 may be used to indicate to nearby devices that calibration is in effect, and to prevent them from transmitting during that time. Training symbols 540 may be included in the data portion of the packet 530, where Sij is the training symbol for TPC setting i and AGC setting j. The packet 530 may be addressed to the device 500 itself.
Path loss between two calibrating antennas 512 coupled to the same apparatus 500 may be about 30-40 dB, and the path loss between two apparatus 500 or devices may be about 60-90 dB. Therefore, devices not in calibration mode should be able to operate while other devices are engaged in self-calibration. However, in some cases non-calibrating devices may interfere with self-calibrating devices, because calibration and training AGC levels may be set to normal operating levels, so that interfering signals have about the same level as training signals. Such difficulties may be resolved by sending additional calibration packets during the sleep mode, since the time spent in sleep mode by some apparatus 500 may be much longer than the time spent in active mode.
The apparatus 100, 200, 300, 500, systems 102, 202, 302, devices 104, 108, 204, 208, 304, 308, antennas 112, 120, 512, transmit chains 114, 124, receive chains 116, 126, communication chains 118, 128, 518, symbols 230, 234, 238, 240, 430, 434, 438, 440, 530, 540, data 244, 444, fields 448, 454, bits 450, 458, calibration module 160, estimation module 162, on-air signals 566, switching network 570, TPC setting 572, gain control setting 574, and PLCP header 578 may all be characterized as “modules” herein. Such modules may include hardware circuitry, and/or one or more processors and/or memory circuits, software program modules, including objects and collections of objects, and/or firmware, and combinations thereof, as desired by the architect of the apparatus 100, 200, 300, 500 and the systems 102, 202, 302, and as appropriate for particular implementations of various embodiments.
It should also be understood that the apparatus and systems of various embodiments can be used in applications other than transmitters and receivers, and other than for wireless systems, and thus, various embodiments are not to be so limited. The illustrations of apparatus 100, 200, 300, 500 and systems 102, 202, 302 are intended to provide a general understanding of the structure of various embodiments, and they are not intended to serve as a complete description of all the elements and features of apparatus and systems that might make use of the structures described herein.
Applications that may include the novel apparatus and systems of various embodiments include electronic circuitry used in high-speed computers, communication and signal processing circuitry, modems, processor modules, embedded processors, data switches, and application-specific modules, including multilayer, multi-chip modules. Such apparatus and systems may further be included as sub-components within a variety of electronic systems, such as televisions, cellular telephones, personal computers, personal digital assistants (PDAs), workstations, radios, video players, vehicles, and others.
FIG. 6 is a flow chart illustrating several training and calibration methods according to various embodiments. With respect to this figure, it should be noted that any of the numbers of communication chains discussed may correspond to a number of receive chains, and/or to a number of transmit chains, as desired for particular implementations of the method 611. Therefore, in light of the previous discussion with respect to the first scheme, it can be seen that a method 611 directed to the operation of various embodiments of the invention disclosed may (optionally) begin with receiving a request to transmit at a first number of communication chains at block 621 and determining one or more transmit power levels and/or receive gain levels associated with the first number of communication chains at block 625. The method 611 may include transmitting a clear to transmit response and a first number of training symbols from the first number of communication chains at block 631 and calibrating some number of transmit and receive chains included in the first number of communication chains at block 635. Thus, the method 611 may include transmitting a first number of training symbols corresponding to a first number of communication chains to solicit a response including a second number of training symbols corresponding to a second number of communication chains.
The method 611 may continue with receiving a clear to transmit response and the first number of training symbols at a second number of communication chains at block 641 and estimating one or more communications channels associated with the second number of communication chains based on the first number of training symbols at block 645. The method 611 may also include transmitting the second number of training symbols and data at block 651. Thus, the method 611 may include transmitting a second number of training symbols corresponding to a second number of communication chains in response to receiving a first number of training symbols corresponding to a first number of communication chains.
The method 611 may include calibrating some number of transmit and receive chains included in the second number of communication chains based on the second number of training symbols at block 655. The method 611 may continue with receiving the second number of training symbols and data at block 661 and estimating one or more communications channels associated with the first number of communication chains based on the second number of training symbols at block 665.
FIG. 7 is a flow chart illustrating several alternative training and calibration methods according to various embodiments. With respect to this figure, it should be noted that any of the numbers of communication chains discussed may correspond to a number of receive chains, and/or to a number of transmit chains, as desired for particular implementations of the method 711. Therefore, in light of the previous discussion with respect to the second scheme, it can be seen that a method 711 directed to the operation of various embodiments of the invention disclosed may (optionally) begin with transmitting a request to transmit and the first number of training symbols at block 721 and calibrating one or more of the first number of communication chains at block 725. Calibrating the first number of communication chains may occur during a sleep mode. The method 711 may also include transmitting a header including a length specification corresponding to the first number of training symbols. Thus, the method 711 may include transmitting a first number of training symbols corresponding to a first number of communication chains to solicit a response including a second number of training symbols corresponding to a second number of communication chains.
The method 711 may continue with receiving a request to transmit and the first number of training symbols at block 731 and estimating one or more channels associated with the second number of communication chains at block 735. The method 711 may include transmitting a clear to transmit response and the second number of training symbols at block 741 and calibrating one or more of the second number of communication chains at block 745. Calibrating the second number of communication chains may occur during a sleep mode. Thus, the method 711 may include transmitting a second number of training symbols corresponding to a second number of communication chains in response to receiving a first number of training symbols corresponding to a first number of communication chains.
The method 711 may continue with receiving a clear to transmit response and the second number of training symbols at block 751 and estimating one or more channels associated with the first number of communication chains at block 755. The method 711 may also include transmitting a header including a length specification corresponding to the second number of training symbols.
It should be noted that the methods described herein do not have to be executed in the order described, or in any particular order. Moreover, various activities described with respect to the methods identified herein can be executed in serial or parallel fashion. For the purposes of this document, the terms “information” and “data” may be used interchangeably. Information, including parameters, commands, operands, and other data, can be sent and received in the form of one or more carrier waves.
Upon reading and comprehending the content of this disclosure, one of ordinary skill in the art will understand the manner in which a software program can be launched from a computer-readable medium in a computer-based system to execute the functions defined in the software program. One of ordinary skill in the art will further understand the various programming languages that may be employed to create one or more software programs designed to implement and perform the methods disclosed herein. The programs may be structured in an object-orientated format using an object-oriented language such as Java, Smalltalk, or C++. Alternatively, the programs can be structured in a procedure-orientated format using a procedural language, such as assembly or C. The software components may communicate using any of a number of mechanisms well-known to those skilled in the art, such as application program interfaces or inter-process communication techniques, including remote procedure calls. The teachings of various embodiments are not limited to any particular programming language or environment, including Hypertext Markup Language (HTML) and Extensible Markup Language (XML). Thus, other embodiments may be realized.
For example, FIG. 8 is a block diagram of an article 885 according to various embodiments, such as a computer, a memory system, a magnetic or optical disk, some other storage device, and/or any type of electronic device or system. The article 885 may comprise a processor 887 coupled to a machine-accessible medium such as a memory 889 (e.g., a memory including an electrical, optical, or electromagnetic conductor) having associated information 891 (e.g., data or computer program instructions), which when accessed, results in a machine (e.g., the processor 887) performing such actions as transmitting a second number of training symbols corresponding to a second number of communication chains in response to receiving a first number of training symbols corresponding to a first number of communication chains. Other activities may include receiving a clear to transmit response and the first number of training symbols at the second number of communication chains, and estimating one or more communications channels associated with the second number of communication chains based on the first number of training symbols. Further activities may include transmitting the second number of training symbols and data, and calibrating some number of transmit and receive chains included in the second number of communication chains based on the second number of training symbols.
In some embodiments, an article including a machine-accessible medium having associated information, wherein the information, when accessed, results in a machine performing such activities as transmitting a first number of training symbols corresponding to a first number of communication chains to solicit a response including a second number of training symbols corresponding to a second number of communication chains. Additional activities may include transmitting a request to transmit and the first number of training symbols, and calibrating the first number of communication chains. Further activities may include receiving a clear to transmit response and the second number of training symbols, and estimating one or more channels associated with the first number of communication chains.
Implementing the apparatus, systems, and methods described herein may result in reducing the overhead used for calibration and training of various devices, including those forming a portion of a MIMO system. For packet sizes of approximately 500-1500 bytes, improvements in efficiency may be on the order of 30%-50%. Thus, this type of operation may in turn provide improved bandwidth utilization, and reduced communication costs.
The accompanying drawings that form a part hereof, show by way of illustration, and not of limitation, specific embodiments in which the subject matter may be practiced. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. This Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.
Such embodiments of the inventive subject matter may be referred to herein, individually and/or collectively, by the term invention merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.
The Abstract of the Disclosure is provided to comply with 37 C.F.R. §1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.

## Claims

1. An apparatus for a first wireless station (STA) comprising processing circuitry and memory configured to:
generate a calibration request for transmission to second wireless station (second STA);
process a response to the calibration request, the response received from the second STA and comprising a first number of training symbols corresponding to a first number of communication chains of the second STA;
configure a reply for transmission to the second STA, the reply to include a second number of training symbols corresponding to a second number of communication chains of the first STA, the reply configured based at least in part on the response; and
estimate channel matrices for a multiple-input multiple output (MIMO) channel between the first STA and the second STA based on receipt of the training symbols in the response.

2. The apparatus of claim 1, wherein the first number of communication chains corresponds to a first number of transmit chains of the second STA and the second number of communication chains corresponds to a second number of transmit chains of the first STA.

3. The apparatus of claim 1, wherein the first number of training symbols corresponds to a first number of antennas of the second STA to use for communication over the MIMO channel and the second number of training symbols corresponds to a second number of antennas of the first STA to use for communication over the MIMO channel.

4. The apparatus of claim 3 wherein the first number of training symbols comprise a first number of long-training fields received in a first sounding packet protocol data unit (PPDU) corresponding to the response, and
wherein the second number of training symbols comprise a second number of long-training fields sent in a second sounding PPDU corresponding to the reply.

5. The apparatus of claim 4 further configured to perform transmit beamforming based on the estimated channel matrices.

6. The apparatus of claim 4 wherein the ply is configured for a beamformed transmission based on one or more beamforming matrices estimated from the response.

7. The apparatus of claim 6 further configured to implicitly calibrate the communication chains to apply corrected beamforming matrices to provide a calibrated baseband-to-baseband channel between the first STA and the second STA.

8. The apparatus of claim 1 wherein the second request includes a request for channel state information (CSI), the CSI to be used for performance of transmit beamforming.

9. The apparatus of claim 1 further comprising transceiver circuitry configured by the processing circuitry to transmit the calibration request, receive the response, and transmit the reply,
the transceiver circuitry comprising at least the second number of communication chains.

10. The apparatus of claim 9 further comprising two or more antennas, wherein at least one of the antennas coupled to each of the communication chains of the transceiver circuitry.

11. A non-transitory computer-readable storage medium that stores instructions for execution by one or more processors of a first wireless station (STA) to configure the first STA to:
generate a calibration request for transmission to second wireless station (second STA);
process a response to the calibration request, the response received from the second STA and comprising a first number of training symbols corresponding to a first number of communication chains of the second STA;
configure a reply for transmission to the second STA, the reply to include a second number of training symbols corresponding to a second number of communication chains of the first STA, the reply configured based at least in part on the response; and
estimate channel matrices for a multiple-input multiple output (MIMO) channel between the first STA and the second STA based on receipt of the training symbols in the response.

12. The computer-readable storage medium of claim 11, wherein the first number of communication chains corresponds to a first number of transmit chains of the second STA and the second number of communication chains corresponds to a second number of transmit chains of the first STA.

13. The computer-readable storage medium of claim 11, wherein the first number of training symbols corresponds to a first number of antennas of the second STA to use for communication over the MIMO channel and the second number of training symbols corresponds to a second number of antennas of the first STA to use for communication over the MIMO channel.

14. The computer-readable storage medium of claim 13 wherein the first number of training symbols comprise a first number of long-training fields received in a first sounding packet protocol data unit (PPDU) corresponding to the response, and
wherein the second number of training symbols comprise a second number of long-training fields sent in a second sounding PPDU corresponding to the reply.

15. The computer-readable storage medium of claim 14 further configured to perform transmit beamforming based on the estimated channel matrices.

16. A method performed by a wireless station (STA), the method comprising:
generating a calibration request packet for transmission to second wireless station (second STA);
processing a response packet to the calibration request, the response packet received from the second STA and comprising a first number of training symbols corresponding to a first number of communication chains of the second STA;
configuring a reply packet for transmission to the second STA, the reply packet to include a second number of training symbols corresponding to a second number of communication chains of the first STA, the reply packet configured based at least in part on the response packet; and
estimating channel matrices for a multiple-input multiple output (MIMO) channel between the first STA and the second STA based on receipt of the training symbols in the response packet.

17. The method of claim 16, wherein the first number of communication chains corresponds to a first number of transmit chains of the second STA and the second number of communication chains corresponds to a second number of transmit chains of the first STA.

18. The method claim 16, wherein the first number of training symbols corresponds to a first number of antennas of the second STA to use for communication over the MIMO channel and the second number of training symbols corresponds to a second number of antennas of the first STA to use for communication over the MIMO channel.

19. The method of claim 18 wherein the first number of training symbols comprise a first number of long-training fields received in a first sounding packet protocol data unit (PPDU) corresponding to the response packet, and
wherein the second number of training symbols comprise a second number of long-training fields sent in a second sounding PPDU corresponding to the reply packet.

20. The method of claim 19 further configured to perform transmit beamforming based on the estimated channel matrices.