Jump to content

    
Sign in to follow this  
sergunas

Как повысить динамический диапазон АЦП?

Recommended Posts

Как побороть паразитные пики в спектре оцифрованного сигнала (от гармоник 3, 5 и т.д. порядка и от интермодуляционных состовляющих)? Дизеринг что-то не пойму как работает, не получается с его помощью побороть (проверяю в MATLAB на модели идеального АЦП).

Share this post


Link to post
Share on other sites

Размывание (Дизеринг) работает примерно следующим образом: когда уровень входного сигнала на АЦП достаточно мал (на уровне МР), то сигнал реже переходит границы между квантами АЦП. То есть цифровой эквивалент сигнала с АЦП получается как бы клиппированным (один уровень перешел, а до следующего далеко - вот и клиппирование - обрезание сверху и снизу). Т.о. шум квантования АЦП имеет гармоники, которые сужают ваш SFDR. Можно пойти таким путем: создается цифровой шум на уровне 1-2 МР со спектром, достаточно близким к белому. Далее подается на ЦАП (компаратор) и добавляется к входному аналоговому. При этом искусственно нарушается корреляция шума квантования с входым сигналом (входной аналоговый сигнал чаще пересекает границы квантов АЦП) и спектр шума квантования сглаживается. SNR несколько уменьшается, но зато увеличивается SFDR (это если нужно детектировать слабые зашумленные сигналы). Можно пойти еще дальше: вычитать из цифрового сигнала после АЦП тот шум (тоже цифровой), который вы добавляли ко входному сигналу. Честно говоря, сам я этого не пробовал, но умные люди пишут, что помогает.

Share this post


Link to post
Share on other sites
Как побороть паразитные пики в спектре оцифрованного сигнала (от гармоник 3, 5 и т.д. порядка и от интермодуляционных состовляющих)? Дизеринг что-то не пойму как работает, не получается с его помощью побороть (проверяю в MATLAB на модели идеального АЦП).

Так а причем тут "дизиринг" к интермодуляции??? Понятно что не получается... и не получится. Это совсем разные искажение и метод борьбы...

Размывание (Дизеринг) работает примерно следующим образом: когда уровень входного сигнала на АЦП достаточно мал (на уровне МР), то сигнал реже переходит границы между квантами АЦП. То есть цифровой эквивалент сигнала с АЦП получается как бы клиппированным (один уровень перешел, а до следующего далеко - вот и клиппирование - обрезание сверху и снизу). Т.о. шум квантования АЦП имеет гармоники, которые сужают ваш SFDR. Можно пойти таким путем: создается цифровой шум на уровне 1-2 МР со спектром, достаточно близким к белому. Далее подается на ЦАП (компаратор) и добавляется к входному аналоговому. При этом искусственно нарушается корреляция шума квантования с входым сигналом (входной аналоговый сигнал чаще пересекает границы квантов АЦП) и спектр шума квантования сглаживается. SNR несколько уменьшается, но зато увеличивается SFDR (это если нужно детектировать слабые зашумленные сигналы). Можно пойти еще дальше: вычитать из цифрового сигнала после АЦП тот шум (тоже цифровой), который вы добавляли ко входному сигналу. Честно говоря, сам я этого не пробовал, но умные люди пишут, что помогает.

Я, когда впервые о дизиринге читал не из рекламы, узрел что там английским по-белому было написано, что он эффективно подавляет корреляцию цифрового шума и звука, "как бы" добавляя несколько бит - в том плане, что АЦП на 14 бит с дизирингом звучит как АЦП на 16 бит без дизиринга.... Ключевое слово "звучит" - т.е. воспринимается человеком... Только и всего, потому он в музыкалке получил популярность. Но тут врямя от времени катают целые ветки на 50 страниц где доказывают "чистА математикАй", что если взять АЦП на 8 бит и добавить смеь булого шума, то на выходе впору считывать по 24 бита :biggrin: ....Очень сомневаюсь... Как и сомневаюсь в целесообразности применения онного метода в связных системах.

Share this post


Link to post
Share on other sites
Так а причем тут "дизиринг" к интермодуляции??? Понятно что не получается... и не получится. Это совсем разные искажение и метод борьбы...

