Digit Recurrence Division Scaling Circuitry

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digit-recurrence division algorithms for floating-point numbers are time-consuming and require complex circuitry, leading to increased power consumption and size, especially when dealing with high radix values.

Innovation Solution

A data processing apparatus and method that includes scaling circuitry to pre-scale the dividend and divisor, producing an intermediate value used for the first iteration of the digit-recurrence division, allowing for parallel operation with initialisation circuitry to produce a partial quotient before the scaled values are fully calculated, thereby reducing overall processing time without increasing circuit complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If digit-recurrence division is performed on floating-point numbers using high radix values, then the number of iterations required to produce the output is reduced, but the circuitry becomes more complex

Engineering Contradiction:
Improvenumber of iterationsVSAvoidcircuitry complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing scaling of the dividend and divisor before the main digit-recurrence division process. The scaling circuitry pre-processes the operands to produce scaled values that are then used in the division, reducing the complexity of the digit-recurrence circuitry while maintaining high radix benefits

Inventive Principle:
Principle #10Preliminary action

2Speed

If the radix is increased to reduce the number of iterations, then processing speed is improved, but power consumption and circuitry size increase

Engineering Contradiction:
Improveprocessing speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent segments the division operation into distinct functional blocks: scaling circuitry that operates independently to pre-process operands, and digit-recurrence circuitry that performs the main division. This segmentation allows the high-radix digit-recurrence to operate faster while the scaling circuitry, which uses fewer resources, handles the operand preparation, thereby reducing overall power consumption

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If digit-recurrence division is performed with scaling, then accuracy is improved, but the time required to produce the result increases

Engineering Contradiction:
Improvequotient accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements continuity of useful action by designing the scaling circuitry and digit-recurrence circuitry to operate in a continuous pipeline. The scaling occurs while the previous iteration is completing, and the scaled values are fed into the digit-recurrence process without idle waiting time, maintaining continuous productive operation that improves accuracy without proportionally increasing total processing time

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10216481B2Digit recurrence division with scaling and digit selection using intermediate value
Publication Date: 2019.02.26 ARM LTD
  • US10216481B2 patent drawing
  • US10216481B2 patent drawing
  • US10216481B2 patent drawing

AI summary

A data processing apparatus is provided to perform a digit-recurrence division operation to determine a quotient as a result of dividing a dividend by a divisor. Scaling circuitry scales the dividend and the divisor by a factor to produce a scaled dividend and a scaled divisor. Digit recurrence circuitry performs one or more iterations of the digit-recurrence division operation on the scaled dividend and the scaled divisor, with each iteration producing a digit of the quotient and a remainder value. The remainder value is provided as an input to the digit recurrence circuitry for a subsequent iteration. Initialization circuitry performs a first iteration of the one or more iterations and provides the digit of the quotient after the first iteration. The initialization circuitry receives, as an input, an intermediate value produced by the scaling circuitry while scaling the dividend.