The Community for Technology Leaders
Green Image
Issue No. 03 - March (2011 vol. 60)
ISSN: 0018-9340
pp: 418-432
Davide De Caro , University of Napoli, Napoli, Italy
Nicola Petra , University of Napoli, Napoli, Italy
Antonio Giuseppe Maria Strollo , University of Napoli, Napoli, Italy
A novel technique for designing piecewise-polynomial interpolators for hardware implementation of elementary functions is investigated in this paper. In the proposed approach, the interval where the function is approximated is subdivided in equal length segments and two adjacent segments are grouped in a segment pair. Suitable constraints are then imposed between the coefficients of the two interpolating polynomials in each segment pair. This allows reducing the total number of stored coefficients. It is found that the increase in the approximation error due to constraints between polynomial coefficients can easily be overcome by increasing the fractional bits of the coefficients. Overall, compared with standard unconstrained piecewise-polynomial approximation having the same accuracy, the proposed method results in a considerable advantage in terms of the size of the lookup table needed to store polynomial coefficients. The calculus of the coefficients of constrained polynomials and the optimization of coefficients bit width is also investigated in this paper. Results for several elementary functions and target precision ranging from 12 to 42 bits are presented. The paper also presents VLSI implementation results, targeting a 90 nm CMOS technology, and using both direct and Horner architectures for constrained degree-1, degree-2, and degree-3 approximations.
Elementary functions, min-max approximation, polynomial approximation, computer arithmetic, VLSI systems.
Davide De Caro, Nicola Petra, Antonio Giuseppe Maria Strollo, "Elementary Functions Hardware Implementation Using Constrained Piecewise-Polynomial Approximations", IEEE Transactions on Computers, vol. 60, no. , pp. 418-432, March 2011, doi:10.1109/TC.2010.127
97 ms
(Ver 3.1 (10032016))