Associative Memory CORDIC with LUT for Parallel Sin/Cos

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for computing trigonometric functions, such as the CORDIC algorithm, face inefficiencies in handling multiple angles concurrently, leading to high computational complexity and time consumption.

Innovation Solution

A combined approach using a lookup table (LUT) to store results of the first N iterations of the CORDIC algorithm and performing additional M iterations concurrently in an associative memory device, reducing overall computational complexity by leveraging the associative memory's parallel processing capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the CORDIC algorithm is performed iteratively for multiple angles, then accurate trigonometric function values are obtained, but computational time and complexity increase significantly

Engineering Contradiction:
Improveaccuracy of sine/cosine valuesVSAvoidcomputational time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the computation process into two distinct phases: (1) a lookup table phase that pre-computes and stores results for the first N iterations of the CORDIC algorithm, and (2) a parallel computation phase that performs the remaining M iterations concurrently for multiple angles using an associative memory device. This segmentation allows the time-consuming iterative computation to be partially replaced by fast table lookup while maintaining accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by pre-computing the first N iterations of the CORDIC algorithm for all possible input angles and storing these results in a lookup table before actual computation is needed. This preliminary preparation enables subsequent queries to retrieve partial results instantly, avoiding redundant computation and significantly reducing computational time for multiple angles.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the CORDIC algorithm is performed for multiple angles sequentially, then accurate results are obtained, but productivity decreases due to sequential processing

Engineering Contradiction:
Improveaccuracy of trigonometric valuesVSAvoidcomputation speed for multiple angles
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent segments the computation into a sequential lookup phase (first N iterations) and a parallel computation phase (remaining M iterations). The associative memory device is specifically designed to handle multiple angles concurrently in the second phase, with each column independently performing CORDIC iterations on different input angles simultaneously, thereby achieving high productivity while maintaining accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential one-dimensional processing to parallel multi-dimensional processing by utilizing the associative memory device's columnar structure. Multiple input angles are processed simultaneously across different columns, effectively adding a parallelism dimension to the computation and dramatically increasing productivity for batch trigonometric function evaluation.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Loss of time

If a lookup table stores all results for T iterations, then computational time is reduced, but device complexity and memory requirements increase

Engineering Contradiction:
Improvecomputational timeVSAvoidlookup table size
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments the lookup table requirements by only storing results for the first N iterations rather than all T iterations. This segmentation reduces the lookup table size from 2^T entries to 2^N entries, where N < T. The remaining M = T - N iterations are computed in parallel using the associative memory device, achieving a balance between memory requirements and computational efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by using the lookup table for only the first N iterations of the CORDIC algorithm, rather than storing complete results for all T iterations. This partial use of the lookup table, combined with parallel computation for the remaining iterations, reduces device complexity while still achieving significant speedup compared to fully sequential computation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12596529B2CORDIC computation of sin/cos using combined approach in associative memory
Publication Date: 2026.04.07 GSI TECHNOLOGY INC
  • US12596529B2 patent drawing
  • US12596529B2 patent drawing
  • US12596529B2 patent drawing

AI summary

A method for an associative memory device includes the steps of providing a look up table (LUT) with all possible solutions for N first iterations of a CORDIC algorithm, receiving a plurality of input angles, concurrently computing a location index for each angle of the plurality of angles and concurrently storing each index in a column of the associative memory device, copying a solution from the LUT in the location index to a plurality of columns associated with the index and concurrently performing M additional iterations of the CORDIC algorithm on the columns to compute a value of a trigonometric function for each angle.