[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] Interpolation in siggen.py
From: |
Charles Swiger |
Subject: |
Re: [Discuss-gnuradio] Interpolation in siggen.py |
Date: |
Tue, 18 Jul 2006 13:54:51 -0400 |
On Tue, 2006-07-18 at 08:57 -0700, Angilberto Muniz Sb wrote:
> Folks,
> I'm confused with -i option in siggen.py...
>
> If I want to generate a pure 1MHz sine wave centered
> at 10MHz carrier is it correct to use:
>
> siggen.py --const --sine -f 1e6 -c 10e6
>
> or should I use:
>
> siggen.py --const --sine -f 1e6 -c 10e6 -i 32
>
> or neither one ???
>
> Would somebody elaborate on that?
>
[ posting to list in case I make any mistakes, pls correct ]
Quick answer: Either one, and don't use --const, just --sine.
That must be an older version of usrp_siggen.py as the
latest does not have a -c option. You would use just --sine,
as --const is for a constant (DC) signal.
In that version you could specify waveform frequency before
upconverting to the output frequency, the upconverter (DUC)
frequency and the interpolation. It looks like this:
(waveform) ----> (duc) -----> (output freq)
^ ^
usb_rate 128e6
Interpolation is the ratio of DAC rate (128e6) to the usb_rate,
default is 64 and you ask for 32 above. So for an interpolation
of 32 the usb_rate would be 4MHz (128e6 / 32) so your waveform
could be anything from -2 to +2Mhz and the output would be the
DUC freq plus the waveform frequency.
If you use siggen.py --sine -f 1e6 -c 10e6 -i 32
you would get an output at 11Mhz. IF you use default interp = 64
you might want to use a smaller waveform freq as 1MHz would be
right at the edge of the usb_rate and it loses amplitude some.
Something like siggen.py --sine -f 50e3 -c 10.95e6
In the newer versions -f is the DUC frequency and -w is the
waveform frequency.