1. A receiver comprising: a channel estimator configured to perform a channel estimation on a sample data stream and configured to generate Rake receiver finger weights based on the channel estimation; a frequency error estimator configured to generate an estimated frequency error signal based on at least one of the finger weights, wherein the frequency error estimator comprises: a tap extraction unit configured to extract a plurality of Rake receiver finger weights from the Rake receiver finger weights generated by the channel estimator, and average the extracted finger weights to generate an average finger weight of the extracted finger weights; a delay unit, coupled to the tap extraction unit, configured to delay the average finger weight; a conjugate generator, coupled to the tap extraction unit and the delay unit, configured to generate a conjugate of the average finger weight; a first multiplier, coupled to the delay unit and the conjugate generator, configured multiply the conjugate of the average weight with the delayed average finger weight to generate a phase signal which represents the phase difference between the conjugate average finger weight and the delayed average finger weight; an arctangent unit, coupled to the output of the first multiplier, configured to measure the phase difference between the conjungate average finger weight and the delayed average finger weight; a first filter configured to average the measured phase difference, whereby the averaged phase difference is output from the frequency error estimator as the estimated frequency error signal; a comparator circuit, coupled to the multiplier and the first filter, configured to selectively send a hold signal to the first filter based on a value of a threshold signal, wherein the hold signal causes the first filter to pause, a controller, coupled between the frequency error estimator and the oscillator, the controller configured to process the estimated frequency error signal received from the frequency error estimator with a proportional-integral-derivative, algorithm and inputting the processed estimated frequency error signal to the oscillator; an oscillator configured to generate a rotating phasor signal based on the processed estimated frequency error signal; and a second multiplier configured to multiply the rotating phasor signal with the sample data stream to correct the frequency of the sample data stream for further processing by the channel estimator.