[USRP-users] Getting rid of one of the sidebands on transmit

Wallace, Frank L CIV NSWCDD, Q41 frank.l.wallace1 at navy.mil
Wed Sep 11 13:55:58 EDT 2013

I do radar and have a LFM chirp
f(t) = f0+k*t

If I move fo up a little bit so that it is a little off the carrier.  I can see the LO leaking through on the spectrum analyzer.

Then I do exp(j*2*pi*t*f(t):
Real = cos(2*pi*t*f(t));
Imag = sin(2*pi*t*f(t));

Still, when I look at the output on the spectrum analyzer, it shows an upper sideband and a lower sideband.
Right now, I am using f0=(receive sample rate)/4 trick so that the exp(j*fo*t) becomes a series of 1,j,-1,-j, etc. 
This moves one of the sidebands to DC and I lowpass filter to get rid of the original DC and the other image.

The single sideband stuff that I have looked at (Wikipedia, etc.) all end up with a real signal.  So, I wasn't sure if I just do the exp(j*stuff) and go with it for the ETTUS radios or how he I and Q DACs get mixed together 
on the daughercard.



-----Original Message-----
From: USRP-users [mailto:usrp-users-bounces at lists.ettus.com] On Behalf Of Marcus Müller
Sent: Wednesday, September 11, 2013 11:37 AM
To: usrp-users at lists.ettus.com
Subject: Re: [USRP-users] Getting rid of one of the sidebands on transmit

Hi Frank!
> When I try to transmit a signal that is not at baseband, I get an upper sideband and a lower sideband.
I reckon you're trying to transmit a signal that is frequency shifted bandpass signal; that's baseband. You actually can't do anything else using your daughterboard.
> How can I get rid of one of the sidebands?
Is this really what you want to do? It seems as you are trying to transmit a real baseband signal s_r, meaning that the spectrum S_r is always symmetric to the f=0 axis: (beware, ASCII art)
          ^ |S_r|
----/    |    \----
If you're really just trying to have your real signal on a carrier frequency, you might just shift it in frequency domain, giving you a complex signal s_c

          ^ |S_c|
/        \----    ----
by multiplying it with exp(jt) (in time domain), before applying a low pass filter, cutting off any frequency that is far away from DC. That is equivalent to using a band-pass filter to filter out one halfband*.
> Is the data for the send() call for the tx streamer really complex?
Yes. The USRP has a two-channel I/Q DAC, therefore complex baseband is what you do. You really need to grep all the complex baseband theory to do useful stuff  with it ;)
> I am pretty sure it is from one of the tx examples.  Right now, I am processing it on the receive side to remove one of the sidebands, but I would like to get rid of it on the transmit side.
Good choice, since throwing away half your signal is wasteful in means of signal power and spectrum usage.
If you do know, however, how to throw away half of the baseband on the rx side, why don't you just do exactly the same on tx? There is no "mathematical" difference between samples going into and samples coming out of the USRP...


*in fact, band passes can be constructed as frequency shifted low passes, which just multiplies the filter taps with exp(jt)

USRP-users mailing list
USRP-users at lists.ettus.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 13415 bytes
Desc: not available
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20130911/e1acbb71/attachment.p7s>

More information about the USRP-users mailing list