Operator Library: Transformation
Operator FFT performs a forward or reverse one dimensional Fast Fourier transform. The operator accepts complex values at the input and will output complex values. It uses two ports at the input and output. One for the real part and another one for the imaginary part.
By using parameters, the operator can be configured to the number of points i.e. line width. The line width has to match with the number of pixel at the input.
A second parameter defines if the operator performs a forward or reverse transformation.
Limited Configurations Only | |
---|---|
The operator currently can only be used on imaFlex CXP-12 Penta, imaFlex CXP-12 Quad, microEnable 5 ironman and microEnable 5 marathon and LightBridge frame grabbers in specific configuration. |
The operator is limited to imaFlex CXP-12 Penta, imaFlex CXP-12 Quad, mE5 ironman and mE5 matathon/LightBridge. In the following the allowed configurations and characteristics are listed.
imaFlex CXP-12 Penta, and imaFlex CXP-12 Quad:
-
Points (image width): {8, 16, 32, 64, 128, 256, 512, 1024, 2048}
-
Parallelism: 1
-
Input bit width: 32
-
Output bit width: 48
mE5 ironman:
-
Points (image width): {8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192}
-
Parallelism: 2
-
Input bit width: 16
-
Output bit width: 32
mE5 marathon / LightBridge:
-
Points (image width): {8, 16, 32, 64, 128, 256, 512, 1024, 2048}
-
Parallelism: 2
-
Input bit width: 32
-
Output bit width: 48
The operator uses the XILINX FFT IP core with following parameterization:
-
Architecture: Pipelined Streaming IO
-
Run Time Configurable Transform Length: yes
-
Data Format: Fixed Point
-
Twiddle Width (Phase Factor Width): 10
-
Scaling Option: Unscaled
-
Rounding Mode: truncation
More information about the FFT algorithm can be found at https://www.xilinx.com/products/intellectual-property/fft.html#overview. imaFlex CXP-12 Penta and imaFlex CXP-12 Quad use Xilinx IP version 9.1. marathon and ironman use Xilinx IP version 8.0.
Property | Value |
---|---|
Operator Type | M |
Input Links | IRe, input real part IIm, input imaginary part |
Output Links | ORe, output real part OIm, output imaginary part |
Synchronous and Asynchronous Inputs
- All inputs are synchronous to each other i.e. they have to be sourced by the same M-type operator through an arbitrary network of O-type operators.
The input bit width is 16 bit on mE5 ironman and 32 bit in mE5 marathon/LightBridge. |
|
The output bit width is 32 bit on mE5 ironman and 64 bit in mE5 marathon/LightBridge. |
|
The parallelism is 1 for imaFlex CXP-12 Penta and imaFlex CXP-12 Quad, and 2 for mE5 ironman as well as mE5 marathon/LightBridge. |
|
[2^3, 2^13] on mE5 ironman, [2^3, 2^11] on mE5 marathon/LightBridge. |
TransformationMode | |
---|---|
Type | dynamic write parameter |
Default | Forward |
Range | {Forward, Reverse} |
Specify a forward or reverse transform. |
LineLength | |
---|---|
Type | dynamic write parameter |
Default | Points1024 |
Range | {8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192} on mE5 ironman, {8, 16, 32, 64, 128, 256, 512, 1024, 2048} on mE5 marathon/LightBridge and imaFlex CXP-12 Penta and imaFlex CXP-12 Quad |
Specify the number of transformation points i.e. the line length. |
The use of operator FFT is shown in the following examples:
-
Shows the usage of operator FFT.