Trignometric Function Generator Implementation on FPGA
Loading...
Files
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
CORDIC is an acronym for COrdinate Rotation Digital Computer. It is a class of shiftadd
algorithms for rotating vectors in a plane, which is usually used for the calculation of
trigonometric functions, multiplication, division and conversion between binary and
mixed radix number systems of DSP applications, such as Fourier Transform. The Jack
E. Volder's CORDIC algorithm is derived from the general equations for vector rotation.
A new algorithm was presented by R. E. Fowkes[23] which significantly reduces the
minimum amount of logic required to calculate sine, cosine, and square root. It is derived
from an old method for computing certain inverse functions which was once considered
for use in software, but then abandoned because of efficiency concerns. However, when
reversed and combined with a restoring square root algorithm, a unique new design
emerges which performs trigonometric calculations without the use of pre-stored
constants or any internal operation more complex than binary subtraction.
The algorithm has been implemented in FPGA using VHDL and is found to be accurate
with an error of -2.9% to 2% for square root, an error of -1.4% to .19% for cosine and an
error of -6.5% to 1.9% for sine. The implementation of this algorithm requires less
hardware than the comparable CORDIC algorithm.
This thesis consists of introduction to both the algorithms. The description of the
algorithm and finally a comparative study of the algorithm is been presented in this
thesis. The results constitute simulation of VHDL codes of different modules and their
synthesis in Xilinx Foundation Series ISE-6.
