[sdiy] How does a DCO work?

Richard Wentk richard at skydancer.com
Thu Dec 30 07:26:30 CET 2004


At 05:51 30/12/2004, Johannes Öberg wrote:
> > Digital signals rather than analog signals, i.e. a control voltages,
> > control the frequency of the oscillators.
>
>Yes obviously, but the early DCO's weren't 'digital oscillators' (that
>is, real-time rendering via D/A), were they? How did they control the
>frequency of the (I assume) VCO 'inside' ?

The simple answer is a DCO is just a counter. Assuming a high enough sample 
rate and a wide enough word width, you can synthesize almost any frequency 
to order. If you run the counter through a lookup ROM you can define your 
waveshape ad lib too.

The more complicated answer is that some DCOs use the counter as a trigger 
for an analogue process which creates the final waveshape - typically an 
integrator or differentiator. This involves all kinds of interesting 
details, not least of which is how you keep the waveform amplitude constant 
with frequency. These designs are more like hybrid oscillators than pure 
digital oscillators, but they're usually called DCOs because the frequency 
is still specified and controlled digitally, even though the waveform 
itself is created using analogue circuitry.

There's an even more complicated answer for an all-digital environment 
which includes the detailed workings of phase accumulators and bandwidth 
limiting to prevent aliasing, but that's probably more than you want or 
need to know at this point.

There have been some workable and efficient DCO designs suggested here in 
the past. If you search through the archives you should be able to find the 
details.

Richard








More information about the Synth-diy mailing list