Polynomial CORDIC Function Evaluation for Accuracy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for evaluating mathematical functions in computational environments often struggle with accuracy when input values stray far from the known point used for approximation, as they rely on a single polynomial to approximate the function over its entire domain.

Innovation Solution

The domain of the mathematical function is divided into intervals, with each interval approximated by a respective polynomial, and a CORDIC algorithm is used to refine the approximation, initializing it with a first evaluation from the polynomial block to achieve a more accurate result.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single polynomial is used to approximate the function over its entire domain, then the device complexity is reduced, but the measurement precision deteriorates for input values far from the known point

Engineering Contradiction:
Improvepolynomial approximation structureVSAvoidfunction evaluation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The domain of the mathematical function is divided into multiple intervals, with each interval having its own polynomial approximation. This segmentation allows each polynomial to be optimized for a specific range, improving accuracy for input values far from the original known point while maintaining manageable device complexity through systematic organization of multiple polynomials.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each polynomial is tailored to provide optimal approximation quality for its specific interval. By making the approximation properties local to each interval rather than uniform across the entire domain, the system achieves high precision for any input value regardless of its position in the domain.

Inventive Principle:
Principle #3Local quality

2Measurement precision

If the domain is divided into multiple intervals with respective polynomials, then the measurement precision is improved, but the device complexity increases

Engineering Contradiction:
Improvefunction evaluation accuracyVSAvoidpolynomial approximation structure
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The CORDIC algorithm performs preliminary iterative calculations to determine the appropriate interval and select the corresponding polynomial before final evaluation. This preliminary action organizes the complexity systematically, allowing the system to manage multiple polynomials efficiently by pre-establishing the selection and evaluation sequence.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The CORDIC algorithm acts as an intermediary between the input value and the polynomial evaluation process. It mediates by determining which polynomial to use and facilitating the transition from input to accurate output, thereby managing the complexity of having multiple polynomials without requiring direct complex control logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If a CORDIC algorithm is used to refine the polynomial approximation, then the measurement precision is improved, but the time required for evaluation increases

Engineering Contradiction:
Improvefunction evaluation accuracyVSAvoidconvergence time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The polynomial evaluation is performed as a preliminary action before the CORDIC algorithm refinement. This provides an accurate initial estimate that is already close to the final result, significantly reducing the number of CORDIC iterations needed and thereby reducing the overall evaluation time while maintaining high precision.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The CORDIC algorithm uses feedback from the polynomial evaluation result to guide its iterative refinement process. By starting with the polynomial result as the initial value and iteratively improving it, the system efficiently converges to high precision without requiring numerous iterations, thus minimizing time loss.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11983510B2Evaluating a mathematical function in a computational environment
Publication Date: 2024.05.14 IMAGINATION TECH LTD
  • US11983510B2 patent drawing
  • US11983510B2 patent drawing
  • US11983510B2 patent drawing

AI summary

Apparatus for evaluating a mathematical function for a received input value includes a polynomial block configured to identify a domain interval containing the received input value over which the mathematical function can be evaluated, the mathematical function over the identified interval being approximated by a polynomial function; and evaluate the polynomial function for the received input value using a set of one or more stored values representing the polynomial function over the identified interval to calculate a first evaluation of the mathematical function for the received input value; and a CORDIC block for performing a CORDIC algorithm, configured to initialise the CORDIC algorithm using the first evaluation of the mathematical function for the received input value calculated by the polynomial block; and implement the CORDIC algorithm to calculate a refined evaluation of the mathematical function for the received input value.