Abstract

The computation of the sine and cosine functions is required in devices ranging from application-specific signal processors to general purpose floating-point units. Even in the latter case, the required functionality can be reduced to computing the sine and/or cosine of multiples of a constant angle. The latency of a sine/cosine generator can be reduced by using look-up tables. However, a direct implementation with look-up tables may be unfeasible if the input space is huge. In such a case, look-up tables with a number of entries lower than the size of the input space can be used indirectly. In previously published methods, the reduction in the number of table entries is obtained at the expense of increasing the table width and the computational cost. This paper introduces an alternative technique that makes it possible to reduce the size of the look-up tables as well as the required multiplications. The proposed technique can be used to implement sine/cosine generators of huge input space. It has been used to implement several twiddle factor generators in reconfigurable hardware and has enabled the number of look-up tables to be reduced by between 6 and 26% with respect to previous table-based techniques. Also, these implementations are about 50% faster than those based on Volder’s algorithm.

Highlights

  • The computation of sine and cosine functions is fundamental in a wide range of applications, including that of signal processing [1, 2]

  • Obvious examples are the computation of discrete cosine transform (DCT), discrete sine transform (DST), and their inverses (IDCT and Inverse discrete sine transform (IDST)) [3]

  • The focus is on the implementation of functional units that provide the sine and cosine of multiples of a constant angle φ, that is, sin(nφ) and cos(nφ), where n is an integer given as an input

Read more

Summary

Introduction

The computation of sine and cosine functions is fundamental in a wide range of applications, including that of signal processing [1, 2]. The focus is on the implementation of functional units that provide the sine and cosine of multiples of a constant angle φ, that is, sin(nφ) and cos(nφ), where n is an integer given as an input. Applications of such functional units include the following:. Implementing the sine and/or cosine functions in arithmetic units. Suppose an arithmetic unit must compute the sine and/or cosine of a number x using

Objectives
Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call