From: John on
On Feb 28, 12:44 am, "Laron" <jason.pi...(a)inbox.com> wrote:
> >On Feb 27, 7:00=A0pm, "Laron" <jason.pi...(a)inbox.com> wrote:
> >> >On Feb 26, 3:50=3DA0am, "Laron" <jason.pi...(a)inbox.com> wrote:
> >> >> Hi all,
>
> >> >> =3DA0 =3DA0 Did acquisition and tracking with pilot channel sharing
> th=
> >e
> >> same
> >> >> process in CDMA2000? the acquisition using xcorr find the coarse
> >> delay,bu=3D
> >> >t
> >> >> how does tracking action?
> >> >> =3DA0 =3DA0 Plan to using 8x oversampling,then fed the stream to a
> dig=
> >ital
> >> ma=3D
> >> >tched
> >> >> filter to find best one from the eight. But really have no idea with
> >> the
> >> >> tracking process, do i need to using xcorr again when tracking? or
> pas=
> >s
> >> t=3D
> >> >he
> >> >> eight stream to the digital matched filter to find the best one?
> >> >> when using 256bit DMF, case chip by chip input, tracking will cause
> th=
> >e
> >> >> stream chosen vary frequency; case 256 size buffer,then block by
> block
> >> >> input, tracking will introduce a certain mount of delay. How should
> i
> >> do.
>
> >> >> Wish your idea and thanks a lot.
>
> >> >> B. R.
> >> >> Laron =3DA0 =3DA0
>
> >> >The cross-correlation will need to run continuously, so that you get a
> >> >new peak for each repetition of of the shortcode.
>
> >> >John
>
> >> The 32768 xcorr will take a certain long time, should we all use the
> 3276=
> >8
> >> size xcorr during both acquisition and tracking, this will introduce
> >> certain amount of delay.
> >> =A0 Another question is when everytime xcorr, we get a new delay, then
> sh=
> >all
> >> we shift the local generated pn sequence or shift the input data to
> align
> >> with local sequence when despreading?
>
> >> Thanks.
> >> B. R.
> >> Laron
>
> >Find the XC peak location and then thin off 32678 input samples (those
> >that went into the XC) starting from the one at the peak location and
> >striding by whatever your samples per chip is. Now you have a complex
> >32k vector that is aligned with the shortcode.
>
> >You can get complex data symbols as sum(input x conj(sc * w64)) where
> >sc is the shortcode, w64 is the walsh code, and input is your 32k
> >vector. The sum is computed over blocks of N inputs depending on the
> >symbol repetition. N might be 64 (no repetition, one symbol per walsh
> >sequence) or 256 (one symbol per four walsh sequences). So you get a
> >new symbol for every N symbols in the 32k inputs.
>
> >Now comes the part you asked about earlier. You need to multiply these
> >symbols by conj(pilot) to remove the phase & frequency offset. Pilot
> >is just w0, so you can just compute a pilot symbol for every data
> >symbol.
>
> >HTH,
>
> >John
>
> Hi John
> That's very very helpful and a large step ahead. still 2 points confused me
> listed below.
> 1.Cause the pilot symbols(all zeros) only transmitted on I-channel and i q
> use different sequence, so how could we make out i channel's imagine part
> from the complex sampled data?  
> 2.Cause the sync channel's frame head align with 1 after 15 consecutive
> zeros of short code, so we don't need to do symbol timing and just align
> walsh code with the short pn sequence, is this right?
>
> Thanks
> B. R.
> Laron

1. The pilot symbol is complex
2. Yes, the symbol timing is taken care of by the xcorr

