Jump to content

    

Непонятное поведение шума

2 минуты назад, blackfin сказал:

То в спектре появятся линии расположенные рядом с частотой:

ω = ω1 - ω2

Спасибо! Надо переварить...

Share this post


Link to post
Share on other sites

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

Спасибо за наводку!

Share this post


Link to post
Share on other sites
17 hours ago, _sda said:

Можете как то прокомментировать ситуацию

Вы были правы, проблема в БПФ. Я всегда использовал только целочисленные FFT  Altrea, с ними таких проблем не было. 
Думаю, надо разобраться с моделью БПФ. 
Хотя, можно еще один эксперимент поставить - дать на вход идеальный сигнал без шумов квантования - 1/4  Fs: 1+i0, 0+i1, -1+i0, 0-1i. 
У такого NCO нет спуров и шумов в принципе. Но поведение БПФ будет скорее всего такое же. 

Share this post


Link to post
Share on other sites
1 час назад, soldat_shveyk сказал:

Вы были правы, проблема в БПФ. Я всегда использовал только целочисленные FFT  Altrea, с ними таких проблем не было. 
Думаю, надо разобраться с моделью БПФ. 
Хотя, можно еще один эксперимент поставить - дать на вход идеальный сигнал без шумов квантования - 1/4  Fs: 1+i0, 0+i1, -1+i0, 0-1i. 
У такого NCO нет спуров и шумов в принципе. Но поведение БПФ будет скорее всего такое же. 

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

Это у меня 4К и уже обжёгся, а если потребуется 16К или 32К (а заявлено 64К)? 

С проблемой вроде разъяснилось, теперь вопрос как исправить ситуацию? У меня крутится шальная мысль попытаться приспособить под свою задачу режим Variable Streaming с Fixed-Point.

Вроде не сильно усложнится управление. Никто не пробовал таким образом работать в режиме burst?

Share this post


Link to post
Share on other sites
19 hours ago, _sda said:

Спасибо! А что за функция bi_cmplx_satu?

Просто ограничение квадратур комплексного числа, в данном случае до DATA_PREC бит.

Кстати, я почитал как работает БПФ-кора в режиме с плавающей запятой и выяснил, что после каждой стадии конвейера он ещё более лихо начинает масштабировать результаты (разработчки, видимо, тоже решили: а чего, плавающая запятая, ни о чём думать не надо :( ). Ну и результат по мантиссе в том, что даже тех теоретических 72дБ, что я вам выше насчитал по целочисленном ядру, может не быть (что, кстати и видно по вашим графикам). У вас там вообще, похоже, "шумовой" уровень начинается в районе -60дБ. Я не в точности понял, что у вас за задача. Но у нас, например, то же сажтие сигнала для радиолокационных задач динамика хуже 85-90дБ - это вообще не серъёзный разговор.

Share this post


Link to post
Share on other sites
12 минут назад, Kluwer сказал:

Просто ограничение квадратур комплексного числа, в данном случае до DATA_PREC бит.

Кстати, я почитал как работает БПФ-кора в режиме с плавающей запятой и выяснил, что после каждой стадии конвейера он ещё более лихо начинает масштабировать результаты (разработчки, видимо, тоже решили: а чего, плавающая запятая, ни о чём думать не надо :( ). Ну и результат по мантиссе в том, что даже тех теоретических 72дБ, что я вам выше насчитал по целочисленном ядру, может не быть (что, кстати и видно по вашим графикам). У вас там вообще, похоже, "шумовой" уровень начинается в районе -60дБ. Я не в точности понял, что у вас за задача. Но у нас, например, то же сажтие сигнала для радиолокационных задач динамика хуже 85-90дБ - это вообще не серъёзный разговор.

Согласен с вами, но у нас это как пробный забег - надо же с чего-то начинать. Делаем из того что под рукой есть...

Share this post


Link to post
Share on other sites

Извиняюсь, ребята, но похоже следствие зашло в тупик. Сейчас для очистки совести собрал БПФ размером 1К - шум остался дёрганым.

Хочу сказать что БПФ такого размера я делал десятками в разных изделиях и ни разу такого не наблюдал. Походу плавучка здесь не причём, напраслину кидал в Альтеру.:cray:

 

Share this post


Link to post
Share on other sites

Ай спасибо, добрый человек, коллега soldat_shveyk! :drinks:

Если бы не Ваш намёк на NCO с Fs/4 - долго бы я ещё кувыркался!

Причину устранил отключив несколько модулей в проекте. Следствие подходит к концу.

Share this post


Link to post
Share on other sites
1 час назад, soldat_shveyk сказал:

На здоровье!  
Альтера снова вне подозрения :)

Та вроде опять на неё зуб растёт... Посмотрите,плз, личку.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this