Parameter | Description |
---|---|
input_width | Data input port width. |
output_width | Data output port width. |
status_width | Output status port width. |
config_width | Input configuration port width. |
max_nfft | The size of the FFT data set is specified as 1 << max_nfft. |
has_nfft | Determines if the size of the FFT can be runtime configurable. |
channels | Number of channels. |
arch_opt | The implementation architecture. |
phase_factor_width | Configure the internal phase factor precision. |
ordering_opt | The output ordering mode. |
ovflo | Enable overflow mode. |
scaling_opt | Define the scaling options. |
rounding_opt | Define the rounding modes. |
mem_data | Specify using block or distributed RAM for data memory. |
mem_phase_factors | Specify using block or distributed RAM for phase factors memory. |
mem_reorder | Specify using block or distributed RAM for output reorder memory. |
stages_block_ram | Defines the number of block RAM stages used in the implementation. |
mem_hybrid | When block RAMs are specified for data, phase factor, or reorder buffer, mem_hybrid specifies where or not to use a hybrid of block and distributed RAMs to reduce block RAM count in certain configurations. |
complex_mult_type | Defines the types of multiplier to use for complex multiplications. |
butterfly_type | Defines the implementation used for the FFT butterfly. |
When specifying parameter values which are not integer or boolean, the HLS FFT namespace should be used.
For example, the possible values for parameter butterfly_type
in the following table are use_luts
and use_xtremedsp_slices
. The values used in the C program should be butterfly_type = hls::ip_fft::use_luts
and butterfly_type = hls::ip_fft::use_xtremedsp_slices
.