1 · Known reference →Training ramp covers ±0.95 Vx, known
2 · Distorted ADC →12 bits + output noisey = Q[f(x)]
3 · Fit an inverse →Minimize Σ[g(y) − x]²g(y) = Σ cₖỹᵏ
4 · ValidateNew signal, independent noisex̂ = g(yₙₑw)
Inverse polynomial degree
Transfer curve · straighten the bend
IdealRawCorrected
trained region
Validation error · same unseen samples
RawCorrected
Both curves share the same axis. Quantization and noise remain after deterministic distortion is corrected.
0 dBFS−50−100
Tone-2 / -1
H2-33 / -62
H3-32 / -67
H4-101 / -68
H5-103 / -85
H6-102 / -60
H7-99 / -67
■ Raw / ■ Corrected · dBFS per FFT bin. Coherent sine: 53/2048 cycles/sample. SNDR includes every non-DC, non-fundamental bin, not just these harmonics.
What is being calibrated?
f(x) = x + a₂x² + a₃x³, followed by additive output noise, 12-bit quantization and saturation. A known reference ramp supplies training pairs (x, y); a polynomial maps measured y back toward x. ỹ is y divided by the largest training magnitude. This foreground method assumes an accurate external reference. It corrects static distortion; it does not recover clipped information or remove random noise. Changing the validation amplitude never refits the coefficients.