I am recording a 17khz signal at a sample freq of 44.1khz. I want to perform cross-correlation between the received and transmitted signals for calculating TDOA. But when I do xcorr, the results are inconsistent. Is it because my sample freq is too low for my signal freq? If so, how can I overcome this? Will upsampling help?

Edit: My received signal also consists of noise. I am passing my received signal through a bandpass filter with limits 16khz to 18khz. I am using butterworth filter. Is it better to use FIR filter instead?

  • $\begingroup$ You need to be a bit more descriptive. What do you mean by "inconsistent?" Have you compared your TDOA estimate accuracy against any kind of theoretical bound? Note that if you're using cross-correlation on the AWGN channel, the standard deviation in your TDOA estimate is going to be inversely proportional to your signal's bandwidth. It is difficult to localize a narrowband signal accurately in time. $\endgroup$
    – Jason R
    Mar 4, 2014 at 12:20
  • $\begingroup$ @JasonR, by inconsistent i mean that when the source's and receiver's positions is unchanged i am getting different TDOA values each time. Reflections in my environment can be ignored $\endgroup$
    – BaluRaman
    Mar 4, 2014 at 12:49
  • $\begingroup$ What exactly is your setup and which signals exactly are you correlating? A small drawing of your measurement setup would help a lot in understanding the problem. $\endgroup$
    – jan
    Mar 4, 2014 at 14:28

1 Answer 1


A narrow-band filter may remove some of the bandwidth of the signal containing timing information of the signal's envelope modulation. The narrower the filter, the more any tone burst will be smeared out in time. Upsampling after the timing information is destroyed won't help much. Using a wider bandwidth signal, channel, and filter, with perhaps a higher sampling rate to support that bandwidth, will help improve time estimation accuracy.

A chirp, or other large frequency modulation is one common method used to increase a signal's bandwidth to allow better timing estimation.

Also note that any real signal with a frequency near either DC or Fs/2 can face strong interference from it's negative frequency conjugate image in the frequency domain, as well as any of the images sidebands, which can also greatly distort the signal envelope and the envelopes timing information in the received sampled data. A higher sampling rate can also help solve this problem for high frequency tones. (And a longer sample window length for near DC signals.)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.