реклама на сайте
подробности

 
 
> Передискретизация и увеличение разрядности АЦП, вопрос по реализации
Alexashka
сообщение Apr 1 2011, 10:15
Сообщение #1


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Всем добрый день!

Встала такая задача: у имеющегося 10-битного АЦП нужно повысить эффективную разрядность до 12 бит. 

Структуру дельта-сигма АЦП вполне представляю, но там отсчеты фильтруются sinc-фильтром высокого порядка. А мне бы нужно попроще, с минимумом вычислений.

Прочитал эту статью Прикрепленный файл  Enhancing_ADC_resolution_by_oversampling.pdf ( 117.96 килобайт ) Кол-во скачиваний: 561
однако остались вопросы. Например я делаю передискретизацию в 16 раз. Т.е это означает увеличение эфф.разрядности на 2 бита. При должной фильтрации наверно так и будет. Но в статье предлогается брать сумму по группам из 16 отсчетов. Внутренний голос подсказывает, что при этом произойдет увеличение шумов в корень из 16 раз, т.е в 4 раза (если считать в LSB). Однако вес одного LSB теперь будет в 16 раз меньше (входной диапазон напряжений АЦП остался тем же, а диапазон "кодов" на выходе сумматора вырос в 16 раз). Т.е если перевести полученный с сумматора код в "вольты", то эффективный шум вроде как уменьшается в 4 раза. Так ли это и какой смысл после этого делать деление на 16 -сигнал станет чище конечно, но шумы квантования при этом возрастают?  laughing.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sup-sup
сообщение Apr 1 2011, 18:57
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Alexashka @ Apr 1 2011, 13:15) *
Всем добрый день!
Встала такая задача: у имеющегося 10-битного АЦП нужно повысить эффективную разрядность до 12 бит. ..

Делал что-то подобное с 12-битным ADS788. Нужна была полоса до 100 кГц, а частоту сэмплирования можно было выбрать до 2 МГц (при питании 3.3В). В первую очередь подыскал АЦП, чтобы SFDR (Spurious free dynamic range) (кроме подходящей цены, скорости, и т.д..) был бы побольше, чем как для 12 бит. У ADS788 он 86 дБ как раз на 100 кГц, что соответствует примерно 14 разрядам. Сделал пробные оцифровки с частотой примерно 1500 ksps, посмотрел сигнал и сделал по нему спектр и спектрограмму (много раз с разными настройками). Действительно, получил нижний уровень не хуже -90 дБ относительно полной шкалы. Дальше было все понятно - делать FIR фильтр, децимацию. Кроме того, что внутренние шумы оказались меньше одного шага квантования, что приводило к тому, что при оцифровке сигнала, меньшего чем шаг квантования, АЦП выдавал один и тот же код длительное время. Естественно, это приводило к тому, что фильтровать на некоторых существенных отрезках было нечего. Выкрутился тем, что вне полосы подал тон (хотел шум, но простого меандра хватило) с уровнем выше шага квантования и тогда действительно был получен уровень -90 дБ.
Выводы сделал такие, что 1) - нужен АЦП с 'повышенной внутренней разрядностью', пусть хоть он 8-битный и 2) - возможно, для улучшения диапазона в полосе придется добавить шум вне полосы, который потом отфильтровать (почти как в сигма-дельте).
Для оценки фильтра можно применить тот же FFT анализ, подбирая подходящее окно, которое и является импульсной характеристикой фильтра. Понятно, применение прямоугольного окна (что эквивалентно простому суммированию, допустим, по 16 точек) менее эффективно, чем сглаживающего окна. И надо при выборе окна обязательно знать его частотную характеристику, чтобы в полосе сигнала получить единичную передачу (или какая нужна), а все, что вне полосы задавить на минимально необходимую величину.

