SlideShare a Scribd company logo
Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04
www.ijera.com 1 | P a g e
CORDIC Algorithm for WLAN
Mr. Gadekar S. R.
(Department of Electronics Engineering, Pune University, Maharashtra)
ABSTRACT
This research aims to implement CORDIC Algorithm for WLAN. The design is coded using VHDL language
and for the hardware implementation XILINX Spartan-3FPGA is used. VHDL implementation is based on
results obtained from Xilinx ISE simulation.
Keywords: CORDIC, FPGA, implementation, WLAN.
I. INTRODUCTION
CORDIC (for COordinate Rotation DIgital
Computer), also called as the digit-by-digit method
and Volder's algorithm. It is a simple and efficient
algorithm to calculate hyperbolic and trigonometric
functions. It is commonly used when no hardware
multiplier is available (e.g., simple microcontrollers
and FPGAs) as the only operations it requires are
addition, subtraction, bit shift and table lookup.
The CORDIC Algorithm calculates the angle of
received vector in a signal constellation by means of
arctangent function and it is used in receivers to find
frequency offset and phase shift.
II. Wireless LAN
A wireless LAN (WLAN) is a wireless computer
network that connects two or more devices using a
wireless distribution method within a limited area
such as a home, school, computer labs, or office
building. By using this WLAN users can move
around within a local coverage area and still be
connected to the network, and can provide a
connection to the wider Internet. Most modern
WLANs are based on IEEE 802.11 standards,
marketed under the Wi-Fi.
III. CORDIC ALGORITHM
3.1 Mode of operation
CORDIC rotator works in two modes: Rotation
& Vectoring [3].
3.1.1 Rotation mode
This explanation shows how to use CORDIC in
rotation mode to calculate the sine and cosine of an
angle and assumes the desired angle is given in
radians and represented in a fixed point format. To
determine the sine or cosine for an angle, the y or x
coordinate of a point on the unit circle corresponding
to the desired angle must be found.
Using CORDIC, we would start with the
vector :
Fig. 1 An example for CORDIC algorithm
In the first iteration, this vector is rotated 45°
counter clockwise to get the vector . Successive
iterations rotate the vector in one or the other
direction by size-decreasing steps, until the desired
angle has been achieved. Step i size is arctan(1/(2i−1
))
for i = 1, 2, 3, ….
More formally, every iteration calculates a rotation,
which is performed by multiplying the vector
with the rotation matrix .
=
The rotation matrix is given by:
=
Using the following two trigonometric identities:
the rotation matrix becomes:
RESEARCH ARTICLE OPEN ACCESS
Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04
www.ijera.com 2 | P a g e
The expression for the rotated vector then
becomes:
Where and yi-1 are the components of .
Restricting the angles yi so that takes on the
values +/- , the multiplication with the tangent can
be replaced by a division by a power of two, which is
efficiently done in digital computer hardware using a
bit shift. The expression then becomes:
=
Where
and can have the values of −1 or 1, and is used to
determine the direction of the rotation; if the angle
is positive then is +1, otherwise it is −1.
can be ignored in the iterative process and then
applied afterward with a scaling factor:
K (n) = =
which is calculated in advance and stored in a table,
or as a single constant if the number of iterations is
fixed. This correction could also be made in advance,
by scaling and hence saving a multiplication.
Additionally it can be noted that:
K=
to allow further reduction of the algorithm's
complexity.
After a sufficient number of iterations, the
vector's angle will be close to the wanted angle β. For
most ordinary purposes, 40 iterations (n = 40) is
sufficient to obtain the correct result to the 10th
decimal place.
The only task left is to determine if the rotation
should be clockwise or counters clockwise at each
iteration (choosing the value of σ). This is done by
keeping track of how much the angle was rotated at
each iteration and subtracting that from the wanted
angle; then in order to get closer to the wanted angle
β, if is positive, the rotation is clockwise,
otherwise it is negative and the rotation is counter
clockwise.
= - . = arctan
The values of must also be recomputed and stored.
But for small angles,
Arctan ( ) =
In fixed point representation, reducing table size.
As can be seen in the illustration above, the sine
of the angle β is the y coordinates of the final
vector , while the x coordinate is the cosine value.
After a sufficient number of iterations, the
vector's angle will be close to the wanted angle β. For
most ordinary purposes, 40 iterations (n = 40) is
sufficient to obtain the correct result to the 10th
decimal place.
IV. SCHEME OF IMPLEMENTATION
Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04
www.ijera.com 3 | P a g e
Fig. 2 Block diagram for CORDIC Algorithm.
V. RESULT
VI. CONCLUSION
This paper shows that CORDIC Algorithm is
useful for use in WLAN technology. By the
regularity, the CORDIC based architecture is very
suitable for implementation with pipelined VLSI
array processors.
This paper represents method to calculate
angle in wireless LAN receiver block by using
CORDIC Algorithm.
Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04
www.ijera.com 4 | P a g e
REFERENCES
[1] Ahmed H. M., Delosme J. M., Morf M.,
Highly concurrent structure for matrix
arithmetic and signal processing, IEEE
comput. Mag. Vol. 15, 1982, pp. 65-82.
[2] Duprat J., and Mullar J. M., The CORDIC
Algorithm: New results for VLSI
implementation, IEEE Transactions on
Computers, Vol. 42 pp. 168-178, 1993.
[3] Valls, J., Kuhalmann, M., Parhi K.K.,
Efficient mapping of CORDIC Algorithms
for FPGA Based computers, 1998.
[4] Terry J., Heiskala J., OFDM Wireless
LANs: A Theoretical and practical Guide,
Indianapolis, Ind.: Sams, 2002.
[5] Alfke P., Efficient shift registers, LFSR
counters and long pseudo random
sequence generator, Xilinx application
note, August, 1995.
[6] Andraka R. J. Building a high
performance Bit serial processor in an
FPGA, proceeding of design supercon 96,
Jan 1996, pp 5.1-5.21.
[7] Despain A. M., Fourier Transform
Computations using CORDIC Iteration,
IEEE transactions on computers Vol. 23,
1974, pp.93-1001.
[8] Deprettere E. Dewilde P., and Udo R.,
Pipelined CORIC Architecture for fast
VLSI filtering and array processing,
proc.ICASSP’84, 1984, pp. 41.A.6.1-
41.A.6.4.
[9] Nee R., Prasad R., OFDM for Wireless
Multimedia Communications, Boston:
Artech house, 2000.
[10] Walther J. S., A unified algorithm for
elementary functions, Spring Joint
computer Conf 1971, proc., pp.379-385.
[11] Volder J., Binary computation algorithm
for coordinate rotation and function
generation, Convair Report IAR-1 148
Aeroelectrics Group June 1956.

