Low-distortion Audio-range Oscillator

Yes, that is what I had in mind but I plan to do it much like the time base of an oscilloscope.
The idea is to have 12 switched frequencies, each of which can be individually calibrated and optimally trimmed for minimum distortion and noise.
That should provide excellent performance for the spot frequencies needed to check any reasonable amplifier.
Then to have a selectable control that sweeps around that frequency, just like my old CRO.😉
That adds flexibility but is reasonably simple and each sweep does not move too far from optimally trimmed so performance should remain excellent.
I don't actually need sweep over a decade but it is intuitively comfortable.
Similarly I plan to keep a 1,2,5,10,20,50... frequency switch pattern for consistency with my other instruments, even if 50 Hz is a bit problematic to check distortion in a 50 Hz mains power country like Australia.
Because I can always retune a little if I need to.

All seem reasonable?



No, I want distortion sub PPM, so thanks for the schematic but it's not close.

Best wishes
David

Hi David,

This is a sound approach, 1,2,5 per decade, plus, I would recommend a 10 on each decade. So you end up with 4 switch positions for the ranges. If I understand you correctly. Then the continuous vernier with an approximate 2:1 continuous frequency sweep. The latter still requires you to use a very good dual pot with good tracking between settings. The biggest cost and hassle still remains the tuning components and mechanism.

Your sub-ppm requirement is definitely not pedestrian. I thought from what you had said of what you needed was something like below -100 (0,001%) all the way up to 20kHz. The oscillator in my THD analyzer does about -106 at 20kHz and better than -110 at 1kHz. It may be better, because these numbers are the complete analyzer back-to-back. Quite awhile ago I looked closely at the oscillator itself using a twin T, but I don't have those numbers in front of me. With some tweaks it can probably do quite a bit better.

The cost and simplicity of my oscillator is hard to beat, being a straightforward SVO with a straightforward agc circuit. Good op amps are cheap and you don't need a sample-hold or other sophisticated agc to get close to or below 1ppm (-120) at ikHz. Again, at these distortion targets, the biggest hassle is how you tune it, especially if you want any form of continuous tuning.

Cheers,
Bob
 
If you really do not need a wide range of frequencies to test with..... there is Victor's osc via eBay. 4 of those ready built into a box would do for testing in most cases. 100Hz, 1KHz, 10KHz and 20KHz (IM). You can do IM which you cannot do with your single osc approach. A bonus.
Not cheapest but not the most expensive. You could add an osc as you can afford them.


THx-RNMarsh
 
Last edited:
I would like to make the point of the difference between an oscillator and a sine wave generator.

So far the discussion has been about oscillators and the need not only to use extra care and high performance parts but also the design approaches to critical issues such as gain control.

I suspect that the current best approach has now shifted to the DSP domain.

One can construct a sine wave generator that not only produces a sine and optionally a cosine wave at a target frequency but also the sine and cosine at two, three, four etc times the frequency. Then by monitoring the actual final output and using the sine cosine harmonics in vector amplifiers to determine the level and phase of the distortion products. The correction signals can then be adjusted in real time to cancel.

The basic approach is to take a sample of the output and multiply that by say the second harmonic sine and seperately by the second harmonic cosine. The amplitude would be the distortion level and the ratio between the two would give the phase information. The mixing the second harmonic sine and cosine in the right ratio and attenuating it to the right level it could be added to the output to cancel the distortion.

Now this would require the fundamental signal D/A converter to be if high quality say 18 real bits, but the harmonic ones could be lesser resolution say 16 or even 14 bits.

Right now you could assemble such a device out of off the shelf DSP vector amplifiers and do the sine correction manually.
 
Last edited:
Dave you can also tune using T networks between the integrators. This might work better for
the AD797 because the you can maintain a near constant noise gain og the integrators by making the output impedance of the T constant. You would choose a value for the integrator input R at the highest range frequency and then tune down. You can also tune by placing a voltage gain element before each integrator or by controlling the current into each integrator.

Another formula for tuning is f = 1/(2piC/I)
 
Answer to a PM. Synchronous sampling at the harmonic frequency will average out noise including the fundamental.

A calibration mode may be used to get the correction parameters and then store them.

The same error correction technique may be used to record the properties of the device under test.

I use silica gel bags in the bottom if my critical equipment to damp vibration and reduce the effects of humidity on any film capacitors.

In very fussy gizmos I have gone to peltier devices to keep the temperature constant. Sort of!
 
I suspect that the current best approach has now shifted to the DSP domain.

The basic approach is to take a sample of the output and multiply that by say the second harmonic sine and seperately by the second harmonic cosine. The amplitude would be the distortion level and the ratio between the two would give the phase information. The mixing the second harmonic sine and cosine in the right ratio and attenuating it to the right level it could be added to the output to cancel the distortion.

Now this would require the fundamental signal D/A converter to be if high quality say 18 real bits, but the harmonic ones could be lesser resolution say 16 or even 14 bits.


More ways to skin a cat..... which way will have both accuracy and absolute lowest thd?
With dsp, are we back to trying to measure 24 bit of an ADC/DAC with about the same level of performance in the source. When instead, we would need to be better than what we are measuring (DUT) by a fairly wide margin - >10dB.


