Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3666

.pdf
Скачиваний:
1
Добавлен:
15.11.2022
Размер:
9.89 Mб
Скачать

291

Рис. 5.46. Имитационное моделирование в системе Matlab/Simulink КИХ-фильтра на четыре отвода созданного на основе функционального блока n-tap MAC FIR filter. Сигналы

расположенные согласно позициям а), б), в), г), д) и е) представленным на рис. 5.45

291

292

Рис. 5.47. Сигнал до и после операции децимации (позиции е и к на рис. 5.45)

292

293

Рис. 5.48. Функциональное моделирование КИХ-фильтра на четыре отвода созданного на основе функционального блока n-tap MAC FIR filter с использованием моделирующей программы на языке VHDL сгенерированной в автоматическом режиме.

Обозначение сигналов согласно рис. 5.44

293

Сигнал aXb является текущим значением произведения сигналов A и B (рис. 5.45, г), а сигнал Sum представляет сумму значений произведений сигналов A и B накопленных в аккумуляторе (рис. 5.45, д). Сигналы aXb и Sum формируются в блоке MAC engine.

На рис.5.46 показаны сигналы расположенные согласно позициям а), б), в), г), д) и е) соответствующие рис.5.45, а на рис.5.47 представлен сигнал до и после операции децимации (позиции е и к на рис. 5.45). Зелеными (формирование произведения), красными (формирование суммы произведений) и синими (значения суммы произведений в регистре захвата) стрелками на рис. 5.45 обозначены информационные потоки при вычислениях. Правильные значения на выходе фильтра: 10, -1, -40, -10, 26, 6 и все последующие нулевые значения показаны на рис. 5.45, г.

Результаты функционального моделирования в САПР Xilinx ISE с использованием испытательного стенда, код которого получен в автоматическом режиме, показаны на рис. 5.48. Сравнивая результаты имитационного моделирования на рис. 5.46 и функционального представленного на рис. 5.48 приходим к выводу, что фильтры работают корректно.

Проектирование КИХ-фильтра на основе блочной памяти в режиме ОЗУ. КИХ-фильтр также может быть реализован на основе функционального блока n-tap Dual Port Memory MAC FIR Filter находящегося в библиотеке Reference BlockSet/DSP.

Имитационная модель КИХ-фильтра на четыре отвода для реализации в базисе ПЛИС серии Spartan-6 xa6slx43tqg144 адаптированная к нашей задаче показана на рис. 5.49.

294

295

Рис. 5.49. Имитационная модель КИХ-фильтра на четыре отвода для реализации в базисе ПЛИС серии Spartan-6 xa6slx4-3tqg144 на основе n-tap Dual Port Memory MAC FIR Filter

295

296

Рис. 5.50. Функциональное моделирование КИХ-фильтра на четыре отвода созданного на основе функционального блока n-tap Dual Port Memory MAC FIR Filter с использованием моделирующей программы на языке VHDL сгенерированной в автоматическом режиме

296

Таблица 5.2 Оценка ресурсов ПЛИС серии Spartan-6 xa6slx4-3tqg144 при реализации КИХ-фильтров

на четыре отвода различными способами

 

Ресурсы ПЛИС

Генератор

XLogiCORE IP

XLogiCORE IP

Simulink,

Simulink,

 

 

 

параметризиро-

FIR Compiler

FIR Compiler v5.0,

Xilinx

Xilinx System

 

 

 

ванных ядер

v5.0,

параллель-

System

Generator,

 

 

 

XLogiCORE IP

последова-

ная распреде-

Generator,

Dual Port

 

 

 

функцией FIR

тельная

ленная

n-tap MAC

Memory MAC

 

 

 

Compiler v6.3,

распределен-

арифметика

FIR filter,

FIR Filter,

 

 

 

систолическая

ная

 

1 МАС-

1 МАС-блок

297

 

 

структура

арифметика

 

блок

 

 

 

 

 

 

 

 

Рабочая

частота,

348

439

438

233

279

 

 

МГц

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Число

ЦОС-

1

-

-

1

1

 

блоков DSP-48A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Триггеров

 

48

57

111

52

57

 

 

 

 

 

 

 

 

Секций с LUT

33

41

88

39

38

 

 

 

 

 

 

 

 

297

