Bit Stream Floating-Point Conversion With Dynamic Exponent Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for transforming a bit stream into floating-point numbers are inefficient, as they often result in a limited number of floating-point numbers of certain precision being generated from a given bit stream, due to fixed window sizes and bit allocations.
Innovation Solution
A computer-implemented method that dynamically determines the exponent and significand of floating-point numbers by shifting a bit stream until a '1' is found, reducing the number of bits needed for the exponent and allowing more floating-point numbers to be generated from a given bit stream while maintaining precision, and optionally includes reshuffling for security and energy efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a fixed window size is used to transform bit stream into floating-point numbers, then the transformation process is simple and deterministic, but the number of floating-point numbers generated per bit stream is limited
Solution Approach 1:
The patent applies dynamics by making the window size variable rather than fixed. The window size dynamically adapts based on the position of the most significant bit (MSB) of the significand within the bit stream. This allows the transformation process to optimize the number of floating-point numbers generated by adjusting the window size according to the actual data distribution, thereby improving productivity without requiring complex external control mechanisms.
Solution Approach 2:
The patent changes the parameter of window size from a constant value to a variable that depends on the MSB position. By modifying this parameter dynamically based on the input bit stream characteristics, the system achieves higher generation efficiency. The window size is adjusted to match the actual precision requirements, allowing more floating-point numbers to be extracted from the same bit stream.
2Adaptability or versatility
If more bits are allocated to the exponent, then the range of representable floating-point numbers increases, but fewer floating-point numbers can be generated from a fixed bit stream
Solution Approach 1:
The patent applies local quality by allocating bits differently based on the local characteristics of the bit stream. Instead of uniformly allocating bits to exponent and significand, the system determines the MSB position of the significand and allocates bits accordingly. This localized adaptation ensures that the exponent has sufficient range while minimizing the bits consumed, thereby maximizing the number of floating-point numbers that can be generated from the bit stream.
3Measurement precision
If a sliding window approach is used, then the transformation is straightforward and follows IEEE-754 standard, but the precision requirements constrain the number of output numbers
Solution Approach 1:
The patent makes the window size dynamic by linking it to the MSB position of the significand. This dynamic adjustment allows the system to maintain the required precision for each floating-point number while optimizing the window size to accommodate more numbers within the same bit stream. The precision requirement is preserved through proper alignment with the MSB, while the variable window size improves the generation rate.
Data Source
Figure 1
Figure 2a~2d
Figure 3a~3c
AI summary
Computer-implemented method comprising obtaining a bit stream and transforming the bit stream into a floating-point number, wherein the floating-point number comprises an exponent and a significand, the transformation comprising determining the exponent of the floating-point number based on counting a number of bitwise shifts needed to obtain a bit value of 1 at a designated position of the bit stream, the transformation further comprising determining the significand of the floating-point number based on a certain number of bits that are different from the bits used for determining the exponent.