Fixed-Point Arithmetic Attribute Determination
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Reliability
If user specifies all attributes, then exact emulation is achieved, but user burden increases significantly
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.
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.
3Reliability
If conventional environments allocate space for arithmetic operations, then overflow is prevented, but superfluous space is allocated reducing hardware efficiency
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.
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.
Data Source
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.


