<figcaption>Capture du chronogramme Vivado</figcaption>
</figure>
Oui, la conception de l’unité de contrôle est validée, car la simulation correspond bien au comportement attendu : un filtre passe-bas.
Oui, la conception de l’unité de contrôle est validée. En effet en branchant un casque à la carte et en faisant varier la fréquence en entrée à l'aide du site fourni dans l'énoncé, on constate que la simulation correspond bien au comportement attendu : un filtre passe-bas.
Une autre question présente dans l'énoncé nous demandait de fournir le design flow (présent en figure ci-contre) montre la cartographie de la carte les parties allumées étant les parties utilisées lors de la simulation.
### Question filtre 4 : Combien de processus sont utilisés et de quelles natures sont-ils ?
Dans le code il y a 4 processus, tous séquentiels, ne prenant en entrée que la Clock le Reset. Le premier processus (Shift) gère le registre à décalage en insérant le nouvel échantillon d’entrée et en décalant les anciens vers la droite lorsque le signal I_loadShift est activé. Le second (incr_address) initialise ou incrémente l’adresse de lecture utilisée pour accéder aux registres contenant les échantillons et les coefficients, en fonction des signaux I_initAddress et I_incrAddress. Le troisième (sum_acc) effectue l’accumulation des produits successifs Xi × Hi dans un registre de somme SR_sum, contrôlé par les signaux I_initSum et I_loadSum. Enfin, le dernier processus (store_result) stocke le résultat final filtré dans un registre de sortie SR_filteredSample lorsque I_loadY est actif.
...
...
@@ -37,8 +37,8 @@ Dans le code il y a 4 processus, tous séquentiels, ne prenant en entrée que la
### Question filtre 5 : La simulation vous permet-elle de valider votre description VHDL ? Sinon, quel élément pose problème ? Comment pouvez-vous le corriger ? Justifiez
<figcaption>Chronogramme de la simulation Vivado de Operative.vhdl</figcaption>
</figure>
Initialement, on obtenait pas tout à fait la meme suite de valeur, nous avons d'abord pensé à une erreur de notre part. Puis après discussion avec l'encadrant nous avons compris que nous avions un problème lié à l'arrondi qui est opéré lors du passage de 32 à 16 bits. Mais on a corrigé ce problème dans le code Operativ.VHDL et maintenant on obtient bien les coefficients du filtre. Donc la simulation nous permet de valider notre description VHDL, car on retrouve la réponse impulsionnelle du filtre.