FPGA IPUG 02153 1 7 FFT Compiler IP User Guide
FPGA IPUG 02153 1 7 FFT Compiler IP User Guide
IP Version: v1.5.0
User Guide
FPGA-IPUG-02153-1.7
December 2024
FFT Compiler IP
User Guide
Disclaimers
Lattice makes no warranty, representation, or guarantee regarding the accuracy of information contained in this document or the suitability of its
products for any particular purpose. All information herein is provided AS IS, with all faults, and all associated risk is the responsibility entirely of the
Buyer. The information provided herein is for informational purposes only and may contain technical inaccuracies or omissions, and may be otherwise
rendered inaccurate for many reasons, and Lattice assumes no obligation to update or otherwise correct or revise this information. Products sold by
Lattice have been subject to limited testing and it is the Buyer's responsibility to independently determine the suitability of any products and to test
and verify the same. LATTICE PRODUCTS AND SERVICES ARE NOT DESIGNED, MANUFACTURED, OR TESTED FOR USE IN LIFE OR SAFETY CRITICAL
SYSTEMS, HAZARDOUS ENVIRONMENTS, OR ANY OTHER ENVIRONMENTS REQUIRING FAIL-SAFE PERFORMANCE, INCLUDING ANY APPLICATION IN
WHICH THE FAILURE OF THE PRODUCT OR SERVICE COULD LEAD TO DEATH, PERSONAL INJURY, SEVERE PROPERTY DAMAGE OR ENVIRONMENTAL
HARM (COLLECTIVELY, "HIGH-RISK USES"). FURTHER, BUYER MUST TAKE PRUDENT STEPS TO PROTECT AGAINST PRODUCT AND SERVICE FAILURES,
INCLUDING PROVIDING APPROPRIATE REDUNDANCIES, FAIL-SAFE FEATURES, AND/OR SHUT-DOWN MECHANISMS. LATTICE EXPRESSLY DISCLAIMS
ANY EXPRESS OR IMPLIED WARRANTY OF FITNESS OF THE PRODUCTS OR SERVICES FOR HIGH-RISK USES. The information provided in this document
is proprietary to Lattice Semiconductor, and Lattice reserves the right to make any changes to the information in this document or to any products at
any time without notice.
Inclusive Language
This document was created consistent with Lattice Semiconductor’s inclusive language policy. In some cases, the language in underlying tools and
other items may not yet have been updated. Please refer to Lattice’s inclusive language FAQ 6878 for a cross reference of terms. Note in some cases
such as register names and state names it has been necessary to continue to utilize older terminology for compatibility.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
2 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
Contents
Contents ............................................................................................................................................................................... 3
Acronyms in This Document ................................................................................................................................................. 5
1. Introduction .................................................................................................................................................................. 6
1.1. Quick Facts .......................................................................................................................................................... 6
1.2. Features .............................................................................................................................................................. 6
1.3. Conventions ........................................................................................................................................................ 7
1.3.1. Nomenclature................................................................................................................................................. 7
1.3.2. Signal Names .................................................................................................................................................. 7
1.3.3. Attribute ......................................................................................................................................................... 7
2. Functional Description .................................................................................................................................................. 8
2.1. Overview ............................................................................................................................................................. 8
2.1.1. High Performance Architecture...................................................................................................................... 9
2.1.2. Low Resource Architecture ............................................................................................................................. 9
2.2. Signal Descriptions ............................................................................................................................................ 10
2.3. Attribute Summary............................................................................................................................................ 12
2.4. Interfacing with the FFT Compiler ..................................................................................................................... 14
2.4.1. Configuration Signals .................................................................................................................................... 14
2.4.2. Handshake Signals ........................................................................................................................................ 14
2.4.3. Exponent Output .......................................................................................................................................... 14
2.4.4. Exceptions .................................................................................................................................................... 14
2.5. Timing Specifications ......................................................................................................................................... 15
2.6. Output Latency.................................................................................................................................................. 17
3. IP Generation and Evaluation ..................................................................................................................................... 18
3.1. Licensing the IP.................................................................................................................................................. 18
3.2. Generation and Synthesis ................................................................................................................................. 18
3.3. Running Functional Simulation ......................................................................................................................... 20
3.4. Hardware Evaluation ......................................................................................................................................... 21
3.5. Constraining the IP ............................................................................................................................................ 22
4. Ordering Part Number ................................................................................................................................................ 23
Appendix A. Resource Utilization ....................................................................................................................................... 24
References .......................................................................................................................................................................... 28
Technical Support Assistance ............................................................................................................................................. 29
Revision History .................................................................................................................................................................. 30
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 3
FFT Compiler IP
User Guide
Figures
Figure 2.1. FFT Compiler Interface Diagram ......................................................................................................................... 8
Figure 2.2. Implementation Diagram for High-Performance FFT ......................................................................................... 9
Figure 2.3. Low-Resource FFT Data Flow Diagram ............................................................................................................... 9
Figure 2.4. Timing Diagram for Streaming I/O for 64 Points .............................................................................................. 15
Figure 2.5. Timing Diagram Showing Handshake Signals for Low Resource FFT ................................................................ 16
Figure 2.6. Timing Diagram Showing Handshake Signals for High Performance FFT ......................................................... 17
Figure 3.1. Module/IP Block Wizard ................................................................................................................................... 18
Figure 3.2. Configure User Interface of FFT Compiler IP Core ............................................................................................ 19
Figure 3.3. Check Generated Result ................................................................................................................................... 19
Figure 3.4. Simulation Wizard ............................................................................................................................................. 20
Figure 3.5. Adding and Reordering Source ......................................................................................................................... 21
Figure 3.6. Simulation Waveform ....................................................................................................................................... 21
Tables
Table 1.1. Quick Facts ........................................................................................................................................................... 6
Table 2.1. Top level I/O interface ....................................................................................................................................... 10
Table 2.2. Attributes Table ................................................................................................................................................. 12
Table 2.3. Attributes Description ........................................................................................................................................ 13
Table 2.4. Local User Interface Functional Groups ............................................................................................................. 17
Table 3.1. Generated File List ............................................................................................................................................. 20
Table A.1. LIFCL-33-8USG84C Device Resource Utilization ................................................................................................ 24
Table A.2. LAV-AT-E70-3LFG1156I Device Resource Utilization ......................................................................................... 24
Table A.3. LFD2NX-9-7MG121C Device Resource Utilization ............................................................................................. 25
Table A.4. LFD2NX-17-7MG121C Device Resource Utilization ........................................................................................... 26
Table A.5. LFD2NX-28-7MG121C Device Resource Utilization ........................................................................................... 26
Table A.6. LFD2NX-40-7MG121C Device Resource Utilization ........................................................................................... 26
Table A.7. LN2-CT-20-1CBG484C Device Resource Utilization ........................................................................................... 27
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
4 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 5
FFT Compiler IP
User Guide
1. Introduction
The Lattice Semiconductor Fast Fourier Transform (FFT) Compiler IP Core offers forward and inverse FFTs for point sizes
from 64 to 16384. The FFT Compiler IP Core can be configured to perform forward FFT, inverse FFT (IFFT), or port
selectable forward/inverse FFT. It offers two modes of implementation: High Performance (Streaming I/O) and Low
Resource (Burst I/O).
In High Performance implementation, the FFT Compiler IP Core can perform real-time computations with continuous
data streaming in and out at clock rate. There can also be arbitrary gaps between data blocks allowing discontinuous
data blocks.
In Low Resource implementation, the requirement is to use less slice (logic unit of Lattice FPGA devices), Embedded Block
RAM (EBR), and Digital Signal Processor (DSP) resources. The device could also be too small to accommodate the High-
Performance version.
To account for the data growth in fine register length implementations, the FFT Compiler IP Core allows several different
modes (fixed and dynamic) for scaling data after each radix-2 stage of the FFT computation. The Low Resource version
also supports block floating point arithmetic that provides increased dynamic range for intermediate computations. It
allows the number of FFT points to be varied dynamically through a port.
1.2. Features
The key features of FFT Compiler IP Core include:
• Wide range of point sizes: 64, 128, 256, 512, 1024, 2048, 4096, 8192, and 16384
• Choice of high-performance (streaming I/O) or Low Resource (burst I/O) versions
• Run-time variable FFT point size
• Forward, inverse, or port-configurable forward/inverse transform modes
• Choice of no scaling, fixed scaling (RS111/RS211), or dynamically variable stage-wise scaling
• Data precision of 8 to 24 bits
• Twiddle factor precision of 8 to 24 bits
• Natural order for input and choice of bit-reversed or natural order for output
• Support for arbitrary gaps between input data blocks in high-performance realization
• Block floating point scaling support in Low Resource configurations
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
6 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
1.3. Conventions
1.3.1. Nomenclature
The nomenclature used in this document is based on Verilog HDL.
1.3.3. Attribute
The names of attributes in this document are formatted in title case and italicized (Attribute Name).
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 7
FFT Compiler IP
User Guide
2. Functional Description
2.1. Overview
Figure 2.1 shows the interface diagram for the FFT compiler. The diagram shows all of the available ports for the IP. It
should be noted that not all the I/O ports are available for a chosen configuration.
clk_i exponent_o
rstn_i expect_o
mode_i rfib_o
modeset_i
ibend_o
sfact_i
FFT obstart_o
sfactset_i Compiler
points_i
outvalid_o
pointset_i
ibstart_i dore_o
dire_i
doim_o
drim_i
FFT is a fast algorithm to implement the following N point Discrete Fourier Transform (DFT) function.
𝑁−1
𝑛𝑘
𝑋(k) = ∑ 𝑥(n)𝑊
𝑁
𝑛=0
(1)
where WN is given by:
𝑗2𝜋
𝑊𝑁 = 𝑒 − 𝑁
(2)
The inverse DFT is given by:
𝑁−1
1 −𝑛𝑘
𝑋(𝑛) = ∑ 𝑋 (𝑘)𝑊
𝑛 𝑁
𝑘=0
(3)
However, the output of the FFT Compiler IP Core differs from the true output by a scale factor determined by the scaling
scheme. If right-shift by 1 at all stages scaling mode (RS111) is used, there is a division by 2 at every stage resulting in an
output that is 1/Nth of the true output of Equation (1). The output for inverse FFT matches with Equation (3) for this
scaling mode. Using other scaling modes results in outputs scaled by other appropriate scale factors.
In High Performance mode, the FFT Compiler IP Core can continuously read in and give out one data sample per clock,
block after block. The FFT throughput is equal to the clock rate when the data blocks are applied continuously. Low
Resource mode uses less logic and memory resources, but requires 4 to 8 block periods to compute the FFT for one block
of input data. Both versions of FFT do not allow breaks in the data stream within a block but do allow arbitrary additional
gaps between data blocks.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
8 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
Scaling
Scaling
Scaling
Registers processing,Bit
din_i dout_o
and bfly bfly bfly reversal and
Control control
Control Control Control
The High Performance FFT implementation consists of several processing elements (PEs) connected in cascade. The
number of PEs is equal to log2 N, where N is the number of FFT points. Each PE has a radix-2 decimation-in-frequency
(DIF) butterfly (bfly), a memory (mem), an address generation and control logic (control), and a scaling unit (scaling).
Some of the butterflies include a twiddle multiplier and a twiddle factor memory. The scaling unit performs a division by
2, a division by 4, or no division, depending on the scaling mode and scale factor inputs at the port. There is an input-
processing block at the beginning of the PE chain and an output-processing block at the end of the PE chain. The input
processing block has registers and control logic for handshake signals and dynamic mode control. The output-processing
block contains handshake, mode control and bit-reversal logic, if configured for natural ordered output.
The High Performance FFT implementation enables streaming I/O operation, where the data is processed at clock speed
without any gaps between blocks. This implementation can also be employed for burst I/O situations by using the
handshake signals.
Twiddle
ROM
Input Data
mem
a
Commutator
Butterfly
mem
b
Output Data
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 9
FFT Compiler IP
User Guide
As Figure 2.3 shows, the FFT module is built with a butterfly reading from and writing to two memories at the same time.
There is a commutator after the butterfly to handle the writing sequence of the intermediate outputs. The twiddle
memory contains the pre-computed twiddle factors for the FFT. When an input block is applied, the first half of the block
is written into memory a and the second half into memory b in a bit-reversed order. The butterfly reads from the two
memories, performs stage 0 computation and writes out the intermediate results to the same sites in each memory.
Again, for stage 1 computation, the butterfly reads from the two memories, performs computation and writes back into
the two memories through the commutator. A similar process of reading, computing and writing continues for each of
the remaining stages. For every block of input data read, four to eight blocks of computation time is required for this
scheme. Due to the twin memory architecture, when data is unloaded form FFT in bit-reversed mode, the data in memory
a (points 0 to N/2-1) is unloaded first, followed by the data in memory b (N/2 to N-1), both in a bit-reversed order.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
10 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 11
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
12 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 13
FFT Compiler IP
User Guide
Attribute Description
the results.
Truncate Last Stage This can be enabled to have better throughput.
Implementation
Multiplier Type This option specifies whether DSP blocks or LUTs are used for implementing multipliers and multiply-add
components.
Adder Pipeline This option is used to specify an additional pipeline after the adders. This can be enabled to have better
performance at the cost of slightly increased utilization and latency.
Multiplier Pipeline This option is used to specify the pipeline of LUT based multipliers. Higher values for pipeline leads to
better performance at the cost of slightly increased utilization and latency.
Memory Type This parameter specifies the balance between using EBR and distributed memories. If EBR memory is
selected, EBRs are used for memory depths 32 and higher. If the Distributed Memory option is selected,
EBR memories are used only for depths 512 or more and the rest uses distributed memories. In the
automatic option, the IP generator uses a pre-defined setting to select the EBR and distributed memories
based on the FFT parameters.
2.4.4. Exceptions
Exceptions occur if there is an internal overflow in the computation of an output block. An exception is notified by the
except_o signal going high during a valid output. The except_o signal goes high if one or more overflows occur during
the computation of a block. The severity and number of overflow exceptions in a block depends on the scaling scheme
used and the property of the input data. If the user is using an appropriate scaling method for the expected input data
and can tolerate occasional exceptions, the except_o output may be left unconnected leading to a slightly reduced
resource utilization.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
14 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
clk_i
rfib_o
ibstart_i
dire_i,
diim_i
ibend_o
dore_o,
doim_o
obstart_o
outvalid_o
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 15
FFT Compiler IP
User Guide
Figure 2.5. Timing Diagram Showing Handshake Signals for Low Resource FFT
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
16 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
clk_i
rfib_o
mode_i
modeset_i
sfact_i
sfactset_i
points_i
pointset_i
ibstart_i
dire_i,
diim_i
ibend_o
Figure 2.6. Timing Diagram Showing Handshake Signals for High Performance FFT
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 17
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
18 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
3. In the module’s dialog box of the Module/IP Block Wizard window, customize the selected FFT Compiler IP Core
using drop-down menus and check boxes. As a sample configuration, see Figure 3.2. For configuration options, see
the Attribute Summary section.
4. Click Generate. The Check Generated Result dialog box opens, showing design block messages and results as
shown in Figure 3.3.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 19
FFT Compiler IP
User Guide
5. Click the Finish button. All the generated files are placed under the directory paths in the Create in and the
Component name fields shown in Figure 3.1.
The generated FFT Compiler IP Core package includes the black box (<Component name>_bb.v) and instance templates
(<Component name>_tmpl.v/vhd) that can be used to instantiate the core in a top-level design. An example RTL top-
level reference source file (<Component name>.v) that can be used as an instantiation template for the IP Core is also
provided. You may also use this top-level reference as the starting template for the top-level for their complete design.
The generated files are listed in Table 3.1.
Table 3.1. Generated File List
Attribute Description
<Component name>.ipx This file contains the information on the files associated to the generated IP.
<Component name>.cfg This file contains the parameter values used in IP configuration.
component.xml Contains the ipxact:component information of the IP.
design.xml Documents the configuration parameters of the IP in IP-XACT 2014 format.
rtl/<Component name>.v This file provides an example RTL top file that instantiates the IP core.
rtl/<Component name>_bb.v This file provides the synthesis black box.
misc/<Component name>_tmpl.v These files provide instance templates for the IP core.
misc /<Component
name>_tmpl.vhd
1. Click the button located on the Toolbar to initiate the Simulation Wizard shown in Figure 3.4.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
20 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
2. Click Next to open the Add and Reorder Source window as shown in Figure 3.5.
3. Click Next. The Summary window is shown. Click Finish to run the simulation.
Note: It is necessary to follow the procedure above until it is fully automated in the Lattice Radiant software suite.
The results of the simulation in our example are provided in Figure 3.6.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 21
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
22 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 23
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
24 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
Table A.3, Table A.4, Table A.5, Table A.6, and Table A.7 show the resource utilization of the FFT Compiler IP Core for
the LFD2NX-9, LFD2NX-17, LFD2NX-28, LFD2NX-40, and LN2-CT-20 devices using Synplify Pro of the Lattice Radiant
software 2024.2. Default configuration is used, and some attributes are changed from the default value to show the
effect on the resource utilization.
The default configurations are set as follows:
• Points Variability = Fixed
• Number of Points = 64
• Architecture = Low Resource
• FFT Mode = Forward
• Output Order = Bit-reversed
• Scaling Mode = RS111
• Input Data Width = 16
• Twiddle Factor Width = 16
• Precision Reduction Method = Truncation
• Multiplier Type = DSP Block Based
• Adder Pipeline = 0
• Memory Type = EBR Memory
Table A.3. LFD2NX-9-7MG121C Device Resource Utilization
Configuration Clk Fmax (MHz) Registers LUTs EBRs DSPs1
Default 194.212 824 752 3 4
Architecture: High Performance,
200 1128 1620 1 8
Others = Default
Architecture: High Performance,
Configuration Configuration Configuration Configuration Configuration
Scaling Mode: None
does not fit does not fit does not fit does not fit does not fit
Others = Default
Architecture: High Performance,
Multiplier Type: LUT-based, 120.948 2242 4445 1 0
Others = Default
FFT Mode: Dynamic Through Port,
187.161 829 753 3 4
Others = Default
Input Data Width: 24,
Configuration Configuration Configuration Configuration Configuration
Twiddle Factor Width: 24,
does not fit does not fit does not fit does not fit does not fit
Others = Default
Multiplier Type: LUT-based,
Memory Type: Distributed Memory, 165.508 1616 2435 0 0
Others = Default
Note:
1. Number of Multipliers.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 25
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
26 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 27
FFT Compiler IP
User Guide
References
• Lattice Radiant Timing Constraints Methodology (FPGA-AN-02059)
• Avant-E web page
• Avant-G web page
• Avant-X web page
• Certus-N2 web page
• Certus-NX web page
• CertusPro-NX web page
• CrossLink-NX web page
• MachXO5-NX web page
• Lattice Radiant Software web page
• Lattice Solutions IP Cores web page
• Lattice Insights web page for Lattice Semiconductor training courses and learning plans
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
28 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 29
FFT Compiler IP
User Guide
Revision History
Document Revision 1.7, IP v1.5.0, December 2024
Section Change Summary
All Added the IP version information on the cover page.
Introduction Updated Table 1.1. Quick Facts:
• Added the Certus-N2 device family to Supported FPGA Family.
• Added LFD2NX-9, LFD2NX-17, LFD2NX-28, LFD2NX-40, and LN2-CT-20 devices to
Targeted Devices.
• Updated the Resources and Lattice Implementation information.
Functional Description Updated the WN formula (equation 2) in the Overview section.
Ordering Part Number • Updated instances of Single Machine to Single Seat.
• Added the Certus-N2 OPNs.
Resource Utilization • Updated caption and Note for Table A.1. LIFCL-33-8USG84C Device Resource Utilization.
• Updated caption for Table A.2. LAV-AT-E70-3LFG1156I Device Resource Utilization.
• Added resource utilizations for the Lattice Radiant software version 2024.2.
References Added the Certus-N2 and Lattice Solutions IP Cores web pages, and the Lattice Radiant
Timing Constraints Methodology (FPGA-AN-02059) document.
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
30 FPGA-IPUG-02153-1.7
FFT Compiler IP
User Guide
© 2024 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal.
All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
FPGA-IPUG-02153-1.7 31
www.latticesemi.com