Перейти к содержанию
    

нужен генератор шума

Тактовая частота 1500 кГц. Шум должен быть в некоторой полосе вокруг половинной частоты. Это частота дискретизации ADC, а шум хочу попробовать для улучшения отношения сигнал/шум в полосе 0...100 кГц (сам ADC 12-битный, но SFDR 86 dB). Шум нужно будет подмешать во входной аналоговый сигнал ADC на уровне нескольких квантов. После оцифровки отфильтрую и сделаю децимацию.

ПЛИС Cyclone III.

Пока рассматриваю варианты на регистрах или применение сигма дельта модулятора. После них отфильтровать.

Как бы сделать это попроще. На выходе должно хватить однобитного потока.

Изменено пользователем sup-sup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

dither хотите сделать?

обычный генератор псевдослучайной последовательности (на LFSR) подойдет - если его выход пропустить через аналоговый ФНЧ с частотой среза значительно ниже Fclk, то шум будет практически белый. видел подобную схему в статье IEEE.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

dither хотите сделать?

обычный генератор псевдослучайной последовательности (на LFSR) подойдет - если его выход пропустить через аналоговый ФНЧ с частотой среза значительно ниже Fclk, то шум будет практически белый. видел подобную схему в статье IEEE.

LFSR (зацепился - регистр сдвига с линейной обратной связью - въезжаю в тему) - в общем понял (в математику пока трудно въехать - попробую просто реализовать)

Спасибо.

Кажется, я рано стал спрашивать, но процесс быстрее пошел.

Думал, что есть какой-нибудь wizard в quartus, но нашел только один генератор NCO - там есть фазовый шум. Попробую применить.

Дело остается в фильтре.

Хочу сделать цифровой, так как он нужен полосовой и с хорошим (?) затуханием как в диапазоне 0-100 кГц, так и в области Fs +/- 100 kHz.

***

Кажется. что-то не так. Если я возьму однобитный поток, то спектр будет периодический и попадет на Fs. Вообще то, диапазон ADC нужен 20 кГц - 100 кГц, поэтому можно допустить шумы в диапазон 0-20 кГц (Fs +/- 20 kHz). Получается, мне нужен меандр Fs/2 с полосой модуляции шума не более 20 кГц. Или все-таки, применить аналоговый фильтр. LC, что-ли?

В общем, нужен шум в несколько уровней квантования и чтобы он не попал в полосы сигнала и алиасинга.

***

У меня есть (был) реальный источник шума в виде импульсного источника питания (около 550 кГц) и после устранения его влияния оказалось (очень странно), что младший бит ADC практически не флуктуирует, что приводит к ухудшению разборчивости слабого сигнала к шуму в полосе приема. Получается, что с помехой от источника питания прием идет лучше. Но этот шум может поменять частоту и оказаться в полосе. Поэтому ищу источник контролируемого шума.

Изменено пользователем sup-sup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообще то, диапазон ADC нужен 20 кГц - 100 кГц

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно сделать еще "хитрее", если подмешать источник шума на ПСП к сигналу, а после преобразования его же вычесть математически из полученного кода.

 

post-10362-1294038291_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Думал, что есть какой-нибудь wizard в quartus, но нашел только один генератор NCO - там есть фазовый шум. Попробую применить.

это оно и есть, паразитки у NCO подавляет, ценой ухудшения SNR

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Изменено пользователем ledum

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

ADC ADS7883. Пока задача - выжать максимальный диапазон (80дБ будет хорошо) с тем, чтобы обойтись без AGC при малых сигналах. Действительно, в реальной среде, должны быть флуктуации, т.е. задача только (скорее всего) отладочная.

Я с Альтерой давно не работал - продвигаюсь медленно.

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

А с частотным диапазоном (шума) вопрос остался.

Понимаю, что лучше всего чтобы шум рос от 100кГц до частоты Fs/2 и потом падал до частоты Fs-100кГц.

Так как я хочу отыграть 10-20 дБ, то наверное и отношение плотности шума вне полосы относительно рабочего диапазона должно быть примерно таким же.

Но у меня нет DAC - могу только однобитный поток дать. И вопрос - как получить такое распределение шума (0дБ на частоте Fs/2 и спад по -20дБ до рабочей и зеркальной полос)...

***(Возможно, ответ уже был, но я еще не понял).

*** И с Новым Годом !!! :santa2:

Изменено пользователем sup-sup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Генератор шума сделал на сдвиговом регистре. Работает. Посмотрел спектр - почти равномерный. Замешал с сигналом через RC-цепь, поподбирал параметры - получил флуктуацию в пределах 2 бит. Теперь думаю как все-таки сосредоточить этот шум в нужной полосе. И можно ли обойтись однобитовым каналом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Генератор шума сделал на сдвиговом регистре. Работает. Посмотрел спектр - почти равномерный.

Какой длины регистр, отводы от каких разрядов? А спектр как смотрели? По-моему, он не должен быть равномерным, а sin(x)/x огибающая, зависящая от тактовой частоты, и внутри куча палок, зависящая от периода повторения последовательности (длины регистра). Хотя, может, и ошибаюсь. Сейчас гляну куда-нибудь.

Глянул - все так, как я сказал. Т.е., только в самом начале спектр примерно равномерный, потом спадает...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какой длины регистр, отводы от каких разрядов? А спектр как смотрели? По-моему, он не должен быть равномерным, а sin(x)/x огибающая, зависящая от тактовой частоты, и внутри куча палок, зависящая от периода повторения последовательности (длины регистра). Хотя, может, и ошибаюсь. Сейчас гляну куда-нибудь.

Глянул - все так, как я сказал. Т.е., только в самом начале спектр примерно равномерный, потом спадает...

Отводы от 17 и 30 разрядов. Частота CLK 50 MHz.

Сигнал записал на осциллограф и посмотрел спектр SPECTRAPLUSом.

Действительно, верхние частоты завалены.

 

Вот еще картинки слабого сигнала 50кГц.

1. без вмешательства

2. с подмешанным шумом

3. с подмешанным меандром 195 кГц (на 20 дБ выше, чем принимаемый сигнал).

Пока получается, что лучше всего подмешивать узкополосный вспомогательный 'сигнал', но думаю, я еще с шумом недоразобрался.

post-7997-1294161225_thumb.jpg

post-7997-1294161864_thumb.jpg

post-7997-1294161872_thumb.jpg

post-7997-1294161881_thumb.jpg

Изменено пользователем sup-sup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...