From: Frank_os on
>On Feb 28, 12:44=A0am, "Laron" <jason.pi...(a)inbox.com> wrote:
>> >On Feb 27, 7:00=3DA0pm, "Laron" <jason.pi...(a)inbox.com> wrote:
>> >> >On Feb 26, 3:50=3D3DA0am, "Laron" <jason.pi...(a)inbox.com> wrote:
>> >> >> Hi all,
>>
>> >> >> =3D3DA0 =3D3DA0 Did acquisition and tracking with pilot channel
sha=
>ring
>> th=3D
>> >e
>> >> same
>> >> >> process in CDMA2000? the acquisition using xcorr find the coarse
>> >> delay,bu=3D3D
>> >> >t
>> >> >> how does tracking action?
>> >> >> =3D3DA0 =3D3DA0 Plan to using 8x oversampling,then fed the stream
t=
>o a
>> dig=3D
>> >ital
>> >> ma=3D3D
>> >> >tched
>> >> >> filter to find best one from the eight. But really have no idea
wit=
>h
>> >> the
>> >> >> tracking process, do i need to using xcorr again when tracking?
or
>> pas=3D
>> >s
>> >> t=3D3D
>> >> >he
>> >> >> eight stream to the digital matched filter to find the best one?
>> >> >> when using 256bit DMF, case chip by chip input, tracking will
cause
>> th=3D
>> >e
>> >> >> stream chosen vary frequency; case 256 size buffer,then block by
>> block
>> >> >> input, tracking will introduce a certain mount of delay. How
should
>> i
>> >> do.
>>
>> >> >> Wish your idea and thanks a lot.
>>
>> >> >> B. R.
>> >> >> Laron =3D3DA0 =3D3DA0
>>
>> >> >The cross-correlation will need to run continuously, so that you get
=
>a
>> >> >new peak for each repetition of of the shortcode.
>>
>> >> >John
>>
>> >> The 32768 xcorr will take a certain long time, should we all use the
>> 3276=3D
>> >8
>> >> size xcorr during both acquisition and tracking, this will introduce
>> >> certain amount of delay.
>> >> =3DA0 Another question is when everytime xcorr, we get a new delay,
th=
>en
>> sh=3D
>> >all
>> >> we shift the local generated pn sequence or shift the input data to
>> align
>> >> with local sequence when despreading?
>>
>> >> Thanks.
>> >> B. R.
>> >> Laron
>>
>> >Find the XC peak location and then thin off 32678 input samples (those
>> >that went into the XC) starting from the one at the peak location and
>> >striding by whatever your samples per chip is. Now you have a complex
>> >32k vector that is aligned with the shortcode.
>>
>> >You can get complex data symbols as sum(input x conj(sc * w64)) where
>> >sc is the shortcode, w64 is the walsh code, and input is your 32k
>> >vector. The sum is computed over blocks of N inputs depending on the
>> >symbol repetition. N might be 64 (no repetition, one symbol per walsh
>> >sequence) or 256 (one symbol per four walsh sequences). So you get a
>> >new symbol for every N symbols in the 32k inputs.
>>
>> >Now comes the part you asked about earlier. You need to multiply these
>> >symbols by conj(pilot) to remove the phase & frequency offset. Pilot
>> >is just w0, so you can just compute a pilot symbol for every data
>> >symbol.
>>
>> >HTH,
>>
>> >John
>>
>> Hi John
>> That's very very helpful and a large step ahead. still 2 points confused
=
>me
>> listed below.
>> 1.Cause the pilot symbols(all zeros) only transmitted on I-channel and i
=
>q
>> use different sequence, so how could we make out i channel's imagine
part
>> from the complex sampled data? =A0
>> 2.Cause the sync channel's frame head align with 1 after 15 consecutive
>> zeros of short code, so we don't need to do symbol timing and just
align
>> walsh code with the short pn sequence, is this right?
>>
>> Thanks
>> B. R.
>> Laron
>
>1. The pilot symbol is complex
>2. Yes, the symbol timing is taken care of by the xcorr
>

