Jump to content

    

Помощь в написании интегратора и БИХ фильтра на VERILOG

Добрый день!

Прошу помочь разобраться в следующем: есть схема, состоящая из АЦП - ПЛИС - ЦАП.

При реализации интегратора как сумматора с накопление на выходе ЦАП получаю пилообразный сигнал, в том случае когда на вход АЦП ничего не подается.

Ну а если подать на вход АЦП синус то выходной сигнал с ЦАП вообще не корректен.

С БИХ фильтром такая же ситуация.

Дело видимо в обратных связях в схеме интегратора и фильтра.

 

Спасибо за помощь!

Share this post


Link to post
Share on other sites

А что хотите увидеть на выходе ЦАП в зависимости от входа АЦП?

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

Share this post


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

А что хотите увидеть на выходе ЦАП в зависимости от входа АЦП?

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

Если подать на вход АЦП синус, то на выходе ЦАП хотелось бы увидеть синус сдвинутый по фазе (при реализации интегратора).

Если реализовать на ПЛИС просто прием-передатчик в том плане что просто принял сигнал и выдал его, то на выходе с ЦАП получаем все тоже самое что и на входе АЦП.

Как только внутри ПЛИС появляется схема с обратной связью то на выходе получаем пилу.

 

Share this post


Link to post
Share on other sites

Приветствую!

11 minutes ago, quato_a said:

...  Который если зайдет на интегратор, ну не даст пилу.

При одном условии - если на выходе ADC нет постоянного смещения (DC offset).  А оно (смещение) обычно присутствует.:cray2:

Удачи!  Rob. 

Edited by RobFPGA

Share this post


Link to post
Share on other sites

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

Share this post


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

Приветствую!

При одном условии - если на выходе ADC нет постоянного смещения (DC offset).  А оно (смещение) обычно присутствует.:cray2:

Удачи!  Rob. 

 

Спасибо, можете подсказать как исключить подобное?

Только что, Skryppy сказал:

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

DDS делал изначально, что бы проверить ЦАП.

В любом случае спасибо за совет.

Share this post


Link to post
Share on other sites

Если с dds+бих фильтр+цап нет проблем, то шаманить с АЦП. Если так работать не будет, то:

Подайте в чипскоп данные с выхода dds, промежуточные данные с различных вычислительных частей вашей цифровой схемы, с выхода вашей схемы. Проверьте нет ли нигде переполнений , соответствует ли ваш выход с ожидаемым.

Share this post


Link to post
Share on other sites

Приветствую!

1 minute ago, Aleksey25 said:

Спасибо, можете подсказать как исключить подобное?

DC offset? -  никак.   Я бы  подумал над тем  зачем вам в цепи обработки  сигнала интегратор. Если, для того чтобы интегрировать ошибку в петле  снаружи FPGA – то тогда эту петлю надо замыкать. Ну а если для фильтрации - то тогда использовать фильтр не содержащий идеального интегратора.

Удачи! Rob.

 

 

Share this post


Link to post
Share on other sites

Приветствую!

13 minutes ago, quato_a said:

DC offset можно устранить скользящим средним.

:wink2:  Можно ...  НО с определенно, конечной точностью  :scratch_one-s_head:  - а затем  результат  на идеальный интегратор ....  медленнее, но на выходе все же получите туже пилу :unknw:

Удачи! Rob.  

 

Share this post


Link to post
Share on other sites
1 hour ago, RobFPGA said:

Приветствую!

:wink2:  Можно ...  НО с определенно, конечной точностью  :scratch_one-s_head:  - а затем  результат  на идеальный интегратор ....  медленнее, но на выходе все же получите туже пилу :unknw:

Удачи! Rob.  

 

Конечной точностью, определяемой глубиной скользящего :wink2:

Share this post


Link to post
Share on other sites
8 часов назад, quato_a сказал:

DC offset можно устранить скользящим средним.

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

Edited by _sda

Share this post


Link to post
Share on other sites
12 часов назад, _sda сказал:

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

 

Можете Вы что то посоветовать?

Share this post


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

Можете Вы что то посоветовать?

вам человек советовал проверить ваш интегратор  в цепочке: dds - интегратор - цап , вы так и проверяли? А то такое ощущение что вы проверяли связку: dds - цап.

Edited by Lmx2315

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