Но у меня не получается с помощью дизеринга побороть паразитные пики даже от одной входной частоты, то есть, честно сказать, до интермодуляции даже ещё не добирался.

А что дизеринг для интермодуляционных пиков уже не применим? А какие тогда существуют методы борьбы с ними? Скажите хотя бы названия.

 

Также был бы очень признателен за ссылку где почитать.

Share this post


Link to post
Share on other sites

Диззеринг хорошо убирает малосигнальные искажения АЦП, когда на всю амплитуду сигнала приходится несколько младших разрядов АЦП. Но, когда Вы подаете на вход АЦП полномасштабный сигнал, то появляющиеся в спектре паразтные пики дизером не убрать.

Сначала надо определить источник этих самых (нелинейных искажений). Для начала надо проверить сам измерительный генератор, от которого вы подаете сигнал на вход Вашего АЦП. Самый простой способ - включить на выходе генератора полосовой фильтр, при чем у фильтра должен быть достаточно хороший VSWR в полосе пропускания.

Также, нелинейности (гармоники 2, 3, 5) могут рождаться в согласующей цепи входа АЦП: если Вы

используете активный драйвер АЦП (AD или LT), то оцените (по даташиту) его собственные нелинейности при работе с Вашими амплитудами и частотами; если Вы используете пассивную согласующе-симметрирующую цепь на ВЧ-трансформаторе, то эту цепь тоже желательно промерить на предмет нелинейных искажений для вВаших сигналов.

Ну, и конечно же, нельзя забывать про возможность потери какого-то разряда на выходе самого АЦП. При большой частоте дискретизации должны четко выполняться временные параметры зщелкивания сигнала АЦП в схему обработки (DDC или ПЛИС). Сам несколько раз попадался на этом.

 

Удачи.

Share this post


Link to post
Share on other sites
Но у меня не получается с помощью дизеринга побороть паразитные пики даже от одной входной частоты...

От одной частоты - это гармоники что ли? Так и не получиться - если потом вытягивать ту гармонику любым коррелятором или накопителем(то же FFT). Я же и говорю, это фишка обмануть ушки на не математику. Эту гармонику можно лишь стыдливо замаскировать, причем если она обусловлена именно грубым шагом квантования. Если она вызвана нелинейностью реального прибора в любом другом месте - то с ростом амплитуды сигнала она будет только расти! А это уже не тот случай!

то есть, честно сказать, до интермодуляции даже ещё не добирался.

А что дизеринг для интермодуляционных пиков уже не применим? А какие тогда существуют методы борьбы с ними? Скажите хотя бы названия.

 

Также был бы очень признателен за ссылку где почитать.

Если помеха стационарная(например стоЯщая на одном месте синусоида) - ее можно просто оценить и вычесть из сигнала. Если стохастическая - то методик подавления принципиально не существует - иначе это было бы противоречие с самим определением теории информации.Собственно интермодуляционный динамический есть одним из основных факторов качества в технических характеристиках современных радиоприемников - и наверно же недаром :) .

 

Занимался этим давно, Вам придется гуглить самому - адаптивная фильтрация...помехоустойчевый прием...системы радиопротиводействия - в таком духе. Ну и еще почитать инфу по теории информации, ТХ АЦП и современным РПУ...

Share this post


Link to post
Share on other sites

На мой взгляд, в первую очередь все же стоит занятся выяснением "генезиса" пиков (интермодуляция или гармоники?). далее искать место их появления, а в случае интермодуляции - ее "родителей". Т.е. воевать не со следствием , а с причиной

Share this post


Link to post
Share on other sites

2 soldat_shveyk

Спасибо за столь полный внятный ответ. Очень упорядочивает в голове...

Небольшой попутный вопрос:

если Вы используете пассивную согласующе-симметрирующую цепь на ВЧ-трансформаторе, то эту цепь тоже желательно промерить на предмет нелинейных искажений для Ваших сигналов.

А как это промеряется? Спектрографом? А можно как-то просчитать это заранее? Скажем, для активных элементов понятно как, там даются точки SOI, TOI. А для пассивных цепей как?

 

В приведенных Вами возможных ситуациях меня больше интересует искажения от самого АЦП в предположении идеального входного сигнала.