More Related Content

PDF
Ax03303120316
PDF
Ax4103307314
DOCX
Curve Fitting - Linear Algebra
PDF
A verilog based implementation of transcendental function calculator using co...
PDF
IRJET - Radius Approach for Inverse Kinematics of 4-R Manipulator in Spatial ...
PDF
Fm33980983
PPTX
Fuzzy logic using matlab
PDF
Design and Implementation of Fixed Point Arithmetic Unit
Ax03303120316
Ax4103307314
Curve Fitting - Linear Algebra
A verilog based implementation of transcendental function calculator using co...
IRJET - Radius Approach for Inverse Kinematics of 4-R Manipulator in Spatial ...
Fm33980983
Fuzzy logic using matlab
Design and Implementation of Fixed Point Arithmetic Unit

What's hot (20)

PDF
A New Method For Solving Kinematics Model Of An RA-02
DOCX
KL Algorithm
PPT
Vector
PDF
Ir3415981603
PPTX
Homogeneous representation in geometric transformation
PDF
Comparative Study of Speed Characteristics of DC Motor with and without Contr...
PPTX
Unit 1. day 3
PDF
IRJET - To Study Analysis and Design of Multi-Storey Building using STAAD-Pro...
PDF
Analytic parametric equations of log-aesthetic curves in terms of incomplete ...
PDF
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
PPTX
Dijkstra s algorithm
DOCX
Dot product
PDF
2 article azojete vol 9 9 16
PDF
H03403053059
PPTX
ANALYSIS OF CONTINUOUS BEAM USING STIFFNESS METHOD
PDF
Analysis of sway type portal frame using direct stiffness method
PPT
3 D Analyst
PPTX
Linear Algebra Applications
PDF
New Algorithm to calculate kinetic parameters
PPT
Graceful labelings
A New Method For Solving Kinematics Model Of An RA-02
KL Algorithm
Vector
Ir3415981603
Homogeneous representation in geometric transformation
Comparative Study of Speed Characteristics of DC Motor with and without Contr...
Unit 1. day 3
IRJET - To Study Analysis and Design of Multi-Storey Building using STAAD-Pro...
Analytic parametric equations of log-aesthetic curves in terms of incomplete ...
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
Dijkstra s algorithm
Dot product
2 article azojete vol 9 9 16
H03403053059
ANALYSIS OF CONTINUOUS BEAM USING STIFFNESS METHOD
Analysis of sway type portal frame using direct stiffness method
3 D Analyst
Linear Algebra Applications
New Algorithm to calculate kinetic parameters
Graceful labelings
Ad

