be_chti/README.md

41 lines
2 KiB
Markdown

# BE CHTI - Partie Assembleur
Groupe: Yohan Simard, Arnaud Vergnet
Chaque projet contient des commentaires pour faciliter la compréhension du code.
## 1.1 Signal carré de précision
Partie terminée et fonctionnant comme attendu. Pour tester, ouvrir le fichier `Project.uvprojx` dans le dossier 1.1 puis suivre les étapes suivantes :
* Compiler le projet
* Lancer le mode Debug
* Ouvrir le logic analyser. Tout devrait être préconfiguré.
* Appuyer sur run et observer le signal carré dans le logic analyser.
## 2.1 Préliminaire : Tables trigo
Partie terminée et fonctionnant comme attendu. Pour tester, ouvrir le fichier `Project.uvprojx` dans le dossier 2.1 puis suivre les étapes suivantes :
* Compiler le projet
* Lancer le mode Debug
* Ouvrir la `Watch Window 1`. Vous devrez y trouver les variables `max` et `min`.
* Appuyer sur run et observer les valeurs de ces deux variables. Elles devraient être autour de 32767, soit 1 en format virgule fixe 1.15.
## 2.2 Calcul DFT
Partie terminée et fonctionnant comme attendu. Cette partie à été testée avec les [jeux de test officiels](https://noullet-gei.gitlab.io/asm/BE/TEST_DFT/test_DFT.7z) Pour tester, ouvrir le fichier `Project.uvprojx` dans le dossier 2.2 puis suivre les étapes suivantes :
* Choisir une fonction du jeu de test officiel et copier son contenu dans le fichier `calcul_dft.s`, sous le label `TabSig`.
* Si le signal choisi ne possède pas 64 points, changez la variable `N` dans le fichier `principal.c` par le nombre de points du signal choisi.
* Compiler le projet
* Lancer le mode Debug
* Ouvrir la `Watch Window 1`. Vous devrez y trouver la variable `resultats`, un tableau contenant le résultat de la DFT du signal choisi pour k variant de 0 à N-1.
* Appuyer sur run et vérifier que les résultats correspondent bien à ceux attendus par le test.
## Challenge
Cette partie se comporte comme la précédente (2.2). La procédure de test est donc identique. Nous avons ici cherché à optimiser en vitesse (nombre de cycles) notre calcul de DFT.