Publication number | US20030076900 A1 |

Publication type | Application |

Application number | US 09/999,721 |

Publication date | Apr 24, 2003 |

Filing date | Oct 24, 2001 |

Priority date | Oct 24, 2001 |

Also published as | US6563885 |

Publication number | 09999721, 999721, US 2003/0076900 A1, US 2003/076900 A1, US 20030076900 A1, US 20030076900A1, US 2003076900 A1, US 2003076900A1, US-A1-20030076900, US-A1-2003076900, US2003/0076900A1, US2003/076900A1, US20030076900 A1, US20030076900A1, US2003076900 A1, US2003076900A1 |

Inventors | David Magee, Srinath Hosur |

Original Assignee | Magee David Patrick, Srinath Hosur |

Export Citation | BiBTeX, EndNote, RefMan |

Referenced by (27), Classifications (7), Legal Events (4) | |

External Links: USPTO, USPTO Assignment, Espacenet | |

US 20030076900 A1

Abstract

A system and method facilitate estimating noise in a received signal. The received signal includes a plurality of data tones. Noise is estimated for a selected subset of data tones for each data burst, such that noise estimates for all data tones can be computed over a plurality of data bursts. As a result of spreading the noise estimates over more than one burst, the overall computations associated with obtaining the noise estimates can be reduced based on the size of the respective subsets. The updated data tone noise estimates further can be employed in subsequent processing, such as in beamforming calculations.

Claims(46)

a data tone selector that identifies a subset of data tones from a received data signal having a plurality of identifiable data tones; and

a noise estimator that computes a noise estimate for each data tone in the subset of data tones.

a data tone identifier operative to identify a subset of data tones from a plurality of data tones for processing with a given data burst;

a hard decision component operative to compute hard decisions for the subset of data tones in the given data burst; and

a noise estimator operative to compute a data tone noise estimate for each data tone in the desired subset of data tones based on the respective hard decisions, the noise estimator being operative to provide an indication of the computed data tone noise estimate for each data tone of the subset of data tones in the given data burst.

an aggregator that includes stored noise estimates for a plurality of data tones, the noise estimates for a selected subset of the plurality of data tones being updated for a received data signal based on noise estimates computed for the selected subset of the plurality of data tones in the received data signal; and

a beamformer that computes at least one of a soft decision and noise-to-signal ratio estimate for each of the plurality of data tones in the received data signal based on the stored noise estimate for each respective data tone.

where

H_{n }is a channel estimate for the n^{th }antenna;

R_{avg }is the average noise estimate;

Y_{n }is the received data signal for the n^{th }antenna;

r is a data tone index functionally related to k ε{0,1, . . . , N_{data}−1},

where

N_{data }is the number of data tones; and

n is a number of antennas at which the received data signal is received.

the noise estimation system comprising:

a data tone identifier operative to identify the selected subset of data tones from a plurality of data tones for processing with the received data signal;

a hard decision component which computes hard decisions for the selected subset of data tones in the received data signal; and

a noise estimator operative to compute a data tone noise estimate for each data tone in the selected subset of data tones based on the respective hard decisions, the computed data tone noise estimates being provided to update the noise estimates of the aggregator.

at least one antenna operative to receive a wireless signal and convert the received signal into a corresponding electrical signal;

a preprocessing system operative to process the electronic signal and convert the electrical signal from the at least one antenna into a digital signal and perform desired preprocessing of the digital signal to provide a preprocessed digital signal in the frequency domain having a plurality of data tones and training tones for each data burst; and

a decimated noise estimator operative to estimate noise for a subset of the plurality of data tones for a given data burst.

means for receiving at least one digitized signal in the frequency domain corresponding to a data burst having a plurality of data tones;

means for identifying a subset of the plurality of data tones from the data burst in the at least one digitized signal;

means for estimating noise for the identified subset of the plurality of data tones; and

means for providing an indication of the data tone noise estimates for the identified subset of the plurality of data tones.

decimating a received data burst to provide a subset of a plurality of data tones associated with the received data burst;

estimating noise for each of the data tones in the subset of data tones; and

providing an indication of the estimated noise for each data tone in the subset.

Description

