Patent ID: 8223872

Claim:
A method, comprising: applying an equalizer to a signal to (i) be transmitted via at least one multiple input, multiple output (MIMO) channel or (ii) received via the at least one MIMO channel, wherein the equalizer is generated using matrix computation circuitry of a matrix equalizer computational device; receiving channel state information (CSI) including a plurality of channel estimates Ĥ k corresponding to a plurality of sub-carriers k in an Orthogonal Frequency Division Modulation (OFDM) system; providing the plurality of channel estimates Ĥ k to the matrix equalizer computational device when the matrix equalizer computational device is not needed for matrix equalization; performing a beamsteering calculation by reusing the matrix computation circuitry of the matrix equalizer computational device when the matrix equalizer computational device is not needed for matrix equalization purposes, wherein the beamsteering calculation generates norms of vectors in each of the channel estimates Ĥ k ; selecting one vector from each of the channel estimates Ĥ k corresponding to a maximum norm of the channel estimates Ĥ k providing, subsequent to providing the plurality of channel estimates Ĥ k to the matrix equalizer computational device, a respective subset of the vectors in each of the plurality of channel estimates Ĥ k to the matrix equalizer computational device when the matrix equalizer computational device is not needed for matrix equalization, wherein each subset excludes the respective selected vector of the corresponding channel estimate Ĥ k ; wherein reusing the matrix computation circuitry of the matrix equalizer computational device when the matrix equalizer computational device is not needed for matrix equalization purposes further comprises generating, for each channel estimate Ĥ k , projections of vectors in the respective subset of vectors to a respective null space spanned by the respective selected vector in response to providing the subsets of the vectors to the matrix equalizer computational device; and selecting a plurality of transmit beamsteering codewords from a transmit beamsteering codebook based on an output of the beamsteering calculation performed by the matrix equalizer computational device in response to the plurality of channel estimates Ĥ k provided to the matrix equalizer computational device, including selecting one beamsteering codeword based on the maximum norm corresponding to one of the channel estimates Ĥ k output by the matrix equalizer computational device, and selecting another beamsteering codeword based on a maximum projection corresponding to one of the subsets of the channel estimates Ĥ k .