A saw core VCO is a circuit creating a saw-tooth signal by charging a capacitor. As the capacitor charges, the voltage at one end of the capacitor raises. A comparator monitors this voltages, and when it exceeds a given value, it causes a transistor or switch to close, rapidly discharging the capacitor and bringing back the voltage to 0. You control the frequency by controlling how much current you send to charge the capacitor (small current = slowly increasing ramp = low frequency). Other waveforms are obtained by messing up with the sawtooth - for example sending it to a comparator to get a square ; rectifying / mirroring parts of it to get a triangle. What make VCOs fidly is the generation of the charging current... To cover the whole audio range, a VCO must generate a charge current 1000 times smaller for low frequency notes (say 10 Hz) than for high frequency notes (10kHz). This will mean, for the lower notes, tiny, tiny currents which can be affected by all kind of adverse effects (offsets, parasitic noise etc.). This also means that we need to either a/ restrict the range of the VCO to a smaller range of frequencies (Taurus, Minitaur) to make problems go away; b/ use very high quality linear current sources; c/ use exponential current sources - a circuit hard to build in a way that is not temperature sensitive.

A variation on this is the tri-core VCO in which the polarity of the charging current is toggled every time the charge at the capacitor exceeds a threshold in absolute value. There are technical advantages for doing this, in terms of precision - and techniques like FM are easier to get right. Drawback is that the circuitry is a bit more complicated, and that it's not always easy to get a perfect sawtooth out of a triangle (and there are applications for which the sawtooth quality is the key argument...)


A DCO (as used on the Junos, all the DSI products, probably the Elektron A4)... is exactly the same thing as a saw core VCO except that the signal that causes the sawtooth to reset to 0 is not produced by monitoring the sawtooth level, but by a digital timer circuit (either a separate chip like the 8253, or more likely part of the hardware found in a microcontroller) sending pulses at the target frequency. This adds stability and precise control of the frequency - since we are no longer relying on the precision of the circuit generating the charge current - but makes CV control harder (because there's now a microcontroller or other digital stuff in the loop). Other waveforms are derived just as on a saw core VCO.

A DCO is not a full-analog VCO in which the control voltage is generated by digital circuitry.

Digital oscillators

Under the broad category of "digital oscillators" we find many different techniques, to the point that the term "digital oscillator" is quite meaningless. They can be broadly categorized depending on:

1/ The clocking scheme they use:

  • A very high clock rate (for example, the oscillators in a SID chip, the DOC chip of the ESQ-1) - this more or less eliminates aliasing problems.
  • A variable clock rate (PPG wave, Prophet VS, Synclavier). These techniques do not cause the "harmful" kind of aliasing (mirror images of frequencies folding back into the audible range, possible as lower frequency partials than the fundamental), but they can cause plenty of high-frequency imaged harmonics - which sound metallic and gritty.
  • A fixed clock rate (ROMplers, Shruthi, software). These techniques require particular care in the waveform generation code to avoid aliasing - otherwise, things can sound nasty.

2/ How the waveform is generated:

  • Plain lookup table, with or without interpolation (wavetable synths, ROMpler)
  • Actual code computing the waveform (Shruthi, software) - potentially using very complex computational tricks to eliminate aliasing (band-limited synthesis).

3/ How the samples are converted back into the analog domain:

  • Resistor string DACs
  • PWM
  • Sigma-delta DACs

Each of those might have its own flavor of imperfections...

So to answer your question, a DCO causes no aliasing, since it does not even use sampling - it's on par with a pure analog VCO here. As for digital oscillators, there are so many flavors that it's better to figure out the implementation first... High-quality band-limited waveform generation code running on a desktop computer and sent to a high-quality sigma-delta will show no trace of aliasing; but a fixed clock rate talking Barbie with no anti-aliasing filters in the recording and playback chain... not so!