- [0001]The present invention relates generally to processing of communications signals and, more particularly, to a system and method to perform decimated noise estimation and/or beamforming for use in a communications system.
- [0002]Various techniques have been developed to facilitate communication of data signals over an associated communications path. The particular communications protocol employed generally depends on the transmission medium, the available bandwidth resources, and other design considerations. Regardless of the type of communications system being employed, noise and distortion often are introduced into data signals transmitted over an associated communications path, including both wired and wireless systems.
- [0003]Wireless communications systems, such as cellular and personal communications systems, operate over limited spectral bandwidths. Accordingly, multiple access protocols have been developed and used in wireless communications systems to increase bandwidth efficiency. Examples of multiple carrier protocols include Frequency Division Multiple Access (FDMA), Time Division Multiple Access (TDMA), Code Division Multiple Access (CDMA), and Space Division Multiple Access (SDMA). A particular type of FDMA protocol is Orthogonal Frequency Division Multiplexing (OFDM). Features from these and other multiple-access techniques also have been combined in an effort to make highly efficient use of the scarce bandwidth resource to increase the quality of service.
- [0004]In a wireless system, in which data signals are transmitted through space as modulated electromagnetic waves, distortion and noise can result from interference with other signals within the same frequency range and path as well as multipath dispersions. Multipath dispersions occur when signals propagate along different or reflected paths through a transmission medium to a receiving destination. For example, radio transmissions or data signals that travel through the space can be reflected off trees, vehicles, houses, larger buildings, and terrain features such as mountains and hills. The radio transmissions further are subjected to fading and interference. Fading involves fluctuations in amplitude of a signal, while interference involves unwanted frequencies in the same frequency band.
- [0005]Multipath scattering effects alter or distort the signal spectrum when compared to the spectrum as transmitted. The effects are different at different frequencies across the signaling band. At some frequencies, the multipath signals add constructively to result in an increased signal amplitude, while at other frequencies the multipath signals add destructively (out of phase) to cancel or partially cancel the signal, resulting in reduced signal amplitude.
- [0006]A wireless communication system is designed to compensate for interference due to noise and the deleterious effects of multipath dispersion. However, in order to compensate for the noise, an indication of the noise in the signal must first be determined. Thus, it is desirable to know how much noise and/or interference is present in the system. Generally, noise can be measured relative to the signal as a ratio, such as a signal-to-noise ratio (SNR) and a signal-to-interference-to-noise ratio (SINR). The noise/interference levels are monitored and used to facilitate demodulation of the incoming signal, such as by assigning a confidence level to the data tones of the received signal. Accordingly, it is desirable to efficiently and accurately estimate the noise/interference in a received signal.
- [0007]The following presents a simplified summary of the invention in order to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. It is intended to neither identify key or critical elements of the invention nor delineate the scope of the invention. Its sole purpose is to present some concepts of the invention in a simplified form as a prelude to the more detailed description that is presented later.
- [0008]One aspect of the present invention provides a noise estimation system for a communications system capable of improving system performance. The noise estimation system includes a selector that selects a subset of data tones (or carrier tone frequencies) from a given data burst. Noise estimates are computed for the data tones in the selected subset. The noise estimates can be used to update previously computed noise estimates. By controlling how the data tones in each subset are selected, such as based on a burst counter that monitors the received data bursts or other criteria, one can reduce the number of calculations required for each data burst.
- [0009]For example, the noise estimates can be performed at every other, every fourth, or every n
^{th }data tone, where n is a natural number (e.g., an integer>0). Alternatively, data tones can be organized into consecutive subsets of data tones. After the noise estimates for all data tones have been updated, the data tone selection criteria can be reset to perform additional noise estimates for such tones. The updated noise estimates further can be stored, such as in internal memory, for use in subsequent processing. - [0010]In a particular aspect of the present invention, the noise estimates for the data tones can be employed in beamforming computations. Because the noise estimates have been decimated in accordance with the present invention, the overhead associated with signal processing requirements for beamforming also are reduced, thereby improving the level of system performance.
- [0011]The following description and the annexed drawings set forth in certain illustrative aspects of the invention. These aspects are indicative, however, of but a few ways in which the principles of the invention may be employed. Other advantages and novel features of the invention will become apparent from the following detailed description of the invention when considered in conjunction with the drawings.
- [0012][0012]FIG. 1 is a functional block diagram of a receiver that includes a noise estimator in accordance with an aspect of the present invention.
- [0013][0013]FIG. 2 is an example of a data burst showing different types of tones in a transmission signal.
- [0014][0014]FIG. 3 is an example of a data burst, similar to that of FIG. 2, in which the order of the tones has been modified.
- [0015][0015]FIG. 4 is a functional block diagram of a receiver that includes a noise estimator and beamformer in accordance with an aspect of the present invention.
- [0016][0016]FIG. 5 is a functional block diagram illustrating an example of noise estimation and beamforming in accordance with an aspect of the present invention.
- [0017][0017]FIG. 6 illustrates an example of a wireless communications system that can employ a receiver in accordance with an aspect of the present invention.
- [0018][0018]FIG. 7 is a flow diagram illustrating a methodology for estimating noise in accordance with an aspect of the present invention.
- [0019][0019]FIG. 8 is a flow diagram illustrating a methodology for beamforming in accordance with an aspect of the present invention.
- [0020]The present invention provides a system and method to estimate noise in a received signal, such as received over a wired (e.g., electrically conducting or optical) or wireless medium. For purposes of brevity, the following description is described with respect to a wireless signal. The received signal can be partitioned into bursts, which contain a specified number of data tones. Noise is estimated for a selected subset of data tones of the received signal by decimating the received signal, such as to compute a partial noise estimate. The results of the computed partial noise estimate, for example, can be combined with one or more noise estimates for other frequency portions of the received signal to provide an aggregated indication of estimated noise for the received signal. In this way, the noise estimation process can be distributed over g data bursts, where g is a natural number, so that noise estimation for all frequencies in the received signal or burst will be updated every g data bursts. Accordingly, a larger value of g results in partial noise estimates being performed for a smaller subset of the frequencies associated with each data burst, which can significantly reduce the number of system computations and improve system performance.
- [0021][0021]FIG. 1 illustrates a schematic block diagram of a wireless receiver system
**10**in accordance with an aspect of the present invention. The receiver system**10**could be implemented within a subscriber unit and/or at a head end or base station of a wireless communications system. A data signal or burst is received at an antenna**12**, which captures the data signal and transmits an electric signal indicative of the received signal to an analog front end**14**. The analog front end**14**can include one or more processing components. The analog front end processor**14**, for example, can be programmed and/or configured to amplify the data signal, convert the data signal to an intermediate frequency (IF) and filter the data signal to eliminate signals that are outside of the desired frequency band. It is to be appreciated that many variations in receiver front end processing exist. For example, some receiver front end processing includes utilizing multiple IF frequencies and successive frequency conversions. Additional, some receivers can provide direct radio frequency (RF) sampling without IF stages. - [0022]The analog front end
**14**feeds a processed analog signal**16**to one or more analog-to-digital (A/D) converters**18**. The A/D converter**18**samples the analog data signal**16**at a predetermined sampling rate and provides a corresponding digitized output signal**20**. The front end processor**14**also can provide automatic gain control (AGC), as is conventional, to maintain the signal strength relative to the A/D converter**18**. - [0023]The A/ID converter
**18**is coupled to a digital preprocessor**22**that receives the digitized output signal**20**. The digitized signal**20**also is provided to a decimation component**24**, which can include hardware and/or software operative to decimate the digitized signal**20**to facilitate a noise estimation procedure in accordance with an aspect of the present invention. - [0024]The digital preprocessor
**22**, which can include a Finite Impulse Response (FIR) filter, provides additional filtering of the digitized signal**20**and reduces or decimates the sample of the digitized signal. The digital preprocessor**22**also can include digital automatic gain control to help ensure that the signal is maintained at a desired power level. The digital preprocessor**22**can include other signal processing components for converting the digitized signal**20**from the time domain to the frequency domain. By way of example, the digital preprocessor**22**is programmed and/or configured to perform a Fast Fourier Transform (FFT) on the digitized signal**20**. The FFT on the digitized signal converts the signal from the time domain to the frequency domain to facilitate processing of the frequencies or tones carrying data (see, e.g., FIGS. 2 and 3). - [0025]The digital preprocessor
**22**further can include a channel estimator that provides channel estimates at data tones for each data burst. By way of example, a channel estimation procedure can be implemented to compute a channel estimate using training tones for use in mitigating the effects of the interference and distortion caused by transmission of the received signal. The channel estimator can compute an intermediate channel response (e.g., a digitized data burst in the frequency domain) and/or a full channel estimate for each data burst. The digital preprocessor**22**thus provides an indication of the channel estimate, including full and/or intermediate channel responses. - [0026]The particular implementation of the digital preprocessor
**22**generally is a matter of design choice, which can vary depending on the particular receiver architecture and the modulation technique being employed. Once in the frequency domain, the frequencies or tones can then be further processed and demodulated. The frequency domain usually includes tones or frequencies modulated onto carriers according to the particular communications protocol and modulation scheme being implemented. - [0027]By way of example, the data signal or burst can be transmitted in a multiple carrier (or multiple access) format having a plurality of carrier frequencies or tones, such as shown in the examples of FIGS. 2 and 3. It is to be understood and appreciated that any arrangement and modulation for the tones can be implemented in accordance with an aspect of the present invention. A multiple carrier format allows multiple users to reuse the same communications resources while maintaining the identity of each user.
- [0028]By way of further example, one special type of multiple carrier protocol is referred to as Orthogonal Frequency Division Multiplexing (OFDM). In general, OFDM is a block-oriented modulation scheme that maps a number of data symbols into a number of orthogonal carriers separated by a distance 1/T, where T is a block period. OFDM is a technique by which data is transmitted at a high rate by modulating several low bit rate carriers in parallel rather than one single high bit rate carrier. OFDM is particularly useful in the context of Digital Audio Broadcasting, High Definition Television (HDTV), and Asymmetric Digital Subscriber Lines (ADSL), all of which can benefit from the present invention. OFDM can also be useful in satellite television systems, cable television, video on demand, interactive services, mobile communication devices, voice services and Internet services.
- [0029]An advantage of the OFDM is that intersymbol interference due to signal dispersion in the transmission channel can be reduced by inserting a guard time interval, known as the cyclic prefix, between the transmission of a subsequent symbol. This helps remove intersymbol interference, thereby alleviating the need for equalizers as required by most single carriers. The guard time allows delayed copies (e.g., reflections) of the main symbol to die out before the receiver receives the succeeding symbol. Due to this property, OFDM has gained popularity in high data rate systems including wireless broadband applications.
- [0030]In transmission of a data signal, an OFDM modulator converts a serial data stream into a block of N complex carriers, which can include zero tones, training tones and data tones. The sum of the individual carriers, of which amplitude and phase can be modulated, correspond to a time domain waveform that can be generated using an Inverse Discrete Fourier Transform (IDFT). The Inverse Fast Fourier Transform (IFFT) is a well known efficient implementation of the IDFT that performs an N-point IDFT transform, where N is the number of tones. The guard time is inserted into the output of the IDFT and filled in with a copy of the symbol (called a cyclic prefix) to preserve the orthogonality between carriers. At the receiver end, a data signal or data burst is received in the time domain and converted back into the frequency domain employing an FFT for extraction of the symbols from the data burst. The frequency domain signal is comprised of a plurality of data tones, training tones and zero tones. The training tones are transmitted at known magnitude and phase and employed in determining the channel estimate for use in compensating the data tones due to the effects of the channel on the tones.
- [0031]In an OFDM based communications system, data bursts divide the OFDM carriers into a plurality of N tones or carrier frequencies. FIG. 2 illustrates an example of a frequency-domain representation of a Quadrature Amplitude Modulation (QAM) data burst
**26**in which N tones are arranged in linear order. Each tone is modulated to contain a number of symbol values according to the QAM mode (e.g., 2, 4, 16, 32, 64, 128, 256 etc.) being employed. The training tones (e.g., indicated as T**0**through T**7**) include the leftmost carrier, and are generally evenly spaced apart with an interval of N/ν carriers, where ν is the number of training tones. Of the remaining N-ν carriers, N_{data }contain data tones (e.g., indicated as D**0**through D**44**), and N_{zero}=N-ν-N_{data }contain zero tones (e.g., indicated as Z**0**through Z**10**). The zero tones are divided between the band edges. In the example of FIG. 2, └N_{zero}/2┘ zero tones are placed at the left band edge, and ┌N_{zero}/2┐ zero tones are placed at the right band edge. Data tones occupy the remaining carriers in the center, which are interspersed with training tones. - [0032]The scrambled indexing of the data tones represents the frequency interleaving obtained through bit reversal. The input that is provided to the digital preprocessor
**22**thus assumes that the burst is arranged in a predetermined order so as to enable extraction and processing of the different types of tones. To facilitate processing of the data burst, the tones can be accepted and/or stored in bit-reversed order, such the burst data**28**depicted in FIG. 3. In the bit-reversed order of FIG. 3, the training tones occupy the first v inputs. The QAM symbols of the data tones are indexed in consecutive order and zero tones are inserted as appropriate. It is to be understood and appreciated that the data burst examples in FIGS. 2 and 3 are intended only for purposes of illustration, as other arrangements and types of signal formats can be utilized in accordance with an aspect of the present invention. - [0033]Referring back to FIG. 1, the digital preprocessor
**22**provides to a noise estimator**32**a signal**30**indicative of the channel estimates computed by the digital preprocessor. The noise estimator**32**also receives decimation information**36**from the decimation function**24**that identifies on which tones of the current data burst noise estimates are to be computed. The noise estimator**32**computes noise estimates for a subset of the data tones in each successive burst. The subset of tones is selected according to decimation information**36**from the decimation function**24**. The computed noise estimates**34**for the selected subset of data tones are provided to an aggregator**38**to update previously computed estimates for the respective tones. The aggregator**38**combines the computed noise estimates**34**with previously computed noise estimates, such as can be stored in memory or registers, so that noise estimates for all of the data tones (or all tones of a particular type) are updated periodically. - [0034]
- [0035]data tones in each data burst, where g is a natural number that defines the decimation level. That is, a higher value of g results in increased level of decimation. The decimation function
**24**is programmed and/or configured to repeatedly count from zero to g−1, incrementing in response to receiving each burst and repeating the count after reaching g−1. The decimation function**24**provides decimation information**36**that enables the noise estimator**32**to estimate noise for a different set of$\frac{{N}_{\mathrm{data}}}{g}$ - [0036]
- [0037]data tones on which noise estimates are to be performed for the current data burst.
- [0038]Alternatively, the decimation function
**24**simply can provide a count value to the noise estimator**32**, with the noise estimator selecting the data tones on which noise estimates are computed based on the count value. The selected subset of data tones can be spaced throughout the frequency spectrum or be grouped in other arrangements of tones. For each data burst, the aggregator**38**receives noise estimates for the selected subset of the data tones and combines the noise data with previously computed noise estimates for the other data tones. Of course, when the receiver is first activated, default values could be used for data tone noise estimates or the system can delay subsequent processing that requires noise estimates until estimates have been computed for all data tones. As a result, the noise estimator**32**updates noise estimates for all N_{data }data tones every g data bursts. - [0039]While the foregoing example determines to estimate noise for a different subset of data tones based on receiving a data burst, it is to be understood and appreciated that the noise estimator can be programmed and/or configured to decimate noise estimation computations in response to criteria different from a data burst in accordance with an aspect of the present invention. For example, it might be desirable to compute and update noise estimates for some or all data tones after receiving a certain number of data bursts or based on a count cycle that increments more slowly than every data burst. Additionally or alternatively, the decimation level can be variable so as to change as a function of the detected noise level, such as employing a higher decimation level when a relatively low level of noise is present and lower decimation level when a relatively high level of noise exists. Those skilled in the art will further understand and appreciate that whatever basis is used to control decimation at the noise estimator, the decrease in noise computations should be balanced with maintaining an acceptable level of system performance.
- [0040][0040]FIG. 4 illustrates an example of another wireless receiver system
**100**implemented in accordance with an aspect of the present invention. The receiver system**100**is similar to the system**10**shown and described with respect to FIG. 1 and could be implemented within a subscriber unit and/or at a head end or base station of a wireless communications system. Briefly stated, a wireless data signal is received at a pair of antennas**102**and**104**coupled to an analog front end**106**. The analog front end**106**, for example, can be programmed and/or configured to amplify and convert the data signals from each antenna**102**,**104**to an intermediate frequency (IF). The analog front end**106**further can filter the respective data signals to eliminate undesirable signals. - [0041]The front end
**106**feeds processed analog signals**108**,**110**to respective A/D converters**112**,**114**associated with each antenna**102**,**104**. The A/D converters**112**,**114**sample the analog data signals**108**,**110**at a predetermined sampling rate and provide respective digitized output signals**116**,**118**. - [0042]The A/D converters
**112**and**114**are coupled to a digital preprocessor**120**that receives the digitized output signals**116**,**118**. The digital preprocessor**120**provides additional filtering of the digitized signals**116**and**118**, such as to reduce the sample of the digitized signals. The digital preprocessor**120**also can include digital automatic gain control to help ensure that the signals are maintained at a desired power level. The digital preprocessor**120**also can include other signal processing components for converting the digitized signals**116**and**118**from the time domain to the frequency domain, such as by implementing an FFT algorithm. The particular implementation of the digital preprocessor**120**can vary, for example, depending on the particular receiver architecture and/or modulation scheme being employed. The digital preprocessor**120**further can include a channel estimator programmed and/or configured to provide an indication of the magnitude and phase of the training tones (or pilot tones) of the data signals received at the respective antennas**102**and**104**. - [0043]By way of example, the channel estimator of the preprocessor
**120**receives filtered, frequency domain digitized signals (e.g., conforming to OFDM) for the respective antennas**102**and**104**. The channel estimator samples the training tones from the data signal. The channel estimator portion of the preprocessor**120**can compute intermediate channel responses as well as full channel estimates for the respective input signals**116**and**118**. The intermediate channel response can be employed to compute an indication of training tone noise, for which a variance and correlation matrix can be determined. Averaging also can be employed to provide an averaged indication of the training tone noise. The digital preprocessor**120**thus provides outputs**122**and**124**to a hard decision component**126**, which outputs can correspond to the indication of training tone noise and channel estimates. - [0044]The hard decision component
**126**is programmed and/or configured to compute hard decisions (e.g., symbol estimates) for some of the data tones in accordance with an aspect of the present invention. In particular, the hard decision component**126**receives decimation information**128**from a decimation function**130**. The hard decision component**126**thus computes hard decision for only for a selected subset of one or more of the data tones (e.g., at specified frequency values) based on the decimation information**128**. - [0045]The decimation function
**130**, for example, monitors the incoming signals**116**,**118**and increments a counter with each data burst, such as counting from a minimum to a maximum count value. When the maximum value is reached, the counter can be reset to the minimum value. Each count value further can map to a different subset of the data tones, such that the hard decision component computes hard decisions for a specific subset of data tones according to the count value. The hard decisions, for example, are computed for each of the data tones identified in the subset as a function of the noise estimate for the nearest training tone as well as the channel estimates and digitized signals received at each antenna for such data tones. The hard decision component**126**provides the computed hard decisions**132**for the selected subset of data tones to a noise estimator**134**. Accordingly, the decimation information**128**can be any information that identifies a subset of data tones (or based on which a subset can be determined) for a given data burst for which the hard decisions are to be computed. - [0046]The noise estimator
**134**is programmed and/or configured to compute a decimated estimate of noise for the selected data tones in the data burst in accordance with an aspect of the present invention. The decimated noise estimate, for example, is computed for each of the selected data tones as a function of the digitized signal, the channel estimate and the hard decision that have been computed for each antenna. The noise estimator**134**receives decimation information**136**from the decimation function**130**. The decimation usually is the same as that provided to the hard decision component**126**, such that noise estimates are computed for the same tones as the hard decisions. It is to be understood and appreciated that different decimation information also could be used so that a different desired decimation rate is employed by the noise estimator**134**than by the hard decision component**126**. - [0047]The noise estimation also can include a variance and correlation computation performed on the initial noise estimates for each of the antenna signals to provide a covariance matrix indicative of the noise estimates for each of the selected data tones in the respective received signals. Averaging also can be employed to smooth the respective noise estimates
**134**for each of the data tones in the selected subset. The resulting noise estimates, which include the data tones belonging to the selected subset of tones, can be used to update previously computed noise estimates for such data tones. In general, the frequency in which noise estimates for all data tones are updated depends on the number of tones in each data burst and the number of tones in each subset of tones for which the decimated noise computations are performed. - [0048]The noise estimator
**134**provides noise estimates**138**,**140**for each respective antenna**102**,**104**to a beamformer**142**. The preprocessor**120**also provides channel estimates for the respective antennas**102**and**104**to the beamformer**142**. The beamformer**142**is programmed and/or configured to compute an indication of the signal relative to the noise for the data tones based on the signal value, the updated noise estimates and the channel estimates for each respective data tone. - [0049]By way of example, the beamformer
**142**computes soft decisions and NSR estimates for each data tone in the present data burst based on the updated noise estimates as well as the channel responses and signal values associated with each antenna**102**,**104**for each respective data tone. - [0050]Because noise estimates are computed for data tones according to the decimation rate, in accordance with an aspect of the present invention, the overall number of computations required to obtain values needed to perform beamforming computations is significantly reduced. The additional overhead associated with controlling the decimation is less than that required to compute a corresponding noise estimate for each data tone in every data burst. Those skilled in the art will understand and appreciate that the computational efficiency can be increased as a function of the decimation rate, but that this should be balanced with maintaining an acceptable level of system performance. Further, it may be desirable to employ feedback from the noise estimator to the decimation function to adjust the decimation level according to the amount of noise computed.
- [0051]The beamformer
**142**provides outputs**144**and**146**to a data postprocessing block**148**, which outputs, for example, contains the computed soft decisions and NSR estimates. The data postprocessing block**148**can include slicing for bit constellation mapping data. Additionally or alternatively, the data postprocessing block**148**can performs error correction and decoding of the weights associated with the data symbols, such as based on the beamforming computations. The data postprocessing block**148**outputs the data**150**for further decoding of other data layers included within the data that has been received at the receiver**100**. - [0052]Additional aspects of the present invention will be better appreciated with respect to FIG. 5, which depicts a functional representation for part of a receiver system
**200**in accordance with an aspect of the present invention. The receiver portion**200**includes a channel estimator**202**that receives frequency domain data bursts or signals Y_{1}, and Y_{2}, such as have been digitized, filtered, and converted into the frequency domain by an appropriate FFT algorithm. The signals Y_{1 }and Y_{2 }correspond to signals received by different antennas of the receiver, including symbol values for each carrier frequency in the respective received signals. The channel estimator**202**provides an indication of the magnitude and phase of training tones for data bursts that are received. - [0053]By way of example, the channel estimator
**202**is programmed and/or configured to sample training tones from each of the signals Y_{1 }and Y_{2}. Scaling and demodulation can be applied to the sampled training tones to facilitate channel estimation. An IFFT algorithm is applied to the extracted training tones of each signal to convert the respective signals into time domain impulse responses. Additional scaling and filtering can be performed on the impulse response associated with each of the signals Y_{1 }and Y_{2}. A suitable FFT can then performed on the impulse responses to convert the time domain responses back into frequency domain signals. To enable certain subsequent processing, the channel estimator**202**can provide intermediate channel responses B_{1}, and B_{2 }for the respective input signals Y**1**and Y**2**, such as might correspond to training tones in each signal after the phase contribution has been removed. Further, the channel estimator**202**provides full channel estimates H_{1 }and H_{2 }for the respective input signals Y_{1 }and Y_{2}, which have been processed as indicated above. - [0054]The intermediate channel responses B
_{1 }and B_{2 }are provided to a training tone noise estimator**204**in accordance with an aspect of the present invention. The training tone noise estimator**204**is programmed and/or configured to compute an estimate of noise for the training tones as a function of the intermediate channel responses B_{1 }and B_{2}, such as can include an indication of the difference of training tones in a current data burst relative to respective training tones in a previous data burst. The noise estimator**204**also can implement synchronization to compensate for detected slips (e.g., phase lead or phase lag) associated with the intermediate channel responses B_{1 }and B_{2}. The synchronization, commonly performed with a twiddle factor, can be applied to one of the terms of the vector algorithm, such as the training tone associated with the previous data burst. For example, forward or backward slips (phase lead or lag) can occur as a result of interference during transmission and/or as a result of the high data rates of the signals being transmitted. - [0055]A training tone index
**206**is operative to index the computation of the function**206**to increment through the training tones in the intermediate channel respones B_{1 }and B_{2}. For example, to facilitate computing noise at the training tones, the index**206**can implement a bit-reversed order of the training tones (See, e.g., FIG. 3), which index values are provided to the function**206**to perform the estimation computation relative to each of the training tones being indexed. Other implementations of indexing also can be utilized by the training tone noise estimator**204**. - [0056]By way of further illustration, Eq. 1 represents a computation that can be performed by the noise estimator
**204**, including a slip adjustment component (e.g., twiddle factor) that is applied to the intermediate channel response for a previous data burst. That is, Eq. 1 can be used to provide respective noise vectors W_{T1 }and W_{T2 }for the training tones of the intermediate channel responses B[r,b] and B[r,b-1].$\begin{array}{cc}{W}_{T}\ue8a0\left[k\right]=B\ue8a0\left[r,b\right]-{\uf74d}^{j\ue8a0\left(\frac{2\ue89e\pi \ue89e\text{\hspace{1em}}\ue89ek}{v}-\pi \right)\ue89es}\ue89eB\ue8a0\left[r,b-1\right]& \mathrm{Eq}.\text{\hspace{1em}}\ue89e1\end{array}$ - [0057]where:
- [0058]B corresponds to the intermediate channel responses;
- [0059]b is an index for the current data burst;
- [0060]k is an index for each of the training tones, e.g., k ε{0,1, . . . , ν−1};
- [0061]s is a slip value for identifying slip characteristics (e.g., s=0 indicates no
- [0062]slip; s=−1 indicates forward slip; and s=1 indicates backward slip); and
- [0063]r is the bit reversed value of the training tone index k.
- [0064]The training tone noise estimator
**204**provides the quantities W_{T1 }and W_{T2 }to a covariance function**208**that is operative to compute the variance and correlation of the training tone noise based on the noise estimates W_{T1 }and W_{T2}. For example, the covariance function**208**constructs a covariance matrix R_{T }based on the noise vectors W_{T1 }and W_{T2}, which provides an estimate of the training tone noise for each of the received signals. - [0065]By way of illustration, the covariance of the training tone noise can be computed from the noise vectors W
_{T1 }and W_{T2 }of Eq. 1 as follows:$\begin{array}{cc}\begin{array}{c}{R}_{T}\ue8a0\left[k\right]=\text{\hspace{1em}}\ue89e\left[\begin{array}{cc}{\uf603{W}_{\mathrm{T1}}\ue8a0\left[k\right]\uf604}^{2}& {W}_{\mathrm{T1}}\ue8a0\left[k\right]\xb7{W}_{\mathrm{T2}}^{*}\ue8a0\left[k\right]\\ {W}_{\mathrm{T1}}^{*}\ue8a0\left[k\right]\xb7{W}_{\mathrm{T2}}\ue8a0\left[k\right]& {\uf603{W}_{\mathrm{T2}}\ue8a0\left[k\right]\uf604}^{2}\end{array}\right]\\ =\text{\hspace{1em}}\ue89e\left[\begin{array}{cc}{\sigma}_{\mathrm{T1}}^{2}\ue8a0\left[k\right]& {\sigma}_{\mathrm{T12}}\ue8a0\left[k\right]\\ {\sigma}_{\mathrm{T12}}^{*}\ue8a0\left[k\right]& {\sigma}_{\mathrm{T2}}^{2}\ue8a0\left[k\right]\end{array}\right]\end{array}& \mathrm{Eq}.\text{\hspace{1em}}\ue89e2\end{array}$ - [0066]where k ε{0,1, . . . , ν−1}
- [0067]Because of symmetry, only four real elements are actually computed; namely, the two diagonal elements and the real and imaginary parts of either off-diagonal element.
- [0068]The covariance function
**208**provides the covariance of the training tone noise R_{T }to an averager**210**. For example, the averager**210**can be a filter (e.g., a single pole filter) operative to smooth the training tone noise values over time. The averager**210**also can be turned ON or OFF, as needed, such as by having its operation be selectable. - [0069]Following the example of using a single pole filter for the averager
**212**, the computation for the averaged training tone noise can be expressed as: -
*R[k,b]=*(1−β)·*R*_{T}*[k,b−*1]+½·β·*R*_{T}*[k,b]*Eq. 3 - [0070]where
- [0071]k ε{0,1, . . . , ν−1};
- [0072]b is the index for the current data burst, and
- [0073]β=2
^{−p}, where p ε{0,1,2,3,4}. - [0074]Once the training tone noise estimates have been computed, they can be employed by a beamformer or other subsequent processing that might require an estimation of the training tone signal noise.
- [0075]In the example of FIG. 5, the averager
**210**provides an indication of the average training tone noise R to a hard decision estimator**212**. The hard decision estimator**212**receives information**214**from a data tone selector**216**that identifies desired data tones for which data tones hard decisions are to be computed. The hard decision estimator**212**computes the hard decisions for the desired data tones of the data signal as a function of the channel estimates H**1**and H**2**, the digitized channel signals Y**1**and Y**2**and the average training tone noise R. The hard decision estimator**212**provides an indication of the hard decisions Z_{hard }to a data tone noise estimator**218**. - [0076]By way of example, the hard decisions Z
_{hard }(e.g., symbol estimates) for the desired data tones can be computed as follows:$\begin{array}{cc}{Z}_{\mathrm{hard}}\ue8a0\left[k\right]=\frac{\left[{H}_{1}^{*}\ue8a0\left[r\right]\ue89e{H}_{2}^{*}\ue8a0\left[r\right]\right]\ue8a0\left[\mathrm{adj}\ue89e\text{\hspace{1em}}\ue89eR\ue8a0\left[t\right]\right]\ue8a0\left[\begin{array}{c}{Y}_{1}\ue8a0\left[r\right]\\ {Y}_{2}\ue8a0\left[r\right]\end{array}\right]}{\left[{H}_{1}^{*}\ue8a0\left[r\right]\ue89e{H}_{2}^{*}\ue8a0\left[r\right]\right]\ue8a0\left[\mathrm{adj}\ue89e\text{\hspace{1em}}\ue89eR\ue8a0\left[t\right]\right]\ue8a0\left[\begin{array}{c}{H}_{1}\ue8a0\left[r\right]\\ {H}_{2}\ue8a0\left[r\right]\end{array}\right]}& \mathrm{Eq}.\text{\hspace{1em}}\ue89e4\end{array}$ - [0077]where:
- [0078]k ε{desired data tones identified by the selector
**216**} - [0079]r is the bit reversed index for data tone k
- [0080]
- [0081]In accordance with an aspect of the present invention the desired data tones can be any subset of the data tones, such that hard decisions are computed for different subsets of data tones over a plurality of data bursts. The hard decisions for the desired subset of data tones can be stored in memory operatively associated with the hard decision estimator (e.g., RAM, SDRAM, data registers, etc.).
- [0082]By way of example, the data tone selector
**216**can be coupled to a burst counter**220**that increments in response to each data burst received, such as based on Y_{1 }and/or Y_{2}. The burst counter**220**provides a burst count value**222**to the data tone selector**216**, which selects a corresponding subset of the data tones according the burst count value. It is to be understood and appreciated that the data tone selector**216**can group data tones into subsets organized by virtually any criteria, which might vary according to the number of data tones per data burst, the subsets being employed and/or the desired performance. - [0083]
- [0084]data tones (where g is a natural number), which are shifted into the hard decision estimator
**212**with each data burst. The subset of data tones can be selected from successive data tones or from tones arranged at spaced intervals throughout the frequency spectrum. Different subsets also can include different numbers of data tones. Because a subset includes less than all data tones, the hard decision estimator**212**requires more than one data burst to compute hard decisions for all data tones in the frequency spectrum. Additionally, to provide added redundancy, different subsets of data tones can include some of the same data tones, if desired. - [0085]In accordance with an aspect of the present invention, the data tone noise estimator
**218**computes data tone noise estimates W_{1 }and W_{2 }for a subset of desired data tones. The data tone noise estimates can be computed as a function of the digitized data signals Y_{1}, Y_{2}, the channel estimates H_{1}, H_{2 }and the computed hard decisions Z_{hard}. The subset of desired data tones can be selected in a manner similar from that described above with respect to the hard decision estimator**212**. That is, the data tone noise estimator**218**receives information**224**from the data tone selector**216**, which information identifies the subset of data tones for which the noise estimates are to be computed. The subset can be the same subset of data tones or it could be different from that employed by the hard decision estimator**212**. - [0086]By way of illustration, the data tone noise estimator
**218**can be programmed and/or configured to compute noise estimates for the desired data tones, as follows: -
*W[k]=Y[r]−H[r]Z*_{hard}*[k]*Eq. 5 - [0087]where:
- [0088]k ε{desired data tones identified by the selector
**216**}, and - [0089]r is the bit reversed index for data tone k
- [0090]The data tone noise estimator
**218**provides the computed noise estimates W_{1 }and W_{2 }to a covariance function**226**that computes a matrix R for the variance and correlation of the computed data tone noise W_{1 }and W_{2}. The covariance is performed on a selected subset of the data tones in a current data burst, such as based on information**228**from the data tone selector**216**. The subset usually is the same subset of data tones as was employed to compute the data tone noise W_{1 }and W_{2}, although a different subset of tones could be used. Eq. 6 shows an example of how the covariance can be computed as follows:$\begin{array}{cc}\begin{array}{c}R\ue8a0\left[r\right]=\text{\hspace{1em}}\ue89e\left[\begin{array}{cc}{\uf603{W}_{1}\ue8a0\left[k\right]\uf604}^{2}& {W}_{1}\ue8a0\left[k\right]\xb7{W}_{2}^{*}\ue8a0\left[k\right]\\ {W}_{1}^{*}\ue8a0\left[k\right]\xb7{W}_{2}\ue8a0\left[k\right]& {\uf603{W}_{2}\ue8a0\left[k\right]\uf604}^{2}\end{array}\right]\\ =\text{\hspace{1em}}\ue89e\left[\begin{array}{cc}{\sigma}_{1}^{2}\ue8a0\left[k\right]& {\sigma}_{12}\ue8a0\left[k\right]\\ {\sigma}_{12}^{*}\ue8a0\left[k\right]& {\sigma}_{2}^{2}\ue8a0\left[k\right]\end{array}\right]\end{array}& \mathrm{Eq}.\text{\hspace{1em}}\ue89e6\end{array}$ - [0091]where:
- [0092]k ε{desired data tones identified by the selector
**216**} - [0093]r is the bit reversed index for data tone k
- [0094]After the noise on the desired data tones has been computed, the processes associated with Eqs. 4-6 can be repeated for desired zero tones. However, hard decisions are not required for the zero tones because no data is being transmitted at these particular frequencies. The covariance function
**226**provides the covariance of the noise estimates R to an averager**230**. - [0095]The averager
**230**is programmed and/or configured to smooth out discrete effects of the noise estimates. For example, the averager can be implemented as a sliding window averager that computes an average of the covariance noise estimates R for desired data tones over a plurality of data bursts (e.g., over time), which average is indicated as R_{avg}. The averager**230**receives information**232**from the data tone selector**216**that identifies a desired subset of data tones, which the averager employs to select desired data tones for which the averaging is to occur. The information**232**can cause the averager**230**to compute an average for the same tones as processed at the noise estimator**218**and/or the covariance function**226**, although a different decimation rate could be employed at the averager from that used in the noise calculations. - [0096]The operation performed by the averager
**230**, for example, can be represented by the following equation:$\begin{array}{cc}{R}_{\mathrm{avg}}\ue8a0\left[r\right]=\frac{1}{{N}_{\mathrm{term}}}\ue89e\sum _{m=l-\beta}^{l-\beta +{N}_{\mathrm{term}}}\ue89eR\ue8a0\left[n\right]& \mathrm{Eq}.\text{\hspace{1em}}\ue89e7\end{array}$ - [0097]where:
- [0098]k ε{desired data tones identified by the selector
**216**} - [0099][0099]
**1**is the linear index for data tone k - [0100]r is the bit reversed index for data tone k
- [0101]n is the bit reversed index for data tone m
- [0102]N
_{term }is the number of terms being averaged; and - [0103]β=└N
_{term}/2┘ - [0104]Eq. 7 thus can provide a sliding window averager that is updated for every data tone, although it does not need to be updated for every data tone. It is to be understood and appreciated that the averager
**230**can accommodate any decimation rate, which further can be adjusted as a function of the determined noise. For example, it may be desirable to increase decimation rate during low noise situations and decrease the decimation rate when a greater level of noise exists. - [0105]The averager
**230**is operatively associated with a register**234**, which can be hardware and/or software, for storing updated values of the average data tone noise. That is, the averager**230**computes average noise values R_{avg }for desired data tones based on the tone selection information**232**. The computed R_{avg }value for each desired data tone is used to update a corresponding register location**236**,**238**, or**240**with updated noise data for that data tone. As a result, the averager**230**updates at least a portion (e.g., one or more) of the register locations**236**,**238**, and**240**based on the noise computations performed with respect to every data burst. The average data tone noise information stored in the register**234**collectively represents data tone noise for all data tones. Accordingly, it can take several data bursts to initially populate the register**234**for all data bursts, the number of bursts varying as a function of the decimation rate being employed. Once the register**234**is initially set with noise data, the noise data for all data tones will be updated over a plurality of bursts based on the decimation rate being employed. - [0106]
- [0107]data tones in each data burst, where g is a natural number that defines the decimation level. That is, a higher value of g results in increased level of decimation (e.g., smaller subsets of data tones). The data tone selector
**216**is programmed and/or configured to repeatedly count from zero to g−1, incrementing in response to receiving each burst and resetting the count value to zero after reaching g−1. The data tone selector**216**provides decimation information**224**,**228**,**232**that enables the noise estimation calculations to be performed for a corresponding set of$\frac{{N}_{\mathrm{data}}}{g}$ - [0108]data tones selected for each count value between 0 and g−1, where N
_{data }data is the number of data tones. The averager**230**thus can provide updated average noise estimates for all N_{data }data tones every g data bursts. Those skilled in the art will understand and appreciate, however, that other decimation rates (or functions) can be utilized in accordance with an aspect of the present invention. - [0109]The updated average data tone noise estimates of the register
**234**are utilized by a beamformer**242**programmed and/or configured to compute an indication of signal relative to noise. By way of example, the beamformer**242**includes a soft decision estimator component**244**and a confidence component**246**that perform respective beamforming computations for the data tones. The computations at each of the beamforming components**244**,**246**are indexed by a data tone index function**248**that provides an index value, which indicates for which data tone computations are to be performed. For example, the soft decision estimator component**244**computes soft decisions, indicated as output {circumflex over (Z)}, and the confidence component computes NSR estimates, indicated as output {overscore (q)}, based on the data tone index value. The soft decisions {circumflex over (Z)} are computed for each data tone based on the time domain inputs Y_{1 }and Y_{2}, channel estimates H_{1 }and H_{2 }from the channel estimation function**202**, and the computed average data tone noise R_{avg }stored in the register**234**. The confidence component**246**computes NSR estimates {overscore (q)} for each data tone based on the channel estimates H_{1 }and H_{2 }from the channel estimation function, and the computed average data tone noise R_{avg}. - [0110]By way of further illustration, the soft decisions and NSR estimates {circumflex over (Z)} and {overscore (q)} can be computed for all data tones according to the following equations:
$\begin{array}{cc}\hat{Z}\ue8a0\left[k\right]=\frac{\left[{H}_{1}^{*}\ue8a0\left[r\right]\ue89e{H}_{2}^{*}\ue8a0\left[r\right]\right]\ue8a0\left[\mathrm{adj}\ue89e\text{\hspace{1em}}\ue89e{R}_{\mathrm{avg}}\ue8a0\left[r\right]\right]\ue8a0\left[\begin{array}{c}{Y}_{1}\ue8a0\left[r\right]\\ {Y}_{2}\ue8a0\left[r\right]\end{array}\right]}{\left[{H}_{1}^{*}\ue8a0\left[r\right]\ue89e{H}_{2}^{*}\ue8a0\left[r\right]\right]\ue8a0\left[\mathrm{adj}\ue89e\text{\hspace{1em}}\ue89e{R}_{\mathrm{avg}}\ue8a0\left[r\right]\right]\ue8a0\left[\begin{array}{c}{H}_{1}\ue8a0\left[r\right]\\ {H}_{2}\ue8a0\left[r\right]\end{array}\right]}=\frac{{\hat{Z}}_{\mathrm{num}}\ue8a0\left[k\right]}{{\hat{Z}}_{\mathrm{den}}\ue8a0\left[k\right]}\ue89e\text{}\ue89e\mathrm{and}& \mathrm{Eq}.\text{\hspace{1em}}\ue89e8\\ \stackrel{\_}{q}\ue8a0\left[k\right]=\frac{\mathrm{det}\ue89e\text{\hspace{1em}}\ue89e{R}_{\mathrm{avg}}\ue8a0\left[r\right]}{{\hat{Z}}_{\mathrm{den}}\ue8a0\left[k\right]}& \mathrm{Eq}.\text{\hspace{1em}}\ue89e9\end{array}$ - [0111]where
- [0112]k ε{0,1, . . . , N
_{data}**−1} and** - [0113]r is the bit reversed value of the data tone index k.
- [0114]Because the denominator in Eqs. 8 and 9 contains the average noise estimates, whose values are decimated, it is to be appreciated that the denominator calculations for estimates {circumflex over (Z)} and/or {overscore (q)} (e.g., {circumflex over (Z)}
_{den}[k]) also could be decimated in accordance with an aspect of the present invention. - [0115]By way of example, {circumflex over (Z)}
_{den}[k] could be decimated at any desired rate (e.g., ½, ¼, ⅛, etc.), with updated data being stored in suitable memory, such as a register. Additionally or alternatively, any or all of the individual terms H_{1}, H_{2}, and R_{avg}, which do not depend directly on burst-by-burst data (e.g.,as do Y_{1 }and Y_{2}), could be decimated at a desired rate. The decimation rates for such terms H_{1}, H_{2}, R_{avg }and/or {circumflex over (Z)}_{den}[k] could be independent of each other (e.g., at different rates) and further could be dynamically modified, such as a function of the noise or other signal characteristics. - [0116]In view of the foregoing, those skilled in the art will understand and appreciate that decimation, in accordance with an aspect of the present invention, enables reduced computations and processing steps, as only a portion of the data being decimated needs to be updated with each data burst. It is to be also understood and appreciated that equations
**1**-**8**are scalable such equations. That is, while the foregoing examples have been described with respect to a two-antenna implementation, the equations could be implemented relative to data burst signals received at any number of antennas. For example, Eq. 8 can be generalized for any number of antennas and expressed as:$\begin{array}{cc}\hat{Z}\ue8a0\left[k\right]=\frac{\left[{H}_{1}^{*}\ue8a0\left[r\right]\ue89e\cdots \ue89e\text{\hspace{1em}}\ue89e{H}_{n}^{*}\ue8a0\left[r\right]\right]\ue8a0\left[\mathrm{adj}\ue89e\text{\hspace{1em}}\ue89e{R}_{\mathrm{avg}}\ue8a0\left[r\right]\right]\ue8a0\left[\begin{array}{c}{Y}_{1}\ue8a0\left[r\right]\\ \vdots \\ {Y}_{n}\ue8a0\left[r\right]\end{array}\right]}{\left[{H}_{1}^{*}\ue8a0\left[r\right]\ue89e\cdots \ue89e\text{\hspace{1em}}\ue89e{H}_{n}^{*}\ue8a0\left[r\right]\right]\ue8a0\left[\mathrm{adj}\ue89e\text{\hspace{1em}}\ue89e{R}_{\mathrm{avg}}\ue8a0\left[r\right]\right]\ue8a0\left[\begin{array}{c}{H}_{1}\ue8a0\left[r\right]\\ \vdots \\ {H}_{n}\ue8a0\left[r\right]\end{array}\right]}& \mathrm{Eq}.\text{\hspace{1em}}\ue89e10\end{array}$ - [0117]where n denotes the number of antennas.
- [0118][0118]FIG. 6 illustrates one example of a possible implementation of the present invention as it applies to a wireless communications system
**300**. The system includes a base station**302**and one or more subscriber units**304**. The base station**302**includes a transceiver that is operative to both transmit and receive data signals**306**via an antenna system**308**(e.g., one or more antennas) wirelessly through an environment to selectively communicate information to and from the subscriber units**304**. The base station**302**is coupled to a network infrastructure**310**via a server (not shown) or the like. The network infrastructure**310**, for example, can include the Internet, an intranet or other type of network infrastructure. The base station**302**or its associated server (not shown) are programmed and/or configured to facilitate communication of network information relative to the network infrastructure**310**using a defined network protocol (e.g., TCP/IP, Fibre channel, etc.). The network information, for example, can include interactive video and/or audio data as well as other types of data. - [0119]For each data burst from the antenna system
**308**, the main data burst signal**306**is transmitted and received at one or more antennas**312**and**314**operatively coupled to a RF transceiver**316**. The main data burst signal**306**usually reflects off one or more objects**318**and**320**in the environment, causing each of the antennas**312**,**314**to receive a plurality of reflected signals**322**and**324**in addition to the main data burst signal**306**. - [0120]The transceiver
**316**includes a receiving device that converts the received RF signals into corresponding electrical signals, which are transferred to a modem**326**. The transceiver**316**also includes a transmitter coupled to the antennas**312**,**314**for transmitting request data to the base station**302**. It is to be understood and appreciated that, while the RF transceiver**316**is illustrated as being external to the modem**326**at the subscriber unit**304**, the transceiver also could be integrated into the modem in accordance with an aspect of the present invention. Alternatively, the modem**326**could be incorporated into a set top box, the antenna, a personal computer, a hand-held computer, and/or other microprocessor-based appliance. - [0121]The modem
**326**includes front end hardware and/or software**328**coupled to receive analog signals from the transceiver**316**. The front end**328**is programmed and/or configured to amplify, filter and/or digitize the electrical signals corresponding to signals or bursts received at the antennas**312**,**314**. The front end**328**, for example, is coupled to signal processor**330**, which can be implemented as computer executable instructions within a DSP, as hardware and/or software in ASIC or as part of some other signal processing component, that is programmed and/or configured to process the digitized signal in accordance with an aspect of the present invention. That is, the signal processor**330**is operative to compute noise estimates for selected tones of the received signal. In one particular aspect of the present invention, each received signal (or burst) is processed according to a decimation rate, which can be fixed or variable, such that noise estimates are computed for a selected subset of data tones in the received signal. Noise estimates can be computed for different subsets in successive data bursts so that noise estimates are periodically updated for all data tones based on the decimation rate. Because noise estimates are computed for fewer than all data tones, the number of computations is reduced, thereby increasing overall system performance. - [0122]When the modem receives wireless signals from more than one antenna, such as in the example of FIG. 6, noise estimates are performed on signals from each of the antennas. Further, the signal processor
**330**can employ the noise estimates to perform beamforming computations, such as in the form of soft decisions and NSR estimates. The computations for each data tone of a received signal are calculated based on the updated noise estimates, which, as mentioned above, are updated for all data tones periodically based on the decimation rate. Accordingly, the beamforming computations for some data tones might use noise estimates computed for previous data signals, whereas the computations for some other data tones may use noise estimates computed for the current data signal. After the beamforming computations are performed on the data tones, the signal processor**330**can perform further processing, such as hard or soft slicing and then decoding and demodulation based on the sliced constellation symbol estimates. - [0123]The modem
**326**is coupled to a computer device**332**, which handles additional processing steps and provides a mechanism for user interaction with the information being communicated through the communications system. The computer device**332**, for example, can be a personal computer, an Internet appliance, or other microprocessor-based device operative to receive and/or send information relative to the modem**326**. It is to be understood and appreciated that the modem**326**also could be integrated into the computer device**332**. - [0124]The computer device
**332**is coupled to an input device**334**for receiving instructions from a user directly or indirectly by a remote link. An output device**336**is also provided, so that selection information and requests can be displayed to the user. The computer device**332**can include computer-executable instructions for providing task selections, requests and control to a user and allowing a user to interact with information available over the network infrastructure**310**. It will be understood and appreciated that the applicability of the present invention is not limited to a particular configuration of communications system and those skilled in the art further will appreciate many other communication implementations that can be employed in accordance with an aspect of the present invention. - [0125]In view of the foregoing structural and functional features described above, a methodology in accordance with various aspects of the present invention will be better appreciated with reference to FIGS.
**7**-**8**. While, for purposes of simplicity of explanation, the methodologies of FIGS.**7**-**8**are shown and described as executing serially, it is to be understood and appreciated that the present invention is not limited by the illustrated order, as some aspects could, in accordance with the present invention, occur in different orders and/or concurrently with other aspects from that shown and described herein. Moreover, not all illustrated features may be required to implement a methodology in accordance with an aspect the present invention. - [0126][0126]FIG. 7 illustrates an example of a methodology to perform noise estimation on a signal in accordance with an aspect of the present invention. The methodology can be implemented as hardware and/or software, such as by a DSP or an ASIC. The methodology begins at
**400**, in which a data signal or burst is received. Preprocessing also can be performed on the received signal, such as amplification, filtering, digitization and/or conversion of the received signal into the frequency domain. It is to be appreciated that the methodology can be implemented on both wired and wireless data signals, although, for purposes of brevity, the following describes the procedure as applied to a wireless signal. - [0127]Next, at
**410**, a burst counter is initialized. The burst counter provides a count value that is employed to select desired data tones on which noise estimation is performed in accordance with an aspect of the present invention. The burst counter, for example, is programmed and/or configured to count consecutively from a minimum count value (e.g., zero) to a maximum count value (e.g., g−1) and then repeat (e.g. modulo g), such that the value of g determines the decimation rate applied to the received signals. In this way,$\frac{{N}_{\mathrm{data}}}{g}$ - [0128]data tones in each data burst can be updated, thereby reducing the number of computations performed on each received signal as a function of the value of g. It is to be understood and appreciated that the value of g could be programmable and/or vary as a function of the estimated noise level so as to provide a dynamic system that can be optimized according to its environment. Additionally, the burst counter can be implemented in other forms.
- [0129]From
**410**, the methodology proceeds to**420**in which a subset of desired data tones is selected, such as based on the present value of the burst counter. Those skilled in the art will understand and appreciate various functions or selection criteria that could be employed to select a reduced sample of desired data tones for use in noise estimation computations in accordance with an aspect of the present invention. - [0130]Next, at
**430**, data tone noise is estimated for the selected data tones. Data tone noise estimates, for example, are computed for the selected data tones as a function of the digitized data signals Y_{1}, Y_{2 }and the channel estimates H_{1}, H_{2 }and the computed hard decisions Z_{hard }for the selected data tones (see, e.g., Eq. 5). The computed noise estimates are then employed to update corresponding noise estimates for the selected data tones at**440**. By way of illustration, a register (e.g., hardware and/or software) can store noise estimates for the data tones that can be employed in subsequent processing stages. From**440**, the methodology proceeds to**450**. - [0131]At
**450**, a determination is made as to whether a next data burst has been received. The methodology can loop until the next burst is received. When a burst is received, the methodology proceeds to**460**in which the burst counter is incremented. As mentioned above, the burst counter can increment sequentially from a starting value to a maximum value and, once the maximum value is reached, it can reset to begin counting from its starting value. After the burst counter is appropriately adjusted (e.g., incremented to a next value or reset), the procedures of**420**-**450**are repeated for the next subset of one or more data tones selected at**420**. - [0132]As a result, noise estimates will be updated for a selected subset of the data tones each iteration through the methodology for a given data burst. Because noise estimates are not required to be performed for all data tones in each data burst, computational efficiency can be increased so as to improve overall system performance. It further is to be appreciated that additional computational savings can be afforded by decreasing the number of data tones in each selected subset, although the benefits should be balanced with overall system performance.
- [0133][0133]FIG. 8 illustrates a beamforming methodology that can be implemented relative to a data signal or burst in accordance with an aspect of the present invention. The methodology begins at
**500**in which a burst counter is initialized. The initialization, for example, can be coincident with receiving a data burst at one or more antennas or at a subsequent processing stage of the received signal. - [0134]Next, at
**510**, training tone noise is estimated for one or more data signals or bursts, such as preprocessed signals received at one or more antennas. The training tone noise estimation, for example, can be implemented based on intermediate channel estimates for the respective training tones in the current data burst relative to the intermediate channel estimates in a previous data burst. Additional scaling can be applied to noise estimate computation to compensate for slips in the data burst. A variance and correlation of the noise estimate can be computed to provide a covariance matrix. Time-based averaging also could be implemented relative to the training tone noise estimate. After training tone noise has been estimated, the methodology proceeds to**520**. - [0135]At
**520**, desired data tones are selected. The desired data tones, for example, are selected based on the value of the burst counter, which at this time is at its initial value. A different subset of the data tones thus can be selected for each count value of the burst counter. The different subsets can include some overlapping of data tones, although for efficiency sake the subsets could include unique data tones for different count values. While this example is described with respect to selecting desired data tones based on the burst count, it is to be understood and appreciated that other bases (e.g., random tone selection, fixed functions, etc.) could be employed to select data tones in accordance with an aspect of the present invention. - [0136]From
**520**, the methodology proceeds to**530**in which hard decisions are computed for the selected data tones. The hard decisions, for example, can be calculated as indicated in Eq. 4, although other algorithms also could be utilized in accordance with an aspect of the present invention. - [0137]The hard decisions are employed to compute noise estimates for the selected data tones at
**540**. By way of example, a noise estimate can be computed for each of the selected data tones according to Eq. 5. After the initial noise estimates are computed for the selected data tones, the noise estimation (**540**) can include computing a variance and correlation for the selected data tones. Additionally, averaging can be performed for the computed noise estimates (or covariance thereof). Such averaging can be implemented on the selected data tones or for a different subset of data tones, as desired. The methodology then proceeds to**550**. - [0138]At
**550**, the computed noise estimates (which can be average values) are employed to update corresponding noise estimates. The updates, for example, can be stored in a register (e.g., hardware or software) that includes noise values for all data tones. However, rather than compute noise estimates for all data tones in each data burst, as is conventional, the present invention only computes noise estimates for a desired subset of the data tones in each data burst. That is, noise estimates are computed for the subset of data tones selected at**520**. Because, in accordance with an aspect of the present invention, the noise estimates are updated for a selected portion of the data tones in each data burst, it is to be appreciated that several iterations of the methodology of FIG. 8 may be required to populate the noise estimation register to enable subsequent beamforming computations. The result of decimating the noise estimate computations over a plurality of data bursts is a reduction in the overall computations for each data burst, thereby improving system performance. - [0139]Next, at
**560**, a data tone index is initialized to a starting value (e.g., 0). The data tone index value indicates for which data tone the beamforming computations are to be implemented. The data tone index, for example, can be employed to increment beamforming computations sequentially through each data tone. Alternatively, the data tone index can increment through data tones in a bit-reversed order. - [0140]Beamforming computations are performed (
**570**) for the indexed data tone to provide an indication of the signal relative to noise for the indexed data tone. For example, the beamforming computations can include calculating soft decisions and NSR estimates for the indexed data tone, such as based on the updated noise estimate (e.g., as stored in the noise estimation register), channel estimate of the data burst, and frequency domain signals corresponding to the one or more received signals. By way of further illustration, the computations at**540**can be implemented according to Eqs. 8 and 9. From**570**, the methodology proceeds to**580**. - [0141]At
**580**, a determination is made as to whether the data tone index is at its maximum value, which would indicate that the beamforming computations at**570**have been implemented for all desired data tones in the present data burst. If the determination is negative, indicating that computations are required for additional data tones, the methodology proceeds to**590**. At**590**, the data tone index is incremented to a value to select the next data tone. The indexing at**590**, for example, can be in a sequential or bit-reversed order. From**590**, the methodology returns to**570**in which beamforming computations are performed for the next data tone in the present burst. If the determination at**580**is affirmative, indicating that beamforming computations have been performed for all data tones in the present burst, the methodology proceeds to**600**. - [0142]At
**600**, a determination is made as to whether a next data burst has been received for processing. The methodology can loop at**600**until a data burst is received. When a data burst is received, which can include some preprocessing and digitizing of the received signal, the methodology proceeds from**600**to**610**. At**610**, the burst counter is incremented to the next value. From**610**, the methodology returns to**510**in which**510**-**600**are implemented for the next data burst, such that data tone noise estimates are performed relative to a next selected subset of desired data tones. - [0143]The burst counter can implement a cyclic count, which resets after reaching its maximum count value. In this way, a different subset can be associated with each count value so as to provide a desired decimation of the received signal for each data burst as a function of the count value.
- [0144]By way of further illustration, the burst counter can be programmed and/or configured to count from zero to g−1, where g is a natural number that defines the decimation level. The value of g further can be adjustable, such that a desired level or decimation can be provided. The burst counter thus enables noise estimates to be updated at
**550**for a different selected subset of data tones based on the burst count value. As a result, the noise estimates for all data tones can be updated every g data bursts. Those skilled in the art will understand that the decimation rate, which provides a reduction in computations, should be balanced with overall system performance. - [0145]What has been described above includes exemplary implementations of the present invention. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the present invention, but one of ordinary skill in the art will recognize that many further combinations and permutations of the present invention are possible. Accordingly, the present invention is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims.

