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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Корректировка мультиплексированных АЦП
akrabad
сообщение Nov 17 2015, 04:28
Сообщение #1





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



Здравствуйте. Для повышения частоты дискретизации с наименьшими затратами используют простой способ - параллельное включение 2-x АЦП или более, что дает увеличение частоты дискретизации в два раза. Минус такого способа состоит в том, что возникают ошибки усиления, смещения и фазы. Это прекрасно видно в спектре сигнала. К примеру, для сигнала с частотой f0, пропущенного через такую систему АЦП, будут присутствовать "ложные" пики. Для ошибки смещения - на частоте Fs/2. Для гэйна и фазовой ошибок на частоте (Fs/2 - fo). Существуют варианты корректировок таких сигналов. Самый простой из них - с помощью FIR фильтра. Этот фильтр, по сути, является задержкой во втором канале относительно первого. Он пересчитывает отсчеты сигнала так, чтобы они соответствовали своему "реальному положению". Импульсная характеристика такого фильтра есть не что иное, как кардинальный синус( sinc(Pi *x ) ), где x - рассчитанная задержка. Пускай x = 0.001; (Для Fs = 2064384 и задержки во втором канале в 1 нс). Сигнал корректируется. С определенными результатами, но корректируется. После Fs/4 сигнал корректируется только если x = - 0.001, хотя мне надо, чтобы x был равен 0.001. Объясните пожалуйста, в чем проблема. И как это можно исправить.
Информацию о методах корректировок беру из статей на английском, ибо наши об этом почти не пишут.

Сообщение отредактировал akrabad - Nov 17 2015, 04:31
Go to the top of the page
 
+Quote Post
Myron
сообщение Nov 17 2015, 04:39
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 849
Регистрация: 6-02-05
Пользователь №: 2 451



Цитата(akrabad @ Nov 16 2015, 22:28) *
Здравствуйте. Для повышения частоты дискретизации с наименьшими затратами используют простой способ - параллельное включение 2-x АЦП или более, что дает увеличение частоты дискретизации в два раза. Минус такого способа состоит в том, что возникают ошибки усиления, смещения и фазы. Это прекрасно видно в спектре сигнала. К примеру, для сигнала с частотой f0, пропущенного через такую систему АЦП, будут присутствовать "ложные" пики. Для ошибки смещения - на частоте Fs/2. Для гэйна и фазовой ошибок на частоте (Fs/2 - fo). Существуют варианты корректировок таких сигналов. Самый простой из них - с помощью FIR фильтра. Этот фильтр, по сути, является задержкой во втором канале относительно первого. Он пересчитывает отсчеты сигнала так, чтобы они соответствовали своему "реальному положению". Импульсная характеристика такого фильтра есть не что иное, как кардинальный синус( sinc(Pi *x ) ), где x - рассчитанная задержка. Пускай x = 0.001; (Для Fs = 2064384 и задержки во втором канале в 1 нс). Сигнал корректируется. С определенными результатами, но корректируется. После Fs/4 сигнал корректируется только если x = - 0.001, хотя мне надо, чтобы x был равен 0.001. Объясните пожалуйста, в чем проблема. И как это можно исправить. Информацию о методах корректировок беру из статей на английском, ибо наши об этом почти не пишут.
Приведите, пожалуйста, ссылки на статьи (или сами статьи).
Go to the top of the page
 
+Quote Post
akrabad
сообщение Nov 17 2015, 04:52
Сообщение #3





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



Цитата(Myron @ Nov 17 2015, 10:39) *
Приведите, пожалуйста, ссылки на статьи (или сами статьи).

https://drive.google.com/file/d/0B-a0qo3gvn...iew?usp=sharing
https://drive.google.com/file/d/0B-a0qo3gvn...iew?usp=sharing

Автор первой статьи продвигает немного измененную формулу для расчета импульсной характеристики фильтра, которая не подходит в моем случае - для разных частот нужны разные иксы. Из второй статьи беру детектор, который как раз и сходится к тому x = 0.001 для частот меньших Fs/4. Что и нужно.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Nov 17 2015, 06:40
Сообщение #4


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(akrabad @ Nov 17 2015, 07:52) *
Автор первой статьи продвигает немного измененную формулу для расчета импульсной характеристики фильтра, которая не подходит в моем случае - для разных частот нужны разные иксы. Из второй статьи беру детектор, который как раз и сходится к тому x = 0.001 для частот меньших Fs/4. Что и нужно.

