Create a State Structure - 9.1 English

PG109 Fast Fourier Transform LogiCORE IP Product Guide

Document ID
PG109
Release Date
2022-05-04
Version
9.1 English

The first function, xilinx_ip_xfft_v9_1_create_state , creates a new state structure for the FFT C model, allocating memory to store the state as required, and returns a pointer to that state structure. The state structure contains all information required to define the FFT being modeled. The function is called with a structure containing the core generics; these are all of the parameters that define the bit-accurate numerical performance of the core, represented as integers, and are shown in Table: FFT C Model Generics .

Table 5-2: FFT C Model Generics

Generic

Description

Permitted Values

C_NFFT_MAX

log 2 (maximum transform length)

3-16

C_ARCH

Architecture

1 = Radix-4, Burst I/O
2 = Radix-2, Burst I/O
3 = Pipelined, Streaming I/O
4 = Radix-2 Lite, Burst I/O

C_HAS_NFFT

Run time configurable transform length

0 = no, 1 = yes

C_USE_FLT_PT

Core interface

0 = Fixed-Point

1 = Single-Precision Floating-Point

C_INPUT_WIDTH

Input data width
(bits)

8-34

32

C_TWIDDLE_WIDTH

Phase factor width (bits)

8-34

24-25

C_HAS_SCALING

Scaling option: unscaled or determined by C_HAS_BFP

0 = unscaled,
1 = see C_HAS_BFP

0

C_HAS_BFP

Scaling option: Applicable if C_HAS_SCALING=1

0 = scaled,
1 = block floating-point

0

C_HAS_ROUNDING

Rounding:

0 = truncation,
1 = convergent rounding

0

Note: C_CHANNELS is not a generic used in the C model. The model is always single channel. To model multiple channels in a multichannel FFT, see Modeling Multichannel FFTs .

The xilinx_ip_xfft_v9_1_create_state function fails with an error message and returns a NULL pointer if any generic or combination of generics is invalid.