Patent Publication Number: US-7916081-B2

Title: Beamforming in MIMO systems

Description:
BACKGROUND OF THE INVENTION 
     I. Field of the Invention 
     This invention relates generally to wireless communication systems and more particularly to beamforming in a millimeter-wave wireless communication system. 
     II. Description of the Related Art 
     In one aspect of the related art, a dual-mode ultra-wideband (UWB) Physical Layer supporting single carrier and OFDM modulation employs a common mode. The UWB Physical Layer may be used for millimeter wave (e.g., 60 GHz) communications. The common mode is a single-carrier mode used by both single-carrier and OFDM devices for beaconing, network-control signaling, and base-rate data communications. The common mode is typically necessary for interoperability between different devices and different networks. 
     Millimeter-wave communications may also employ MIMO (multiple input multiple output) beamforming to provide both spatial diversity and array gains. Conventional beamforming, such as Eigen-beamforming, requires channel state information matrices or beamforming matrices to be returned to the transmitting array. The IEEE 802.11n MAC/PHY Specifications D0.04, March 2006, specifies feedback information that includes row and column sizes of the feedback matrices, subcarrier grouping size (or cluster size), quantization bit size, and an array of actual quantized data elements starting in the order of the lowest subcarrier index to the highest subcarrier index. For beamforming that employs precoding matrices, the feedback information can be reduced by replacing beamforming matrix contents with indices of a precoding-matrix codebook, such as described in the IEEE 802.16e MAC/PHY Specifications D12, 2005, and in D. J. Love, R. W. Heath Jr., and T. Strohmer, “Grassmannian Beamforming for Multiple-Input Multiple-Output Wireless Systems”, IEEE Trans. Information Theory, Vol. 49, No. 10, October 2003, pp. 2735-2747). 
     SUMMARY OF THE INVENTION 
     Embodiments disclosed herein are advantageous for systems employing UWB signals. However, the invention is not intended to be limited to such systems, as other wireless systems may benefit from similar advantages. 
     In one embodiment of the invention, a piconet controller employs a frame format for signaling to one or more wireless subscriber devices. The piconet controller and each of the one or more subscriber devices employ antenna arrays. The piconet controller transmits a signal with a frame format comprising a plurality of transmission segments, wherein each of the plurality of transmission segments is transmitted with a different beam pattern from a predetermined beamforming codebook. 
     The frame format also provides for a listening period that allows the piconet controller to listen for feedback (e.g., an acknowledgment) from the one or more subscriber devices. The piconet controller receives preferred beamforming weights calculated by each subscriber device and employs the beamforming weights in its array for communicating with the one or more subscriber devices. The piconet controller may also receive each subscriber device&#39;s calculated combining weights. 
     In one embodiment of the invention, the piconet controller may perform proactive beamforming in which it employs the beacon portion of a superframe when the piconet controller is the data source for one or more subscriber devices. In another embodiment, the piconet controller may perform on-demand beamforming, which employs a Channel Time Allocation (CTA) part of the superframe. On-demand beamforming is typically performed between two devices (e.g., between the piconet controller and a subscriber device, or between two subscriber devices). 
     The beacon portion includes a quasi-omni section and a directional section. The quasi-omni section may comprise a plurality of identical quasi-omni (Q-omni) sub-beacons (S-beacons), also referred to as transmission segments, covering different (and possibly overlapping) geographical areas around the piconet controller. Each Q-omni S-beacon is transmitted using a different Q-omni beamforming pattern selected from a Q-omni codebook. One Q-omni beamforming vector is used per Q-omni sub-beacon transmission. 
     The listening period also comprises a plurality of receiving segments. For example, the Contention Access Period (CAP) may be divided into a plurality of sub-CAPs. During the l th  sub-CAP, the piconet controller is in receiving mode, and it employs the same Q-omni beamformer vector used for transmission during the l th  Q-Omni beacon. The quasi-omni transmissions convey information about the structure of the directional training sections, and the directional training sections enable channel state information (CSI) acquisition and tracking. The directional section comprises a plurality of repetitions of a training sequence (which may also be referred to as transmission segments), where each repetition is transmitted by the piconet controller with a different orthogonal or quasi-orthogonal beamforming vector from an orthogonal (or quasi-orthogonal) codebook. 
     The applicant recognizes that the frame formats and methods described with respect to the piconet controller communicating with one or more subscriber devices may also be employed by subscriber devices communicating with the piconet controller and/or other subscriber devices. 
     In another embodiment of the invention, a subscriber device in a piconet is configured for selecting beamforming and combining weights. The subscriber device and the piconet controller both comprise an antenna array. The subscriber device receives a signal comprising a plurality of transmission segments transmitted by the piconet controller. Each of the plurality of transmission segments is transmitted with a different beam pattern from a predetermined beamforming codebook. The subscriber device receives at least a subset of the plurality of transmission segments and estimates a preferred beamforming vector therefrom. The subscriber device also estimates a preferred combining vector for processing it receives. At least the preferred beamforming vector is sent back to the piconet controller during a listening period 
     The applicant recognizes that the frame formats and methods described with respect to the subscriber device communicating with the piconet controller may also be employed by the piconet controller communicating with one or more subscriber devices. 
     In a further embodiment of the invention, a quasi-omni acquisition signaling protocol comprises a first transceiver transmitting a number L of quasi-omni packets followed by L listening periods (ACKs) until it receives an ACK in one of the L listening periods (e.g., at the l th  listening period). The first transceiver selects the l th  Q-omni direction for transmission from the Q-omni codebook. The second transceiver records its best Q-omni receiving direction and uses it for any future Q-omni reception. 
     Embodiments of the invention may also provide for a frame format for directional training employing periodic transmissions from the first transceiver to the second transceiver. For example, one cycle of directional training sequences transmitted by the first transceiver may correspond to all J orthogonal (quasi-orthogonal) beamforming vectors from a subset of the selected codebook. Each cycle is followed by a listening period (ACK) to listen to any feedback from the second transceiver. 
     The first transceiver repeats the period until the second transceiver acquires the CSI, H 1→2 (n) for n=0, 1, . . . , N−1, or finds an adequate LQI. The second transceiver estimates w 1  and c 2  and couples at least the w 1  estimate to the first transceiver during the listening (ACK) period. The first transceiver employs the w 1  beamforming estimate and the second transceiver employs the c 2  combining estimate for downlink (1→2) data communications. These estimates may be updated during a subsequent tracking step. Furthermore, this procedure may be performed for uplink (e.g., 2→1 data communications). 
     Embodiments of the invention may be optimized for minimum processing complexity, such as to enable suitability for real-time applications, rapid updates, low power consumption, and/or low cost processing components. Particular embodiments of the invention may be configured to provide for the previously recited features and advantages and/or alternative features and advantages. 
     Although particular embodiments are described herein, many variations and permutations of these embodiments fall within the scope and spirit of the invention. Although some benefits and advantages of the preferred embodiments are mentioned, the scope of the invention is not intended to be limited to particular benefits, uses, or objectives. Rather, embodiments of the invention are intended to be broadly applicable to different wireless technologies, system configurations, networks, and transmission protocols, some of which are illustrated by way of example in the figures and in the following description of the preferred embodiments. The detailed description and drawings are merely illustrative of the invention rather than limiting, the scope of the invention being defined by the appended claims and equivalents thereof. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Embodiments according to the present invention are understood with reference to the following figures. 
         FIG. 1  is a block diagram of an Asymmetric Antenna System, which may be employed in accordance with embodiments of the invention. 
         FIG. 2A  illustrates a beamforming method between a first transceiver and a second transceiver in accordance with an embodiment of the invention. 
         FIG. 2B  illustrates a beamforming-tracking method in accordance with an embodiment of the invention. 
         FIG. 3A  shows a pair of orthogonal antenna array patterns for a two-element array with an element spacing of λ/2 and binary beamforming/combining weights. 
         FIG. 3B  shows antenna array patterns for a three-element linear array having an element spacing of λ/2 and binary beamforming/combining weights. 
         FIG. 3C  shows a four orthogonal beam patterns generated by a four-element linear array with an element spacing of λ/2 and binary beamforming/combining weights. 
         FIG. 3D  shows five orthogonal beam patterns of a five-element linear array. 
         FIG. 3E  shows beam patterns of a six-element linear array with λ/2 element spacing. 
         FIG. 3F  shows orthogonal beam patterns of a seven-element linear array with λ/2-spacing. 
         FIG. 3G  shows the eight orthogonal beam patterns of an eight-element linear array with λ/2-spacing. 
         FIG. 4A  shows four antenna array patterns for a two-element array with an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4B  shows four antenna array patterns for a three-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4C  shows four orthogonal antenna array patterns for a four-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4D  shows beam patterns corresponding to an alternative codebook for a four-element array employing quadrature weights and an element spacing of λ/2. 
         FIG. 4E  shows beam patterns corresponding to an extended codebook for a four-element array. 
         FIG. 4F  shows six antenna array patterns for a five-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4G  shows eight antenna array patterns may be produced by a five-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4H  shows six non-orthogonal antenna array patterns for a six-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4I  shows eight antenna array patterns for a six-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4J  shows eight antenna array patterns for a seven-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4K  shows eight orthogonal antenna array patterns for an eight-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4L  shows twelve antenna array patterns for an eight-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 4M  shows sixteen antenna array patterns for an eight-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. 
         FIG. 5A  shows two complementary Golay patterns for a two-element array comprises two orthogonal beamforming (or combining) vectors 
         FIG. 5B  shows three quasi-orthogonal beam patterns for a three-element antenna array. 
         FIG. 5C  shows a pair of Golay complementary patterns for a four-element array 
         FIG. 5D  shows three quasi-orthogonal beam patterns corresponding to a codebook for a five-element array comprising three quasi-orthogonal beam-forming vectors. 
         FIG. 5E  shows three quasi-orthogonal beam patterns corresponding to a code book for a six-element array. 
         FIG. 5F  shows three quasi-orthogonal beam patterns corresponding to a code book for a seven-element array. 
         FIG. 5G  shows a pair of beam patterns generated from two complementary Golay vectors for an eight-element array 
         FIG. 6A  shows a pair of quasi-omni beam patterns for a two-element array. 
         FIG. 6B  shows a pair of quasi-omni beam patterns of a three-element array employing quadrature weights. 
         FIG. 6C  is a plot of two Golay complementary patterns generated by a four-element array with quadrature weights. 
         FIG. 6D  shows a quasi-omni pattern with maximum directivity of 2.55 dB generated by a five-element array 
         FIGS. 7A-7D  show quasi-omni beam patterns for a six-element array corresponding to vectors of a quasi-omni codebook 
         FIG. 8A  shows a pair of Golay complementary patterns generated by a six-element array. 
         FIG. 8B  shows three quasi-omni beam patterns generated by a seven-element array with quadrature weighting vectors. 
         FIG. 8C  shows a pair of complementary beam patterns generated by an eight-element array with quadrature weighting vectors. 
         FIGS. 8D-8E  show beam patterns with a pair of orthogonal beam forming/combining vectors generated for an eight element array. 
         FIG. 9  shows a superframe that may be employed in accordance with embodiments of the invention. 
         FIG. 10A  shows the packet structure of an S-beacon for OFDM. 
         FIG. 10B  shows the packet structure of an S-beacon for Single Carrier (SC) signaling. 
         FIG. 11A  illustrates a short OFDM training sequence. 
         FIG. 11B  shows a long OFDM training sequence. 
         FIG. 11C  shows a short single-carrier training sequence. 
         FIG. 11D  shows a long single carrier training sequence. 
         FIG. 12A  shows a superframe comprising a plurality M of cycles. 
         FIG. 12B  shows a cycle comprising a plurality of M superframes. 
         FIG. 13A  shows a beamforming information element of a transmission frame. 
         FIG. 13B  shows an antenna array information portion of the beamforming information element. 
         FIG. 13C  shows a training sequence information portion of the beamforming information element. 
         FIG. 14A  shows a superframe that may be employed in embodiments of the invention. 
         FIG. 14B  illustrates a quasi-omni acquisition signaling protocol in accordance with an embodiment of the invention. 
         FIG. 15  illustrates a frame format for directional training employing periodic transmissions from the first transceiver to the second transceiver. 
         FIG. 16A  illustrates a method for performing proactive beamforming in accordance with one embodiment of the invention. 
         FIG. 16B  illustrates a method for performing on-demand beamforming in accordance with an embodiment of the invention. 
         FIG. 17A  is a flow diagram of an on-demand beamforming method for SAS in accordance with one embodiment of the invention. 
         FIG. 17B  illustrates steps of an on-demand beamforming method for AAS in accordance with an embodiment of the invention. 
         FIG. 18A  illustrates a method in accordance with an embodiment of the invention that employs the frame format shown in  FIG. 15 . 
         FIG. 18B  illustrates a method in accordance with an alternative embodiment of the invention. 
     
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     Accordingly, while the embodiments of the present disclosure are susceptible to various modifications and alternative forms, specific exemplary embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that there is no intent to limit the invention to the particular forms disclosed, but on the contrary, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like numbers may refer to like elements throughout the description of the figures. 
     It should also be noted that in some alternative implementations, the functions/acts noted in the blocks may occur out of the order noted in the flowcharts. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality and procedures involved. 
     A transceiver that employs the same antenna(s) for both transmission and reception is referred to as a Symmetric Antenna System (SAS). A transceiver that employs one set of antennas for transmission and another set of antennas for reception (such as shown in  FIG. 1 ) is referred to as an Asymmetric Antenna System (AAS). A first transceiver  101  employs M T  transmit antennas and M R  receive antennas. A second transceiver  102  employs N T  transmit antennas and N R  receive antennas. 
     Channel model H 1→2  is used to express the propagation environment when transceiver  101  transmits signals to transceiver  102 . Similarly, channel model H 2→1  expresses the propagation environment when transceiver  102  transmits signals received by transceiver  101 . The channel models may be used to express any of the possible antenna configurations that may be employed in the related art. Furthermore, the channel models may be used to express different transmission protocols. In one embodiment of the invention, OFDM signaling with a cyclic prefix and an FFT length of N subcarriers may employ the same channel model as a transmission that is Single Carrier (SC) with a cyclic prefix having a burst length N. In such cases, it is typical to assume that the cyclic prefix is longer than any multipath delay spread between any transmit-receive pair of antenna elements. 
     An OFDM symbol stream or SC burst x(t) generated at the first transceiver  101  is expressed by 
                 x   ⁡     (   t   )       =       ∑     k   =   0       N   -   1       ⁢           ⁢       s   k     ⁢     δ   ⁡     (     t   -     kT   c       )             ,         
