68
1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean [email protected] 000 2 DSP : Digital Signal Processor Amplificateur home cinéma Denon AVR3806 Lecteur codes barres CCD ScanPLus 1800 SR Interscan Autoradio MP3 KD-SHX851 JVC Console de mixage Allen&Heath Produits utilisant des DSP: Téléphone portable Ericsson R600

DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

  • Upload
    lynhu

  • View
    226

  • Download
    2

Embed Size (px)

Citation preview

Page 1: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

1

2006-2007

Les processeurs de traitement du signal

Caroline [email protected]

000

2

DSP : Digital Signal Processor

Amplificateur home cinéma Denon AVR3806

Lecteur codes barres CCD ScanPLus 1800 SR Interscan

Autoradio MP3 KD-SHX851 JVC

Console de mixage Allen&Heath

• Produits utilisant des DSP:

Téléphone portable Ericsson R600

Page 2: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

2

000

3

Applications des DSP

• Communications– Modem, téléphonie– Télévision & radio

numérique– Cryptage

• Audio– Mixage et édition– Effets– Suppression de bruit– Annulation d’écho

• Image / Vidéo– Compression/Codage– Traitement

• Militaire– Imagerie (radar,

sonar)– Cryptographie– Guidage de missiles– Navigation

000

4

Applications des DSP

• Médical– Equipements de

monitoring (EEG, ECG)

– Imagerie (IRM…)

• Instrumentation– Analyseurs de

spectre– Générations de

fonctions

• Automatisation– Commande de

machines– Contrôle de moteurs– Robots

• Automobile– Contrôle du moteur– Assistance au freinage– Aide à la navigation– Commandes vocales– Tableau de bord

Page 3: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

3

000

5

49,7%

12,9%

9,8%

7,7%

6,8%

13,1%

Principaux constructeurs de DSP

Source : EETimes.com, 2004

autres

ex-Motorola

ex-Lucent

Achats de DSP en millions de dollars

000

6

Plan de l’exposé

• Le Traitement Numérique du Signal (TNS) et les DSP

• Architecture des DSP : CPU, mémoire…

• Performances des DSP : augmentation, mesure de performances, gamme de DSP…

• Développement d’applications surun DSP : programmation…

Page 4: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

4

000

7

Plan de l’exposé

• Le Traitement Numérique du Signal (TNS) et les DSP

• Architecture des DSP : CPU, mémoire…

• Performances des DSP : augmentation, mesure de performances, gamme de DSP…

• Développement d’applications surun DSP : programmation…

000

8

Le TNS : pourquoi ?

Stabilité• Insensibilité à

l’environnement

• Précision connue et contrôlée

• Reproductibilité

Souplesse

• Programmation flexible

• Développement rapide

• Facilité pour certains traitements

Page 5: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

5

000

9

Le TNS : comment ?

• Chaîne classique de traitement numérique du signal :

?

Mémoire

Ports d’E/S

CAN CNAFiltre antirepliement

Filtre dereconstruction

numérique

Signalanalogiqued’entrée

Signalanalogiquede sortie

000

10

Solutions pour le TNS

• Classification des processeurs

Source : d’après [1]

ASIC : Application Specific Integrated CircuitASSP : Application Specific Standard ProductFPGA : Field Programmable Gate Array

ASICASSPFPGA

Page 6: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

6

000

11

Classification des processeurs

• Le processeur généraliste (GPP)• Coût relativement élevé

• Forte consommation électrique

• Bonnes performances en calcul numérique– Certains surpassent les DSP en puissance brute

• GPP moins bons que les DSP pour :– la consommation électrique– la gestion des entrées-sorties– le prix

000

12

Classification des processeurs

• Le microcontrôleur

• Faible coût

• Faible consommation électrique

• Mémoire limitée

• Peu adapté aux signaux numériques

• Adapté aux tâches de contrôle

• Programmation bas niveau

Page 7: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

7

000

13

Classification des processeurs

• ASIC/ASSP (Application-Specific…)• Circuit intégré dédié à une application

– dans une entreprise : ASIC– pour un marché (ex: téléphonie) : ASSP

• Ne sont pas programmables

• Mise en œuvre complexe et longue

• Coût élevé

• FPGA : sorte de ASIC programmable

000

14

Classification des processeurs

• DSP

• Coût relativement faible

• Faible consommation électrique

• Jeu d'instruction spécialisé

• Calculs numériques

• Entrée-sortie de données à grand débit

• Mémoire limitée

Page 8: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

8

000

15

Le TNS : besoins

• Algorithmes de TNS :

– filtrage

– transformées

– codage/décodage

– reconnaissance de la parole

– synthèse de signaux

– élimination d’écho

– estimation spectrale…

000

16

Le TNS : besoins

• Contrainte de temps réel

• Ex : taux d’échantillonnage 48kHz Te = 20.833 µs

t

Arrivée de l’échantillon x(n)

t t+Te

Temps de traitement Tdoit être <Te

pour le temps réel

Arrivée de l’échantillon x(n+1)

Page 9: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

9

000

17

Les DSP ont une architecturematérielle et logicielle dédiée