Всоставе КИХ-фильтра на основе n-tap Dual Port Memory MAC FIR Filter используются следующие функциональные блоки: MAC-блок; блоки интерполяции и децимации; двухпортовая память разбитая логически на два банка памяти, один из которых работает как циклический буфер для считывания и записи входных отсчетов сигнала подлежащего фильтрации, а второй для хранения коэффициентов фильтра (выполняет функцию ПЗУ). Вектор инициализации блочной памяти [0 0 0 0 -2, -1, 7, 6]. Емкость ОЗУ восемь 4-разрядных слов. Порт A настроен на режим чтение затем запись. Порт B – чтение.

На рис. 5.50 показано функциональное моделирование. Максимальная частота проекта по коду языка VHDL извлеченного в автоматическом режиме оценивается величиной 279 МГц. Оценка ресурсов ПЛИС серии Spartan-6 xa6slx4-3tqg144 при реализации КИХ-фильтров на четыре отвода различными способами показана в таблице.

ВXilinx System Generator рассмотрено проектирование последовательных КИХ-фильтров на четыре отвода в формате

сфиксированной запятой с использованием параметризованных функциональных блоков n-tap MAC FIR filter и n-tap Dual Port Memory MAC FIR Filter. Основные используемые блоки для построения структур КИХ-фильтров: адресуемый сдвиговый регистр для организации линии задержки на базе LUT; управляющий автомат; ПЗУ или ОЗУ на основе блочной памяти; умножитель и аккумулятор; интерполяция и децимация. Для правильного функционирования КИХ-фильтров необходимо производить учет латентности блоков.

Реализация КИХ-фильтра на основе блочной памяти ПЛИС n-tap Dual Port Memory MAC FIR Filter дает повышенное быстродействие 279 МГц против 233 МГц на основе адресуемого сдвигового регистра при незначительном возрастании требуемых логических ресурсов ПЛИС (табл. 5.2).

298

Данный эффект объясняется увеличением задержек в трассировочных ресурсах ПЛИС при реализации сдвигового регистра на ячейках конфигурационной памяти. В обоих случаях требуется один ЦОС-блок DSP-48A.

Как показывает анализ табл. 5.2, последовательные КИХ-фильтры с использованием одного MAC-блока являются самыми медленными по отношению к систолическому КИХфильтру являющемуся разновидностью параллельной структуры (функция FIR Compiler v6.3) и к фильтру на основе распределенной арифметике позволяющей организовывать “безумножительные” схемы умножения (FIR Compiler v5.0,). Однако, в случае роста числа отводов фильтра можно получить существенный выигрыш в экономии ресурсов ПЛИС.

299

6. ИСПОЛЬЗОВАНИЕ СИСТЕМЫ ВИЗУАЛЬНОИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ MATLAB/SIMULINK ДЛЯ ПРОЕКТИРОВАНИЯ КИХ-ФИЛЬТРОВ В САПР QUARTUS II

6.1. Проектирование последовательных КИХ-фильтров в системе визуально-имитационного моделирования

Matlab/Simulink с использованием Altera DSP Builder

Пакет Altera DSP Builder ver. 12.1 работает в связке с САПР Quartus II ver.12.1 (сборка 177) по аналогии с пакетом

System Generator IDS и САПР ПЛИС ISE фирмы Xilinx.

Программные пакеты расширения Altera DSP Builder и System Generator IDS системы визуально-имитационного моделирования Matlab/Simulink обеспечивают высокоуровневое оптимизированное VHDL-представление проектов c автоматическим компилированием в ПЛИС Xilinx и Altera c последующим созданием испытательных стендов.

Рассмотрим разработку КИХ-фильтр на четыре отвода с использованием одного блока умножения и накопления (1

MAC-блок) в Altera DSP Builder: y C0 x0 С1x1 С2 x2 C3 x3 .

Предположим что, коэффициенты фильтра известны С0 2 , С1 1, С2 7 и С3 6 . Такие фильтры еще называют MAC-

фильтры. За основу проектируемого КИХ-фильтра возьмем имитационную модель с именем FIR_MAC32.mdl КИХфильтра на 32 отвода из справочной системы САПР Quartus II по адресу:

quartus\dsp_builder\DesignExamples\Demos\Filters\Mac32

и адаптируем ее под свои задачи.

Рассмотрим кратко основные структуры КИХ-фильтров с использованием MAC-блоков в Xilinx System Generator. В главе 5 с использованием параметризованных функциональных блоков n-tap MAC FIR filter и n-tap Dual Port Memory MAC FIR Filter показано проектирование

300

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