discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] FSK demodulation


From: Marc Miller
Subject: Re: [Discuss-gnuradio] FSK demodulation
Date: Fri, 20 Jun 2014 12:38:37 +0500




On Thu, Jun 19, 2014 at 12:35 PM, Marcus Müller <address@hidden> wrote:
Hi Marc,

> Currently, I am trying to implement correlation receiver using FIR
filters. I am looking into polyphase filterbank channelizer to implement
correlation, but currently unable to do so because I currently do not
know how to assign taps for channelizer.

I should have pointed you at Tom's article on PFB channelizers and
synthesizers [1].

Thanks, nice article! I am going to test it soon.
 
> Oversampling at baseband ? I am currently sampling at 1Msps (usrp sink
> sampling rate) for a tone spacing of 125KHz. You mean after the USRP sink
> block I should upsample again and then do the correlation?  Or you mean
> something else ? Please forgive me for asking too many question, I am still
> learning.
don't worry; this list is meant for GNU Radio discussion, I think things
like exploring possibilities to do certain tasks in GNU Radio fit
nicely, especially because you are considering using something "cool and
new" like the PFBs in your approach. GNU Radio can always use more
people actually trying to implement stuff!

So: Oversampling is what you do when getting more samples out of your
ADC than nyquist forces you to do. If you do 125k spacing 4FSK, then you
have a total bandwidth of 750kHz + X, so 1MS/s is "just enough"; anyway,
if you sample with let's say 3.125MS/s, than you'll have more samples.
Within that received bandwidth, you will have the same signal as before,
but now correlating against your known tone will give you a higher value
than with only 1MS/s, and because noise stays uncorrelated, this will
increase SNR. This is processing gain!


ADC in N210 is sampling at 100Msps, so you are saying that I can get processing gain (better SNR) if I set the USRP sink sample rate higher than IMsps i.e usrp_sink.sample_rate(3.125e6) instead of usrp_sink.sample_rate(1e6) . Right ?

Also I read [1] that if I oversample by 2 then I gain 3dB in SNR, if oversample by 4 I gain 6dB in SNR and so on, is that TRUE ? If this is true I can get a lot of SNR improvement because ADCs are operating at 100Msps.

 
>> ... encourage you to read a lot of books [1] and papers on this.


> Thanks for the link, nice stuff.
If you find something interesting, don't hesitate to add a new heading
like "FSK demodulator technology" and add the references there; I think
this list is something that could use broader usage :)

Sure! I 'll do that.
 
>> Assuming you don't want phase jumps between symbols, why not just use
>> the VCO block to generate frequencies out of your input values?
> Wow! modulation is easy using VCO. A question, why would someone want phase
> jump between symbols?
In FSK systems, you'd usually want to avoid that, because phase jumps
lead to spectral components that are not at  the frequency you shifted to.
With PSK, phase jumps is your only way to encode data, and with QAM
"half" of the information is encoded in phase. However, you usually see
a pulse shaper after these, because transmitting a real phase
discontinuity is somewhat physically impossible[2]. So these modulations
get the spectrum of a phase-jumping system, smoothed by the spectral
shape of the pulse shaping.


Thanks for the detail. Also, I got FSK modulator working using the VCO :)


Marc
[1]
http://www.dsprelated.com/showmessage/72731/1.php

 
Greetings,
Marcus

[1]
http://www.trondeau.com/examples/2014/1/23/pfb-channelizers-and-synthesizers.html
[2] Basically, imagine the baseband signal as a sequence of rectangles
in time; now, the fourier transform of a rectangle is a sin(x)/x, and
that has a support that doesn't fit into a limited bandwidth.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]