INF3500 : Conception et implémentation de systèmes numériques
http://creativecommons.org/licenses/by-nc-sa/2.5/ca/
Pierre Langlois
Calcul de fonctions trigonométriques
avec l’algorithme CORDIC et son implémentation
INF3500 : Conception et implémentation de systèmes numériques
CORDIC
Sujets de ce thème
•Origines
•Principe de base: rotation d’un vecteur
•Clé de la réalisation matérielle efficace
•Déroulement de l’algorithme
•Implémentation de l’algorithme et chemin des données
2
INF3500 : Conception et implémentation de systèmes numériques
Calculer le sinus et le cosinus avec CORDIC
•CORDIC: COordinate Rotation DIgital Computer,
proposé par Jack Volder, un ingénieur américain,
en 1959.
•L’algorithme CORDIC permet de calculer les
fonctions trigonométriques avec une suite
d’opérations arithmétiques très simples: addition,
soustraction et décalage.
•Utilisé dans les calculatrices de poche, Intel 80x87,
80486 et Motorola 68881.
•L’algorithme CORDIC a été généralisé pour calculer
des fonctions exponentielles, la division, la
multiplication et la racine carrée.
3
INF3500 : Conception et implémentation de systèmes numériques
•Une rotation dans le plan peut s’effectuer à l’aide de l’équation suivante:
Principe de base
4
)tan(cos
)tan(cos
1tan
tan1
cos
cossin
sincos
1
1
1
1
iiiii
iiiii
i
i
i
i
i
i
i
ii
ii
i
i
xyy
yxx
y
x
y
x
y
x
INF3500 : Conception et implémentation de systèmes numériques
•On peut décomposer une rotation en plusieurs sous-rotations.
–L’angle global de rotation est égal à la somme des angles des sous-rotations.
–Les angles des sous-rotations peuvent être positifs ou négatifs.
Principe de base
5
1
0
0
0
0
0
2
2
1
1
cos
1tan
tan1
1tan
tan1
1tan
tan1
n
i
n
n
n
n
n
n
K
y
x
K
y
x
0
0
0
0
1
1
2
2
012
3
3
1tan
tan1
1tan
tan1
1tan
tan1
coscoscos
y
x
y
x
1 / 12 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!