where T c  is the sample (or chip) duration, and s k  represents the complex data. The symbol stream is modulated by a beamforming vector w 1 =[w 1,1 , w 1,2 , . . . , w 1,M     T   ] T  prior to being transmitted into a communication channel. A MIMO channel may be expressed by frequency domain Channel State Information (CSI):
 
H 1→2 (n)εC M     T     ×N     R    
 
at frequency bin number n, such as
 
                   H     1   -&gt;   2       ⁡     (   n   )       =     [             h     1   ,   1       1   -&gt;   2       ⁡     (   n   )               h     1   ,   2       1   -&gt;   2       ⁡     (   n   )           …           h     1   ,     N   R         1   -&gt;   2       ⁡     (   n   )                   h     2   ,   1       1   -&gt;   2       ⁡     (   n   )               h     2   ,   2       1   -&gt;   2       ⁡     (   n   )           …           h     2   ,     N   R         1   -&gt;   2       ⁡     (   n   )               ⋮       ⋮       ⋱       ⋮               h       M   T     ,   1       1   -&gt;   2       ⁡     (   n   )               h       M   T     ,   2       1   -&gt;   2       ⁡     (   n   )           …           h       M   T     ,     N   R         1   -&gt;   2       ⁡     (   n   )             ]       ,         
where the terms h i,j (n) include both transmit and receive filtering, along with the channel response between the first transceiver&#39;s j th  transmit antenna and the second transceiver&#39;s i th  receive antenna.
 
     Signals received at the second transceiver are processed with a combining vector c 2 =[c 2,1  c 2,2  . . . c 2,N     R   ] T  to produce a combined baseband signal,
 
 y ( t )= c   2   H   [Σs   k δ( t−kT   c )   H   1→2 ( t ) w   1   +b ( t )],
 
where b(t) is the additive white Gaussian noise vector across the receive antennas of the second transceiver.
 
     The discrete channel model between the first transceiver&#39;s transmitter and the second transceiver&#39;s receiver is expressed by a Single Input Single Output (SISO) channel, 
               y   r     =           c   2   H     ⁢       ∑     k   =   0       L   -   1       ⁢           ⁢       H   k     ⁢     s     r   -   k       ⁢     w   1           +       c   2     ⁢     b   i         =         ∑     k   =   0       L   -   1       ⁢           ⁢       p   k     ⁢     s     r   -   k           +     b   i   ′               
