[time-nuts] Question for my new GPSDO

Attila Kinali attila at kinali.ch
Sun Nov 3 14:57:49 UTC 2019


Hoi Tobias,

On Wed, 16 Oct 2019 16:30:19 +0000
Tobias Pluess <tobias.pluess at xwmail.ch> wrote:

> I attached my own schematics of the EFC control circuit. I think with this 
> circuit, it should be possible to achieve a similar resolution as you 
> mentioned in your thoughts.
> 
> D3 is a 16bit resistor string DAC and therefore inherently linear.

There is, as far as I know, only two types of DA converters that
are inherently linear: single-bit delta-sigma modulators and
Kelvin-Varley dividers. And both still exhibit a slight amount
of non-linearity due to non-idealities of the components
(for the delta-sigma it's mostly rise/fall time asymmetry,
for the Kelvin-Varley it's leakage currents)

The biggest issue of R-2R DA converters is that the MSB resistance
has to be precise to better than 1/2^(#bits). Which, of course, is
very hard to achieve. Anything beyond 12bit converters requires
adjustment after production (usually done by laser triming the
chip while on the wafer). You can see this, if you look at honest
datasheets (like those from Linear) that they always show a step
at mid-range. The DAC8560 datasheet only shows a very slight one,
much smaller than the rest of the variation seen. Which makes me
believe they might have picked one DAC that was exceptionally good.

> With a OpAmp gain of 4, 0 to 10 Volts can be produced at the output of N2A. 
> This is sufficient for the UCT-108663 oscillator (which seems to be the same 
> as the Oscilloquartz 8663). For the AXIOM75 oscillator, only 0 to 5 volts 
> would be required, so the OpAmp's gain would be reduced to 2 in that case.

I have not been able to figure out what UCT is or was. Currently my
guesses are that it was either a label Oscilloquartz used in the US
or it was a manufacturer that licensed the 8663 design.

BTW: You might want to have a look at the AXIOM130HP which is
a replacement part for the 8663 with the same stability specs
but slightly better phase noise.

Which makes me now wonder, what Axtal did to get this much further
down in noise without compromising aging. Bernd? If you are reading
this, would you mind to shed some light on this question?

> Further, the OpAmp N2B adds an offset to the DAC voltage. For the UCT oven, 
> one would choose a gain of 2 for this OpAmp, such that it produces 5 volts; 
> for the AXIOM oven, the gain would be 1.
> Thus, at C5, the voltage is the average of the output voltages of N2A and 
> N2B which effectively lowers the tuning range of the OCXO, and the full 16 
> bits of the DAC can be used for this narrower tuning range.

If you are using used OCXOs from ebay and similar sources, they might
be quite a bit off in frequncy, so that you might need the whole tuning
range.

> On the lower part of the schematic, I have added a circuit which is very 
> similar to that one I reverse-engineered from a commercial GPSDO. N4 is an 
> ordinary analog switch which has a very low on-resistance (2.5 Ohms). A PWM 
> signal toggles the analog switch. 

I would advice against using a CMOS switch. They are relatively slow and
their timing is not well defined. A better approach would be to use a single
gate inverter that has its power supplied tied to the voltage reference.
As you are working with a 2.5V reference, that gives you the additional
requirement that you have to use a gate that can work with higher input
voltages without latch-up or protection diodes. IIRC the ALVC and LVC
families allow that.

> N5A and N5B are configured as a Sallen-Key lowpass filter with a cutoff 
> frequency around approx. 1 Hz. If a 16bit PWM would be used, the PWM 
> frequency would be around 1.2 kHz; I measured a similar frequency in the 
> commercial GPSDO so I assume that should be sufficient. The Sallen-Key 
> lowpass filters the PWM very effectively.

I recommend not using PWM but instead a delta-sigma modulator.
In the above example, the PWM will give you 1.2kHz/1Hz = 1200 steps -> ~10bit
While a first order delta-sigma gives you 1.5*log_2(1.2kHz/1Hz) = ~15bit.
A second order delta-sigma gives you a factor of 2.5 and thus ~25bits.
Additionally, the spurs (or rather idle-tones in this application)
produced in delta-sigma modulators are higher up in frequency and
of lower magnitude than with PWM. For a GPSDO I would go with either
a 2nd order (is unconditionally stable) or go with one in the 4-10th
order range in order to keep the idle-tones low power and high enough
in frequency to matter very little.

> My first idea was to have the PWM DAC as an alternative to the resistor 
> string - on my PCB, one could populate either the upper part or the lower 
> part and use one of the two DACs. However, I recently found an application 
> note from Jim Williams where he used two DACs and combined their output 
> voltages such that he could effectively achieve a 20bit DAC. And when I read 
> your email again, you suggest also something around 20 bits, so basically I 
> could to the same thing: I could use only a, say, 8 bit PWM (and therefore a 
> quite high switching frequency) and let the Sallen-Key filter produce a 
> variable offset voltage, while the DAC is used only for the fine-tuning. I 
> have not made any sophisticated calculations so far about this, but from a 
> first gutt feeling I'd say that this configuration would also allow for 
> something around 20 bits, no?

While you can get higher resolution by combining two DACs, that depends
on the coarse DAC being low noise and stable as to not compromise the 
fine DAC's gain in resolution. Additionally Jim's Appnote uses a feedback
ADC to calibrate the whole system to actually achieve the 20bits. What you
could do, would be to keep the delta-sigma modulator and use an LTC2410
as feedback. The delta-sigma would provide the short term control an the
LTC2410 could provide you with long term offset compensation. This would
give you sub-ppm/°C drift (offset drift is spec'ed at 10nV/°C and full
scale at 0.03ppm/°C). 
Ie your drift would be the fully dominated by the voltage reference.
You should not use the LTC2410's output without filtering, though,
as there is significant noise on it (0.8ppm RMS @2.5Vref). 

Alternatively, the single-ended LTC2400 might be easier to use, but
does not offer auto-calibration (ie offset and full-scale corrections)
Thus has slightly higher offset-drift (0.02ppm/°C), which is still
much lower than your voltage reference, so shouldn't be an issue.

> In this case, one would populate resistors R3 and R16 and remove R8. The 
> Sallen-Key then should have a gain of 4 for the UCT oven or 2 for the AXIOM 
> oven, and with a 8 bit PWM could do a coarse adjustment of the OCXO voltage 
> while the resistor string DAC would do only the fine tuning. I wonder 
> whether this circuit would even allow 24 bits, but I guess no (at 24 bits of 
> resolution one would possibly take into account nasty things like building 
> of thermocouples on solder joints or mechanical stress of components due to 
> soldering and other stuff I perhaps have never heard of nor I have even 
> thought about ;-) so this is another rabbit hole I'd like to avoid for now).

Yes. This would work. Though you would need more then 8bit for the PWM.
You want to have some overlap between the MSB of the PWM and the LSB of
the DAC to avoid switching from one course-DAC code to another as much
as possible, because you have a ~0.5LSB DNL. Ie each time the coarse DAC
switches, you will have a jump in your output voltage of unknown size.

Yes, you indeed do care about thermocouples. But not as much as you might
think. As I've written before, you want to keep your circuit in a stable
temperature environment. Usual values for EMF are in the order of a few µV
per °C temperature difference. If your board is in a slow moving thermal
environment, then the temperature gradient of your board will be 
approximately constant. Which in turn means that the EMF of your system
will be approximately constant. Ie the offset drift due to EMF will be low.

That said, it is of course a good idea to keep EMF low. You will find
guidelines in how to do that in the datasheets and appnotes of low-drift
opamps from Linear and Analog.


> As a side note, I have foreseen as an option to populate a better voltage 
> reference; the DAC I planned to use has its own internal reference having 
> 2ppm/K. The external reference is N3, having only 1ppm/K.
> 
> Further, I have considered another OpAmp than you suggested; mainly because 
> I have already used that OpAmp in another application where I needed 16 bit 
> ADCs (which worked fine) but also because I have lots of them (and I have 
> not yet known the LTC2057). The AD8626 I use has an offset voltage of around 
> 1mV having 2.5uV/K drift. Both specs seem to be acceptable. The main 
> difference is that your LTC2057 has zero drift - but otherwise, "my" OpAmp 
> seems to have quite similar specs compared to your LTC one, so I guess my 
> choice was at least in the right direction :-) but a zero drift amp would 
> definitely be interesting. However, if the temperature is stable enough, the 
> drift should also not matter too much since it is so low.

The 2.5µV/°C means that you have 1ppm/°C drift (typical!) for an
input voltage range of 0-2.5V. I.e. it's getting close to what the DAC
does. Is this good enough? Most likely. But temperature offset drift
is not the only thing you need to worry about. You also have flicker
noise, which is the chopper of the LTC2057 gets rid off, while the
AD8626 has bascially unspecified flicker noise (the figures with the
noise density are not logarithmic, which means its impossible to tell
what the flicker noise actually is). Whether this actually matters or
not depends on quite a few parameters and cannot be answered easily.
And that's the reason why I choose the LTC2057: It is cheap enough
while doing away with lots of problems I would have to think about
and quantify. I.e. it simplified the design process considerably.

 
> One further note about the long time constant of 1000s or even more:
> I read somewhere that the more modern OCXOs no more use those long time 
> constants; 1000s or more is more appropriate for old ovens like the HP10811A 
> and similar because these ones seem to use a different type of crystal cut - 
> which is bigger and more stable (?) but I don't know too much about this. 
> From what I know from Ulrich Bangert's famous paper I'd also say that around 
> 1000s is appropriate, but tests will be necessary for the particular oven to 
> confirm the correct value. At least for the AXIOM75 oscillator 1000s is not 
> appropriatem because this crystal has really good phase noise but not so 
> good ADEV and therefore some 100s or so would be better for that. For the 
> UCT-108663 I don't know yet.

The time constant is a matter of how stable your OCXO is and what you
use the GPSDO for. Most GPSDOs today are used as time references in cellular
base stations. This means that you want to have as accurate time as
possible. This in turn demands that you have a low time-constant
(the time constant is the knob which tunes between the accurate frequency
vs accurate time trade-off). And if you have a short time-constant,
you don't need a very stable OCXO (not accounting for hold-over),
which saves a lot of money.

You are planing to use an 8663, which is one of the more stable OCXO
out there. To make full use of it, you do want to have a long time
constant.... unless you care about ns precise time transfer... but then
there are better suited approaches there.


			Attila Kinali


-- 
<JaberWorky>	The bad part of Zurich is where the degenerates
                throw DARK chocolate at you.




More information about the Time-nuts_lists.febo.com mailing list