permettant de répondre à ces besoins

Le TNS : besoins

• Cahier des charges :

1. Calculs rapides2. Contraintes temps réel (entrées/sorties à débit fixe)

3. Contraintes systèmes embarqués (taille limitée, faible consommation d’énergie)

4. Production de masse

000

18

Exemples d’applications

• Lecteur MP3 dictaphone

Source : ti.com

Page 10: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

10

000

19

Exemples d’applications

• Scanner de codes barres

Source : ti.com

000

20

Exemples d’applications

• Appareil photo numérique

Source : ti.com

Page 11: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

11

000

21

Exemples d’applications

• Imagerie par Résonance Magnétique

Source : ti.com

000

22

Exemples d’applications

• Console de mixage

Source : ti.com

Page 12: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

12

000

23

Exemples d’applications

• Récepteur GPS

Source : ti.com

000

24

Exemples d’applications

• TV à écran LCD

Source : ti.com

Page 13: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

13

000

25

Exemples d’applications

• Kit mains libres

Source : ti.com

000

26

Spécificités des DSP

• Plan de cette partie :– 2 algorithmes classiques de TNS :

• Filtre à Réponse Impulsionnelle Finie(RIF)

• Transformée de Fourier rapide (FFT)

Opérations les + courantes

dans les algosde TNS

Contraintes matérielles sur l’architecture

DSP

imposent

Spécificités des DSP

Page 14: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

14

000

27

Spécificités des DSP

• Algo n°1 : Filtre RIF

Une équation aux différences finiesspécifie la sortie y(n)

∑−

=

−=1

