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

генератор синуса в плис

Нужно сделать внутри плис генератор синуса и синхронизировать его с внешним сигналом. Как правильнее это сделать сгенерировать таблицу в матлаб и потом использовать регистры или блоки памяти для хранения может есть функции блоки sin cos на verilog? Нужно сделать такой модуль.

post-27923-1436455381_thumb.jpg

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


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

Есть готовые у Altera, Xilinx и др. Называются DDS среди IP-ядер.

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


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

Что правильнее использовать готовый модуль или сделать в матлаб и хранить в регистрах. Может у кого есть код для примера?

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


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

Сейчас гляну, в этих модулях есть возможность синхронизировать фазу внешним сигналом?

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


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

ИМХО, лучше сгенерировать таблицу нужного размера и нужной точности в Матлабе, а дальше уже танцевать с ней как-угодно.

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


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

Интересная задача, особенно синхронизация по фазе. Можно подать сигналы S1 и S2 на входы PLL, умножить их, скажем на 20-25, и использовать полученные клоки для счетчика фазы DDS. Полученный синус - пропустить через FIR фильтр (LPF).

А сигналы S1 и S2 имеют фиксированное смещение по фазе или случайное?

 

 

 

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

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


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

А о какой ПЛИС речь? Если ОЗУ на борту достаточно, то, конечно, задать таблицей четверть периода, да и всё. Если же только логика имеется, то тогда копать в сторону синтеза.

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


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

Про DDS и корку написали - у нее два входа phase_incremental и phase_offset (и у xilinx она оптимизирована насколько я помню под четверть периода и кучей настроек по оптимизации и используемым ресурсам). При большой разрядности можно добиться бешенной точности + есть возможность добавить настройками фазовые шумы и дополнительные фишки. В matlab/simulink есть, кстати, аналогичный блочок - NCO, но у него вроде разрядность ограниченна 32 бита.

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


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

Случайное зависит от расстояния. Плис ep3c5e. Проблема в измерении фазы по меандру он не совсем идеальный, проще вычислять с усреднением по синусу идея rloc и mcheb хорошая мысль :)

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

Вот видео

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


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

Сейчас пока нет возможности снять осциллограмму.

...

Как я понял, на видео та самая осциллограмма?

Неясно, зачем навороты с генераторами синусов, АЦП и т.д., если всё это синхронизируется от тех самых "плохих" фронтов?

 

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


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

Что-то мне говорит что точности в определении фазы это не добавит. Если бы у вас был аналоговый синус на выход и вход, то их произведение и фильтрация дали бы результат. А меандр он и есть меандр, значения синуса вы будете так же определять с какой-то частотой как и задавать, и вернетесь к исходной задаче...

 

ИМХО надо как-то 2 меандра перемножить аналогово и произведение уже аналогово цифровать, это сможет поднять разрешение

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


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

Шум снизил, вот видео понял попробую сделать схемку из меандра в синус а потом на ацп подать. И этот метод измерение оставить. Шум примерно 1Мкс по видео. какие еще рекомендации ?

 

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


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

какие еще рекомендации ?

Рекомендация от Козьмы Пруткова:

 

"Бросая в воду камешки, смотри на круги, ими образуемые; иначе такое бросание будет пустою забавою."

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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