As far as I understood, after the pilot acquisition, a digital-delay loop
(DLL) should be used to track the pilot by correcting the on-time pilot
with the 1/2 chip early and 1/2 chip late pilot.
From: John on
On Mar 2, 1:11 pm, "Frank_os" <spw...(a)gmail.com> wrote:
> >On Feb 28, 12:44=A0am, "Laron" <jason.pi...(a)inbox.com> wrote:
> >> >On Feb 27, 7:00=3DA0pm, "Laron" <jason.pi...(a)inbox.com> wrote:
> >> >> >On Feb 26, 3:50=3D3DA0am, "Laron" <jason.pi...(a)inbox.com> wrote:
> >> >> >> Hi all,
>
> >> >> >> =3D3DA0 =3D3DA0 Did acquisition and tracking with pilot channel
> sha=
> >ring
> >> th=3D
> >> >e
> >> >> same
> >> >> >> process in CDMA2000? the acquisition using xcorr find the coarse
> >> >> delay,bu=3D3D
> >> >> >t
> >> >> >> how does tracking action?
> >> >> >> =3D3DA0 =3D3DA0 Plan to using 8x oversampling,then fed the stream
> t=
> >o a
> >> dig=3D
> >> >ital
> >> >> ma=3D3D
> >> >> >tched
> >> >> >> filter to find best one from the eight. But really have no idea
> wit=
> >h
> >> >> the
> >> >> >> tracking process, do i need to using xcorr again when tracking?
> or
> >> pas=3D
> >> >s
> >> >> t=3D3D
> >> >> >he
> >> >> >> eight stream to the digital matched filter to find the best one?
> >> >> >> when using 256bit DMF, case chip by chip input, tracking will
> cause
> >> th=3D
> >> >e
> >> >> >> stream chosen vary frequency; case 256 size buffer,then block by
> >> block
> >> >> >> input, tracking will introduce a certain mount of delay. How
> should
> >> i
> >> >> do.
>
> >> >> >> Wish your idea and thanks a lot.
>
> >> >> >> B. R.
> >> >> >> Laron =3D3DA0 =3D3DA0
>
> >> >> >The cross-correlation will need to run continuously, so that you get
> =
> >a
> >> >> >new peak for each repetition of of the shortcode.
>
> >> >> >John
>
> >> >> The 32768 xcorr will take a certain long time, should we all use the
> >> 3276=3D
> >> >8
> >> >> size xcorr during both acquisition and tracking, this will introduce
> >> >> certain amount of delay.
> >> >> =3DA0 Another question is when everytime xcorr, we get a new delay,
> th=
> >en
> >> sh=3D
> >> >all
> >> >> we shift the local generated pn sequence or shift the input data to
> >> align
> >> >> with local sequence when despreading?
>
> >> >> Thanks.
> >> >> B. R.
> >> >> Laron
>
> >> >Find the XC peak location and then thin off 32678 input samples (those
> >> >that went into the XC) starting from the one at the peak location and
> >> >striding by whatever your samples per chip is. Now you have a complex
> >> >32k vector that is aligned with the shortcode.
>
> >> >You can get complex data symbols as sum(input x conj(sc * w64)) where
> >> >sc is the shortcode, w64 is the walsh code, and input is your 32k
> >> >vector. The sum is computed over blocks of N inputs depending on the
> >> >symbol repetition. N might be 64 (no repetition, one symbol per walsh
> >> >sequence) or 256 (one symbol per four walsh sequences). So you get a
> >> >new symbol for every N symbols in the 32k inputs.
>
> >> >Now comes the part you asked about earlier. You need to multiply these
> >> >symbols by conj(pilot) to remove the phase & frequency offset. Pilot
> >> >is just w0, so you can just compute a pilot symbol for every data
> >> >symbol.
>
> >> >HTH,
>
> >> >John
>
> >> Hi John
> >> That's very very helpful and a large step ahead. still 2 points confused
> =
> >me
> >> listed below.
> >> 1.Cause the pilot symbols(all zeros) only transmitted on I-channel and i
> =
> >q
> >> use different sequence, so how could we make out i channel's imagine
> part
> >> from the complex sampled data? =A0
> >> 2.Cause the sync channel's frame head align with 1 after 15 consecutive
> >> zeros of short code, so we don't need to do symbol timing and just
> align
> >> walsh code with the short pn sequence, is this right?
>
> >> Thanks
> >> B. R.
> >> Laron
>
> >1. The pilot symbol is complex
> >2. Yes, the symbol timing is taken care of by the xcorr
>
> As far as I understood, after the  pilot acquisition, a digital-delay loop
> (DLL) should be used to track the pilot by correcting the on-time pilot
> with the 1/2 chip early and 1/2 chip late pilot.

