[sdiy] How DCOs work

Richie Burnett rburnett at richieburnett.co.uk
Mon Oct 10 19:42:24 CEST 2016


> It'd be a lot easier just to generate the waveform in DSP and output 
> through
> an audio DAC.
> If you're going to change the ramp current during the cycle, you'd need
> band-limiting etc. to avoid artefacts there, so it would make more sense
> just to go DSP and be done with it.

Totally agree.  A good Virtual Analogue oscillator algorithm, models VCO 
behaviour correctly without any of the modulation issues associated with DCO 
operation.

> A free running hardware timer will have a very precise period, but as soon
> as you start programmatically changing the registers mid-cycle, you're 
> going
> to run into the possibility of making the change at a time that will
> introduce jitter or other instability.

Not to mention the possibility of inadvertently modifying the terminal count 
of the timer to a value that the timer has already counted beyond!  In 
micro's that implement PWM generation hardware the "terminal count" or PWM 
period register is usually double-buffered so that it is always updated at 
the end of a period.  This physically prevents you from modifying the 
terminal count "mid cycle".

-Richie, 




More information about the Synth-diy mailing list