Referenced by

Citing Patent | Filing date | Publication date | Applicant | Title |
---|---|---|---|---|

US7042967 | Jun 24, 2004 | May 9, 2006 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US7242730 * | May 1, 2003 | Jul 10, 2007 | Semiconductor Ideas To Market, B.V. | Mirror suppression circuit and receiver using such circuit |

US7418026 * | May 7, 2003 | Aug 26, 2008 | Sony United Kingdom Limited | Receiver for a multi-carrier modulated symbol |

US7428279 | Mar 2, 2004 | Sep 23, 2008 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US7609794 | Aug 14, 2008 | Oct 27, 2009 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US7715634 | Nov 24, 2006 | May 11, 2010 | Sony Deutschland Gmbh | Method for classifying a signal |

US8102924 * | Dec 16, 2004 | Jan 24, 2012 | Stmicroelectronics N.V. | Arrangements and methods for per tone equalization with reduced complexity |

US8532216 * | May 11, 2009 | Sep 10, 2013 | Samsung Electronics Co., Ltd | MIMO detection method and system based on channel correlation |

US8605841 * | Sep 28, 2011 | Dec 10, 2013 | Intel Mobile Communications Technology Dresden GmbH | Method for processing received OFDM data symbols and OFDM baseband receiver |

US8896521 | Apr 24, 2012 | Nov 25, 2014 | Qualcomm Mems Technologies, Inc. | Metal-insulator-metal capacitors on glass substrates |

