Быстрое преобразование Фурье - оптимизировано для генерации HDL-кода
HDL FFT System object™ предоставляет две архитектуры для оптимизации пропускной способности или площади. Используйте потоковую архитектуру Radix 2 ^ 2 для высокопроизводительных приложений. Эта архитектура поддерживает скалярные или векторные входные данные. Вы можете достичь пропускной способности выборка гига сэмплов в секунду (GSPS) с помощью векторного входа. Используйте архитектуру burst Radix 2 для минимизации ресурса размещения, особенно с большими размерами FFT. Ваша система должна быть в состоянии терпеть принятия пульсирующих данных. Эта архитектура поддерживает только скалярные входные данные. Объект принимает реальные или комплексные данные, обеспечивает аппаратно удобные сигналы управления и имеет опциональные выходные сигналы управления системой координат.
Чтобы вычислить быстрое преобразование Фурье:
Создайте dsp.HDLFFT
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
возвращает объект HDL FFT System, FFT_N
= dsp.HDLFFTFFT_N
, который выполняет быстрое преобразование Фурье.
устанавливает свойства с помощью одной или нескольких пар "имя-значение". Заключайте каждое имя свойства в одинарные кавычки.FFT_N
= dsp.HDLFFT(Name,Value
)
fft128 = dsp.HDLFFT('FFTLength',128)
[
возвращает быстрое преобразование Фурье (FFT) при использовании пакетной архитектуры Radix 2. The Y
,validOut
,ready
]
= FFT_N(X
,validIn
)ready
сигнал указывает, когда объект может принять входные выборки.
Чтобы использовать этот синтаксис, задайте значение свойства Architecture 'Burst Radix 2'
. Для примера:
FFT_N = dsp.HDLFFT(___,'Architecture','Burst Radix 2'); ... [y,validOut,ready] = FFT_N(x,validIn)
[
также возвращает сигналы управления системой координат Y
,startOut
,endOut
,validOut
]
= FFT_N(X
,validIn
)startOut
и endOut
. startOut
является true
на первой выборке системы координат выхода данных. endOut
является true
для последней выборки из системы координат выхода данных.
Чтобы использовать этот синтаксис, задайте свойства StartOutputPort и EndOutputPort равными true
. Для примера:
FFT_N = dsp.HDLFFT(___,'StartOutputPort',true,'EndOutputPort',true); ... [y,startOut,endOut,validOut] = FFT_N(x,validIn)
[
возвращает БПФ, когда Y
,validOut
]
= FFT_N(X
,validIn
,resetIn
)validIn
является true
и resetIn
является false
. Когда resetIn
является true
объект останавливает текущее вычисление и очищает все внутренние состояния.
Чтобы использовать этот синтаксис, задайте для свойства ResetInportPort значение true
. Для примера:
FFT_N = dsp.HDLFFT(___,'ResetInputPort',true); ... [y,validOut] = FFT_N(x,validIn,resetIn)
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)