Jump to content

    

PDM to PCM

надо однобитовый PDM сигнал сделать PCM/8bits/16bits

 

не спрашиваю про алгоритм, написать нет проблем, но время жмет - может кто сразу может подсказать код, который проверен в той или иной степени?

Share this post


Link to post
Share on other sites

кстати , данные на входе, могут быть и в PWM

Share this post


Link to post
Share on other sites

Зависит от требований к SNDR, неравномерности в полосе, частоты входных и выходных данных и т.д. Обычно используется комбинация CIC и halfband фильтров, но возможно и один CIC сгодится. Так что без проработки математики не прокатит.

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

Share this post


Link to post
Share on other sites
Зависит от требований к SNDR, неравномерности в полосе, частоты входных и выходных данных и т.д. Обычно используется комбинация CIC и halfband фильтров, но возможно и один CIC сгодится. Так что без проработки математики не прокатит.

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

 

я конечно еще только буду разбираться с этой задачей , но почему то мне сдается что CIC это слишком крупно для подобной задачи,

почему именно CIC ?

Share this post


Link to post
Share on other sites

CIC потому что характеристики будут лучше, чем при простом усреднении по N отсчетам, но при этом тоже довольно легко реализовать в железе. По выходу CIC можно поставить КИХ фильтр, который будет работать с низкой частотой отсчетов и додавит внеполосные шумы, оставшиеся после CIC. Он же может использоваться для компенсации спада частотной характеристики CIC-фильтра в полосе пропускания.

 

Share this post


Link to post
Share on other sites
CIC потому что характеристики будут лучше, чем при простом усреднении по N отсчетам, но при этом тоже довольно легко реализовать в железе. По выходу CIC можно поставить КИХ фильтр, который будет работать с низкой частотой отсчетов и додавит внеполосные шумы, оставшиеся после CIC. Он же может использоваться для компенсации спада частотной характеристики CIC-фильтра в полосе пропускания.

 

сейчас просимулирую , как это с PWM сработает...

 

полагаясь что :

Pulse-width modulation (PWM) is the special case of PDM where all the pulses corresponding to one sample are contiguous in the digital signal.

 

PS оказывается для Quartus и СIC - надо своя лицензия,

ушел и в поиск ее... ( что то на ftp не вижу - буду благодарен помощи )

 

:) весело...

Share this post


Link to post
Share on other sites
PS оказывается для Quartus и СIC - надо своя лицензия,

ушел и в поиск ее... ( что то на ftp не вижу - буду благодарен помощи )

На OpenCores лежит вполне приличный CIC, да и самому его написать быстрее, чем искать ломалку(или зарабытавать деньги на лицензию).

Share this post


Link to post
Share on other sites
На OpenCores лежит вполне приличный CIC, да и самому его написать быстрее, чем искать ломалку(или зарабытавать деньги на лицензию).

 

очень хорошее дополнение - и просто и SV :)

результаты еще посмотрю , но после быстрого просмотра - вполне может подойти...

 

в MegaCore интерес факт FIR/compensation filter:

when the number of stages is large, the CIC filter

frequency response does not have a wide, flat pass band. To overcome the

magnitude droop, a FIR filter that has a magnitude response that is the

inverse of the CIC filter can be applied to achieve frequency response

correction. Such filters are called “compensation filters.”

http://www.altera.com/literature/an/an455.pdf

 

понятно, что это дополнительно и hobgoblin говорил об этом...

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