FFT HDL Optimized

Вычисляет быстрое преобразование Фурье (FFT) и генерирует оптимизированный HDL-код

  • Библиотека:
  • Поддержка HDL DSP System Toolbox / преобразовывает

  • FFT HDL Optimized block

Описание

Блок FFT HDL Optimized обеспечивает две архитектуры, которые реализуют алгоритм для приложения ASIC и FPGA. Можно выбрать архитектуру, которая оптимизирует или для пропускной способности или для области.

  • Streaming Radix 2^2 — Используйте эту архитектуру для высокопроизводительных приложений. Эта архитектура поддерживает скалярные или векторные входные данные. Можно достигнуть пропускной способности выборки гига сэмплов в секунду (GSPS) с помощью векторного входа.

  • Burst Radix 2 — Используйте эту архитектуру для минимизации ресурса размещения, особенно с большеразмерным быстрым преобразованием Фурье (FFT). Ваша система должна смочь допустить принятие пульсирующих данных. Эта архитектура поддерживает только скалярные входные данные.

Блок FFT HDL Optimized заменяет блок HDL Streaming FFT и блок HDL Minimum Resource FFT. Блок FFT HDL Optimized принимает действительные или комплексные данные, обеспечивает благоприятные для оборудования управляющие сигналы и дополнительные выходные сигналы управления кадром.

Порты

Входной параметр

развернуть все

Входные данные в виде скаляра или вектор-столбца действительных или комплексных чисел. Только Streaming Radix 2^2 архитектура поддерживает векторный вход. Размер вектора должен быть степенью 2 в диапазоне от 1 до 64, и меньше чем или равный длине БПФ.

double и single типы данных поддерживаются для симуляции, но не для генерации HDL-кода.

Типы данных: int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point | single | double
Поддержка комплексного числа: Да

Этот порт указывает, допустимы ли входные данные. Когда входом valid является 1 (TRUE), блок получает значение на порте входа data. Когда входом valid является 0 (FALSE), блок игнорирует выборки входа data.

Типы данных: Boolean

Когда reset является 1 (TRUE), блок останавливает текущее вычисление и очищает все внутренние состояния. Блок запускает новую систему координат, когда reset является 0 (FALSE) и вход valid 1 TRUE.

Зависимости

Чтобы включить этот порт, выберите параметр Enable reset input port.

Типы данных: Boolean

Вывод

развернуть все

Когда введенный тип данных с фиксированной точкой, и масштабирование включено, тип выходных данных совпадает с типом входных данных. Когда вход является целочисленным типом, и масштабирование включено, выход является фиксированной точкой с тем же размером слова как входное целое число. Выходной порядок инвертируется битом по умолчанию. Если масштабирование отключено, выходной размер слова увеличивается, чтобы избежать переполнения. Только Streaming Radix 2^2 архитектура поддерживает векторный ввод и вывод. Для получения дополнительной информации смотрите параметр Divide butterfly outputs by two.

Типы данных: fixed point | double | single
Поддержка комплексного числа: Да

Этот порт указывает, что выход data допустим. Когда valid является 1 (TRUE), блок возвращает допустимые данные по порту выхода data. Когда valid является 0 (FALSE), значения на порте выхода data не допустимы.

Типы данных: Boolean

Этот порт указывает, что блок имеет память в наличии, чтобы вместить новую входную выборку. Необходимо применить сигналы входа data и valid только, когда ready является 1 TRUE. Когда ready является 0 (FALSE), блок игнорирует любые входные данные в следующем временном шаге. Для формы волны, которая показывает этот протокол, см. третью схему в разделе Timing Diagram.

Зависимости

Чтобы включить этот порт, установите параметр Architecture на Burst Radix 2.

Типы данных: Boolean

Когда вы включаете этот порт, блок устанавливает start выход на 1 (TRUE) во время первого допустимого цикла системы координат выходных данных.

Зависимости

Чтобы включить этот порт, выберите параметр Enable start output port.

Типы данных: Boolean