US9190208 | Oct 24, 2014 | Nov 17, 2015 | Qualcomm Mems Technologies, Inc. | Metal-insulator-metal capacitors on glass substrates |

US9467181 * | May 13, 2015 | Oct 11, 2016 | Freescale Semiconductor, Inc. | Radio frequency receiver capable of determining a noise estimate in case of received power unbalanced antennas and method of operating thereof |

US20030210749 * | May 7, 2003 | Nov 13, 2003 | Hosein Asjadi | Receiver |

US20050025267 * | Jun 24, 2004 | Feb 3, 2005 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US20050031024 * | Mar 2, 2004 | Feb 10, 2005 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US20050135496 * | Dec 16, 2004 | Jun 23, 2005 | Fabio Pisoni | Arrangements and methods for per tone equalization with reduced complexity |

US20050226352 * | May 1, 2003 | Oct 13, 2005 | Kasperkovitz Wolfdietrich G | Mirror suppression circuit and receiver using such circuit |

US20060034398 * | Nov 3, 2005 | Feb 16, 2006 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US20080298523 * | Aug 14, 2008 | Dec 4, 2008 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US20100067620 * | Sep 23, 2009 | Mar 18, 2010 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |

US20110069776 * | May 11, 2009 | Mar 24, 2011 | Zhousong Huang | Mimo detection method and system based on channel correlation |

