Library
AI Engine/DSP/Stream IO
Description
FFT Dynamic Point Stream implementation targeted for AI Engines. This block supports performing different lengths of FFT on input data streams. Each frame must be preceded by a 256-bit header which describes run-time parameters of that frame. The format of the header is described below. The block has two stream ports per subframe processor to maximize performance. The specified value for SSR parameter should be of the form 2^N, where N is a positive integer.
- Every input frame must be appended by a header.
- If the FFT size (N) is smaller than the frame size, the block takes the N point FFT of the first N samples in the input frame, and discards the rest of the samples in the frame.
- If the frame size is an integer multiple (M) of max FFT size, M FFT iterations will be performed on a given input frame, resulting in multiple iterations of output samples, reducing the number of times the kernel needs to be triggered to process a given number of input data samples. As a result, the overheads incurred during kernel triggering are reduced and overall performance is increased.
Index | Field Name | Description |
---|---|---|
1 | Direction |
|
2 | Point size (radix 2 stages) | Point size described as power of 2. For example, value '5' describes a point size of '32' |
3 | Reserved | Reserved |
4 | Status (output only) |
|
Example Header Format
To implement the 32-point size FFT of cint16
datatype, the format of
the header that should be preceded to the input data window should be as shown in
the following figure.
Example (Input to Dynamic Point FFT)
To implement the FFT of different sizes, say, 64, 32 and 128, of type
cint32
, the format of the input should be as follows:
complex([1 6 0 0 ones(1,64) 1 5 0 0 ones(1,32) 1 7 0 0 ones(1,128)])
Parameters
- Main
- Input/Output Data Type:
- Describes the type of individual data samples input/output of the dynamic point FFT. It can be cint16, cint32, cfloat types.
- Advanced
- Target Output Throughput (MSPS):
- Specifies the output sampling rate of the FFT function in Mega Samples per Second (MSPS). The value must be in the range 1 to 1000 and the default value is 200.