Vous êtes sur la page 1sur 11

ECOLE NATIONALE DES SCIENCES APPLIQUEED DE KHOURIBGA

3émé Année cycle ingénieur

RAPPORT DU TP
Année 2013-2014

Réalisé par :
Sliman ENNAIRY; ATIFI Rajae; AGOUTI Issam; MANAR Rabia

Encadré par :
Pr. I.LAGRET
1 Introduction
1.1 Généralités
L’ensemble C6713 DSK (Development System Kit) est un outil de développement qui permet à des uti-
lisateurs de mettre au point et de tester des applications utilisant le processeur de traitement de signal Texas
Instruments (TI) TMS320C6713. Autour de ce DSP sont connectés une grande variété de périphériques per-
mettant une large gamme d’applications en traitement numérique du signal. Ainsi, la configuration réalisée est
une référence qui, dans beaucoup de cas standards, peut éviter le temps de développement du ≪ hardware ≫.

1.2 La carte DSK 6713

F IGURE 1 – La carte DSK 6713

TMS320C6713 : DSP de la gamme TI travaillant à 225 MHz. Il est connecté à ses périphériques par un bus
de 32 bits.
CODEC AIC23 : dédié à l’interfaçage pour les applications ≪ audio ≫. Il comprend les convertisseurs CAN
pour la capture de signaux (LINE IN, MIC IN) et les convertisseurs CNA pour l’exportation de signaux
(LINE OUT, HP OUT).
Une CPLD : composant de logique programmable qui contient entre autre la logique de connexion des divers
composants entre eux. Elle contient aussi des registres accessibles à l’utilisateur permettant de configurer
la carte ou d’accéder à la configuration en place.
Une SDRAM synchrone de 8 Méga-octets.
Une mémoire Flash de 512 Kilo-octets.
4 LEDs et 4 interrupteurs (DIP) : accessibles par les registres de la CPLD et permettant un dialogue simple
entre la carte et l’utilisateur.
Des options d’initialisation configurables (SW3).
Une possibilité d’extension standard vers une autre carte (Peripheral Expand).
Une émulation JTAG : autorisant le dialogue avec un hôte extérieur via une connexion USB.
Une seule alimentation est requise en +5V.

1
1.3 Le logiciel : Code composer studio (CCs)
Fourni avec le kit de développement, le CCS contient tous les outils logiciels nécessaires pour la réalisation
d’applications avec la carte précédente. Le coeur de ce système est un IDE (Integrated Development Environ-
ment) qui permet de travailler sur l’ordinateur hôte à partir d’une seule fenêtre d’application. Les utilitaires sont
ainsi accessibles par menus déroulants et boı̂tes de dialogue. Cela comprend :
• La configuration de CCS.
• L’édition de programmes d’application en C ou C++.
• La génération de code (compilation, édition des liens, assembleur).
• La visualisation et (ou) modification du code assembleur. Ceci permet une optimisation du code.
• Chargement de l’application dans la mémoire de la carte cible.
• Une aide au développement autour d’un noyau temps réel.
CCS est un environnement IDE qui incorpore les outils logiciel nécessaires au développement. Il inclut les
outils pour la génération du code tel qu’un compilateur C, un assembleur et un linker. Il support le ≪ debugging
≫ temps réel. Le processus (simplifié) permettant d’aboutir à un fichier exécutable à partir d’un programme

écrit en langage C, est le suivant :

F IGURE 2 – Les étapes de géneration d’un code sous CCS

1.4 Types de fichiers et Extensions


On vas travailler avec plusieurs fichiers avec des extensions différentes :
Fichier.pjt : pour créer et construire un projet nommés Fichier
Fichier.c : programme source en langage C.
Fichier.asm : programme source assemblé créé par l’utilisateur, par le compilateur C ou par l’optimiseur
linéaire (linear optimizer).
Fichier.sa : programme source de l’assembleur linéaire. L’optimiseur linéaire peut produire à partir de ce
fichier un programme assemblé Fichier.asm.

2
Fichier.h : fichier de support (d’entête).
Fichier.lib : fichier bibliothèque.
Fichier.cmd : fichier de commande du Linker (mappage des sections vers la mémoire).
Fichier.obj : fichier objet créé par l’assembleur.
Fichier.out : fichier exécutable créé par le linker devant être chargé et exécuté par le processeur C6713.
Fichier.cdb : fichier de configuration quand le DSP/BIOS est utilisé.

1.5 Connexion de la carte DSK