Сообщение отредактировал sup-sup - Apr 1 2011, 19:12
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 2 2011, 14:15
Сообщение #3


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(sup-sup @ Apr 1 2011, 22:57) *
Делал что-то подобное с 12-битным ADS788. Нужна была полоса до 100 кГц, а частоту сэмплирования можно было выбрать до 2 МГц (при питании 3.3В). В первую очередь подыскал АЦП, чтобы SFDR (Spurious free dynamic range) (кроме подходящей цены, скорости, и т.д..) был бы побольше, чем как для 12 бит. У ADS788 он 86 дБ как раз на 100 кГц, что соответствует примерно 14 разрядам. Сделал пробные оцифровки с частотой примерно 1500 ksps, посмотрел сигнал и сделал по нему спектр и спектрограмму (много раз с разными настройками). Действительно, получил нижний уровень не хуже -90 дБ относительно полной шкалы. Дальше было все понятно - делать FIR фильтр, децимацию. Кроме того, что внутренние шумы оказались меньше одного шага квантования, что приводило к тому, что при оцифровке сигнала, меньшего чем шаг квантования, АЦП выдавал один и тот же код длительное время. Естественно, это приводило к тому, что фильтровать на некоторых существенных отрезках было нечего. Выкрутился тем, что вне полосы подал тон (хотел шум, но простого меандра хватило) с уровнем выше шага квантования и тогда действительно был получен уровень -90 дБ.
Выводы сделал такие, что 1) - нужен АЦП с 'повышенной внутренней разрядностью', пусть хоть он 8-битный и 2) - возможно, для улучшения диапазона в полосе придется добавить шум вне полосы, который потом отфильтровать (почти как в сигма-дельте).
Для оценки фильтра можно применить тот же FFT анализ, подбирая подходящее окно, которое и является импульсной характеристикой фильтра. Понятно, применение прямоугольного окна (что эквивалентно простому суммированию, допустим, по 16 точек) менее эффективно, чем сглаживающего окна. И надо при выборе окна обязательно знать его частотную характеристику, чтобы в полосе сигнала получить единичную передачу (или какая нужна), а все, что вне полосы задавить на минимально необходимую величину.

Возникли вопросы. Спуры это палки которые постоянно сидят в спектре? Всмысле никакая фильтрация их уже не уберет если они попадают в полосу частот? У меня спектр чистенький до -120дб ровная полоска.
Чтобы оценить "внутреннюю разрядность"... я так понял можно делая FFT на длительной реализации? Чтобы FFT работало как избирательный фильтр убирающий шумы квантования. И тогда спуры будет видно?
Цитата
Для оценки фильтра можно применить тот же FFT анализ, подбирая подходящее окно, которое и является импульсной характеристикой фильтра. Понятно, применение прямоугольного окна (что эквивалентно простому суммированию, допустим, по 16 точек) менее эффективно, чем сглаживающего окна.

Не понял. Окно (взвешивающая функция) нужно чтобы минимизировать артефакты FFT преобразования. Т.е просто убирает сигнал вначале и в конце реализации. Разве оно работает как НЧ фильтр? Вы предлогаете делать свертку функции окна с сигналом? Зачем?
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 2 2011, 16:46
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Alexashka @ Apr 2 2011, 17:15) *
Возникли вопросы. Спуры это палки которые постоянно сидят в спектре? Всмысле никакая фильтрация их уже не уберет если они попадают в полосу частот? У меня спектр чистенький до -120дб ровная полоска.
Чтобы оценить "внутреннюю разрядность"... я так понял можно делая FFT на длительной реализации? Чтобы FFT работало как избирательный фильтр убирающий шумы квантования. И тогда спуры будет видно?

Не понял. Окно (взвешивающая функция) нужно чтобы минимизировать артефакты FFT преобразования. Т.е просто убирает сигнал вначале и в конце реализации. Разве оно работает как НЧ фильтр? Вы предлогаете делать свертку функции окна с сигналом? Зачем?


Не вижу причины, по которой результат должен быть хуже, чем от FFT. Если в нужной нам полосе получается 120 дБ, то его же (120 дБ) можно получить и методом 'фильтрация - децимация'. То есть, дополнительных разрядов получается значительно больше, чем 2. Если линейность АЦП 120 дБ обеспечивает. Кстати, в сигма дельте результат также зависит от порядка модулятора.

