discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] UHD example on USRP1


From: Josh Blum
Subject: Re: [Discuss-gnuradio] UHD example on USRP1
Date: Thu, 03 Feb 2011 14:40:36 -0800
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101208 Lightning/1.0b2 Thunderbird/3.1.7

> Also, I want to know if this is correct:   While we are working with signals
> on the host PC, we're using complex float 64 bit data. This means we have 32
> bit I data and 32 bit Q data. But when the USRP code (UHD or Gnuradio USRP
> code) on the host PC sends this data to the USRP, it converts this float
> type to short, i.e 16 bit I and 16 bit Q. So, over the USB interface, only
> 16 bit signed integers can travel back and forth.
> 

All data over the wire is 32 bits per sample (16I, 16Q). UHD supports
conversions between the over the wire format and complexfloat32 and
complexint16, and in the future complexint8.

There is no conversion for complexfloat64 because, the dynamic range
does not require it, and using doubles to represent signals would
require unnecessary extra CPU load.

> If this is the case, can you tell me the name and location of the .cpp file
> in the UHD source package, that has code for this output format conversion
> from complex<float> to interleaved short I and Q. In the GNURadio framework,
> I find this code in /gr-usrp/src/usrp_sink_c.cc.
> 

The conversion code is here:
http://code.ettus.com/redmine/ettus/projects/uhd/repository/revisions/master/show/host/lib/convert

-Josh



reply via email to

[Prev in Thread] Current Thread [Next in Thread]