Floating-Point Error Detection via Exponent Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Floating-point errors occur during addition and subtraction calculations due to the finite precision of binary representations, leading to inaccuracies and potential catastrophic cancellations, especially when operands are close in value or significantly different.

Innovation Solution

A method is introduced to detect potential floating-point errors by comparing the exponents of operands and, if necessary, executing the relevant instructions at a higher precision to reduce errors, thereby increasing the accuracy of calculations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If binary representations with finite precision are used to represent operands, then calculations can be performed by computing devices, but floating-point errors are introduced due to approximation between operands and binary forms

Engineering Contradiction:
Improvecalculation executionVSAvoidfloating-point accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent applies preliminary action by comparing exponents of operands before executing addition or subtraction instructions. The system identifies potential floating-point errors in advance by checking exponent differences, and only then decides whether to execute at higher precision, preventing error propagation before it occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent dynamically changes the precision parameter of binary representations based on exponent comparison results. When the exponent difference exceeds a threshold, the system switches from standard precision to higher precision execution, adapting the representation quality to the specific calculation needs.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If higher precision binary forms are used to reduce floating-point errors, then approximation accuracy improves, but calculation complexity and resource consumption increase

Engineering Contradiction:
Improvebinary form accuracyVSAvoidcalculation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies local quality by selectively applying higher precision only to specific operations where exponent comparison indicates potential errors. Instead of uniformly increasing precision for all calculations, the system locally adapts precision levels based on the specific operand characteristics and operation type.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses partial action by applying higher precision only when necessary (when exponent difference exceeds threshold), rather than always using maximum precision. This selective approach provides sufficient accuracy for problematic cases while maintaining efficiency for routine operations.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If exponent comparison and conditional higher precision execution are implemented, then floating-point error detection and correction capability improves, but instruction execution time increases

Engineering Contradiction:
Improveerror detection capabilityVSAvoidinstruction execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs exponent comparison as a preliminary check before executing the main calculation instruction. This early detection mechanism identifies at-risk operations quickly using simple exponent values, allowing the system to prepare appropriate precision levels without delaying the critical calculation path.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary exponent comparison step that acts as a gatekeeper between operand identification and instruction execution. This intermediary check quickly filters operations needing higher precision, minimizing the impact on overall execution time by avoiding full precision processing for all operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9104515B2Floating-point error detection and correction
Publication Date: 2015.08.11 FUJITSU LTD
  • US9104515B2 patent drawing
  • US9104515B2 patent drawing
  • US9104515B2 patent drawing

AI summary

An embodiment includes a method for detecting a potential floating-point error in an addition or a subtraction instruction included in an operation. The method may include identifying a first operand and a second operand. The first operand and the second operand may be configured to be manipulated during execution of the instruction. The method may include copying a first exponent of the first operand to a first comparison register. The method may also include copying a second exponent of the second operand to a second comparison register. The method may further include comparing the first exponent in the first comparison register to the second exponent in the second comparison register. Based on the comparison, a determination may be made whether the instruction includes a potential floating-point error when executing the instruction using the first operand and the second operand formatted according to a first precision.