Large FFTs

We are considering to purchase a USRP2 + a DBSRX board in order to
utilize it for some GPS stuff. Thus it would be interesting to know
what’s the maximum supported (implemented) FFTs size. I have checked the
old discussions, but there’s nothing really conclusive. What we are
looking for is something larger than 16K FFT points.
Maybe someone has experiences with such large FFTs and how they perform
(Flops or FFTs per second)?

Best regards,
Thomas H.


Dr. Thomas H.
Space-Time Measurement Project
Space-Time Standards Group
New Generation Network Research Center
National Institute of Information and Communications Technology

4-2-1 Nukui-Kitamachi, Koganei
184-8795 Tokyo
Japan

Hi,

Gnuradio uses FFTW, which as a pretty nice benchmark page [1]. If we
look at the results for a fairly new intel processor, we see that a
262144 point FFT can be computed with about 9 GFLOPS speed, which
means that a 262144 point FFT should be done in less than 3 ms.

[1] FFT Benchmark Results

I have been using 65 kpoint FFTs for real-time spectral analysis with
USRP1 and USRP2 with no problems.

juha

Dear Thomas,

we have found some problems when using USRP2+DBSRX for GPS due to
phase noise. See details in http://www.ruby-forum.com/topic/213845

If someone have succeded on this, we would appreciate some hints to
make it work. Our software GPS receiver was not able to track signals,
while it run smoothly when using USRP1 + DBSRX without modification.

Best regards,
Carles Fernandez

Hi Carles,

Thanks for the reply. That’s a very helpful comment.

we have found some problems when using USRP2+DBSRX for GPS due to
phase noise. See details in http://www.ruby-forum.com/topic/213845

Once we have the components in the lab, I am going to play with them,
having your comment on my check-list.

If someone have succeded on this, we would appreciate some hints to
make it work. Our software GPS receiver was not able to track signals,
while it run smoothly when using USRP1 + DBSRX without modification.

By tracking signals, do you mean that one of the receiver loops (DLL,
PLL) lost lock or does it only prevent to extract the navigation bits?

Best regards,
Thomas H.


Dr. Thomas H.
Space-Time Measurement Project
Space-Time Standards Group
New Generation Network Research Center
National Institute of Information and Communications Technology

4-2-1 Nukui-Kitamachi, Koganei
184-8795 Tokyo
Japan

On Tue, Aug 24, 2010 at 1:02 AM, Thomas H. [email protected]
wrote:

If someone have succeded on this, we would appreciate some hints to
make it work. Our software GPS receiver was not able to track signals,
while it run smoothly when using USRP1 + DBSRX without modification.

By tracking signals, do you mean that one of the receiver loops (DLL, PLL)
lost lock or does it only prevent to extract the navigation bits?

I mean that the PLL lost lock after a few seconds, so we were able to
extract only a few (and useless) navigation bits. We played with the
filter loop, without success for the moment. We are quite confident in
the software receiver, it works nice with other hardware
configurations, and that is why we suspect that it could be a hardware
issue. We will be working on this in the next month. I will let you
know our advaces.

Best regards,
Carles

Dear Carles,

On Mon, 2010-08-23 at 21:37 +0200, Carles Fernandez wrote:

Dear Thomas,

we have found some problems when using USRP2+DBSRX for GPS due to
phase noise. See details in Higher phase noise present on DBSRX when operated with USRP2 - GNU Radio - Ruby-Forum
I have experimented with using the clock from the usrp to a modified
TVRX (disabling the internal TVRX clock, using a 4 Mhz clock from the
usrp).

One of my findings was that if you use a low resistor from the usrp
clock output to a daughterboard, followed by a relatively large
capacitor to ground (for lowpass filtering) you can get a lot of
spurious.
The usrp can generate quite some power on this clockline.
When you load the clockline to heavy, it wil start generating RF power.
The load being a low resistor and big capacitor.
The antenna being the track from the usrp to the lowpass filter.

In the worst case you can be generating several milliwatts.

This can definitely have an effect on the performance.
Especially if you happen to be on a multiple of the daughterboard clock.

My advise would be to experiment with a higher impedance lowpass filter
which does not put a heavy load on the clockline.
You could also experiment with a buffer amplifier.

Good luck,

Martin Dudok van Heel

Olifantasia.com

Hi Carles,

I mean that the PLL lost lock after a few seconds, so we were able to
extract only a few (and useless) navigation bits. We played with the
filter loop, without success for the moment. We are quite confident in
the software receiver, it works nice with other hardware
configurations, and that is why we suspect that it could be a hardware
issue. We will be working on this in the next month. I will let you
know our advaces.

Thanks. I am looking forward to have my USRP2 in the hands, to start
playing with it. Your experience is highly appreciated.