Диззеринг хорошо убирает малосигнальные искажения АЦП, когда на всю амплитуду сигнала приходится несколько младших разрядов АЦП. Но, когда Вы подаете на вход АЦП полномасштабный сигнал, то появляющиеся в спектре паразтные пики дизером не убрать.
Именно это я и наблюдаю в своей модели АЦП. Собственно вся модель АЦП описывается парой строчек:

Upp = 2; % Размах в Вольтах

r = 16; % Разрядность

Ustep = Upp / 2^r;

adc_out = Ustep * fix(adc_in / Ustep); % fix - целая часть

То есть модель учитывает только эффект квантования сигнала по уровню. По мере увеличения амплитуды дизера паразитные пики пропадают. Самый большой пик третьей гармоники пропадает, когда амплитуда дизера становится неприлично большой: чуть ли не больше самого сигнала. Отражает ли это практическое положение дел? То есть применимо ли на практике, когда сигналу и дизеру отводится по половине Full Scale АЦП.

 

 

На мой взгляд, в первую очередь все же стоит занятся выяснением "генезиса" пиков (интермодуляция или гармоники?). далее искать место их появления, а в случае интермодуляции - ее "родителей". Т.е. воевать не со следствием , а с причиной

Причина в итересуемом меня случае сам АЦП. Он сам пораждает и гармоники и интермодуляцию. Вопрос, как раз, как воевать с АЦП?

Share this post


Link to post
Share on other sites
2 soldat_shveyk

А как это промеряется? Спектрографом? А можно как-то просчитать это заранее? Скажем, для активных элементов понятно как, там даются точки SOI, TOI. А для пассивных цепей как?

 

Измерять можно с помощью анализатора спектра и двухсигнального генератора (либо два генератора включенные через сумматор с малой отдачей на общую нагрузку).

Двухсигнальный генератор подключаете ко входу согласующего трансформатора АУП - 50 Ом. На симметричной высокоомной строне трансформатора (200 Ом, если транс 1:4 по сопротивлению) включаете такой же трансформатор, чтобы согласоваться с 50-омным входом анализатора спектра. Между тарнсформаторами желательно вхлючить небольшой симметричный аттенюатор с затуханием 3..10 дБ для улучшения согластования в схеме и минимизации влияния трансов друг на друга. Генераторами устанавливаете требуемый размах сигнала на вторичной обмотке первого транса, например 3.2 В. По показаниям анализатроа спектра замеряете уровней между основным полезным сигналом и продуктом 3-го порядка. Находите IP3 и SFDR собственно трансформаторов. Естественно, счто SFDR согласующего трансформатора долженбыть больше SFDR АЦП, чтобы не вносить неустранимые нелинейные искажения еще до АЦП.

 

 

2 soldat_shveyk

 

В приведенных Вами возможных ситуациях меня больше интересует искажения от самого АЦП в предположении идеального входного сигнала.

 

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

 

Если вы хотите получть параметры больше, чем обеспечивает АЦП в стандартном включении, то можно применить последующую обработку сигнала для компенсации неленейнсти амплитудной характеристики АЦП. Капиталисты такое делают, что-то писали у Analog Dev. Наши соотечественники тоже работают на эту тему, насколько мне известно, есть успехи в компенсации нелинейностий 14-разрядного АЦП. Математический аппарат разработал лет 20-25 назад Ланне А.А.

 

 

 

Блин, сорри за правописание.

Русские буквы стерлись не клавиатуре ноутбука.

Share this post


Link to post
Share on other sites
То есть модель учитывает только эффект квантования сигнала по уровню. По мере увеличения амплитуды дизера паразитные пики пропадают. Самый большой пик третьей гармоники пропадает, когда амплитуда дизера становится неприлично большой: чуть ли не больше самого сигнала. Отражает ли это практическое положение дел? То есть применимо ли на практике, когда сигналу и дизеру отводится по половине Full Scale АЦП.

Это зависит от Вашей практики :). Но скорее всего неприемлемо.

 

Причина в итересуемом меня случае сам АЦП. Он сам пораждает и гармоники и интермодуляцию. Вопрос, как раз, как воевать с АЦП?

Что у Вас в коде символизирует f1, f2 и fc ? И можете прислать картинки с гармониками (2, 3, 5) и когда они пропадают?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this