Low-distortion Audio-range Oscillator

Disabled Account
Joined 2012
And one-bit can be super fast. additional filtering of noise et al can be easily implemented.
I dont know how to do it, but I am sure others do. I can live with the circuits here for a few spot freq. But wouldn't be be great if ---- It's just a matter of time before its done... probably sooner than later - as all the pieces exist in some form. Thx - RNM
 
Last edited:
Member
Joined 2004
Paid Member
SACD has a lot of HF noise from the noise shaping. The internal technology of SACD is very similar to that of all the current DACs usually something the 4 bits oversampling with lots of tricks to make it all work. They are very good but only to the -100 dB level. The ADC's are much better (see above).

Depending on what you are testing a good sound card and RMAA would be more than adequate with -100 dB distortion and measurements to 90+ KHz. Few real audio chains are that good or even close in practice.
 
A kind of very low level (and very low freq) amplitude modulation?

In the cases I've seen it wasn't strong enough to be observed directly by measuring oscillator amplitude stability, but yes the control voltage showed some random jumps/fluctuations.

I will try to run this test tomorrow if I manage to properly shield the osc. I would assume hum in the control loop could make things much worse than they actually are, right?

Hum would show up as +-50 Hz sidebands (in Europ). IIRC, my current S & H based level detector shows these products somewhere at the -130/-140 dB level without shielding (other than a ground plane). A standard rectifier detector might be even less sensitive, as there's no high Z node.

Does the VCA limit the performance? They seem an almost ideal solution to the AGC issue.

Ideal is different... The multiplier should be four quadrant (VCA is only two quadrant) and have a reasonably linear control law (VCA is linear-in-dB). You can fix these issues by limiting the control voltage range and some external circuitry for four-quadrant operation. For a 1 kHz fixed frequency design it might not matter, but for variable frequency, particularly above 10 kHz, you might run into trouble with just a basic VCA.

I have a THA2181-based design which I could post if interested.

Samuel
 
I wish I had seen this. A nice overview of the thermally stabilized oscillators, including tungsten filaments. It explains my hours of time spent fiddling.

Amplitude stability and distortion in thermistor-controlled oscillators This paper appears in:
Electrical Engineers, Proceedings of the Institution of
Date of Publication: August 1973
Author(s): Taylor, P.L.
University of Salford, Department of Electrical Engineering, Salford, UK
Volume: 120 , Issue: 8
Page(s): 921 - 926
 
Last edited:
Has anyone heard of this before?

Pre AP cleverness.

4.1 Method of measuring distortion
To provide the necessary sensitivity and accuracy, a null
method was employed. The oscillator output voltage was
amplified and clipped, to produce a square-wave voltage of
known harmonic content, phase locked to the oscillator. The
oscillator voltage was also separately phase-shifted by 90°
in an integrator before amplifying and clipping, to yield
another square wave in quadrature with the first. Measured
fractions of the two square waves were then subtracted from
the oscillator voltage, balance being detected by a selective
amplifier tuned to the harmonic of interest. By this means
the inphase and quadrature fractional-harmonic content of
the oscillator voltage could be measured to a discrimination
of about 2 parts per million and with a relative accuracy of
1%.
 
So it's an analog way of measuring "real" and "imaginary" components of a harmonic, and of course from these the magnitude (what we're usually most interested in) and phase angle can be calculated. With the square wave sources, it obviously only works on odd harmonics.

I haven't heard of that method specifically, but there was this guy named Fourier ...
 
Yes, I would like to compare.

It's just a multiplier, not a full oscillator. But it's easy to incorporate. Here's the schematic:

http://www.sg-acoustics.ch/forum/THAT2181_multiplier_r1.pdf

As the VCA has inverting response, four-quadrant operation is simply derived by paralleling it with a resistor (R1). R3/R5 divide the control voltage to a useful range. R7 sets the VCA core bias, at almost twice the recommended datasheet value to reduce noise another few dB. R9 trims 2nd harmonic distortion. A FET opamp is chosen as transimpedance stage, as the feedback network has relatively high impedance. A cheaper opamp would probably do, e.g. OPA1641.

The following graph shows the measured signal gain (multiplier input to output) vs. control voltage:

THAT2181_multiplier_gain.bmp


The mildly exponential control law characteristics is visible in this graph.

To design the leveling loop gain and to estimate the effect of control voltage ripple we need to know the scaling factor of the multiplier, i.e. in how much output voltage change a given control voltage change results. This is straightforward to calculate from the above graph by dividing the derivative of the output voltage by the derivative of the control voltage (for the derivatives simple differences between two data points suffice). This gives the following graph:

THAT2181_multiplier_scaling_factor.bmp


An ideal multiplier would show a constant value, but the 3x range should be acceptable for most oscillator designs.

The next graph shows the measured distortion of the multiplier at 1 kHz:

THAT2181_multiplier_distortion.bmp


Note that there are numerous ways to misinterpret this data. To calculate the effective distortion contribution at the oscillator output we first have to decide what oscillator topology is used. I presume a state-variable filter as the most promising one for low distortion. It has the significant benefit of attenuating the 2nd harmonic of the multiplier by almost 10 dB, and the 3rd harmonic by 18 dB because of the cascade of two low-pass filtering integrators.

As a next step, the nominal oscillator level (which appears at the input of the multiplier) should be fixed. For these measurements I've used +10 dBu, which is a typical value.

Then we consider how much the multiplier is decoupled, i.e. how much attenuation of its output is applied when summing it with the main oscillator signal. Basically as much as possible is desired, however there are large-signal limits as the multiplier needs sufficient authority to level the oscillator and to provide fast settling. For a variable frequency oscillator, a decoupling of 4x (12 dB) should be about right for this multiplier. A single frequency oscillator might use more.

Now we need to appreciate that, once the oscillator amplitude has settled, the control voltage is (for a well-designed oscillator) probably in the range of +-2 V. The wider range is only used during amplitude settling, and hence of no relevance for oscillator distortion performance.

So the worst-case 2nd harmonic within this narrow center range is about -102 dBu (note that distortion is measured in absolute quantities, not relative to the fundamental!). The multiplier decoupling attenuates this to -114 dBu; the state-variable filter pushes this even further to -124 dBu. Relative to the oscillator level, distortion is thus at -134 dB. Doing the same calculation for the 3rd harmonic gives -138 dB.

Distortion is to a good extent independent of frequency within the audio frequency range.

Also important is output noise:

THAT2181_multiplier_noise.bmp


Output noise is of course also attenuated by multiplier decoupling and the low-pass action of the state-variable filter. The latter is not easily calculated, but 3 dB is a conservative estimate for most conditions. So within the +-2 V control voltage range, multiplier noise contribution is below -123 dB relative to the fundamental of +10 dBu, and within a 22 kHz measurement bandwidth.

As shown, the multiplier has been optimized for best THD+N performance (i.e. distortion and noise). If low distortion is all you're after, the internal VCA operating level can be further reduced by scaling R1, R2 and R4 in proportion upwards. As a first order estimate, noise increases and 2nd harmonic decreases proportionally to these resistor values.

If you're working on your own oscillator/multiplier, I can only recommend that you run such measurements too. For the control law only basic equipment is needed, and the noise and distortion stuff can be done with a soundcard etc. Without this information, multiplier design remains plain guesswork. Get to know your multiplier before you even think to let your oscillator oscillate!

Samuel
 
It's just a multiplier, not a full oscillator. But it's easy to incorporate. Here's the schematic:

http://www.sg-acoustics.ch/forum/THAT2181_multiplier_r1.pdf

As the VCA has inverting response, four-quadrant operation is simply derived by paralleling it with a resistor (R1). R3/R5 divide the control voltage to a useful range. R7 sets the VCA core bias, at almost twice the recommended datasheet value to reduce noise another few dB. R9 trims 2nd harmonic distortion. A FET opamp is chosen as transimpedance stage, as the feedback network has relatively high impedance. A cheaper opamp would probably do, e.g. OPA1641.

The following graph shows the measured signal gain (multiplier input to output) vs. control voltage:

THAT2181_multiplier_gain.bmp


The mildly exponential control law characteristics is visible in this graph.

To design the leveling loop gain and to estimate the effect of control voltage ripple we need to know the scaling factor of the multiplier, i.e. in how much output voltage change a given control voltage change results. This is straightforward to calculate from the above graph by dividing the derivative of the output voltage by the derivative of the control voltage (for the derivatives simple differences between two data points suffice). This gives the following graph:

THAT2181_multiplier_scaling_factor.bmp


An ideal multiplier would show a constant value, but the 3x range should be acceptable for most oscillator designs.

The next graph shows the measured distortion of the multiplier at 1 kHz:

THAT2181_multiplier_distortion.bmp


Note that there are numerous ways to misinterpret this data. To calculate the effective distortion contribution at the oscillator output we first have to decide what oscillator topology is used. I presume a state-variable filter as the most promising one for low distortion. It has the significant benefit of attenuating the 2nd harmonic of the multiplier by almost 10 dB, and the 3rd harmonic by 18 dB because of the cascade of two low-pass filtering integrators.

