= Synthèse logique de CORDIC La lecture du [htdocs:MOCCA_Cordic_2020.pdf cours] est nécessaire pour comprendre les principes de l'algorithme CORDIC utilisé pour la rotation. == Objectifs Dans ce TME, vous devez écrire le modèle VHDL du circuit CORDIC à partir d'une description de l'algorithme en décrit en C. - Le circuit réalise la rotation d'un vecteur (x,y) par un un angle a. - Le circuit prend en entrée - les coordonnées x_p et y_p qui sont des nombres entiers signés de -127 à +127. - L'angle a_p est exprimé en radian et il est représenté par un nombre en virgule fixe **non** signé 3-7. - À l'intérieur du circuit, c'est un nombre en virgule fixe 1-8-7. - Mais à l'interface, j'ai choisi une représentation non signée 3-7 (port a_p) pour avoir des angles entre 0 et presque 8 radians. La conversion se fait dans le circuit en recopiant les 10 bits de a_p dans les 10 bits de poids faible d'un registre de 16 bits représentant l'angle, puis en complétant avec des `0`à gauche. C'est un choix pour réduire le nombre de broches, mais vous pouvez faire un choix plus "propre" en codant l'angle en 1-3-7 et faire une conversion avec extension du signe. - le circuit reçoit aussi une horloge. - Le circuit produit en sortie les coordonnées (nx_p, ny_p) du vecteur après rotation. - Le protocole de communication en entrée et en sortie est FIFO. == Fichiers fournis