Когда вы включаете этот порт, блок устанавливает end выход на 1 (TRUE) во время последнего допустимого цикла системы координат выходных данных.

Зависимости

Чтобы включить этот порт, выберите параметр Enable end output port.

Типы данных: Boolean

Параметры

развернуть все

Основной

Этот параметр задает количество точек данных, используемых для одного вычисления БПФ. Для генерации HDL-кода длина БПФ должна быть степенью 2 между 23 к 216.

Этот параметр задает тип архитектуры.

  • Streaming Radix 2^2 — Выберите это значение, чтобы задать архитектуру низкой задержки. Этот тип архитектуры поддерживает пропускную способность GSPS при использовании векторного входа.

  • Burst Radix 2 — Выберите это значение, чтобы задать минимальную архитектуру ресурса. Этот тип архитектуры не поддерживает векторный вход. Когда вы используете эту архитектуру, ваши входные данные должны выполнить сигнал противодавления ready. Для формы волны, которая показывает этот протокол, см. третью схему в разделе Timing Diagram.

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

Этот параметр задает комплексный тип множителя для реализации HDL. Каждое умножение реализовано любой с Use 4 multipliers and 2 adders или с Use 3 multipliers and 5 adders. Скорость реализации зависит от инструмента синтеза и целевого устройства, которое вы используете.

Этот параметр возвращает выходные элементы в обратном битовом порядке.

Когда вы выбираете этот параметр, выходные элементы инвертируются битом. Чтобы возвратить выходные элементы в линейном порядке, очистите этот параметр.

Алгоритм бпф вычисляет выход в обратном порядке к входу. Если вы задаете выход, чтобы быть в том же порядке как вход, алгоритм выполняет дополнительную операцию реверсирования. Для получения дополнительной информации смотрите Линейный и Инвертированный Битом Выходной Порядок.

Когда вы выберете этот параметр, блок ожидает входные данные в обратном битовом порядке. По умолчанию этот параметр отключен, и блок ожидает вход в линейном порядке.

Алгоритм бпф вычисляет выход в обратном порядке к входу. Если вы задаете выход, чтобы быть в том же порядке как вход, алгоритм выполняет дополнительную операцию реверсирования. Для получения дополнительной информации смотрите Линейный и Инвертированный Битом Выходной Порядок.

Когда вы выбираете этот параметр, БПФ реализует полный 1/N масштабный коэффициент путем деления выхода каждого умножения бабочки два. Эта корректировка сохраняет выход БПФ в той же амплитудной области значений как ее вход. Если вы отключаете масштабирование, БПФ избегает переполнения путем увеличения размера слова на 1 бит после каждого умножения бабочки. Битное увеличение является тем же самым для обеих архитектур.

Типы данных

Этот параметр задает тип округления режима для внутренних вычислений фиксированной точки. Для получения дополнительной информации об округлении режимов, смотрите Округление Режимов. Когда вход является любым целым числом или типом данных с фиксированной точкой, этот блок использует вычисления с фиксированной точкой для внутренних вычислений. Этот параметр не применяется, когда входными данными является single или double. Округление применяется к умножению вертеть-фактора и операциям масштабирования.

Порты управления

Этот параметр включает входной порт сброса. Когда вы выбираете этот параметр, порт входа reset появляется на значке блока.

Этот параметр включает порт, который указывает на запуск выходных данных. Когда вы выбираете этот параметр, порт выхода start появляется на значке блока.

Этот параметр включает порт, который указывает на конец выходных данных. Когда вы выбираете этот параметр, порт выхода end появляется на значке блока.

Алгоритмы

развернуть все

Ссылки

[1] Algnabi, Y.S, Ф.А. Олдээми, Р. Теимоерзэдех, М. Осман и M.S. Ислам. “Новая архитектура Основания трубопровода 2^2 БПФ SDF На основе нарезающего цифру метода”. 10-я IEEE International Conference on Semiconductor Electronics (ICSE). 2012, стр 470–474.

Расширенные возможности

Смотрите также

Блоки

Объекты

Введенный в R2014a