# Broadband Applications with USRP

**URL:** <https://www.ruby-forum.com/t/broadband-applications-with-usrp/233332>\
**Category:** GNU Radio\
**Created:** [December 4, 2014, 10:46pm UTC](https://www.ruby-forum.com/t/broadband-applications-with-usrp/233332 "2014-12-04T22:46:09Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![addis\_a](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c4cdca/32.png) [@addis\_a](https://www.ruby-forum.com/u/addis_a)\
**Post date:** [December 4, 2014, 10:46pm UTC](https://www.ruby-forum.com/t/broadband-applications-with-usrp/233332/1 "2014-12-04T22:46:09Z")

</div>

Hello Everyone,

I am interested in developing broadband applications (~30MHZ BW) using  
the  
USRP and I have some questions:

1. What is the largest bandwidth I can process using a flow graph with  
relatively large complexity (e.g. 16QAM demodulator simple lowpass, 2 x  
mixers), any USRP and a computer with arbitrarily large processing  
power. I  
just want a rule of thumb approximation.

2. I know it’s probably not the right place to ask, but do you think my  
application can be implemented in either Labview, or MATLAB USRP  
interfaces?

3. If it is not possible at all, do you think Nutaq, PicoSDR is the  
right  
hardware, considering that it has modules implemented on the FPGA?

4. Are there any papers/applications notes etc in the literature that  
you  
are aware of that implement broadband (30 MHZ BW) systems using the  
USRP?

## Thank you

Eleftherios(Lefteris) Kampianakis  
Electronics and Computer Engineer  
PHD Candidate and Researcher at Sensing Computing Communications Group  
(SGCC)  
Department of Electrical Engineering  
University of Washington  
3927 Adams Lane, NE, Mercer Court D805B, 98105  
website: [http://staff.washington.edu/ekampian/](http://staff.washington.edu/ekampian/)  
[http://users.isc.tuc.gr/~ekabianakis/](http://users.isc.tuc.gr/~ekabianakis/)  
mail: removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![Lefteris\_Kampianaki](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/4da419/32.png) [@Lefteris\_Kampianaki](https://www.ruby-forum.com/u/Lefteris_Kampianaki)\
**Post date:** [December 5, 2014, 8:43am UTC](https://www.ruby-forum.com/t/broadband-applications-with-usrp/233332/2 "2014-12-05T08:43:27Z")

</div>

You can try my DVB-S2 modulator to do some transmit benchmarking.

> **[GitHub - drmpeg/gr-dvbs2: A DVB-S2 and DVB-S2X transmitter for GNU Radio](https://github.com/drmpeg/gr-dvbs2)**
>
> A DVB-S2 and DVB-S2X transmitter for GNU Radio. Contribute to drmpeg/gr-dvbs2 development by creating an account on GitHub.

With the test flow graph, to send a 30 MHz wide signal (which is  
actually  
typical for real DVB-S2 uplinks), you’ll need to set the symbol rate to  
30 / 1.2 or 25 Msymbols/sec. Since the modulator uses 2X oversampling,  
the sample rate will be 50 Msps.

You’ll need an SDR that can operate at that sample rate with an  
interface that can keep up. A B2x0 could work if you have a good  
USB3.0 controller.

The CPU bottleneck on the DVB-S2 flow is the FEC (both LDPC and BCH)  
generation. The net bit-rate at 25 Msyms/s with the test flow graph  
will be 87 Mbps.

In general, receive is usually much worse CPU wise. Again, the FEC can  
take an enormous amount of CPU cycles.

best regards,  
Ron

---

<div class="post-metadata">

**Author:** ![Lefteris\_Kampianaki](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/4da419/32.png) [@Lefteris\_Kampianaki](https://www.ruby-forum.com/u/Lefteris_Kampianaki)\
**Post date:** [December 5, 2014, 11:39am UTC](https://www.ruby-forum.com/t/broadband-applications-with-usrp/233332/3 "2014-12-05T11:39:37Z")

</div>

Hi Lefteris,  
in addition to what Ron wrote:

On 12/04/2014 10:44 PM, Lefteris Kampianakis wrote:

> Hello Everyone,
> 
> I am interested in developing broadband applications (~30MHZ BW) using the  
> USRP and I have some questions:
> 
> 1. What is the largest bandwidth I can process using a flow graph with  
> relatively large complexity (e.g. 16QAM demodulator simple lowpass, 2 x  
> mixers), any USRP and a computer with arbitrarily large processing power. I  
> just want a rule of thumb approximation.  
> If your computer is arbitrarily fast: the maximum sampling rate you can  
> get out of the USRP.  
> That would be something like 25MHz for N200/N210 @16bit, 50MHz @8bit,  
> 200MHz out of the X300/X310,  
> and something mainly depending on your USB3 controller for the  
> B200/B210.
> 2. I know it’s probably not the right place to ask, but do you think my  
> application can be implemented in either Labview, or MATLAB USRP interfaces?  
> Yes, but in Matlab they will only be offline processing applications.
> 3. Are there any papers/applications notes etc in the literature that you  
> are aware of that implement broadband (30 MHZ BW) systems using the USRP?  
> Yes, there are 🙂

This one is not involving GNU Radio, but it’s impressive nevertheless,  
since it’s 128 times a 30.72MHz sampling rate[1].

Then there’s a load of papers you’ll find when searching IEEE Xplore for  
“USRP gnuradio”, and one of the nice things about GNU Radio (as much as  
about the USRPs) is that sample rate is just a setting – if you can set  
the desired sample rate, and your algorithms can deal with that rate,  
you’re fine.

There’s inherently high demand for bandwidth in radar applications [2],  
so choosing radar as a topic is a good approach for finding papers  
describing USRP usage at high sample rates.

Greetings,  
Marcus

[1]

> **[What is a USRP Software Defined Radio?](https://www.ni.com/en/shop/wireless-design-test/what-is-a-usrp-software-defined-radio.html?cid=Social-Company-Corporate-sf29667469)**
>
> A USRP Software Defined Radio Device provides a software-defined RF architecture to design, prototype, and deploy wireless systems with custom signal processing.

[2] [http://www.cel.kit.edu/abstracts.php#Braun\_Symposium\_2012](http://www.cel.kit.edu/abstracts.php#Braun_Symposium_2012)

---

<div class="post-metadata">

**Author:** ![Lefteris\_Kampianaki](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/4da419/32.png) [@Lefteris\_Kampianaki](https://www.ruby-forum.com/u/Lefteris_Kampianaki)\
**Post date:** [January 14, 2015, 4:46pm UTC](https://www.ruby-forum.com/t/broadband-applications-with-usrp/233332/4 "2015-01-14T16:46:21Z")

</div>

Lefteris Kampianakis wrote in post #1164056:

> Hello Everyone,
> 
> I am interested in developing broadband applications (~30MHZ BW) using  
> the  
> USRP and I have some questions:
> 
> 1. If it is not possible at all, do you think Nutaq, PicoSDR is the  
> right  
> hardware, considering that it has modules implemented on the FPGA?

The PicoSDR platform is well suited for real-time, high bandwidth  
applications. The PicoSDR can be, at first used as a radio peripheral  
but later on, you can migrate GNU Radio processing blocks into the FPGA,  
to offload the GNU Radio flowgraph, thus deacreasing the load on the CPU  
side. You also have a specific flavor of PicoSDR which is the PicoSDR  
2x2-E which comes with an embedded i7 blade right next to the FPGA blade  
making it a good development platform for hybrid processing  
applications.

Regards,

JB
