Мастерство частоты ошибок кода ADC: Что нужно знать
По мере того как высокоскоростные аналого-цифровые преобразователи (ADC) увеличивали свою частоту дискретизации, так же росла проблема ошибок кода — также известных как sparkle codes — в выходных данных ADC. Ошибка кода определяется как ошибка в выходном коде ADC, превышающая определенный порог. Порог наиболее часто определяется как уровень, где ошибка превышает ожидаемую амплитуду шума ADC таким образом, что ошибка может быть легко идентифицирована в присутствии шума.
Другой способ объяснить это определение порога ошибки: амплитуда ошибки происходит с вероятностью, превышающей ожидаемую вероятность этой амплитуды при предполагаемом гауссово распределенном шуме ADC. Рис. 1 показывает пример ошибки кода, найденной в выходных сэмплах ADC. Ошибочный сэмпл явно виден при сравнении с идеальной синусоидальной аппроксимацией и далеко превышает шум других сэмплов на графике.

Рис. 1: Пример выхода ADC с ошибкой кода.
Частота ошибок кода ADC (CER), также иногда называемая word error rate (WER) или metastability error rate, определяется как среднее число ошибок на сэмпл и измеряется путем подсчета среднего числа сэмплов между последовательными ошибками. Чаще всего определяется как порядок величины, например 10–12 ошибок/сэмпл. Среднее время между ошибками, следовательно, зависит от частоты дискретизации преобразователя. Измеренная CER точна только когда ADC работает на частоте дискретизации, на которой измерялась CER. В общем, снижение частоты дискретизации может улучшить CER на порядки величины.
Давайте посмотрим, откуда приходят ошибки кода, чтобы понять, почему частота дискретизации — главный фактор.
Что заставляет ADC искрить?
Многоступенчатая архитектура ADC, такая как конвейерный flash ADC или successive approximation register (SAR) ADC, преобразует отсчитанное напряжение в цифровые биты в стадиях, и каждая последующая стадия опирается на результат предыдущей. Рассмотрим базовый конвейерный flash высокоскоростной ADC, как показано в Рис. 2. Этот упрощенный ADC показывает две стадии преобразования, где каждая последовательная стадия производит цифровой код, более точно оценивающий входной сигнал.
Операция показанного ADC следующая:
Первая стадия отсчитывает входное напряжение и грубо преобразует аналоговый входной сигнал в цифровой код, используя первый стадийный ADC. Flash ADC в этой стадии работает путем сравнения отсчитанного напряжения против статических опорных напряжений, генерируемых из основного опорного напряжения ADC (VREF), используя высокоскоростные компараторы. Выход flash компараторов — термометрически-кодированный цифровой сэмпл, представляющий входное напряжение.
Преобразованный термометрический код затем отправляется непосредственно в первый стадийный DAC. Этот DAC выводит аналоговое напряжение, соответствующее грубо преобразованному сэмплу.
Вычитание выхода первого стадийного DAC из исходного входного напряжения результатирует в напряжении ошибки квантования или остаточном напряжении (VRES). Остаток затем усиливается и пересчитывается (конвейеризируется) для второй стадии.
Второй стадийный ADC квантует VRES для получения более точного (высокого разрешения) оценки исходного аналогового входного напряжения.

Рис. 2: Пример блок-схемы архитектуры конвейерного flash ADC.
Процесс создания VRES вводит высокоскоростной decision loop. В пределах одного периода тактовой частоты отсчета, отсчитанное напряжение должно быть преобразовано в цифровой код первым стадийным ADC. Цифровой код должен быть выведен из первого стадийного DAC, вычтен из исходного входного напряжения и пересчитан второй стадией. Высокоскоростной decision loop вводит ошибки кода, потому что компаратор во flash ADC имеет время установки, которое является функцией разницы между отсчитанным напряжением и VREF.
Проще говоря, компаратор дольше устанавливается, когда входное напряжение (VCAP1) близко к опорному напряжению компаратора (например, 7 * VREF /8). Теоретически, если VCAP1 бесконечно близко к опорному напряжению компаратора, компаратор никогда не установится, потому что будет работать в своей линейной области.
Шум предотвратит это на практике, но если компаратор тратит слишком много времени на установку, то первый стадийный DAC может использовать неверный цифровой код для вывода квантованного аналогового напряжения. Результат — VRES, не соответствующий фактическому цифровому выходному коду первого стадийного ADC. Второй стадийный ADC затем преобразует неверный VRES, что приводит к ошибке кода.
Что влияет на CER?
Теперь у вас должно быть достаточно деталей, чтобы сделать некоторые выводы о том, что влияет на CER. CER явно зависит от частоты дискретизации. Более высокая частота дискретизации сокращает время, в котором decision loop должен принять решение. Меньшее время для принятия решения приводит к экспоненциальному увеличению вероятности того, что компаратор не успел установиться вовремя.
— Мэтт Гейборд, системный инженер в высокоскоростных преобразователях Texas Instruments.
Встроенный
- Комментарии в C++: лучшие практики для читаемого и поддерживаемого кода
- Обработка ошибок в C: лучшие практики и техники
- Мастерство ЧПУ-фрезерования: точное металлообработка подробно
- Литье под давлением (Die Casting): точность, эффективность и производственные преимущества
- Цифровые датчики в промышленном оборудовании: функции, типы и лучшие практики
- Автоматизация прессов: технологии, безопасность и эффективность
- Всё о кованых железе: свойства, применение и история
- Центробежная литья: принцип, виды, преимущества и применение
- Литье под давлением (Die Casting): технология, преимущества, недостатки, применение
- Инвестиционное литье (Lost Wax): определение, применение, преимущества, факторы выбора