Измерение ошибок смещения и усиления в ADC

В этом примере показано, как возмещенная ошибка и ошибка усиления вычисляются и как каждый влияет на кривую передачи ADC. Возместите ошибку и получите ошибку, характеризуют часть ошибки линейности в ADC.

Ошибка смещения является различием между центром младшего значащего кода и центром того же кода по идеальному ADC с тем же количеством битов. Возместите ошибку, обычно сообщается в модулях младшего значащего бита (LSB) конвертера. Один LSB эквивалентен интервалу квантования конвертера.

Ошибка усиления в LSB является различием между центром старшего значащего кода после исправления ошибок смещения и центром того же кода по идеальному ADC с тем же количеством битов.

Из-за трудности при определении точного местоположения центра кода с не конечным контуром, эти значения обычно измеряются относительно первого и последнего порога конвертера, соответственно.

Модули для ошибки ошибки и усиления смещения

Модуль$LSB$, который используется в этом примере, задан как:

$$1 \left[LSB\right] = \frac{FSR}{2^{N_{bits}}}$$

Таким образом ошибка в$V$ (вольтах) переводит в$LSB$ можно следующим образом:

$$E \left[LSB\right] = 2^{N_{bits}}\frac{E \left[V\right]}{FSR
\left[V\right]}$$

где$FSR$ область значений полного масштаба ADC и$N_{bits}$ является количеством битов ADC.

Об ошибках линейности также обычно сообщают в нормированных единицах относительно области значений полного масштаба:

$$ E_{Offset} = \frac{E_{Offset} \left[V\right]}{FSR \left[V\right]}$$

Другой модуль, иногда используемый для используемых ошибок линейности, является полным масштабом процента. Полный масштаб процента задан как нормированные единицы, умноженные на 100:

$$E_{Gain} \left[\%\right] = 100\frac{E_{Gain} \left[V\right]}{FSR
\left[V\right]}$$

Вычислите ошибку смещения и получите ошибку

Используйте 3-битный ADC с динамическим диапазоном [-1 1]. Задайте ошибку смещения 1 LSB и ошибка усиления 1 LSB.

Nbits = 3;
Range = [-1 1]; % ADC Full Scale Range
OffsetError = 1;
GainError = 1;
LSB = (max(Range) - min(Range)) / (2^Nbits - 1);

Цифровые коды от идеального ADC идентичны тем от экспериментального ADCs.

[TC0Analog, TC0Digital] = og2tc(Nbits, Range, 0, 0); % Ideal ADC Transfer Curve
TC1Analog = og2tc(Nbits, Range, OffsetError, 0); % Offset Error Only
TC2Analog = og2tc(Nbits, Range, 0, GainError); % Gain Error Only
TC3Analog = og2tc(Nbits, Range, OffsetError, GainError); % Both Offset Error and Gain Error
plotAdcTcForExample(TC0Digital, TC0Analog, TC1Analog, TC2Analog, TC3Analog, Nbits);

Сумма ошибки смещения и ошибки усиления известна как полномасштабную ошибку. В униполярных конвертерах обнуляют ошибку, по существу возмещают ошибку, заданную на аналоговом уровне 0, идентично регулярной ошибке смещения. В биполярных конвертерах, таких как те выше, ошибка смещения и нулевая ошибка являются различными количествами.

Использование ошибок линейности как ухудшения

Сравните ADC флэш-памяти со смещением и получите ошибку одной без ухудшений.

model = 'OffsetGainExample';
open_system(model);
open_system([model '/Time Scope']);
sim(model);

Блок ADC DC Measurement подтверждает значения ухудшений к в пределе погрешности, определенном частотой дискретизации системы. Ошибка смещения и ошибка усиления оба вводились как 1 LSB. Ошибка смещения была измерена как 1,08 LSB, и ошибка усиления была измерена как 0,97 LSB. Ошибки в этих измерениях происходят из-за конвертера, не производящего точно в его пороговых значениях. Максимальная ожидаемая погрешность в LSB:

$$E_{max} = \frac{m}{f_s}$$

где$m$ наклон входного сигнала пандуса/зуба пилы в LSB/s и$f_s$ является преобразованием ADC, запускают частоту.

Смотрите также

|

Для просмотра документации необходимо авторизоваться на сайте