# Maximum supported frequency

**URL:** <https://www.ruby-forum.com/t/maximum-supported-frequency/241275>\
**Category:** GNU Radio\
**Created:** [May 21, 2014, 3:51pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275 "2014-05-21T15:51:12Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [May 21, 2014, 3:51pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275/1 "2014-05-21T15:51:12Z")

</div>

Hi everyone,

I’m wondering about the maximum supported frequency in gnuradio, in  
fact, I  
want to model a UHF transmission chain, where the model concludes a  
simulation of the radio front end.  
Can I do it without worry about the software limitation ? I mean, is it  
depend only on my machine limitations ?

Thanks,

–  
View this message in context:  
[http://gnuradio.4.n7.nabble.com/Maximum-supported-frequency-tp48398.html](http://gnuradio.4.n7.nabble.com/Maximum-supported-frequency-tp48398.html)  
Sent from the GnuRadio mailing list archive at [Nabble.com](http://Nabble.com).

---

<div class="post-metadata">

**Author:** ![mohamedx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b77776/32.png) [@mohamedx](https://www.ruby-forum.com/u/mohamedx)\
**Post date:** [May 21, 2014, 4:42pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275/2 "2014-05-21T16:42:17Z")

</div>

On 21.05.2014 15:49, mohamedx wrote:

> Hi everyone,
> 
> I’m wondering about the maximum supported frequency in gnuradio, in fact, I  
> want to model a UHF transmission chain, where the model concludes a  
> simulation of the radio front end.  
> Can I do it without worry about the software limitation ? I mean, is it  
> depend only on my machine limitations ?

I’m assuming you mean sampling rate…?

If you’re just _modeling_, you can do whatever your computer can  
process. And if it doesn’t have to be real time, you can simulate very  
high sampling rates.

M

---

<div class="post-metadata">

**Author:** ![mohamedx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b77776/32.png) [@mohamedx](https://www.ruby-forum.com/u/mohamedx)\
**Post date:** [May 21, 2014, 5:13pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275/3 "2014-05-21T17:13:02Z")

</div>

Yes, the sampling frequency or sampling rate.

I was sure that is just related to what my machine can process, since  
I’m  
not depending on some specific hardware plateforms, but I’ve heard the  
opposite, that’s why I’m posting this.

Thank you Martin, I really appreciate your answer.

–  
View this message in context:  
[http://gnuradio.4.n7.nabble.com/Maximum-supported-frequency-tp48398p48402.html](http://gnuradio.4.n7.nabble.com/Maximum-supported-frequency-tp48398p48402.html)  
Sent from the GnuRadio mailing list archive at [Nabble.com](http://Nabble.com).

---

<div class="post-metadata">

**Author:** ![mohamedx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b77776/32.png) [@mohamedx](https://www.ruby-forum.com/u/mohamedx)\
**Post date:** [May 24, 2014, 12:44pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275/4 "2014-05-24T12:44:37Z")

</div>

Hi Mohamed,

> I was sure that is just related to what my machine can process  
> that’s the opposite of what Martin said.  
> GNU Radio does not care the slightest about how high your sampling rate  
> is. Some blocks need this information to calculate relative frequence  
> (ie. frequencies related to the unit “sample”), but there is absolutely  
> no restriction that links your theoretical sampling rate to your  
> processing speed. If you start using hardware, then, of course, you’ll  
> have to make sure that a) your sampling rate matches your application  
> and your hardware and b) your computer is able to process the samples  
> fast enough to keep everything running in real time.

Greetings,  
Marcus

---

<div class="post-metadata">

**Author:** ![mohamedx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b77776/32.png) [@mohamedx](https://www.ruby-forum.com/u/mohamedx)\
**Post date:** [May 24, 2014, 9:35pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275/5 "2014-05-24T21:35:16Z")

</div>

Hi Martin,

I’m not sure that (what I’ve understood) was the opposite of what Martin  
said, but anyway, I really appreciate your answer.  
Could you please tell me where I can find more about this question ? and  
where I can find the source code related to that “sample” unit ? so I  
can  
see closely how the things were done.

Regards,  
Mohamed

On Sat, May 24, 2014 at 12:44 PM, Marcus Müller-3 [via GnuRadio] \<  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)\> wrote:

> and your hardware and b) your computer is able to process the samples
> 
> * * *
> 
> If you reply to this email, your message will be added to the discussion  
> below:
> 
> [http://gnuradio.4.n7.nabble.com/Maximum-supported-frequency-tp48398p48473.html](http://gnuradio.4.n7.nabble.com/Maximum-supported-frequency-tp48398p48473.html)  
> To unsubscribe from Maximum supported frequency, click  
> here[http://gnuradio.4.n7.nabble.com/template/NamlServlet.jtp?macro=unsubscribe\_by\_code&node=48398&code=bW9oYW1lZC5hYm91enJhckBnbWFpbC5jb218NDgzOTh8OTE5NzQwNDQ2](http://gnuradio.4.n7.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=48398&code=bW9oYW1lZC5hYm91enJhckBnbWFpbC5jb218NDgzOTh8OTE5NzQwNDQ2)  
> .

NAML[http://gnuradio.4.n7.nabble.com/template/NamlServlet.jtp?macro=macro\_viewer&id=instant\_html!nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify\_subscribers!nabble%3Aemail.naml-instant\_emails!nabble%3Aemail.naml-send\_instant\_email!nabble%3Aemail.naml](http://gnuradio.4.n7.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml)

> 

–

_Graduate Student at Supélec, MSc, Advanced Wireless Communication  
Systems,_  
_Élève ingénieur à l’INPT en mobilité internationale._

---

<div class="post-metadata">

**Author:** ![mohamedx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b77776/32.png) [@mohamedx](https://www.ruby-forum.com/u/mohamedx)\
**Post date:** [May 24, 2014, 10:51pm UTC](https://www.ruby-forum.com/t/maximum-supported-frequency/241275/6 "2014-05-24T22:51:28Z")

</div>

Hi Mohamed,

I can not really point you to more reference than your basic (discrete)  
signal theory textbook[1].  
Basically, when processing sampled signals, time stops mattering, since  
samples are but numbers. Thus, “sample” is no unit.  
the notion that a digital signal has a frequency is only that it has  
periodic properties every N samples — that doesn’t automatically match  
to any “real world” frequency in Hz.  
Thus, _every single line_ of signal processing in GNU radio is based on  
this concept, and there is no explicit code related to this.  
But for example, take a look at the signal source: Computational, it  
does not even _care_ what you enter as frequency and sampling rate. It  
just computes values, as fast as it can and as often as it’s asked.  
These samples, on the other hand, contain values with complex values on  
the unit circle (|x| == 1). The rate at which the argument of each  
sample increases in comparison to the last sample is the qoutient of  
sample rate and desired signal frequency,  
$\frac{f\_\text{signal}}{f\_\text{sample}}$. So if you set  
$f\_\text{signal} = \num{200}$ and $f\_\text{sample} = \num{1000}$, you  
will get the very same samples as when you set $f\_\text{signal} =  
\num{2e5}, f\_\text{sample} = \num{1e6}$. GNU Radio doesn’t care about  
these numbers at all. All GNU Radio itself does is shuffle samples  
around. Some blocks use frequencies to calculate what should happen for  
one sample. Thus, sample is the unit (if you want to call it like that  
at all).

This is the basic Software Radio concept most beginners find hard to  
understand. When I started dealing with digital signals, it helped me a  
lot to really do the sampling in my head –  
to try to be always aware of the fact that I’m now working with a series  
of numbers with indices rather than with a function of time. I don’t  
know if this really helps you…

Greetings,  
Marcus

[1] GNU Radio’s website has a page of recommended readings:  
[http://gnuradio.org/redmine/projects/gnuradio/wiki/SuggestedReading](http://gnuradio.org/redmine/projects/gnuradio/wiki/SuggestedReading)  
Pick a book from the “Digital Signal Processing” list.
