Вычисляет обратное быстрое преобразование Фурье и генерирует оптимизированный HDL-код
DSP System Toolbox / Преобразовывает
Поддержка HDL DSP System Toolbox / преобразовывает
Блок IFFT HDL Optimized обеспечивает два типа архитектуры, чтобы оптимизировать или пропускную способность или область.
Streaming Radix 2^2
— Используйте эту архитектуру для приложений высокой пропускной способности. Эта архитектура поддерживает скалярные или векторные входные данные. Можно достигнуть пропускной способности выборки giga в секунду (GSPS) с помощью векторного входа.
Burst Radix 2
— Используйте эту архитектуру для минимальной реализации ресурса, особенно с большими размерами быстрого преобразования Фурье (FFT). Ваша система должна смочь терпеть пульсирующие данные и более высокую задержку. Эта архитектура поддерживает только скалярные входные данные.
Оптимизированный HDL ОБПФ принимает действительные или комплексные данные, обеспечивает благоприятные для оборудования управляющие сигналы и дополнительные выходные сигналы управления кадром.
данные
Входные данныеВходные данные, заданные как скаляр или вектор-столбец действительных или комплексных чисел. Только архитектура Streaming Radix 2^2
поддерживает векторный вход. Векторный размер должен быть степенью 2 в диапазоне от 1 до 64, и меньше чем или равный FFT length.
double
и входные данные single
позволены для симуляции, но не для генерации HDL-кода.
Типы данных: int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
| single
| double
Поддержка комплексного числа: Да
valid
— Указывает на допустимые входные данныеBoolean
Этот порт указывает, допустимы ли входные данные. Когда входом valid является true
(1
), блок получает значение на порте входа data. Когда входом valid является false
(0
), блок игнорирует выборки входа data.
Типы данных: Boolean
сброс
Сбросьте управляющий сигналBoolean
Когда reset является true
(1
), блок останавливает текущее вычисление и очищает все внутренние состояния. Блок запускает новый кадр, когда reset является false
(0
), и входом valid является true
(1
).
Чтобы включить этот порт, выберите параметр Enable reset input port.
Типы данных: Boolean
данные
Выходные данные канала частотыКогда введенный тип данных с фиксированной точкой, и масштабирование включено, тип выходных данных совпадает с типом входных данных. Когда вход является целочисленным типом, и масштабирование включено, вывод является фиксированной точкой с тем же размером слова как входное целое число. Выходной порядок инвертируется битом по умолчанию. Если масштабирование отключено, выходной размер слова увеличивается, чтобы избежать переполнения. Только архитектура Streaming Radix 2^2
поддерживает векторный ввод и вывод. Для получения дополнительной информации смотрите параметр Divide butterfly outputs by two.
Типы данных: fixed point
| double
| single
Поддержка комплексного числа: Да
valid
— Указывает на допустимые выходные данныеBoolean
Этот порт указывает, что вывод data допустим. Когда valid является true
(1
), блок возвращает допустимые данные по порту вывода data. Когда valid является false
(0
), значения на порте вывода data не допустимы.
Типы данных: Boolean
ready
— Indicates готовBoolean
Этот порт указывает, что блок готов к новой входной выборке. Когда ready является true
(1
), блок принимает входные данные в следующем временном шаге, и когда ready является false
(0
), блок игнорирует входные данные в следующем временном шаге.
Порт появляется на блоке, когда вы устанавливаете параметр Architecture на Burst Radix 2
.
Типы данных: Boolean
запуск
Указывает сначала на допустимый цикл выходных данныхBoolean
Когда вы включаете этот порт, блок устанавливает start вывод на true
(1
) во время первого допустимого цикла кадра выходных данных.
Чтобы включить этот порт, выберите параметр Enable start output port.
Типы данных: Boolean
конец
Указывает в последний раз на допустимый цикл выходных данныхBoolean
Когда вы включаете этот порт, блок устанавливает end вывод на true
(1
) во время последнего допустимого цикла кадра выходных данных.
Чтобы включить этот порт, выберите параметр Enable end output port.
Типы данных: Boolean
FFT length
— Количество точек данных используется для одного вычисления БПФ1024
(значение по умолчанию)Этот параметр задает количество точек данных, используемых для одного вычисления обратного быстрого преобразования Фурье (IFFT). Для генерации HDL-кода длина БПФ должна быть степенью 2 между 23 и 216.
Architecture
— Тип архитектурыStreaming Radix 2^2
(значение по умолчанию) | Burst Radix 2
Этот параметр задает тип архитектуры.
Streaming Radix 2^2
— Выберите это значение, чтобы задать архитектуру низкой задержки. Этот тип архитектуры поддерживает пропускную способность GSPS при использовании векторного входа.
Burst Radix 2
— Выберите это значение, чтобы задать минимальную архитектуру ресурса. Этот тип архитектуры не поддерживает векторный вход.
Для генерации HDL-кода длина БПФ должна быть степенью 2 между 23 и 216.
Для получения дополнительной информации об этой архитектуре, см. Алгоритмы.
Complex Multiplication
— Реализация HDLUse 4 multipliers and 2 adders
(значение по умолчанию) | Use 3 multipliers and 5 adders
Этот параметр задает комплексный тип множителя для реализации HDL. Каждое умножение реализовано или с Use 4 multipliers and 2 adders
или с Use 3 multipliers and 5 adders
. Скорость реализации зависит от инструмента синтеза и целевого устройства, которое вы используете.
Output in bit-reversed order
— Порядок выходных данныхЭтот параметр возвращает выходные элементы в инвертированном битом порядке.
Когда вы выбираете этот параметр, выходные элементы инвертируются битом. Чтобы возвратить выходные элементы в линейном порядке, очистите этот параметр.
Алгоритм ОБПФ вычисляет вывод в обратном порядке к входу. Если вы задаете вывод, чтобы быть в том же порядке как вход, алгоритм выполняет дополнительную операцию реверсирования. Для получения дополнительной информации смотрите Линейный и Инвертированный Битом Выходной Порядок.
Input in bit-reversed order
— Ожидаемый порядок входных данныхКогда вы выберете этот параметр, блок ожидает входные данные в инвертированном битом порядке. По умолчанию флажок снимается, и вход ожидается в линейном порядке.
Алгоритм ОБПФ вычисляет вывод в обратном порядке к входу. Если вы задаете вывод, чтобы быть в том же порядке как вход, алгоритм выполняет дополнительную операцию реверсирования. Для получения дополнительной информации смотрите Линейный и Инвертированный Битом Выходной Порядок.
Divide butterfly outputs by two
— Масштабирование БПФКогда вы выбираете этот параметр, блок реализует полный 1/N масштабный коэффициент путем деления вывода каждого умножения бабочки два. Эта корректировка сохраняет вывод ОБПФ в той же амплитудной области значений как ее вход. Если вы отключаете масштабирование, блок избегает переполнения путем увеличения размера слова на 1 бит после каждого умножения бабочки. Битное увеличение является тем же самым для обеих архитектуры.
Rounding Method
— Rounding для внутренних вычислений фиксированной точкиFloor
(значение по умолчанию) | Ceiling
| Convergent
| Nearest
| Round
| Zero
Этот параметр позволяет вам выбирать тип округления режима для внутренних вычислений фиксированной точки. Для получения дополнительной информации об округлении режимов, смотрите округление метода. Когда вход является любым целым числом или типом данных с фиксированной точкой, алгоритм ОБПФ использует вычисления с фиксированной точкой для внутренних вычислений. Эта опция не применяется, когда вход является типом double
или single
. Округление применяется, чтобы вертеть факторное умножение и операции масштабирования.
Enable reset input port
— Дополнительный сигнал сбросаЭтот параметр включает входной порт сброса. Когда вы выбираете этот параметр, порт входа reset появляется на значке блока.
Enable start output port
— Дополнительный управляющий сигнал, указывающий, запускается данныхЭтот параметр включает порт, который указывает на запуск выходных данных. Когда вы выбираете этот параметр, порт вывода start появляется на значке блока.
Enable end output port
— Дополнительный конец указания управляющего сигнала данныхЭтот параметр включает порт, который указывает на конец выходных данных. Когда вы выбираете этот параметр, порт вывода end появляется на значке блока.
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Основание потоковой передачи 2^2 архитектура реализует архитектуру низкой задержки. Это сохраняет ресурсы по сравнению с Основанием потоковой передачи 2 реализации путем факторинга и группировки уравнения БПФ. Архитектура имеет log4 (N) этапы. Каждый этап содержит двух бабочек обратной связи задержки одно пути (SDF) с контроллерами памяти. Когда вы используете векторный вход, каждый этап работает с меньшим количеством входных выборок, таким образом, некоторые этапы уменьшают до простой бабочки без SDF.
Первый этап SDF является обычной бабочкой. Второй этап умножает выходные параметры первой стадии –j. Чтобы избежать аппаратного множителя, блок подкачивает действительные и мнимые части входных параметров, и снова подкачивает мнимые части получившихся выходных параметров. Каждый этап округляет результат вертеть факторного умножения к входному размеру слова. Вертеть факторы имеют два целочисленных бита, и остальная часть битов используется для дробных битов. Вертеть факторы имеют ту же битную ширину как входные данные, WL. Вертеть факторы имеют два целочисленных бита и WL-2 дробных бита.
Если вы позволяете масштабироваться, алгоритм делит результат каждого этапа бабочки 2. Масштабирование на каждом этапе избегает переполнения, сохраняет размер слова тем же самым как вход и приводит к полному масштабному коэффициенту 1/N. Если масштабирование отключено, алгоритм избегает переполнения путем увеличения размера слова на 1 бит на каждом этапе. Схема показывает бабочек и внутренние размеры слова каждого этапа, не включая память.
Пакетное Основание 2 реализации архитектуры БПФ при помощи одного комплексного множителя бабочки. Алгоритм не может запуститься, пока он не сохранил целый входной кадр, и он не может принять следующий кадр, пока вычисления не завершены. Порт вывода ready указывает, когда алгоритм готов к новым данным. Схема показывает пакетную архитектуру с конвейерными регистрами.
Входные данные процессов алгоритма только, когда порт входа valid равняется 1. Выходные данные допустимы только, когда порт вывода valid равняется 1.
Когда дополнительный порт входа reset равняется 1, алгоритм останавливает текущее вычисление и очищает все внутренние состояния. Алгоритм начинает новые вычисления, когда порт reset 0, и порт входа valid запускает новый кадр.
Эта схема показывает значения порта valid ввода и вывода для непрерывных скалярных входных данных, передавая Основание потоком 2^2 архитектура, длина БПФ 1 024 и векторный размер 16.
Схема также показывает дополнительные значения порта start и end, которые указывают на контуры кадра. Если вы включаете порт start, импульсы значения порта start для одного цикла с первым допустимым выводом кадра. Если вы включаете порт end, импульсы значения порта start для одного цикла с последним допустимым выводом кадра.
Если вы примените непрерывные входные кадры, вывод также будет непрерывен после начальной задержки.
Порт входа valid может быть, состоящим из нескольких несмежных участков. Данные, сопровождаемые портом входа valid, обрабатываются, когда они прибывают, и получившиеся данные хранятся, пока кадр не заполнен. Затем алгоритм возвращает непрерывные выходные выборки в кадре N (FFT length) циклы. Эта схема показывает вход, состоящий из нескольких несмежных участков, и непрерывный вывод для длины БПФ 512 и векторного размера 16.
Когда вы используете пакетную архитектуру, вы не можете обеспечить следующий кадр входных данных, пока пространство памяти не доступно. Порт ready указывает, когда алгоритм может принять новые входные данные.
Задержка меняется в зависимости от FFT length и размера входного вектора. После того, как вы обновите модель, значок блока отображает задержку. Отображенная задержка является количеством циклов между первым допустимым входом и первым допустимым выводом, принимая, что вход непрерывен. Чтобы получить эту задержку программно, смотрите, что Автоматическая Задержка Совпадает для Задержки HDL БПФ с Оптимизированным Блоком.
При использовании пакетной архитектуры с непрерывным входом, если ваш проект ожидает ready к выводу 0
перед de-утверждением вход valid, то один дополнительный цикл данных прибывает во вход. Эта выборка данных является первой выборкой следующего кадра. Алгоритм может сохранить одну выборку при обработке текущего кадра. Из-за этого демонстрационного усовершенствования, наблюдаемая задержка более поздних кадров (от входа valid до вывода valid) является одним циклом короче, чем задержка, о которой сообщают. Задержка измеряется от первого цикла, когда вход valid 1 к первому циклу, когда вывод valid равняется 1. Количество циклов между тем, когда порт ready 0 и порт вывода valid, равняется 1, всегда latency – FFTLength.
Эти данные ресурсов и данные о производительности являются синтезом, следуют из сгенерированного HDL, предназначенного к Xilinx® Virtex®-6 (XC6VLX75T-1FF484) FPGA. Примеры в таблицах имеют эту настройку:
Длина БПФ 10:24 (значение по умолчанию)
Комплексное умножение с помощью 4 множителей, 2 сумматоров
Выведите включенное масштабирование
Вход естественного порядка, инвертированный Битом вывод
16-битные комплексные входные данные
Часы включают минимизированный (параметр HDL Coder™)
Производительность синтезируемого HDL-кода меняется в зависимости от вашей цели и опций синтеза. Например, переупорядочение для естественного порядка вывело использование больше RAM, чем значение по умолчанию инвертированный битом вывод, и действительный вход использует меньше RAM, чем комплексный вход.
Для скалярного входа Radix 2^2 настройка, проект достигает частоты часов на 326 МГц. Задержка является 1 116 циклами. Проект использует эти ресурсы.
Ресурс | Используемый номер |
---|---|
LUT | 4597 |
FFS | 5353 |
Xilinx LogiCORE® DSP48 | 12 |
Блокируйте RAM (16K) | 6 |
Когда вы векторизуете то же Основание 2^2 реализация, чтобы обработать две 16-битных входных выборки параллельно, проект достигает частоты часов на 316 МГц. Задержка является 600 циклами. Проект использует эти ресурсы.
Ресурс | Используемый номер |
---|---|
LUT | 7653 |
FFS | 9322 |
Xilinx LogiCORE DSP48 | 24 |
Блокируйте RAM (16K) | 8 |
Блок поддерживает скалярные входные данные только при реализации пакетного Основания 2 архитектуры. Пакетный проект достигает частоты часов на 309 МГц. Задержка является 5 811 циклами. Проект использует эти ресурсы.
Ресурс | Используемый номер |
---|---|
LUT | 971 |
FFS | 1254 |
Xilinx LogiCORE DSP48 | 3 |
Блокируйте RAM (16K) | 6 |
Этот блок поддерживает генерацию кода C/C++ для Акселератора Simulink® и Быстрых Режимов Accelerator и для генерации компонента DPI.
Этот блок поддерживает генерацию HDL-кода с помощью HDL Coder. HDL Coder обеспечивает дополнительные параметры конфигурации, которые влияют на реализацию HDL и синтезируемую логику. Для получения дополнительной информации о реализациях свойства и ограничения для генерации HDL-кода, видят Оптимизированный HDL ОБПФ.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.