-RNM
 
Last edited:
More ways to skin a cat..... which way will have both accuracy and absolute lowest thd?
With dsp, are we back to trying to measure 24 bit of an ADC/DAC with about the same level of performance in the source. When instead, we would need to be better than what we are measuring (DUT) by a fairly wide margin - >10dB.

-RNM


This DSP generated sine wave is from SRS. The spec's are about the same as a sound card..... http://www.thinksrs.com/downloads/PDFs/Manuals/DS360m.pdf
 
...
I suspect that the current best approach has now shifted to the DSP domain.
I'm interested in this, think there could be something to it, and I have an idea or two (not already mentioned here) along this line.

But I'm thinking we should start a separate thread on low-distortion sinewave generation by digital means. With separate threads, we could have some "friendly competition" on the best way to get the lowest distortion sinewave.
 
Hi David,

This is a sound approach, 1,2,5 per decade, plus, I would recommend a 10 on each decade. So you end up with 4 switch positions for the ranges. If I understand you correctly. Then the continuous vernier with an approximate 2:1 continuous frequency sweep. The latter still requires you to use a very good dual pot with good tracking between settings. The biggest cost and hassle still remains the tuning components and mechanism.

Your sub-ppm requirement is definitely not pedestrian. I thought from what you had said of what you needed was something like below -100 (0,001%) all the way up to 20kHz. The oscillator in my THD analyzer does about -106 at 20kHz and better than -110 at 1kHz. It may be better, because these numbers are the complete analyzer back-to-back. Quite awhile ago I looked closely at the oscillator itself using a twin T, but I don't have those numbers in front of me. With some tweaks it can probably do quite a bit better.

The cost and simplicity of my oscillator is hard to beat, being a straightforward SVO with a straightforward agc circuit. Good op amps are cheap and you don't need a sample-hold or other sophisticated agc to get close to or below 1ppm (-120) at ikHz. Again, at these distortion targets, the biggest hassle is how you tune it, especially if you want any form of continuous tuning.

Cheers,
Bob

There is another approach to tuning a full decade that I forgot to mention. This approach uses a dual gang linear pot that should be of very high quality. In front of each integrator you place an active Baxandall volume control circuit that is modified to cover only one decade. The beauty of this is that a linear pot gives you a good approximation to a logarithmic gain control function as a function of rotation. Log frequency vs linear rotation is very desirable in an oscillator.

This circuit takes only one op amp per control and does not load the pot wiper. It is not sensitive to the absolute value of the pot, but the sections should still track well. Mis-tracking will cause the effective gain of the integrators to not match. This is not fatal to performance of an SVO, but may degrade operation in some way (especially if a quad-phase rectifier is used for agc).

The circuit is inverting, with the op amp pos input grounded and the pot wiper connected to the neg input. The input is connected to one end of the pot and the output of the op amp is connected to the other end, each connection with a series resistor to set the endpoint gain.

Of course, this approach does put two additional op amps in the SVO loop, but extremely low distortion op amps are available and the distortion from the op amps in the loop is not always dominant (else why would we fool around with more complex fancy agc control circuits like S/H and multipliers). Distortion harmonics from these op amps are knocked down by 6dB/octave by the subsequent integrators.

Cheers,
Bob
 
There is another approach to tuning a full decade that I forgot to mention. This approach uses a dual gang linear pot that should be of very high quality. In front of each integrator you place an active Baxandall volume control circuit that is modified to cover only one decade. The beauty of this is that a linear pot gives you a good approximation to a logarithmic gain control function as a function of rotation. Log frequency vs linear rotation is very desirable in an oscillator.

This circuit takes only one op amp per control and does not load the pot wiper. It is not sensitive to the absolute value of the pot, but the sections should still track well. Mis-tracking will cause the effective gain of the integrators to not match. This is not fatal to performance of an SVO, but may degrade operation in some way (especially if a quad-phase rectifier is used for agc).

The circuit is inverting, with the op amp pos input grounded and the pot wiper connected to the neg input. The input is connected to one end of the pot and the output of the op amp is connected to the other end, each connection with a series resistor to set the endpoint gain.

Of course, this approach does put two additional op amps in the SVO loop, but extremely low distortion op amps are available and the distortion from the op amps in the loop is not always dominant (else why would we fool around with more complex fancy agc control circuits like S/H and multipliers). Distortion harmonics from these op amps are knocked down by 6dB/octave by the subsequent integrators.

Cheers,
Bob

http://www.diyaudio.com/forums/equi...-bob-cordells-thd-analyzer-7.html#post4638633
 
RNM

The idea is that you don't need a 24 bit A/D. As you are already filtering out the fundamental and only looking at each harmonic you should be able to produce a sine wave clean enough to test the best A/Ds!
Its a great idea but you still need the dynamic range in your adc or the front end is overloaded by the fundamental. Shibasoku uses that technique to get the level and phase of the harmonics, but after the notch.
I can speculate on tricks like zero conversion but it rapidly gets very complex.
 
