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

3666

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

force -freeze sim:/poly_syst_main/res 0 0

force -freeze sim:/poly_syst_main/clk 1 0, 0 {50000 ps} -r {100 ns} force -freeze sim:/poly_syst_main/X -5 0

run

force -freeze sim:/poly_syst_main/X 3 0 run

force -freeze sim:/poly_syst_main/X 1 0 run

force -freeze sim:/poly_syst_main/X 0 0

Пример 4. Задание для моделирования из окна Transcript

В версии 13.0 САПР ПЛИС Quartus реализован встроенный векторный редактор с собственной системой моделирования.

Создать векторный файл можно с помощью меню

File/New/Verification/Debugging Files/University Program VWF.

Запуск моделирования осуществляется непосредственно из окна Simulation Waveform Editor с помощью меню Simulation/Run Functional Simulation.

На рис. 4.26 показаны временные диаграммы работы систолического КИХ-фильтра на четыре отвода в САПР ПЛИС Quartus II версии 13.0. Проект размещен в ПЛИС серии MAX II.

Использование текстового сценария на языке VHDL совместно с симулятором ModelSim-Altera Free позволяет пользователю отлаживать сложные проекты в кратчайшие сроки.

231

4.3. Пример проектирования систолических КИХфильтров в базисе ПЛИС с применением генератора параметризированных ядер XLogiCORE IP и функции FIR Compiler v6.3

Рассмотрим пример проектирования КИХ-фильтра в базисе ПЛИС фирмы Xilinx с использованием САПР ISE Design Suite версии 14.2. Для ускорения процесса разработки проекта КИХ-фильтра воспользуемся генератором параметризированных ядер XLogiCORE IP и функцией FIR Compiler v6.3. Выберем бюджетную ПЛИС Spartan-6 XC6SLX4

с поддержкой протокола AXI содержащую 8 ЦОС-блоков DSP48A1 располагающихся в двух секциях по четыре в каждой.

На рис. 4.27 показан проект КИХ-фильтра в САПР ПЛИС Xilinx ISE 14.2 с использованием генератора параметризированных ядер XLogiCORE IP FIR Compiler v6.3.

Настройка функции FIR Compiler v6.3 осуществляется в несколько шагов. Задаются варианты считывания значений коэффициентов КИХ-фильтра: из текстового файла (coe-файл) или представление в виде вектора значений, а также параметры спецификации фильтра (рис. 4.28).

По известным коэффициентам происходит построение АЧХ КИХ-фильтра в автоматическом режиме. Задаются границы полосы пропускания и задерживания (подавления), неравномерность АЧХ в полосе пропускания и минимальное затухание в полосе задерживания.

Выбирается одноканальная структура фильтра типа Single-Rate FIR (входная частота дискретизации равна выходной частоте дискретизации). Частота дискретизации определяется как fclk/N для несимметричного и как fclk/N+1 для симметричного фильтра, где fclk-частота тактирования ядра фильтра; N-разрядность входной шины данных (точность представления входных значений подлежащих фильтрации).

232

Частота тактирования ядра фильтра установлена в 250 МГц а входная частота дискретизации – 50 МГц.

Проектирование КИХ-фильтра осуществляется в формате с фиксированной запятой. На рис. 4.28 показан учет эффектов квантования. Коэффициенты фильтра не симметричные, целочисленные со знаком С0 2 , С1 1 ,

С2 7 и С3 6 , разрядность представления коэффициентов –

четыре бита. Предполагаем, что на вход фильтра поступают только целые значения, как со знаком, так и без, например -5, 3, 1, 0. Разрядность представления значений входного сигнала подлежащего фильтрации – четыре бита, профильтрованного сигнала – восемь бит. Под дробную часть числа в обоих случаях отводим 0 бит (Input Data Fractional Bits и Output Fractional Bits) (рис. 4.29).

На рис. 4.30 показан выбор структуры фильтра. Используем прямую форму систолического фильтра, в котором операции умножения и сложения выполняются параллельно с конвейеризацией (рис. 4.31). В каждой секции доступно 4 ЦОС-блока располагающиеся в столбец, а для реализации КИХ-фильтра требуется 1 ЦОС-блок.

