Function Approximation Circuitry Using LUT Interpolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing circuit designs for approximating non-linear functions face challenges with large lookup tables (LUTs) that require significant physical footprint and power consumption, especially when dealing with a large number of discrete inputs, and complex mathematical approaches that are computationally intensive.

Innovation Solution

The proposed circuitry approximates an arbitrary function using a lookup table (LUT) in conjunction with an addressing module and an interpolation module, which generates an address and interpolation factor to produce an approximate output value, reducing the need for extensive storage and computation by interpolating between stored discrete values.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a lookup table stores values for all discrete inputs, then the function approximation precision is improved, but the physical footprint and power consumption increase

Engineering Contradiction:
Improvefunction approximation precisionVSAvoidphysical footprint
Core Design Contradiction:
Measurement precisionVSArea of stationary object

Solution Approach 1:

The patent segments the full range of discrete inputs into multiple sub-ranges, and creates separate lookup tables for each sub-range. This allows the system to achieve high approximation precision for any given input by selecting the appropriate sub-range LUT, while keeping each individual LUT small enough to have limited physical footprint. The segmentation enables the system to cover the entire input domain with multiple smaller, more efficient tables.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension by organizing lookup tables in a hierarchical structure with multiple levels. Instead of using a single large 2D table, the system uses a tree-like hierarchy where the first level selects a sub-range and the second level performs the actual function lookup. This dimensional transformation from a single large table to a hierarchical structure enables the system to achieve high precision with reduced physical footprint by distributing the storage requirements across multiple smaller tables organized in layers.

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

2Measurement precision

If a lookup table stores values for all discrete inputs, then the function approximation precision is improved, but the power consumption increases

Engineering Contradiction:
Improvefunction approximation precisionVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by stationary object

Solution Approach 1:

The patent segments the full range of discrete inputs into multiple sub-ranges, and creates separate lookup tables for each sub-range. This allows the system to achieve high approximation precision for any given input by selecting the appropriate sub-range LUT, while keeping each individual LUT small enough to have limited physical footprint. The segmentation enables the system to cover the entire input domain with multiple smaller, more efficient tables.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension by organizing lookup tables in a hierarchical structure with multiple levels. Instead of using a single large 2D table, the system uses a tree-like hierarchy where the first level selects a sub-range and the second level performs the actual function lookup. This dimensional transformation from a single large table to a hierarchical structure enables the system to achieve high precision with reduced physical footprint by distributing the storage requirements across multiple smaller tables organized in layers.

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

3Measurement precision

If complex mathematical operations are used to generate non-linear functions, then the function approximation precision is improved, but the computation time increases

Engineering Contradiction:
Improvefunction approximation precisionVSAvoidcomputation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing function values in lookup tables during the design phase. Instead of performing complex mathematical operations at runtime, the system pre-computes the function values for all discrete inputs in each sub-range and stores them in the LUTs. During operation, the system only needs to perform a simple table lookup and interpolation, which is computationally efficient. This preliminary computation transfers the computational burden from runtime to design time, enabling fast execution with high precision.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2677660B1Function approximation circuitry
Publication Date: 2016.03.30 BLACKBERRY LTD
  • EP2677660B1 patent drawingFigure 1
  • EP2677660B1 patent drawingFigure 2-1~2-2
  • EP2677660B1 patent drawingFigure 3-1

AI summary

Function approximation circuitry (100) approximates an arbitrary function F over discrete inputs. Discrete values of the function F are stored in a lookup table 'LUT' component (108) for various inputs. An addressing module (104) generates an address from an input. An interpolation factor module (116) generates an interpolation factor from the input. An interpolation module (120) generates an output, which is an approximate value of the function F for the input, from the interpolation factor, and from outputs of the LUT component when the LUT component is addressed by the address.