A numerically controlled oscillator or digitally controlled oscillator (DCO) is an electronic system for synthesizing a range of frequencies from a fixed timebase. Unlike a phase-locked loop-based analog frequency synthesiser, it is capable of synthesizing a very wide range of precise frequency ratios. However, it is limited to producing frequencies that are less than half the timebase frequency, due to Nyquist's theorem. The name is by analogy with "voltage-controlled oscillator".
Note: the term "digitally controlled oscillator" has also been used to describe the combination of a voltage-controlled oscillator driven by a control signal from a digital-to-analog converter. This article is about the more recent design.
A DCO generally consists of a digital waveform generator that increments a phase counter by a per-sample increment. This phase is then looked up in a waveform table to create a sinewaveform. If an analog output is desired, this waveform is sent to a digital-to-analog converter to produce an analog waveform, and then filtered by an analog filter to remove aliasing and DAC artefacts. Alternatively, the digital waveform may be used directly as an input for further digital signal processing.
In this way, the frequency ratios that can be produced are limited only to the precision of the arithmetic used to compute the phase. At the same time, DCOs are phase- and frequency-agile, and can trivially be modified to produce phase-modulated or frequency-modulated outputs, or quadrature outputs.
Note: the design as laid out here is simplified for clarity, and can be improved in several ways, including the use of better digital filters and digital waveform generators.
DCOs should be the channel for providing advice, support and technical assistance on all aspects of computing equipment for which their department is responsible.
DCOs should be responsible for the procurement of software for department specific uses (eg for use in practical classes) and for integration of software with the University network, where appropriate.
DCOs should be the named points of contact for general communications between the Department and the Computing Service, and should disseminate information from the Computing Service within their departments.