41 lines
2 KiB
Markdown
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.
|
|
|
|
|