discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] resample ratio for fractional_resampler


From: Yang Liu
Subject: Re: [Discuss-gnuradio] resample ratio for fractional_resampler
Date: Tue, 24 Oct 2017 11:03:15 -0400

Hi Marcus,

What I do at the transmitter side is (QPSK signal):
pulse shaping(Root Cosine FIR Filter ) ---> resampling (where the fractional resampler is inserted) --> low pass filter-->frequency shifter (move the signal to the frequency it belongs to with respect to the usrp's center frequency ) --> usrp

If I put low pass filter after resampler, does it mean I don't need to care about the anti-alias filtering offered by resampler that much and just treated it as a filter that help upsampling to the sampling rate I set? Also does it matter whether I put low pass filter before or after resampling? to my understanding, it will not change the spectrum, but the order of low pass filters is different since the rate is different. 

Thanks,
Yang

On Tue, Oct 24, 2017 at 10:12 AM, Marcus Müller <address@hidden> wrote:
Hi Andy,

The fallacy I had in my own head was that the MMSE resampler also filters sufficiently – I think that is not true; it's just a resampler, you need to "select" (as in: filter everything else away) the appropriate bandwidth yourself before.

Therefore: Yang, you'll need to filter before to restrict your signal to a Nyquist bandwidth that the resampled signal can represent without ambiguities (anti-aliasing), then have the flexible MMSE resampler, then, if necessary, suppress images. That's at least one times the effort of the 1/64-bandwidth FIR from my last mail that you *must* do, if your signal is not already sufficiently-bandlimited before.

That leads me to the conclusion that you'd definitely want to first decimate with a FIR and then flexibly interpolate/resample.

You can, in fact, combine both, and then you (essentially) get working principle of the "Polyphase arbitrary resampler": Build a polyphase filterbank from a decimation filter (that's the "Decimating FIR" aspect), and go through the phases in a way that approximates the sub-input-sample delay you want at the output (that's the MMSE-filterbank-alike idea about that).

So, Yang, could you elaborate about what you do before (and after) the resampler? What does your input signal's spectrum look like?

Best regards,
Marcus



On 2017-10-24 14:22, Andy Walls wrote:
On Tue, 2017-10-24 at 08:16 -0400, Andy Walls wrote:
Hi Marcus:

Nice insights and plots.

From:   Marcus Müller
Date:   Mon, 23 Oct 2017 20:10:23 +0200
[snip]
 From the above figure, I'd say: go for 256 taps; 50 dB of anti-
aliasing should probably suffice.
On my machine, the 256 tap FIR filter with decimation=64 ran about
20% faster than the fractional resampler; comparing what they do to
white noise, I'd say that whilst the spectral shape of the 256 tap
FIR is not perfect, the MMSE is pretty much unusable, I guess:
I'd just like to interject here that GNURadio's MMSE filterbank is
only
MMSE for input spectral components in the range [-sample_rate/4,
sample_rate/4].

Also it appears that the mmse/fractional_resampler blocks don't
perform
any explicit anti-alias filtering.  So that's another reason to have
a
band-limiting filter out in front of it.
Oopsie, and maybe one after it too, since we're talking about
decimation.

-Andy



_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio



reply via email to

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