Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выбрасываемые биты в CIC
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
diwil
Фильтр такой -
диф. задержка = 2
звеньев - 8
прореживание - 1450 (тысяча четыреста пятьдесят)
вход.выход = 32 бита.

У меня получается следующая последовательность количества бит:
125 113 102 91 81 71 61 51 | 46 45 44 43 42 41 40 40
Ну и в конце сброс с 40 бит до 32х

Или я что-то не правильно делаю, или...
В общем сигнал на выходе примерно 1/2 от входного.

Фильтр с другими параметрами работает правильно.

Если кто может посчитать эту последовательность, то быду безумно признателен в пределах разумного.
Самурай
Цитата(diwil @ Aug 21 2009, 15:01) *
Фильтр такой -
диф. задержка = 2
звеньев - 8
прореживание - 1450 (тысяча четыреста пятьдесят)
вход.выход = 32 бита.

У меня получается следующая последовательность количества бит:
125 113 102 91 81 71 61 51 | 46 45 44 43 42 41 40 40
Ну и в конце сброс с 40 бит до 32х

Или я что-то не правильно делаю, или...
В общем сигнал на выходе примерно 1/2 от входного.

Фильтр с другими параметрами работает правильно.

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


Для CIC фильтра отношение выход/вход на нулевой частоте равно (R*M)^N, где R-прореживание, M-диф.задержка, N-число звеньев. Очевидно, что нормирование АЧХ к единице, выполняемое путем простейшего отбрасыванием младших разрядов прокатывает далеко не всегда, а только в случае, когда R*M равно степени двойки. В остальных случаях выход фильтра масштабируется умножением на некоторый коэффициент.

Вот и у Вас, (1450*2)^8 это примерно 1.0102*2^92, следовательно, для представления выходного сигнала после фильтра с абсолютной точностью нужно 93+32 = 125 разрядов. И нормирование выхода путем простого отбрасывания 93 младших разрядов и дает те самые "примерно 1/2 от входного", а точнее 0.5051. Это, разумеется, без учета погрешностей от округления на промежуточных стадиях, но это Вы уж сами считайте как они влияют на результатsmile.gif
Maverick
Цитата(Самурай @ Aug 25 2009, 13:00) *
Для CIC фильтра отношение выход/вход на нулевой частоте равно (R*M)^N, где R-прореживание, M-диф.задержка, N-число звеньев. Очевидно, что нормирование АЧХ к единице, выполняемое путем простейшего отбрасыванием младших разрядов прокатывает далеко не всегда, а только в случае, когда R*M равно степени двойки. В остальных случаях выход фильтра масштабируется умножением на некоторый коэффициент.

Вот и у Вас, (1450*2)^8 это примерно 1.0102*2^92, следовательно, для представления выходного сигнала после фильтра с абсолютной точностью нужно 93+32 = 125 разрядов. И нормирование выхода путем простого отбрасывания 93 младших разрядов и дает те самые "примерно 1/2 от входного", а точнее 0.5051. Это, разумеется, без учета погрешностей от округления на промежуточных стадиях, но это Вы уж сами считайте как они влияют на результатsm.gif

пожалуйста помогите понять откуда

Цитата
точнее 0.5051

как получилось?
des00
Цитата(Maverick @ Feb 26 2014, 17:16) *
как получилось?

вот так (1.0102*2^92 >> 93)
Maverick
Цитата(des00 @ Feb 26 2014, 12:21) *
вот так (1.0102*2^92 >> 93)

огромное спасибо!!!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.