discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] DVB-S2 Physical Layer Framer: Why outputs a zero


From: Ron Economos
Subject: Re: [Discuss-gnuradio] DVB-S2 Physical Layer Framer: Why outputs a zero after each sample?
Date: Sun, 19 Jun 2016 18:28:02 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0

The intended application for the DVB-S2 transmitter in GNU Radio was mostly for digital television over amateur radio. The example flow graph transmits a 6 MHz wide signal (5 Msyms/s and 20% excess bandwidth), which is about as wide as folks want to use on ham bands. Most amateurs are using less bandwidth and a few are using narrow bandwidths (in the UK, there's a temporary digital allocation at 146 to 147 MHz, and the typical symbol rate is 333 ksyms/s).

So the 2X oversampling didn't seem like too much of a burden. Pretty much all transmit capable SDR's can handle 10 Msps.

If you're interested in really wide bandwidth transmission, then the 2X oversampling does get in the way a little. On my workstation with a B210 and Via USB3.0 controller, I can run 20 Msyms (40 Msps) reliably for a 24 MHz wide signal. Above that rate, it falls apart with underruns.

With an optimum USB3.0 controller capable of 60 Msps, it should be possible to do a commercial satellite transponder 36 MHz wide signal with a B2X0.

Ron

On 06/16/2016 12:36 PM, Francisco Albani wrote:
Thanks!

Why not moving the zero stuffing downstream and use a polyphase arbitrary resampler with RRC taps? I'm not familiar with performance comparison between PFAR and FFT FIR Filter.



2016-06-15 19:41 GMT-03:00 Ron Economos <address@hidden>:
The primary design decision was to use the FFT filter instead of the interpolating FIR filter for performance. The FFT filter is considerably faster, especially at the 100 taps used in the flow graph. However, (as far as I know) the FFT filter does not have an interpolation option, just decimation. So the 2X interpolation is done in the Physical Layer Framer block instead.

You can remove the zero stuffing from the Physical Layer Framer and use the Interpolating FIR Filter block instead of the FFT filter block for RRC filtering. If you try that, be sure to remove the factor of two in lines 535, 548 and 680 in the PL framer block.

Here's a link that explains why zero stuffing is the correct way to do interpolation.

http://www.dspguru.com/dsp/faqs/multirate/interpolation

Ron


On 06/15/2016 02:37 PM, Francisco Albani wrote:
Hi to all! Specially to Ron Economos! (and thanks for sharing your work)

I was trying to understand the example dvbs2_tx.grc and, after putting graphical sinks after many blocks, I noticed that the one called "Physical Frame Layer" outputs one complex zero after each constellation point (see attached screenshot). Moreover, the FFT Filter that gives the RRC shape is not instructed to interpolate to fit any samples_per_symbol requirement. Moremoreover, the sample rate is hardcoded to symbol_rate*2.

This makes me think this transmitter can only work for 2 samples per symbol. (I suppose one can resample to an arbitrary sps value if needed.)

The point of this message is to confirm my suspicion and to ask why this was a design decision. I hope to learn some insight.

Relevant lines: 80, 684, 704 and 727.

Bye and thanks!


_______________________________________________
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]