Поигрался в своё время с первой статьёй,потом понял что зря время теряю,и именно по этой причине для разных частот нужны разные иксы. В итоге сделал корректор по прилагаемой статье,результат превзошёл самые смелые ожидания.
Прикрепленные файлы
Прикрепленный файл  Bandwidth_Mismatch_and_Its_Correction_in_ADC.pdf ( 147.05 килобайт ) Кол-во скачиваний: 178
 
Go to the top of the page
 
+Quote Post
akrabad
сообщение Nov 17 2015, 07:22
Сообщение #5





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



Цитата(_Anatoliy @ Nov 17 2015, 13:40) *
Поигрался в своё время с первой статьёй,потом понял что зря время теряю,и именно по этой причине для разных частот нужны разные иксы. В итоге сделал корректор по прилагаемой статье,результат превзошёл самые смелые ожидания.

Посмотрел по-быстрому статью. Схема корректировки содержит два фильтра, которые фильтруют "эффекты", вносимые SHA, и уничтожают(eliminate) мнимые компоненты. Результаты корректировки в статье отличные. Пики на уровне - 90dB, что мне и нужно. Но я не могу использовать SHA. Его попросту нет. У меня есть две АЦП в устройстве и ПЛИС, которая и будет выполнять цифровую корректировку на заднем плане (digital background calibration) Если я сказал что-то не так по поводу "вашей" статьи, то, пожалуйста, поправьте.
В первом сообщение я спрашивал о "физике" процесса корректировки фильтром. Фильтр sinc компенсирует фазовое отклонение сигнала.
Пускай отсчеты идеального сигнала приходят раньше, чем надо. Фильтром sinc мы их пересчитываем на те значение, которые должны были быть. Создаем задержку. Для идеального сигнала мы ее знаем. Тогда почему после Fs/4 такой косяк со знаком возникает?


