From: Nitram on
Hi,
I have an issue with Zadoff-Chu codes I am trying to understand. I
generate a ZC sequence, remove the center carrier (as per the LTE spec) and
try to correlate it in the time domain relative to a frequency shifted
version of itself. Finally, I plot the correlation. Here's the
corresponding Matlab code.

u = 25;
for n=1:63
zc(n) = exp(-1i*pi*u*(n-1)*n/63);
end
zc(32) = 0;
freqShift = 1;
zcShifted = circshift(zc, freqShift);
timeCorr = xcorr(fft(zc, 2048), fft(zc, 2048));
plot(abs(timeCorr));

My issue is that I still detect a correlation peak, albeit at different
time offset (Even worse, depending on the frequency offset, I can detect a
peak at exactly the same time as I would for a 0 frequency shift). Is this
behavior expected, or am I doing something wrong?

In the unlikely case this is expected, in a scenario where both frequency
shifts and timing offset can happen, how can I discriminate between the two
when detecting my ZC sequence?

Thank you so much.


From: Vladimir Vassilevsky on


Nitram wrote:
> Hi,
> I have an issue with Zadoff-Chu codes I am trying to understand. I
> generate a ZC sequence, remove the center carrier (as per the LTE spec) and
> try to correlate it in the time domain relative to a frequency shifted
> version of itself. Finally, I plot the correlation.
> My issue is that I still detect a correlation peak, albeit at different
> time offset (Even worse, depending on the frequency offset, I can detect a
> peak at exactly the same time as I would for a 0 frequency shift). Is this
> behavior expected, or am I doing something wrong?

This is what expected. Time/frequency ambiguity function is classic problem.

> In the unlikely case this is expected, in a scenario where both frequency
> shifts and timing offset can happen, how can I discriminate between the two
> when detecting my ZC sequence?

Either acquire frequency first or use incoherent detectors to lock the
timing.


Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
From: Nitram on
Thank you for the prompt reply. The trouble is that I was hoping to use
this method for coherent detection: first scan in time for a peak and if no
peak is found, shift the frequency and try the time scan again. Here, not
only do I get a peak with the wrong frequency offset but also at the wrong
time. Do you have different time-domain incoherent detectors you can
recommend (I already played with a frequency-domain incoherent detector
that does seem to work).

Thanks
>
>Nitram wrote:
>> Hi,
>> I have an issue with Zadoff-Chu codes I am trying to understand. I
>> generate a ZC sequence, remove the center carrier (as per the LTE spec)
and
>> try to correlate it in the time domain relative to a frequency shifted
>> version of itself. Finally, I plot the correlation.
>> My issue is that I still detect a correlation peak, albeit at
different
>> time offset (Even worse, depending on the frequency offset, I can
detect a
>> peak at exactly the same time as I would for a 0 frequency shift). Is
this
>> behavior expected, or am I doing something wrong?
>
>This is what expected. Time/frequency ambiguity function is classic
problem.
>
>> In the unlikely case this is expected, in a scenario where both
frequency
>> shifts and timing offset can happen, how can I discriminate between the
two
>> when detecting my ZC sequence?
>
>Either acquire frequency first or use incoherent detectors to lock the
>timing.
>
>
>Vladimir Vassilevsky
>DSP and Mixed Signal Design Consultant
>http://www.abvolt.com
>