K-Cluster Residue Number Layout for Edge AI Division and Sign Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Residue Number System (RNS) faces challenges in sign detection, magnitude comparison, and division, particularly in Edge AI computing, where it requires conversion back to the binary number domain for these operations, limiting its performance and efficiency.
Innovation Solution
The k-Cluster Residue Number System (k-RNS) addresses these issues by generating a modular set of coprime integers, creating a dynamic range, and using look-up tables to perform operations like multiplicative scaling, overflow detection, and mixed sign iterative division within the integer domain, eliminating the need for additional moduli sets and simplifying logic design.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If Residue Number System (RNS) is used for Edge AI computing, then computation speed and energy efficiency are improved through parallel operations, but sign detection, magnitude comparison, and division operations become complex requiring conversion to binary domain
Solution Approach 1:
The invention segments the dynamic range into multiple clusters, each represented by a quotient index and a residue vector. This segmentation allows division operations to be performed by selecting pre-computed cluster representatives, avoiding complex real-time division algorithms while maintaining accuracy in the residue domain.
Solution Approach 2:
The invention pre-computes and stores cluster representatives (quotient indices) and their corresponding residue vectors in lookup tables during system initialization. This preliminary action enables sign detection, magnitude comparison, and division operations to be performed by simple table lookups and comparisons in the residue domain, eliminating the need for conversion to binary domain during runtime.
2Productivity
If conventional RNS is used, then simple parallel addition and multiplication are achieved, but additional moduli sets are required to increase dynamic range for scaling operations
Solution Approach 1:
The invention makes the residue number system universal by enabling it to handle scaling operations without requiring additional moduli sets. The cluster-based representation with quotient indices allows the same moduli set to serve both computation and dynamic range expansion needs, making the system multi-functional and adaptable to different precision requirements.
Solution Approach 2:
The invention adds a new dimension to the residue number system by introducing quotient indices that represent clusters of residue values. This dimensional extension allows the system to represent larger dynamic ranges and perform scaling operations without changing the underlying moduli set, maintaining parallel computation efficiency while gaining versatility.
3Use of energy by stationary object
If floating-point to integer quantization is performed, then design simplification and energy efficiency are achieved, but precision and dynamic range are reduced
Solution Approach 1:
The invention changes the parameter representation by introducing quotient indices that encode cluster information. This parameter transformation allows the system to maintain higher precision and dynamic range compared to standard integer quantization, while still operating in the energy-efficient integer/residue domain rather than floating-point.
Data Source
AI summary
A k-cluster residue number system has a processor and memory coupled to the processor. The processor is used to generate a modular set composed of P coprime integers, generate a dynamic range by taking a product of the P coprime integers, generate quotient indices for all integers in the dynamic range, generate row indices for all integers in the dynamic range, generate column indices for all integers in the dynamic range, and generate a look-up table according to the quotient indices, row indices, the column indices, and all integers in the dynamic range. P is an integer greater than 2, and the P coprime integers include 2. The memory is used to store the look-up table.