where p k =c 2   H H k w 1 , and i denotes the sample (or chip) index within an OFDM sample (or single-carrier burst). The SISO channel has a frequency response at frequency bins n=0, 1, . . . , N−1 given by
 
 P   n   =c   2   H   H   1→2 ( n ) w   1 .
 
The discrete-frequency received signal model is:
 
 Y   n   =P   n   S   n   +B   n ,
 
where [S 0 , S 1 , . . . , S N ] is the OFDM data symbol (or the FFT of the SC data burst), and [B 0 , B 1 , . . . , B N ] is the additive white Gaussian noise vector.
 
     The channel model expressing the channel between the second transceiver&#39;s transmitter to first transceiver&#39;s receiver is given by
 
 Q   n   =c   2   H   H   2→1 ( n ) w   2  
 
For frequency bins n=0, 1, . . . , N−1. For both OFDM and SC, the Signal to Noise Ratio (SNR) on the n th  subcarrier is given by
 
     
       
         
           
             
               
                 
                   
                     
                       SNR 
                       n 
                       
                         1 
                         -&gt; 
                         2 
                       
                     
                     = 
                     
                       
                         
                           
                             E 
                             s 
                           
                           ⁢ 
                           
                             
                                
                               
                                 P 
                                 n 
                               
                                
                             
                             2 
                           
                         
                         
                           N 
                           0 
                         
                       
                       = 
                       
                         
                           
                             E 
                             s 
                           
                           ⁢ 
                           
                             
                                
                               
                                 
                                   c 
                                   2 
                                   H 
                                 
                                 ⁢ 
                                 
                                   
                                     H 
                                     
                                       1 
                                       -&gt; 
                                       2 
                                     
                                   
                                   ⁡ 
                                   
                                     ( 
                                     n 
                                     ) 
                                   
                                 
                                 ⁢ 
                                 
                                   w 
                                   1 
                                 
                               
                                
                             
                             2 
                           
                         
                         
                           N 
                           0 
                         
                       
                     
                   
                   , 
                 
               
             
             
               
                 
                   
                     SNR 
                     n 
                     
                       2 
                       -&gt; 
                       1 
                     
                   
                   = 
                   
                     
                       
                         
                           E 
                           s 
                         
                         ⁢ 
                         
                           
                              
                             
                               Q 
                               n 
                             
                              
                           
                           2 
                         
                       
                       
                         N 
                         0 
                       
                     
                     = 
                     
                       
                         
                           E 
                           s 
                         
                         ⁢ 
                         
                           
                              
                             
                               
                                 c 
                                 1 
                                 H 
                               
                               ⁢ 
                               
                                 
                                   H 
                                   
                                     2 
                                     -&gt; 
                                     1 
                                   
                                 
                                 ⁡ 
                                 
                                   ( 
                                   n 
                                   ) 
                                 
                               
                               ⁢ 
                               
                                 w 
                                 2 
                               
                             
                              
                           
                           2 
                         
                       
                       
                         N 
                         0 
                       
                     
                   
                 
               
             
           
         
       
     
     An effective SNR (ESNR) is defined as a mapping from the instantaneous subcarriers SNRs to an equivalent SNR that takes into account Forward Error Correction (FEC). There are many methods that can be used to compute the ESNR, including (by way of example, but without limitation) calculating the mean of the SNRs over the different subcarriers; employing a Quasi-Static Method (such as is commonly used in 3GPP2 and 1xEV-DV/DO communication systems); employing a Capacity effective SINR mapping (CESM), which is also used in 3GPP2 and 1xEV-DV/DO communication systems; using a CESM technique based on Convex Metric (which may be employed in 3GPP2 and 1xEV-DV/DO); and using an Exponential Effective SINR Mapping (EESM), which is also used in 3GPP2. 
     Different ESNR calculation methods may be used for SC and OFDM. For example, a Minimum Mean Square Error (MMSE) SC equalizer typically has an ESNR that can be approximated by the average of the SNRs over the different subcarriers. However, OFDM tends to have an ESNR that may be best approximated using the geometric mean of the SNRs over the different subcarriers. The various ESNR-calculation methods may be further configured to account for additional parameters, such as FEC, receiver imperfections, and/or bit-error rate (BER). 
     Embodiments of the invention may provide for one or more beamforming algorithms configured to select the beamforming vectors (w 1  and w 2 ) and the combining vectors (c 1  and c 2 ) that maximize at least one signal-quality parameter, such as the ESNR. In the general AAS case, the first transceiver  101  may transmit known information to the second transceiver  102 , which then derives matrices characterizing the channel state information. This enables estimates of w 1  and c 2  to be calculated. The second transceiver  102  may transmit known information to the first transceiver  101  to provide channel state information that allows for estimates of w 2  and c 1  to be calculated. Some embodiments of the invention may employ known data symbols, pilot signals, or other training information to be transmitted for acquiring channel state information. Alternative embodiments may employ blind adaptive processing or other techniques utilizing unknown transmitted data to derive channel state information. 
     In AAS, both directions of the link are used to estimate the vectors w 1 , w 2 , c 2 , and c 1 . For SAS, the beamforming vectors w 1  and w 2  and the combining vectors c 2  and c 1  in a particular direction should be equal. Thus, w 1 =w 2  and c 2 =c 1 , and only one direction of the link may be employed for calculating the vectors w 1 , w 2 , c 2 , and c 1 . 
       FIG. 2A  illustrates a beamforming method between a first transceiver and a second transceiver in accordance with an embodiment of the invention. For example, one transceiver may be a piconet controller and the other transceiver may be a piconet subscriber device. A channel state information (CSI) acquisition step  201  enables the second transceiver to acquire a first CSI matrix, which is used to estimate the first transceiver&#39;s optimal (or preferred) beamforming vector w 1  and the second transceiver&#39;s optimal (or preferred) combining vector c 2 . The CSI acquisition step may comprise configuring the first transceiver to transmit a subset of a beamforming codebook  211 . Furthermore, the second transceiver may be configured to employ a subset of a combining codebook  212  to acquire the first CSI matrix. 
     An estimation step  202  comprises producing the optimal beamforming vector w 1  and the optimal combining vector c 2 . It should be appreciated that the terms optimal beamforming vector and optimal combining vector denote estimates of optimal values, and the optimality of such estimates may be limited with respect to one or more processing constraints, including (but not limited to) loss of information due to quantization, simplifying assumptions that sacrifice some accuracy and/or precision in order to reduce computational complexity, and limited processing time, which may limit the number of iterative calculations. Other constraints may apply. For example, in some embodiments, a beamforming and/or combining vector resulting in a signal-quality metric above a predetermined threshold may be deemed as optimal relative to a subset of available vectors. Accordingly, the term “preferred beamforming vector” is equivalent to optimal beamforming vector, as used herein. Similarly, the term “preferred combining vector” is equivalent to optimal beamforming vector. The estimation  202  may employ any of various optimality criteria, such as EESM or mean SNR. 
     A feedback step  203  provides for sending the optimal beamforming vector w 1  (and, optionally, the optimal combining vector c 2 ) to the first transceiver  101 . For an AAS system, steps  201  to  203  are repeated wherein the designations of “first transceiver” and “second transceiver” are swapped. Thus, an optimal beamforming vector w 2  and an optimal combining vector c 1  are estimated. 
       FIG. 2B  illustrates a beamforming-tracking method in accordance with an embodiment of the invention. A tracking step  204  provides for tracking the beamforming and combining vectors. The tracking step  204  is similar to the acquisition step, except that the first transceiver transmits a subset of the beamforming codebook at a rate that is lower than the rate employed during acquisition  201 . Similarly, lower-rate updates  205  are made to the optimal beamforming vector w 1  and the optimal combining vector c 2 , and the values w 1  and c 2  are fed back  206  to the first transceiver  201 . For an AAS system, steps  204  to  206  are repeated, wherein the designations of “first transceiver” and “second transceiver” are swapped. Thus, the estimates for the optimal beamforming vector w 2  and the optimal combining vector c 1  are updated. 
     For a uniformly spaced linear antenna array with N elements, the array factor is defined by 
                 A   ⁡     (   θ   )       =       ∑     n   =   1     N     ⁢       w   n     ⁢     ⅇ     j2π   ⁢           ⁢     n   ⁡     (     d   /   λ     )       ⁢   cos   ⁢           ⁢   θ             ,         
where d is the spacing between array elements, θ denotes the angle from the axis of the linear array, λ is wavelength, and w 1  is the array element weight of the n th  array element. The antenna array directivity is given by
 
               D   =           max   ⁢            A   ⁡     (   θ   )            2           w   H     ⁢   Kw       ⁢           ⁢   where   ⁢           ⁢     K     n   ,   m         =         sin   ⁡     [     2   ⁢     π   ⁡     (     d   /   λ     )       ⁢     (     n   -   m     )       ]         2   ⁢     π   ⁡     (     d   /   λ     )       ⁢     (     n   -   m     )         ⁢           ⁢   n         ,     m   =       0   ⁢     :     ⁢   N     -   1             