As a next step, the nominal oscillator level (which appears at the input of the multiplier) should be fixed. For these measurements I've used +10 dBu, which is a typical value.

Then we consider how much the multiplier is decoupled, i.e. how much attenuation of its output is applied when summing it with the main oscillator signal. Basically as much as possible is desired, however there are large-signal limits as the multiplier needs sufficient authority to level the oscillator and to provide fast settling. For a variable frequency oscillator, a decoupling of 4x (12 dB) should be about right for this multiplier. A single frequency oscillator might use more.

Now we need to appreciate that, once the oscillator amplitude has settled, the control voltage is (for a well-designed oscillator) probably in the range of +-2 V. The wider range is only used during amplitude settling, and hence of no relevance for oscillator distortion performance.

So the worst-case 2nd harmonic within this narrow center range is about -102 dBu (note that distortion is measured in absolute quantities, not relative to the fundamental!). The multiplier decoupling attenuates this to -114 dBu; the state-variable filter pushes this even further to -124 dBu. Relative to the oscillator level, distortion is thus at -134 dB. Doing the same calculation for the 3rd harmonic gives -138 dB.

Distortion is to a good extent independent of frequency within the audio frequency range.

Also important is output noise:

THAT2181_multiplier_noise.bmp


Output noise is of course also attenuated by multiplier decoupling and the low-pass action of the state-variable filter. The latter is not easily calculated, but 3 dB is a conservative estimate for most conditions. So within the +-2 V control voltage range, multiplier noise contribution is below -123 dB relative to the fundamental of +10 dBu, and within a 22 kHz measurement bandwidth.

As shown, the multiplier has been optimized for best THD+N performance (i.e. distortion and noise). If low distortion is all you're after, the internal VCA operating level can be further reduced by scaling R1, R2 and R4 in proportion upwards. As a first order estimate, noise increases and 2nd harmonic decreases proportionally to these resistor values.

If you're working on your own oscillator/multiplier, I can only recommend that you run such measurements too. For the control law only basic equipment is needed, and the noise and distortion stuff can be done with a soundcard etc. Without this information, multiplier design remains plain guesswork. Get to know your multiplier before you even think to let your oscillator oscillate!

Samuel

Hi Samuel,

This is an excellent explanation of the tradeoffs involved in the choice and design of the AGC element, especially in regard to distortion and noise. This is largely the process I went through for the oscillator in my THD analyzer, which used a JFET element in an arrangement that resulted in a 4-quadrant multiplier characteristic with a similar approach. The tradeoff was pretty much the same. Use the least AGC authority as possible to keep down the injection of noise and distortion from the AGC circuit, then choose the operating voltage level of the AGC element to make the best tradeoff between distortion and injected noise.

The tradeoff result is limited by a type of figure of merit for the AGC element. It is somewhat like the product of its distortion and noise, although this is a bit of a simplification because the order of the distortion being created by the element may complicate the attempt to define a more accurate FOM. If you try to reduce the distortion by reducing the operating level of the AGC element, the noise injected will tend to increase because you have to reduce the injection loss to maintain the same necessary level of authority. Similarly, if you try to reduce the noise injected by operating the AGC element at a higher level and graeter injection loss, the distortion in the element goes up.

The interesting question here is how the FOM for the JFET arrangement compares with that of other more active multiplier elements like the VCA. For example, a long time ago I convinced myself that the 4-quadrant multipliers available at the time had too much distortion or too much noise, and could not beat the JFET.

Cheers,
Bob
 
As shown, the multiplier has been optimized for best THD+N performance (i.e. distortion and noise). If low distortion is all you're after, the internal VCA operating level can be further reduced by scaling R1, R2 and R4 in proportion upwards. As a first order estimate, noise increases and 2nd harmonic decreases proportionally to these resistor values.

A short correction to this paragraph from my post #797 (this number should have been Scott's!): I think the absolute level of the 2nd harmonic decreases in proportion to the square of the resistor values. Make R1, R2 and R4 twice as large, and 2nd harmonic will drop by 12 dB. 3rd harmonic will reduce by 18 dB.

R1 = R2 = 110k and R4 = 30k would propably be a very sensible change to my circuit, and enable well below -140 dB multiplier distortion contribution, with still excellent noise. If I find time I'll try this out.

The interesting question here is how the FOM for the JFET arrangement compares with that of other more active multiplier elements like the VCA. For example, a long time ago I convinced myself that the 4-quadrant multipliers available at the time had too much distortion or too much noise, and could not beat the JFET.

I have yet to run measurements on a JFET-based multiplier, but simulation results confirm that indeed it is a surprisingly good approach. Particularly if we consider it's low cost and complexity.

Samuel
 
Last edited: