Forum: GNU Radio Bandwidth Across USB

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
jjw (Guest)
on 2006-04-06 01:31
(Received via mailing list)
I know this is probably an extremely stupid question, but I wanted to
get
some verification.  I've noticed that the minimum decimation rate you
can
use in all of the sample programs is 4 (giving you an effective sampling
rate of 16 MHz).  If you are transmitting 1 real channel of data (16
bits)
at this rate, that seems to be maxing out the USB transfer rate of 32
MB/s.
Am I correct in my deduction that you need to use a decimation rate of
at
least 8 in order to transmit complex data (such as for FM demodulation)
successfully across the USB?  Thanks.

Thanks,
John
--
View this message in context:
http://www.nabble.com/Bandwidth-Across-USB-t140231...
Sent from the GnuRadio forum at Nabble.com.
Lee P. (Guest)
on 2006-04-06 01:49
(Received via mailing list)
Hi John -

16/D bits/sample x 64e10 samples/sec x 1 B/8 bits x 1 MB / 2^20 B <= 32
MB/sec

Therefore,

D >= 16*64e10 /(32*8*2^20) = 3.814 -> 4

So, if you want to transmit twice as many sample across the bus...

D > = 2*16*64e10 /(32*8*2^20) = 7.63 -> 8

...you have to halve your sampling frequency.

Are you aware that there is a -8 option in some of the scripts that
allows you to send 8 bits instead of 16.

Hope that helps,
 - Lee



----- Original Message -----
From: jjw <removed_email_address@domain.invalid>
Date: Wednesday, April 5, 2006 5:31 pm
Subject: [Discuss-gnuradio] Bandwidth Across USB
To: removed_email_address@domain.invalid
Eric B. (Guest)
on 2006-04-06 01:55
(Received via mailing list)
On Wed, Apr 05, 2006 at 02:30:30PM -0700, jjw wrote:
>
> I know this is probably an extremely stupid question, but I wanted to get
> some verification.  I've noticed that the minimum decimation rate you can
> use in all of the sample programs is 4 (giving you an effective sampling
> rate of 16 MHz).  If you are transmitting 1 real channel of data (16 bits)
> at this rate,

Note that the standard FPGA build will not xfer a single real channel...

> that seems to be maxing out the USB transfer rate of 32 MB/s.
> Am I correct in my deduction that you need to use a decimation rate of at
> least 8 in order to transmit complex data (such as for FM demodulation)
> successfully across the USB?  Thanks.

Yes, decim = 8 gives 64e6/8 = 8MS/s complex.

In general, you want to use the highest decimation factor that works
for your application.  This offloads more of the crunching onto the
FPGA.

Eric
Lee P. (Guest)
on 2006-04-06 04:57
(Received via mailing list)
John -

I must have been drunk when I wrote those equations. I wrote 64e10 when
I meant 64e6, and put the D in a weird place. Sorry for any confusion.
This makes more sense:

(16 bit/sample)*(64e6/D sample/sec)*(1/2^23 MB/bit) <= 32 MB/sec

therefore, for real

D >=   16*64e6/(32*2^23) = 3.81 --> D = 4

and for complex

D >= 2*16*64e6/(32*2^23) = 7.63 --> D = 8
This topic is locked and can not be replied to.