Multi-Granularity Parallel FFT Butterfly Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing parallel FFT butterfly computation methods are limited by long delays due to memory access operations in each stage of butterfly computation, which restricts their speed and efficiency.

Innovation Solution

A method and device for multi-granularity parallel FFT butterfly computation using multiple buffers, where data and twiddle factors are read in parallel from input buffers, processed in parallel within butterfly groups, and results are written back without intermediate memory access, reducing memory access frequency and improving computation speed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If parallel FFT butterfly computation is implemented using multiple processors to compute short sequences in parallel, then computational throughput is improved, but memory access delay increases significantly

Engineering Contradiction:
Improvecomputational throughputVSAvoidmemory access delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the FFT computation into multiple stages and segments data access patterns. By organizing butterfly computations into stages where data is accessed once and reused across multiple butterfly operations, the system segments the computation to minimize repeated memory accesses. Each stage processes a specific portion of the data with optimized access patterns, reducing overall memory access delay while maintaining parallel throughput.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary data reorganization and buffering before the main parallel computation stages. Data is pre-arranged in memory buffers in an order that facilitates efficient parallel access during computation. Twiddle factors and input data are pre-loaded and organized so that during the parallel butterfly computation stages, processors can access data without causing memory access bottlenecks, thus reducing delay while maintaining high throughput.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If data is read and written between memory and processors at each computation stage, then computation can proceed in stages, but memory access frequency increases causing speed limitation

Engineering Contradiction:
Improvestaged computation capabilityVSAvoidcomputation speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent merges multiple memory access operations into single consolidated accesses. By combining the reading of data for multiple butterfly computations into a single memory read operation, and similarly combining write operations, the system reduces the total number of memory access transactions. This allows staged computation to proceed efficiently without the speed limitation imposed by frequent sequential memory accesses.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent ensures continuous data flow through the computation pipeline by maintaining data in intermediate buffers between stages. Instead of stopping computation to perform memory reads/writes at each stage boundary, the system keeps data continuously available in fast memory buffers, allowing parallel processors to maintain continuous useful action without interruption from memory access delays, thus preserving both staged computation capability and high speed.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9262378B2Methods and devices for multi-granularity parallel FFT butterfly computation
Publication Date: 2016.02.16 SHANGHAI SMART LOGIC TECHNOLOGY CO LTD
  • US9262378B2 patent drawing
  • US9262378B2 patent drawing
  • US9262378B2 patent drawing

AI summary

A method and device for multi-granularity parallel FFT butterfly computation. The method and device read data and twiddle factors for computation in one butterfly group from the input buffers and the twiddle factor buffer at a time, perform multi-stage butterfly computation in parallel using uniform butterfly representations, and write the results back to the input buffers. The method and device greatly reduce the frequency for accessing the memory, improve speed for butterfly computation, and reduce power consumption. The method and device achieve multi-granularity butterfly computation of various data formats in a parallel and efficient manner. The method and device can specify the parallel granularity and data format for butterfly computation according to particular applications, and are applicable to FFT butterfly computation of balanced and unbalanced groups.