Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

CORDIC Algorithm: Rotations, Vectoring, and Implementations, Schemes and Mind Maps of Robotics

An in-depth exploration of the CORDIC (Coordinate Rotation Digital Computer) algorithm, focusing on its methodology, rotations, vectoring, conversions, and implementations. The CORDIC algorithm is a versatile technique used for the realization of rotations, calculation of trigonometric functions, and inverse trigonometric functions. It is particularly useful in digital signal processing, computer graphics, and other fields where efficient and accurate computation of angles is required.

What you will learn

  • What is the CORDIC algorithm and what are its main uses?
  • How does the CORDIC algorithm handle hyperbolic and linear coordinates?
  • How does the CORDIC algorithm perform rotations and vectoring?
  • What are the advantages and disadvantages of the word-serial and pipelined implementations of the CORDIC algorithm?
  • What are the convergence, precision, and range considerations for the CORDIC algorithm?

Typology: Schemes and Mind Maps

2021/2022

Uploaded on 09/12/2022

jennyfromtheblock
jennyfromtheblock 🇬🇧

2.3

(3)

225 documents

1 / 36

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
CORDIC ALGORITHM AND IMPLEMENTATIONS
CORDIC METHOD
ROTATION AND VECTORING MODE
CONVERGENCE, PRECISION AND RANGE
SCALING FACTOR AND COMPENSATION
IMPLEMENTATIONS: word-serial and pipelined
EXTENSION TO HYPERBOLIC AND LINEAR COORDINATES
UNIFIED DESCRIPTION
REDUNDANT ADDITION AND HIGH RADIX
Digital Arithmetic - Ercegovac/Lang 2003 11 CORDIC
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24

Partial preview of the text

Download CORDIC Algorithm: Rotations, Vectoring, and Implementations and more Schemes and Mind Maps Robotics in PDF only on Docsity!

CORDIC ALGORITHM AND IMPLEMENTATIONS

CORDIC METHOD

ROTATION AND VECTORING MODE

CONVERGENCE, PRECISION AND RANGE

SCALING FACTOR AND COMPENSATION

IMPLEMENTATIONS: word-serial and pipelined

EXTENSION TO HYPERBOLIC AND LINEAR COORDINATES

UNIFIED DESCRIPTION

REDUNDANT ADDITION AND HIGH RADIX

11 – CORDIC

MAIN USES

REALIZATION OF ROTATIONS

CALCULATION OF TRIGONOMETRIC FUNCTIONS

CALCULATION OF INVERSE TRIGONOMETRIC FUNCTION

tan

1

( a/b

CALCULATION OF

√ a 2 + b 2

, etc.

EXTENDED TO HYPERBOLIC FUNCTIONS

DIVISION AND MULTIPLICATION

CALCULATION OF SQRT, LOG, AND EXP

TEMSFOR LINEAR TRANSFORMS, DIGITAL FILTERS, AND SOLVING LIN. SYS-

MAIN APPLICATIONS: DSP, IMAGE PROCESSING, 3D GRAPHICS, ROBOTICS.

11 – CORDIC

y

x

(x

in

, y

in

)

(x

R

, y

R

)

Θ

β

M

in

Figure 11.1:

VECTOR ROTATION

11 – CORDIC

MICRO-ROTATIONS

USE ELEMENTARY ROTATION ANGLES

α

j

DECOMPOSE THE ANGLE

θ

:

θ

∑∞

j

α

j

SO THAT

ROT

θ

) =

∏∞

j

ROT

α

j )

THEN

ROT

α

j

) :

x

R

[

j

+ 1] =

x

R

[

j

] cos(

α j ) − y R [

j

] sin(

α

j

)

y

R

[

j

+ 1] =

x

R

[

j

] sin(

α

j ) +

y

R

[

j

] cos(

α

j )

11 – CORDIC

7

ROTATION-EXTENSION (cont.)

ROTATION-EXTENSION SCALES MODULUS

M

[

j

]

M

