Best Resample Method For Resampling LTE Data

Hi,

I’m currently using the Rational Resampler in GUNURADIO to resample LTE
data, for example from 30.72MHz to 15.36MHz and 50MHz to 15.36MHz. I`m
able
to decode the data, so every thing seems to be well.

I chose the Rational Resampler, simply because it is easy to use.
However I
noticed, GNURADIO has a number of resample modules, Fractional
Resampler,
Polyphase Arbitrary Resampler etc… I’m guessing each resampler has
it`s
strengths and weaknesses. Perhaps one is better for audio, another is
better
for LTE data etc…

At this stage, I have found the equations for the various resamplers,
but
have no practical experience, with regards to the merits or demerits of
the
different modules.

Any pointers to any online resources or offline books would be
appreciated.


View this message in context:
http://gnuradio.4.n7.nabble.com/Best-Resample-Method-For-Resampling-LTE-Data-tp51496.html
Sent from the GnuRadio mailing list archive at Nabble.com.

The PFB Arb Resampler is the newest. I’ve been using it to do all my
resampling for every application because it’s dead simple - handles all
the
nyquist filtering for you and allows fractional resampling.

On Sunday, November 30, 2014, Paul C. [email protected]
wrote:

better

View this message in context:

http://gnuradio.4.n7.nabble.com/Best-Resample-Method-For-Resampling-LTE-Data-tp51496.html

Sent from the GnuRadio mailing list archive at Nabble.com.


Discuss-gnuradio mailing list
[email protected] <javascript:;>
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Very Respectfully,

Dan CaJacob

Hi Paul,

On Sun, Nov 30, 2014 at 6:52 PM, Paul C. [email protected]
wrote:

I’m currently using the Rational Resampler in GUNURADIO to resample LTE
data, for example from 30.72MHz to 15.36MHz and 50MHz to 15.36MHz. I`m able
to decode the data, so every thing seems to be well.

I chose the Rational Resampler, simply because it is easy to use. However I
noticed, GNURADIO has a number of resample modules, Fractional Resampler,
Polyphase Arbitrary Resampler etc… I’m guessing each resampler has it`s
strengths and weaknesses. Perhaps one is better for audio, another is better
for LTE data etc…

In your specific use case, rational/fractional and arbitrary
resamplers are mathematically equivalent since the ‘arbitrary’ portion
doesn’t apply. For example, rather than rational 2-to-1 downsampling
in your example, an arbitrary rate conversion would handle something
like 2-to-Pi. A more realistic use case for arbitrary resampling is
symbol timing loops where the output sample rate is not fixed, but
continuously drifting over time.

That said, despite similarities in math, there may be implementation
differences between the blocks that you mention. So one or another
might be newer, better optimized, or just easier to use. Tom R.
can more easily explain those differences if they exist.

-TT

I’ve used both the Fractional Resampler and the Rational Resampler so
far
with reasonable results. At this stage in the case of the Rational
Resampler, I simply use the Interpolation setting and decimation setting
to
form a ratio (taps:None, Fractional BW:0), which then generates the
required
output sample rate.

One interesting point. When for example resampling from 30.72MHz to
30.72002MHz, I had a look at the FFTs using the QT Gui Frequency Sink.
One
thing that struck me was, the rational resampler was acting as a low
pass
filter. At both ends of the spectrum I could see a roll off.

I am also looking at trying the Polyphase resampler. Well actually I
have
tried it, just I haven’t figured out, how to choose the parameters yet!


View this message in context:
http://gnuradio.4.n7.nabble.com/Best-Resample-Method-For-Resampling-LTE-Data-tp51496p51509.html
Sent from the GnuRadio mailing list archive at Nabble.com.

On Mon, Dec 1, 2014 at 5:34 PM, Paul C. [email protected]
wrote:

filter. At both ends of the spectrum I could see a roll off.

I am also looking at trying the Polyphase resampler. Well actually I have
tried it, just I haven’t figured out, how to choose the parameters yet!

Yes, all of the resamplers are filters. You need to filter whenever you
resample a signal. The rational resampler and PFB resampler both try and
find a good default filter such that the signal in the original passband
is
not distorted but and aliasing or images are properly attenuated.
However,
Bug #745 on our issue tracker suggests that the default RR taps are not
correct. I’m planning on looking into that this week.

Tom

On Mon, Dec 1, 2014 at 3:01 AM, Tom T. [email protected] wrote:

However I
like 2-to-Pi. A more realistic use case for arbitrary resampling is
symbol timing loops where the output sample rate is not fixed, but
continuously drifting over time.

That said, despite similarities in math, there may be implementation
differences between the blocks that you mention. So one or another
might be newer, better optimized, or just easier to use. Tom R.
can more easily explain those differences if they exist.

-TT

I have very little to add to what Tom and Dan have already said. I tend
to
use the PFB arbitrary resampler myself because it’s so easy to just plug
in
a number and go. A couple of things on the computational power, though:

  1. The rational resampler should be the cheapest when you can find the
    right rational ratio for your rate change needs. This will still depend
    on
    the filter taps you use in it, however, which is the size of the
    prototype
    filter (the one you enter) divided by the interpolation rate.

  2. The default taps for the PFB resampler will be a more expensive
    filter
    than the fractional resampler. The latter uses 8 taps at a time in the
    filter. You can tailor the size of the filter per arm (nfilts) to reduce
    the overhead of the filter itself.

  3. The PFB resampler will produce nearly the same output as the rational
    resampler when the resampling rate of the PFB resampler is the same as
    the
    D/I ratio of the rational resampler. The PFB will still be slightly more
    expensive, even if you make the number of taps per arm (len(taps)/nfilts
    for the PFB and len(taps)/I for the RR). The PFB computes two filter
    outputs for every sample output, which is not needed when there is no
    arbitrary part required – but it won’t know that and so does the
    computation, anyways.

But as I said, like Dan, I just use the PFB resampler because it’s so
easy
and I tend not to be that concerned with the computational issues. If I
had
to squeeze a bit more out of the overall flowgraph, I’d first tailor the
resampler’s filter to shorten it, or I’d work to see if I could make the
RR
work for me.

Tom