discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] USRP Synchronization


From: Eric Blossom
Subject: Re: [Discuss-gnuradio] USRP Synchronization
Date: Sat, 13 May 2006 10:12:41 -0700
User-agent: Mutt/1.5.9i

On Fri, May 12, 2006 at 01:27:14PM -0700, John Gilmore wrote:
> > What you're describing is currently tough with the basic tx since it's
> > effectively "always on" once you fire it up.  If you underrun, the
> > FPGA will continue transmitting the same value to the DAC (which has
> > the upconverter in it), thus even if you're "not transmitting", it's
> > highly likely that you really *are* still transmitting.
> > ...
> >  * modify the FPGA code such that when the TX fifo is empty, you
> >    ramp the value fed to the DAC down to zero over say 8 clocks.
> 
> Why would it take 8 clocks?  Surely the hardware could do the hard
> part (jam it to zero immediately) and the software could do the rest
> (if it needs to taper off over 8 clocks, end with the right samples).

Jamming it to zero creates a square wave, which in the frequency
domain is really ugly (infinite harmonics...  Like bad CW key
shaping).  Ramping it down avoids the problem.  If we right shift by 2
(with proper handling of the -1 and -2 cases) every clock, after 8
clocks it'll be zero.

> Hmm, in fact, why is this a problem at all?  Why can't the software
> ensure that the final sample before underrun is a zero?  The hardware
> will then keep repeating this final sample forever.

With the current flow graph, it's *really* hard to do this.  I would
have done it already otherwise ;) The input to the flow graph is data
to be modulated, the output is the stream of modulated samples.
There's no way simple/sane way to get the last samples to be zero --
it's FSK.  This is part of the motivation for the m-block stuff.  It
allows us to run the existing flow graph and then tweak/append to the
output.

> (I suppose this would be possible if you aren't using any of the
> upconverters -- but if the FPGA or the DAC is upconverting, then you
> have to jam a real zero, not an upconverted zero?  Is this even
> possible?)

An upconverted zero is still a zero.   The complex mag is zero, so
even though we're using the upconverter in the DAC, sending zeros will
work.

Eric




reply via email to

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