Фильтр с конечной импульсной характеристикой - оптимизирован для генерации HDL-кода
Поддержка/фильтрация HDL-файлов DSP System Toolbox
Блок Discrete FIR Filter HDL Optimized моделирует архитектуры фильтра с конечной импульсной характеристикой, оптимизированную для генерации HDL-кода. Блок принимает по одной входной выборке за раз и предоставляет опцию для программируемых коэффициентов. Он обеспечивает аппаратный интерфейс с входными и выходными сигналами управления. Чтобы обеспечить точное по циклу симуляцию сгенерированного HDL-кода, блок моделирует архитектурную задержку, включая регистры трубопроводов и совместное использование ресурсов.
Блок обеспечивает три структуры фильтра. Системная архитектура прямой формы обеспечивает полностью параллельную реализацию, которая эффективно использует Intel® и Xilinx® Блоки DSP. Транспонированная архитектура прямой формы является полностью параллельной реализацией и подходит для приложений FPGA и ASIC. Частично последовательная сестрическая архитектура обеспечивает конфигурируемую последовательную реализацию, которая эффективно использует блоки DSP FPGA. Для реализации фильтра, который совпадает с множителями, регистрами трубопроводов и предварительными добавками к строению DSP вашего поставщика FPGA, укажите целевое устройство, когда вы генерируете HDL-код.
Все три структуры оптимизируют аппаратные ресурсы путем совместного использования множителей для симметричных или антисимметричных фильтров. Параллельные реализации также удаляют умножители для нулевых коэффициентов, таких как в полупериодических фильтрах и преобразованиях Гильберта.
Задержка между действительными входными данными и соответствующими действительными выходными данными зависит от структуры фильтра, опций сериализации, количества коэффициентов и от того, обеспечивают ли значения коэффициентов возможности оптимизации. Для получения дополнительной информации о структуре и задержках смотрите раздел «Алгоритм».
Для конечная импульсная характеристика с многоканальными или основанными на кадрах входами используйте блок Discrete FIR Filter (Simulink) вместо этого блока.
Сброс поведения
По умолчанию блок Discrete FIR Filter HDL Optimized соединяет сгенерированный глобальный сброс HDL только с регистрами пути управления. Два параметра сброса, Enable reset input port и Use HDL global reset, соединяют сигнал сброса с регистрами пути данных. Из-за дополнительной маршрутизации и загрузки сигнала сброса сброс регистров пути данных может снизить эффективность синтеза.
Параметр Enable reset input port включает порт reset на блоке. Сигнал сброса реализует локальный синхронный сброс регистров пути данных. Для оптимального использования ресурсов FPGA эта опция не соединяет сигнал сброса с регистрами, нацеленными на блоки DSP FPGA.
Параметр Use HDL global reset соединяет сгенерированный HDL сигнал глобального сброса с регистрами пути данных. Этот параметр не изменяет внешний вид блока и не изменяет поведение симуляции в Simulink. Сгенерированный глобальный сброс HDL может быть синхронным или асинхронным в зависимости от параметра HDL Code Generation Global Settings > Reset type > в Параметры конфигурации модели. В зависимости от вашего устройства, использование глобального сброса может переместить регистры из блоков DSP и увеличить использование ресурсов.
Когда вы выбираете параметры Enable reset input port и Use HDL global reset вместе, глобальные и локальные сигналы сброса очищают регистры пути данных и управления.
Факторы о сбросе для сгенерированных испытательных стендов
Инициализация FPGA в цикле обеспечивает глобальный сброс, но не обеспечивает автоматически локальный сброс. С параметрами сброса по умолчанию регистры пути данных, которые не сбрасываются, могут привести к несоответствиям цикл (FIL), если вы запускаете модель FIL более одного раза, не сбрасывая плату. Выберите Use HDL global reset, чтобы автоматически сбросить регистры пути данных или выберите Enable reset input port и утвердите локальный сброс в модели, чтобы сигнал сброса стал частью испытательного стенда Simulink FIL.
Сгенерированный испытательный стенд HDL обеспечивает глобальный сброс, но не обеспечивает автоматического локального сброса. С параметрами сброса по умолчанию и параметрами конфигурации сброса регистра по умолчанию, сгенерированный HDL-код включает начальное значение симуляции для регистров пути данных. Однако, если вы обеспокоены X
-предложение в проекте, можно задать параметр HDL Code Generation Global Settings > Coding style > No-reset register initialization > в Параметрах конфигурации Do not initialize
. В этом случае, с параметрами сброса блоков по умолчанию, регистры пути данных, которые не сбрасываются, могут вызвать X
-предложение по пути данных в начале симуляции HDL. Выберите Use HDL global reset, чтобы автоматически сбросить регистры пути данных или выберите Enable reset input port и задайте локальный сброс в модели, чтобы сигнал сброса стал частью сгенерированного HDL- испытательного стенда.