0)()()(

N

iinxiany

000

28

Spécificités des DSP

• Pour chaque cellule a(i)x(n-i) :– Recherche de l’instruction– Recherche du coefficients a(i)– Recherche de la donnée x(n-i)– Multiplication a(i)x(n-i)– Accumulation a(i-1)x(n-i-1) + a(i)x(n-i)– Décalage en mémoire x(n-i) x(n-i-1)

4 accès en mémoire 2 accès à l’unitéde calcul

∑−

=

−=1

0)()()(

N

iinxiany

Page 15: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

15

000

29

Spécificités des DSP

• Objectifs :– Réduire les accès mémoire– Augmenter les accès mémoire simultanés– Réduire le temps passé à faire des calculs

Instruction MAC(multiplication-accumulation)

en 1 seul cycle d’instruction

000

30

Spécificités des DSP

• Objectifs :– Réduire les accès mémoire– Augmenter les accès mémoire simultanés

Architecture Harvard (DSP)

Architecture Von Neuman

(microcontrôleur)

Source images : [1]

Page 16: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

16

000

31

Spécificités des DSP

Buffer circulaire : Segment mémoire contenant des données(échantillons, cœfficients…)

Accès par pointeurs générés et incrémentés automatiquement

– Pas de test sur les pointeurs– Pas de reset nécessaire

L

L+1

L+2

L+N

… …

• Objectifs :– Réduire les accès mémoire

Mode d’adressage circulaire

000

32

2

0

1

N-2

N-1

Spécificités des DSP

x(n-1)

x(n-2)

…x(n-N+1)

x(n-N)

x(n)

x(n-1)

x(n-2)

…x(n-N+2)

x(n-N+1)

x(n-N)

nouvel échantillonx(n)

a0

a1

a2

aN-2

aN-1

y(n)

Mise à jour du buffer Calcul de y(n)

décalage

Xtab(t-1) Xtab(t)0

1

N-2

N-1

1

• Buffer linéaire

source image : [9]

∑−

=

−=1

0

)()()(N

i

inxiany

Page 17: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

17

000

33

Spécificités des DSP

ak+1x(n-k+1)

x(n-N+1)

x(n-N)

x(n-1)

x(n-2)

x(n-k)

nouvel échantillonx(n)

aN-1

a0

a1

a2

ak

y(n)

Mise à jour du buffer Calcul de y(n)

x(n-k+1)

x(n-N+1)

x(n)

x(n-1)

x(n-2)

x(n-k)

idx

0

1

N-2

N-1

0

1

N-2

N-1

idx

Xtab(t-1) Xtab(t)

• Buffer circulaire

source image : [9]

∑−

=

−=1

0)()()(

N

iinxiany

000

34

Spécificités des DSP

• Algo n°2 : FFT (Fast Fourier Transform)

sur N points∑−

=

−−≤≤=

1

0

210)()(

N

i

Ninj

Nnpoureixnyπ

SimultanéSéquentielCalcul des N

échantillons y(n)

N/2 log2(N)N²Nombre de

multiplications

Algorithme de Cooley-Tukey

Sans optimisation

Page 18: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

18

000

35

Spécificités des DSP

• Algo n°2 : FFT par Cooley-Tukey

Besoin d’accéder auxéchantillons dans

cet ordre

∑ ∑−

=

=

−==

1

0

1

0

2)()()(

N

i

N

i

inN

Ninj

Wixeixnyπ

Ex : N = 8

Source : [5]

x0

x4

x2

x6

x1

x5

x3

x7

y0

y1

y2

y3

y4

y5

y6

y7

000

36

Spécificités des DSP

• Moded’adressagespécifique :“Bit reverse”

30111106

51011015

71111117

001

110

010

100

000

Ordre pour la FFT Cooley-Tuckey

100

011

010

001

000

63

00

14

22

41

Ordre naturel des échantillons

Page 19: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

19

000

37

Entrées/sortiesspécifiques

Spécificités des DSP

• Résumé :

Organisationmémoire

Architecture Harvard

Jeud’instructions

MAC en 1 cycle

Modes d’adressage

Bit reverse, circulaire Flot continu de données

000

38

Plan de l’exposé

• Le Traitement Numérique du Signal (TNS) et les DSP

• Architecture des DSP : CPU, mémoire…

• Performances des DSP : augmentation, mesure de performances, gamme de DSP…

• Développement d’applications surun DSP : programmation…

Page 20: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

20

000

39

Architecture des DSP

• Plan de cette partie :

– Représentation des nombres

– CPU

– Unité de mémoire

– Périphériques

Unité de calculUnité de commande (pipeline)Unité de génération d’adresses

000

40

• Format courant : 16/24 bits

• Idéal avec CAN/CNA 12/14 bits

• Applications : Contrôle industriel, communications, instrumentation, parole, médical, militaire…

Représentation des nombres

• Les valeurs traitées (coefficients, échantillons…)

sont représentées sous 2 formes :

Virgule fixe Virgule flottante

Page 21: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

21

000

41

Représentation des nombres

• Les valeurs traitées (coefficients, échantillons…)

sont représentées sous 2 formes :

Virgule fixe Virgule flottante

• Format courant : 32 bits

• Idéal pour le traitement sur unegrande dynamique

• Applications : Audio professionnel, vidéo, médical…

000

42

Représentation des nombres

• Virgule fixe : Complément à 2 (C2)

Signe

12 1 −−N

12 −− N 00110011

01-411-301-211-1000101002103

Nombre Codage

Nombre positif : codé comme un binaire naturel

Nombre négatif : Inversion des bits puis ajoutde 1

Le codage C2 convient bien aux opérations maths.

Page 22: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

22

000

43

Représentation des nombres

• Virgule fixe : Complément à 2

• Représentation “circulaire”– En ajoutant 1 à la plus grande valeur

positive on obtient la valeur négativeextrême

– Ex sur 3 bits :000 001111

010110

100011101

01

2

3

-4-3

-2

-1

000

44

Représentation des nombres

• Virgule fixe : Codage des entiers

∑=

+−=6

0

77 22

i

iibbxExemple sur 8 bits 122 77 −≤≤− x

110110002720212223242526-27Poids

000000000

00111111-4

Bit de signe

Page 23: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

23

000

45

Représentation des nombres

• Virgule fixe : Codage des réels

Format Qk

Partie fractionnairesur k bits

Partie entièresur N-k bits en C2

Ex : 2,3125

• Cas particulier : k = 0 entiers

000

46

Représentation des nombres

• Virgule fixe : Codage des réelsFormat Qk

– Pour coder le réel x, trouver les bi tels que :

– Ex : format Q5 sur 8 bits (n=8, k=5)

Partie entière : 3 bits / fractionnaire : 5 bits

∑−−

−=+

− +−=1

22kn

ki

iki

knn bbx

010100102,31252-52-42-32-22-12021-22Poids

Page 24: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

24

000

47

Représentation des nombres

• Virgule fixe : Codage des réels

Format Qk

– Correspond à la représentation C2 de l'entier y tel que :

– Ex : y = round(25.2,3125)

= 74 = (0100 1010)b

)2round( xy k=

010100102,31252-52-42-32-22-12021-22Poids

000

48

Représentation des nombres

• Exemple : Format Q5 sur 8 bits

– Dynamique : -2N-k-1 … 2N-k-1-2-k

00000001-410000001-3.96875

000000000

011111103.9375111111103.96875

2-52-42-32-22-12021-22Poids ,

max

min

Page 25: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

25

000

49

Représentation des nombres

• Exemple : Format Q5 sur 8 bits– Précision : q = 2-k

– Erreur maximale : q/2 = 2-(k+1)

– Ex : 010.01010 = 2,3125010.01011 = 2,3438

– Si on doit coder 2,33, l’erreur sera de 2-6

max.

+q = +2-k

000

50

Représentation des nombres

• Un format très classique :Q15 sur 16 bits : réels entre -1 et 1

99997.01,2,22 1514

0

15015 ≤≤−=+−= ∑

=

− xqbbxi

ii

signe

2-152-1±20

01415

Exemple

0000000000110011

01223456789101112131415

-1+0,5+2-4+2-5 = -0,40625

Page 26: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

26

000

51

Représentation des nombres

• Ecrire le mot binaire 8 bits signéau format Q7 :

• +0.5

• +1.0

• -1.0

• +1/3

• -1/3

000

52

Représentation des nombres

• Si l’on veut D chiffresfractionnaires significatifs en décimal, quelle doit être le format Qk ?

Page 27: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

27

000

53

Représentation des nombres

• Si l’on veut D chiffres fractionnairessignificatifs en décimal, quel doit être le format Qk ?

• Il faut avoirsoit :Puis :

Ex : le format Q15 a une précision de 4 chiffresdécimaux après la virgule

Dq −≤ 10Dk −− ≤102( ) DDk 3.310log2 ≈≥

000

54

Représentation des nombres

• Virgule flottante : mots de 32 bits sous forme mantisse-exposant

1272).,1.()1( −−= es fx ∑=

=7

02

i

iiee ∑

=

−=22

0

232i

iiff

partie fractionnaire de la mantisseexposantsigne

f0……f22e0e7s

022233031

000……011111000000

022233031

+1,75.27-127 = 1,3165.10-36

Page 28: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

28

000

55

Représentation des nombres

1500 dB190 dBDynamique max.

ComplexeSimpleComplexité hard

FaibleElevéeComplexité progr.

ElevéeFaibleConsommation

ElevéFaibleCoût

Virgule flottante

Virgule fixe(95% des DSP)

000

56

Architecture des DSP

CPU

Page 29: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

29

000

57

Structure interne du CPU

Bus de program

me

Unités de générationd’adresses

AddP

Unités de traitement

mathématique

DataP

Registre de données

Générateur d’adresses MD

AddD

DataD

Unité de commande

Cache

Générateur d’adresses MP

Multiplieur

ALU

Registre décalage

Séquenceur

CPU

Bus

de d

onné

es

000

58

Unité de calcul

• Éléments principaux :– Unité Arithmétique et Logique (ALU)

• Opérations classiques (+, -, AND, OR…)

– Multiplieur-Additionneur– Accumulateurs– Registres à décalage (shifters)– Manipulation de bits

Page 30: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

30

000

59

Unité de calcul

• Multiplication accumulation :

Multiplieur

ALU

Accumulateur

Résultat sur 2N bits

Résultat sur 2N bits

Troncature

data bus (N bits)

N bits

N bits2N bits

000

60

Unité de calcul

• Lors de nombreux MAC successifs :– Taille de l’accumulateur (2N bits)

insuffisante2 solutions :– Accumulateur sur 2N + p bits

Exemple : ADSP2181

2 registres 16 bits, résultatsur 32 bits dans l’accu 40 bits

– Pre-Scaling : décalage avant l’accumulation

Page 31: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

31

000

61

Unité de calcul

• TMS320c5x

(TI)

000

62

Unité de calcul

• DSP56300

(Freescale)

Page 32: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

32

000

63

Unité de calcul

Exo : Soit un filtre RIF à calculer.

• coefficients a • échantillons d’entrée x• accumulateur sur B’ = 40 bits

Quel est le nombre max Nmax de produits que l’on peut accumuler sans risque de saturation ?

∑−

=

−=1

0)()()(

N

iinxiany

sur B = 16 bits

000

64

Unité de calcul

• Gestion des débordements– Complément à 2 : représentation

circulaire Si on ajoute 1 au plus grand positif, on obtient le plus grand négatif !

– Les DSP utilisent une arithmétiquesaturée :

saturation

overflow

Source images : [2]

Page 33: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

33

000

65

Unité de commande

• Chef d’orchestre du CPU

• Chargement des instructions– Compteur de programme (PC)– Registre d’instruction– Cache d’instructions

• Séquençage– Décodage des instructions– Pilotage les autres unités

000

66

Pipeline

• Principe : découper une opération en tâches élémentaires à effectuer en parallèle

• Ex : pipeline à 4 étages

Exécution éventuelle d’une opération arithmétique/logiqueExecute

Lecture ou écriture d’un opérande en mémoire de donnéeRead/Write

Décodage de l’instructionDecode

Lecture de l’instruction en mémoire programmeFetch

Page 34: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

34

000

67

Pipeline

SansPipeline

Avecpipeline

…1110987654321Cycle

C3

C3

C3

C2

C2

C3

C1

C2

C2

C1

C1

Execute

C1Read/Write

Decode

Fetch

Fin C1 Fin C2 Fin C3

…1110987654321Cycle

C7

C8

C9

C10

C8

C9

C10

C11

C4

C5

C6

C7

C5

C6

C7

C8

C6

C7

C8

C9

C1

C2

C3

C4

C2

C3

C4

C5

C3

C4

C5

C6C1

C1

C2

Execute

C1Read/Write

C2Decode

C3Fetch

Fin C1Fin C2

Fin C3

000

68

Pipeline• Différents types de pipelines

SéquentielPas de pipeline

(ex: Motorola 56000)

Pipeline simple(plupart des DSP)

Double pipeline(ex: Pentium)

SuperpipelinéNombre d'étages plus élevé

(ex: TMS320C6000)

tt

t t

Source : [9]

Page 35: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

35

000

69

Pipeline

• Avantage d’un DSP pipeliné– Gain en vitesse d’exécution

• Inconvénients– Electronique et programmation plus

complexe

• Un retard peut se produire– s’il existe un conflit de ressources

– en cas de rupture de séquence

000

70

Pipeline

• Pipeline présent dans quasiment tous les DSP– Le nombre d’étages varie de 3 à 12– Exemples :

7-12TMS320 C62

10-11TMS320 C55

6TMS320 C54

3DSP568xx

7DSP563xx

3SHARC

Page 36: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

36

000

71

Unité de génération d’adresse

• Unités de traitement spéciales– DAG (Data Address Generation)– AGU (Adress Generation Unit)– Pilotées par le séquenceur– Calculs sur des entiers (adresses mémoires)

• Méthodes pré-programmées– Incrémentation– Décrémentation– Adressage circulaire– Incrémentation bit-reverse (pour la FFT)

000

72

Unité de mémoire

• Architecture Harvard

– Mémoires données et programme séparées

– Meilleure utilisation du CPU• Chargement du programme et des données en

parallèleSource image : [9]

Mémoire Programme

Mémoire Données

CPU

Page 37: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

37

000

73

Unité de mémoire

• Architecture Harvard modifiée

– Possibilité de charger 2 types de données en 1 cycle

– Mém. prog+données coefficients– Mémoire données signal d’entrée

Source image : [9]

Mémoire Programme+ Données

Mémoire Données

CPU

000

74

Unité de mémoire

• Architecture Harvard modifiée

– Bancs de mémoire

Source image : [9]

Mémoire Programme

Mémoire Données 1CPU

Mémoire Données 2

Page 38: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

38

000

75

Unité de mémoire

• Mémoire interne sur les DSP C54xx

• Plusieurs types de RAM :– Single access (SARAM) : un accès par cycle– Dual access (DARAM) : deux accès par cycle– Two-way shared : deux accès par cycle même

depuis l'extérieur

000

76

Unité de mémoire

• Canaux DMA : Direct Memory Access

• Réduction des accès mémoire• Adressages spécifiques (circulaire)• Mémoire cache programme

Mémoire Programme+ Données

Mémoire Données

CPU

cached’instructions

Source image : [9]

Page 39: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

39

000

77

Unité de mémoire

• Mémoire cache programme– Contient des instructions exécutées

fréquemment (boucles...)

– Structure plus simple que dans les processeurs généraux

– Exemple :DSP563xx 1KB

TMS320C67 64 KB

– Configurable par l’utilisateur

– Pas de cache de données en général

000

78

Périphériques

• Port série– Communication avec codecs

• Port parallèle– Communication avec une mémoire

externe

• Timer

• Contrôleur d’interruption

• Horloge interne

Page 40: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

40

000

79

Architecture généraleD

SP5

6303 (

Sourc

e :

Free

scal

e)

000

80

Plan de l’exposé

• Le Traitement Numérique du Signal (TNS) et les DSP

• Architecture des DSP : CPU, mémoire…

• Performances des DSP : augmentation, mesure de performances, gamme de DSP…

• Développement d’applications surun DSP : programmation…

Page 41: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

41

000

81

Performances des DSP

• Plan de cette partie :

– DSP hautes performances

– Mesures de performances

– Gamme de DSP

000

82

DSP hautes performances

Processeur unique20 000 lignes de code

Multiples processeurs100 000 lignes de code

Multiples processeurs + protocoles+500 000 lignes de code

Lecteur MP3

Robot familial (Wakamaru, Mitsubishi)

Système VoIPpour traders

(IPC)

Source : d’après [7]

Page 42: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

42

000

83

• Architecture conventionnelle– Spécialisée pour le TNS– Faible consommation, faible coût– Difficulté de programmation

• Nouvelles architectures– Plus grande consommation– Coût plus élevé– Rendues nécessaires par de nouveaux besoins

• Performance (téléphonie 3G)• Rapidité de développement

DSP hautes performances

000

84

DSP hautes performances

• On vient de voir l’architecture de base des DSP

Comment augmenter les performances ?

Plusieurs solutions :

Diminuer la durée d’un cycle d’horloge

Augmenter le travail réalisé au cours d’un cycle d’horloge

Page 43: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

43

000

85

DSP hautes performances

• Augmentation de la fréquence CPU

– Facilité de portage des applis existantes

– Limites :• Consommation proportionnelle à la vitesse CPU

• Interfaces mémoire deviennent des goulets d’étranglement

000

86

DSP hautes performances

• Augmentation du travail effectuépendant un cycle : parallélisme

Plus d’opérations dans 1 instruction

– SIMD(Single Instruction,Multiple Data)

Source : [8]

Page 44: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

44

000

87

DSP hautes performances

• Augmentation du travail effectuépendant un cycle : parallélisme

Plus d’instructions dans 1 cycle d’horloge

– Superscalaire• Plusieurs MAC, plusieurs ALU, cache données• Circuit de contrôle complexe

000

88

DSP hautes performances

• Augmentation du travail effectuépendant un cycle : parallélisme

Plus d’instructions dans 1 cycle d’horloge

– Superscalaire– VLIW (Very Long Instruction Word)

• VLIW 8 voies = 8 instr. 32 bits = 256 bits• Instructions en parallèle à la compilation• Hardware + simple que superscalaire

Page 45: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

45

000

89

DSP hautes performances

• Augmentation du travail effectuépendant un cycle : parallélisme

Plus d’instructions dans 1 cycle d’horloge

– Superscalaire– VLIW– Approches hybrides SIMD/VLIW

000

90

DSP hautes performances

• Augmentation du nombre de cœurs DSP en parallèle (multi-core):

Source : analog.com

Ex : ADSP2192 de Analog Devices

2 cores « on-chip »

Page 46: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

46

000

91

Mesure de performance

• Mesure de la vitesse

Nombre de MAC que le DSP peut effectuer en une seconde.

Million Multiplyand AccumulatePer Second

MMACS

Nombre total d’opérations (traitement et transferts de données, accès DMA, opérations d’E/S) que le DSP peut effectuer en une seconde.

Million Operations Per Second

MOPS

Nombre de codes machines (instructions) que le DSP peut effectuer en une seconde.

Million Instructions Per Second

MIPS

Nombre d’opérations à virgule flottante (multiplications, additions, soustractions, etc.) que le DSP à virgule flottante peut réaliser en une seconde.

Million Floating-Point Operations Per Second

MFLOPS

000

92

Mesure de performance

• Ex 1 : DSP dans un téléphone portable 40 MIPS

• Ex 2: DSP56156 30 MIPS– Taux d’échantillonnage 48kHz Te = 20.833 µs

– Quel est le nombre d’instructions maximum entre 2 échantillons ?

62530/18,20

ninstructiod'1Tempsnsinstructio lespour max Tempsnsinstructiod'Nombre

≈=

=

Msµ

Page 47: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

47

000

93

Mesure de performance

300

1000

40

750

600

160

300

150

MHz

-na1500MS8101

-na1500ADS-BF533

>1000na4800ADSP-TS201

18002400600TMS320 C67

-4040TMS320 C24

8000

160

150

MIPS

-

-

-

MFLOPS

8000

na

150

MMACS

TMS320 C6455

ADSP-2191

DSP56367

DSP

Anal

og

Dev

ices

Tex

asIn

stru

men

tsFr

eesc

ale

000

94

Mesure de performance

• Benchmark :– mesurer le temps que met le DSP

pour exécuter des programmes "standard" de TNS

– Programmes standard• Comment les choisir ?• Dépendent des domaines• N multiplications Filtre RIF 2D

– Problème : dépend de la qualité de l’implémentation

Page 48: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

48

000

95

Gamme de DSP

La gamme Texas Instruments

Contrôle numérique

Faible consommation (lecteur MP3, récepteur GPS, équipement médical portable)

Très grande puissance : 8000 MIPS (imagerie, vidéo…)

000

96

Gamme de DSP

Road Map C50 (Texas Instruments)

Page 49: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

49

000

97

Gamme de DSP

Road Map C60 (Texas Instruments)

000

98

Gamme de DSP

Road map BlackFin (Analog Devices)

Page 50: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

50

000

99

Quelques DSP

16Fixe160160TMS320 C54

400

400

400

40

120

80/100

400

80/100

MMACS

16Fixe300TMS320 C62

16Fixe120DSP568xx

32

16

16

24

32/40

16

Données (bits)

Flottante

Fixe

Fixe

Fixe

Flottante

Fixe

Virg. Fi/Flo

300

200

40

80/100

200

80/160

Horloge (MHz)

TMS320 C67

TMS320 C55

ModèleConstructeur

TMS320 C24

ADSP-21XX

SHARC

Texas Instruments

DSP563xxFreescale

AnalogDevices

000

100

Plan de l’exposé

• Le Traitement Numérique du Signal (TNS) et les DSP

• Architecture des DSP : CPU, mémoire…

• Performances des DSP : augmentation, mesure de performances, gamme de DSP…

• Développement d’applications surun DSP : programmation…

Page 51: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

51

000

101

Développement d’applications

• Conception algorithmique• Choix du DSP• Développement sur PC

– C ou assembleur– Environnement pas universel

• Compilation, link• Chargement de l’exécutable sur le DSP

• Exécution du programme sur le DSP

PC DSP

000

102

Développement d’applications

• Exemple : implantation d’un filtre RIF sur un DSP virgule fixe

• Choix du DSP en fonction de l’application :– Choix de la famille– Choix des caractéristiques

• Quantité de RAM/ROM• Vitesse d’horloge• Prix d’un DSP

Audio C54x chez TI

Bas de gamme : $5,40Haut de gamme : $30

pour 1000 unités

achetées

Page 52: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

52

000

103

Développement d’applications

• Exemple : implantation d’un filtre RIF sur un DSP virgule fixe

∑−

=

−=1

0)()()(

N

iinxiany

Gabarit du filtreCoefficients a(i)(à convertir au

format virgule fixe)

000

104

Développement d’applications

• Ecriture du programme (C, assembleur)

Réception de l’échantillon d’entrée x(n)

Calcul de l’échantillon de sortie avec :

Sous-programme detraitement d’une interruption

Initialisation des registres, tables d’interruption, coefficients…

Attente (idle)

Prog. principal

∑−

=

−=1

0)()()(

N

iinxiany

Retour au prog. principal

Page 53: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

53

000

105

Développement d’applications

• Test du programme :

– Simulateurs

– Carte d’évaluation(Starter Kits chez TI)

– Emulateurs source : ti.com

000

106

Développement d’applications

Assembleur• Langage bas-niveau

– Fastidieux– Jeux d’instructions

complexes et irréguliers– Spécifique à chaque

constructeur

• Plus puissant– Accès à certains registres

inconnus du C

• Permet d’optimiser

Langage C• Langage de plus

haut-niveau– Plus rapide à coder– Meilleure portabilité

• Code machine générémoins efficace

• Outils de développement

Page 54: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

54

000

107

• Les instructions sont codées sur une ligne incluant une étiquette (optionnelle)

Start :

LD #540, AR2 ; Premier opérande en AR2

LD #180, AR3 ; Deuxième opérande en AR3

MAC *AR2, *AR3, A ; Multiplication des opérandes

Etiquette

Instruction

Opérande

Commentaire

Assembleur

000

108

Types d’instructions• Calcul

– Opérations arithmétiques• Addition, soustraction, multiplication

– Opérations logiques• AND, OR, tests• Décalage

• Contrôle du programme– Branchement, répétition– Appels et Retours

• Sous-programmes, interruptions– Manipulation de la pile– Divers (NOP)

• Mémoire– Chargement et sauvegarde– Déplacement de données de mémoire à mémoire

Page 55: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

55

000

109

Modes d’adressage

MOV R1, M(R2+R3)En mémoire à l’adresse résultat de la somme de 2 registres

Indexé

MOV R1, M(R2)

MOV R1, M(238)

MOV R1, 17

ExempleOù se trouve la donnée ?Adressage

En mémoire à l’adresse spécifiée dans un registre (pointeur)

Dans l’instruction

Indirect

En mémoire à l’adresse spécifiée dans l’instruction

Direct

Immédiat

• Modes d’adressage classiques

000

110

Modes d’adressage

• Modes d’adressage spécifiques

– Circulaire (ou modulo) : utilisé dans les filtres RIF, RII, la convolution…

– Bit reverse (ou inversion de bits) : utilisédans la FFT

Page 56: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

56

000

111

La R&D sur les DSP en France

• Texas Instruments : Villeneuve-Loubet (06)

• Freescale : Toulouse, Crolles (38)

• ST Microelectronics : Crolles, Rousset (13)

• ARM : Sophia-Antipolis

• Atmel : Rousset, Grenoble

• Infineon : Sophia-Antipolis

000

112

Annexe

Présentationdes TP sur les DSP

Page 57: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

57

000

113

TP sur les DSP

• Le DSP : TMS320 C5416

• Programmation d’algorithmes de traitement du signal : effets audio

Apporter un lecteur CD/MP3 ou clé USB

En pratique :

• 3 séances : Lundi 29 janvier, 5 & 12 février

• Evaluation sur CR + oral

000

114

Le DSP Starter Kit C5416

(CPLD)ROM

SARAM

DARAM

mémoireexterne

mémoireinterne

source : "TMS320V

C5416 D

SK

Reference

Technical", Spectrum D

igital

Page 58: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

58

000

115

Bus externe

Diagramme bloc du TMS320C5416

Muxed GP I/O

D(15-0)

A(23-0)

Program/Data BusesTimer

Program/Data RAM128K Words

Ch 0

Ch 1

Ch 2

Ch 3

Ch 4

Ch 5

DMA

8/16-bit Host PortInterface (HPI)

Program/Data ROM16K Words

Perip

hera

l Bus

RND, SAT

17 x 17 MPY

40-Bit Adder

MAC

Shifter40-Bit Barrel

(-16, 31)

EXP Encoder

40-Bit ALUCMPS Operator

(VITERBI)

ALU

Accumulators40-Bit ACC A

40-Bit ACC B

8 Auxiliary Registers

2 Addressing Units

Addressing Unit

Multichannel BufferedSerial Port (McBSP)

Multichannel BufferedSerial Port (McBSP)

Multichannel BufferedSerial Port (McBSP)

PLL Clock Generator

S/W WaitstateGeneratorPower Management

Générationd’adresses

Unités decalcul

Mémoireinterne

EntréesSorties

JTAG Test/Emulation

Control

CPU

MU

X

000

116

Effets audio

• Principe de tous les effets audio : ajout au signal d’une version décalée de lui-même

delaychorus

flangerreverb

Page 59: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

59

000

117

Effets audio : delay

• Delay = retard simple• 1ère possibilité : y(n) = x(n)+ a.x(n-D)

• Selon la valeur de D– Entre 50 et 100 ms : effet d’ambiance– >100 ms : écho

Filtre RIF

000

118

Effets audio : delay

• RIF : y(n) = x(n)+ a.x(n-D)• Fonction de transfert :

Filtre en peigne (comb filter)

DazzH −+=1)(

sourc

e :

[11]

Page 60: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

60

000

119

Effets audio : delay

• 2ème possibilité : y(n) = x(n)+ a.y(n-D)

revient à ajouterun retour (feedback)

Filtre RII

000

120

Effets audio : delay

• RII : y(n) = x(n)+ a.y(n-D)• Fonction de transfert :

DazzH −+=

11)(

source : [11]

Page 61: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

61

000

121

Delay : exemples

• Son 1 : impulsion • RIF : 60 ms, 100 ms, 150 ms, 250 ms• RII (avec feedback) 250 ms : gain1, gain2 >

gain1

• Son 2 : voix chantée• sans , avec

• Son 3 : guitare• grand retard 1,5 s (intérêt de la synchro)• effet stéréo : 20 ms de décalage entre les 2

canauxsource des sons : [10,12]

000

122

Effets audio : chorus

• Principe : simuler le fait que plusieurs instruments identiques jouent simultanément, « élargir » le son.

• D varie dans le temps !

y(n) = x(n)+ a.x(n-D(n))

• D varie de 20 à 30 ms

LFO : Lowfrequencyoscillator(ex : 3 Hz)

Page 62: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

62

000

123

Chorus : exemples

• Son 1 : guitare sans, avec • Son 2 : 1 note avec différentes

formes pour le LFO :

000

124

Effets audio : flanger

• Principe : bruit de réacteur d’avionou métallique, effet circulaire

• Similaire à chorus mais :– Feedback possible– D = 1 à 20 ms pas d’effet d’écho

mais filtre

Page 63: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

63

000

125

Effets audio : flanger

• D plus petit que pour le chorus

D1 D1< D2

000

126

Flanger : exemples

• Très employé dans la musique ! (Jimi Hendrix, Pink Floyd, David bowie…)

• Son 1 : batterie sans, avec• Son 2 : Are you gonna go my

way, Lenny Kravitz• Son 3 : Killer queen, Queen

Page 64: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

64

000

127

Effets audio : reverb

• Principe : prise en compte du volume de la pièce– Résultat de toutes les réflexions du son– Dépend de la surface (hall de concert : 1.5 à 2s)

000

128

Effets audio : reverb

• Principe : prise en compte du volume de la pièce

Page 65: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

65

000

129

Effets audio : reverb

• Structure du réverbérateur de Schroëder

000

130

Reverb : exemples

• Son1 : voix chantée sans , avec• Son2 : guitare sans, avec• Son3 : reverse reverb (50ms, 150 ms)

Page 66: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

66

000

131

Effets audio : résumé

Simultanéité de +ieurs instruments id.

Effet d’ambiance (50 à 100ms), écho (>100ms)

Réacteur d’avion, effet circulaire

FixeRIF : yn = xn+axn-D

RII : yn = xn+ayn-DDelay

Variable (1 à 20ms)RIF : yn = xn+axn-D(n)

RII : yn = xn+ayn-D(n)Flanger

Variable (20 à 30ms)RIF : yn = xn+axn-D(n)Chorus

DStructure

000

132

Quelques références

• F. Virolleau, G. Baudoin. DSP Les processeurs de traitement du signal -Famille TMS320C5x. Dunod, 1996.

• P. Lapsley, J. Bier, A. Shoham, E. Lee. DSP Processor Fundamentals, Architectures and Features, IEEE Press, 1997.

• G. Baudoin, F. Virolleau. Les DSP Famille TMS320C54x – Développementd’applications. Dunod, 2000.

Page 67: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

67

000

133

Bibliographie complète

• [1] A. Tisserand. DSP : des processeursdédiés au traitement numérique du signal, séminaire LIP, 2003.

• [2] Bores Signal Processing (www.bores.com)

• [3] C. Odet. Cours sur les DSP, INSA Lyon, 2005.

• [4] Berkeley Design Technology, Inc. www.bdti.com (juin 2006)

• [5] D. Prêtre. Fast Fourier Transform. HE-Arc Ingénierie, 2004.

000

134

Bibliographie complète

• [6] L. Battista. Une introduction aux DSP, Mémoire CNAM, 1997.

• [7] M. Vinez. Domaines d’application par type d’architecture, séminaire Jessica, 2006.

• [8] Dossier : Les processeurs de traitement du signal, Electronique n°143, 2004.

• [9] R. Mégret. Processeurs dédiés au traitement du signal, cours ENSEIRB, 2005.

Page 68: DSP : Digital Signal Processor - Caroline Petitjeancarolinepetitjean.free.fr/enseignements/dsp/cours_dsp06_07.pdf · 1 2006-2007 Les processeurs de traitement du signal Caroline Petitjean

68

000

135

Bibliographie complète

• Sites des constructeurs :– ti.com,– freescale.com,– analog.com.

• Effets audio :[10] http://www.harmony-

central.com/Effects/effects-explained.html[11]

http://www.bluecatonline.org/eng/DigitalAudioNotions/DigitalAudioNotions.htm

[12] http://www-dsp.efrei.fr/DOCUMENTS/reverb.htm

000

136

Bibliographie complète

• Effets audio :

• [10] http://www.harmony-central.com/Effects/effects-explained.html

• [11] http://www.bluecatonline.org/eng/DigitalAudioNotions/DigitalAudioNotions.htm

• [12] http://www-dsp.efrei.fr/DOCUMENTS/reverb.htm