Viewers also liked (20)

PPTX
VHDL and Cordic Algorithim
PDF
RSA Based Secured Image Steganography Using DWT Approach
PDF
Research on Iris Region Localization Algorithms
PDF
E045032833
PDF
Two-temperature elasto-thermo diffusive response inside a spherical shell wit...
PDF
The Development of Financial Information System and Business Intelligence Usi...
PDF
A Survey of Software Reusability
PDF
Acoustic Analysis of Commercially Available Timber Species in Nigeria
PDF
Stochastic Modeling Neutral Evolution by an Iambp of Cortisol Secretion of Br...
PDF
New Approach of Preprocessing For Numeral Recognition
PDF
A046050106
PDF
G42044752
PDF
Realizing business value with iam
PDF
A42060105
PDF
Reviewing the factors of the Renewable Energy systems for Improving the Energ...
PDF
C046061219
PDF
Properties of ‘Emu’ Feather Fiber Composites
PDF
Dye Sysentized Solar Cell (Dyssc)
PDF
Data Collection via Synthetic Aperture Radiometry towards Global System
PDF
J42046469
VHDL and Cordic Algorithim
RSA Based Secured Image Steganography Using DWT Approach
Research on Iris Region Localization Algorithms
E045032833
Two-temperature elasto-thermo diffusive response inside a spherical shell wit...
The Development of Financial Information System and Business Intelligence Usi...
A Survey of Software Reusability
Acoustic Analysis of Commercially Available Timber Species in Nigeria
Stochastic Modeling Neutral Evolution by an Iambp of Cortisol Secretion of Br...
New Approach of Preprocessing For Numeral Recognition
A046050106
G42044752
Realizing business value with iam
A42060105
Reviewing the factors of the Renewable Energy systems for Improving the Energ...
C046061219
Properties of ‘Emu’ Feather Fiber Composites
Dye Sysentized Solar Cell (Dyssc)
Data Collection via Synthetic Aperture Radiometry towards Global System
J42046469
Ad

Similar to CORDIC Algorithm for WLAN (20)

PDF
P0440499104
PDF
HARDWARE EFFICIENT SCALING FREE VECTORING AND ROTATIONAL CORDIC FOR DSP APPLI...
PDF
FPGA Implementation of CORDIC Algorithm Architecture
PDF
Fm33980983
PDF
High speed cordic design for fixed angle of rotation
PDF
A CORDIC based QR Decomposition Technique for MIMO Detection
PDF
Cw34597599
PDF
Cordic Code
PDF
Comparative analysis of multi stage cordic using micro rotation technique
PDF
Reconfigurable Design of Rectangular to Polar Converter using Linear Convergence
PDF
VLSI Implementation of CORDIC Based Robot Navigation Processor
PDF
Implementation performance analysis of cordic
PDF
International Journal of Engineering Research and Development (IJERD)
PDF
Area Time Efficient Scaling Free Rotation Mode Cordic Using Circular Trajectory
PDF
FPGA implementation of universal modulator using CORDIC algorithm for commun...
PDF
Comparative analysis of multi stage cordic using micro rotation techniq
PDF
Comparative analysis of multi stage cordic using micro rotation techniq
PDF
Comparative analysis of multi stage cordic using micro rotation techniq
PDF
Dk32696699
PDF
FPGA Implementation of Pipelined CORDIC Sine Cosine Digital Wave Generator
P0440499104
HARDWARE EFFICIENT SCALING FREE VECTORING AND ROTATIONAL CORDIC FOR DSP APPLI...
FPGA Implementation of CORDIC Algorithm Architecture
Fm33980983
High speed cordic design for fixed angle of rotation
A CORDIC based QR Decomposition Technique for MIMO Detection
Cw34597599
Cordic Code
Comparative analysis of multi stage cordic using micro rotation technique
Reconfigurable Design of Rectangular to Polar Converter using Linear Convergence
VLSI Implementation of CORDIC Based Robot Navigation Processor
Implementation performance analysis of cordic
International Journal of Engineering Research and Development (IJERD)
Area Time Efficient Scaling Free Rotation Mode Cordic Using Circular Trajectory
FPGA implementation of universal modulator using CORDIC algorithm for commun...
Comparative analysis of multi stage cordic using micro rotation techniq
Comparative analysis of multi stage cordic using micro rotation techniq
Comparative analysis of multi stage cordic using micro rotation techniq
Dk32696699
FPGA Implementation of Pipelined CORDIC Sine Cosine Digital Wave Generator