Применение систолических КИХ-фильтров в проектах пользователя позволяет существенно уменьшить число используемых ресурсов и повысить быстродействие. Поддержка систолических структур также обеспечивается мегафункцией (ALTMULT_ADD) САПР Altera Quartus II для работы с ЦОС-блоками ПЛИС серий Cyclon V, Arria V и Stratix V.

Так же широко распространена на практике транспонированная реализация дискретного фильтра (direct transposed form II). Транспонированная схема позволяет эффективно распараллелить вычисления. Функция FIR Compiler v6.3 поддерживает такие структуры фильтров.

233

234

Рис. 4.27. Проект КИХ-фильтра в САПР ПЛИС Xilinx ISE 14.2 с использованием генератора параметризированных ядер XLogiCORE IP FIR Compiler v6.3. Верхний уровень иерархии - схемный файл (sch-файл)

234

235

Рис. 4.28. Настройки функции FIR Compiler

235

236

Рис. 4.29. Учет эффектов квантования коэффициентов КИХ-фильтра, точности представления входных и выходных значений (сигналов). Опции позволяющие настроить форматы представления коэффициентов и входных/выходных значений фильтра

236

237

Рис. 4.30. Выбор архитектуры фильтра и настройка секций ЦОС-блоков

237

Они получили название Transpose Multiply-Accumulate architecture (транспонированная структура основанная на операциях умножения и накопления).

При реализации фильтра в транспонированной форме можно одновременно выполнять все операции умножения, но для получения результата фильтрации необходимо дождаться окончания выполнения всех операций сложения.

Для симуляции проекта в автоматическом режиме необходимо сгенерировать тестбенч (файл теста на языке VHDL для заданий значений входных сигналов или Test Bench-файл). На рис. 4.32 показан симулятор ISim САПР ПЛИС Xilinx ISE 14.2. Демонстрируется прохождение единичного импульса по структуре фильтра (импульсная характеристика КИХ-фильтра на четыре отвода полученная с использованием тестбенча сгенерированного в автоматическом режиме). Латентность фильтра 11 тактов синхрочастоты. Для размещения проекта в базис ПЛИС XC6SLX4 требуется 48 триггеров тактируемых фронтом синхросигнала из общих логических ресурсов ПЛИС и один ЦОС-блок DSP48A1.

Рис. 4.31. Прямая форма систолического КИХ-фильтра с конвериезацией

238

239

Рис. 4.32. Симулятор ISim САПР ПЛИС Xilinx ISE 14.2. Импульсная характеристика КИХ-фильтра на четыре отвода полученная с использованием тестбенча сгенерированного в

автоматическом режиме

239

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

5.1. Проектирование КИХ-фильтров в системе

Xilinx System Generator САПР ISE Design Suite

System Generator IDS 14.4 — инструмент для разработки и отладки высокопроизводительных систем цифровой обработки сигналов в базисе ПЛИС фирмы Xilinx в системе визуально-имитационного моделирования

Matlab/Simulink (версия 8.0.0.783 (R2012b)). Программный пакет обеспечивает высокоуровневое представление проекта, абстрагированное от конкретной аппаратной платформы, которое автоматически компилируется в ПЛИС Xilinx. System Generator является частью технологии XtremeDSP фирмы

Xilinx.

System Generator сокращает время симуляции проектов за счет hardware-in-the-loop и HDL co-simulation. System Generator автоматически транслирует ЦОС-системы из Matlab/Simulink описаний в высокооптимизированные VHDLописания для ПЛИС Xilinx и создает испытательные стенды. Методология "Hardware-in-the-loop" существенно ускоряет цикл проектирования, поскольку позволяет верифицировать проекты в ПЛИС непосредственно из системы

Matlab/Simulink. "HDL co-simulation" позволяет пользователям импортировать HDL-код и симулировать всю систему в целом.

Рассмотрим разработку имитационной модели КИХфильтра на распределенной арифметике без использования встроенных ЦОС-блоков (тип фильтра - Single-Rate FIR) с применением функционального блока FIR Compiler v5.0 являющимся аналогом функции FIR Compiler v5.0 САПР

240

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