Circularly Shifted Memory Block for Multi-Dimensional FFT Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for computing multi-dimensional Fast Fourier Transforms (FFTs) face challenges in efficiently accessing and processing multi-dimensional data, particularly in video processing, due to the need for multiple processor clock cycles and inefficient data access in standard memory schemes.
Innovation Solution
A method for storing data in blocks that allows improved accessibility across dimensions by loading sequential values into memory macros, circularly shifting data to form efficient 2D or 3D blocks, and utilizing SIMD processors to perform complex multiplications and FFTs within these blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If standard random access memory schemes are used to store multi-dimensional data, then data can be stored in a simple manner, but data access efficiency across multiple dimensions deteriorates
Solution Approach 1:
The patent applies dimensionality change by organizing data in a 2D block structure where data is arranged in rows and columns, with each row circularly shifted relative to the previous row. This creates a multi-dimensional storage layout that enables efficient access patterns for multi-dimensional FFT operations, transforming the simple linear storage into a structured 2D arrangement that improves access efficiency without complicating the storage mechanism.
2Measurement precision
If multiple processor clock cycles are used to perform separate instructions for complex multiplication and FFTs, then processing accuracy is maintained, but processing speed deteriorates
Solution Approach 1:
The patent merges complex multiplication and FFT operations into a single SIMD processor instruction that executes in one clock cycle. The SIMD architecture allows multiple data elements to be processed simultaneously through vectorized operations, combining what were previously separate sequential operations into a unified parallel operation that maintains numerical accuracy while dramatically improving processing speed.
Solution Approach 2:
The patent changes the operational parameters by using SIMD processors that operate on multiple data elements in parallel with fixed-point arithmetic. This parameter change allows the processor to perform complex multiplication and FFT operations simultaneously on multiple data points, transforming the execution model from sequential single-precision operations to parallel fixed-point operations that achieve both accuracy and speed.
3Ease of manufacture
If sequential data is loaded into memory macros without circular shifting, then data loading is simple, but accessibility across dimensions deteriorates
Solution Approach 1:
The patent applies preliminary action by circularly shifting each row of data during the data loading phase, before the actual FFT processing begins. This pre-processing step arranges the data in an optimal pattern where subsequent FFT operations can access required data elements efficiently. The circular shift is performed in advance, so that when the FFT algorithm needs to access data across different dimensions, the data is already positioned for optimal access without requiring additional complex addressing logic.
Data Source
AI summary
Apparatus and methods for storing data in a block to provide improved accessibility of the stored data in two or more dimensions. The data is loaded into memory macros constituting a row of the block such that sequential values in the data are loaded into sequential memory macros. The data loaded in the row is circularly shifted a predetermined number of columns relative to the preceding row. The circularly shifted row of data is stored, and the process is repeated until a predetermined number of rows of data are stored. A two dimensional (2D) data block is thereby formed. Each memory macro is a predetermined number of bits wide and each column is one memory macro wide.


