реклама на сайте
подробности

 
 
> fdatool в MATLab, трабла, помогите разобраться
KolyanV
сообщение Feb 12 2006, 18:35
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 1-06-05
Пользователь №: 5 621



Здравствуйте!
Использовал ранее утилиту fdatool в MATLAB 6.5 для рассчетов FIR фильтров. Тут понадобилось рассчитать несколько IIR (БИХ) фильтров. Взял для примера фильтр Баттервуорта. Задал параметры, указал порядок. Сгенерировал фильтр. Включил рассчет квантования, в дополнительных настройках квантования включил нормализацию Numerator и Denominator так, чтобы они не были больше 1.0.
Пересчитал фильтр. По АЧХ фильтр подошел, рассчитаные коэффициенты я подставил в код своей программы. При прогоне фильтра на тестовом сигнале с плавнорастущей частотой тона с 20Гц до 10кГц оказалось, что общий уровень выходного сигнала выше входного. Причем, уровень растет пропорционально количеству секций фильтра и рост составляет около 4.2 дБ на секцию фильтра. Т.е для фильтра 20-го порядка (10 секций), рост уровня состовляет более 42 дБ. При работе с FIR фильтрами рассчитанными в MATLAB-е сподобными проблемами не сталкивался. Сначала грешил на свой алгоритм фильтрации. Для теста взял коэффициены вычисленные с помощью утилиты CIIRF1.EXE (http://www.rid.mv.ru/iir/iir.htm). По коэффициентам выданными этой программой, выходной сигнал после обработки моим алгоритмом фильтрации получился совершенно корректным (без общего поднятия/опускания уровня) и соответсвовал заданной АЧХ. Кроме того, меня настораживает тот факт, что для фильтра Баттервуорта, независимо от его порядка и других параметров Numerator всех секций фильтра равны (0.25 0.50 0.25)
Пример:
Numerator
QuantizedCoefficients{1}{1} ReferenceCoefficients{1}{1}
(1) 0.250000000000000 0.250000000000000000
(2) 0.500000000000000 0.500000000000000000
(3) 0.250000000000000 0.250000000000000000
Повторюсь - коффициенты нормализуются к диапазону [-1;1]

Подскажите, в чем проблема? Кто сталкивался с подобным? Как рассчитать "правильные" коэфициенты?

P.S: Для режима БЕЗ нормализации до [-1;1] с параметрами квантования коэффициентов [16 14] картина абсолютна та же.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Doka
сообщение Apr 11 2007, 21:05
Сообщение #2


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



ну не знаю, что все так привязались к этой фиче FDAToolа , начиная с 7й версии: если уж так надо - то реализуйте КИХ-фильтра заданного порядка и из FDATool конвертните в VHDL - потом ко всему этому делу только блок обновления коэф-тов написать (подавать вместо контант, прописанных в VHDL).
Хотя как раз в описании линейки сумматоров и умножителей не вижу ничего сложного.

PS: обратите внимание на эту тему: http://electronix.ru/forum/index.php?showtopic=29110


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd August 2025 - 05:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01376 секунд с 7
ELECTRONIX ©2004-2016