FFT Accelerator Using Constant-Geometry and In-Place Butterflies

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing FFT techniques require significant memory resources or complex hardware to implement efficient in-place transformations, lacking a simple routing scheme and additional memory usage.

Innovation Solution

The method employs a combination of constant-geometry and in-place butterflies to compute FFT, where constant-geometry butterflies process subsets of input points, transposing data, and subsequent in-place operations finalize the transformation, optimizing memory usage and routing complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If in-place FFT implementation is used to reduce memory usage, then memory requirements are reduced, but routing and control logic complexity increases

Engineering Contradiction:
Improvememory requirementsVSAvoidrouting and control logic
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent divides the FFT computation into two distinct segments: constant-geometry butterfly operations that process data in a fixed pattern, and in-place butterfly operations that handle the remaining transformations. This segmentation allows each segment to be optimized independently, with the constant-geometry portion using simpler routing and the in-place portion utilizing already-computed addresses, thereby reducing overall routing complexity while maintaining memory efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs constant-geometry butterfly operations as a preliminary step before executing in-place FFT operations. By pre-processing the data with constant-geometry butterflies, the patent prepares the data in a format that simplifies subsequent in-place operations, allowing the in-place stage to use straightforward address computation without complex routing logic.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If constant-geometry FFT is used to simplify routing, then routing complexity is reduced, but additional memory space is required

Engineering Contradiction:
Improverouting complexityVSAvoidmemory space
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The patent merges constant-geometry FFT operations and in-place FFT operations into a unified hybrid architecture. The constant-geometry butterflies use simple fixed routing patterns, while the in-place butterflies compute addresses dynamically. By merging these two approaches, the patent achieves routing simplicity for the majority of operations while using additional memory only when necessary for the in-place stage, optimizing the trade-off between routing complexity and memory usage.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If radix-4 in-place FFT is used to process 1024 points, then computational efficiency is improved, but memory access patterns become complex requiring multiple memory banks

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidmemory access patterns
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the radix-4 FFT processing into constant-geometry stages that handle the majority of computations with simple memory access patterns, and in-place stages that handle the remaining transformations. This segmentation allows the system to achieve high computational efficiency through radix-4 operations while avoiding the need for complex multi-bank memory architectures, as the in-place stages can use straightforward address computation.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9098449B2FFT accelerator
Publication Date: 2015.08.04 ANALOG DEVICES INC
  • US9098449B2 patent drawing
  • US9098449B2 patent drawing
  • US9098449B2 patent drawing

AI summary

An FFT operation is performed by dividing n time-domain input points into a plurality of groups of m points, performing a plurality of constant-geometry butterfly operations on each of the groups of m points, and finally performing at least one in-place butterfly operation on the group of n points.