Quantized Scaling on Integrated Circuits Reducing Memory Overhead
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Integrated circuits face inefficiencies in scaling operations due to frequent access to external memory and repeated computations, particularly when handling real numbers stored as floating-point numbers, which require more storage space and resources.
Innovation Solution
A computer program and method for preparing and executing quantized scaling operations on integrated circuits, involving pre-computation by a host processor, conversion of floating-point numbers to quantized numbers, and storage of coordinates and coefficients as integers and fixed-point numbers, respectively, to reduce memory usage and optimize computations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If floating-point numbers are used to store real numbers in the original array, then measurement precision is improved, but device complexity and memory requirements increase
Solution Approach 1:
The patent changes the parameter representation from floating-point numbers to quantized numbers with integer coordinates and fixed-point coefficients. This transformation maintains the necessary precision for scaling operations while significantly reducing memory requirements and computational complexity, directly resolving the contradiction between precision and device complexity.
Solution Approach 2:
The patent creates a simplified representation (quantized numbers, integer coordinates, fixed-point coefficients) that copies the essential information needed for scaling operations while eliminating the complexity of floating-point storage. This copying approach preserves functional equivalence while reducing resource consumption.
2Measurement precision
If floating-point numbers are used for linear interpolation coefficients, then measurement precision is improved, but use of energy and computational resources increase
Solution Approach 1:
The patent transforms linear interpolation coefficients from floating-point to fixed-point representation. This parameter change maintains the precision required for accurate scaling while reducing the computational resources and energy needed for processing, as fixed-point arithmetic is more efficient on integrated circuits than floating-point arithmetic.
Solution Approach 2:
The patent uses fixed-point numbers as a more economical alternative to floating-point numbers for storing interpolation coefficients. This approach sacrifices some flexibility in favor of computational efficiency and lower energy consumption, which is acceptable for the specific application context of scaling operations on resource-constrained devices.
3Measurement precision
If repeated computations are performed during scaling operations, then measurement precision is maintained, but productivity decreases
Solution Approach 1:
The patent performs preliminary computation by pre-calculating and storing quantized values, integer coordinates, and fixed-point interpolation coefficients before the actual scaling operation. This preliminary action eliminates the need for repeated computations during scaling, maintaining precision while significantly improving productivity by reducing redundant calculations.
Solution Approach 2:
The patent enables the scaling operation to be self-sufficient by using pre-computed quantized data and coefficients that can be directly applied without repeated reference to the original floating-point array. This self-service approach allows the system to maintain precision while avoiding redundant computational steps, thereby improving efficiency.
4Measurement precision
If access to external memory is performed frequently during scaling operations, then measurement precision is maintained, but loss of time increases
Solution Approach 1:
The patent performs preliminary conversion of the original array to quantized numbers and pre-computation of coordinates and coefficients, storing these in a format optimized for the integrated circuit. This preliminary action reduces the need for frequent external memory accesses during execution, as the processed data can be directly utilized from internal memory or registers, thereby reducing time loss while maintaining precision.
Data Source
AI summary
Preparation and execution of quantized scaling may be performed by operations including obtaining an original array and a scaling factor representing a ratio of a size of the original array to a size of a scaled array, determining, for each column of the scaled array, a horizontal coordinate of each of two nearest elements in the horizontal dimension of the original array, and, for each row of the scaled array, a vertical coordinate of each of two nearest elements in the vertical dimension of the original array, calculating, for each row of the scaled array and each column of the scaled array, a linear interpolation coefficient, converting each value of the original array from a floating point number into a quantized number, converting each linear interpolation coefficient from a floating point number into a fixed point number, storing, in a memory, the horizontal coordinates and vertical coordinates as integers, the values as quantized numbers, and the linear interpolation coefficients as fixed point numbers.