Pour connecter la carte DSK au PC on suit les étapes suivantes :
1. On Connecte le câble USB au PC (une extrémité du câble seulement) ;
2. On Branche, s’il y a lieu, les connexions audio (microphone, haut parleur,. . . ). La tension à l’entrée audio
ne doit en aucune manière dépasser 2 Volts crête à crête (2Vpp) ;
3. On Connecte l’adaptateur à la prise murale ;
4. On Connecte l’adaptateur à la carte DSK, et attendez le cycle des diodes 10-15 secondes. En fin de cycle
deux diodes restent allumées ;
5. On Connecte l’extrémité restante du câble USB à la carte DSK ;
6. On Laisse Windows trouver les drivers USB (automatique dans XP.

1.6 Test de la connexion


Pour tester la connexion de la carte on suit les étapes suivantes :
1. Double cliquez sur l’icône 6713 Diagnostic ;
2. Appuyez sur ≪ Start ≫ et attendez les feus verts ;
3. Appuyez sur ≪ Stop ≫ et quittez (fermez la fenêtre).

2 Filtres à Réponse Impulsionnelle Finie – FIR –


2.1 Implémentation d’un filtre FIR coupe bande
Les échantillons à la sortie ≪ y(k) ≫ d’un filtre FIR se calculs en fonction de l’entrée ≪ x(k) ≫ par la
formule suivante :
X
k=0
y(n) = h(k)x(n − k)
N −1

Les coefficients h(k) déterminent la nature et le type du filtre.


Notre objectif est d’implémenter un filtre FIR coupe bande, avec la fréquence ‘coupée’ fixée à 2700Hz. Le
schéma suivant résume l’objectif de notre TP.

3
F IGURE 3 –

Le listing ci-dessous est un programme matlab qui permet de :


• Lire le fichier audio voixe nf ant.wav
• Générer un son (bruit) de fréquence fixe 2700Hz
• Mélanger les deux sons
• Faire l’analyse spectrale du fichier audiovoixe nf ant.wav , avant et après l’ajout du bruit ;

F IGURE 5 –

4
F IGURE 4 –

2.2 Conception d’un filtre FIR avec Matlab – détermination des coefficients h(n) du filtre
La conception de notre filtre coupe-bande doit commencer par la détermination des coefficients h(k). Matlab
dispose de deux outils destinés à la conception de filtres numériques SPTool et FDATool, nous utiliserons dans
ce TP l’outil FDATool. Le schéma suivant représente le gabarit désiré pour notre filtre avec :
• Fpass1 = 2500Hz
• Fstop1 = Fstop2 = 2700Hz
• Fpass2 = 2900Hz
• Apass1 = Apass2 = 0,5 dB
• Astop = 40 dB

5
F IGURE 6 –

Pour générer le filtre on suivie les étapes suivantes :


1. on Lance l’outil FDATool dans Matlab ;
2. on Sélectionne la configuration suivante des choix et paramètres :
a) Response Type : ≪ Bandstop ≫
b) Design Method : ≪ FIR ≫ et ≪ Window ≫
c) Filter Order : ≪ Minimum order ≫
d) Options :
i. ≪ Scale Passband ≫ : cochée
ii. Window : ≪ Kaiser ≫
e) Frequency Specifications :
• ]Units : Hz
• Fs : 8000
• Fpass1 : 2500
• Fstop1 : 2700
• Fstop2 : 2700
• Fpass2 : 2900
f) Magnitude Specifications :
• Units : dB
• Apass1 : 0.5
• Astop : 40
• Apass2 : 0.5

6
F IGURE 7 –

3. On Appuie sur Design Filter et on trouve

7
F IGURE 8 –

4. Le champ ≪ Current Filter Information ≫, nous donne des informations sur le filtre généré, ordre et sta-
bilité.on obtiens un filtre d’ordre 91

Les coefficients sont donc disponibles (pour un copier coller), mais ne sont pas utilisables directement
puisqu’ils sont en virgule flottante (avec ce format, le calcul est plus précis au détriment du temps de
calcul qui peut être élevé). Il est nécessaire de transformer le format des coefficients en ≪ entiers-signés
≫.

(a) On vas dans le menu ≪ Target ≫ et sélectionnez ≪ Generate C Header . . . ≫

(b) On Sélectionne les choix suivants :


a. Numerator : h
b. Numerator length : N
c. Export as : cochée : Signed 16-bit integer
(c) Cliquez sur ≪ Generate ≫
Les coefficients sont enregistrés dans le fichier ≪ fdacoefs.h ≫ par défaut. Nous voulons plutôt
mettre ces données dans un fichier de terminaisons ≪ .cof ≫.

(d) Changez le nom et l’extension du fichier : ≪ fdacoefs.h → fdacoefs2700.cof ≫


(e) Ouvrez le fichier ≪ fdacoefs.cof ≫ dans un éditeur de text
a Enlever tous les commentaires
b Enlever la ligne : include tmwtypes.h
c Remplacez les deux lignes :
c o n s t i n t N = 91 ;

8
const int16 T h [91] = {

Par :
# d e f i n e N 91 ;
Short h [91] = {

Le fichier ≪ fdacoefs.cof ≫ est prêt à être incorporé dans le projet d’implémentation du filtre dans
la DSK6713.

2.3 Implémentation du filtre FIR coupe bande dans la DSK6713


Ayant les coefficients de notre filtre il faut calculer les termes :

X
k=0
y(n) = h(k)x(n − k)
N −1

Ou x(k) représentent les échantillons à l’entrée du filtre et y(n) sa sortie. Le programme en C suivant permet de
faire ce calcul. Il utilise le mode interruptions déjà vu.

F IGURE 9 –

9
F IGURE 10 –

ON Crée un nouveau projet en incluant les fichiers suivants :


– Fir.c
– c6713dskinit.c
– V ectorsi ntr.asm
– C6713dsk.cmd
– csl6713.lib
– dsk6713bsl.lib
– rts6700.lib
1. Compilez votre projet
2. Appliquez à l’entrée de la DSK (Line IN) un signal sinusoı̈dal d’amplitude 0.1V
3. Visualisez à l’oscilloscope l’entrée du GBF et la sortie de la DSK (Line OUT)
4. Modifiez la fréquence de l’entrée dans la plage suivante f = [100Hz ,4000Hz] et notez ce qui se passe
pour la fréquence particulière de 2700Hz.
5. Test du filtrage du fichier bruité≪ voixe nf ant.wav ≫
a Reliez l’entrée (Line IN) de la DSK à la sortie audio du PC (sortie de la carte son du PC)
b Reliez la sortie (HEADPHONE) de la DSK aux hauts parleurs ou au casque mis à votre disposition
c Tapez dans matlab la commande : (le fichier matlab ≪ voixp lusb uit.m ≫ayant été exécuté aupara-
vant)
>> wavplay(z, F s)
d Vérifiez que à la sortie de la DSK le signal sonore correspondant à la sinusoı̈de de 2700Hz à disparu
et que le filtre fonctionne donc correctement.

10

Vous aimerez peut-être aussi