US20120082193 * | Oct 4, 2011 | Apr 5, 2012 | Qualcomm Incorporated | Beamforming feedback options for mu-mimo |

US20120082274 * | Sep 28, 2011 | Apr 5, 2012 | Intel Mobile Communications Technology Dresden GmbH | Method for processing received ofdm data symbols and ofdm baseband receiver |

EP1499059A1 * | Jul 18, 2003 | Jan 19, 2005 | Motorola, Inc. | Method and device for determining the link quality in an OFDM network |

EP1821417A1 * | Feb 15, 2006 | Aug 22, 2007 | Sony Deutschland GmbH | Method for classifying a signal |

WO2005015813A1 * | Jun 25, 2004 | Feb 17, 2005 | Motorola Inc | Method and device for determining the link quality in an ofdm network |

WO2007113511A1 * | Mar 30, 2007 | Oct 11, 2007 | Matsushita Electric Industrial Co. Ltd. | Signal-to-noise ratio estimation for digital signal decoding |

Classifications

U.S. Classification | 375/316, 375/346 |

International Classification | H04L27/26, H04L1/20 |

Cooperative Classification | H04L27/2647, H04L1/206 |

European Classification | H04L1/20M |

Legal Events

Date | Code | Event | Description |
---|---|---|---|

Oct 24, 2001 | AS | Assignment | Owner name: TEXAS INSTRUMENTS INCORPORATED, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MAGEE, DAVID PATRICK;HOSUR, SRINATH;REEL/FRAME:012349/0789 Effective date: 20011023 |

Sep 26, 2006 | FPAY | Fee payment | Year of fee payment: 4 |

Oct 25, 2010 | FPAY | Fee payment | Year of fee payment: 8 |

Oct 28, 2014 | FPAY | Fee payment | Year of fee payment: 12 |

Rotate