Escolar Documentos
Profissional Documentos
Cultura Documentos
Department of Electrical & Electronics Engineering, J.P. Institute of Engineering & Technology, Meerut, UP, India
2
Department of Electrical & Electronics Engineering, Ideal institute of Technology, Ghaziabad, UP, India
Abstract
In this paper, designing of CORDIC Processor in Verilog to determine the sine and cosine of a given argument, and extending this
code to determine the Cartesian co-ordinates of a complex number represented in Eulers form. The inputs given are the Cartesian
vector and the input angle in 17- bit signed number representation. The outputs obtained are sine and cosine of the input angle. To
determine the Cartesian co-ordinates of the complex number, the magnitude of the complex number is given as input along with the
input angle. The language used for the designing of CORDIC Processor is Verilog. The software used for the simulation is Xilinx ISE
Simulator.
Keywords: CORDIC Processor, Verilog, Cartesian co-ordinates, and Cartesian co-ordinates, Simulator etc.
-----------------------------------------------------------------------***----------------------------------------------------------------------1. INTRODUCTION
CORDIC stands for COordinate Rotation DIgital Computer.
The key concept of CORDIC arithmetic is based on the simple
and ancient principles of two-dimensional geometry. But the
iterative formulation of a computational algorithm for its
implementation was first described in 1959 by Jack E. Volder
[1], [2] for the computation of trigonometric functions,
multiplication and division. Not only a wide variety of
applications of CORDIC have been suggested over the time,
but also a lot of progress has taken place in the area of
algorithm design and development of architectures for high
performance and low-cost hardware solutions [3][12]. Not
only a wide variety of applications of CORDIC have emerged
in the last 50 years, but also a lot of progress has been made in
the area of algorithm design and development of architectures
for high-performance and low-cost hardware solutions of
those applications. CORDIC-based computing received
increased attention in 1971, when John Walther [3], [4]
showed that, by varying a few simple parameters, it could be
used as a single algorithm for unified implementation of a
wide range of elementary transcendental functions involving
logarithms, exponentials, and square roots along with those
suggested by Volder [1]. During the same time, Cochran [5]
benchmarked various algorithms, and showed that CORDIC
technique is a better choice for scientific calculator
applications. The popularity of CORDIC was very much
enhanced thereafter primarily due to its potential for efficient
and low-cost implementation of a large class of applications
which include: the generation of trigonometric, logarithmic
and transcendental elementary functions; complex number
multiplication, eigenvalue computation, matrix inversion,
solution of linear systems and singular value decomposition
(SVD) for signal processing, image processing, and general
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
342
2.1.2 Software
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
343
Rotation Mode
[Start at (1, 0) Rotate by
(cos, sin)]
(a)
Vector mode
[Start at (1, y) Rotate until y = 0
The rotation is tan1y]
(b)
Rearrange as
2.3.2 Verilog
The ith iteration results in
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
344
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
345
y_cor = r*sin
where r = magnitude of the complex number & = angle
Table -1: Representation of angles in 17-bit signed decimal numbers
Angle (degrees)
Angle(radians,17'd)
571
1143
1715
2287
2859
3431
4003
Angle(degrees)
10
11
12
13
14
15
Angle(radians, 17'd)
4575
5147
5719
6291
6862
7434
8006
8578
Angle(degrees)
16
17
18
19
20
21
22
23
Angle(radians, 17'd)
9150
9722
10294
10866
11438
12010
12582
13153
Angle(degrees)
24
25
26
27
28
29
30
31
Angle(radians, 17'd)
13725
14297
14869
15441
16013
16585
17157
17729
Angle(degrees)
32
33
34
35
36
37
38
39
Angle(radians, 17'd)
18301
18873
19444
20016
20588
21160
21732
22304
Angle(degrees)
40
41
42
43
44
45
46
47
Angle(radians, 17'd)
22876
23448
24020
24592
25164
25735
26307
26879
Angle(degrees)
48
49
50
51
52
53
54
55
Angle(radians, 17'd)
27451
28023
28595
29167
29739
30311
30883
31455
Angle(degrees)
56
57
58
59
60
61
62
63
Angle(radians, 17'd)
32026
32598
33170
33742
34314
34886
35458
36030
Angle(degrees)
64
65
66
67
68
69
70
71
Angle(radians, 17'd)
36602
37174
37746
38317
38889
39461
40033
40605
Angle(degrees)
72
73
74
75
76
77
78
79
Angle(radians, 17'd)
41177
41749
42321
42893
43465
44037
44608
45180
Angle(degrees)
80
81
82
83
84
85
86
87
Angle(radians, 17'd)
45752
46324
46896
47468
48040
48612
49184
49756
Angle(degrees)
88
89
90
Angle(radians, 17'd)
50328
50899
51471
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
346
Simulation results:
x_i = 0.603, y_i = 0
theta_i = 60, r = 5
x_o = 17d15379 = 0.4963
y_o = 17d28378 = 0.8660
theta_o = -1
x_cor = 2, y_cor = 4
17d25735 450
x_i:
17d19896 0.603
y_i:
r:
10 , 5
Theoretical results:
x_i = 0.603, y_i = 0
theta_i = 60, r = 5
x_o = 17d16384 = 0.5000
y_o = 17d28377 = 0.8659
theta_o = 0
x_cor = 2.50, y_cor = 4.33
Theoretical results:
x_i = 0.603,
theta_i = 45, r = 5
x_o = 17d23170 = 0.7071
y_o = 17d23170 = 0.7071
theta_o = 0
x_cor = 3.54, y_cor = 3.54
Fig.-9: Diagram showing inputs and ouputs
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
347
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
Fig.-11: Synthesis Report
5. CONCLUSIONS
This paper presents the designing of CORDIC processor in
VERILOG using XILINX ISE simulator. The output of the
code, designed for the CORDIC processor in Rotation mode,
was obtained using different values of the magnitude(r) of the
vector and the input angle (theta_i). The outputs were found to
be in complete agreement with the theoretical results. The
RTL Schematic and the Synthesis Report confirmed that there
were no errors in the designing of the code. Hence, the code is
found to be correct for any positive value of r and
00theta_i900. XILINX ISE simulator is useful tool for
designing of various efficient CORDIC processors with
different configurations and can further extend with latest
advance technology.
REFERENCES
[1]
[2]
[3]
CORDIC,
http://en.wikipedia.org/wiki/CORDIC,
accessed on March 2014.
J. E. Volder, "The Birth of CORDIC", J. VLSI Signal
Processing, Vol. 25, No. 101 , 2000, also available on
http://dx.doi.org/10.1023/A:1008110704586, accessed
on March 2014.
Schmid Hermann, Decimal computation, New York,
Wiley, 1974
[13]
[14]
[15]
[16]
[17]
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
348
[18]
[19]
[20]
[21]
[22]
[23]
[24]
[25]
BIOGRAPHIES
Swati Sharma received B.E. degree in
Instrumentation Engineering from Sant
Longowal Institute of Engineering and
Technology Longowal Punjab in 2009. He is
currently pursuing Masters of Technology in
VLSI from Mewar University Mewar, India.
Her areas of interest are VLSI and Digital Electronics.
M. Bansal is currently working as an
Assitant Professor in Ideal Institute of
Technology Ghaziabad, UP. He has
completed his doctoral research work in
the area of renewable energy systems from
Alternate Hydro Energy Center, Indian
Institute of Technology Roorkee in 2014. Earlier, He did his
masters in Energy and Environmental Management from
Center for Energy Studies, Indian Institute of Technology
Delhi. He completed his graduation in Electrical Engineering
from Aligarh Muslim University, Aligarh. His research
interests include Renewable Energy Systems, Rural
Electricafication, Emebeded System and VLSI.
__________________________________________________________________________________________________
Volume: 03 Issue: 05 | May-2014, Available @ http://www.ijret.org
349