High bandwidth channel estimation using the USRP


#1

Hi!

My name is Emanuel and I’m doing my master thesis project for a small
company called Actiwave (http://www.actiwave.se). We recently bought a
USRP-board together with an assortment of daughterboards. The dboards
I’ll
be using for my thesis are the BasicTX & -RX. After that short
introduction
I’ll move right to the topic:

Question A:
I’m interested in calculating an estimate of the impulse response of a
speaker cable, using pseudo-white noise and bypassing all forms of
interpolation/decimation/modulation/demodulation-blocks, for as wide a
bandwidth as possible. However, and please correct me if I’m wrong, the
USB-interface on the USRP is too slow (8 MHz) to, so to speak, do this
“online”. Say I want to use 10,000 pseudo-white samples with at least
8bit
resolution. Is this possible without rewriting very much of the
Verilog-code?

Question B:
Is it possible if rewriting very much of the Verilog-code?

Below is an illustration of what I want to do.




| gen. wh. noise | => | store on ursp | => | transmit & receive @ full
speed | => | store received on usrp | => | trans. to host |




Thank you in advance,
Emanuel B.


#2

Hi,

I you want to do sampling @ 8 bit, USRP bandwidth can be extended to
16MHz. See usrp_fft.py with option (-8).

Regards,

firas


#3

On Monday 15 December 2008 17:28:31 Emanuel B. wrote:

speaker cable, using pseudo-white noise and bypassing all forms of
interpolation/decimation/modulation/demodulation-blocks, for as wide a
bandwidth as possible. However, and please correct me if I’m wrong, the
USB-interface on the USRP is too slow (8 MHz) to, so to speak, do this
“online”. Say I want to use 10,000 pseudo-white samples with at least 8bit
resolution. Is this possible without rewriting very much of the
Verilog-code?

As long as you stick to humans as your intended audience, and not bats,
100kHz
should be more then enough. As the frequency response of the DDC filters
is
flat for ~0.5 of the sampling bandwidth (you can find the FR in the USRP
FAQ), a sampling rate of 200kHz is more than satisfactory for your work.
Everything else is esoteric …

Stefan


Stefan Brüns / Bergstraße 21 / 52062 Aachen
mailto:lurch at gmx.li http://www.kawo1.rwth-aachen.de/~lurchi/
phone: +49 241 53809034 mobile: +49 151 50412019


#4

On Mon, Dec 15, 2008 at 8:28 AM, Emanuel B. removed_email_address@domain.invalid
wrote:

I’m interested in calculating an estimate of the impulse response of a
speaker cable, using pseudo-white noise and bypassing all forms of
interpolation/decimation/modulation/demodulation-blocks, for as wide a
bandwidth as possible. However, and please correct me if I’m wrong, the
USB-interface on the USRP is too slow (8 MHz) to, so to speak, do this
“online”. Say I want to use 10,000 pseudo-white samples with at least 8bit
resolution. Is this possible without rewriting very much of the
Verilog-code?

The BasicRX and TX do not pass DC; they are transformer coupled and
have a ~100 KHz highpass response at the low end. The alternative is
the LFRX and LFTX cards, which do pass DC, but have lowpass filtering
at ~30 MHz. So you will only be able to calculate the impulse
response convolved with that of one of these filters.

There is a GNU Radio component called gr-sounder, which implements a
custom FPGA build for the USRP. The transmitter will generate an
m-sequence PN code of a configurable length and chipping rate for
channel sounding purposes; this is likely suitable for what you need.
The receiver will correlate the received signal at all possible PN
code phases and produce a complex vector of the correlation results.

Also, your results will be affected by the coupling of the USRP
daughterboards to the speaker cable. They are designed for a
broadband match of 50 ohms across their frequency range. Speaker
cable is not typically designed with this in mind and the mismatch
will like cause a frequency-dependent amplitude response. Maybe that
is what you trying to measure, however.

-Johnathan