Table 3 Characteristics of selected square root methods and our proposed algorithm.

From: Novel seed generation and quadrature-based square rooting algorithms

Square root method

Method type

Advantages

Disadvantages

References

Newton–Raphson

Iterative

Simple

Includes division operation

1,15

Fast convergence (quadratic rate)

Requires initial estimation (seed value)

 

Latency and number of iterations depend on the quality of the chosen seed

 

Large numbers require extra iterations

Goldschmidt

Iterative

Absence of division operation

Slow for multiplication using more than 16 bits

1,18,46

Fast convergence (quadratic rate)

Truncates 64-bit numbers to 32 bits, producing calculation errors

Simultaneously calculates the square root and reciprocal square root

Requires initial estimation (seed value)

Suitable for hardware

Low performance in software implementations

Amenable for parallelism due to independent multiplication operations

Large numbers require extra iterations

Blinn

Bit manipulation

Fast and simple

Rough approximation (high maximum relative error)

48

Bakhshali

Iterative

Very fast convergence (quadruple rate)

Contains division operation

19

Avoid large numbers in the calculation of the square root

Requires initial values

 

Latency and number of iterations depend on the quality of the chosen initial values

 

Large numbers require extra iterations

Polynomial approximation

Approximation by real function

Good speed (e.g., fast piecewise interpolation)

Difficult to achieve high accuracy

15

Carried out efficiently in both software and hardware circuits

Requires extra memory for coefficients and interpolation points

 

Requires rescaling before and after the calculation of the square root.

Dianov et al.

Approximation by real function (hyperbola)

Absence of division operation

Single iteration

52

  

Difficult to achieve high accuracy

Nonrestoring

Subtractive

Requires a limited number of arithmetic operations

High computational time

4,15,48,62

 

Very simple, multiplication-free

Slow convergence (linear rate)

 

Suitable for hardware implementation

Arithmetic operations need to be performed at full-length

 

Exact value of the square root is obtained

Additions and subtractions using non-redundant digit sets negatively impact the amount of required hardware

Proposed algorithm

Quadrature-based square rooting

Simple

Contains division operation

 
 

Single iteration

  
 

High accuracy can be achieved using a small-sized lookup table