-
Module FFT en VHDL
Bonjour,
j'aimerais trouver un exemple de module FFT (plus le nombre de points d'entrée sera petit et plus il sera facile à comprendre mais ce n'est pas l'essentiel) pour voir comment on peut écrire les différents composants.
J'ai fait plein de recherches sur Google mais je trouve rien de concluant.
Merci d'avance.
-
Salut,
Je pense que le meilleur endroit pour trouver ce genre d'exemple et http://opencores.org/.
Attention tu t'attaque a un ÉNORME morceau là. Mais bon courage.
@+
-
Bonjour,
Pour une FFT, il y a énormément d'exemples sur le Net (dont un site très connu, cf mith06).
Toutefois, si l'on considère qu'une FFT sur le domaine "x" peut tout aussi bien être analysée sur le domaine "z", alors cela devient beaucoup plus simple, voire trivial dans certains cas :mrgreen: (attention, pas de fausse joie, je n'ai pas dit que votre cas serait trivial, hein).
http://fr.wikipedia.org/wiki/Transformée_en_Z
Grosso modo, l'idée est de stocker les N derniers échantillons (les N plus récents) et de multiplier chaque échantillon par un coefficient qui a été précalculé (donc figé avant la synthèse).
Et là, on se retrouve à faire tout simplement
resultat = somme(i=0,i=n-1, x(i) * coeff(i))
Et donc :
- stocker les N échantillons (registres à décalage)
- multiplier chaque échantillon par son coefficient associé (donc N multiplieurs)
- faire la somme des N résultats partiels
Je le répète : cette méthode inclut plusieurs hypothèses qui sont souvent vérifiées mais pas toujours, à vous de jouer pour savoir si vous pouvez utiliser cette méthode :ccool:
Cdlt