Evaluating Sinusoidal Functions by a Low Complexity Cubic Spline Interpolator with Error Optimization

We present a novel scheme to evaluate sinusoidal functions with low complexity and high precision using cubic spline interpolation. To this end, two different approaches are proposed to find the interpolating polynomial of sin(x) within the range [- π , π]. The first one deals with only a single data point while the other with two to keep the realization cost as low as possible. An approximation error optimization technique for cubic spline interpolation is introduced next and is shown to increase the interpolator accuracy without increasing complexity of the associated hardware. The architectures for the proposed approaches are also developed, which exhibit flexibility of implementation with low power requirement.





References:
[1] J. E. Volder, "The CORDIC Trigonometric Computing Technique", IRE
Trans. Elect. Comput., vol. EC-8, pp. 330-334, Sep. 1959.
[2] J. C. Bajard, S. Kla and J. M. Muller, "BKM: A New Hardware
Algorithm for Complex Elementary Functions," IEEE Trans. Comput.,
vol. 43, no. 8, pp. 955-963, Aug. 1994.
[3] P. J. Davis, Interpolation and Approximation. New York: Dover Publications,
1990.
[4] J. A. Pineiro and M. D. Ercegovac, "High-Speed Double-Precision
Computation of Reciprocal, Division, Square Root, and Inverse Square
Root," IEEE Trans. Comput., vol. 51, no. 12, pp. 1377-1388, 2002.
[5] I. Koren and O. Zinaty, "Evaluating Elementary Functions in a Numerical
Coprocessor Based on Rational Approximations", IEEE Trans.
Comput., vol. 39, pp. 1030-1037, Aug. 1990.
[6] P. T. P. Tang, "Table-lookup Algorithms for Elementary Functions and
their Error Analysis", in Proc. 10th Symposium on Computer Arithmetic,
1991, pp. 232-236.
[7] M. J. Schulte and J. E. Stine, "Approximating Elementary Functions
with Symmetric Bipartite Tables," IEEE Trans. Comput., vol. 48, no. 8,
pp. 842-847, Aug. 1999.
[8] M. D. Ercegovac, T. Lang, J. M. Muller and A. Tisserand, "Reciprocation,
Square Root, Inverse Square Root, and Some Elementary Functions
using Small Multipliers," IEEE Trans Comput., vol. 49, no. 7, pp. 628-
637, July 2000.
[9] J. A. Pineiro, S. F. Oberman, J. M. Muller and J. D. Bruguera, "High-
Speed Function Approximation using a Minimax Quadratic Interpolator,"
IEEE Trans. Comput., vol. 54, no. 3, pp. 304-318, March 2005.
[10] V. Paliouras, K. Konstantina and S. Thanos, "A Floating-point Processor
for Fast and Accurate Sine/Cosine Evaluation", IEEE Trans. Circuit.
Syst. II : Analaog and Digital Signal Processing, vol. 47, no. 5, 1991,
pp. 441-451, May 2000.
[11] D. M. Lewis, "Interleaved Memory Function Interpolators with Application
to an Accurate LNS Arithmetic Unit", IEEE Trans. Comput., vol.
43, pp. 974-982, Aug. 1994.
[12] V. Kantabutra, "On Hardware for Computing Exponential and Trigonometric
Functions", IEEE Trans. Comput., vol. 45, no. 3, pp. 328-339,
Mar. 1996.
[13] H. Ting, B. Liu and S. Chang, "An On-Chip Concurrent High Frequency
Analog and Digital Sinusoidal Signal Generator", in Proc. IEEE Asia-
Pacific Conference on Circuits and Systems, Tainan, Dec. 2004, pp.173-
176.
[14] K. E. Atkinson, An Introduction to Numerical Analysis. New York: John
Wiley & Sons, 1989.
[15] H. S. Dhillon and A. Mitra, "A Low Power Architecture of Digital
Sinusoid Generator using Cubic Spline Interpolation", IETE J. Edu.,
vol. 47, no. 3, pp. 129-136, July-Sept. 2006.
[16] I. Koren, Computer Arithmetic Algorithms. Englewood Cliffs, NJ:
Prentice-Hall, 1993.
[17] S. McKinley and M. Levine. Cubic Spline Interpolation (Online).
Available: http://www-lmpa.univ-littoral.fr/ bouhamid/dossier
fichiers/cubicspline.PDF.
[18] M. J. Schulte and J. E. Stine, "Approximating Elementary Functions
with Symmetric Bipartite Tables", IEEE Trans. Comput., vol. 48, no. 8,
pp. 842-847, August 1999.
[19] J. Cao, B. Wei and J. Cheng, "High-performance Architectures for
Elementary Function Generation", in Proc. 15th IEEE Symposium on
Computer Arithmetic, 2001, pp. 136-144.