The maximum possible directivity is D Max =N.
 
     The array factor of a two-dimensional array is given by 
                 A   ⁡     (     θ   ,   φ     )       =       ∑     m   =   1       N   x       ⁢       ∑     n   =   1       N   y       ⁢       w     m   ,   n       ⁢     ⅇ     j2π   ⁡     [         m   ⁡     (       d   x     /   λ     )       ⁢   sin   ⁢           ⁢   θcos   ⁢           ⁢   φ     +       n   ⁡     (       d   y     /   λ     )       ⁢   sin   ⁢           ⁢   θsin   ⁢           ⁢   φ       ]                 ,         
where d x  denotes array spacing along the x-axis, d y  is the array spacing along the y-axis, N x  is the number of elements along the x-axis, N y  is the number of elements along the y-axis, and φ is the rotation angle from the x-axis. The antenna weights w mn  may be expressed as w mn =w x,m w y,n , where m=0:N x −1, and n=0:N y −1. Thus, an antenna weight matrix may be expressed by W xy =w x w y   T .
 
     The array factor of a two-dimensional array that is separable into one-dimensional (x-axis and y-axis) array components is expressed as 
               A   ⁡     (     θ   ,   φ     )       =         A   x     ⁡     (     θ   ,   φ     )       ⁢       A   y     ⁡     (     θ   ,   φ     )                         A   x     ⁡     (     θ   ,   φ     )       =       ∑     n   =   1       N   x       ⁢       w     x   ,   n       ⁢     ⅇ     j2π   ⁢           ⁢     n   ⁡     (       d   x     /   λ     )       ⁢   sin   ⁢           ⁢   θcos   ⁢           ⁢   φ                           A   y     ⁡     (     θ   ,   φ     )       =       ∑     n   =   1       N   y       ⁢       w     y   ,   n       ⁢     ⅇ     j2π   ⁢           ⁢     n   ⁡     (       d   y     /   λ     )       ⁢   sin   ⁢           ⁢   θsin   ⁢           ⁢   φ                 
A 2-dimensional codebook W xy εC N     x     ×N     y    is expressed using a codebook for one-dimensional antenna arrays along the x-axis, w x εC N     x     ×1 , and a codebook for one-dimensional arrays along the y-axis, w y εC N     y     ×1 .
 
     In one embodiment of the invention, antenna array weights may comprise 0° or 180° for each antenna element. This is referred to as a binary embodiment wherein the beamforming and/or combining weights are selected from {+1, −1}. Thus, each antenna element is configured to transmit or receive I+Q (phase 0°) or −(I+Q) (phase 180°) signals. 
       FIG. 3A  shows a pair of orthogonal antenna array patterns for a two-element array with an element spacing of λ/2 and binary beamforming/combining weights. The codebook for this case comprises the pair of orthogonal beamforming/combining vectors given by the columns of the following weight matrix W 
             W   =       [           +   1           +   1               -   1           +   1           ]     .           
The first beam pattern has its maximum at 0°, and the second beam pattern is maximum at 90°.
 
       FIG. 3B  shows antenna array patterns for a three-element linear array having an element spacing of λ/2 and binary beamforming/combining weights. The codebook comprises three beamforming/combining vectors given by the columns of the weight matrix 
             W   =       [           +   1           +   1           +   1               -   1           +   1           +   1               +   1           -   1           +   1           ]     .           
In this case, the first beam pattern has its maximum at 0°, the second beam pattern is maximum at 60° and 120°, and the third pattern is maximum at 90°.
 
     In  FIG. 3C , a four-element linear array with an element spacing of λ/2 and binary beamforming/combining weights produces four orthogonal beam patterns. These beam patterns are characterized by a codebook of vectors given by columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 3D  shows five orthogonal beam patterns of a five-element linear array corresponding to orthogonal codebook vectors given by columns of the weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 3E  shows beam patterns of a six-element linear array with λ/2 element spacing. Orthogonal codebook vectors are given by columns of the following weight matrix 
             W   =       [           +   1           +   1           +   1           +   1           +   1           +   1               -   1           -   1           +   1           +   1           +   1           +   1               +   1           -   1           -   1           -   1           +   1           +   1               -   1           +   1           +   1           -   1           -   1           +   1               +   1           -   1           +   1           +   1           -   1           +   1               -   1           +   1           -   1           +   1           -   1           +   1           ]     .           
In an alternative embodiment, the following weight matrix may be employed
 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 3F  shows orthogonal beam patterns of a seven-element linear array with λ/2-spacing. The beam patterns correspond to codebook vectors given by columns of the weight matrix 
     
       
         
           
             W 
             = 
             
               [ 
               
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
               
               ] 
             
           
         
       
     
       FIG. 3G  shows the eight orthogonal beam patterns of an eight-element linear array with λ/2-spacing. The beam patterns correspond to codebook vectors given by columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
     In some embodiments of the invention, antenna array weights may comprise phases from the set of 0°, 90°, 180°, and 270°. Thus, quadrature weights are selected from {+1, −1, +j, −j}. An embodiment of the invention may provide for transmitting and/or receiving signals characterized by I (0°), −I (180°), Q (270°), and −Q (90°). An equivalent set of signals comprises I+Q, I−Q, −I+Q, and −I−Q. 
       FIG. 4A  shows four antenna array patterns for a two-element array with an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook for this case comprises the set of vectors given by the columns of the following weight matrix W 
             W   =       [           +   1           +   1           +   1           +   1               -   1           -   j           +   1           +   j           ]     .           
In this case, WW H =4I.
 
       FIG. 4B  shows four antenna array patterns for a three-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of vectors given by the columns of the following weight matrix 
             W   =       [           +   1           +   1           +   1           +   1               -   1           -   j           +   1           +   j               +   1           -   1           +   1           -   1           ]     .           
In this case, WW H =4I as well.
 
       FIG. 4C  shows four orthogonal antenna array patterns for a four-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of four orthogonal vectors given by the columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 4D  shows beam patterns corresponding to an alternative codebook for a four-element array employing quadrature weights and an element spacing of λ/2. Six beam-forming/combining vectors are given by columns of the weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         
                           + 
                           1 
                         
                       
                     
                     
                       
                         
                           - 
                           1 
                         
                       
                     
                     
                       
                         
                           + 
                           1 
                         
                       
                     
                     
                       
                         
                           - 
                           1 
                         
                       
                     
                   
                   ⁢ 
                   
                     
                       
                         
                           + 
                           1 
                         
                       
                     
                     
                       
                         
                           - 
                           j 
                         
                       
                     
                     
                       
                         
                           - 
                           1 
                         
                       
                     
                     
                       
                         
                           + 
                           1 
                         
                       
                     
                   
                   ⁢ 
                   
                     
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                     
                     
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           + 
                           j 
                         
                       
                       
                         
                           - 
                           1 
                         
                       
                     
                     
                       
                         
                           - 
                           j 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           - 
                           1 
                         
                       
                       
                         
                           - 
                           j 
                         
                       
                     
                     
                       
                         
                           - 
                           1 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                       
                         
                           - 
                           1 
                         
                       
                       
                         
                           + 
                           1 
                         
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
     Beam patterns corresponding to an extended codebook for a four-element array are shown in  FIG. 4E . The array comprises elements with λ/2-spaced and quadrature beamforming/combining weights. The codebook comprises the set of eight vectors given by the columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 4F  shows six antenna array patterns for a five-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of vectors given by the columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
     In  FIG. 4G , eight antenna array patterns may be produced by a five-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights according to a codebook of vectors represented by columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 4H  shows six non-orthogonal antenna array patterns for a six-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of six vectors given by the columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 4I  shows eight antenna array patterns for a six-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of eight vectors given by the columns of the following weight matrix 
               W   =     [           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1               -   1           -   j           -   j           -   j           +   1           +   j           +   j           +   j               +   1           +   j           -   1           -   j           +   1           +   j           -   1           -   j               -   1           +   1           +   j           -   1           +   1           -   1           -   j           +   1               +   1           -   1           +   1           -   1           +   1           -   1           +   1           -   1               -   1           +   j           -   j           +   j           +   1           -   j           +   j           -   j           ]       ,         
