Sparse Look-Up Table for High Radix Division

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing division algorithms, such as SRT division, face challenges with large and time-consuming look-up tables (LUTs) that become even more prohibitive as the radix increases, leading to increased circuit size and processing time.

Innovation Solution

The implementation of a sparse look-up table (LUT) generated using a personality key, which reduces the size of the LUT by exploiting symmetries and folding it, allowing for a more efficient division process by iteratively computing current remainders and portions of the result until a predefined precision is reached.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a look-up table is used to determine quotient digits in division operations, then the division speed is improved, but the circuit size and processing time increase significantly as the radix increases

Engineering Contradiction:
Improvedivision speedVSAvoidcircuit size
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments the division operation into multiple iterations, where each iteration processes a portion of the quotient digits. Instead of determining all quotient digits simultaneously through a large look-up table, the algorithm divides the problem into smaller steps, determining one or a few quotient digits per iteration. This segmentation allows the use of smaller, more manageable look-up tables while maintaining division speed through iterative processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial action by determining only a portion of the quotient digits in each iteration rather than all digits at once. The algorithm performs partial division operations iteratively, where each iteration computes a subset of the final quotient. This approach reduces the complexity of individual look-up table operations while achieving the complete division result through multiple passes.

Inventive Principle:
Principle #16Partial or excessive action

2Productivity

If the radix is increased to reduce the number of iterations, then the division efficiency is improved, but the look-up table size increases greatly

Engineering Contradiction:
Improvedivision efficiencyVSAvoidlook-up table size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments both the radix processing and the look-up table structure. Instead of using a single large look-up table for high radix operations, the algorithm segments the radix processing into multiple iterations with smaller look-up tables. Each iteration handles a portion of the radix processing, effectively dividing the large table requirement into multiple smaller tables that are processed sequentially.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a time dimension to the division process by using iterative computation. Instead of resolving the radix-size tradeoff in a single spatial dimension (look-up table size), the algorithm distributes the computation across multiple time steps (iterations). This dimensional transformation allows the system to use smaller look-up tables at each step while achieving high radix division efficiency through the accumulation of results across iterations.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10209957B2Partial remainder/divisor table split implementation
Publication Date: 2019.02.19 SAMSUNG ELECTRONICS CO LTD
  • US10209957B2 patent drawing
  • US10209957B2 patent drawing
  • US10209957B2 patent drawing

AI summary

According to one general aspect, an apparatus may include a key selector configured to select a personality key from at least a portion of an input value. The apparatus may include a sparse look-up table configured to determine a portion of a result based upon the personality key and a prior remainder. The apparatus may include an adder configured to compute a current remainder based upon, at least, the input value, and the portion of the result. The apparatus may be configured to iteratively compute current remainders and portions of the result until either the current remainder is zero, or a predefined level of precision is reached.