GMSK/MSK constellation derotation and Channel impulse responseestimation
I am trying to implement a GMSK receiver I have a block diagram of the
receiver which is like this
Received IQ Samples - > constellation derotation -> CIR estimation
from training sequence -> MLSE (viterbi) equalizer
The constellation derotation is supposed to collapse the four end
points of GMSK constellations (+1, +j,-1,-j) to a two point (+1,-1)
constellation.
My question is how exactly are the constellation derotation and CIR
estimation are supposed to performed? From what I have figured it out
so far, the constellation derotation is supposed to by a
multiplicaiton by exp{-j*n*pi/2} for n=1,2,3,4 i.e. every four
received IQ samples are multiplied by {-j,-1,+j,1}. The goal is to
limit the binary symbols to 2 (+1,-1) so that the MLSE equlaizer has
2^L states. However, this multiplication by exp{-j*n*pi/2} seem to
totally change the pulse sequence. For example, if we skip the
filtering for a moment (MSK modulation) and consider a pulse train
+1,+1,-1,-1,+1,+1,+1,-1,-1,... and starting phase 0, then the
modulated IQ samples are +j,-1,+j,+1,+j,-1,+j,+1,...multiplication by -
j,-1,+j,+1,... results in the derotated sequence of
+1,+1,-1,+1,+1,-1,+1,+1... Which, while limited to symbols(+1,-1), is
a different pulse train sequence than the input. Would it not mess up
the CIR calculation based on a known training sequence? Would it not
result in incorrect sequence estimation by the viterbi equalizer?
Re: GMSK/MSK constellation derotation and Channel impulse response estimation
Hi
>My question is how exactly are the constellation derotation and CIR
>estimation are supposed to performed?
I dont knw abt constellation derotation but to estimate CIR, u need t
corss correlate the o/p constellation derotation(as per ur diagram) wit
the training sequence.
But can u tell more abt the structure of packet? i.e. what is the trainin
sequence? is it BPSK or QPSK?
Generally, after the I-Q down conversion, the o/p is xcorrelated wit
known training sequence.
Re: GMSK/MSK constellation derotation and Channel impulse responseestimation
On Aug 7, 3:09*pm, "cpshah99" <cpsha...@rediffmail.com> wrote:
> Hi
>
> >My question is how exactly are the constellation derotation and CIR
> >estimation are supposed to performed?
>
> I dont knw abt constellation derotation but to estimate CIR, u need to
> corss correlate the o/p constellation derotation(as per ur diagram) with
> the training sequence.
>
> But can u tell more abt the structure of packet? i.e. what is the training
> sequence? is it BPSK or QPSK?
>
> Generally, after the I-Q down conversion, the o/p is xcorrelated with
> known training sequence.
>
> Hope this helps.
>
> Chintan
The modulation is GMSK. The training sequence is alternating sequence
of 00s and 11s (00110011...) or (-1-1+1+1-1-1+1+1...) . The question
is regardlessof whther you use cross correlation, deconvolution, least
squares, LMS or any other method for CIR estimation what would you use
as the known training sequence? (-1-1+1+1...) or the ideal derotated
version of it(without gaussian filtering)?
Re: GMSK/MSK constellation derotation and Channel impulse responseestimation
On Thu, 07 Aug 2008 11:31:48 -0700, ane wrote:
> I am trying to implement a GMSK receiver I have a block diagram of the
> receiver which is like this
>
> Received IQ Samples - > constellation derotation -> CIR estimation from
> training sequence -> MLSE (viterbi) equalizer
>
> The constellation derotation is supposed to collapse the four end points
> of GMSK constellations (+1, +j,-1,-j) to a two point (+1,-1)
> constellation.
>
>
> My question is how exactly are the constellation derotation and CIR
> estimation are supposed to performed? From what I have figured it out
> so far, the constellation derotation is supposed to by a multiplicaiton
> by exp{-j*n*pi/2} for n=1,2,3,4 i.e. every four received IQ samples
> are multiplied by {-j,-1,+j,1}. The goal is to limit the binary symbols
> to 2 (+1,-1) so that the MLSE equlaizer has 2^L states. However, this
> multiplication by exp{-j*n*pi/2} seem to totally change the pulse
> sequence. For example, if we skip the filtering for a moment (MSK
> modulation) and consider a pulse train +1,+1,-1,-1,+1,+1,+1,-1,-1,...
> and starting phase 0, then the modulated IQ samples are
> +j,-1,+j,+1,+j,-1,+j,+1,...multiplication by - j,-1,+j,+1,... results in
> the derotated sequence of +1,+1,-1,+1,+1,-1,+1,+1... Which, while
> limited to symbols(+1,-1), is a different pulse train sequence than the
> input. Would it not mess up the CIR calculation based on a known
> training sequence? Would it not result in incorrect sequence estimation
> by the viterbi equalizer?
Could they be using differential GMSK, where a transmitted '1' means a
forward rotation of the phase, and a transmitted '0' means a reverse
rotation of the phase?
Seems like after derotation you'd still have a differential BPSK-ish
signal to decode...
Need to learn how to apply control theory in your embedded system?
"Applied Control Theory for Embedded Systems" by Tim Wescott
Elsevier/Newnes, http://www.wescottdesign.com/actfes/actfes.html
Re: GMSK/MSK constellation derotation and Channel impulse response estimation
>On Thu, 07 Aug 2008 11:31:48 -0700, ane wrote:
>
>> I am trying to implement a GMSK receiver I have a block diagram of the
>> receiver which is like this
>>
>> Received IQ Samples - > constellation derotation -> CIR estimatio
from
>> training sequence -> MLSE (viterbi) equalizer
>>
>> The constellation derotation is supposed to collapse the four en
points
>> of GMSK constellations (+1, +j,-1,-j) to a two point (+1,-1)
>> constellation.
>>
>>
>> My question is how exactly are the constellation derotation and CIR
>> estimation are supposed to performed? From what I have figured it out
>> so far, the constellation derotation is supposed to by
multiplicaiton
>> by exp{-j*n*pi/2} for n=1,2,3,4 i.e. every four received IQ samples
>> are multiplied by {-j,-1,+j,1}. The goal is to limit the binar
symbols
>> to 2 (+1,-1) so that the MLSE equlaizer has 2^L states. However, this
>> multiplication by exp{-j*n*pi/2} seem to totally change the pulse
>> sequence. For example, if we skip the filtering for a moment (MSK
>> modulation) and consider a pulse train +1,+1,-1,-1,+1,+1,+1,-1,-1,...
>> and starting phase 0, then the modulated IQ samples are
>> +j,-1,+j,+1,+j,-1,+j,+1,...multiplication by - j,-1,+j,+1,... result
in
>> the derotated sequence of +1,+1,-1,+1,+1,-1,+1,+1... Which, while
>> limited to symbols(+1,-1), is a different pulse train sequence tha
the
>> input. Would it not mess up the CIR calculation based on a known
>> training sequence? Would it not result in incorrect sequenc
estimation
>> by the viterbi equalizer?
>
>Could they be using differential GMSK, where a transmitted '1' means a
>forward rotation of the phase, and a transmitted '0' means a reverse
>rotation of the phase?
>
>Seems like after derotation you'd still have a differential BPSK-ish
>signal to decode...
>
>--
>Tim Wescott
>Control systems and communications consulting
>http://www.wescottdesign.com
>
>Need to learn how to apply control theory in your embedded system?
>"Applied Control Theory for Embedded Systems" by Tim Wescott
>Elsevier/Newnes, http://www.wescottdesign.com/actfes/actfes.html
>
Hi Tim,
Yes, you are right. GMSK can be interpreted a differential BPSK after
-PI/2 derotation being employed.
But here I want also to point out a mistake in ane's example. The righ
one is below.