The tolerance that is not on any part
Assumes: What a network answers, and how the answer is checked · The divider, and the thing it does not know about
A resistor arrives with two numbers on it. One is a resistance and the other is a tolerance, and only the first appears in any expression a designer writes. The second is supposed to be handled at the end, by a rule of thumb, and there are two rules in circulation that disagree with each other by a factor of two and neither of which is a measurement of anything.
This collection has a solver, so the question can be asked directly: draw every resistor in a network from its tolerance band, solve, and do it a few thousand times. What comes back is a distribution, and neither rule is its shape.
The sensitivities, taken off the network
Before any statistics there is a linear question: how much does the answer move when one part moves? That is the sensitivity, and for a two-resistor divider it is famous enough to be worth checking rather than quoting.
The figure computes it as a central difference on the solved network — perturb one resistance by a part in a million each way, resolve, and take the slope. For the two-resistor case it comes back as exactly for the upper resistor and for the lower, which is what gives and is the first useful fact: a divider’s output is half as sensitive to its parts as the parts are to themselves. One per cent resistors do not make a one per cent divider by that route.
For a chain of equal resistors tapped at the middle the sensitivities are each, and there are of them. So the two bounds are:
Worst case, the sum of the magnitudes, . It is the part tolerance, whatever is. Building the divider out of thirty-two resistors instead of two does not improve it by a hair.
Root-sum-square, . This one does improve, by a factor of four across the slider’s range.
Both are drawn on the figure, and the histogram is drawn under them. The first thing the picture says is that the worst case is not merely pessimistic; it is a line that nothing ever reaches.
The root-sum-square is not a standard deviation
The root-sum-square bound is almost always presented as the statistical answer, with the implication — sometimes stated outright — that it is one standard deviation and therefore covers about 68% of outcomes. Measured on the solved networks, it is not.
For parts drawn uniformly across their band, each contributes a standard deviation of rather than . So the true standard deviation of the answer is , and the root-sum-square bound sits at , which is
standard deviations. Measured across the slider the ratio comes back as 1.750 at two parts, 1.698 at four, 1.726 at eight, 1.729 at sixteen and 1.745 at thirty-two — scattered around by the sampling rather than converging on it, since the bound and the standard deviation are both exact functions of the count and only the measurement of the second is noisy.
A bound at covers about 92% of outcomes rather than 68%. That is a much better bound than its name suggests, which means the rule of thumb is right for the wrong reason, and the wrongness matters as soon as somebody reasons from it: two root-sum-squares is not two sigma, and a design budget that adds “3 RSS” for a part-per-thousand escape rate has actually asked for and paid for resistors it did not need.
How the two rules diverge as parts are added
Putting the two panels side by side gives the finding that neither rule contains.
At two parts the worst of three thousand draws reached 95.1% of the worst-case bound. At thirty-two parts, with the bound unchanged, it reached 36.6%. The worst case is therefore an honest description of a two-component divider and a wild one for a thirty-two component ladder, and nothing in the rule says which case it is being applied to.
The mechanism is the central limit theorem doing what it does. Two uniforms sum to a triangle, whose density at the extreme is zero but whose approach to zero is linear, so the tail is thick enough to reach. Thirty-two uniforms sum to something indistinguishable from a normal, whose tail at has a probability nothing will ever see.
So the practical rule that comes out of the measurement is not “use worst case” or “use root-sum-square” but a question: how many parts is the answer made of? Below about four, the worst case is nearly attainable and should be designed to. Above about ten, it is a bound that costs money and buys a margin no batch will ever test.
Where the first-order model stops
Everything above is a sensitivity argument, and a sensitivity is a derivative, so it is a first-order model with a range like everything else on this site. It is worth asking where it stops.
For a divider the answer is: much later than the tolerances anybody buys. The exact output is a ratio of sums of the perturbed resistances, and its expansion in the perturbations has second-order terms of order against first-order terms of order . At that is a part in a hundred of the error, well below the width of the distribution being described. At — which the figure will run at — the second-order terms are a fifth of the first-order ones and the histogram becomes visibly asymmetric, because the divider’s output is bounded above by one and below by zero and the perturbation cannot be symmetric near either.
The interesting case is the other one, and it is the reason this essay is in the networks field rather than in a statistics one: there are networks whose sensitivity is not of order one. A resonant network read at its own resonance has a sensitivity of order its quality factor. A near-cancellation has a sensitivity that is the ratio of the terms to their difference. In those the first-order model runs out immediately, and the answer’s tolerance is not a modest multiple of the parts’ but a large one.
A boundary that is a tolerance
Every boundary this collection has drawn so far has been a frequency, an amplitude, a size, a duration, a temperature or — once — a transconductance. Here is one that is none of those.
An R–2R ladder converts a code to a voltage by nothing but resistors: each bit drives its own arm either to the reference or to ground, and a chain of between the arms halves each contribution as it walks down. It is the cleanest object in this subject, and it is an -bit converter only while its resistors are good enough.
Two things make the measurement clean, and the first is worth stating on its own because it is what makes the second provable.
The ladder is exactly linear in the code however wrong its resistors are. Each arm is connected to one of two voltage sources, so the resistor network itself never changes; only which source drives which arm does. Superposition therefore holds exactly, and the output for any code is the sum of the bit weights measured one at a time. The figure checks this over all sixty-four codes of a six-bit ladder with 5% resistors and gets agreement to — the last bits of a double.
That has a consequence: the major carries are provably the worst transitions. The step from to turns bit on and every bit below it off, so its step is , and every other transition’s step contains a subset of that sum with the same sign. So sixty solves answer a question that would otherwise need four thousand, and the answer is exact rather than sampled.
What the tolerance costs per bit
The figure bisects the tolerance at which half a batch of ladders goes non-monotone somewhere:
| bits | tolerance | ratio | |
|---|---|---|---|
| 6 | 6.62% | 1.56% | 4.2 |
| 8 | 3.29% | 0.391% | 8.4 |
| 10 | 0.714% | 0.098% | 7.3 |
| 12 | 0.141% | 0.024% | 5.8 |
Those four numbers are medians over a batch of two dozen ladders, so they carry the batch’s own precision and not more: re-run with twenty draws instead of twenty-four and they come back 7.72%, 3.48%, 0.717% and 0.156%, which is up to a sixth different at the coarsest resolution and within a few per cent at the two finest. The quantity being estimated is a median of a distribution, and a median from two dozen samples is worth about two significant figures. What is not an estimate is the ordering and the scaling, and those are what the claim is made on.
The scaling is the expected one — each bit roughly halves the tolerance — and the constant in front is not one. It sits between four and eight, which is to say that a ladder tolerates resistors four to eight times worse than the naive “the MSB must be accurate to half an LSB” argument demands.
The reason is that the errors are independent rather than aligned. The naive argument implicitly puts every resistor’s error at its worst value and in the worst direction; the measurement draws them independently, and the major carry’s step is a sum of many errors that mostly cancel. It is the same fact as the first half of this essay, arriving in a place where it decides something discrete: not “how wide is the distribution” but “does this part work at all”.
And it is a hard edge rather than a soft one. A converter that is 0.02 dB less flat than intended is a converter with a specification to renegotiate. A converter whose output falls when its code rises is not a twelve-bit converter, it is a broken one, and no amount of calibration fixes it because the mapping is no longer invertible. That is why the boundary is worth stating in tolerance: it is the number the part is bought against.
Why the sampling has to be seeded
The distributions above are measured rather than derived, which means they are the output of a random number generator, which means the figure has to say which one.
The generator is the shared one this fleet uses for every sampled claim, seeded explicitly, so the histogram is a function of its arguments like every other figure here. Re-render the page and the same three thousand draws come back. That matters more than it sounds: a figure whose numbers move between renders cannot carry a caption, and a caption that says “the worst of three thousand draws reached 95.1% of the bound” is a claim about a specific experiment that a reader must be able to repeat.
It also means the tails are honest about what they are. Three thousand draws resolve a 99.9% point with three draws outside it, which is a poor estimate of a tail and a fine estimate of the body. The figure quotes both the measured 99.9% point and the single worst draw, and the difference between them is the sampling error, visible rather than hidden.
The second tolerance, which is not on the part either
A resistor’s printed tolerance is its value at one temperature on the day it was made. Two other numbers move it afterwards and neither is in the histogram above.
The temperature coefficient, which for an ordinary thick-film part is a hundred parts per million per kelvin. Forty kelvin of self-heating and ambient swing is 0.4% — comparable with the whole distribution measured here for 1% parts, and systematic rather than random, so it does not average down over the parts and the central limit theorem does not touch it.
Drift with age, which is smaller and points one way.
Both are why the sensitivity half of this essay is the useful half. A distribution can be narrowed by buying better parts; a sensitivity can be removed by choosing a different network, and the removal applies to the temperature coefficient and the ageing at the same time. A divider made of two halves of the same part in the same package has a ratio whose temperature coefficient is the difference of two nearly equal numbers rather than either of them, which is a thousandfold improvement bought with no better resistor at all — and it is exactly the sensitivity argument run backwards.
The three ways this collection asks the same question
How far does the answer move when a component does — this collection answers it three ways and they cost quite different amounts. Every derivative, and the one that is zero is the adjoint route: every derivative from two solves, exact. This page is the statistical route: a spread from three thousand draws, which attributes nothing. The digits the arithmetic did not have is the third, where the perturbation is the arithmetic rather than a component. What a steep skirt costs is where the answer bounds a design decision, and The divider, and the thing it does not know about is the smallest circuit in which the question can be asked at all. The matrix that is ill, and the answer that is not is the warning that goes with the bound.
What is checked
Four assertions, and the first is the one everything else stands on.
That the worst case is the part tolerance at every part count — asserted to a part in a million across the slider, from sensitivities taken as central differences on the solved network rather than from the divider expression. If that failed, the sensitivities would be wrong and nothing below it would mean anything.
That the root-sum-square is between 1.5 and 2 standard deviations of the measured distribution, which is the claim that it is not one. The bracket is deliberately wider than : at two parts the finite sample gives 1.70 rather than 1.73, and a tolerance tight enough to fail there would be a tolerance chosen to pass rather than a statement about the rule.
That the ladder’s output is linear in its code to with 5% resistors — the superposition that makes the major-carry argument a proof rather than a heuristic.
And that the tolerance a ladder stands falls with every bit asked of it, monotonically across the four resolutions measured. That is the boundary itself, and it is the one this essay exists to put a number on: a tolerance, in a collection where every other edge has been a frequency or an amplitude.
Where the three numbers are each the right one
A worst case, a measured spread and a root-sum-square bound are three answers to three different questions, and the collection has circuits for which each is the one to use.
The worst case is right wherever a single unit failing is unacceptable and no screening will catch it. The gain that is exactly one is the limiting example: an oscillator whose gain resistors put the loop gain below three does not oscillate at all, so a design aimed at the spread ships units that are silent — and what the limiter charges for measures what aiming at the worst case costs instead, which is 1.9 per cent of distortion on every unit including the ones that did not need it.
The spread is right wherever the quantity is an error that is later removed by calibration, which is most instrument work. The rejection four resistors decide is a case where it is not: the rejection of a difference amplifier is set by the mismatch of four resistors, so a population’s spread is the specification rather than an incidental fact about it, and one plus the gain over four times the tolerance is the number that gets printed.
And the root-sum-square bound is right nowhere in this collection, which is the finding worth carrying. It is neither a bound — the worst case exceeds it — nor a standard deviation, being 1.70 of one for four one per cent parts, and its only property is that it lies between the other two numbers. Wherever it appears in a design note, one of the other two was wanted.
The R–2R result at the end of this essay is where the choice between them stops being a matter of taste. A twelve-bit converter is twelve bits for the units whose resistors fall inside 0.14 per cent and is not for the others, and no averaging, calibration or screening of the finished part recovers a missing code. That is a worst-case requirement by construction — which is why converter ladders are laser-trimmed rather than specified, and why the tolerance in that row is three orders tighter than anything in the rows above it.
What links here
Essays that reach for this one mid-argument — the half of a link its own author cannot write down, the 8 sharing most with it of 23.
- The coefficient that is about one reading
- Every derivative, and the one that is zero
- The best damping is not the one to build
- The reading a data sheet does not take
- The three tolerances that do nothing
- Ten seconds, and fifteen minutes
- The derivative of a root
- The direction a response is most sensitive to
What this makes readable
Essays that name this one as a prerequisite.
The objects named here
The third axis, after the field and the idea: the things themselves, and every essay that touches each one.
Component sensitivityComponent toleranceDesign tradeoffModel rangeMonte carloNonlinearitySeeded generatorVoltage divider
- One inductor, and ten components component sensitivity, component tolerance, design tradeoff, model range
- A band rather than an edge design tradeoff, model range, voltage divider
- The band that does not close component sensitivity, design tradeoff, model range
- The corner the instrument has no part in component tolerance, design tradeoff, model range
- The dither that is a decision design tradeoff, model range, seeded generator
- The errors that arrive before the gain component tolerance, design tradeoff, model range