Fixed-Point Arithmetic Attribute Determination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional environments for fixed-point algorithm development lack a method to specify intermediate levels of precision, leading to inefficient use of resources and unrealizable attributes, as they either burden users with full specification or result in attributes that are not realizable on the architecture.

Innovation Solution

The system provides intermediate rules for setting attributes of fixed-point arithmetic operations, allowing users to specify boundaries and behavior with minimal specification, and efficiently allocates space for storing results of arithmetic operations by incrementing the number of digits at a rate proportional to logb N, where b is the base of the operands, thereby conserving resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If full precision is used by the computational tool, then precision is maintained, but word length grows too large to be stored in the given architecture

Engineering Contradiction:
ImproveprecisionVSAvoidword length
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent dynamically changes the precision parameter during computation by tracking the number of significant digits (f) and adjusting the word length allocation accordingly. Instead of maintaining fixed full precision, the system adapts the precision level based on the actual computational needs at each step, allowing precision to be maintained where necessary while reducing word length where possible.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces dynamic attribute determination where the word length and precision are not fixed but change based on the computational context. The system dynamically calculates the required word length using the formula W = W1 + W2 - f, where f represents the overlapping significant digits, allowing the attributes to adapt dynamically throughout the computation process rather than being static.

Inventive Principle:
Principle #15Dynamics

2Reliability

If user specifies all attributes, then exact emulation is achieved, but user burden increases significantly

Engineering Contradiction:
Improveexact emulationVSAvoiduser burden
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements self-service by automatically determining the attributes (word length and radix point position) that the user would otherwise need to specify manually. The computational tool performs self-calibration by analyzing the operands and computing the appropriate attributes using the derived formulas, eliminating the need for users to manually calculate and specify all attributes while maintaining exact emulation capability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses feedback mechanisms by continuously monitoring the computational state and adjusting attributes based on the actual data being processed. The attribute determination is based on feedback from the operand analysis, ensuring that the specified attributes accurately reflect the computational requirements without requiring manual user input for each operation.

Inventive Principle:
Principle #23Feedback

3Reliability

If conventional environments allocate space for arithmetic operations, then overflow is prevented, but superfluous space is allocated reducing hardware efficiency

Engineering Contradiction:
Improveoverflow preventionVSAvoidhardware resource efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent changes the parameter for space allocation from fixed conservative estimates to dynamically calculated values. By using the formula that accounts for significant digit overlap (f), the system adjusts the allocated space parameter to match the actual computational requirements, preventing both overflow and superfluous allocation.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Instead of allocating full space for every possible scenario (excessive action), the patent uses partial action by allocating only the necessary space calculated through significant digit analysis. This provides just enough space to prevent overflow in each specific computational context without the waste of universal over-allocation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8484262B1System and methods for determining attributes for arithmetic operations with fixed-point numbers
Publication Date: 2013.07.09 MATHWORKS INC
  • US8484262B1 patent drawing
  • US8484262B1 patent drawing
  • US8484262B1 patent drawing

AI summary

In a computational device, a method is provided for determining attributes for results of arithmetic operations, including a result for a series of arithmetic operations, with fixed-point numbers, in an environment for fixed-point algorithm development. An indication is received of a plurality of possible word lengths to be used for storing a plurality of digits representing a result of arithmetic operation with fixed-point numbers. An indication is received of how a placement of a radix point is to be determined in the plurality of digits representing the results of the arithmetic operation with fixed-point numbers. When calculating a selected fixed-point arithmetic operation, one of the word lengths in the plurality of possible word lengths is employed for storing the plurality of digits representing a result of the selected fixed-point arithmetic operation. A placement of a radix point in the plurality of digits representing the result of the selected fixed-point arithmetic operation is based on the received indication of how the radix point is to be determined. A growth rate for a number of digits in a result of a series of arithmetic calculations is less than N, and preferably proportional to logb (N), where N is equal to the number of arithmetic operations performed, and b is the base of operands in the arithmetic operations.