>> The phase error detector has to take into account the phase change
>> over a bit period. For h =3D 0.5, the phase changes 90 degrees over a
>> bit period. If you establish timing recovery first, then look at the
>> phase change from the start of a bit to the middle of a bit. It should
>> be +45 for positive frequency shift or -45 for negative frequency
>> shift. By adding or subtracting 45, you can get a phase error for your
>> PLL.
>>
>> John
>>
>
>
> I see, now it is clear to me, thank you so much.
>
> And one more question, is there a 'universal' lower bound of BER for FSK
> and MSK?
>
> When I develop my PSK demodulator, I have a mathematical equations to
> compute the theoretical BER curve like:
> http://en.wikipedia.org/wiki/File:PSK_BER_curves.svg, so I compared my
> measurements with this curve to understand the performance my demodulator.
>
>
> Could you please point me some articles about CPFSK and MSK BER
> derivative?
Well, the most universal lower bound is 0.5 -- but I don't think that's
what you meant.
If you make some simplifying assumptions you can find an optimal
detector, and it's BER vs. noise performance. I think this is what you
meant.
A good book on communications systems will get you those curves. For
some modulation schemes and channels* the reality will closely reflect
the theory; for other modulation schemes and channels** the math is
simply intractable, and at best you can find bounds that you know you'll
never approach.
* E.g. MSK in a channel with Gaussian noise
** E.g. MSK in a channel with impulsive noise, or FM radio (with output
SNR substituted for BER) in any noisy channel.
--
Tim Wescott
Control system and signal processing consulting
www.wescottdesign.com
Reply by gobruins●March 23, 20102010-03-23
>The phase error detector has to take into account the phase change
>over a bit period. For h =3D 0.5, the phase changes 90 degrees over a
>bit period. If you establish timing recovery first, then look at the
>phase change from the start of a bit to the middle of a bit. It should
>be +45 for positive frequency shift or -45 for negative frequency
>shift. By adding or subtracting 45, you can get a phase error for your
>PLL.
>
>John
>
I see, now it is clear to me, thank you so much.
And one more question, is there a 'universal' lower bound of BER for FSK
and MSK?
When I develop my PSK demodulator, I have a mathematical equations to
compute the theoretical BER curve like:
http://en.wikipedia.org/wiki/File:PSK_BER_curves.svg, so I compared my
measurements with this curve to understand the performance my demodulator.
Could you please point me some articles about CPFSK and MSK BER
derivative?
Thanks again!
Reply by gobruins●March 23, 20102010-03-23
>The phase error detector has to take into account the phase change
>over a bit period. For h =3D 0.5, the phase changes 90 degrees over a
>bit period. If you establish timing recovery first, then look at the
>phase change from the start of a bit to the middle of a bit. It should
>be +45 for positive frequency shift or -45 for negative frequency
>shift. By adding or subtracting 45, you can get a phase error for your
>PLL.
>
>John
>
I see, now it is clear to me, thank you so much.
And one more question, is there a 'universal' lower bound of BER for FSK
and MSK?
When I develop my PSK demodulator, I have a mathematical equations to
compute the theoretical BER curve like:
http://en.wikipedia.org/wiki/File:PSK_BER_curves.svg, so I compared my
measurements with this curve to understand the performance my demodulator.
Could you please point me some articles about CPFSK and MSK BER
derivative?
Thanks again!
Reply by John●March 23, 20102010-03-23
On Mar 22, 8:38�pm, "gobruins" <chunmei.kang@n_o_s_p_a_m.gmail.com>
wrote:
> >What BER do you expect at 3 dB SNR?
>
> >There are a number of options, including multi-bit (sequence)
> >detection. Look for this paper:
>
> >Coherent and Noncoherent Detection of CPFSK, Osborne & Luntz
>
> >Also the book Digital Phase Modulation by Sundberg is good, pretty
> >much the bible on CPFSK.
>
> >John
>
> I do not know right now what BER I am expected, but I guess we want to
> approach as close as possible to the theoretical curve.
>
> I will take a look at the book you advised.
>
> I just tried some simulations with Matlab/Simulink, I am using
> discriminator method, w/o noise, it performs great, even with large carrier
> offset and timing offset. However, when I add noise, the performance
> degrades rapidly, and especially when modulation index h is small, say
> h=0.5.
>
> Can I say the discriminator method has good performance for passband
> demodulation with large frequency separation?
>
> In my case, I need to deal with also small h. My carrier fc=1KHz, Baud
> rate=50Hz, h=0.5 and other possible values, what demodulation technique
> should I use?
>
> I kind of still prefer using Costas loop, since it is going to be a nice
> fit to the PSK demodulator we developed earlier.
>
> I searched around this afternoon, but I am still not sure how I should use
> a PLL to recover the carrier. What should be the phase error? Once locked
> is my VCO output the demodulated signal or the carrier?
The phase error detector has to take into account the phase change
over a bit period. For h = 0.5, the phase changes 90 degrees over a
bit period. If you establish timing recovery first, then look at the
phase change from the start of a bit to the middle of a bit. It should
be +45 for positive frequency shift or -45 for negative frequency
shift. By adding or subtracting 45, you can get a phase error for your
PLL.
John
Reply by gobruins●March 22, 20102010-03-22
>What BER do you expect at 3 dB SNR?
>
>There are a number of options, including multi-bit (sequence)
>detection. Look for this paper:
>
>Coherent and Noncoherent Detection of CPFSK, Osborne & Luntz
>
>Also the book Digital Phase Modulation by Sundberg is good, pretty
>much the bible on CPFSK.
>
>John
>
I do not know right now what BER I am expected, but I guess we want to
approach as close as possible to the theoretical curve.
I will take a look at the book you advised.
I just tried some simulations with Matlab/Simulink, I am using
discriminator method, w/o noise, it performs great, even with large carrier
offset and timing offset. However, when I add noise, the performance
degrades rapidly, and especially when modulation index h is small, say
h=0.5.
Can I say the discriminator method has good performance for passband
demodulation with large frequency separation?
In my case, I need to deal with also small h. My carrier fc=1KHz, Baud
rate=50Hz, h=0.5 and other possible values, what demodulation technique
should I use?
I kind of still prefer using Costas loop, since it is going to be a nice
fit to the PSK demodulator we developed earlier.
I searched around this afternoon, but I am still not sure how I should use
a PLL to recover the carrier. What should be the phase error? Once locked
is my VCO output the demodulated signal or the carrier?
Reply by John●March 22, 20102010-03-22
On Mar 22, 5:05 pm, "gobruins" <chunmei.kang@n_o_s_p_a_m.gmail.com>
wrote:
> >Search for "costas loop" if you must do coherent demodulation. If non-
> >coherent (i.e., no carrier recovery needed) demodulation is adequate,
> >search for "differential detector."
>
> The reason I choose coherent demodulation is because I thought it has
> improved SNR performance than noncoherent demodulator, am I right on this?
>
> For my project the minimum SNR for detection is 3dB, does this limit my
> decision on choosing demodulator? any recommendation?
>
> If I use a Costas loop for the carrier recovery, what is the error signal
> feed into the loop? If it is the phase, the phase
> is 2*pi*fc*t+integral(m(t)), how do I remove integral(m(t))? That
> is the part confuses me, I definitely need some advise on that.
>
> Thank.
What BER do you expect at 3 dB SNR?
There are a number of options, including multi-bit (sequence)
detection. Look for this paper:
Coherent and Noncoherent Detection of CPFSK, Osborne & Luntz
Also the book Digital Phase Modulation by Sundberg is good, pretty
much the bible on CPFSK.
John
Reply by gobruins●March 22, 20102010-03-22
>Search for "costas loop" if you must do coherent demodulation. If non-
>coherent (i.e., no carrier recovery needed) demodulation is adequate,
>search for "differential detector."
>
The reason I choose coherent demodulation is because I thought it has
improved SNR performance than noncoherent demodulator, am I right on this?
For my project the minimum SNR for detection is 3dB, does this limit my
decision on choosing demodulator? any recommendation?
If I use a Costas loop for the carrier recovery, what is the error signal
feed into the loop? If it is the phase, the phase
is 2*pi*fc*t+integral(m(t)), how do I remove integral(m(t))? That
is the part confuses me, I definitely need some advise on that.
Thank.
Reply by Darol Klawetter●March 22, 20102010-03-22
On Mar 22, 1:20 pm, "gobruins" <chunmei.kang@n_o_s_p_a_m.gmail.com>
wrote:
> I was wondering how to do carrier synchronization for CPFSK signals?
>
> I want to decode the CPFSK signal by computing the phase difference. The
> shape of the phase difference is similar to the following plot
> |---| |---| fc+fd/2
> - - -|- -| - | - | - - - fc
> ---| |---| |--- fc-fd/2
>
> where fc is the carrier, fd is the peak frequency deviation.
>
> Before send this demodulated data into the soft slicer, I have to build the
> sample clock and recover the carrier frequency.
>
> I plan to use the Gardner (or similar) detector to do the timing
> synchronization. The input to the TED is just the phase difference as shown
> above.
>
> But I am not sure how to do the carrier synchronication. Can
> anyone point me a method how to do this?
>
> Thanks a lot!
Search for "costas loop" if you must do coherent demodulation. If non-
coherent (i.e., no carrier recovery needed) demodulation is adequate,
search for "differential detector."
Reply by gobruins●March 22, 20102010-03-22
I was wondering how to do carrier synchronization for CPFSK signals?
I want to decode the CPFSK signal by computing the phase difference. The
shape of the phase difference is similar to the following plot
|---| |---| fc+fd/2
- - -|- -| - | - | - - - fc
---| |---| |--- fc-fd/2
where fc is the carrier, fd is the peak frequency deviation.
Before send this demodulated data into the soft slicer, I have to build the
sample clock and recover the carrier frequency.
I plan to use the Gardner (or similar) detector to do the timing
synchronization. The input to the TED is just the phase difference as shown
above.
But I am not sure how to do the carrier synchronication. Can
anyone point me a method how to do this?
Thanks a lot!