wherein WW H =8I.
 
       FIG. 4J  shows eight antenna array patterns for a seven-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of eight vectors given by the columns of the following weight matrix in which the relationship WW H =8I also holds. 
     
       
         
           
             W 
             = 
             
               [ 
               
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       j 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       j 
                     
                   
                 
               
               ] 
             
           
         
       
     
       FIG. 4K  shows eight orthogonal antenna array patterns for an eight-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of eight orthogonal vectors given by the columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 4L  shows twelve antenna array patterns for an eight-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of eight vectors given by the columns of the following weight matrix 
     
       
         
           
             W 
             = 
             
               
                 [ 
                 
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                   
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         1 
                       
                     
                   
                   
                     
                       
                         - 
                         1 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                     
                       
                         - 
                         j 
                       
                     
                     
                       
                         + 
                         j 
                       
                     
                     
                       
                         + 
                         1 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
       FIG. 4M  shows sixteen antenna array patterns for an eight-element array employing an element spacing of λ/2 and quadrature beamforming/combining weights. The codebook comprises the set of eight vectors given by the columns of the following weight matrix 
               W   =     [           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1           +   1               -   1           -   1           -   j           -   j           -   j           -   j           -   j           +   1           +   1           +   1           +   j           +   j           +   j           +   j           +   j           -   1               +   1           +   1           +   j           -   1           -   1           -   1           -   j           +   1           +   1           +   1           +   j           -   1           -   1           -   1           -   j           +   1               -   1           -   1           +   1           +   j           +   j           +   j           -   1           +   1           +   1           +   1           +   j           -   j           -   j           -   j           +   1           -   1               +   1           +   j           -   1           -   j           +   1           +   j           -   1           -   j           +   1           +   j           -   1           -   j           +   1           +   j           -   1           -   j               -   1           -   j           +   j           -   1           -   j           +   1           +   j           -   j           +   1           +   j           -   1           +   1           +   j           -   1           -   j           +   j               +   1           +   j           -   j           +   j           -   1           -   j           +   j           -   j           +   1           +   j           -   j           +   j           -   1           -   j           +   j           -   j               -   1           -   j           -   1           +   1           +   j           -   1           +   1           -   j           +   1           +   j           +   1           -   1           -   j           +   1           -   1           +   j           ]       ,         
wherein WW H =16I.
 
     Some embodiments of the invention may provide for quasi-omni and complementary Golay codebooks employing binary beamforming/combining weights for antenna arrays having from two to eight antenna elements (N=2 . . . 8). The beamformer weights are +1 or −1. A +1 weight on an antenna element means that +I (a positive in-phase signal) is transmitted on that antenna element, whereas a −1 weight means that −I (a negative in-phase signal) is transmitted on that antenna element. Each codebook may contain multiple options for quasi-omni patterns. Depending on the polar and azimuthal antenna gain patterns, one or more quasi-omni patterns may be used. Real complementary Golay patterns exist for N=2, 4, and 8 only. Depending on the polar and azimuthal antenna gain pattern, one or both complementary patterns can be used. 
     A quasi-omni codebook for a two-element array comprises two orthogonal beamforming (or combining) vectors given by the columns of the weight matrix 
             W   =       [           +   1           +   1               -   1           +   1           ]     .           
The two complementary Golay patterns g 1 (θ,φ) and g 2 (θ,φ), where g 1 (θ,φ)+g 2 (θ,φ)=2, are shown in  FIG. 5A . The first pattern is maximum in direction 0° and has a HPBW of 120.5° and maximum directivity of 3.0 dB. The second pattern is maximum in direction 90° with a HPBW of 60.4° and maximum directivity of 3.0 dB.
 
     A quasi-omni codebook for a three-element antenna array comprising three quasi-orthogonal beamforming/combining vectors is given by the columns of weight matrix W 
             W   =     [           +   1           +   1           +   1               -   1           +   1           +   1               +   1           -   1           +   1           ]           
The resulting quasi-orthogonal beam patterns are shown in  FIG. 5B . The first pattern is maximum in direction 0° and has a HPBW of 93.4° and maximum directivity of 4.77 dB. The second pattern is maximum in directions 60° and 120° with a HPBW of 40.4° and maximum directivity of 2.2 dB. The third pattern is maximum in direction 90° and has a HPBW of 36.7° and maximum directivity of 4.77 dB.
 
     A pair of Golay complementary patterns g 1 (θ,φ)+g 2 (θ,φ)=1.77 is shown in  FIG. 5C . Two orthogonal beamforming/combining vectors are given by the columns of the following weighting matrix for a four-element array 
             W   =       [           +   1           +   1               -   1           +   1               +   1           +   1               +   1           -   1           ]     .           
The first pattern is maximum in directions 46° and 134°, has a HPBW of 123.0° and maximum directivity of 2.48 dB. The second pattern is maximum in directions 72° and 108° with a HPBW of 62.9° and maximum directivity of 2.48 dB.
 
       FIG. 5D  shows three quasi-orthogonal beam patterns corresponding to a codebook for a five-element array comprising three quasi-orthogonal beam-forming vectors. The codebook vectors are the columns of the following weighting matrix. 
             W   =       [           +   1           +   1           +   1               -   1           +   1           +   1               +   1           -   1           +   1               +   1           +   1           +   1               +   1           +   1           -   1           ]     .           
The first pattern is maximum in direction 0°, with a HPBW of 109.3° and maximum directivity of 2.55 dB. The second pattern is maximum in directions 54° and 126°, with a HPBW of 63.5° and maximum directivity of 3.25 dB. The third pattern is maximum in directions 79° and 101°, with a HPBW of 43.8° and maximum directivity of 3.22 dB.
 
       FIG. 5E  shows three quasi-orthogonal beam patterns corresponding to a code book for a six-element array. The codebook comprises three quasi-orthogonal beam-forming vectors, which are columns of the following weighting matrix. 
             W   =       [           +   1           +   1           +   1               -   1           +   1           +   1               +   1           -   1           +   1               -   1           +   1           +   1               +   1           +   1           +   1               +   1           +   1           -   1           ]     .           
In this case, the first pattern is maximum in directions 23° and 157°, with a HPBW of 88.2° and maximum directivity of 4.30 dB. The second pattern is maximum in directions 57° and 123°, with a HPBW of 20.0° and maximum directivity of 5.11 dB. The third pattern is maximum in directions 85° and 95°, with a HPBW of 32.7° and maximum directivity of 4.30 dB.
 
       FIG. 5F  shows three quasi-orthogonal beam patterns corresponding to a code book for a seven-element array. The codebook comprises three quasi-orthogonal beam-forming vectors, which are columns of the following weighting matrix. 
             W   =       [           +   1           +   1           +   1               -   1           +   1           -   1               +   1           +   1           -   1               -   1           -   1           +   1               -   1           -   1           +   1               +   1           +   1           +   1               +   1           -   1           +   1           ]     .           
The first pattern has a HPBW of 133.3° and maximum directivity of 2.77 dB. The second pattern has a HPBW of 109.7° and maximum directivity of 1.39 dB. The third pattern has a HPBW of 53.8° and maximum directivity of 2.77 dB.
 
     A quasi-omni codebook for an eight-element array comprises two orthogonal beamforming (or combining) vectors given by the columns of the weight matrix 
             W   =     [           +   1           +   1               +   1           -   1               -   1           -   1               -   1           +   1               +   1           +   1               -   1           +   1               +   1           +   1               -   1           +   1           ]           
The two complementary Golay patterns g 1 (θ,φ)+g 2 (θ,φ)=2 are shown in  FIG. 5G . The first pattern is maximum in direction 0° and has a HPBW of 98.70 and maximum directivity of 3.0 dB. The second pattern is maximum in direction 90° with a HPBW of 40.9° and maximum directivity of 3.0 dB.
 
     A quasi-omni codebook for a two-element array employing quadrature weights is identical to the case in which binary weights are employed. Thus, the codebook comprises two orthogonal beamforming (or combining) vectors given by the columns of the weight matrix 
             W   =       [           +   1           +   1               -   1           +   1           ]     .           
The two complementary Golay patterns g 1 (θ,φ) and g 2 (θ,φ), where g 1 (θ,φ)+g 2 (θ,φ)=2, are shown in  FIG. 6A . The first pattern is maximum in direction 0° and has a HPBW of 120.5° and maximum directivity of 3.0 dB. The second pattern is maximum in direction 90° with a HPBW of 60.4° and maximum directivity of 3.0 dB.
 
       FIG. 6B  shows a pair of quasi-omni beam patterns of a three-element array employing quadrature weights. The codebook comprises the pair of quadrature vectors derived from the pair of columns in the following weight matrix 
             W   =       [           +   1           +   1               +   j           +   1               +   1           -   1           ]     .           
One pattern has a HPBW of 123.6° and the other pattern has a HPBW of 80.0°. Both patterns have a maximum directivity of 2.22 dB.
 
       FIG. 6C  is a plot of two Golay complementary patterns g 1 (θ,φ) and g 2 (θ,φ), where g 1 (θ,φ)+g 2 (θ,φ)=2, generated by a four-element array with quadrature weights. The resulting quasi-omni codebook for this case is given by vectors represented by the columns of the following weight matrix 
             W   =       [           +   1           +   1               -   j           +   j               +   j           +   j               -   1           +   1           ]     .           
The first pattern is maximum in direction 0° and has a HPBW of 83.4° and maximum directivity of 3.01 dB. The second pattern is maximum in direction 90° with a HPBW of 29.4° and maximum directivity of 3.01 dB.
 
       FIG. 6D  shows a quasi-omni pattern with maximum directivity of 2.55 dB generated by a five-element array employing a weight vector w=[+1 −1 +1 +1 +1], which is the quasi-omni codebook for this case. 
       FIGS. 7A-7D  show quasi-omni beam patterns for a six-element array corresponding to vectors of a quasi-omni codebook, wherein each vector is a column of the following weight matrix 
             W   =       [           +   1           +   1           +   1           +   1               -   1           -   1           +   1           +   1               +   j           -   j           -   j           +   j               -   1           -   1           -   1           -   1               +   j           -   j           +   1           +   1               +   j           -   j           -   1           -   1           ]     .           
The quasi-omni beam patterns shown in  FIGS. 7A and 7B  have maximum directivity of 2.39 dB, and the quasi-omni patterns shown in  FIGS. 7C and 7D  have maximum directivity of 2.86 dB.
 
     A six-element array is configured to generate the pair of Golay complementary patterns g 1 (θ,φ) and g 2 (θ,φ), where g 1 (θ,φ)+g 2 (θ,φ)=1.93, shown in  FIG. 8A . A related pair of orthogonal beamforming/combining vectors comprises the columns of the following weight matrix 
             W   =       [           +   1           +   1               -   j           +   j               -   j           -   j               -   j           +   j               +   1           +   1               +   j           -   j           ]     .           
The first pattern is maximum in directions 31° and 149°, has a HPBW of 120.7° and maximum directivity of 2.86 dB. The second pattern is maximum in directions 82° and 98° with a HPBW of 61.2° and maximum directivity of 2.86 dB.
 
       FIG. 8B  shows three quasi-omni beam patterns from a seven-element array with quadrature weighting vectors. The vectors are components of a quasi-omni codebook and include the columns of the following weight matrix 
             W   =       [           +   1           +   1           +   1               +   j           +   1           -   1               -   1           +   1           -   1               +   j           -   1           +   1               -   1           -   1           +   1               +   j           +   1           +   1               +   1           -   1           +   1           ]     .           
The maximum directivity of the first two patterns is 1.39 dB, and the maximum directivity of the third pattern is 2.77 dB.
 
     An eight-element array can employ a codebook comprising a pair of quadrature weight vectors (expressed by columns of the following weight matrix) to produce two complementary beam patterns shown in  FIG. 8C . 
             W   =     [           +   1           +   1               +   1           -   1               -   1           -   1               -   1           +   1               +   1           +   1               -   1           +   1               +   1           +   1               -   1           +   1           ]           
Both patterns have maximum directivity of 3.0 dB. One pattern is maximum in direction 0° and has a HPBW of 98.7°, and the other pattern is maximum in direction 90° and has a HPBW of 40.9°.
 
     A pair of orthogonal beamforming/combining vectors (shown in  FIGS. 8D and 8E ) may also be generated for an eight-element array using the following weight matrix 
     
       
         
           
             W 
             = 
             
               [ 
               
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       - 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       + 
                       1 
                     
                   
                 
                 
                   
                     
                       + 
                       1 
                     
                   
                   
                     
                       - 
                       1 
                     
                   
                 
               
               ] 
             
           
         
       
     
     Some embodiments of the invention may employ a sectored antenna array (SEAA) or a switched antenna array (SWAA). The codebook for an N-element SEAA or SWAA may be expressed by an identity matrix: 
             W   =     [         1       0       ⋯       0           0       1       ⋱       ⋮           ⋮       ⋱       ⋱       0           0       ⋯       0       1         ]           
Each beamforming vector has only one non-zero entry since only one antenna element is active at a time.
 
     One embodiment of the invention provides for a unified messaging protocol that is independent of antenna configuration and estimation algorithms employed for beamforming (i.e., estimating w and c). The messaging protocol may be configured to support a variety of antenna configurations used for transmitting and receiving. Such configurations may include beamforming antenna arrays, such as phased arrays. Antenna configurations may include sectored and switched antenna arrays. Antenna configuration may be defined by a variety of beam patterns, including omni, quasi-omni, or directional single antenna. The messaging protocol also supports SAS and AAS configurations, and it may be configured to support proactive and on-demand beamforming. In one embodiment, the messaging protocol is further configured to support a variety of link models, including (but not limited to) per-packet beamforming between a piconet controller and multiple subscriber devices, a link between a piconet controller and a single subscriber device, and peer-to-peer links between subscriber devices. 
     Embodiments of the invention may provide for a plurality of beamforming protocols to be implemented, including a proactive beamforming protocol and an on-demand beamforming protocol. Proactive beamforming is performed using the beacon portion of a superframe (such as shown in  FIG. 9 ) and is used when the piconet controller is the data source for one or more subscriber devices. For example, the piconet controller may be a Kiosk, STB, or Laptop computer, and it is configured to send each packet in at least one of a plurality of different directions to the destination device. 
     On-demand beamforming may be employed for transmissions between two subscriber devices or between a piconet controller and one subscriber device. On-demand beamforming employs the Channel Time Allocation (CTA) part of the superframe (such as shown in  FIG. 9 ) allocated to the pair of transceivers. In both beamforming protocols, quasi-omni transmissions convey information about the structure of the directional training sections, and the directional training sections enable CSI acquisition and tracking. 
     The piconet controller beacon comprises at least one quasi-omni (Q-omni) section and at least one directional section. In one embodiment, the Q-omni section has L identical Q-omni sub-beacons (S-beacons) covering different (and possibly overlapping) geographical areas around the piconet controller. The aggregated coverage of the Q-omni S-beacons covers the target space around the piconet controller. Each Q-omni S-beacon is transmitted using a different Q-omni beamforming pattern selected from a Q-omni codebook. 
     In the embodiment shown in  FIG. 9 , the directional section may comprise N repetitions of a training sequence (i.e., a plurality N of directional training segments) where each repetition is transmitted by the piconet controller with a different orthogonal or quasi-orthogonal beamforming vector from an orthogonal (or quasi-orthogonal) codebook. In this case, the directional training segments are sent back-to-back, except for a small guard interval. However, alternative embodiments of the invention may provide for interleaving (or otherwise positioning) Q-omni training segments within the directional section. For example, a Q-omni training segment may have the same format as a directional training segment, but it is sent omni-directionally. In one embodiment, a Q-omni training segment follows each directional training segment. A subscriber device uses the Q-omni training segments to help compensate for timing and frequency drift, as such compensation is necessary for generating accurate estimates of the CSI. 
     The Contention Access Period (CAP) is divided into L identical periods referred to as Sub-CAPs (S-CAPs). The L S-CAPs correspond to the L Q-omni beacons. During the l th  S-CAP, the piconet controller is in a receiving mode using the same Q-omni beamformer vector it used for transmission during the l th  Q-Omni beacon. 
       FIG. 10A  shows the packet structure of an S-beacon for OFDM, and  FIG. 10B  shows the packet structure of an S-beacon for Single Carrier (SC) signaling. Depending on the antenna gain of the Q-omni beacon, the piconet controller may adjust the length of the SYNC, the data rate in the header, and the PSDU fields. 
     The number L of Q-omni S-beacons may be reduced in order to reduce overhead. For a single antenna, L=1. For SAA, L is the number of sector (or switched) antennas. In beamforming or phased-array configurations, L equals 1 or 2, but it may be more. During transmission, the piconet controller employs L Quasi-omni beamforming vectors from a corresponding quasi-omni codebook, and one Q-omni beamforming vector is used per Q-omni sub-beacon transmission. 
     In one embodiment of the invention, L=1 for a transmitting phased array with six elements, which employs a one-dimensional vector w=[+1 −1 +j −1 +j +j] T  to transmit the Q-omni sub-beacon. In a different embodiment, L=2 for a two-dimensional phased antenna array wherein N x =4 and N y =3. The first Q-omni sub-beacon is transmitted using the beamforming matrix, W xy,11 =w x,1 w y,1   T , where w x,1 =[+1 −j +j −1] T , and w y,1 =[+1 +1 −1] T . The second Q-omni sub-beacon is transmitted using the beamforming matrix, W xy,21 =w x,2 w y,1   T , where w x,2 =[+1 +j +j +1] T  and w y,1 =[+1 +1 −1] T . 
     The directional section of the frame shown in  FIG. 9  comprises N repetitions of a training sequence.  FIG. 11A  illustrates a short OFDM training sequence.  FIG. 11B  shows a long OFDM training sequence.  FIG. 11C  shows a short single-carrier training sequence.  FIG. 11D  shows a long single carrier training sequence. The sequences denoted by vectors u 512 , v 512 , and s 512  are described in Provisional Application Ser. No. 60/985,957, filed Nov. 6, 2007, which is incorporated by reference in its entirety. 
     The training sequence includes N s  repetitions (where N s  may be zero) of a sync sequence s followed by N c  (e.g., one or two) repetitions of the CES field. Each training sequence transmitted by a piconet controller employs a different orthogonal (or quasi-orthogonal) beam pattern selected from an orthogonal (or quasi-orthogonal) codebook. In the case where OFDM and single-carrier employ short training sequences, the two sync sequence may be used for automatic gain control (AGC). Furthermore, the CES field may be used to acquire the CSI. A matched-filter receiver may align and add the outputs of a Golay matched filter configured to correlate the received signal with the modified Golay sequences u and v to produce a perfect channel estimate. Also, the receiver may produce a difference signal, which provides a perfect noise estimate. 
     In one embodiment, a beamforming antenna array with N x =4 and N y =2. employs a length-4 x-axis codebook: 
                   W   =     [           w     x   ,   1             w     x   ,   2             w     x   ,   3             w     x   ,   4             ]                 =     [           +   1           +   1           +   1           +   1               -   1           -   j           +   1           +   j               +   1           -   1           +   1           -   1               -   1           +   j           +   1           -   j           ]                 
The corresponding length-2 y-axis codebook is
 
                 W   y     =       [           w     y   ,   1             w     y   ,   2             ]     =     [           +   1           +   1               -   1           +   1           ]         ,         
wherein the total number of orthogonal beamforming matrices is J=8, i.e. W xy,mn =W x,m W y,n   T , where m=1, . . . , 4 and n=1, 2:
 
                 W     xy   ,   11       =     [           +   1           -   1               -   1           +   1               +   1           -   1               -   1           +   1           ]       ,     
     ⁢       W     xy   ,   12       =     [           +   1           +   1               -   1           -   1               +   1           +   1               -   1           -   1           ]       ,   …   ⁢           ,     
     ⁢       W     xy   ,   42       =       [           +   1           -   1               +   j           -   j               -   1           +   1               -   j           +   j           ]     .             
In this case, the piconet controller completes a cycle of training by transmitting J=8 training sequences, each one being sent in a different direction as specified by the beamforming matrices W xy,11 , W xy,12 , . . . , W xy4,2 . For example, the first training sequence is sent in the direction corresponding to beamforming matrix W xy,11 , the second training sequence is sent in the direction corresponding to beamforming matrix W xy,12 , etc.
 
     In some embodiments, the piconet controller may be configured to employ only a subset of the available beamforming matrices. For example, the piconet controller may transmit over a restricted angular range (e.g., 180°, instead of 360°). The piconet controller employs a directional codebook, which is the subset of possible beamforming matrices that the piconet controller could use to train the subscriber devices. If the directional codebook is of size J, a transmission of J training sequences in the corresponding J directions is referred to as a cycle. In some embodiments, the L identical Q-omni S-beacons may include indices of the codebook vectors selected by the piconet controller. The Q-omni S-beacons may also convey the number of cycles per superframe and/or the number of superframes per cycle. 
       FIG. 12A  shows a superframe comprising M cycles, whereas  FIG. 12B  shows a cycle occurring every M superframes. A subscriber device is configured to listen to the Q-omni transmissions from a piconet controller. Upon detection, the subscriber device decodes the content of the Q-omni S-beacon to obtain the structure of the directional section. The subscriber device selects a first codebook vector to steer its antenna to a first direction. The subscriber device selects a second codebook vector to steer its antenna to a second direction, and it may repeat this procedure for each codebook vector. Alternatively, the subscriber device may select codebook vectors from a subset of the codebook. The subscriber device calculates the CSI matrix, H, from which it estimates the optimal beamforming weights for the piconet controller and the optimal combining vector for itself. In the SAS case, the subscriber device may listen to the Q-omni transmissions until it determines a combination of weights that it deems to provide adequate link quality. The resulting beamforming weights are transmitted back to the piconet controller. 
       FIG. 13A  shows a beamforming information element of a transmission frame comprising training sequence information, antenna array information about the transmit and receive antennas, antenna type, a Q-Omni S-beacon identifier, and the number of Q-Omni S-beacons. The antenna type may include information about the piconet controller antenna (e.g., single antenna, beamforming array, phased array, SEAA, SWAA), SAS or AAS antenna configuration, and whether quadrature or binary weights are used for the transmit and receive sides. The fields of the beamforming information element may be adapted for different antenna configurations. For example, the training sequence information and the antenna array information may be omitted for a single antenna configuration or a switched antenna array. 
       FIG. 13B  shows the antenna array information portion of the beamforming information element. This information may include the number N x  of antennas along the x-axis, ID of the codebook used along the x-axis, the number N y  of antennas along the y-axis, and ID of the codebook used along the y-axis in the case of a two-dimensional array. Some embodiments may include the size J x  and ID of the subset of the beamforming vectors to be used along the x-axis, and the size J y  and ID of the subset of the beamforming vectors to be used along the y-axis. 
       FIG. 13C  shows the training sequence information portion of the beamforming information element, which includes the guard interval duration in units of 32×T c  (where T c  is the chip or sampling duration), the number of CES repetitions, N c , and the number of SYNC repetitions, N s , and the number of training sequence repetitions. 
       FIG. 16A  illustrates a method for performing proactive beamforming. A piconet controller transmits  1601  a number L of Q-omni S-beacons and a number N of directional training sequences per superframe. A subscriber device listens to and decodes  1602  at least one of the Q-omni S-beacons, from which it acquires information related to the directional section. In one embodiment of the invention, the subscriber device may listen to the entire set of Q-omni S-beacons. The subscriber device selects  1603  an appropriate subset of an orthogonal (or quasi-orthogonal) codebook and begins a scanning procedure using the selected combining vectors. 
     In one embodiment, when the subscriber device steers to a particular direction using a vector from the codebook and listens to a transmitted cycle, it may store a Link quality Factor (LQF). This process is repeated until the subscriber device finds an l th  LQF above a predetermined threshold, or until it has finished listening to all the codebook vectors and acquires the CSI matrix. 
     The subscriber device estimates  1604  its optimal combining vector c 2  and an optimal beamforming vector w 1  for the piconet controller. The estimated optimal beamforming vector w 1  (and optionally, the optimal combiner vector c 2 ) are fed back  1605  to the piconet controller during the l th  S-CAP. 
     In the SAS case, the subscriber device and the piconet controller exchange  1606  data packets during a CTAP. The subscriber device may track  1607  the beamforming and combining vectors by periodically scanning the beacon. The subscriber device may periodically feed back  1608  any updates to w and c. 
     In the AAS case, steps  1606 - 1608  are bypassed. Instead, on-demand beamforming may be used during the CTAP allocated to the communication link in order to complete bi-directional beamforming. As shown in  FIG. 16B , the piconet controller acquires  1616  the uplink CSI, H 2→1 (n) for n=0, 1, . . . , N−1, to estimate its optimal combining vector c 1  and the subscriber device&#39;s optimal beamforming vector w 2 , and then conveys  1617  at least the beamforming weight vector w 2  to the subscriber device. Once acquisition is complete, the subscriber device may transmit  1618  an infrequent “directional acquisition period” (e.g., once every few microseconds) to allow the piconet controller to track and update w 2  and c 1 . The update rate (tracking rate) depends on the maximum Doppler that the system can tolerate. For a pedestrian speed of 3 m/s at 60 GHz, the Doppler frequency is f d =600 Hz, and the coherence time is approximately 0.3 ms, which allows an update rate of once every 0.3 ms or less. 
     On-demand beamforming (which is performed between two subscriber devices or between a piconet controller and one subscriber device) employs the Channel Time Allocation (CTA) part of the superframe shown in  FIG. 14A .  FIG. 17A  is a flow diagram of an on-demand beamforming method for SAS in accordance with one embodiment of the invention. Antenna information is exchanged  1701  during association such that each transceiver knows the antenna array processing capabilities (e.g., number of array elements, range of antenna-element weights, etc.) of the other transceiver(s). Quasi-omni acquisition  1702  is performed as a first transceiver transmits a Q-omni S-beacon to a second transceiver. Directional acquisition  1703  is performed as the first transceiver transmits a directional training sequence to the second transceiver. Once acquisition is complete, the system may perform tracking  1704  as the first transceiver transmits data to the second transceiver. 
       FIG. 17B  illustrates steps of an on-demand beamforming method for AAS in accordance with an embodiment of the invention. Antenna information is exchanged  1701  during association. Quasi-omni acquisition  1702  is performed as a first transceiver transmits a Q-omni S-beacon to a second transceiver. Directional acquisition  1703  is performed as the first transceiver transmits a directional training sequence to the second transceiver. Quasi-omni acquisition  1712  is performed as the second transceiver transmits a Q-omni S-beacon to the first transceiver. Similarly, directional acquisition  1713  is performed as the second transceiver transmits a directional training sequence to the first transceiver. Once acquisition in both directions is complete, the system may perform tracking  1714  as the first transceiver transmits data to the second transceiver and/or the second transceiver transmits data to the first transceiver. 
       FIG. 14B  illustrates a quasi-omni acquisition signaling protocol in accordance with an embodiment of the invention. In a CTA frame (shown in  FIG. 14A ), a first transceiver transmits a number L of quasi-omni packets carrying the beamforming information element. Each of the L transmissions is followed by L listening periods (ACKs). The first transceiver continues repeating this structure until it receives an ACK in one of the L listening periods (e.g., at the l th  listening period). From this point on, the first transceiver selects the l th  Q-omni direction for transmission (which is also the reception direction in the SAS case) from the Q-omni codebook. The second transceiver records its best Q-omni receiving direction (which is also the best transmitting direction in SAS case) and uses it for any future Q-omni reception. In the AAS case, the process is repeated as the second transceiver transmits to the first transceiver. 
       FIG. 15  illustrates a frame format for directional training employing periodic transmissions from the first transceiver to the second transceiver, and  FIG. 18A  illustrates a method in accordance with an embodiment of the invention that employs the frame format. A directional acquisition period may comprise an optional Q-omni packet followed by a listening period. One cycle of directional training sequences transmitted by the first transceiver corresponds to all J orthogonal (quasi-orthogonal) beamforming vectors from a subset of the selected codebook. Each cycle is followed by a listening period (ACK) to listen to any feedback from the second transceiver. 
     The first transceiver repeats the period  1801  until the second transceiver acquires the CSI, H 1→2 (n) for n=0, 1, . . . , N−1, or finds an adequate link-quality indicator (LQI)  1802 . The second transceiver estimates preferred w 1  and c 2    1803  and couples at least the w 1  estimate to the first transceiver  1804  during the listening (ACK) period. The preferred beamforming vector w 1  may be one of the transceiver&#39;s codebook vectors, or it may be a linear combination of the codebook vectors, or it may be unrelated to the transceiver&#39;s codebook vectors. 
     In one embodiment employing a four-element array with a codebook represented by the following weight matrix 
               W   =     [           +   1           +   1           +   1           +   1               -   1           -   j           +   1           +   j               +   1           -   1           +   1           -   1               -   1           +   j           +   1           -   j           ]       ,         
the codebook may comprise one or more of the vectors [1 −1 1 −1], [1 −j −1 j], [1 1 1 1], and [1 j −1 −j]. If the optimal beamforming/combining vector is chosen from one of the codebook vectors, the embodiment is referred to as beam-switching.
 
     In one embodiment, the optimal beamforming/combining vector is selected from any of the possible weight combinations for the four-element array. If quadrature weights are employed (i.e., weights ±1 and ±j), then there are 4 4  possible combinations from which to select the vector. One embodiment of the invention provides for selecting an optimal beamforming/combining vector from weights comprising any phasor. Another embodiment may employ weights comprising a range of amplitudes and phases. 
     The transceivers will employ the w 1  and c 2  estimates for beamforming and combining during data communications. Either or both transceivers may update  1805  the estimates w 1  and c 2  when the first transceiver transmits a directional acquisition period. 
     For the AAS case, additional steps shown in  FIG. 18B  are performed. The second transceiver transmits directional training sequences  1811  to the first transceiver, and the first transceiver acquires the CSI, H 2→1  (or determines an adequate LQI)  1812 . The first transceiver estimates w 2  and c 1    1813  and couples at least the w 2  estimate  1814  to the second transceiver. The estimates w 1  and c 2  are employed as beamforming and combining weights during data transmission, and these estimates w 1  and c 2  may be updated periodically  1815  when the second transceiver transmits a directional acquisition period. 
     The scope of the invention should not be interpreted as being limited to the array-processing embodiments illustrated herein. Rather, the Applicants anticipate that alternative embodiments may comprise antenna arrays with more than eight elements along a particular axis and antenna arrays comprising antennas with a plurality of polarizations, and that such antenna-array configurations fall within the scope and spirit of the invention. In one embodiment, two dipole antennas with orthogonal linear polarizations may be employed together to produce a quasi-omni pattern. 
     It should be appreciated that the apparatus and method embodiments of the invention may be implemented using a variety of hardware and software. For example, beamforming, combining, and related applications in accordance with embodiments of the invention may be implemented using special-purpose hardware, such as an application specific integrated circuit (ASIC) and programmable logic devices such as gate arrays, and/or software or firmware running on a computing device, such as a microprocessor, microcontroller or digital signal processor (DSP). It also will be appreciated that although functions of beamforming/combining weight calculation and selection may be integrated in a single device, such as a single ASIC, they may also be distributed among several devices. 
     The invention is not intended to be limited to the preferred embodiments. Furthermore, those skilled in the art should recognize that the method and apparatus embodiments described herein may be implemented in a variety of ways, including implementations in hardware, software, firmware, or various combinations thereof. Examples of such hardware may include ASICs, Field Programmable Gate Arrays, general-purpose processors, DSPs, and/or other circuitry. Software and/or firmware implementations of the invention may be implemented via any combination of programming languages, including Java, C, C++, Matlab™, Verilog, VHDL, and/or processor specific machine and assembly languages. 
     Various digital computer system configurations can be employed to perform the method embodiments of this invention, and to the extent that a particular system configuration is capable of performing the method embodiments of this invention, it is equivalent to the representative system embodiments of the invention disclosed herein, and within the scope and spirit of this invention. 
     Once digital computer systems are programmed to perform particular functions pursuant to instructions from program software that implements the method embodiments of this invention, such digital computer systems in effect become special-purpose computers particular to the method embodiments of this invention. The techniques necessary for this programming are well known to those skilled in the art of computer systems. 
     Various embodiments of the invention may include variations in system configurations and the order of steps in which methods are performed. In many cases, multiple steps and/or multiple components may be consolidated. 
     The method and system embodiments described herein merely illustrate particular embodiments of the invention. It should be appreciated that those skilled in the art will be able to devise various arrangements, which, although not explicitly described or shown herein, embody the principles of the invention and are included within its spirit and scope. Furthermore, all examples and conditional language recited herein are intended to be only for pedagogical purposes to aid the reader in understanding the principles of the invention. This disclosure and its associated references are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future, i.e., any elements developed that perform the same function, regardless of structure. 
     It should be appreciated by those skilled in the art that the block diagrams herein represent conceptual views of illustrative circuitry, algorithms, and functional steps embodying principles of the invention. Similarly, it should be appreciated that any flow charts, flow diagrams, signal diagrams, system diagrams, codes, and the like represent various processes that may be substantially represented in computer-readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown. 
     The functions of the various elements shown in the drawings, including functional blocks labeled as “processors” or “systems,” may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a shared processor, or by a plurality of individual processors, some of which may be shared. Moreover, explicit use of the term “processor” or “controller” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, read-only memory (ROM) for storing software, random access memory (RAM), and non-volatile storage. Other hardware, conventional and/or custom, may also be included. Similarly, the function of any component or device described herein may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the implementer as more specifically understood from the context. 
     Any element expressed herein as a means for performing a specified function is intended to encompass any way of performing that function including, for example, a combination of circuit elements which performs that function, or software in any form, including, therefore, firmware, micro-code or the like, combined with appropriate circuitry for executing that software to perform the function. Embodiments of the invention as described herein reside in the fact that the functionalities provided by the various recited means are combined and brought together in the manner which the operational descriptions call for. Applicant regards any means that can provide those functionalities as equivalent to those shown herein.