Best regards,
Thomas


Dr. Thomas H.
Space-Time Measurement Project
Space-Time Standards Group
New Generation Network Research Center
National Institute of Information and Communications Technology

4-2-1 Nukui-Kitamachi, Koganei
184-8795 Tokyo
Japan

Hi Juha,

Gnuradio uses FFTW, which as a pretty nice benchmark page [1]. If we
look at the results for a fairly new intel processor, we see that a
262144 point FFT can be computed with about 9 GFLOPS speed, which
means that a 262144 point FFT should be done in less than 3 ms.

[1] FFT Benchmark Results

I have been using 65 kpoint FFTs for real-time spectral analysis with
USRP1 and USRP2 with no problems.
Your reply is related to running the FFT on the CPU, right? Do you have
any experience running it on the FPGA of the USRP1 or USRP2?

Thomas

Hi Thomas,

What antenna are you using for GPS?
If possible, can you give us a link or specifications of it.

Patrik

----- Original Message -----
From: “Thomas H.” [email protected]
To: “Carles Fernandez” [email protected]
Cc: [email protected]
Sent: Tuesday, August 24, 2010 7:38
Subject: Re: [Discuss-gnuradio] Large FFTs

Hi,

What antenna are you using for GPS?
If possible, can you give us a link or specifications of it.

Beside some geodetic high end antenna (Trimble), we’d like to test the
3G1215A-XS-1

http://webserv.novatel.ca:7005/Antcom/partDetails.do?partid=53&lineparam=5

for some GNSS-R stuff.

As this is an active antenna, I hope the power it up via the DBSRX as
the spec say “The DBSRX is MIMO capable, and can power an active antenna
via the coax.”

Regards,
Thomas


Dr. Thomas H.
Space-Time Measurement Project
Space-Time Standards Group
New Generation Network Research Center
National Institute of Information and Communications Technology

4-2-1 Nukui-Kitamachi, Koganei
184-8795 Tokyo
Japan

Thomas,

I’m some affraid to “fry” the DBSRX, draw too much current for the
amplifier, so I use a “general” power inserter instead of feeding the
Antenna bias pin on the daughterboard.
I use a cheap Johansson (BE) TV power inserter (VHF - L-Band) so I wont
ever
have to worry about damaging the board

I could not find the direct link to the inserter I’m using but the price
was
~$15
Google gave these suggestions:

http://www.google.com/products?hl=&q=antenna+power+inserter&rlz=1B3GGGL_enFI341FI342&um=1&ie=UTF-8&ei=an5zTJn5NuWjOMjUsMsO&sa=X&oi=product_result_group&ct=title&resnum=4&ved=0CCwQrQQwAw

Regards,
Patrik

----- Original Message -----
From: “Thomas H.” [email protected]
To: “Patrik T.” [email protected]
Cc: [email protected]; “Jerry” [email protected]
Sent: Tuesday, August 24, 2010 10:13
Subject: Re: [Discuss-gnuradio] Large FFTs

Your reply is related to running the FFT on the CPU, right? Do you have any
experience running it on the FPGA of the USRP1 or USRP2?

No, but I know that radio astronomers do this.

I have done FFT with CUDA. As long as you can keep the data inside the
GPU for long enough, you can get pretty nice performance. I have
measured over 100 GFLOPS on FFT with a $300 Nvidia GPU. I haven’t
tried yet with my new 480 GTX, but it should be even faster.

juha

Hi,

Your reply is related to running the FFT on the CPU, right? Do you have any
experience running it on the FPGA of the USRP1 or USRP2?

No, but I know that radio astronomers do this.

I have done FFT with CUDA. As long as you can keep the data inside the
GPU for long enough, you can get pretty nice performance.
We have done our prior developments with the GPU

http://www.springerlink.com/content/j17244nu708381n6/

But since we were looking for a cheaper front-end solution, we stumbled
over GNU radio.
If there would be a way to do the FFT on the FPGA (for the signal) and
do the rest on the GPU we should be able to speed up things.

Anyway, thanks.

Thomas


Dr. Thomas H.
Space-Time Measurement Project
Space-Time Standards Group
New Generation Network Research Center
National Institute of Information and Communications Technology

4-2-1 Nukui-Kitamachi, Koganei
184-8795 Tokyo
Japan

Thanks Thomas,

We’ll try to replicate the antenna using a USRP1 within a few weeks

Patrik

----- Original Message -----
From: “Thomas H.” [email protected]
To: “Patrik T.” [email protected]
Cc: [email protected]; “Jerry” [email protected]
Sent: Tuesday, August 24, 2010 10:13
Subject: Re: [Discuss-gnuradio] Large FFTs