logoalt Hacker News

jacquesmtoday at 3:11 PM1 replyview on HN

Yes, the typical way this works is that the lookup table is programmed during device calibration and that the microcontroller has a temperature sensor attached and uses a varicap to drive one of the two capacitors attached to the crystal (usually through a coupling capacitor to avoid loading up the circuit too much).

This is nice because it will help to keep the crystal on track but a lot depends on the time constants of the control circuit whether or not the Allan Deviation of the circuit as a whole is going to be acceptable across all applicable timescales.

As a domain this is both fascinating and far more complex than I had ever imagined it to be, but having spent the last couple of months researching this and building (small) prototypes I've learned enough to have holy respect for anything that doesn't have an atomic clock in it and that does better than 10^-7. That is a serious engineering challenge especially when you're on a tiny budget.

If you can use a GPS disciplined oscillator then that's one possible solution, but there to you may see short term deviations that are unacceptable even if the system is long term very precise.


Replies

aviantoday at 4:31 PM

Is there really a microcontroller in there? As in a general purpose microprocessor core executing machine code in ROM? Any references for that?

I find it baffling that this would be cost effective. Maybe by dropping in a CPU core and software you save some design cost vs. a more specialized IC. But it must be more expensive per unit to manufacture in a process where you can fit in all those transistors. And these things are manufactured in such quantities that design costs must be a pretty minimal part of the final part price.

This used to be implemented as a purely analog control loop, i.e. opamps and such. After all TCXOs predate the age of ubiquitous CPUs by decades. Even if there is a need for a factory-programmed temperature calibration curve, there are techniques where it can be implemented in a pure analog way, or in a dedicated digital circuit where the transistor count will be much lower vs. a general purpose CPU core.

show 2 replies