Circuits that do a job, and the range they do it over

The gain a tolerance demands

A Wien oscillator needs a gain of exactly three only when its four network parts are exactly equal. In general it needs 1 + Rs/Rp + Cp/Cs — bisected on the netlist to ten digits — so a series resistor 1% high asks for 3.0100 and a shunt resistor 1% high for 2.9901. Four thousand seeded oscillators from 1% parts set to the textbook's comfortable 3.02 leave a quarter of them silent; 99.9% start only at 3.072, and at that setting the median unit distorts 2.6% — the limiter has to absorb a margin the tolerance forced. The frequency spreads by one part's own spread, 0.58% for 1% parts, as large as the limiter's own 0.771% shift. Parts from one array, tracking to 0.05%, need only 3.0035, because the gain depends on ratios and the frequency on products.

Assumes: The gain that is exactly one · The tolerance that is not on any part

The gain that is exactly one bisected a Wien-bridge oscillator’s gain on its netlist and found the design condition an exact equality: 3.000000000000, met on a set of measure zero, with growth on one side and decay on the other. The amplitude nothing linear predicts added two diodes to stop the growth, and what the limiter charges for priced the excess gain those diodes have to absorb: the amplitude rises as about the tenth power of the excess and the distortion as about its three-quarter power, so every decibel of start-up margin is bought in purity.

All of that was measured on a network of four identical parts — two ten-kilohm resistors and two ten-nanofarad capacitors — and the “three” in it belongs to that symmetry. No production oscillator has four identical parts. Each comes from a reel with a tolerance, and the gain the amplifier must supply is a property of the four values the network actually got. This essay measures how far that moves the required gain, what fraction of a production run fails to start at a given setting, what margin a tolerance therefore forces on the designer, and what the margin costs in the one currency the earlier essays priced it in: distortion.

Four ratios, not one number

Write the network’s series arm as RsR_s and CsC_s and its shunt arm as Rp∥CpR_p \parallel C_p. At the frequency where the network’s phase is zero its transfer is

11+Rs/Rp+Cp/Cs,\frac{1}{1 + R_s/R_p + C_p/C_s},

so the amplifier must supply the inverse, and the oscillation runs at 1/2πRsRpCsCp1/2\pi\sqrt{R_s R_p C_s C_p}. Both reduce to the familiar three and 1/2πRC1/2\pi RC only when the arms are equal.

The gain a Wien oscillator needs, when one of its four parts is off its value. computed by solving, not by drawing: for each part moved alone from −5% to +5%, the gain at which the poles reach the axis, bisected on the netlist, against 1 + Rs/Rp + Cp/Cs (to ten digits at every point). A series resistor or shunt capacitor 1% high raises the gain needed to 3.0100; a shunt resistor or series capacitor 1% high lowers it to 2.9901. Every part moves the frequency the same way, by half its error: 1% high on any one of them, 1.58 kHz against 1.59 kHz. The gain needed moves by the error itself, a third of it relative to three.
Fig. 1 The gain a Wien oscillator needs when one of its four parts is moved alone from −5% to +5%: bisected on the netlist at the gain where the poles reach the axis (dots), against 1 + Rs/Rp + Cp/Cs (lines), to ten digits. A series resistor or shunt capacitor high raises it; a shunt resistor or series capacitor high lowers it.

Moving each part alone and bisecting the gain at which the poles reach the axis, the solve agrees with that expression to ten digits at every point. A series resistor or a shunt capacitor one per cent high raises the gain needed to 3.0100; a shunt resistor or series capacitor one per cent high lowers it to 2.9901. Each part moves the required gain by its own error — a third of the error, relative to three — in one direction or the other according to which arm it is in. Every part moves the frequency the same way, by half its error: one per cent high on any of the four takes the oscillation from 1.592 to 1.584 kilohertz.

So the required gain is not a number but a sum of two ratios of parts, and its error is the sum of four parts’ errors with signs. That is the structure every tolerance argument meets — what a ratio does not see found a ratio cancelling exactly the part of an error its two parts share — arriving in an oscillator, where the consequence is not a reading that is slightly off but a circuit that does or does not run.