Easier to you a filtered dac to get there. The best dac chips are in the -120dB+ range already so a tracking active filter makes some sense. The SR box Richard mentioned is an old design limited by dacs available. Both ESS an AKM have significantly improved parts now,

Sent from my LG-V496 using Tapatalk
 
Its a great idea but you still need the dynamic range in your adc or the front end is overloaded by the fundamental. Shibasoku uses that technique to get the level and phase of the harmonics, but after the notch.
I can speculate on tricks like zero conversion but it rapidly gets very complex.

Demian,

As the sampling is synchronous you can pick up a few bits of range for free. As you have the ability to average over long periods of time and know the characteristics of your target you get a few more bits of final resolution.

You do need to avoid clipping. Vector amplifier principles allow finding signals well below the dirt.

With enough settling time you could use as few as two D/As and one A/D.

The idea is to monitor at the output terminals so as to correct for all circuitry distortion. Even the output buffer and attenuator.
 
Last edited:
Management at most semiconductor companies would agree with you, however the actual numbers tell a different story. A set of reticles are really not that expensive (or as I say, "we've spent more on dumber things") and in my opinion few investments in the semiconductor business have a higher ROI than a set of masks. Maybe the only thing with higher ROI is hiring good people.

Improvements were made to the JFETs on the inputs of the OPA1642 and OPA827 after the initial silicon showed some nonlinear input impedance characteristics. The current parts show excellent performance as I have posted elsewhere. No changes were made to the 211/1611 parts.

There is a difference between the audio and industrial versions of the OPA211 / OPA1611 and OPA140 / OPA1641 other than the fact that the audio versions are not trimmed for offset and drift. The compensation on the audio parts was slightly tweaked to improve THD but with the tradeoff of capacitive load stability being slightly reduced. Really it's just a change in a single cap value.

Thanks very much, that's good to know!

Any estimate for the mask cost of these opamps? When writing my comment I was influenced by a discussion of 14 nm FinFET cost which is probably another league.

Samuel
 
Thanks very much, that's good to know!

Any estimate for the mask cost of these opamps? When writing my comment I was influenced by a discussion of 14 nm FinFET cost which is probably another league.

Samuel

As Scott Wurcer says, op amps are not going to be 14 nm CMOS processes, although 180 nm analog CMOS is quickly becoming the norm rather than 0.5 or 0.65 um processes. Aside from feature size, a major cost driver is simply the number of masks required on a given process or for a certain design (2 op amps on the same process may require a different number of masks).

With that being said, I can't really give specific numbers for mask set costs, but it often makes financial sense to make a new mask set for a product if it delivers better performance or reduces price (e.g. through die area reduction).
 
This is a sound approach, 1,2,5 per decade, plus, I would recommend a 10 on each decade...If I understand you correctly.

I don't think you do. I do not plan to have a frequency selection switch and a decade multiplier as you did.
Just one simple switch to choose frequency, like a CRO timebase, as I said.
This means each frequency can be individually trimmed and optimized, as opposed to a trim for each decade.
So calibration and distortion should be a little better.

Your sub-ppm requirement is definitely not pedestrian... what you needed was...below -100 (0,001%) all the way up to 20kHz.

I would like to test amplifiers with less 0,001% at 20 kHz.
So ideally the oscillator would be 10 times better than that, hence sub PPM.
Viktor claims 0,5 PPM for his latest version 10 kHz oscillator and that seems believable.
He uses excellent but economical op-amps so there is perhaps even a bit of room for improvement with only a small cost increase.
Glen Kleinschmidt has also done a similar oscillator at about this level.
This is a level that Samuel also thinks is achievable and within reason.

The cost and simplicity of my oscillator is hard to beat

Yes, I think so too😉 I plan an SVO similar to yours but with sweep, so - more like a Tek 505 really, but with better op-amps and hopefully a better leveler.
Add a Distortion Magnifier and sub 120 dB harmonics are well within reach of a decent sound card and FFT.
The Distortion M. is the key to make the whole system affordable because it means I can use mass-market hardware and software for the back end and benefit from their economies of scale.
Expensive equipment is nice but there's a certain satisfaction to find solutions that exploit cleverness and not cash.
So thanks for the DM😉

Best wishes
David
 
I do not plan to have a frequency selection switch and a decade multiplier as you did. Just one simple switch to choose frequency, like a CRO timebase, as I said. This means each frequency can be individually trimmed and optimized, as opposed to a trim for each decade. So calibration and distortion should be a little better.

I'm not sure this qualifies as cleverness and not cash 🙂. With 4 decades, each with 3 frequencies, your scheme needs 12 trimmers. Alternatively you could use orthogonal trims for range and frequency (one trimmer each for 10 Hz, 100 Hz, 1 kHz and 10 kHz, and one trimmer each for e.g. 2 kHz and 5 kHz). This gives 6 trimmers. IME, the frequency deviation from such an orthogonal scheme is very low (the remaining error is related to both Q enhancement and leveling loop nonidealities).

If you prefer one-knob operation, a bit of discrete logic should handle the switching of the trimmers.

Samuel