Resumen
This paper presents a technique for designing linear and quadratic interpolators for function approximation using truncated multipliers and squarers. Initial coefficient values are found using a Chebyshev-series approximation and then adjusted through exhaustive simulation to minimize the maximum absolute error of the interpolator output. This technique is suitable for any function and any precision up to 24 bits (IEEE single precision). Designs for linear and quadratic interpolators that implement the 1/x" role="presentation">1/??1/x
1
/
x
, 1/x" role="presentation">1/??--v1/x
1
/
x
, log2(1+2x)" role="presentation">log2(1+2??)log2(1+2x)
log
2
(
1
+
2
x
)
, log2(x)" role="presentation">log2(??)log2(x)
log
2
(
x
)
and 2x" role="presentation">2??2x
2
x
functions are presented and analyzed as examples. Results show that a proposed 24-bit interpolator computing 1/x" role="presentation">1/??1/x
1
/
x
with a design specification of ±1" role="presentation">±1±1
±
1
unit in the last place of the product (ulp) error uses 16.4% less area and 15.3% less power than a comparable standard interpolator with the same error specification. Sixteen-bit linear interpolators for other functions are shown to use up to 17.3% less area and 12.1% less power, and 16-bit quadratic interpolators are shown to use up to 25.8% less area and 24.7% less power.