A quarter of a production run, silent

The amplifier’s gain is set by two resistors as well, 1+Rf/Rg1 + R_f/R_g, and they have the same tolerance. An oscillator starts if its actual gain exceeds its actual requirement, and both are now distributions.

Four thousand Wien oscillators built from 1% parts, set to a nominal gain of 3.02computed by solving, not by drawing for the netlist on a sample, then the closed form for 4000 seeded units, every part — the four in the network and the two that set the gain — uniform within ±1%. Referred to the nominal setting, the gain each unit needs spreads from 2.929 to 3.072 (the middle 99.8%). Set to 3.02, 25.1% of them never start; at 3.01, 37.18%; at 3.02, 25.05%; at 3.05, 2.77%; at 3.1, 0.00%.01002003002.902.9533.053.10gain needed, referred to the nominal setting (needed ÷ actual setting × nominal)oscillators, of 4000set to 3.02: 25.1% do not startsolved, then checked — 4000 seeded oscillators25.1% silent at 3.02
Fig. 2 Four thousand seeded Wien oscillators, every one of their six parts uniform within ±1%: the gain each needs, referred to its own nominal setting. The middle 99.8% spread from 2.929 to 3.072. Set to 3.02, 25.1% never start; at 3.05, 2.77%; at 3.1, none. The slider is the nominal setting.

Four thousand oscillators are drawn with every part — the four in the network and the two that set the gain — uniform within ±1 per cent. Referred to the nominal setting, the gain each needs spreads from 2.929 to 3.072 over the middle 99.8 per cent. A designer who sets the gain to 3.02, two-thirds of a per cent above three and a choice the earlier essays found comfortable, ships a quarter of the run silent: 25.1 per cent of the oscillators never start. At 3.01, 37 per cent; at 3.05, 2.8 per cent; at 3.1, none of the four thousand.

The silent units are not marginal in any way a bench would notice, and they are not concentrated in any one part’s tail: a unit fails when the sum of six small errors happens to land on the wrong side, so every part in it can be well inside its own tolerance band. Their poles sit just inside the left half-plane, their response to a disturbance is a ringing that decays over a few hundred cycles, and their output is zero. Nothing about a unit that starts distinguishes it from one that does not until it is powered.

That makes the failure expensive in a particular way. A divider whose resistors are off reads slightly wrong and a final test catches it as a number outside a band; an oscillator that does not start is caught only by a test that powers it and waits long enough to be sure — and, as the section after next measures, the units just above their threshold take seconds to start, so the wait has to be long. A production line that tests for a second will reject as dead some units that would have started in two, and will pass, as working, units with so little margin that a few degrees of temperature or a year of drift will silence them in the field. The margin a designer chooses is therefore also a decision about how long the test has to be.

The margin a tolerance forces

Turn the question round: for a stated fraction of a run to start, how high must the nominal gain be?

The nominal gain a Wien oscillator must be set to so that 99% and 99.9% of units start, against the tolerance of its parts. computed by solving, not by drawing: 4000 seeded units at each tolerance, the six parts uniform within it. For 99.9% to start: 0.10%: 3.0071, 0.25%: 3.0178, 0.50%: 3.0358, 1.00%: 3.0720, 2.00%: 3.1459, 5.00%: 3.3787; for 99%, a little less. The excess above three grows in proportion to the tolerance — about 7.2 times it — because the gain needed is the sum of two ratios of parts and the gain supplied a third.
Fig. 3 The nominal gain at which 99.9% (solid) and 99% (dashed) of 4000 seeded units start, against the tolerance of every part. For 99.9%: 3.0071 at 0.1%, 3.0178 at 0.25%, 3.0358 at 0.5%, 3.0720 at 1%, 3.1459 at 2%, 3.3787 at 5% — an excess about 7.2 times the tolerance.

For 99.9 per cent to start, the nominal gain must be 3.0071 with 0.1 per cent parts, 3.0358 with 0.5 per cent, 3.0720 with 1 per cent and 3.1459 with 2 per cent. The excess above three is close to proportional to the tolerance, about 7.2 times it, because six parts’ errors add into it — four through the network’s two ratios and two through the gain setting — and the fraction of a thousand at the tail is reached at a few standard deviations of their sum. For 99 per cent the margins are a little smaller. The tolerance class, not the designer’s taste, sets the margin.

What the margin costs

The earlier essays measured what an excess gain costs once the oscillator is running. The diodes clip the excess back to an average gain of three, and the harder they have to work the more harmonics they make.

The distortion a Wien oscillator pays for starting reliably, against the tolerance of its parts. computed by solving, not by drawing: the distortion of the diode-limited oscillator marched to its limit cycle at gains from 3.005 to 3.4 (0.22% at 3.005, 0.43% at 3.01, 0.84% at 3.02, 1.93% at 3.05, 3.44% at 3.1, 5.80% at 3.2, 9.06% at 3.4), read at the excess each seeded unit actually runs at when the nominal gain is set for 99.9% to start. 0.10% parts: median 0.30%, worst unit in a thousand 0.60%; 0.25% parts: median 0.75%, worst unit in a thousand 1.42%; 0.50% parts: median 1.41%, worst unit in a thousand 2.61%; 1.00% parts: median 2.60%, worst unit in a thousand 4.57%; 2.00% parts: median 4.55%, worst unit in a thousand 7.51%. The tolerance sets the margin and the margin sets the distortion: an oscillator built to start reliably from 1% parts distorts 2.6% in its median unit.
Fig. 4 The distortion of the diode-limited oscillator, marched to its limit cycle at gains from 3.005 to 3.4, read at the excess each seeded unit actually runs at when the nominal gain is set for 99.9% to start. Median unit (solid) and worst unit in a thousand (dashed): 0.30% and 0.60% with 0.1% parts, 1.41% and 2.61% with 0.5%, 2.60% and 4.57% with 1%, 4.55% and 7.51% with 2%.

Marched to its limit cycle, the oscillator distorts 0.43 per cent at a gain of 3.01, 0.84 at 3.02, 1.93 at 3.05, 3.44 at 3.1 and 9.1 at 3.4. Each seeded unit runs at its own excess — its actual gain over its own requirement — so a run set for 99.9 per cent starting has a distribution of distortions. With 1 per cent parts the median unit distorts 2.60 per cent and the worst in a thousand 4.57; with 0.5 per cent parts, 1.41 and 2.61; with 0.1 per cent parts, 0.30 and 0.60.

That closes the loop the earlier essays opened. What the limiter charges for priced distortion against excess gain as a design choice; this figure says the excess gain is not a choice once the parts are chosen. A Wien oscillator built to start reliably from 1 per cent parts is a two-and-a-half per cent oscillator in its median unit, whatever the designer intended, and the route to a purer oscillator runs through the parts’ tolerance before it runs through the limiter.

The frequency the same parts leave

The same four network parts set the frequency, and they spread it too.

The spread of a Wien oscillator's frequency against the tolerance of its four network parts. computed by solving, not by drawing for 4000 seeded networks at each tolerance. The frequency's standard deviation equals one part's own — 0.058% at 0.10%, 0.145% at 0.25%, 0.290% at 0.50%, 0.580% at 1.00%, 1.160% at 2.00%, 2.904% at 5.00% — because four independent parts each move it by half their error. The limiter's own shift of 0.771% (level line) is the same size as the spread from 1% parts; with 0.1% parts the spread is 0.058% and the limiter dominates the error a calibration has to remove.
Fig. 5 The spread of the oscillation frequency against the tolerance of the four network parts, 4000 seeded networks each: standard deviation (solid) and the worst unit in a thousand (dashed). The standard deviation equals one part’s own — 0.580% for 1% parts — and the limiter’s own 0.771% shift (level line) is the same size.

The frequency’s standard deviation is one part’s own standard deviation: 0.058 per cent with 0.1 per cent parts, 0.580 per cent with 1 per cent parts. Four independent parts each move the frequency by half their error, and four halves added in quadrature make one. The frequency that is not the formula found the running frequency 0.771 per cent below 1/2πRC1/2\pi RC because the limiter’s harmonics are part of the waveform being timed; with 1 per cent parts the tolerance spread is the same size as that shift, and with 0.1 per cent parts the shift dominates by more than ten to one. A calibration that removes the limiter’s shift from a precision oscillator is worth making only once the parts are good enough to leave it standing out.

Parts that track

The required gain depends on two ratios, Rs/RpR_s/R_p and Cp/CsC_p/C_s, and the frequency on two products. An error that both resistors share — the two drawn from one network array, or one reel, or matched in a common package — cancels from the ratio and adds in the product.

Wien networks whose two resistors and two capacitors each come from one array: 1% absolute, tracking to a stated mismatch. computed by solving, not by drawing: 4000 seeded units at each mismatch. The gain needed depends on the ratios Rs/Rp and Cp/Cs, so an error the two resistors share cancels from it, and the gain-setting pair, from one array too, keeps only its own mismatch. For 99.9% to start, independent 1% parts need 3.0720; parts tracking to 0.05% need 3.0035. The frequency is not protected: with tracking parts it still spreads by 0.83% rms, because it depends on the products, which share the error.
Fig. 6 Wien networks whose two resistors, two capacitors and two gain-setting resistors each come from one array: 1% absolute, mismatched within each pair by 0.01% to 1%. The nominal gain for 99.9% to start falls from 3.0720 for independent parts to 3.0035 at 0.05% mismatch; the frequency still spreads 0.83% rms.

With each pair from one array — 1 per cent absolute, tracking within the pair to 0.05 per cent — the gain for 99.9 per cent to start falls from 3.0720 to 3.0035: the shared error cancels from every ratio, and only the mismatch is left. The frequency is not protected at all: it spreads by 0.83 per cent rms, more than with independent parts, because the shared error of a pair now moves both parts of each product the same way. The small leg of a large ratio found the same asymmetry in a divider, and it is the general rule: a tracking pair buys accuracy in whatever the circuit computes as a ratio and costs it in whatever it computes as a product.

For an oscillator that is the right trade. The frequency can be trimmed once, at test, with one adjustment; the start-up margin cannot be trimmed without changing the distortion, and it is paid by every unit for its whole life. A matched pair of resistors and a matched pair of capacitors turn a 2.6 per cent oscillator into one whose margin is a twentieth as large, below the smallest excess the march was run at, where the distortion was already only 0.22 per cent.

The units that start slowly

A unit that starts is not necessarily a unit that starts promptly, and the tolerance has a second cost hidden in the ones that barely clear their own requirement.

Two exponentials, and where they meet measured the envelope of a starting Wien oscillator growing by exp⁡ ⁣(π(k−3)/1−((k−3)/2)2)\exp\!\big(\pi(k - 3)/\sqrt{1 - ((k - 3)/2)^2}\big) a cycle. For a unit whose gain exceeds its own requirement by a hundredth that is a growth of 3.2 per cent a cycle, and rising from a microvolt of noise to a volt — a factor of a million — takes 440 cycles, under half a second at a kilohertz. For a unit that clears its requirement by a thousandth it is 0.31 per cent a cycle and 4,400 cycles: four and a half seconds before the output reaches its amplitude. For one that clears it by a ten-thousandth, three quarters of a minute.

A production run set for 99.9 per cent starting therefore contains a tail of units that start slowly, and the tail is continuous with the units that do not start at all: the excess of a unit is a random variable whose distribution runs smoothly through zero. A specification that says “starts within a second” is a stricter requirement than “starts”, and for 1 per cent parts it moves the necessary margin further up — by the excess that gives a million-fold growth in the specified time, which at a second and a kilohertz is about four thousandths of gain. The margin a tolerance forces is therefore a margin for starting in time, and it is paid for in distortion by every unit that starts quickly.

Why an oscillator is harsher on a tolerance than a divider

The tolerance that is not on any part measured four 1 per cent resistors in a divider and found an output that was 0.29 per cent spread — every unit working, each a little wrong. An oscillator built from the same parts does not degrade gracefully in the same way. Its requirement is a threshold: a unit either has more gain than it needs or it has less, and on the wrong side of the threshold it does not produce a slightly wrong signal but no signal.

That turns the tolerance from a question of accuracy into a question of yield, and yield questions are decided at the tail of the distribution rather than at its standard deviation. A divider designer quotes a spread; an oscillator designer has to choose a fraction of the run that may fail, and the margin then sits several standard deviations out. The 7.2-times-tolerance rule above is that arithmetic: the excess needed is set by where the thousandth unit sits, not by where the typical one does.

The same threshold structure appears wherever a circuit’s behaviour changes kind at a parameter value: a comparator’s hysteresis that must exceed its noise, a latch that must regenerate, a ring of stages that must oscillate. The root a ring of equal stages takes found the ring’s own threshold at a loop gain of eight for three stages, and a ring built from toleranced stages has the same tail to design against. In each case the right specification is a fraction of units on the wrong side of a line, and the margin is whatever puts the line far enough into the tail.

How the oscillators were built and run

The required gain is bisected on the netlist — two resistors and two capacitors in the network, two in the gain setting, an ideal amplifier — as the gain at which the dominant poles reach the imaginary axis, and checked against 1+Rs/Rp+Cp/Cs1 + R_s/R_p + C_p/C_s to ten digits across ±5 per cent of every part and on two dozen seeded units. The production runs use that closed form for their four thousand units, which is the reason the check is made; each part is drawn uniform within its tolerance from a seeded generator, the classical model for a part that has passed a go/no-go test. The distortion is the earlier essays’ own measurement: the diode-limited oscillator marched to its limit cycle at seven gains, its harmonics measured over the settled cycles, and interpolated between those gains on logarithmic axes at each unit’s own excess, with every unit’s excess checked to lie inside the marched range.

The amplifier is ideal, so its finite bandwidth — which the earlier essays found lowering the frequency and changing the gain needed — is not in these numbers. The parts do not drift with temperature, and the distribution inside a tolerance band is uniform; the shape a tolerance does not print is the warning that a band with its middle removed, as graded parts often have, spreads further.

Still open: the gain that adjusts itself, temperature, and the amplifier’s share

An amplitude loop instead of a fixed margin. A lamp, a thermistor or a field-effect transistor in the gain-setting network makes the gain adjust itself to exactly what each unit needs, so the margin is used only at start-up and the limiter has nothing to absorb in steady state. What that costs is a slow control loop with its own dynamics; how long it takes to settle, and whether it oscillates in amplitude, is the next question for an oscillator whose margin a tolerance would otherwise set.

The margin across temperature. Capacitors and resistors drift with different coefficients, so the ratios that set the required gain move with temperature even in a perfectly matched set. A unit that starts at 25 °C with a small margin may not start at −40 °C, and the margin that keeps 99.9 per cent running over a temperature range is the figure above with a temperature coefficient added to each part’s error.

The amplifier’s own contribution to the requirement. A finite gain–bandwidth product adds phase to the loop and changes the gain needed by an amount that depends on the ratio of the bandwidth to the oscillation frequency. With a modest amplifier that term can be as large as a 1 per cent tolerance’s, and it has the same sign in every unit, which makes it a bias rather than a spread — the kind of error a nominal gain can absorb exactly, once it is measured.

Part 6 on oscillator

One argument about Oscillator, and one of 8 essays on it so far, each part numbered by how much of the idea it assumes. What sits either side of it:

What links here

Essays that reach for this one mid-argument — the half of a link its own author cannot write down.

The objects named here

The third axis, after the field and the idea: the things themselves, and every essay that touches each one.

Amplitude stabilisationBarkhausen criterionComponent toleranceDesign tradeoffMonte carloTotal harmonic distortionWien bridge