Abstract:
Disclosed are a double-stream beamforming method and device, which relate to communication technology. The method comprises: first, according to a DOA angle, determining an array response vector; then according to the array response vector, in accordance with the number of each group of transmission antennae of a base station, distributing parameters to generate two groups of coefficients, and according to the two groups of coefficients, conducting beamforming on the antennae. There is no need to conduct characteristic value decomposition to obtain a characteristic vector, thereby reducing the double-stream beamforming complexity.

Description:
[0001]    This application claims the benefit of Chinese Patent Application No, 201210074892.0, filed with the Chinese Patent Office on Mar. 20, 2012, and entitled “Method of and apparatus for dual-stream beamforming”, which is hereby incorporated by reference in its entirety. 
       FIELD 
       [0002]    The present invention relates to the field of communications and particularly to a method of and apparatus for dual-stream beamforming. 
       BACKGROUND 
       [0003]    In recent years, radio spectrum resources become increasingly insufficient along with the rapid advancement of mobile communications and the development of other radio applications, so it is necessary to further improve the capacity of a system and the spectrum utilization ratio of the system so as to accommodate a larger number of subscribers and the deployment of new services. 
         [0004]    The technology of Multiple-In-Multiple-Out (MIMO) has been widely applied to thereby make it possible to transmit multiple data streams in space. Beamforming can extend a coverage range, improve the quality of a signal, enhance the capability to penetrate through a building and increase the throughput of a subscriber at the edge of a cell due to its definitely directed beam and consequently has been widely applied. 
         [0005]    In an existing dual-stream beamforming solution, a channel estimation related matrix is eigen-value decomposed into two sets of eigen-vectors corresponding to the maximum and second maximum eigen-values in a traditional Eigen-value Based Beamforming (EBB) algorithm, and the conjugation of the two eigen-vectors is used as weight coefficients for dual-stream beam forming on a transmit antenna of a base station. A particular flow thereof as illustrated in  FIG. 1  includes the following steps: 
         [0006]    The step S 101  is to perform uplink channel estimation using an uplink pilot to derive a channel matrix H; 
         [0007]    The step S 102  is channel related matrix R=H H H; and 
         [0008]    The step S 103  is eigen-value decompose the related matrix into two sets of eigen-vectors corresponding to the maximum and second maximum eigen-values as weight coefficients of antennas. 
         [0009]    In this solution, the two eigen-vectors need to be calculated complexly as a result of eigen-value decomposition, and also the eigen-vectors may be determined poorly this way when the uplink pilot is transmitted by a user equipment over the same antenna. 
       SUMMARY 
       [0010]    Embodiments of the invention provide a method of and apparatus for dual-stream beamforming so as to lower the complexity of dual-stream beamforming. 
         [0011]    An embodiment of the invention provides a dual-stream beamforming method including: 
         [0012]    determining Direction Of Arrival (DOA) angles of antennas; 
         [0013]    determining array response vectors from the DOA angles; 
         [0014]    generating two sets of coefficients from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station; and 
         [0015]    performing beamforming respectively for two sets of antennas by the two sets of coefficients. 
         [0016]    An embodiment of the invention provides a dual-stream beamforming apparatus including: 
         [0017]    an angle determination unit is configured to determine Direction Of Arrival (DOA) angles of antennas; 
         [0018]    a vector determination unit is configured to determine array response vectors from the DOA angles; 
         [0019]    a coefficient determination unit is configured to generate two sets of coefficients from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station; and 
         [0020]    a beamforming unit is configured to perform beamforming respectively for two sets of antennas by the two sets of coefficients. 
         [0021]    The embodiments of the invention provide a method of and apparatus for dual-stream beamforming, where firstly array response vectors are determined from Direction Of Arrival (DOA) angles; and then two sets of coefficients are generated from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station, and beamforming is performed for the antennas by the two sets of coefficients without deriving any eigen-vector as a result of eigen-value decomposition, thus lowering the complexity of dual-stream beamforming. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0022]      FIG. 1  is a flow chart of a method of dual-stream beamforming in the prior art; 
           [0023]      FIG. 2  is a flow chart of a method of dual-stream beamforming of embodiments of the invention; 
           [0024]      FIG. 3  is a flow chart of a method of dual-stream beamforming in a corresponding first embodiment of the embodiments of the invention; 
           [0025]      FIG. 4  is a flow chart of a method of dual-stream beamforming in a corresponding second embodiment of the embodiments of the invention; and 
           [0026]      FIG. 5  is a schematic structural diagram of an apparatus for dual-stream beamforming of an embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0027]    Embodiments of the invention provide a method of and apparatus for dual-stream beamforming, where firstly array response vectors are determined from DOA angles; and then two sets of coefficients are generated from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station, and beamforming is performed for the antennas by the two sets of coefficients without deriving any eigen-vector as a result of eigen-value decomposition, thus lowering the complexity of dual-stream beamforming. 
         [0028]    As illustrated in  FIG. 2 , the method of dual-stream beamforming of the embodiments of the invention includes the following steps: 
         [0029]    The step  201  is to determine DOA angles of antennas; 
         [0030]    The step  202  is to determine array response vectors from the DOA angles; 
         [0031]    The step  203  is to generate two sets of coefficients from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station; and 
         [0032]    The step  204  is to perform beamforming respectively for two sets of antennas by the two sets of coefficients. 
         [0033]    The DOA angles of the antennas are derived and the coefficients of beamforming for the antennas are determined from the DOA angles without any eigen-value decomposition, thus lowering effectively the complexity of beamforming. 
         [0034]    The method of dual-stream beamforming according to the embodiments of the invention will be described below in details in connection with particular embodiments thereof. 
       First Embodiment 
       [0035]    A set of array response vectors V is calculated from estimated DOA angles and conjugated, and two sets of coefficients V1 and V2 are generated by allocating parameters according to the numbers of respective sets of transmit antennas of a base station, where the dimensionality of V1 and V2 is V, and V1 has the same first half as a first half of conjugated V and a zero-padded second half, and V2 has the same second half as a second half of conjugated V and a zero-padded first half. 
         [0036]    Due to limited power of each antenna, the limited power is set to P, and V1 and V2 are normalized in amplitude and multiplied with the square root of P as weight coefficients of the antennas to be applied to dual-stream beamforming. 
         [0037]    Particularly in this embodiment, the step S 201  particularly includes: 
         [0038]    Uplink channel estimation is performed using an uplink pilot of a full bandwidth or a preset sub-band to determine a channel matrix; 
         [0039]    A channel related matrix is determined from the channel matrix; and 
         [0040]    The DOA angles of the antennas are determined from the channel related matrix. 
         [0041]    The DOA angles of the antennas can be determined from the channel related matrix by estimating the DOA angles in a Grids of Beams (GOB) algorithm. Of course those skilled in the art can alternatively estimate otherwise the DOA angles. 
         [0042]    In the step S 202 , the array response vectors can be determined from the DOA angles particularly by determining the respective array response vectors as V=e j2π[0:N     t     −1]d sin θ     DOA   , where N t  represents the number of transmit antennas of the base station, d represents the spacing between the antennas of the base station, [0:N t −1] represents N t  values from 0 to N t −1, i.e., the n-th element is v n =e j2π(n−1)d sin θ     DOA    in the array response vector, and n represents an integer smaller than or equal to N t . 
         [0043]    At this time, in the step S 203  generating the two sets of coefficients by allocating the parameters according to the numbers of the respective sets of transmit antennas of the base station after conjugating the array response vectors particularly includes the steps of: 
         [0044]    Determining the dimensionality of the two sets of coefficients to be the same as the dimensionality of the array response vectors; 
         [0045]    Determining parameters of a first half of the first set of coefficients to be the same as parameters of a first half of the conjugated array response vectors and determining parameters of a second half of the first set of coefficients to be zero; and 
         [0046]    Determining parameters of a second half of the second set of coefficients to be the same as the parameters of the first half of the conjugated array response vectors and determining parameters of a first half of the second set of coefficients to be zero. 
         [0047]    The array response vectors can alternatively be determined as V==e −j2π[0:N     t     −1]d sin θ     DOA   , and at this time, the step S 203  particularly includes the steps of: 
         [0048]    Determining the dimensionality of the two sets of coefficients to be the same as the dimensionality of the array response vectors; 
         [0049]    Determining parameters of a first half of the first set of coefficients to be the same as parameters of a first half of the array response vectors and determining parameters of a second half of the first set of coefficients to be zero; and 
         [0050]    Determining parameters of a second half of the second set of coefficients to be the same as the parameters of the first half of the array response vectors and determining parameters of a first half of the second set of coefficients to be zero. 
         [0051]    The array response vectors can alternatively be determined as V==e −j2π[0:N     t     /2−1]d sin θ     DOA   , and at this time, the step S 203  particularly includes the steps of: determining the dimensionality of the two sets of coefficients to be twice the dimensionality of the array response vectors; 
         [0052]    Determining parameters of a first half of the first set of coefficients to be the same as parameters of the array response vectors and determining parameters of a second half of the first set of coefficients to be zero; and 
         [0053]    Determining parameters of a second half of the second set of coefficients to be the same as the parameters of the array response vectors and determining parameters of a first half of the second set of coefficients to be zero. 
         [0054]    In the step S 204 , performing beamforming respectively for the two sets of antennas by the two sets of coefficients particularly includes the steps of: 
         [0055]    Normalizing in amplitude the two sets of coefficients; 
         [0056]    Determining weight coefficients of the antennas as the product of the normalized coefficients and √{square root over (P)}, where P represents limited power of the antennas; and 
         [0057]    Performing beamforming for the two sets of antennas by the weight coefficients of the antennas. 
         [0058]    Particularly in a scenario where a base station of an LTE system is provided with 8 dual-polarized antennas, as illustrated in  FIG. 3 , dual-stream beamforming in this embodiment particularly includes the following steps: 
         [0059]    The step S 301  is to perform uplink channel estimation using an uplink Sounding Reference Signal (SRS) to derive an estimation matrix H i (i=1, 2, . . . , 6*N PRB ) of each sub-carrier channel in 1*8 dimensions, where N PRB  represents the number of Physical Resource Blocks (PRBs) occupied by a pilot, and as specified in the protocol, a number of SRS&#39;s are placed like a comb, and the number of sub-carriers by occupied the SRS&#39;s in a PRB is 6; 
         [0060]    The step S 302 , is to pick out estimation value of a third sub-carrier channel of each PRB from the channel estimation matrix H i  to derive H PRB,j (i=1, 2, . . . , N PRB ) in 1*8 dimensions; 
         [0061]    The step S 303  is to derive full-bandwidth H=[H PRB,1  H PRB,2  . . . H PRB,N     PRB   ] from H PRB,j  in N PRB *8 dimensions; 
         [0062]    The step S 304  is to calculate a full-bandwidth channel related matrix R=H H H in 8*8 dimensions; 
         [0063]    The step S 305  is to estimate the DOA angles θ DOA  from R in the GOB algorithm; 
         [0064]    The step S 306  is to estimate a set of array response vectors V in 1*8 dimensions, particularly as V=e j2π[0:N     t     −1]d sin θ     DOA   , from θ DOA , where N t  represents the number of transmit antennas of the base station, and d represents the spacing between the antennas of the base station; 
         [0065]    The step S 307  is to generate the two sets of coefficients V 1  and V 2  both in 1*8 dimensions by allocating the parameters according to the numbers of the respective sets of transmit antennas of the base station after conjugating V n : 
         [0000]        V   1 (1:4)= V *(1:4), V   1 (5:8)=0; 
         [0000]        V   2 (5:8)== V *(5:8), V   2 (1:4)=0; 
         [0066]    Where V* represents vectors of conjugated V; 
         [0067]    In an implementation, the step S 306  and the step S 307  can alternatively be performed in the following two implementations: 
         [0000]        V   1 (1:4)= V (1:4), V   1 (5:8)=0; 
         [0000]        V=e   −j2π[0:N     t     −1]d sin θ     DOA     ,V   2 (5:8)== V (5:8), V   2 (1:4)=0;  1)
 
         [0000]        V   1 (1:4)= V,V   1 (5:8)=0; 
         [0000]        V=e   −j2π[0:N     t     /2−1]d sin θ     DOA     ,V   2 (5:8)== V,V   2 (1:4)=0;  2)
 
         [0068]    The step S 308  is to normalize in amplitude the derived respective sets of coefficients and then multiple them with the square root of P to derive the weight coefficients W 1  and W 2  of the antennas, where W 1 =V 1 √{square root over (P)} and W 2 =V 2 √{square root over (P)} both in 1*8 dimensions, and P represents the highest one of limited power of the respective antennas specified in the standard. 
       Second Embodiment 
       [0069]    A set of array response vectors V is calculated from estimated DOA, and two sets of coefficients V1 and V2 are generated by allocating parameters according to the numbers of respective sets of transmit antennas of a base station, where e dimensionality of V1 and V2 is V, and V1 has the same first half as a first half of conjugated V and a zero-padded second half, and V2 has the same second half as a second half of conjugated V and a zero-padded first half. 
         [0070]    V1 and V2 are multiplied with corresponding codebooks and then applied as weight coefficients of the antennas to dual-stream beamforming. The following two codebook selection schemes can be considered in a particular implementation: 
         [0071]    1) A specific set of codebooks is stored, and codebooks are selected alternately or randomly and multiplied with V1 and V2 to obtain W1 and W2. 
         [0072]    Due to limited power of each antenna, the limited power is set to P, the highest power M of the respective antennas can be calculated from W1 and W2, a power factor √{square root over (P/M)} is calculated, and W1 and W2 are multiplied with the power factor and then applied as weight coefficients of the antennas to dual-stream beamforming for a gain of system performance. 
         [0073]    At this time, dual-stream beamforming can be performed with high reliability and low complexity. 
         [0074]    2) A specific set of codebooks is stored, and a codebook to maximum a capacity or a signal to noise ratio is selected and multiplied with V1 and V2 to obtain W1 and W2. 
         [0075]    Due to limited power of each antenna, the limited power is set to P, the highest power M of the respective antennas can be calculated from W1 and W2, a power factor √{square root over (P/M)} is calculated, and W1 and W2 are multiplied with the power factor and then applied as weight coefficients of the antennas to dual-stream beamforming for a gain of system performance. 
         [0076]    At this time, dual-stream beamforming can be performed for improved efficiency of transmission at the cost of higher complexity than the scheme 1). 
         [0077]    The codebook(s) can be selected at the base station side or can be selected by the UE and then a selection result can be fed back to the base station. The codebook(s) can be an open-loop codebook(s) or can be a closed-loop codebook(s). 
         [0078]    The weight coefficients can be calculated at a specific beamforming granularity in order to further lower the complexity in an implementation. For example, DOA angles can be estimated from full-bandwidth channel estimation values H to further derive a set of array response vectors V, and then the full bandwidth can be divided into a plurality of sub-hands at a specific beamforming granularity, and V can be multiplied with a different codebook in each of the sub-bands to derive beamforming coefficients of the each sub-band for dual-stream beamforming. Alternatively DOA angles can be estimated per sub-band to further derive a set of array response vectors V of each sub-band, which is then multiplied with a different codebook to derive beamforming coefficients of the each sub-band for dual-stream beamforming. 
         [0079]    Particularly, all the step S 201  to the step S 203  in this embodiment are the same as those in the first embodiment, and then in the step S 204 , performing beamforming respectively for the two sets of antennas by the two sets of coefficients particularly includes the steps of: 
         [0080]    Selecting at a preset beamforming granularity and multiplying codebooks respectively with the two sets of coefficients to derive two sets of intermediate weight coefficients; 
         [0081]    Determining the highest power M of the respective antennas from the two sets of intermediate weight coefficients; 
         [0082]    Determining weight coefficients of the antennas as the products of the two respective sets of intermediate weight coefficients and √{square root over (P/M)}, where P represents limited power of the antennas; and 
         [0083]    Performing beamforming for the two sets of antennas by the weight coefficients of the antennas. 
         [0084]    Particularly as illustrated in  FIG. 4 , dual-stream beamforming in this embodiment particularly includes the following steps: 
         [0085]    The step S 401  is to perform uplink channel estimation using an uplink SRS to derive an estimation matrix H i (i=1, 2, . . . , 6*N PRB ) of each sub-carrier channel in 1*8 dimensions, where N PRB  represents the number of PRBs occupied by a pilot, and as specified in the protocol, a number of SRS&#39;s are placed like a comb, and the number of sub-carriers by occupied the SRS&#39;s in a PRB is 6; 
         [0086]    The step S 402  is to pick out an estimation value of a third sub-carrier channel of each PRB from the channel estimation matrix H i  to derive H PRB,j (i=1, 2, . . . , N PRB ) in 1*8 dimensions; 
         [0087]    The step S 403  is to derive full-bandwidth H=(H PRB,1  H PRB,2  . . . H PRB,N     PRB   ) from H PRB,j  in N PRB *8 dimensions: 
         [0088]    The step S 404  is to calculate a full-bandwidth channel related matrix R=H H H in 8*8 dimensions; 
         [0089]    The step S 405  is to estimate the DOA angles θ DOA  from R in the GOB algorithm; 
         [0090]    The step S 406  is to estimate a set of array response vectors V in 1*8 dimensions, particularly as V=e j2π[0:N     t     −1]d sin θ     DOA   , from θ DOA , where N t  represents the number of transmit antennas of the base station, and d represents the spacing between the antennas of the base station; 
         [0091]    The step S 407  is to generate the two sets of coefficients V 1  and V 2  both in 1*8 dimensions by allocating the parameters according to the numbers of the respective sets of transmit antennas of the base station after conjugating V n : 
         [0000]        V   1 (1:4)= V *(1:4), V   1 (5:8)=0; 
         [0000]        V   2 (5:8)== V *(5:8), V   2 (1:4)=0; 
         [0092]    Where V* represents vectors of conjugated V; 
         [0093]    In an implementation, the step S 306  and the step S 307  can alternatively be performed in the following two implementations: 
         [0000]        V   1 (1:4)= V (1:4), V   1 (5:8)=0; 
         [0000]        V=e   −j2π[0:N     t     −1]d sin θ     DOA     ,V   2 (5:8)== V (5:8), V   2 (1:4)=0;  1)
 
         [0000]        V   1 (1:4)= V,V   1 (5:8)=0; 
         [0000]        V=e   −j2π[0:N     t     /2−1]d sin θ     DOA     ,V   2 (5:8)== V,V   2 (1:4)=0;  2)
 
         [0094]    The step S 408  is to determine a pre-stored set of codebooks each in 2*2 dimensions. 
         [0095]    The step S 409  is to calculate V double =[V 1 ;V 2 ] each in 2*8 dimensions; 
         [0096]    The step S 410  is to divide the full bandwidth into a plurality of sub-bands at a specific beamforming granularity and to multiple V double  with a different codebook W codebook,n  in each of the sub-bands to derive W double,n  with n=1, 2, . . . , N PRB /n PRB , where N PRB  represents the number of PRBs occupied by a pilot, and n PRB  represents the beamforming granularity, i.e., W double,n =W codebook,n V double ; 
         [0097]    The codebook(s) can be selected in the following two schemes: a codebook is selected alternately or randomly from the set of codebooks, or a codebook to maximum a capacity or a signal to noise ratio is selected from the set of codebooks. The set of codebooks can be a set of codebooks specified in the LTE standard or can be another appropriate set of codebooks; 
         [0098]    The step S 411  is to set limited power to P to the limited power of each antenna, to calculate the highest power M n  of the respective antennas in each sub-band and to calculate a power factor 
         [0000]    
       
         
           
             
               ρ 
               n 
             
             = 
             
               
                 P 
                 
                   M 
                   n 
                 
               
             
           
         
       
     
         [0000]    of each sub-band; and 
         [0099]    The step S 412  is to multiple W1 and W2 with the power factor and then apply them as weight coefficients of the antennas to dual-stream beamforming for a gain of system performance. 
         [0100]    In a particular implementation, the step S 411  and the step S 412  can be performed by of normalizing in amplitude the largest element of W double,n  and then multiplying them with the square root of P and further applying them as the weight coefficients of the antennas to dual-stream beamforming. 
         [0101]    An embodiment of the invention further correspondingly provides an apparatus for dual-stream beamforming, and as illustrated in  FIG. 5 , the apparatus includes: 
         [0102]    An angle determination unit  501  is configured to determine DOA angles of antennas; 
         [0103]    A vector determination unit  502 , is configured to determine array response vectors from the DOA angles; 
         [0104]    A coefficient determination unit  503  is configured to generate two sets of coefficients from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station; and 
         [0105]    A beamforming unit  504  is configured to perform beamforming respectively for two sets of antennas by the two sets of coefficients. 
         [0106]    Particularly the angle determination unit  501  is particularly configured: 
         [0107]    To perform uplink channel estimation using an uplink pilot of a full bandwidth or a preset sub-band to determine a channel matrix; 
         [0108]    To determine a channel related matrix from the channel matrix; and 
         [0109]    To determine the DOA angles of the antennas from the channel related matrix. 
         [0110]    The vector determination unit  502  is particularly configured: 
         [0111]    To determine the array response vectors as V=e j2π[0:N     t     −1]d sin θ     DOA   , where N t  represents the number of transmit antennas of the base station, and d represents the spacing between the antennas of the base station. 
         [0112]    At this time the coefficient determination unit  503  is particularly configured: 
         [0113]    To determine the dimensionality of the two sets of coefficients to be the same as the dimensionality of the array response vectors; 
         [0114]    To determine parameters of a first half of the first set of coefficients to be the same as parameters of a first half of the conjugated array response vectors and to determine parameters of a second half of the first set of coefficients to be zero; and 
         [0115]    To determine parameters of a second half of the second set of coefficients to be the same as the parameters of the first half of the conjugated array response vectors and to determine parameters of a first half of the second set of coefficients to be zero. 
         [0116]    Alternatively the vector determination unit  502  is particularly configured: 
         [0117]    To determine the array response vectors as V=e −j2π[0:N     t     −1]d sin θ     DOA   , where N t  represents the number of transmit antennas of the base station, and d represents the spacing between the antennas of the base station. 
         [0118]    At this time the coefficient determination unit  503  is particularly configured: 
         [0119]    To determine the dimensionality of the two sets of coefficients to be the same as the dimensionality of the array response vectors; 
         [0120]    To determine parameters of a first half of the first set of coefficients to be the same as parameters of a first half of the array response vectors and to determine parameters of a second half of the first set of coefficients to be zero; and 
         [0121]    To determine parameters of a second half of the second set of coefficients to be the same as the parameters of the first half of the array response vectors and to determine parameters of a first half of the second set of coefficients to be zero. 
         [0122]    Alternatively the vector determination unit  502  is particularly configured: 
         [0123]    To determine the array response vectors as V=e −j2π[0:N     t     /2−1]d sin θ     DOA   , where N t  represents the number of transmit antennas of the base station, and d represents the spacing between the antennas of the base station. 
         [0124]    At this time the coefficient determination unit  503  is particularly configured: 
         [0125]    To determine the dimensionality of the two sets of coefficients to be twice the dimensionality of the array response vectors; 
         [0126]    To determine parameters of a first half of the first set of coefficients to be the same as parameters of the array response vectors and to determine parameters of a second half of the first set of coefficients to be zero; and 
         [0127]    To determine parameters of a second half of the second set of coefficients to be the same as the parameters of the array response vectors and to determine parameters of a first half of the second set of coefficients to be zero. 
         [0128]    The beamforming unit  504  is particularly configured: 
         [0129]    To normalize in amplitude the two sets of coefficients; 
         [0130]    To determine weight coefficients of the antennas as the product of the normalized coefficients and √{square root over (P)}, where P represents limited power of the antennas; and 
         [0131]    To perform beamforming for the two sets of antennas by the weight coefficients of the antennas. 
         [0132]    Or the beamforming unit  504  is particularly configured: 
         [0133]    To select codebooks at a preset beamforming granularity to multiply respectively with the two sets of coefficients to derive two sets of intermediate weight coefficients; 
         [0134]    To determine the highest power M of the respective antennas from the two sets of intermediate weight coefficients; 
         [0135]    To determine weight coefficients of the antennas as the products of the two respective sets of intermediate weight coefficients and √{square root over (P/M)}, where P represents limited power of the antennas; and 
         [0136]    To perform beamforming for the two sets of antennas by the weight coefficients of the antennas. 
         [0137]    The embodiments of the invention provide a method of and apparatus for dual-stream beamforming, where firstly array response vectors are determined from DOA angles; and then two sets of coefficients are generated from the array response vectors by allocating parameters according to the numbers of respective sets of transmit antennas of a base station, and beamforming is performed for the antennas by the two sets of coefficients without deriving any eigen-vector as a result of eigen-value decomposition, thus lowering the complexity of dual-stream beamforming. 
         [0138]    Those skilled in the art shall appreciate that the embodiments of the invention can be embodied as a method, a system or a computer program product. Therefore the invention can be embodied in the form of an all-hardware embodiment, an all-software embodiment or an embodiment of software and hardware in combination. Furthermore the invention can be embodied in the form of a computer program product embodied in one or more computer useable storage mediums (including but not limited to a disk memory, a CD-ROM, an optical memory, etc.) in which computer useable program codes are contained. 
         [0139]    The invention has been described in a flow chart and/or a block diagram of the method, the device (system) and the computer program product according to the embodiments of the invention. It shall be appreciated that respective flows and/or blocks in the flow chart and/or the block diagram and combinations of the flows and/or the blocks in the flow chart and/or the block diagram can be embodied in computer program instructions. These computer program instructions can be loaded onto a general-purpose computer, a specific-purpose computer, an embedded processor or a processor of another programmable data processing device to produce a machine so that the instructions executed on the computer or the processor of the other programmable data processing device create means for performing the functions specified in the flow(s) of the flow chart and/or the block(s) of the block diagram. 
         [0140]    These computer program instructions can also be stored into a computer readable memory capable of directing the computer or the other programmable data processing device to operate in a specific manner so that the instructions stored in the computer readable memory create an article of manufacture including instruction means which perform the functions specified in the flow(s) of the flow chart and/or the block(s) of the block diagram. 
         [0141]    These computer program instructions can also be loaded onto the computer or the other programmable data processing device so that a series of operational steps are performed on the computer or the other programmable data processing device to create a computer implemented process so that the instructions executed on the computer or the other programmable device provide steps for performing the functions specified in the flow(s) of the flow chart and/or the block(s) of the block diagram. 
         [0142]    Although the preferred embodiments of the invention have been described, those skilled in the art benefiting from the underlying inventive concept can make additional modifications and variations to these embodiments. Therefore the appended claims are intended to be construed as encompassing the preferred embodiments and all the modifications and variations coming into the scope of the invention. 
         [0143]    Evidently those skilled in the art can make various modifications and variations to the invention without departing from the spirit and scope of the invention. Thus the invention is also intended to encompass these modifications and variations thereto so long as the modifications and variations come into the scope of the claims appended to the invention and their equivalents.