Recently uploaded (20)

PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PDF
composite construction of structures.pdf
PDF
Well-logging-methods_new................
PPTX
Construction Project Organization Group 2.pptx
PPTX
Current and future trends in Computer Vision.pptx
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
Sustainable Sites - Green Building Construction
PPTX
CH1 Production IntroductoryConcepts.pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PDF
PPT on Performance Review to get promotions
PPTX
Internet of Things (IOT) - A guide to understanding
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
composite construction of structures.pdf
Well-logging-methods_new................
Construction Project Organization Group 2.pptx
Current and future trends in Computer Vision.pptx
R24 SURVEYING LAB MANUAL for civil enggi
III.4.1.2_The_Space_Environment.p pdffdf
Automation-in-Manufacturing-Chapter-Introduction.pdf
CYBER-CRIMES AND SECURITY A guide to understanding
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Safety Seminar civil to be ensured for safe working.
Sustainable Sites - Green Building Construction
CH1 Production IntroductoryConcepts.pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
UNIT-1 - COAL BASED THERMAL POWER PLANTS
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPT on Performance Review to get promotions
Internet of Things (IOT) - A guide to understanding

CORDIC Algorithm for WLAN

  • 1. Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04 www.ijera.com 1 | P a g e CORDIC Algorithm for WLAN Mr. Gadekar S. R. (Department of Electronics Engineering, Pune University, Maharashtra) ABSTRACT This research aims to implement CORDIC Algorithm for WLAN. The design is coded using VHDL language and for the hardware implementation XILINX Spartan-3FPGA is used. VHDL implementation is based on results obtained from Xilinx ISE simulation. Keywords: CORDIC, FPGA, implementation, WLAN. I. INTRODUCTION CORDIC (for COordinate Rotation DIgital Computer), also called as the digit-by-digit method and Volder's algorithm. It is a simple and efficient algorithm to calculate hyperbolic and trigonometric functions. It is commonly used when no hardware multiplier is available (e.g., simple microcontrollers and FPGAs) as the only operations it requires are addition, subtraction, bit shift and table lookup. The CORDIC Algorithm calculates the angle of received vector in a signal constellation by means of arctangent function and it is used in receivers to find frequency offset and phase shift. II. Wireless LAN A wireless LAN (WLAN) is a wireless computer network that connects two or more devices using a wireless distribution method within a limited area such as a home, school, computer labs, or office building. By using this WLAN users can move around within a local coverage area and still be connected to the network, and can provide a connection to the wider Internet. Most modern WLANs are based on IEEE 802.11 standards, marketed under the Wi-Fi. III. CORDIC ALGORITHM 3.1 Mode of operation CORDIC rotator works in two modes: Rotation & Vectoring [3]. 3.1.1 Rotation mode This explanation shows how to use CORDIC in rotation mode to calculate the sine and cosine of an angle and assumes the desired angle is given in radians and represented in a fixed point format. To determine the sine or cosine for an angle, the y or x coordinate of a point on the unit circle corresponding to the desired angle must be found. Using CORDIC, we would start with the vector : Fig. 1 An example for CORDIC algorithm In the first iteration, this vector is rotated 45° counter clockwise to get the vector . Successive iterations rotate the vector in one or the other direction by size-decreasing steps, until the desired angle has been achieved. Step i size is arctan(1/(2i−1 )) for i = 1, 2, 3, …. More formally, every iteration calculates a rotation, which is performed by multiplying the vector with the rotation matrix . = The rotation matrix is given by: = Using the following two trigonometric identities: the rotation matrix becomes: RESEARCH ARTICLE OPEN ACCESS
  • 2. Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04 www.ijera.com 2 | P a g e The expression for the rotated vector then becomes: Where and yi-1 are the components of . Restricting the angles yi so that takes on the values +/- , the multiplication with the tangent can be replaced by a division by a power of two, which is efficiently done in digital computer hardware using a bit shift. The expression then becomes: = Where and can have the values of −1 or 1, and is used to determine the direction of the rotation; if the angle is positive then is +1, otherwise it is −1. can be ignored in the iterative process and then applied afterward with a scaling factor: K (n) = = which is calculated in advance and stored in a table, or as a single constant if the number of iterations is fixed. This correction could also be made in advance, by scaling and hence saving a multiplication. Additionally it can be noted that: K= to allow further reduction of the algorithm's complexity. After a sufficient number of iterations, the vector's angle will be close to the wanted angle β. For most ordinary purposes, 40 iterations (n = 40) is sufficient to obtain the correct result to the 10th decimal place. The only task left is to determine if the rotation should be clockwise or counters clockwise at each iteration (choosing the value of σ). This is done by keeping track of how much the angle was rotated at each iteration and subtracting that from the wanted angle; then in order to get closer to the wanted angle β, if is positive, the rotation is clockwise, otherwise it is negative and the rotation is counter clockwise. = - . = arctan The values of must also be recomputed and stored. But for small angles, Arctan ( ) = In fixed point representation, reducing table size. As can be seen in the illustration above, the sine of the angle β is the y coordinates of the final vector , while the x coordinate is the cosine value. After a sufficient number of iterations, the vector's angle will be close to the wanted angle β. For most ordinary purposes, 40 iterations (n = 40) is sufficient to obtain the correct result to the 10th decimal place. IV. SCHEME OF IMPLEMENTATION
  • 3. Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04 www.ijera.com 3 | P a g e Fig. 2 Block diagram for CORDIC Algorithm. V. RESULT VI. CONCLUSION This paper shows that CORDIC Algorithm is useful for use in WLAN technology. By the regularity, the CORDIC based architecture is very suitable for implementation with pipelined VLSI array processors. This paper represents method to calculate angle in wireless LAN receiver block by using CORDIC Algorithm.
  • 4. Mr. Gadekar S. R Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 5, Issue 8, (Part - 2) August 2015, pp.01-04 www.ijera.com 4 | P a g e REFERENCES [1] Ahmed H. M., Delosme J. M., Morf M., Highly concurrent structure for matrix arithmetic and signal processing, IEEE comput. Mag. Vol. 15, 1982, pp. 65-82. [2] Duprat J., and Mullar J. M., The CORDIC Algorithm: New results for VLSI implementation, IEEE Transactions on Computers, Vol. 42 pp. 168-178, 1993. [3] Valls, J., Kuhalmann, M., Parhi K.K., Efficient mapping of CORDIC Algorithms for FPGA Based computers, 1998. [4] Terry J., Heiskala J., OFDM Wireless LANs: A Theoretical and practical Guide, Indianapolis, Ind.: Sams, 2002. [5] Alfke P., Efficient shift registers, LFSR counters and long pseudo random sequence generator, Xilinx application note, August, 1995. [6] Andraka R. J. Building a high performance Bit serial processor in an FPGA, proceeding of design supercon 96, Jan 1996, pp 5.1-5.21. [7] Despain A. M., Fourier Transform Computations using CORDIC Iteration, IEEE transactions on computers Vol. 23, 1974, pp.93-1001. [8] Deprettere E. Dewilde P., and Udo R., Pipelined CORIC Architecture for fast VLSI filtering and array processing, proc.ICASSP’84, 1984, pp. 41.A.6.1- 41.A.6.4. [9] Nee R., Prasad R., OFDM for Wireless Multimedia Communications, Boston: Artech house, 2000. [10] Walther J. S., A unified algorithm for elementary functions, Spring Joint computer Conf 1971, proc., pp.379-385. [11] Volder J., Binary computation algorithm for coordinate rotation and function generation, Convair Report IAR-1 148 Aeroelectrics Group June 1956.