ШИМ – это простая, крутая, дешевая, веселая и (поэтому) популярная технология реализации ЦАП. Отличная дифференциальная нелинейность (DNL) и монотонность фактически гарантированы ШИМ. Также гарантированы стабильность нуля и погрешность полной шкалы, которая, как правило, ограничивается только качеством опорного напряжения. Однако интегральная нелинейность ШИМ (INL) не всегда потрясающая, а необходимость низкочастотной фильтрации пульсаций означает, что скорость ЦАП не слишком высока. Эти запутанные темы рассматриваются в…
- Распространенная причина интегральной нелинейности ШИМ и программное решение для ее устранения обсуждаются в статье «Минимизация выходного сопротивления пассивного сглаживающего фильтра ШИМ. Насколько низким его можно сделать?» [1].
- Большое время установления ШИМ (TS), которое может быть проблематичным, а также способ его уменьшения рассматриваются в статье «Подавитель пульсаций ШИМ ЦАП с аналоговым вычитанием» [2].
Схема на Рисунке 1 предлагает хитрую, абсолютно аналоговую стратегию решения обеих проблем. Эта хитрость заключается в том, чтобы «Вернуть половину» (Take Back Half, TBH). Она опирается на два дифференциальных соотношения, которые эффективно вычитают (возвращают обратно) члены ошибки.
- Для частот сигнала, меньших или равных 1/TS (включая постоянное напряжение), XC >> R и Z = 2(XAVG – YAVG/2). где Z – напряжение в узле Z, а XAVG и YAVG – средние значения напряжений в узлах X и Y.
- Для частот, бóльших или равных частоте ШИМ, XC << R и Z = XRIPPLE – YRIPPLE, где XRIPPLE и YRIPPLE – амплитуды пульсаций в узлах X и Y.
![]() |
|
Рисунок 1. | Все значения R и C номинально равны. Схема опирается на два дифференциальных соотношения, которые эффективно вычитают члены ошибки для методики TBH. |
Поскольку только один коммутатор управляет нагрузкой R в узле Y, а два параллельных управляют узлом X, INL, обусловленная нагрузкой на коммутатор в узле Y, ровно вдвое больше, чем в X. Поэтому напряжение Z = 2(XAVG – YAVG/2) возвращается обратно, компенсирует ошибку и имеет (теоретически) нулевое значение INL.
Напряжение XRIPPLE равно YRIPPLE, поэтому напряжение пульсаций в узле Z, равное XRIPPLE – YRIPPLE, обнуляется, и также имеет (теоретически) нулевое значение, что позволяет уменьшить постоянные времени RC-фильтра пульсаций, и, соответственно, снизить время установления.
Компонент преобразования постоянного тока при Z равен –D×VREF, где D – коэффициент заполнения импульсов ШИМ. Точность преобразования высока и не зависит от допусков номиналов сопротивлений и емкостей. Однако в идеале для наилучшего подавления пульсаций и нелинейности они должны быть точно равны.