aBoomest 0 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба Добрый день. Есть БИХ фильтр. Вопрос в том, что коэффициенты фильтра имеют различие на 5 порядков (единицы и десятитысячные). Все бы хорошо если тип single или double. Если нет, то точность выходного значения падает. Есть выход из подобных ситуаций? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andyp 10 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба Точность выходного значения - это о чем? Квантование коэффициентов смещает нули и полюса и изменяет АЧХ фильтра. Если фильтр продолжает удовлетворять спецификации, то и бог с ним. Если нет - существует масса вариантов: Правильно разбить на секции второго порядка, изменять входные параметры, двигать уже нули и полюса... В общем, надо уметь разрабатывать такие фильтры. Но и это все может не помочь. Тогда придется обсудить изменение спецификаций. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aBoomest 0 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба 43 minutes ago, andyp said: Точность выходного значения - это о чем? Квантование коэффициентов смещает нули и полюса и изменяет АЧХ фильтра. Точность = отличие, например, амплитуды выхода на 12-15 % от теоретически задуманного. 45 minutes ago, andyp said: Если фильтр продолжает удовлетворять спецификации, то и бог с ним. Нет. Не продолжает. 45 minutes ago, andyp said: В общем, надо уметь разрабатывать такие фильтры. Круто! Главное информативно и обстоятельно! 48 minutes ago, andyp said: Правильно разбить на секции второго порядка Есть какие-то рекомендации? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 78 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба пример бы привели, что именно не так. в целочисленных 32х разрядах 9 с половиной десятичных порядков динамического диапазона. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба 2 часа назад, aBoomest сказал: Есть какие-то рекомендации? тупо увеличить разрядность. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andyp 10 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба 2 hours ago, aBoomest said: Круто! Главное информативно и обстоятельно! Примерно на том же уровне, что и стартовый вопрос. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба 25 минут назад, _pv сказал: в целочисленных 32х разрядах 9 с половиной десятичных порядков динамического диапазона. ....а если к ним добавить ещё 32 бита, так и вообще космос получится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andyp 10 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба 2 hours ago, aBoomest said: Есть какие-то рекомендации? Например, tf2sos в Матлабе. В секции брать близкие пары нулей и полюсов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба Только что, andyp сказал: Примерно на том же уровне, что и стартовый вопрос. Вангую, что говоря о некоей "точности", ТС видимо сравнивает результат, получившийся на некоей его реализации (о которой также можно только гадать), с реализацией на double. Вот что выдаёт хрустальный шар. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aBoomest 0 19 сентября, 2023 Опубликовано 19 сентября, 2023 (изменено) · Жалоба 7 hours ago, _pv said: в целочисленных 32х разрядах 9 с половиной десятичных порядков динамического диапазона. А в 15-ти с фиксированной? (на сколько я знаю что фиксированная точка) Это мне весьма интересно, я про диапазон. Не подскажете л-ру где описано как это расчитывается, оценивается, . . а то я 1-й раз с подобными фильтрами сталкиваюсь. 6 hours ago, andyp said: Примерно на том же уровне, что и стартовый вопрос. Нет. 6 hours ago, andyp said: Например, tf2sos в Матлабе. В секции брать близкие пары нулей и полюсов. Спасибо! Мысль! Я посмотрю, просто думаю там близких нет. Там всего то 3й порядок. Но при этом коэффициенты знаменателя в районе единиц, а числителя в районе десятитысячных. Т.е. постоянная времени очень большая. Доля на выходе от входного сигнала на каждом шаге очень маленькая. И на фоне коэффициентов числителя ее не видно и это приводит к погрешностям. Это на сколько я могу судить, на пальцах. 6 hours ago, jcxz said: ТС видимо сравнивает результат, получившийся на некоей его реализации (о которой также можно только гадать), с реализацией на double. Тут и к гадалке не ходи, так и есть. С чем еще сравнивать вы предлагаете? Изменено 19 сентября, 2023 пользователем aBoomest Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 25 19 сентября, 2023 Опубликовано 19 сентября, 2023 · Жалоба On 9/19/2023 at 9:19 PM, aBoomest said: Т.е. постоянная времени очень большая. Да!!! "В жизни бывают минуты, когда всё решают секунды! И это может длиться часами!!!" Так чему равна постоянная времени? Вообще, нужно сразу указывать все параметры фильтра. Только так получится предметный разговор. On 9/19/2023 at 9:19 PM, aBoomest said: С чем еще сравнивать вы предлагаете? В MATLAB'е можно на одном графике сравнить две реализации одного и того же фильтра - с квантованными коэффициентами и с коэффициентами в формате double: Для этого в filterDesigner нужно нажать кнопку: После чего указать разрядность коэффициентов фильтра и аккумулятора. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aBoomest 0 20 сентября, 2023 Опубликовано 20 сентября, 2023 · Жалоба Супер. Попробую. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться