A Novel Implementation of CORDIC Algorithm Based on Dynamic Microrotation Generation

Aidin Shiri · 2021

Mathematical functions are generally classified into two groups. Functions such as logarithmic or trigonometric functions are called elementary functions, and functions such as sin(1/x), which are a combination of two or more elementary functions, are called combinatorial functions. Mathematical functions have many applications in digital devices, such as digital signal processing, image processing, and telecommunication systems. Although software computation of mathematical functions in digital systems has flexibility and convenience advantage, sometimes it does not keep up with the real-time requirements of modern digital systems. To solve this problem, various algorithms have been proposed to implement mathematical functions on hardware. Hardware implementations tend to have higher throughput compared to software implementations, but usually, they suffer in terms of accuracy. In this paper, we propose a novel method for calculating the elementary trigonometric functions using the CORDIC algorithm based on the dynamic microrotation generation technique. We implement our design on Spartan-6 FPGA. Results show our method outperforms similar works in terms of throughput and power consumption while exploiting less hardware.

Read the paper · More papers on PaperTik