Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как округлять выход FIR?
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Языки проектирования на ПЛИС (FPGA)
Грендайзер
Здравствуйте sm.gif Пытаюсь победить коргенераторовский fir у xilinx, но кое чего не понятно. Вообщем возможно есть так же не понимание принципа работы самого фильтра, так что... одно другому не мешает. Сгенерил полосовой фильтр в коргене (fir complier). Набор коэффициентов сгенерил в матлаб. Характеристики фильтра:
входлные данные - 8бит, беззнаковые;
коэффициенты - 16бит знаковые;
выходные данные - полная разрядность (без округления) 33бита.
Я сгенерил в матлабе входной файл (размах от 0 до 255). Однако на выходе 8 старших бит - пустые (знаковые). Если теперь я захочу округлить в коргене выходные данные, то корген будет брать старшие биты и опускать младшие (независимо от того какой вид округления я поставлю). Т.о. на выходе я получу совсем низкий уровень сигнала, даже меньше чем на входе, хотя сигнал находится в полосе пропускания, нестабильность коэф. передачи там не более 0.5дБ.
Сейчас я делаю следующим образом - если мне, например надо 11 бит на выходе, я округляю результат до 18 бит. Из них я беру младшие 11 бит(10 бит + знаковый). Но не уверен, что это правильно.
Tausinov
Разрядность выхода фильтра генерится такой, чтобы ни при каких входных данных переполнения не было, при этом произвольный синус даже максимальной амплитуды в полосе пропускания до максимума не дотянет. Амплитуду выхода при одной гармонике можно легко оценить и посмотреть в том же МатЛабе. Распространенная практика - делать масштабирование на выходе фильтра самому, в зависимости от уровня и типа сигнала на входе. С выхода корки выводится полная разрядность, затем идет усечение до нужной разрядности с выбором позиции старшего бита. Кроме того, можно задействовать округление.
Грендайзер
Т.е. предложенный мной способ вполне приелем?
Tausinov
Цитата(Грендайзер @ Sep 19 2017, 12:40) *
Т.е. предложенный мной способ вполне приелем?


Да, вполне. Но не стоит забывать, что при более сложном сигнале возможен выход за выбранную разрядную сетку.
Грендайзер
Угу... Всё понял. Болшое спасибо sm.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.