[

j

+1] =

K

[

j

] M

[

j

] =

cos

α

j

M

[

j

] = (1+

σ

j 2

2 − 2 j ) 1 / 2 M

[

j

] = (1+

− 2 j ) 1 / 2 M

[

j

]

TOTAL SCALING FACTOR

K

∏∞

j

− 2 j ) 1 / 2 ≈ 1.

CONSTANT, INDEPENDENT OF THE ANGLE

RECURRENCE FOR DECOMPOSITION/ACCUMULATION OF ANGLE:

z

[ j

+ 1] =

z

[ j ] − α j = z [

j

]

σ

j

tan

1 (

j )

11 – CORDIC

IMPLEMENTATION OF CORDIC ITERATION

CORDIC MICROROTATION

x

[

j

+ 1] =

x

[

j ] − σ j 2 − j y [ j ]

y

[

j

+ 1] =

y

[ j

] +

σ j 2 − j x [

j

]

z

[

j

+ 1] =

z

[ j

]

σ

j

tan

1 (

j )

11 – CORDIC

ROTATION MODE

ROTATE AN INITIAL VECTOR

x

in

, y

in

BY

θ

DECOMPOSE THE ANGLE

z

[ j

+ 1] =

z

[ j

]

σ

j

tan

1 (

j )

z

[0] =

θ

x

[0] =

x

in

y

[0] =

y

in

σ

j

  

if z

[

j

]

if z

[

j

]

PERFORM MICRO-ROTATIONS

FINAL VALUES

x f = K ( x

in

cos

θ

y

in

sin

θ

)

y f = K ( x

in

sin

θ

y

in

cos

θ

)

z

f

11 – CORDIC

y

x

(x

in

, y

in

)

Θ

(x

1 ,y

1 )

(x

2 ,y

2 )

(x

3 ,y

3 )

(x

f ,, y

f )

primitive angles

Figure 11.3:

Rotating a vector using microrotations.

11 – CORDIC

EXAMPLE 11.1 (cont.)

AFTER COMPENSATION OF SCALING FACTOR

K

COORDINATES ARE

x

[13]

/K

and

y

[13]

/K

ERRORS

12

11 – CORDIC

SPECIAL CASES

TO COMPUTE

cos

θ

AND

sin

θ

MAKE INITIAL CONDITION

x

[0] = 1

/K

AND

y

[0] = 0

IN GENERAL, FOR

a

AND

b

CONSTANTS

a

cos

θ

b

sin

θ

a

sin

θ

b

cos

θ

COMPUTED BY SETTING

x

[0] =

a/K

AND

y

[0] =

b/K

11 – CORDIC

EXAMPLE OF VECTORING

INITIAL VECTOR

x

in

, y

in

y

FORCED TO ZERO IN

n

MICRO-ROTATIONS

ROTATED VECTOR:

x

R

x

in 2

y

in 2

y

R

ROTATED ANGLE

z

f

= tan

1 (

0 . 43

0 . 75

11 – CORDIC

j

y

[

j ] σ j x [

j ] z [ j ]

11 – CORDIC

CONVERGENCE, PRECISION, AND RANGE

ROTATION MODE

CONVERGENCE

z

[ i ] | ≤

∑∞

j

i

tan

1

(

j )

θ

max

z

[0]

max

∑∞

j

tan

1

(

− j ) ≈ 1.

o )

FOR THIS ANGLE ALL

σ

j

and

z

[ j

]

CONSIDER

θ < θ

max

z

[

i ] | ≤

tan

1 (

( i −

CONSEQUENTLY

tan

1 (

i −

1

)

∑∞

j

i

tan

1

(

j

)

OR

tan

1

(

i )

∑∞

j

i

tan

1 (

j )

SATISFIED FOR ALL

i

11 – CORDIC

y

x

α

i-

α

i-

α

i

Figure 11.4:

CONVERGENCE CONDITION: THE MAXIMUM NEGATIVE CASE.

11 – CORDIC