Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
535.doc
Скачиваний:
43
Добавлен:
30.04.2022
Размер:
57.23 Mб
Скачать

2.4. Проектирование ких-фильтра с использованием умножителя на методе правого сдвига и сложения

Рассмотрим уравнение КИХ-фильтра (нерекурсивного цифрового фильтра с конечно-импульсной характеристикой) которое представляется как арифметическая сумма произведений:

, (2.16)

где отклик цепи; ая входная переменная; весовой коэффициент ой входной переменной, который является постоянным для всех ; число отводов фильтра.

На рис.2.42 показана тестовая схема КИХ-фильтра на 4 отвода в САПР ПЛИС Quartus II для реализации в базисе ПЛИС серии Cyclone II состоящая из линии задержки, 4-х умножителей и дерева многоразрядных сумматоров. Предположим что коэффициенты фильтра целочисленные со знаком, известны и равны , , и .

Числа (входные отсчеты) поступают с выходов линии задержки на регистрах reg_tap на входы data_in[3..0] мегафункции ALTMEMMULT. Константы и в которых хранятся значения коэффициентов в дополнительном коде (14D, 15D, 7D и 6D) подключены к входам coeff_in[3..0]. В каждой из 4 мегафункций ALTMEMMULT в блочной памяти ПЛИС типа M9K хранятся нулевые коэффициенты (могут быть и не нулевыми). Режим загрузки с внешнего порта или из блочной памяти определяется опцией create ports to allow loading coefficients. Латентность мегафункции 2 такта синхроcигнала. Смоделируем прохождение дельта функции по структуре фильтра. Для этого на вход линии задержки фильтра X0[3..0] в дополнительном коде подадим единичный импульс лог.1. На выходе фильтра Mem_mult[7..0] видим коэффициенты фильтра (импульсную характеристику) (рис.2.43).

Подадим на вход КИХ-фильтра входные отсчеты -5, 3, 1 и 0 (рис.2.44). Правильные значения на выходе фильтра: 10, -1, -40, -10, 25, 6 и т.д., т.е. согласно формуле (1).

Рис.2.42. КИХ-фильтр на 4 отвода с использованием мегафункции ALTMEMMULT

Р ис.2.43. Результат моделирования прохождения аналога дельта-функции

по структуре КИХ-фильтра на 4 отвода

Рис.2.44. Временные диаграммы работы КИХ-фильтра на 4 отвода при поступлении

входных отчетов -5, 3, 1 и 0. Результат: 10, -1, -40, -10, 25

Рис.2.45. Линия задержки КИХ-фильтра на 4 отвода на умножителях с использованием

метода правого сдвига и сложения

Рис.2.46. Умножители и дерево сумматоров КИХ-фильтра на 4 отвода

Рис.2.47. Доработанная схема умножителя с учетом работы в составе КИХ-фильтра

Рис.2.48. Временные диаграммы работы КИХ-фильтра на 4 отвода на умножителях с использованием метода правого сдвига и сложения при поступлении входных отчетов -5, 3, 1 и 0. Результат: 10, -1, -40, -10, 25, 6

Рассмотрим КИХ-фильтра на 4 отвода на умножителях (MAC-блоках) с использованием метода правого сдвига и сложения. Дополнительную информацию о применяемом MAC-блоке можно получить в глава 1, раздел 1.4. На рис.2.45 показана линия задержки на двухтактных триггерах с использованием мегафункции LPM_FF. На рис.2.46 показаны умножители (mac_scal_acc) с константами и дерево сумматоров, а на рис.2.47 доработанная схема умножителя с учетом работы в составе КИХ-фильтра. Модификация MAC-блоках показана красным цветом. На рис.2.48 показаны временные диаграммы работы КИХ-фильтра. Требуемые значения на выходе фильтра 10, -1, -40, -10, 25, 6 показаны красным цветом.

Таблица 2.5

КИХ-фильтр на 4 отвода реализованный в базисе ПЛИС EP2C5F256C6, временная модель Slow-model

Технические характерис-тики

Разработан-ный MAC-блок

Программный умножитель на мегафункции ALTMEMMULT.

Коэффициенты загружаются из внешнего порта, МГц

Программный умножитель на мегафункции ALTMEMMULT. Коэффициенты загружаются из памяти (умножитель на константу), МГц

Частота в наихудшем случае, Fmax

240

210

260

В табл.2.5 приведены технические характеристики КИХ-фильтров на 4 отвода реализованных в базисе ПЛИС EP2C5F256C6 (4608 логических элементов, 119808 бит встроенной памяти, 26 аппаратных умножителей 9x9) с использованием разработанного MAC-блока и программных умножителей на мегафункции ALTMEMMULT.

Смена данных на выходе КИХ-фильтра в случае использования MAC-блока в качестве умножителя и умножителя на мегафункции ALTMEMMULT в случае загрузки коэффициентов из внешнего порта приблизительно одинаковая (22 MAC и 21 ALTMEMMULT такта синхроимпульса). Мегафункция ALTMULT_ADD так же позволяет построить параллельный КИХ-фильтр на 4 отвода за счет использования встроенных 4 аппаратных перемножителей размерностью операндов 18х18. Рабочая частота в наихудшем случае для ПЛИС серии Stratix III составила 400 МГц.

Повысить производительность КИХ-фильтра с использованием программного умножителя на мегафункции ALTMEMMULT позволяет вариант загрузки коэффициентов из блочной памяти ПЛИС (260 МГц).

Представленный в главе 1, раздел 1.4 MAC-блок с использованием метода правого сдвига и сложения может быть использован для проектирования высокопроизводительных и компактных КИХ-фильтров небольшой разрядности. При этом на его реализацию в базисе ПЛИС потребуются незначительные логические ресурсы (менее 1 %), экономя при этом аппаратные и программные умножители. Недостатком такого MAC-блока является трудоемкость его разработки, и наличие своего интерфейса в отличие от унифицированных интерфейсов мегафункции ALTMEMMULT что может оказаться неудобным в использовании.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]