By doing the XC at multiple samples/chip (I believe the OP mentioned
8) you effectively have the early and late signals in the sidelobes of
the XC peak.

John
From: Laron on
>On Mar 2, 1:11=A0pm, "Frank_os" <spw...(a)gmail.com> wrote:
>> >On Feb 28, 12:44=3DA0am, "Laron" <jason.pi...(a)inbox.com> wrote:
>> >> >On Feb 27, 7:00=3D3DA0pm, "Laron" <jason.pi...(a)inbox.com> wrote:
>> >> >> >On Feb 26, 3:50=3D3D3DA0am, "Laron" <jason.pi...(a)inbox.com>
wrote:
>> >> >> >> Hi all,
>>
>> >> >> >> =3D3D3DA0 =3D3D3DA0 Did acquisition and tracking with pilot
chan=
>nel
>> sha=3D
>> >ring
>> >> th=3D3D
>> >> >e
>> >> >> same
>> >> >> >> process in CDMA2000? the acquisition using xcorr find the
coarse
>> >> >> delay,bu=3D3D3D
>> >> >> >t
>> >> >> >> how does tracking action?
>> >> >> >> =3D3D3DA0 =3D3D3DA0 Plan to using 8x oversampling,then fed the
s=
>tream
>> t=3D
>> >o a
>> >> dig=3D3D
>> >> >ital
>> >> >> ma=3D3D3D
>> >> >> >tched
>> >> >> >> filter to find best one from the eight. But really have no
idea
>> wit=3D
>> >h
>> >> >> the
>> >> >> >> tracking process, do i need to using xcorr again when
tracking?
>> or
>> >> pas=3D3D
>> >> >s
>> >> >> t=3D3D3D
>> >> >> >he
>> >> >> >> eight stream to the digital matched filter to find the best
one?
>> >> >> >> when using 256bit DMF, case chip by chip input, tracking will
>> cause
>> >> th=3D3D
>> >> >e
>> >> >> >> stream chosen vary frequency; case 256 size buffer,then block
by
>> >> block
>> >> >> >> input, tracking will introduce a certain mount of delay. How
>> should
>> >> i
>> >> >> do.
>>
>> >> >> >> Wish your idea and thanks a lot.
>>
>> >> >> >> B. R.
>> >> >> >> Laron =3D3D3DA0 =3D3D3DA0
>>
>> >> >> >The cross-correlation will need to run continuously, so that you
g=
>et
>> =3D
>> >a
>> >> >> >new peak for each repetition of of the shortcode.
>>
>> >> >> >John
>>
>> >> >> The 32768 xcorr will take a certain long time, should we all use
th=
>e
>> >> 3276=3D3D
>> >> >8
>> >> >> size xcorr during both acquisition and tracking, this will
introduc=
>e
>> >> >> certain amount of delay.
>> >> >> =3D3DA0 Another question is when everytime xcorr, we get a new
dela=
>y,
>> th=3D
>> >en
>> >> sh=3D3D
>> >> >all
>> >> >> we shift the local generated pn sequence or shift the input data
to
>> >> align
>> >> >> with local sequence when despreading?
>>
>> >> >> Thanks.
>> >> >> B. R.
>> >> >> Laron
>>
>> >> >Find the XC peak location and then thin off 32678 input samples
(thos=
>e
>> >> >that went into the XC) starting from the one at the peak location
and
>> >> >striding by whatever your samples per chip is. Now you have a
complex
>> >> >32k vector that is aligned with the shortcode.
>>
>> >> >You can get complex data symbols as sum(input x conj(sc * w64))
where
>> >> >sc is the shortcode, w64 is the walsh code, and input is your 32k
>> >> >vector. The sum is computed over blocks of N inputs depending on
the
>> >> >symbol repetition. N might be 64 (no repetition, one symbol per
walsh
>> >> >sequence) or 256 (one symbol per four walsh sequences). So you get
a
>> >> >new symbol for every N symbols in the 32k inputs.
>>
>> >> >Now comes the part you asked about earlier. You need to multiply
thes=
>e
>> >> >symbols by conj(pilot) to remove the phase & frequency offset.
Pilot
>> >> >is just w0, so you can just compute a pilot symbol for every data
>> >> >symbol.
>>
>> >> >HTH,
>>
>> >> >John
>>
>> >> Hi John
>> >> That's very very helpful and a large step ahead. still 2 points
confus=
>ed
>> =3D
>> >me
>> >> listed below.
>> >> 1.Cause the pilot symbols(all zeros) only transmitted on I-channel
and=
> i
>> =3D
>> >q
>> >> use different sequence, so how could we make out i channel's imagine
>> part
>> >> from the complex sampled data? =3DA0
>> >> 2.Cause the sync channel's frame head align with 1 after 15
consecutiv=
>e
>> >> zeros of short code, so we don't need to do symbol timing and just
>> align
>> >> walsh code with the short pn sequence, is this right?
>>
>> >> Thanks
>> >> B. R.
>> >> Laron
>>
>> >1. The pilot symbol is complex
>> >2. Yes, the symbol timing is taken care of by the xcorr
>>
>> As far as I understood, after the =A0pilot acquisition, a digital-delay
l=
>oop
>> (DLL) should be used to track the pilot by correcting the on-time pilot
>> with the 1/2 chip early and 1/2 chip late pilot.
>
>By doing the XC at multiple samples/chip (I believe the OP mentioned
>8) you effectively have the early and late signals in the sidelobes of
>the XC peak.
>
>John

The resolution should be 1/8 chip time i think.

And John, can you do me a favor and leave your email-address to me? just in
case when be trapped.
my email address is warmfreetm(a)gmail.com, leave me message if you wish. :)


Thanks
B.R.
Laron
From: Laron on
>>On Mar 2, 1:11=A0pm, "Frank_os" <spw...(a)gmail.com> wrote:
>>> >On Feb 28, 12:44=3DA0am, "Laron" <jason.pi...(a)inbox.com> wrote:
>>> >> >On Feb 27, 7:00=3D3DA0pm, "Laron" <jason.pi...(a)inbox.com> wrote:
>>> >> >> >On Feb 26, 3:50=3D3D3DA0am, "Laron" <jason.pi...(a)inbox.com>
>wrote:
>>> >> >> >> Hi all,
>>>
>>> >> >> >> =3D3D3DA0 =3D3D3DA0 Did acquisition and tracking with pilot
>chan=
>>nel
>>> sha=3D
>>> >ring
>>> >> th=3D3D
>>> >> >e
>>> >> >> same
>>> >> >> >> process in CDMA2000? the acquisition using xcorr find the
>coarse
>>> >> >> delay,bu=3D3D3D
>>> >> >> >t
>>> >> >> >> how does tracking action?
>>> >> >> >> =3D3D3DA0 =3D3D3DA0 Plan to using 8x oversampling,then fed
the
>s=
>>tream
>>> t=3D
>>> >o a
>>> >> dig=3D3D
>>> >> >ital
>>> >> >> ma=3D3D3D
>>> >> >> >tched
>>> >> >> >> filter to find best one from the eight. But really have no
>idea
>>> wit=3D
>>> >h
>>> >> >> the
>>> >> >> >> tracking process, do i need to using xcorr again when
>tracking?
>>> or
>>> >> pas=3D3D
>>> >> >s
>>> >> >> t=3D3D3D
>>> >> >> >he
>>> >> >> >> eight stream to the digital matched filter to find the best
>one?
>>> >> >> >> when using 256bit DMF, case chip by chip input, tracking will
>>> cause
>>> >> th=3D3D
>>> >> >e
>>> >> >> >> stream chosen vary frequency; case 256 size buffer,then block
>by
>>> >> block
>>> >> >> >> input, tracking will introduce a certain mount of delay. How
>>> should
>>> >> i
>>> >> >> do.
>>>
>>> >> >> >> Wish your idea and thanks a lot.
>>>
>>> >> >> >> B. R.
>>> >> >> >> Laron =3D3D3DA0 =3D3D3DA0
>>>
>>> >> >> >The cross-correlation will need to run continuously, so that
you
>g=
>>et
>>> =3D
>>> >a
>>> >> >> >new peak for each repetition of of the shortcode.
>>>
>>> >> >> >John
>>>
>>> >> >> The 32768 xcorr will take a certain long time, should we all use
>th=
>>e
>>> >> 3276=3D3D
>>> >> >8
>>> >> >> size xcorr during both acquisition and tracking, this will
>introduc=
>>e
>>> >> >> certain amount of delay.
>>> >> >> =3D3DA0 Another question is when everytime xcorr, we get a new
>dela=
>>y,
>>> th=3D
>>> >en
>>> >> sh=3D3D
>>> >> >all
>>> >> >> we shift the local generated pn sequence or shift the input data
>to
>>> >> align
>>> >> >> with local sequence when despreading?
>>>
>>> >> >> Thanks.
>>> >> >> B. R.
>>> >> >> Laron
>>>
>>> >> >Find the XC peak location and then thin off 32678 input samples
>(thos=
>>e
>>> >> >that went into the XC) starting from the one at the peak location
>and
>>> >> >striding by whatever your samples per chip is. Now you have a
>complex
>>> >> >32k vector that is aligned with the shortcode.
>>>
>>> >> >You can get complex data symbols as sum(input x conj(sc * w64))
>where
>>> >> >sc is the shortcode, w64 is the walsh code, and input is your 32k
>>> >> >vector. The sum is computed over blocks of N inputs depending on
>the
>>> >> >symbol repetition. N might be 64 (no repetition, one symbol per
>walsh
>>> >> >sequence) or 256 (one symbol per four walsh sequences). So you get
>a
>>> >> >new symbol for every N symbols in the 32k inputs.
>>>
>>> >> >Now comes the part you asked about earlier. You need to multiply
>thes=
>>e
>>> >> >symbols by conj(pilot) to remove the phase & frequency offset.
>Pilot
>>> >> >is just w0, so you can just compute a pilot symbol for every data
>>> >> >symbol.
>>>
>>> >> >HTH,
>>>
>>> >> >John
>>>
>>> >> Hi John
>>> >> That's very very helpful and a large step ahead. still 2 points
>confus=
>>ed
>>> =3D
>>> >me
>>> >> listed below.
>>> >> 1.Cause the pilot symbols(all zeros) only transmitted on I-channel
>and=
>> i
>>> =3D
>>> >q
>>> >> use different sequence, so how could we make out i channel's
imagine
>>> part
>>> >> from the complex sampled data? =3DA0
>>> >> 2.Cause the sync channel's frame head align with 1 after 15
>consecutiv=
>>e
>>> >> zeros of short code, so we don't need to do symbol timing and just
>>> align
>>> >> walsh code with the short pn sequence, is this right?
>>>
>>> >> Thanks
>>> >> B. R.
>>> >> Laron
>>>
>>> >1. The pilot symbol is complex
>>> >2. Yes, the symbol timing is taken care of by the xcorr
>>>
>>> As far as I understood, after the =A0pilot acquisition, a
digital-delay
>l=
>>oop
>>> (DLL) should be used to track the pilot by correcting the on-time
pilot
>>> with the 1/2 chip early and 1/2 chip late pilot.
>>
>>By doing the XC at multiple samples/chip (I believe the OP mentioned
>>8) you effectively have the early and late signals in the sidelobes of
>>the XC peak.
>>
>>John
>
>The resolution should be 1/8 chip time i think.
>
>And John, can you do me a favor and leave your email-address to me? just
in
>case when be trapped.
>my email address is warmfreetm(a)gmail.com, leave me message if you wish.
:)
>
>
>Thanks
>B.R.
>Laron

Another question is how to choose rake receiver's finger delay. One or tow
fixed chips or variable, is there any principle?
I've seen in some implementation that the fingers' delay could be quite
different like 0(finger0) 14(f1) 30(f2) etc. so could we dynamic adjust
these delay by some algorithm?

Thanks.
B.R.
Laron.