At 09:04 AM 11/23/2005, Jeff Anderson wrote:
Hi Jim,

Jim Lux <[EMAIL PROTECTED]> wrote:


Or, use a fixed oscillator, and run an NCO in the FPGA to create an offset
frequency, which you then mix with the fixed oscillator to create your
locked output. [This is what we are doing in an experimental deep space
transponder.. where phase noise is of obssessive concern]

 

[WA6AHL] : I like your idea.  But let me see if I understand it...in an app such as, say, a general-purpose way of generating a stable frequency using the Jupiter 1pps as reference, are you saying that the NCO (with an external, stable, oscillator as its clock source) would, in essence, be the digital version of the preiously mentioned VCO?  Phase comparison between the NCO's output and the reference 1pps is done within the FPGA and the error used to "steer" the NCO and proved an output that's locked to the ref?

Phase comparison between the external clock and the 1pps is used to steer the NCO, but yes, the NCO replaces the VCO.



 

Is one of the tradeoffs low phase-noise vs. frequency-step "quantization" of the NCO?  (E.g. the NCO might never be *exactly* on frequency).

Sure..  And there's also the issue of NCO spurs.. Nothing comes for free.

In the space application, the nice thing is that it makes it easy to generate one frequency that is coherently locked to another reference.

Here's the typical scenario. The deep space network sends a carrier at, say, 7160.000771 MHz to the spacecraft where it is used as a reference to lock an oscillator on the spacecraft.  That oscillator is then used to synthesize a return carrier at, say, 8412.283950 MHz, which the ground receives. The ratio between frequencies is something like 880/749, called the "turnaround ratio. The ground receiver tracking loop bandwidth might be one Hz or so (hey, we're talking about a 10 Watt transmitter from Pluto or something... you need all the help you can get).

If the transponder on the spacecraft is good enough, you can do useful "radio science" by measuring the changes in the phase of the received signal.  For instance, you can do things like measure the density of a planet or moon's atmosphere.  Or, because measuring fractions of a cycle in phase is like measuring displacements on the order of centimeters, you can do orbit determination for things a long, long ways away.

Historically, all this tracking and synthesizing was done in conventional analog PLL kinds of ways, with a VCXO and chains of multipliers.  Naturally, because good, quiet VCXOs have small tuning ranges, you'd have to decide on your frequencies a long time in advance, and get a crystal ground for that, etc.

Now, however, you could use a very stable and quiet XO, and track out the difference of the uplink signal against the XO entirely with a digital loop, and synthesize the coherent downlink also with a digital oscillator.  The frequency of the underlying XO isn't as important, so you can use the same XO for lots of different missions (or, even, change the channel assignment late in the game).

A very quiet XO is useful too, because sometimes, you're not doing coherent turnaround, but just generating the downlink from the internal oscillator. You'd like that downlink signal to be very quiet (so that you can do ranging, for instance, or because you're sending data at 8 bits/second).  You'd also like the ability to control the frequency of that downlink without having to physically change the crystal frequency, and an NCO can do that.

http://tmo.jpl.nasa.gov/progress_report/42-156/156C.pdf  talks a bit about this kind of stuff.




 

In an application specific to the SDR1K, per Bob's example, you don't need the NCO.  Instead, feed the error sig back to the SDR1K and let s/w handle frequency correction...

Exactly..

James Lux, P.E.
Spacecraft Radio Frequency Subsystems Group
Flight Communications Systems Section
Jet Propulsion Laboratory, Mail Stop 161-213
4800 Oak Grove Drive
Pasadena CA 91109
tel: (818)354-2075
fax: (818)393-6875

Reply via email to