http://www.labbookpages.co.uk/audio/beamfo...ionalDelay.html
Пример, после которого я решил заменить фильтр из статьи ( https://drive.google.com/file/d/0B-a0qo3gvn...1eTA/view?pli=1 ) на фильтр sinc.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Nov 17 2015, 07:42
Сообщение #6


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(akrabad @ Nov 17 2015, 10:22) *
Посмотрел по-быстрому статью. Схема корректировки содержит два фильтра, которые фильтруют "эффекты", вносимые SHA, и уничтожают(eliminate) мнимые компоненты. Результаты корректировки в статье отличные. Пики на уровне - 90dB, что мне и нужно. Но я не могу использовать SHA. Его попросту нет. У меня есть две АЦП в устройстве и ПЛИС, которая и будет выполнять цифровую корректировку на заднем плане (digital background calibration) Если я сказал что-то не так по поводу "вашей" статьи, то, пожалуйста, поправьте.

Вам не нужен никакой SHA(он внутри АЦП). А я так и делал: два АЦП+FPGA. После калибровки проверял в диапазоне температур - полёт нормальный.
Go to the top of the page
 
+Quote Post
akrabad
сообщение Nov 17 2015, 07:46
Сообщение #7





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



Цитата(_Anatoliy @ Nov 17 2015, 14:42) *
Вам не нужен никакой SHA(он внутри АЦП). А я так и делал: два АЦП+FPGA. После калибровки проверял в дипазоне температур - полёт нормальный.

Хорошо, попробую. Спасибо за статью! Я ее до этого видел, вроде бы, но из-за моего незнания отбросил.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Nov 17 2015, 07:57
Сообщение #8


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(akrabad @ Nov 17 2015, 10:46) *
Хорошо, попробую. Спасибо за статью! Я ее до этого видел, вроде бы, но из-за моего незнания отбросил.

Кстати я обошёлся одним фильтром,а не двумя.
Go to the top of the page
 
+Quote Post
_pv
сообщение Nov 17 2015, 09:55
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(akrabad @ Nov 17 2015, 13:22) *
В первом сообщение я спрашивал о "физике" процесса корректировки фильтром. Фильтр sinc компенсирует фазовое отклонение сигнала.
Пускай отсчеты идеального сигнала приходят раньше, чем надо. Фильтром sinc мы их пересчитываем на те значение, которые должны были быть. Создаем задержку. Для идеального сигнала мы ее знаем. Тогда почему после Fs/4 такой косяк со знаком возникает?

помимо фазы есть еще амплитуда, почему бы просто не построить АЧХ и ФЧХ обоих каналов независимо, взять разницу и по получившимся разностных характеристикам построить подходящий фильтр.

но для начала попробуйте просто убрать ошибки усиления и смещения просто по DC, а для сдвига фазы одному каналу добавте интерполятор, для начала линейный, не хватит - http://www.dsplib.ru/content/farrow/farrow.html
Go to the top of the page
 
+Quote Post
akrabad
сообщение Nov 24 2015, 09:33
Сообщение #10





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



Цитата(_Anatoliy @ Nov 17 2015, 13:40) *
Поигрался в своё время с первой статьёй,потом понял что зря время теряю,и именно по этой причине для разных частот нужны разные иксы. В итоге сделал корректор по прилагаемой статье,результат превзошёл самые смелые ожидания.

При моделировании фильтров F1 и F2, по формулам из статьи, с частотой дискретизации = 206438400, тау1 = 1.001*10^(-9), тау2 = 1.003*10^(-9), где тау1 и тау2 - постоянные времени RC-цепочек, получил график АЧХ, похожий на график АЧХ в статье. Синий - F1. Зеленый - F2.

Эти фильтры зависят, по-сути, только от этих тау. Как узнать их для реального устройства? Как Вы их узнавали? Каким-то детектором?
И еще один вопрос. Для замены двух фильтров одним необходимо поделить F2(w) на F1(w)?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Nov 26 2015, 06:35
Сообщение #11


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Вот модуль коэффициента передачи моего корректирующего фильтра в полосе 500МГц.

Цитата(akrabad @ Nov 24 2015, 12:33) *
Как Вы их узнавали? Каким-то детектором?

Нет,просто набирал отсчёты с каждого АЦП подавая на вход сетку частот контрольного сигнала. Отсчёты скармливал в матлаб,он мне выдавал нужную ИХ корректора. В статье есть все необходимые формулы.
Цитата(akrabad @ Nov 24 2015, 12:33) *
Для замены двух фильтров одним необходимо поделить F2(w) на F1(w)?

Да,именно так я и сделал.

Кстати,могу показать сигнал на выходе корректора.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
akrabad
сообщение Dec 23 2015, 10:56
Сообщение #12





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



При корректирующей фильтрации канала, интерполированного нулями в два раза, происходит корректировка не только полезного сигнала, но и его "копии".
Т.к. мы эту "копию" откорректировали, то она появилась на выходе.
Как это надо учесть при расчете фильтров(а)?
По формулам из статьи, предоставленной пользователем _Anatoliy, я так до конца и не уяснил метод корректировки, а точнее, его реализацию.


Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Dec 23 2015, 11:59
Сообщение #13


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(akrabad @ Dec 23 2015, 13:56) *
Т.к. мы эту "копию" откорректировали, то она появилась на выходе.
Как это надо учесть при расчете фильтров(а)?

Никак не учитывать. Не забывайте что при откорректированном основном сигнале образ интерливинга будет уничтожен.
Go to the top of the page
 
+Quote Post
akrabad
сообщение Dec 23 2015, 12:25
Сообщение #14





Группа: Участник
Сообщений: 10
Регистрация: 20-08-15
Пользователь №: 88 064



Цитата(_Anatoliy @ Dec 23 2015, 18:59) *
Никак не учитывать. Не забывайте что при откорректированном основном сигнале образ интерливинга будет уничтожен.

Если я корректирую канал фильтром от 0 до Fs/4, где Fs - результирующая частота дискретизации двух АЦП, то сигналы, поступающие от 0 до Fs/4 корректируются.
Но при использовании апсамплинга и фильтра от 0 до Fs/2 сигнал не корректируется. Они не корректируются потому что при апсамплинге возникает копия спектра.

Если задавать АЧХ и ФЧХ по значениям для конкретной частоты, то мы можем корректировать эту частоту.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Dec 23 2015, 12:31
Сообщение #15


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(akrabad @ Dec 23 2015, 15:25) *
Если я корректирую канал фильтром от 0 до Fs/4, где Fs - результирующая частота дискретизации двух АЦП, то сигналы, поступающие от 0 до Fs/4 корректируются.
Но при использовании апсамплинга и фильтра от 0 до Fs/2 сигнал не корректируется. Они не корректируются потому что при апсамплинге возникает копия спектра.
Если задавать АЧХ и ФЧХ по значениям для конкретной частоты, то мы можем корректировать эту частоту.

Что то делаете не так. На моей картинке видно что образ надёжно сидит в шумах. А сколько тапов у вашего корректирующего фильтра?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 16th June 2025 - 09:52
Рейтинг@Mail.ru


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