Ну да, для нулевой частоты FFT как раз ФНЧ. Свертка делается между сигналом и окном. Для других частот уже получается (от перестановки результат ведь не меняется) свертка сигнала с косинусным и синусным ядром полосового фильтра. Только, действительно, это я не в тему, так как фильтр будет другой, для всей полосы. Но длина фильтра будет примерно как у понравившегося режима FFT

Цитата(ViKo @ Apr 2 2011, 17:22) *
В том-то и дело, что любое окно в фильтре КИХ служит для уменьшения пульсаций АЧХ за пределами полосы пропускания (боковых лепестков) путем расширения основного, расширения полосы пропускания. Вот я и сомневаюсь, что через такую АЧХ не пролезет больше шума.

Не вижу противоречия. Фильтр-то один. Просто ядро у одного упрощенное и требует меньше ресурса. А у другого позволяет получить подходящую характеристику. То есть, в общем случае применяется FIR. А прямоугольное окно - это один из его вариантов (вырождений).

Сообщение отредактировал sup-sup - Apr 2 2011, 17:06
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Alexashka   Передискретизация и увеличение разрядности АЦП   Apr 1 2011, 10:15
- - ViKo   Цитата(Alexashka @ Apr 1 2011, 13:15) Т.е...   Apr 1 2011, 10:46
|- - Tanya   Тема перемещена по просьбе ТС.   Apr 1 2011, 11:08
|- - Alexashka   Цитата(ViKo @ Apr 1 2011, 13:46) То есть ...   Apr 1 2011, 11:45
|- - hobgoblin   Цитата(Alexashka @ Apr 1 2011, 15:45) Да,...   Apr 1 2011, 13:32
||- - Alexashka   Цитата(hobgoblin @ Apr 1 2011, 17:32) Обы...   Apr 2 2011, 13:36
|- - ViKo   Цитата(Alexashka @ Apr 1 2011, 14:45) Да,...   Apr 1 2011, 13:38
|- - vadimuzzz   Цитата(Alexashka @ Apr 1 2011, 18:45) Раз...   Apr 1 2011, 15:27
|- - rezident   Цитата(sup-sup @ Apr 2 2011, 00:57) ...   Apr 1 2011, 19:05
||- - sup-sup   Цитата(rezident @ Apr 1 2011, 22:05) Дык ...   Apr 1 2011, 19:19
|- - ViKo   Цитата(sup-sup @ Apr 1 2011, 21:57) ...   Apr 2 2011, 10:16
||- - sup-sup   Цитата(ViKo @ Apr 2 2011, 13:16) А почему...   Apr 2 2011, 13:46
||- - ViKo   Цитата(sup-sup @ Apr 2 2011, 16:46) ...   Apr 2 2011, 14:22
||- - ViKo   Цитата(sup-sup @ Apr 2 2011, 19:46) ...   Apr 2 2011, 18:14
||- - sup-sup   Цитата(ViKo @ Apr 2 2011, 21:14) В том и ...   Apr 3 2011, 08:13
|- - Alexashka   Цитата(sup-sup @ Apr 1 2011, 22:57) ...   Apr 3 2011, 15:36
|- - sup-sup   Цитата(Alexashka @ Apr 3 2011, 18:36) Дык...   Apr 3 2011, 16:01
- - shf_05   Цитата(Alexashka @ Apr 1 2011, 16:15) Но ...   Apr 4 2011, 05:07
|- - Alexashka   Цитата(shf_05 @ Apr 4 2011, 09:07) если п...   Apr 4 2011, 10:42
|- - тау   Цитата(Alexashka @ Apr 4 2011, 14:42) Вот...   Apr 4 2011, 11:58
||- - ViKo   Цитата(тау @ Apr 4 2011, 14:58) применяйт...   Apr 4 2011, 14:55
|- - hobgoblin   ЦитатаЯ понял, т.е перед оцифровкой тогда мне нужн...   Apr 4 2011, 12:38
- - тау   Да, правильно. При этом , если ТС подгадает с длит...   Apr 4 2011, 15:05
- - Alexashka   Спасибо за наводку тау, hobgoblin, не слышал ранее...   Apr 4 2011, 18:12
|- - ViKo   Цитата(Alexashka @ Apr 4 2011, 21:12) Вот...   Apr 5 2011, 06:46
- - Alexashka   Промоделировал я "простейший CIC с прореживан...   Apr 5 2011, 10:18
|- - shf_05   Цитата(Alexashka @ Apr 5 2011, 16:18) одн...   Apr 5 2011, 10:40
|- - Alexashka   Цитата(shf_05 @ Apr 5 2011, 14:40) завал ...   Apr 5 2011, 11:36
|- - sup-sup   Цитата(Alexashka @ Apr 5 2011, 14:36) Да ...   Apr 5 2011, 14:02
|- - Alexashka   Цитата(sup-sup @ Apr 5 2011, 18:02) ...   Apr 5 2011, 17:22
|- - sup-sup   Цитата(Alexashka @ Apr 5 2011, 20:22) Иде...   Apr 5 2011, 19:51
|- - Alexashka   Цитата(sup-sup @ Apr 5 2011, 23:51) ...   Apr 5 2011, 20:13
|- - sup-sup   Цитата(Alexashka @ Apr 5 2011, 23:13) С э...   Apr 6 2011, 05:03
|- - тау   Цитата(Alexashka @ Apr 6 2011, 00:13) Пра...   Apr 6 2011, 08:02
|- - sup-sup   Еще раз обращаю внимание на то, что без внеполосно...   Apr 6 2011, 11:52
|- - Alexashka   Цитата(sup-sup @ Apr 6 2011, 15:52) ...   Apr 6 2011, 15:37
|- - alexkok   Цитата(Alexashka @ Apr 6 2011, 18:37) Т.е...   Apr 6 2011, 17:03
|- - Alexashka   Цитата(alexkok @ Apr 6 2011, 21:03) Легко...   Apr 7 2011, 05:24
|- - alexkok   Цитата(Alexashka @ Apr 7 2011, 08:24) Мож...   Apr 7 2011, 17:04
- - Дмитрий_Б   Цитата(Alexashka @ Apr 1 2011, 14:15) Вст...   Apr 5 2011, 20:33
|- - alexkok   Цитата(Дмитрий_Б @ Apr 5 2011, 23:33) При...   Apr 6 2011, 06:54
- - Alexashka   В общем попробовал все о чем говорили на модели. Ч...   Apr 7 2011, 10:39
|- - sup-sup   А зачем Вы добавляете шум в полосе?Это некорректны...   Apr 7 2011, 11:20
|- - Alexashka   Цитата(sup-sup @ Apr 7 2011, 15:20) ...   Apr 7 2011, 11:37
- - Alexashka   Вообщем при наложении треугольника A=1LSB происход...   Apr 8 2011, 06:48
|- - alexkok   Цитата(Alexashka @ Apr 8 2011, 09:48) Воо...   Apr 9 2011, 22:15
|- - Alexashka   Цитата(alexkok @ Apr 10 2011, 02:15) При ...   Apr 9 2011, 22:40
|- - alexkok   Цитата(Alexashka @ Apr 10 2011, 02:40) Эт...   Apr 10 2011, 04:41
|- - Alexashka   Цитата(alexkok @ Apr 10 2011, 08:41) Я не...   Apr 11 2011, 07:03
|- - ViKo   Цитата(Alexashka @ Apr 11 2011, 10:03) По...   Apr 11 2011, 07:24
|- - Alexashka   Цитата(ViKo @ Apr 11 2011, 11:24) 74dB эт...   Apr 11 2011, 07:53
- - ViKo   для Alexashka намекните, какой программой смотрите...   Apr 8 2011, 08:19
|- - Alexashka   Цитата(ViKo @ Apr 8 2011, 12:19) для Alex...   Apr 8 2011, 10:10
- - Александр77   Alexashka, проведи чистку почты - письма не отправ...   Apr 8 2011, 13:14


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 7th August 2025 - 17:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01455 секунд с 7
ELECTRONIX ©2004-2016